Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback
Module

x/x12/src/X12Parser.ts>X12Parser

ASC X12 parser, generator, query engine, and mapper; now with support for streams.
Latest
class X12Parser
extends Transform
import { X12Parser } from "https://deno.land/x/x12@1.8.0-1/src/X12Parser.ts";

Constructors

new
X12Parser(
strict?: boolean | X12SerializationOptions,
encoding?: "ascii" | "utf8" | X12SerializationOptions,
)

Properties

private
_dataCache: string
private
readonly
_decoder: StringDecoder
private
_fatInterchange: X12FatInterchange
private
_flushing: boolean
private
_group: X12FunctionalGroup
private
_interchange: X12Interchange
private
_options: Required<X12SerializationOptions>
private
_parsedISA: boolean
private
_segmentCounter: number
private
readonly
_strict: boolean
private
_transaction: X12Transaction
diagnostics: X12Diagnostic[]

Methods

private
_consumeChunk(chunk: string): void
private
_detectOptions(edi: string, options?: X12SerializationOptions): void
private
_parseSegments(
edi: string,
segmentTerminator: string,
elementDelimiter: string,
): X12Segment[]
private
_processGE(group: X12FunctionalGroup, segment: X12Segment): void
private
_processGS(group: X12FunctionalGroup, segment: X12Segment): void
private
_processIEA(interchange: X12Interchange, segment: X12Segment): void
private
_processISA(interchange: X12Interchange, segment: X12Segment): void
private
_processSE(transaction: X12Transaction, segment: X12Segment): void
private
_processSegment(seg: X12Segment): void
private
_processST(transaction: X12Transaction, segment: X12Segment): void
private
_validateEdiLength(edi: string): void
private
_validateIsaLength(edi: string, elementDelimiter: string): void
_flush(callback: Function): void
_transform(
chunk: any,
_encoding: string,
callback: Function,
): void