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.

269 lines (267 loc) 12.7 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/currency.gen.ts var PUBLISHED = /* @__PURE__ */ new Date("2025-01-31T23:00:00.000Z"); var CURRENCY = [ { key: "UAE_DIRHAM", name: "UAE Dirham", value: "AED" }, { key: "AFGHANI", name: "Afghani", value: "AFN" }, { key: "LEK", name: "Lek", value: "ALL" }, { key: "ARMENIAN_DRAM", name: "Armenian Dram", value: "AMD" }, { key: "NETHERLANDS_ANTILLEAN_GUILDER", name: "Netherlands Antillean Guilder", value: "ANG" }, { key: "KWANZA", name: "Kwanza", value: "AOA" }, { key: "ARGENTINE_PESO", name: "Argentine Peso", value: "ARS" }, { key: "AUSTRALIAN_DOLLAR", name: "Australian Dollar", value: "AUD" }, { key: "ARUBAN_FLORIN", name: "Aruban Florin", value: "AWG" }, { key: "AZERBAIJAN_MANAT", name: "Azerbaijan Manat", value: "AZN" }, { key: "CONVERTIBLE_MARK", name: "Convertible Mark", value: "BAM" }, { key: "BARBADOS_DOLLAR", name: "Barbados Dollar", value: "BBD" }, { key: "TAKA", name: "Taka", value: "BDT" }, { key: "BULGARIAN_LEV", name: "Bulgarian Lev", value: "BGN" }, { key: "BAHRAINI_DINAR", name: "Bahraini Dinar", value: "BHD" }, { key: "BURUNDI_FRANC", name: "Burundi Franc", value: "BIF" }, { key: "BERMUDIAN_DOLLAR", name: "Bermudian Dollar", value: "BMD" }, { key: "BRUNEI_DOLLAR", name: "Brunei Dollar", value: "BND" }, { key: "BOLIVIANO", name: "Boliviano", value: "BOB" }, { key: "MVDOL", name: "Mvdol", value: "BOV" }, { key: "BRAZILIAN_REAL", name: "Brazilian Real", value: "BRL" }, { key: "BAHAMIAN_DOLLAR", name: "Bahamian Dollar", value: "BSD" }, { key: "NGULTRUM", name: "Ngultrum", value: "BTN" }, { key: "PULA", name: "Pula", value: "BWP" }, { key: "BELARUSIAN_RUBLE", name: "Belarusian Ruble", value: "BYN" }, { key: "BELIZE_DOLLAR", name: "Belize Dollar", value: "BZD" }, { key: "CANADIAN_DOLLAR", name: "Canadian Dollar", value: "CAD" }, { key: "CONGOLESE_FRANC", name: "Congolese Franc", value: "CDF" }, { key: "WIR_EURO", name: "WIR Euro", value: "CHE" }, { key: "SWISS_FRANC", name: "Swiss Franc", value: "CHF" }, { key: "WIR_FRANC", name: "WIR Franc", value: "CHW" }, { key: "UNIDAD_DE_FOMENTO", name: "Unidad de Fomento", value: "CLF" }, { key: "CHILEAN_PESO", name: "Chilean Peso", value: "CLP" }, { key: "YUAN_RENMINBI", name: "Yuan Renminbi", value: "CNY" }, { key: "COLOMBIAN_PESO", name: "Colombian Peso", value: "COP" }, { key: "UNIDAD_DE_VALOR_REAL", name: "Unidad de Valor Real", value: "COU" }, { key: "COSTA_RICAN_COLON", name: "Costa Rican Colon", value: "CRC" }, { key: "CUBAN_PESO", name: "Cuban Peso", value: "CUP" }, { key: "CABO_VERDE_ESCUDO", name: "Cabo Verde Escudo", value: "CVE" }, { key: "CZECH_KORUNA", name: "Czech Koruna", value: "CZK" }, { key: "DJIBOUTI_FRANC", name: "Djibouti Franc", value: "DJF" }, { key: "DANISH_KRONE", name: "Danish Krone", value: "DKK" }, { key: "DOMINICAN_PESO", name: "Dominican Peso", value: "DOP" }, { key: "ALGERIAN_DINAR", name: "Algerian Dinar", value: "DZD" }, { key: "EGYPTIAN_POUND", name: "Egyptian Pound", value: "EGP" }, { key: "NAKFA", name: "Nakfa", value: "ERN" }, { key: "ETHIOPIAN_BIRR", name: "Ethiopian Birr", value: "ETB" }, { key: "EURO", name: "Euro", value: "EUR" }, { key: "FIJI_DOLLAR", name: "Fiji Dollar", value: "FJD" }, { key: "FALKLAND_ISLANDS_POUND", name: "Falkland Islands Pound", value: "FKP" }, { key: "POUND_STERLING", name: "Pound Sterling", value: "GBP" }, { key: "LARI", name: "Lari", value: "GEL" }, { key: "GHANA_CEDI", name: "Ghana Cedi", value: "GHS" }, { key: "GIBRALTAR_POUND", name: "Gibraltar Pound", value: "GIP" }, { key: "DALASI", name: "Dalasi", value: "GMD" }, { key: "GUINEAN_FRANC", name: "Guinean Franc", value: "GNF" }, { key: "QUETZAL", name: "Quetzal", value: "GTQ" }, { key: "GUYANA_DOLLAR", name: "Guyana Dollar", value: "GYD" }, { key: "HONG_KONG_DOLLAR", name: "Hong Kong Dollar", value: "HKD" }, { key: "LEMPIRA", name: "Lempira", value: "HNL" }, { key: "GOURDE", name: "Gourde", value: "HTG" }, { key: "FORINT", name: "Forint", value: "HUF" }, { key: "RUPIAH", name: "Rupiah", value: "IDR" }, { key: "NEW_ISRAELI_SHEQEL", name: "New Israeli Sheqel", value: "ILS" }, { key: "INDIAN_RUPEE", name: "Indian Rupee", value: "INR" }, { key: "IRAQI_DINAR", name: "Iraqi Dinar", value: "IQD" }, { key: "IRANIAN_RIAL", name: "Iranian Rial", value: "IRR" }, { key: "ICELAND_KRONA", name: "Iceland Krona", value: "ISK" }, { key: "JAMAICAN_DOLLAR", name: "Jamaican Dollar", value: "JMD" }, { key: "JORDANIAN_DINAR", name: "Jordanian Dinar", value: "JOD" }, { key: "YEN", name: "Yen", value: "JPY" }, { key: "KENYAN_SHILLING", name: "Kenyan Shilling", value: "KES" }, { key: "SOM", name: "Som", value: "KGS" }, { key: "RIEL", name: "Riel", value: "KHR" }, { key: "COMORIAN_FRANC", name: "Comorian Franc", value: "KMF" }, { key: "NORTH_KOREAN_WON", name: "North Korean Won", value: "KPW" }, { key: "WON", name: "Won", value: "KRW" }, { key: "KUWAITI_DINAR", name: "Kuwaiti Dinar", value: "KWD" }, { key: "CAYMAN_ISLANDS_DOLLAR", name: "Cayman Islands Dollar", value: "KYD" }, { key: "TENGE", name: "Tenge", value: "KZT" }, { key: "LAO_KIP", name: "Lao Kip", value: "LAK" }, { key: "LEBANESE_POUND", name: "Lebanese Pound", value: "LBP" }, { key: "SRI_LANKA_RUPEE", name: "Sri Lanka Rupee", value: "LKR" }, { key: "LIBERIAN_DOLLAR", name: "Liberian Dollar", value: "LRD" }, { key: "LOTI", name: "Loti", value: "LSL" }, { key: "LIBYAN_DINAR", name: "Libyan Dinar", value: "LYD" }, { key: "MOROCCAN_DIRHAM", name: "Moroccan Dirham", value: "MAD" }, { key: "MOLDOVAN_LEU", name: "Moldovan Leu", value: "MDL" }, { key: "MALAGASY_ARIARY", name: "Malagasy Ariary", value: "MGA" }, { key: "DENAR", name: "Denar", value: "MKD" }, { key: "KYAT", name: "Kyat", value: "MMK" }, { key: "TUGRIK", name: "Tugrik", value: "MNT" }, { key: "PATACA", name: "Pataca", value: "MOP" }, { key: "OUGUIYA", name: "Ouguiya", value: "MRU" }, { key: "MAURITIUS_RUPEE", name: "Mauritius Rupee", value: "MUR" }, { key: "RUFIYAA", name: "Rufiyaa", value: "MVR" }, { key: "MALAWI_KWACHA", name: "Malawi Kwacha", value: "MWK" }, { key: "MEXICAN_PESO", name: "Mexican Peso", value: "MXN" }, { key: "MEXICAN_UNIDAD_DE_INVERSION_UDI", name: "Mexican Unidad de Inversion (UDI)", value: "MXV" }, { key: "MALAYSIAN_RINGGIT", name: "Malaysian Ringgit", value: "MYR" }, { key: "MOZAMBIQUE_METICAL", name: "Mozambique Metical", value: "MZN" }, { key: "NAMIBIA_DOLLAR", name: "Namibia Dollar", value: "NAD" }, { key: "NAIRA", name: "Naira", value: "NGN" }, { key: "CORDOBA_ORO", name: "Cordoba Oro", value: "NIO" }, { key: "NORWEGIAN_KRONE", name: "Norwegian Krone", value: "NOK" }, { key: "NEPALESE_RUPEE", name: "Nepalese Rupee", value: "NPR" }, { key: "NEW_ZEALAND_DOLLAR", name: "New Zealand Dollar", value: "NZD" }, { key: "RIAL_OMANI", name: "Rial Omani", value: "OMR" }, { key: "BALBOA", name: "Balboa", value: "PAB" }, { key: "SOL", name: "Sol", value: "PEN" }, { key: "KINA", name: "Kina", value: "PGK" }, { key: "PHILIPPINE_PESO", name: "Philippine Peso", value: "PHP" }, { key: "PAKISTAN_RUPEE", name: "Pakistan Rupee", value: "PKR" }, { key: "ZLOTY", name: "Zloty", value: "PLN" }, { key: "GUARANI", name: "Guarani", value: "PYG" }, { key: "QATARI_RIAL", name: "Qatari Rial", value: "QAR" }, { key: "ROMANIAN_LEU", name: "Romanian Leu", value: "RON" }, { key: "SERBIAN_DINAR", name: "Serbian Dinar", value: "RSD" }, { key: "RUSSIAN_RUBLE", name: "Russian Ruble", value: "RUB" }, { key: "RWANDA_FRANC", name: "Rwanda Franc", value: "RWF" }, { key: "SAUDI_RIYAL", name: "Saudi Riyal", value: "SAR" }, { key: "SOLOMON_ISLANDS_DOLLAR", name: "Solomon Islands Dollar", value: "SBD" }, { key: "SEYCHELLES_RUPEE", name: "Seychelles Rupee", value: "SCR" }, { key: "SUDANESE_POUND", name: "Sudanese Pound", value: "SDG" }, { key: "SWEDISH_KRONA", name: "Swedish Krona", value: "SEK" }, { key: "SINGAPORE_DOLLAR", name: "Singapore Dollar", value: "SGD" }, { key: "SAINT_HELENA_POUND", name: "Saint Helena Pound", value: "SHP" }, { key: "SIERRA_LEONE_NEW_VALUATION_2022", name: "Sierra Leone (new valuation 2022)", value: "SLE" }, { key: "SOMALI_SHILLING", name: "Somali Shilling", value: "SOS" }, { key: "SURINAM_DOLLAR", name: "Surinam Dollar", value: "SRD" }, { key: "SOUTH_SUDANESE_POUND", name: "South Sudanese Pound", value: "SSP" }, { key: "DOBRA", name: "Dobra", value: "STN" }, { key: "EL_SALVADOR_COLON", name: "El Salvador Colon", value: "SVC" }, { key: "SYRIAN_POUND", name: "Syrian Pound", value: "SYP" }, { key: "LILANGENI", name: "Lilangeni", value: "SZL" }, { key: "BAHT", name: "Baht", value: "THB" }, { key: "SOMONI", name: "Somoni", value: "TJS" }, { key: "TURKMENISTAN_NEW_MANAT", name: "Turkmenistan New Manat", value: "TMT" }, { key: "TUNISIAN_DINAR", name: "Tunisian Dinar", value: "TND" }, { key: "PAANGA", name: "Pa\u2019anga", value: "TOP" }, { key: "TURKISH_LIRA", name: "Turkish Lira", value: "TRY" }, { key: "TRINIDAD_AND_TOBAGO_DOLLAR", name: "Trinidad and Tobago Dollar", value: "TTD" }, { key: "NEW_TAIWAN_DOLLAR", name: "New Taiwan Dollar", value: "TWD" }, { key: "TANZANIAN_SHILLING", name: "Tanzanian Shilling", value: "TZS" }, { key: "HRYVNIA", name: "Hryvnia", value: "UAH" }, { key: "UGANDA_SHILLING", name: "Uganda Shilling", value: "UGX" }, { key: "US_DOLLAR", name: "US Dollar", value: "USD" }, { key: "US_DOLLAR_NEXT_DAY", name: "US Dollar (Next day)", value: "USN" }, { key: "URUGUAY_PESO_EN_UNIDADES_INDEXADAS_UI", name: "Uruguay Peso en Unidades Indexadas (UI)", value: "UYI" }, { key: "PESO_URUGUAYO", name: "Peso Uruguayo", value: "UYU" }, { key: "UNIDAD_PREVISIONAL", name: "Unidad Previsional", value: "UYW" }, { key: "UZBEKISTAN_SUM", name: "Uzbekistan Sum", value: "UZS" }, { key: "BOLIVAR_SOBERANO_NEW_VALUATION", name: "Bol\xEDvar Soberano, new valuation", value: "VED" }, { key: "BOLIVAR_SOBERANO", name: "Bol\xEDvar Soberano", value: "VES" }, { key: "DONG", name: "Dong", value: "VND" }, { key: "VATU", name: "Vatu", value: "VUV" }, { key: "TALA", name: "Tala", value: "WST" }, { key: "CFA_FRANC_BEAC", name: "CFA Franc BEAC", value: "XAF" }, { key: "SILVER", name: "Silver", value: "XAG" }, { key: "GOLD", name: "Gold", value: "XAU" }, { key: "BOND_MARKETS_UNIT_EUROPEAN_COMPOSITE_UNIT_EURCO", name: "Bond Markets Unit European Composite Unit (EURCO)", value: "XBA" }, { key: "BOND_MARKETS_UNIT_EUROPEAN_MONETARY_UNIT_EMU_6", name: "Bond Markets Unit European Monetary Unit (E.M.U.-6)", value: "XBB" }, { key: "BOND_MARKETS_UNIT_EUROPEAN_UNIT_OF_ACCOUNT_9_EUA_9", name: "Bond Markets Unit European Unit of Account 9 (E.U.A.-9)", value: "XBC" }, { key: "BOND_MARKETS_UNIT_EUROPEAN_UNIT_OF_ACCOUNT_17_EUA_17", name: "Bond Markets Unit European Unit of Account 17 (E.U.A.-17)", value: "XBD" }, { key: "EAST_CARIBBEAN_DOLLAR", name: "East Caribbean Dollar", value: "XCD" }, { key: "SDR_SPECIAL_DRAWING_RIGHT", name: "SDR (Special Drawing Right)", value: "XDR" }, { key: "CFA_FRANC_BCEAO", name: "CFA Franc BCEAO", value: "XOF" }, { key: "PALLADIUM", name: "Palladium", value: "XPD" }, { key: "CFP_FRANC", name: "CFP Franc", value: "XPF" }, { key: "PLATINUM", name: "Platinum", value: "XPT" }, { key: "SUCRE", name: "Sucre", value: "XSU" }, { key: "CODES_SPECIFICALLY_RESERVED_FOR_TESTING_PURPOSES", name: "Codes specifically reserved for testing purposes", value: "XTS" }, { key: "ADB_UNIT_OF_ACCOUNT", name: "ADB Unit of Account", value: "XUA" }, { key: "THE_CODES_ASSIGNED_FOR_TRANSACTIONS_WHERE_NO_CURRENCY_IS_INVOLVED", name: "The codes assigned for transactions where no currency is involved", value: "XXX" }, { key: "YEMENI_RIAL", name: "Yemeni Rial", value: "YER" }, { key: "RAND", name: "Rand", value: "ZAR" }, { key: "ZAMBIAN_KWACHA", name: "Zambian Kwacha", value: "ZMW" }, { key: "ZIMBABWE_GOLD", name: "Zimbabwe Gold", value: "ZWG" } ]; var currencyCode = CURRENCY.map(({ value }) => value); var Currency = createEnum(CURRENCY, { keyProp: "key", valueProp: "value" }); export { CURRENCY, Currency, PUBLISHED, currencyCode };