feat(ZUGFERD): Add dedicated ZUGFERD v1/v2 support and refine invoice format detection logic
This commit is contained in:
30
ts/index.ts
30
ts/index.ts
@ -27,6 +27,12 @@ import { CIIBaseValidator } from './formats/cii/cii.validator.js';
|
||||
// Import PDF utilities
|
||||
import { PDFEmbedder } from './formats/pdf/pdf.embedder.js';
|
||||
import { PDFExtractor } from './formats/pdf/pdf.extractor.js';
|
||||
import {
|
||||
BaseXMLExtractor,
|
||||
StandardXMLExtractor,
|
||||
AssociatedFilesExtractor,
|
||||
TextXMLExtractor
|
||||
} from './formats/pdf/extractors/index.js';
|
||||
|
||||
// Import format detector
|
||||
import { FormatDetector } from './formats/utils/format.detector.js';
|
||||
@ -36,6 +42,12 @@ import { FacturXDecoder } from './formats/cii/facturx/facturx.decoder.js';
|
||||
import { FacturXEncoder } from './formats/cii/facturx/facturx.encoder.js';
|
||||
import { FacturXValidator } from './formats/cii/facturx/facturx.validator.js';
|
||||
|
||||
// Import ZUGFeRD implementation
|
||||
import { ZUGFeRDDecoder } from './formats/cii/zugferd/zugferd.decoder.js';
|
||||
import { ZUGFeRDEncoder } from './formats/cii/zugferd/zugferd.encoder.js';
|
||||
import { ZUGFeRDValidator } from './formats/cii/zugferd/zugferd.validator.js';
|
||||
import { ZUGFeRDV1Decoder } from './formats/cii/zugferd/zugferd.v1.decoder.js';
|
||||
|
||||
// Export interfaces
|
||||
export type {
|
||||
// Common interfaces
|
||||
@ -46,12 +58,12 @@ export type {
|
||||
TLetterEnvelope,
|
||||
TDocumentEnvelope,
|
||||
IPdf,
|
||||
|
||||
|
||||
// Validation interfaces
|
||||
ValidationError,
|
||||
ValidationResult,
|
||||
IValidator,
|
||||
|
||||
|
||||
// Format interfaces
|
||||
ExportFormat,
|
||||
XInvoiceOptions
|
||||
@ -80,8 +92,18 @@ export { CIIBaseDecoder, CIIBaseEncoder, CIIBaseValidator };
|
||||
// Export Factur-X implementation
|
||||
export { FacturXDecoder, FacturXEncoder, FacturXValidator };
|
||||
|
||||
// Export ZUGFeRD implementation
|
||||
export { ZUGFeRDDecoder, ZUGFeRDEncoder, ZUGFeRDValidator, ZUGFeRDV1Decoder };
|
||||
|
||||
// Export PDF utilities
|
||||
export { PDFEmbedder, PDFExtractor };
|
||||
export {
|
||||
PDFEmbedder,
|
||||
PDFExtractor,
|
||||
BaseXMLExtractor,
|
||||
StandardXMLExtractor,
|
||||
AssociatedFilesExtractor,
|
||||
TextXMLExtractor
|
||||
};
|
||||
|
||||
// Export format detector
|
||||
export { FormatDetector };
|
||||
@ -93,7 +115,7 @@ export { FormatDetector };
|
||||
* @returns ValidationResult with the result of validation
|
||||
*/
|
||||
export function validateXml(
|
||||
xml: string,
|
||||
xml: string,
|
||||
level: common.ValidationLevel = common.ValidationLevel.SYNTAX
|
||||
): common.ValidationResult {
|
||||
try {
|
||||
|
Reference in New Issue
Block a user