UNPKG

node-zugferd

Version:

A Node.js library for creating ZUGFeRD/Factur-X compliant documents. Generating XML and embedding it into PDF/A files, enabling seamless e-invoicing and digital document compliance.

385 lines (383 loc) 14.1 kB
// src/codelists/index.ts var getByPath = (obj, path) => path.split(".").reduce((acc, key) => acc?.[key], obj); var createEnum = (data, options) => { return Object.fromEntries( data.map((item) => [ getByPath(item, options.keyProp), getByPath(item, options.valueProp) ]) ); }; // src/codelists/charge.gen.ts var PUBLISHED = "24A"; var CHARGE = [ { key: "ADVERTISING", name: "Advertising", value: "AA" }, { key: "TELECOMMUNICATION", name: "Telecommunication", value: "AAA" }, { key: "TECHNICAL_MODIFICATION", name: "Technical modification", value: "AAC" }, { key: "JOB_ORDER_PRODUCTION", name: "Job-order production", value: "AAD" }, { key: "OUTLAYS", name: "Outlays", value: "AAE" }, { key: "OFF_PREMISES", name: "Off-premises", value: "AAF" }, { key: "ADDITIONAL_PROCESSING", name: "Additional processing", value: "AAH" }, { key: "ATTESTING", name: "Attesting", value: "AAI" }, { key: "ACCEPTANCE", name: "Acceptance", value: "AAS" }, { key: "RUSH_DELIVERY", name: "Rush delivery", value: "AAT" }, { key: "SPECIAL_CONSTRUCTION", name: "Special construction", value: "AAV" }, { key: "AIRPORT_FACILITIES", name: "Airport facilities", value: "AAY" }, { key: "CONCESSION", name: "Concession", value: "AAZ" }, { key: "COMPULSORY_STORAGE", name: "Compulsory storage", value: "ABA" }, { key: "FUEL_REMOVAL", name: "Fuel removal", value: "ABB" }, { key: "INTO_PLANE", name: "Into plane", value: "ABC" }, { key: "OVERTIME", name: "Overtime", value: "ABD" }, { key: "TOOLING", name: "Tooling", value: "ABF" }, { key: "MISCELLANEOUS", name: "Miscellaneous", value: "ABK" }, { key: "ADDITIONAL_PACKAGING", name: "Additional packaging", value: "ABL" }, { key: "DUNNAGE", name: "Dunnage", value: "ABN" }, { key: "CONTAINERISATION", name: "Containerisation", value: "ABR" }, { key: "CARTON_PACKING", name: "Carton packing", value: "ABS" }, { key: "HESSIAN_WRAPPED", name: "Hessian wrapped", value: "ABT" }, { key: "POLYETHYLENE_WRAP_PACKING", name: "Polyethylene wrap packing", value: "ABU" }, { key: "MISCELLANEOUS_TREATMENT", name: "Miscellaneous treatment", value: "ACF" }, { key: "ENAMELLING_TREATMENT", name: "Enamelling treatment", value: "ACG" }, { key: "HEAT_TREATMENT", name: "Heat treatment", value: "ACH" }, { key: "PLATING_TREATMENT", name: "Plating treatment", value: "ACI" }, { key: "PAINTING", name: "Painting", value: "ACJ" }, { key: "POLISHING", name: "Polishing", value: "ACK" }, { key: "PRIMING", name: "Priming", value: "ACL" }, { key: "PRESERVATION_TREATMENT", name: "Preservation treatment", value: "ACM" }, { key: "FITTING", name: "Fitting", value: "ACS" }, { key: "CONSOLIDATION", name: "Consolidation", value: "ADC" }, { key: "BILL_OF_LADING", name: "Bill of lading", value: "ADE" }, { key: "AIRBAG", name: "Airbag", value: "ADJ" }, { key: "TRANSFER", name: "Transfer", value: "ADK" }, { key: "SLIPSHEET", name: "Slipsheet", value: "ADL" }, { key: "BINDING", name: "Binding", value: "ADM" }, { key: "REPAIR_OR_REPLACEMENT_OF_BROKEN_RETURNABLE_PACKAGE", name: "Repair or replacement of broken returnable package", value: "ADN" }, { key: "EFFICIENT_LOGISTICS", name: "Efficient logistics", value: "ADO" }, { key: "MERCHANDISING", name: "Merchandising", value: "ADP" }, { key: "PRODUCT_MIX", name: "Product mix", value: "ADQ" }, { key: "OTHER_SERVICES", name: "Other services", value: "ADR" }, { key: "PICK_UP", name: "Pick-up", value: "ADT" }, { key: "CHRONIC_ILLNESS", name: "Chronic illness", value: "ADW" }, { key: "NEW_PRODUCT_INTRODUCTION", name: "New product introduction", value: "ADY" }, { key: "DIRECT_DELIVERY", name: "Direct delivery", value: "ADZ" }, { key: "DIVERSION", name: "Diversion", value: "AEA" }, { key: "DISCONNECT", name: "Disconnect", value: "AEB" }, { key: "DISTRIBUTION", name: "Distribution", value: "AEC" }, { key: "HANDLING_OF_HAZARDOUS_CARGO", name: "Handling of hazardous cargo", value: "AED" }, { key: "RENTS_AND_LEASES", name: "Rents and leases", value: "AEF" }, { key: "LOCATION_DIFFERENTIAL", name: "Location differential", value: "AEH" }, { key: "AIRCRAFT_REFUELING", name: "Aircraft refueling", value: "AEI" }, { key: "FUEL_SHIPPED_INTO_STORAGE", name: "Fuel shipped into storage", value: "AEJ" }, { key: "CASH_ON_DELIVERY", name: "Cash on delivery", value: "AEK" }, { key: "SMALL_ORDER_PROCESSING_SERVICE", name: "Small order processing service", value: "AEL" }, { key: "CLERICAL_OR_ADMINISTRATIVE_SERVICES", name: "Clerical or administrative services", value: "AEM" }, { key: "GUARANTEE", name: "Guarantee", value: "AEN" }, { key: "COLLECTION_AND_RECYCLING", name: "Collection and recycling", value: "AEO" }, { key: "COPYRIGHT_FEE_COLLECTION", name: "Copyright fee collection", value: "AEP" }, { key: "VETERINARY_INSPECTION_SERVICE", name: "Veterinary inspection service", value: "AES" }, { key: "PENSIONER_SERVICE", name: "Pensioner service", value: "AET" }, { key: "MEDICINE_FREE_PASS_HOLDER", name: "Medicine free pass holder", value: "AEU" }, { key: "ENVIRONMENTAL_PROTECTION_SERVICE", name: "Environmental protection service", value: "AEV" }, { key: "ENVIRONMENTAL_CLEAN_UP_SERVICE", name: "Environmental clean-up service", value: "AEW" }, { key: "NATIONAL_CHEQUE_PROCESSING_SERVICE_OUTSIDE_ACCOUNT_AREA", name: "National cheque processing service outside account area", value: "AEX" }, { key: "NATIONAL_PAYMENT_SERVICE_OUTSIDE_ACCOUNT_AREA", name: "National payment service outside account area", value: "AEY" }, { key: "NATIONAL_PAYMENT_SERVICE_WITHIN_ACCOUNT_AREA", name: "National payment service within account area", value: "AEZ" }, { key: "ADJUSTMENTS", name: "Adjustments", value: "AJ" }, { key: "AUTHENTICATION", name: "Authentication", value: "AU" }, { key: "CATALOGUING", name: "Cataloguing", value: "CA" }, { key: "CARTAGE", name: "Cartage", value: "CAB" }, { key: "CERTIFICATION", name: "Certification", value: "CAD" }, { key: "CERTIFICATE_OF_CONFORMANCE", name: "Certificate of conformance", value: "CAE" }, { key: "CERTIFICATE_OF_ORIGIN", name: "Certificate of origin", value: "CAF" }, { key: "CUTTING", name: "Cutting", value: "CAI" }, { key: "CONSULAR_SERVICE", name: "Consular service", value: "CAJ" }, { key: "CUSTOMER_COLLECTION", name: "Customer collection", value: "CAK" }, { key: "PAYROLL_PAYMENT_SERVICE", name: "Payroll payment service", value: "CAL" }, { key: "CASH_TRANSPORTATION", name: "Cash transportation", value: "CAM" }, { key: "HOME_BANKING_SERVICE", name: "Home banking service", value: "CAN" }, { key: "BILATERAL_AGREEMENT_SERVICE", name: "Bilateral agreement service", value: "CAO" }, { key: "INSURANCE_BROKERAGE_SERVICE", name: "Insurance brokerage service", value: "CAP" }, { key: "CHEQUE_GENERATION", name: "Cheque generation", value: "CAQ" }, { key: "PREFERENTIAL_MERCHANDISING_LOCATION", name: "Preferential merchandising location", value: "CAR" }, { key: "CRANE", name: "Crane", value: "CAS" }, { key: "SPECIAL_COLOUR_SERVICE", name: "Special colour service", value: "CAT" }, { key: "SORTING", name: "Sorting", value: "CAU" }, { key: "BATTERY_COLLECTION_AND_RECYCLING", name: "Battery collection and recycling", value: "CAV" }, { key: "PRODUCT_TAKE_BACK_FEE", name: "Product take back fee", value: "CAW" }, { key: "QUALITY_CONTROL_RELEASED", name: "Quality control released", value: "CAX" }, { key: "QUALITY_CONTROL_HELD", name: "Quality control held", value: "CAY" }, { key: "QUALITY_CONTROL_EMBARGO", name: "Quality control embargo", value: "CAZ" }, { key: "CAR_LOADING", name: "Car loading", value: "CD" }, { key: "CLEANING", name: "Cleaning", value: "CG" }, { key: "CIGARETTE_STAMPING", name: "Cigarette stamping", value: "CS" }, { key: "COUNT_AND_RECOUNT", name: "Count and recount", value: "CT" }, { key: "LAYOUTDESIGN", name: "Layout/design", value: "DAB" }, { key: "ASSORTMENT_ALLOWANCE", name: "Assortment allowance", value: "DAC" }, { key: "DRIVER_ASSIGNED_UNLOADING", name: "Driver assigned unloading", value: "DAD" }, { key: "DEBTOR_BOUND", name: "Debtor bound", value: "DAF" }, { key: "DEALER_ALLOWANCE", name: "Dealer allowance", value: "DAG" }, { key: "ALLOWANCE_TRANSFERABLE_TO_THE_CONSUMER", name: "Allowance transferable to the consumer", value: "DAH" }, { key: "GROWTH_OF_BUSINESS", name: "Growth of business", value: "DAI" }, { key: "INTRODUCTION_ALLOWANCE", name: "Introduction allowance", value: "DAJ" }, { key: "MULTI_BUY_PROMOTION", name: "Multi-buy promotion", value: "DAK" }, { key: "PARTNERSHIP", name: "Partnership", value: "DAL" }, { key: "RETURN_HANDLING", name: "Return handling", value: "DAM" }, { key: "MINIMUM_ORDER_NOT_FULFILLED_CHARGE", name: "Minimum order not fulfilled charge", value: "DAN" }, { key: "POINT_OF_SALES_THRESHOLD_ALLOWANCE", name: "Point of sales threshold allowance", value: "DAO" }, { key: "WHOLESALING_DISCOUNT", name: "Wholesaling discount", value: "DAP" }, { key: "DOCUMENTARY_CREDITS_TRANSFER_COMMISSION", name: "Documentary credits transfer commission", value: "DAQ" }, { key: "DELIVERY", name: "Delivery", value: "DL" }, { key: "ENGRAVING", name: "Engraving", value: "EG" }, { key: "EXPEDITING", name: "Expediting", value: "EP" }, { key: "EXCHANGE_RATE_GUARANTEE", name: "Exchange rate guarantee", value: "ER" }, { key: "FABRICATION", name: "Fabrication", value: "FAA" }, { key: "FREIGHT_EQUALIZATION", name: "Freight equalization", value: "FAB" }, { key: "FREIGHT_EXTRAORDINARY_HANDLING", name: "Freight extraordinary handling", value: "FAC" }, { key: "FREIGHT_SERVICE", name: "Freight service", value: "FC" }, { key: "FILLINGHANDLING", name: "Filling/handling", value: "FH" }, { key: "FINANCING", name: "Financing", value: "FI" }, { key: "GRINDING", name: "Grinding", value: "GAA" }, { key: "HOSE", name: "Hose", value: "HAA" }, { key: "HANDLING", name: "Handling", value: "HD" }, { key: "HOISTING_AND_HAULING", name: "Hoisting and hauling", value: "HH" }, { key: "INSTALLATION", name: "Installation", value: "IAA" }, { key: "INSTALLATION_AND_WARRANTY", name: "Installation and warranty", value: "IAB" }, { key: "INSIDE_DELIVERY", name: "Inside delivery", value: "ID" }, { key: "INSPECTION", name: "Inspection", value: "IF" }, { key: "INSTALLATION_AND_TRAINING", name: "Installation and training", value: "IR" }, { key: "INVOICING", name: "Invoicing", value: "IS" }, { key: "KOSHERING", name: "Koshering", value: "KO" }, { key: "CARRIER_COUNT", name: "Carrier count", value: "L1" }, { key: "LABELLING", name: "Labelling", value: "LA" }, { key: "LABOUR", name: "Labour", value: "LAA" }, { key: "REPAIR_AND_RETURN", name: "Repair and return", value: "LAB" }, { key: "LEGALISATION", name: "Legalisation", value: "LF" }, { key: "MOUNTING", name: "Mounting", value: "MAE" }, { key: "MAIL_INVOICE", name: "Mail invoice", value: "MI" }, { key: "MAIL_INVOICE_TO_EACH_LOCATION", name: "Mail invoice to each location", value: "ML" }, { key: "NON_RETURNABLE_CONTAINERS", name: "Non-returnable containers", value: "NAA" }, { key: "OUTSIDE_CABLE_CONNECTORS", name: "Outside cable connectors", value: "OA" }, { key: "INVOICE_WITH_SHIPMENT", name: "Invoice with shipment", value: "PA" }, { key: "PHOSPHATIZING_STEEL_TREATMENT", name: "Phosphatizing (steel treatment)", value: "PAA" }, { key: "PACKING", name: "Packing", value: "PC" }, { key: "PALLETIZING", name: "Palletizing", value: "PL" }, { key: "PRICE_VARIATION", name: "Price variation", value: "PRV" }, { key: "REPACKING", name: "Repacking", value: "RAB" }, { key: "REPAIR", name: "Repair", value: "RAC" }, { key: "RETURNABLE_CONTAINER", name: "Returnable container", value: "RAD" }, { key: "RESTOCKING", name: "Restocking", value: "RAF" }, { key: "RE_DELIVERY", name: "Re-delivery", value: "RE" }, { key: "REFURBISHING", name: "Refurbishing", value: "RF" }, { key: "RAIL_WAGON_HIRE", name: "Rail wagon hire", value: "RH" }, { key: "LOADING", name: "Loading", value: "RV" }, { key: "SALVAGING", name: "Salvaging", value: "SA" }, { key: "SHIPPING_AND_HANDLING", name: "Shipping and handling", value: "SAA" }, { key: "SPECIAL_PACKAGING", name: "Special packaging", value: "SAD" }, { key: "STAMPING", name: "Stamping", value: "SAE" }, { key: "CONSIGNEE_UNLOAD", name: "Consignee unload", value: "SAI" }, { key: "SHRINK_WRAP", name: "Shrink-wrap", value: "SG" }, { key: "SPECIAL_HANDLING", name: "Special handling", value: "SH" }, { key: "SPECIAL_FINISH", name: "Special finish", value: "SM" }, { key: "SET_UP", name: "Set-up", value: "SU" }, { key: "TANK_RENTING", name: "Tank renting", value: "TAB" }, { key: "TESTING", name: "Testing", value: "TAC" }, { key: "TRANSPORTATION_THIRD_PARTY_BILLING", name: "Transportation - third party billing", value: "TT" }, { key: "TRANSPORTATION_BY_VENDOR", name: "Transportation by vendor", value: "TV" }, { key: "DROP_YARD", name: "Drop yard", value: "V1" }, { key: "DROP_DOCK", name: "Drop dock", value: "V2" }, { key: "WAREHOUSING", name: "Warehousing", value: "WH" }, { key: "COMBINE_ALL_SAME_DAY_SHIPMENT", name: "Combine all same day shipment", value: "XAA" }, { key: "SPLIT_PICK_UP", name: "Split pick-up", value: "YY" }, { key: "MUTUALLY_DEFINED", name: "Mutually defined", value: "ZZZ" } ]; var chargeCode = CHARGE.map(({ value }) => value); var Charge = createEnum(CHARGE, { keyProp: "key", valueProp: "value" }); export { CHARGE, Charge, PUBLISHED, chargeCode };