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.

692 lines (690 loc) 20.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/item.gen.ts var PUBLISHED = "24A"; var ITEM = [ { key: "PRODUCT_VERSION_NUMBER", name: "Product version number", value: "AA" }, { key: "ASSEMBLY", name: "Assembly", value: "AB" }, { key: "HIBC_HEALTH_INDUSTRY_BAR_CODE", name: "HIBC (Health Industry Bar Code)", value: "AC" }, { key: "COLD_ROLL_NUMBER", name: "Cold roll number", value: "AD" }, { key: "HOT_ROLL_NUMBER", name: "Hot roll number", value: "AE" }, { key: "SLAB_NUMBER", name: "Slab number", value: "AF" }, { key: "SOFTWARE_REVISION_NUMBER", name: "Software revision number", value: "AG" }, { key: "UPC_UNIVERSAL_PRODUCT_CODE_CONSUMER_PACKAGE_CODE_1_5_5", name: "UPC (Universal Product Code) Consumer package code (1-5-5)", value: "AH" }, { key: "UPC_UNIVERSAL_PRODUCT_CODE_CONSUMER_PACKAGE_CODE_1_5_5_", name: "UPC (Universal Product Code) Consumer package code (1-5-5-", value: "AI" }, { key: "SAMPLE_NUMBER", name: "Sample number", value: "AJ" }, { key: "PACK_NUMBER", name: "Pack number", value: "AK" }, { key: "UPC_UNIVERSAL_PRODUCT_CODE_SHIPPING_CONTAINER_CODE_1_2_", name: "UPC (Universal Product Code) Shipping container code (1-2-", value: "AL" }, { key: "UPC_UNIVERSAL_PRODUCT_CODEEAN_EUROPEAN_ARTICLE_NUMBER", name: "UPC (Universal Product Code)/EAN (European article number)", value: "AM" }, { key: "UPC_UNIVERSAL_PRODUCT_CODE_SUFFIX", name: "UPC (Universal Product Code) suffix", value: "AN" }, { key: "STATE_LABEL_CODE", name: "State label code", value: "AO" }, { key: "HEAT_NUMBER", name: "Heat number", value: "AP" }, { key: "COUPON_NUMBER", name: "Coupon number", value: "AQ" }, { key: "RESOURCE_NUMBER", name: "Resource number", value: "AR" }, { key: "WORK_TASK_NUMBER", name: "Work task number", value: "AS" }, { key: "PRICE_LOOK_UP_NUMBER", name: "Price look up number", value: "AT" }, { key: "NSN_NORTH_ATLANTIC_TREATY_ORGANIZATION_STOCK_NUMBER", name: "NSN (North Atlantic Treaty Organization Stock Number)", value: "AU" }, { key: "REFINED_PRODUCT_CODE", name: "Refined product code", value: "AV" }, { key: "EXHIBIT", name: "Exhibit", value: "AW" }, { key: "END_ITEM", name: "End item", value: "AX" }, { key: "FEDERAL_SUPPLY_CLASSIFICATION", name: "Federal supply classification", value: "AY" }, { key: "ENGINEERING_DATA_LIST", name: "Engineering data list", value: "AZ" }, { key: "MILESTONE_EVENT_NUMBER", name: "Milestone event number", value: "BA" }, { key: "LOT_NUMBER", name: "Lot number", value: "BB" }, { key: "NATIONAL_DRUG_CODE_4_4_2_FORMAT", name: "National drug code 4-4-2 format", value: "BC" }, { key: "NATIONAL_DRUG_CODE_5_3_2_FORMAT", name: "National drug code 5-3-2 format", value: "BD" }, { key: "NATIONAL_DRUG_CODE_5_4_1_FORMAT", name: "National drug code 5-4-1 format", value: "BE" }, { key: "NATIONAL_DRUG_CODE_5_4_2_FORMAT", name: "National drug code 5-4-2 format", value: "BF" }, { key: "NATIONAL_DRUG_CODE", name: "National drug code", value: "BG" }, { key: "PART_NUMBER", name: "Part number", value: "BH" }, { key: "LOCAL_STOCK_NUMBER_LSN", name: "Local Stock Number (LSN)", value: "BI" }, { key: "NEXT_HIGHER_ASSEMBLY_NUMBER", name: "Next higher assembly number", value: "BJ" }, { key: "DATA_CATEGORY", name: "Data category", value: "BK" }, { key: "CONTROL_NUMBER", name: "Control number", value: "BL" }, { key: "SPECIAL_MATERIAL_IDENTIFICATION_CODE", name: "Special material identification code", value: "BM" }, { key: "LOCALLY_ASSIGNED_CONTROL_NUMBER", name: "Locally assigned control number", value: "BN" }, { key: "BUYERS_COLOUR", name: "Buyer's colour", value: "BO" }, { key: "BUYERS_PART_NUMBER", name: "Buyer's part number", value: "BP" }, { key: "VARIABLE_MEASURE_PRODUCT_CODE", name: "Variable measure product code", value: "BQ" }, { key: "FINANCIAL_PHASE", name: "Financial phase", value: "BR" }, { key: "CONTRACT_BREAKDOWN", name: "Contract breakdown", value: "BS" }, { key: "TECHNICAL_PHASE", name: "Technical phase", value: "BT" }, { key: "DYE_LOT_NUMBER", name: "Dye lot number", value: "BU" }, { key: "DAILY_STATEMENT_OF_ACTIVITIES", name: "Daily statement of activities", value: "BV" }, { key: "PERIODICAL_STATEMENT_OF_ACTIVITIES_WITHIN_A_BILATERALLY", name: "Periodical statement of activities within a bilaterally", value: "BW" }, { key: "CALENDAR_WEEK_STATEMENT_OF_ACTIVITIES", name: "Calendar week statement of activities", value: "BX" }, { key: "CALENDAR_MONTH_STATEMENT_OF_ACTIVITIES", name: "Calendar month statement of activities", value: "BY" }, { key: "ORIGINAL_EQUIPMENT_NUMBER", name: "Original equipment number", value: "BZ" }, { key: "INDUSTRY_COMMODITY_CODE", name: "Industry commodity code", value: "CC" }, { key: "COMMODITY_GROUPING", name: "Commodity grouping", value: "CG" }, { key: "COLOUR_NUMBER", name: "Colour number", value: "CL" }, { key: "CONTRACT_NUMBER", name: "Contract number", value: "CR" }, { key: "CUSTOMS_ARTICLE_NUMBER", name: "Customs article number", value: "CV" }, { key: "DRAWING_REVISION_NUMBER", name: "Drawing revision number", value: "DR" }, { key: "DRAWING", name: "Drawing", value: "DW" }, { key: "ENGINEERING_CHANGE_LEVEL", name: "Engineering change level", value: "EC" }, { key: "MATERIAL_CODE", name: "Material code", value: "EF" }, { key: "EMDN_EUROPEAN_MEDICAL_DEVICE_NOMENCLATURE", name: "EMDN (European Medical Device Nomenclature)", value: "EMD" }, { key: "INTERNATIONAL_ARTICLE_NUMBERING_ASSOCIATION_EAN", name: "International Article Numbering Association (EAN)", value: "EN" }, { key: "FISH_SPECIES", name: "Fish species", value: "FS" }, { key: "BUYERS_INTERNAL_PRODUCT_GROUP_CODE", name: "Buyer's internal product group code", value: "GB" }, { key: "GLOBAL_MODEL_NUMBER", name: "Global model number", value: "GMN" }, { key: "NATIONAL_PRODUCT_GROUP_CODE", name: "National product group code", value: "GN" }, { key: "GENERAL_SPECIFICATION_NUMBER", name: "General specification number", value: "GS" }, { key: "HARMONISED_SYSTEM", name: "Harmonised system", value: "HS" }, { key: "ISBN_INTERNATIONAL_STANDARD_BOOK_NUMBER", name: "ISBN (International Standard Book Number)", value: "IB" }, { key: "BUYERS_ITEM_NUMBER", name: "Buyer's item number", value: "IN" }, { key: "ISSN_INTERNATIONAL_STANDARD_SERIAL_NUMBER", name: "ISSN (International Standard Serial Number)", value: "IS" }, { key: "BUYERS_STYLE_NUMBER", name: "Buyer's style number", value: "IT" }, { key: "BUYERS_SIZE_CODE", name: "Buyer's size code", value: "IZ" }, { key: "MACHINE_NUMBER", name: "Machine number", value: "MA" }, { key: "MANUFACTURERS_PRODUCERS_ARTICLE_NUMBER", name: "Manufacturer's (producer's) article number", value: "MF" }, { key: "MODEL_NUMBER", name: "Model number", value: "MN" }, { key: "PRODUCTSERVICE_IDENTIFICATION_NUMBER", name: "Product/service identification number", value: "MP" }, { key: "BATCH_NUMBER", name: "Batch number", value: "NB" }, { key: "CUSTOMER_ORDER_NUMBER", name: "Customer order number", value: "ON" }, { key: "PART_NUMBER_DESCRIPTION", name: "Part number description", value: "PD" }, { key: "PURCHASERS_ORDER_LINE_NUMBER", name: "Purchaser's order line number", value: "PL" }, { key: "PURCHASE_ORDER_NUMBER", name: "Purchase order number", value: "PO" }, { key: "PHYTOSANITARY_PASSPORT_IDENTIFIER", name: "Phytosanitary Passport identifier", value: "PPI" }, { key: "PROMOTIONAL_VARIANT_NUMBER", name: "Promotional variant number", value: "PV" }, { key: "BUYERS_QUALIFIER_FOR_SIZE", name: "Buyer's qualifier for size", value: "QS" }, { key: "RETURNABLE_CONTAINER_NUMBER", name: "Returnable container number", value: "RC" }, { key: "RELEASE_NUMBER", name: "Release number", value: "RN" }, { key: "RUN_NUMBER", name: "Run number", value: "RU" }, { key: "RECORD_KEEPING_OF_MODEL_YEAR", name: "Record keeping of model year", value: "RY" }, { key: "SUPPLIERS_ARTICLE_NUMBER", name: "Supplier's article number", value: "SA" }, { key: "STANDARD_GROUP_OF_PRODUCTS_MIXED_ASSORTMENT", name: "Standard group of products (mixed assortment)", value: "SG" }, { key: "SKU_STOCK_KEEPING_UNIT", name: "SKU (Stock keeping unit)", value: "SK" }, { key: "SERIAL_NUMBER", name: "Serial number", value: "SN" }, { key: "RSK_NUMBER", name: "RSK number", value: "SRS" }, { key: "IFLS_INSTITUT_FRANCAIS_DU_LIBRE_SERVICE_5_DIGIT_PRODUCT", name: "IFLS (Institut Francais du Libre Service) 5 digit product", value: "SRT" }, { key: "IFLS_INSTITUT_FRANCAIS_DU_LIBRE_SERVICE_9_DIGIT_PRODUCT", name: "IFLS (Institut Francais du Libre Service) 9 digit product", value: "SRU" }, { key: "GS1_GLOBAL_TRADE_ITEM_NUMBER", name: "GS1 Global Trade Item Number", value: "SRV" }, { key: "EDIS_ENERGY_DATA_IDENTIFICATION_SYSTEM", name: "EDIS (Energy Data Identification System)", value: "SRW" }, { key: "SLAUGHTER_NUMBER", name: "Slaughter number", value: "SRX" }, { key: "OFFICIAL_ANIMAL_NUMBER", name: "Official animal number", value: "SRY" }, { key: "HARMONIZED_TARIFF_SCHEDULE", name: "Harmonized tariff schedule", value: "SRZ" }, { key: "SUPPLIERS_SUPPLIER_ARTICLE_NUMBER", name: "Supplier's supplier article number", value: "SS" }, { key: "46_LEVEL_DOT_CODE", name: "46 Level DOT Code", value: "SSA" }, { key: "AIRLINE_TARIFF_6_D", name: "Airline Tariff 6D", value: "SSB" }, { key: "TITLE_49_CODE_OF_FEDERAL_REGULATIONS", name: "Title 49 Code of Federal Regulations", value: "SSC" }, { key: "INTERNATIONAL_CIVIL_AVIATION_ADMINISTRATION_CODE", name: "International Civil Aviation Administration code", value: "SSD" }, { key: "HAZARDOUS_MATERIALS_ID_DOT", name: "Hazardous Materials ID DOT", value: "SSE" }, { key: "ENDORSEMENT", name: "Endorsement", value: "SSF" }, { key: "AIR_FORCE_REGULATION_71_4", name: "Air Force Regulation 71-4", value: "SSG" }, { key: "BREED", name: "Breed", value: "SSH" }, { key: "CHEMICAL_ABSTRACT_SERVICE_CAS_REGISTRY_NUMBER", name: "Chemical Abstract Service (CAS) registry number", value: "SSI" }, { key: "ENGINE_MODEL_DESIGNATION", name: "Engine model designation", value: "SSJ" }, { key: "INSTITUTIONAL_MEAT_PURCHASE_SPECIFICATIONS_IMPS_NUMBER", name: "Institutional Meat Purchase Specifications (IMPS) Number", value: "SSK" }, { key: "PRICE_LOOK_UP_CODE_PLU", name: "Price Look-Up code (PLU)", value: "SSL" }, { key: "INTERNATIONAL_MARITIME_ORGANIZATION_IMO_CODE", name: "International Maritime Organization (IMO) Code", value: "SSM" }, { key: "BUREAU_OF_EXPLOSIVES_600_A_RAIL", name: "Bureau of Explosives 600-A (rail)", value: "SSN" }, { key: "UNITED_NATIONS_DANGEROUS_GOODS_LIST", name: "United Nations Dangerous Goods List", value: "SSO" }, { key: "INTERNATIONAL_CODE_OF_BOTANICAL_NOMENCLATURE_ICBN", name: "International Code of Botanical Nomenclature (ICBN)", value: "SSP" }, { key: "INTERNATIONAL_CODE_OF_ZOOLOGICAL_NOMENCLATURE_ICZN", name: "International Code of Zoological Nomenclature (ICZN)", value: "SSQ" }, { key: "INTERNATIONAL_CODE_OF_NOMENCLATURE_FOR_CULTIVATED_PLANTS", name: "International Code of Nomenclature for Cultivated Plants", value: "SSR" }, { key: "DISTRIBUTORS_ARTICLE_IDENTIFIER", name: "Distributor\u2019s article identifier", value: "SSS" }, { key: "NORWEGIAN_CLASSIFICATION_SYSTEM_ENVA", name: "Norwegian Classification system ENVA", value: "SST" }, { key: "SUPPLIER_ASSIGNED_CLASSIFICATION", name: "Supplier assigned classification", value: "SSU" }, { key: "MEXICAN_CLASSIFICATION_SYSTEM_AMECE", name: "Mexican classification system AMECE", value: "SSV" }, { key: "GERMAN_CLASSIFICATION_SYSTEM_CCG", name: "German classification system CCG", value: "SSW" }, { key: "FINNISH_CLASSIFICATION_SYSTEM_EANFIN", name: "Finnish classification system EANFIN", value: "SSX" }, { key: "CANADIAN_CLASSIFICATION_SYSTEM_ICC", name: "Canadian classification system ICC", value: "SSY" }, { key: "FRENCH_CLASSIFICATION_SYSTEM_IFLS5", name: "French classification system IFLS5", value: "SSZ" }, { key: "STYLE_NUMBER", name: "Style number", value: "ST" }, { key: "DUTCH_CLASSIFICATION_SYSTEM_CBL", name: "Dutch classification system CBL", value: "STA" }, { key: "JAPANESE_CLASSIFICATION_SYSTEM_JICFS", name: "Japanese classification system JICFS", value: "STB" }, { key: "EUROPEAN_UNION_DAIRY_SUBSIDY_ELIGIBILITY_CLASSIFICATION", name: "European Union dairy subsidy eligibility classification", value: "STC" }, { key: "GS1_SPAIN_CLASSIFICATION_SYSTEM", name: "GS1 Spain classification system", value: "STD" }, { key: "GS1_POLAND_CLASSIFICATION_SYSTEM", name: "GS1 Poland classification system", value: "STE" }, { key: "FEDERAL_AGENCY_ON_TECHNICAL_REGULATING_AND_METROLOGY_OF_THE", name: "Federal Agency on Technical Regulating and Metrology of the", value: "STF" }, { key: "EFFICIENT_CONSUMER_RESPONSE_ECR_AUSTRIA_CLASSIFICATION", name: "Efficient Consumer Response (ECR) Austria classification", value: "STG" }, { key: "GS1_ITALY_CLASSIFICATION_SYSTEM", name: "GS1 Italy classification system", value: "STH" }, { key: "CPV_COMMON_PROCUREMENT_VOCABULARY", name: "CPV (Common Procurement Vocabulary)", value: "STI" }, { key: "IFDA_INTERNATIONAL_FOODSERVICE_DISTRIBUTORS_ASSOCIATION", name: "IFDA (International Foodservice Distributors Association)", value: "STJ" }, { key: "AHFS_AMERICAN_HOSPITAL_FORMULARY_SERVICE_PHARMACOLOGIC_", name: "AHFS (American Hospital Formulary Service) pharmacologic -", value: "STK" }, { key: "ATC_ANATOMICAL_THERAPEUTIC_CHEMICAL_CLASSIFICATION_SYSTEM", name: "ATC (Anatomical Therapeutic Chemical) classification system", value: "STL" }, { key: "CLADIMED_CLASSIFICATION_DES_DISPOSITIFS_MEDICAUX", name: "CLADIMED (Classification des Dispositifs M\xE9dicaux)", value: "STM" }, { key: "CMDR_CANADIAN_MEDICAL_DEVICE_REGULATIONS_CLASSIFICATION", name: "CMDR (Canadian Medical Device Regulations) classification", value: "STN" }, { key: "CNDM_CLASSIFICAZIONE_NAZIONALE_DEI_DISPOSITIVI_MEDICI", name: "CNDM (Classificazione Nazionale dei Dispositivi Medici)", value: "STO" }, { key: "UK_DMD_DICTIONARY_OF_MEDICINES__DEVICES_STANDARD_CODING", name: "UK DM&D (Dictionary of Medicines & Devices) standard coding", value: "STP" }, { key: "E_CLSS", name: "eCl@ss", value: "STQ" }, { key: "EDMA_EUROPEAN_DIAGNOSTIC_MANUFACTURERS_ASSOCIATION", name: "EDMA (European Diagnostic Manufacturers Association)", value: "STR" }, { key: "EGAR_EUROPEAN_GENERIC_ARTICLE_REGISTER", name: "EGAR (European Generic Article Register)", value: "STS" }, { key: "GMDN_GLOBAL_MEDICAL_DEVICES_NOMENCLATURE", name: "GMDN (Global Medical Devices Nomenclature)", value: "STT" }, { key: "GPI_GENERIC_PRODUCT_IDENTIFIER", name: "GPI (Generic Product Identifier)", value: "STU" }, { key: "HCPCS_HEALTHCARE_COMMON_PROCEDURE_CODING_SYSTEM", name: "HCPCS (Healthcare Common Procedure Coding System)", value: "STV" }, { key: "ICPS_INTERNATIONAL_CLASSIFICATION_FOR_PATIENT_SAFETY", name: "ICPS (International Classification for Patient Safety)", value: "STW" }, { key: "MED_DRA_MEDICAL_DICTIONARY_FOR_REGULATORY_ACTIVITIES", name: "MedDRA (Medical Dictionary for Regulatory Activities)", value: "STX" }, { key: "MEDICAL_COLUMBUS", name: "Medical Columbus", value: "STY" }, { key: "NAPCS_NORTH_AMERICAN_PRODUCT_CLASSIFICATION_SYSTEM", name: "NAPCS (North American Product Classification System)", value: "STZ" }, { key: "NHS_NATIONAL_HEALTH_SERVICES_E_CLASS", name: "NHS (National Health Services) eClass", value: "SUA" }, { key: "US_FDA_FOOD_AND_DRUG_ADMINISTRATION_PRODUCT_CODE", name: "US FDA (Food and Drug Administration) Product Code", value: "SUB" }, { key: "SNOMED_CT_SYSTEMATIZED_NOMENCLATURE_OF_MEDICINE_CLINICAL", name: "SNOMED CT (Systematized Nomenclature of Medicine-Clinical", value: "SUC" }, { key: "UMDNS_UNIVERSAL_MEDICAL_DEVICE_NOMENCLATURE_SYSTEM", name: "UMDNS (Universal Medical Device Nomenclature System)", value: "SUD" }, { key: "GS1_GLOBAL_RETURNABLE_ASSET_IDENTIFIER_NON_SERIALISED", name: "GS1 Global Returnable Asset Identifier, non-serialised", value: "SUE" }, { key: "IMEI", name: "IMEI", value: "SUF" }, { key: "WASTE_TYPE_EMSA", name: "Waste Type (EMSA)", value: "SUG" }, { key: "SHIPS_STORE_CLASSIFICATION_TYPE", name: "Ship's store classification type", value: "SUH" }, { key: "EMERGENCY_FIRE_CODE", name: "Emergency fire code", value: "SUI" }, { key: "EMERGENCY_SPILLAGE_CODE", name: "Emergency spillage code", value: "SUJ" }, { key: "IMDG_PACKING_GROUP", name: "IMDG packing group", value: "SUK" }, { key: "MARPOL_CODE_IBC", name: "MARPOL Code IBC", value: "SUL" }, { key: "IMDG_SUBSIDIARY_RISK_CLASS", name: "IMDG subsidiary risk class", value: "SUM" }, { key: "TRANSPORT_GROUP_NUMBER", name: "Transport group number", value: "TG" }, { key: "TAXONOMIC_SERIAL_NUMBER", name: "Taxonomic Serial Number", value: "TSN" }, { key: "IMDG_MAIN_HAZARD_CLASS", name: "IMDG main hazard class", value: "TSO" }, { key: "EU_COMBINED_NOMENCLATURE", name: "EU Combined Nomenclature", value: "TSP" }, { key: "THERAPEUTIC_CLASSIFICATION_NUMBER", name: "Therapeutic classification number", value: "TSQ" }, { key: "EUROPEAN_WASTE_CATALOGUE", name: "European Waste Catalogue", value: "TSR" }, { key: "PRICE_GROUPING_CODE", name: "Price grouping code", value: "TSS" }, { key: "UNSPSC", name: "UNSPSC", value: "TST" }, { key: "EU_RO_HS_DIRECTIVE", name: "EU RoHS Directive", value: "TSU" }, { key: "ULTIMATE_CUSTOMERS_ARTICLE_NUMBER", name: "Ultimate customer's article number", value: "UA" }, { key: "UPC_UNIVERSAL_PRODUCT_CODE", name: "UPC (Universal product code)", value: "UP" }, { key: "VENDOR_ITEM_NUMBER", name: "Vendor item number", value: "VN" }, { key: "VENDORS_SELLERS_PART_NUMBER", name: "Vendor's (seller's) part number", value: "VP" }, { key: "VENDORS_SUPPLEMENTAL_ITEM_NUMBER", name: "Vendor's supplemental item number", value: "VS" }, { key: "VENDOR_SPECIFICATION_NUMBER", name: "Vendor specification number", value: "VX" }, { key: "MUTUALLY_DEFINED", name: "Mutually defined", value: "ZZZ" } ]; var itemCode = ITEM.map(({ value }) => value); var Item = createEnum(ITEM, { keyProp: "key", valueProp: "value" }); export { ITEM, Item, PUBLISHED, itemCode };