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.

1,291 lines (1,278 loc) 703 kB
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, { get: (a, b) => (typeof require !== "undefined" ? require : a)[b] }) : x)(function(x) { if (typeof require !== "undefined") return require.apply(this, arguments); throw Error('Dynamic require of "' + x + '" is not supported'); }); // src/error.ts var ZugferdError = class extends Error { constructor(code, message, options) { super(message, options); this.code = code; this.code = code; this.name = "ZugferdError"; } }; // src/profiles/factory.ts var createProfile = (options) => { const ctx = { ...options, parse: (ctx2) => { const xmlObj = ctx2.context.parseSchema( ctx2.data, ctx2.context.mergeSchemas(options), {}, {}, ctx2.data ); return xmlObj; }, validate: async (data) => { const xsdPath = await getXsdPath(options); if (!xsdPath) { return true; } try { let xsdValidator; try { xsdValidator = await import("xsd-schema-validator"); } catch { throw new Error("Missing dependency xsd-schema-validator"); } const res = await xsdValidator.validateXML(data, xsdPath); return res.valid === true; } catch (err) { throw new ZugferdError("INVALID_XML", err?.message || "invalid xml"); } } }; return ctx; }; var getXsdPath = (profile) => { if (typeof profile.xsdPath === "function") { return profile.xsdPath(); } return profile.xsdPath; }; // src/types/schema.ts import "zod"; // src/formatter/xml/formatter.ts import defu from "defu"; import { XMLBuilder } from "fast-xml-parser"; // src/utils/logger.ts var colors = { reset: "\x1B[0m", bright: "\x1B[1m", dim: "\x1B[2m", underscore: "\x1B[4m", blink: "\x1B[5m", reverse: "\x1B[7m", hidden: "\x1B[8m", fg: { black: "\x1B[30m", red: "\x1B[31m", green: "\x1B[32m", yellow: "\x1B[33m", blue: "\x1B[34m", magenta: "\x1B[35m", cyan: "\x1B[36m", white: "\x1B[37m" }, bg: { black: "\x1B[40m", red: "\x1B[41m", green: "\x1B[42m", yellow: "\x1B[43m", blue: "\x1B[44m", magenta: "\x1B[45m", cyan: "\x1B[46m", white: "\x1B[47m" } }; var levelColors = { info: colors.fg.blue, success: colors.fg.green, warn: colors.fg.yellow, error: colors.fg.red, debug: colors.fg.magenta }; // src/formatter/pdf/formatter.ts import { decodePDFRawStream, PDFArray, PDFDict, PDFHexString, PDFName, PDFNumber, PDFStream, PDFString } from "pdf-lib"; import crypto from "crypto"; // src/utils/color-profile.ts var COLOR_PROFILE = ` AAAL0AAAAAACAAAAbW50clJHQiBYWVogB98AAgAPAAAAAAAAYWNzcAAAAAAAAAAAAAAAAAAAAAAA AAABAAAAAAAAAAAAAPbWAAEAAAAA0y0AAAAAPQ6y3q6Tl76bZybOjApDzgAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAQZGVzYwAAAUQAAABjYlhZWgAAAagAAAAUYlRSQwAAAbwAAAgMZ1RS QwAAAbwAAAgMclRSQwAAAbwAAAgMZG1kZAAACcgAAACIZ1hZWgAAClAAAAAUbHVtaQAACmQAAAAU bWVhcwAACngAAAAkYmtwdAAACpwAAAAUclhZWgAACrAAAAAUdGVjaAAACsQAAAAMdnVlZAAACtAA AACHd3RwdAAAC1gAAAAUY3BydAAAC2wAAAA3Y2hhZAAAC6QAAAAsZGVzYwAAAAAAAAAJc1JHQjIw MTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAAAkoAAAD4QAALbPY3VydgAAAAAAAAQA AAAABQAKAA8AFAAZAB4AIwAoAC0AMgA3ADsAQABFAEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYA iwCQAJUAmgCfAKQAqQCuALIAtwC8AMEAxgDLANAA1QDbAOAA5QDrAPAA9gD7AQEBBwENARMBGQEf ASUBKwEyATgBPgFFAUwBUgFZAWABZwFuAXUBfAGDAYsBkgGaAaEBqQGxAbkBwQHJAdEB2QHhAekB 8gH6AgMCDAIUAh0CJgIvAjgCQQJLAlQCXQJnAnECegKEAo4CmAKiAqwCtgLBAssC1QLgAusC9QMA AwsDFgMhAy0DOANDA08DWgNmA3IDfgOKA5YDogOuA7oDxwPTA+AD7AP5BAYEEwQgBC0EOwRIBFUE YwRxBH4EjASaBKgEtgTEBNME4QTwBP4FDQUcBSsFOgVJBVgFZwV3BYYFlgWmBbUFxQXVBeUF9gYG BhYGJwY3BkgGWQZqBnsGjAadBq8GwAbRBuMG9QcHBxkHKwc9B08HYQd0B4YHmQesB78H0gflB/gI CwgfCDIIRghaCG4IggiWCKoIvgjSCOcI+wkQCSUJOglPCWQJeQmPCaQJugnPCeUJ+woRCicKPQpU CmoKgQqYCq4KxQrcCvMLCwsiCzkLUQtpC4ALmAuwC8gL4Qv5DBIMKgxDDFwMdQyODKcMwAzZDPMN DQ0mDUANWg10DY4NqQ3DDd4N+A4TDi4OSQ5kDn8Omw62DtIO7g8JDyUPQQ9eD3oPlg+zD88P7BAJ ECYQQxBhEH4QmxC5ENcQ9RETETERTxFtEYwRqhHJEegSBxImEkUSZBKEEqMSwxLjEwMTIxNDE2MT gxOkE8UT5RQGFCcUSRRqFIsUrRTOFPAVEhU0FVYVeBWbFb0V4BYDFiYWSRZsFo8WshbWFvoXHRdB F2UXiReuF9IX9xgbGEAYZRiKGK8Y1Rj6GSAZRRlrGZEZtxndGgQaKhpRGncanhrFGuwbFBs7G2Mb ihuyG9ocAhwqHFIcexyjHMwc9R0eHUcdcB2ZHcMd7B4WHkAeah6UHr4e6R8THz4faR+UH78f6iAV IEEgbCCYIMQg8CEcIUghdSGhIc4h+yInIlUigiKvIt0jCiM4I2YjlCPCI/AkHyRNJHwkqyTaJQkl OCVoJZclxyX3JicmVyaHJrcm6CcYJ0kneierJ9woDSg/KHEooijUKQYpOClrKZ0p0CoCKjUqaCqb Ks8rAis2K2krnSvRLAUsOSxuLKIs1y0MLUEtdi2rLeEuFi5MLoIuty7uLyQvWi+RL8cv/jA1MGww pDDbMRIxSjGCMbox8jIqMmMymzLUMw0zRjN/M7gz8TQrNGU0njTYNRM1TTWHNcI1/TY3NnI2rjbp NyQ3YDecN9c4FDhQOIw4yDkFOUI5fzm8Ofk6Njp0OrI67zstO2s7qjvoPCc8ZTykPOM9Ij1hPaE9 4D4gPmA+oD7gPyE/YT+iP+JAI0BkQKZA50EpQWpBrEHuQjBCckK1QvdDOkN9Q8BEA0RHRIpEzkUS RVVFmkXeRiJGZ0arRvBHNUd7R8BIBUhLSJFI10kdSWNJqUnwSjdKfUrESwxLU0uaS+JMKkxyTLpN Ak1KTZNN3E4lTm5Ot08AT0lPk0/dUCdQcVC7UQZRUFGbUeZSMVJ8UsdTE1NfU6pT9lRCVI9U21Uo VXVVwlYPVlxWqVb3V0RXklfgWC9YfVjLWRpZaVm4WgdaVlqmWvVbRVuVW+VcNVyGXNZdJ114Xcle Gl5sXr1fD19hX7NgBWBXYKpg/GFPYaJh9WJJYpxi8GNDY5dj62RAZJRk6WU9ZZJl52Y9ZpJm6Gc9 Z5Nn6Wg/aJZo7GlDaZpp8WpIap9q92tPa6dr/2xXbK9tCG1gbbluEm5rbsRvHm94b9FwK3CGcOBx OnGVcfByS3KmcwFzXXO4dBR0cHTMdSh1hXXhdj52m3b4d1Z3s3gReG54zHkqeYl553pGeqV7BHtj e8J8IXyBfOF9QX2hfgF+Yn7CfyN/hH/lgEeAqIEKgWuBzYIwgpKC9INXg7qEHYSAhOOFR4Wrhg6G cobXhzuHn4gEiGmIzokziZmJ/opkisqLMIuWi/yMY4zKjTGNmI3/jmaOzo82j56QBpBukNaRP5Go khGSepLjk02TtpQglIqU9JVflcmWNJaflwqXdZfgmEyYuJkkmZCZ/JpomtWbQpuvnByciZz3nWSd 0p5Anq6fHZ+Ln/qgaaDYoUehtqImopajBqN2o+akVqTHpTilqaYapoum/adup+CoUqjEqTepqaoc qo+rAqt1q+msXKzQrUStuK4trqGvFq+LsACwdbDqsWCx1rJLssKzOLOutCW0nLUTtYq2AbZ5tvC3 aLfguFm40blKucK6O7q1uy67p7whvJu9Fb2Pvgq+hL7/v3q/9cBwwOzBZ8Hjwl/C28NYw9TEUcTO xUvFyMZGxsPHQce/yD3IvMk6ybnKOMq3yzbLtsw1zLXNNc21zjbOts83z7jQOdC60TzRvtI/0sHT RNPG1EnUy9VO1dHWVdbY11zX4Nhk2OjZbNnx2nba+9uA3AXcit0Q3ZbeHN6i3ynfr+A24L3hROHM 4lPi2+Nj4+vkc+T85YTmDeaW5x/nqegy6LzpRunQ6lvq5etw6/vshu0R7ZzuKO6070DvzPBY8OXx cvH/8ozzGfOn9DT0wvVQ9d72bfb794r4Gfio+Tj5x/pX+uf7d/wH/Jj9Kf26/kv+3P9t//9kZXNj AAAAAAAAAC5JRUMgNjE5NjYtMi0xIERlZmF1bHQgUkdCIENvbG91ciBTcGFjZSAtIHNSR0IAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAAAAAUAAAAAAA AG1lYXMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlhZWiAAAAAAAAAAngAAAKQAAACH WFlaIAAAAAAAAG+iAAA49QAAA5BzaWcgAAAAAENSVCBkZXNjAAAAAAAAAC1SZWZlcmVuY2UgVmll d2luZyBDb25kaXRpb24gaW4gSUVDIDYxOTY2LTItMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWFla IAAAAAAAAPbWAAEAAAAA0y10ZXh0AAAAAENvcHlyaWdodCBJbnRlcm5hdGlvbmFsIENvbG9yIENv bnNvcnRpdW0sIDIwMTUAAHNmMzIAAAAAAAEMRAAABd////MmAAAHlAAA/Y////uh///9ogAAA9sA AMB1 `.trim(); // src/utils/helper.ts var isDate = (value) => value instanceof Date && !isNaN(value.getTime()); var dateTimeStringFormatter = (date) => { if (typeof date === "string") { date = new Date(date); } if (!isDate(date)) return; const year = date.getFullYear(); const month = String(date.getMonth() + 1).padStart(2, "0"); const day = String(date.getDate()).padStart(2, "0"); return `${year}${month}${day}`; }; // src/document/create.ts import { AFRelationship, PDFDocument as PDFDocument2 } from "pdf-lib"; // src/codelists/index.ts var getByPath = (obj, path2) => path2.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/country.gen.ts var COUNTRY = [ { key: "ANDORRA", name: "Andorra", value: "AD" }, { key: "UNITED_ARAB_EMIRATES_THE", name: "United Arab Emirates (the)", value: "AE" }, { key: "AFGHANISTAN", name: "Afghanistan", value: "AF" }, { key: "ANTIGUA_AND_BARBUDA", name: "Antigua and Barbuda", value: "AG" }, { key: "ANGUILLA", name: "Anguilla", value: "AI" }, { key: "ALBANIA", name: "Albania", value: "AL" }, { key: "ARMENIA", name: "Armenia", value: "AM" }, { key: "ANGOLA", name: "Angola", value: "AO" }, { key: "ANTARCTICA", name: "Antarctica", value: "AQ" }, { key: "ARGENTINA", name: "Argentina", value: "AR" }, { key: "AMERICAN_SAMOA", name: "American Samoa", value: "AS" }, { key: "AUSTRIA", name: "Austria", value: "AT" }, { key: "AUSTRALIA", name: "Australia", value: "AU" }, { key: "ARUBA", name: "Aruba", value: "AW" }, { key: "ALAND_ISLANDS", name: "\xC5land Islands", value: "AX" }, { key: "AZERBAIJAN", name: "Azerbaijan", value: "AZ" }, { key: "BOSNIA_AND_HERZEGOVINA", name: "Bosnia and Herzegovina", value: "BA" }, { key: "BARBADOS", name: "Barbados", value: "BB" }, { key: "BANGLADESH", name: "Bangladesh", value: "BD" }, { key: "BELGIUM", name: "Belgium", value: "BE" }, { key: "BURKINA_FASO", name: "Burkina Faso", value: "BF" }, { key: "BULGARIA", name: "Bulgaria", value: "BG" }, { key: "BAHRAIN", name: "Bahrain", value: "BH" }, { key: "BURUNDI", name: "Burundi", value: "BI" }, { key: "BENIN", name: "Benin", value: "BJ" }, { key: "SAINT_BARTHELEMY", name: "Saint Barth\xE9lemy", value: "BL" }, { key: "BERMUDA", name: "Bermuda", value: "BM" }, { key: "BRUNEI_DARUSSALAM", name: "Brunei Darussalam", value: "BN" }, { key: "BOLIVIA_PLURINATIONAL_STATE_OF", name: "Bolivia (Plurinational State of)", value: "BO" }, { key: "BONAIRE_SINT_EUSTATIUS_AND_SABA", name: "Bonaire, Sint Eustatius and Saba", value: "BQ" }, { key: "BRAZIL", name: "Brazil", value: "BR" }, { key: "BAHAMAS_THE", name: "Bahamas (the)", value: "BS" }, { key: "BHUTAN", name: "Bhutan", value: "BT" }, { key: "BOUVET_ISLAND", name: "Bouvet Island", value: "BV" }, { key: "BOTSWANA", name: "Botswana", value: "BW" }, { key: "BELARUS", name: "Belarus", value: "BY" }, { key: "BELIZE", name: "Belize", value: "BZ" }, { key: "CANADA", name: "Canada", value: "CA" }, { key: "COCOS_KEELING_ISLANDS_THE", name: "Cocos (Keeling) Islands (the)", value: "CC" }, { key: "CONGO_THE_DEMOCRATIC_REPUBLIC_OF_THE", name: "Congo (the Democratic Republic of the)", value: "CD" }, { key: "CENTRAL_AFRICAN_REPUBLIC_THE", name: "Central African Republic (the)", value: "CF" }, { key: "CONGO_THE", name: "Congo (the)", value: "CG" }, { key: "SWITZERLAND", name: "Switzerland", value: "CH" }, { key: "COTE_DIVOIRE", name: "C\xF4te d'Ivoire", value: "CI" }, { key: "COOK_ISLANDS_THE", name: "Cook Islands (the)", value: "CK" }, { key: "CHILE", name: "Chile", value: "CL" }, { key: "CAMEROON", name: "Cameroon", value: "CM" }, { key: "CHINA", name: "China", value: "CN" }, { key: "COLOMBIA", name: "Colombia", value: "CO" }, { key: "COSTA_RICA", name: "Costa Rica", value: "CR" }, { key: "CUBA", name: "Cuba", value: "CU" }, { key: "CABO_VERDE", name: "Cabo Verde", value: "CV" }, { key: "CURACAO", name: "Cura\xE7ao", value: "CW" }, { key: "CHRISTMAS_ISLAND", name: "Christmas Island", value: "CX" }, { key: "CYPRUS", name: "Cyprus", value: "CY" }, { key: "CZECHIA", name: "Czechia", value: "CZ" }, { key: "GERMANY", name: "Germany", value: "DE" }, { key: "DJIBOUTI", name: "Djibouti", value: "DJ" }, { key: "DENMARK", name: "Denmark", value: "DK" }, { key: "DOMINICA", name: "Dominica", value: "DM" }, { key: "DOMINICAN_REPUBLIC_THE", name: "Dominican Republic (the)", value: "DO" }, { key: "ALGERIA", name: "Algeria", value: "DZ" }, { key: "ECUADOR", name: "Ecuador", value: "EC" }, { key: "ESTONIA", name: "Estonia", value: "EE" }, { key: "EGYPT", name: "Egypt", value: "EG" }, { key: "WESTERN_SAHARA", name: "Western Sahara*", value: "EH" }, { key: "ERITREA", name: "Eritrea", value: "ER" }, { key: "SPAIN", name: "Spain", value: "ES" }, { key: "ETHIOPIA", name: "Ethiopia", value: "ET" }, { key: "FINLAND", name: "Finland", value: "FI" }, { key: "FIJI", name: "Fiji", value: "FJ" }, { key: "FALKLAND_ISLANDS_THE_MALVINAS", name: "Falkland Islands (the) [Malvinas]", value: "FK" }, { key: "MICRONESIA_FEDERATED_STATES_OF", name: "Micronesia (Federated States of)", value: "FM" }, { key: "FAROE_ISLANDS_THE", name: "Faroe Islands (the)", value: "FO" }, { key: "FRANCE", name: "France", value: "FR" }, { key: "GABON", name: "Gabon", value: "GA" }, { key: "UNITED_KINGDOM_OF_GREAT_BRITAIN_AND_NORTHERN_IRELAND_THE", name: "United Kingdom of Great Britain and Northern Ireland (the)", value: "GB" }, { key: "GRENADA", name: "Grenada", value: "GD" }, { key: "GEORGIA", name: "Georgia", value: "GE" }, { key: "FRENCH_GUIANA", name: "French Guiana", value: "GF" }, { key: "GUERNSEY", name: "Guernsey", value: "GG" }, { key: "GHANA", name: "Ghana", value: "GH" }, { key: "GIBRALTAR", name: "Gibraltar", value: "GI" }, { key: "GREENLAND", name: "Greenland", value: "GL" }, { key: "GAMBIA_THE", name: "Gambia (the)", value: "GM" }, { key: "GUINEA", name: "Guinea", value: "GN" }, { key: "GUADELOUPE", name: "Guadeloupe", value: "GP" }, { key: "EQUATORIAL_GUINEA", name: "Equatorial Guinea", value: "GQ" }, { key: "GREECE", name: "Greece", value: "GR" }, { key: "SOUTH_GEORGIA_AND_THE_SOUTH_SANDWICH_ISLANDS", name: "South Georgia and the South Sandwich Islands", value: "GS" }, { key: "GUATEMALA", name: "Guatemala", value: "GT" }, { key: "GUAM", name: "Guam", value: "GU" }, { key: "GUINEA_BISSAU", name: "Guinea-Bissau", value: "GW" }, { key: "GUYANA", name: "Guyana", value: "GY" }, { key: "HONG_KONG", name: "Hong Kong", value: "HK" }, { key: "HEARD_ISLAND_AND_MC_DONALD_ISLANDS", name: "Heard Island and McDonald Islands", value: "HM" }, { key: "HONDURAS", name: "Honduras", value: "HN" }, { key: "CROATIA", name: "Croatia", value: "HR" }, { key: "HAITI", name: "Haiti", value: "HT" }, { key: "HUNGARY", name: "Hungary", value: "HU" }, { key: "INDONESIA", name: "Indonesia", value: "ID" }, { key: "IRELAND", name: "Ireland", value: "IE" }, { key: "ISRAEL", name: "Israel", value: "IL" }, { key: "ISLE_OF_MAN", name: "Isle of Man", value: "IM" }, { key: "INDIA", name: "India", value: "IN" }, { key: "BRITISH_INDIAN_OCEAN_TERRITORY_THE", name: "British Indian Ocean Territory (the)", value: "IO" }, { key: "IRAQ", name: "Iraq", value: "IQ" }, { key: "IRAN_ISLAMIC_REPUBLIC_OF", name: "Iran (Islamic Republic of)", value: "IR" }, { key: "ICELAND", name: "Iceland", value: "IS" }, { key: "ITALY", name: "Italy", value: "IT" }, { key: "JERSEY", name: "Jersey", value: "JE" }, { key: "JAMAICA", name: "Jamaica", value: "JM" }, { key: "JORDAN", name: "Jordan", value: "JO" }, { key: "JAPAN", name: "Japan", value: "JP" }, { key: "KENYA", name: "Kenya", value: "KE" }, { key: "KYRGYZSTAN", name: "Kyrgyzstan", value: "KG" }, { key: "CAMBODIA", name: "Cambodia", value: "KH" }, { key: "KIRIBATI", name: "Kiribati", value: "KI" }, { key: "COMOROS_THE", name: "Comoros (the)", value: "KM" }, { key: "SAINT_KITTS_AND_NEVIS", name: "Saint Kitts and Nevis", value: "KN" }, { key: "KOREA_THE_DEMOCRATIC_PEOPLES_REPUBLIC_OF", name: "Korea (the Democratic People's Republic of)", value: "KP" }, { key: "KOREA_THE_REPUBLIC_OF", name: "Korea (the Republic of)", value: "KR" }, { key: "KUWAIT", name: "Kuwait", value: "KW" }, { key: "CAYMAN_ISLANDS_THE", name: "Cayman Islands (the)", value: "KY" }, { key: "KAZAKHSTAN", name: "Kazakhstan", value: "KZ" }, { key: "LAO_PEOPLES_DEMOCRATIC_REPUBLIC_THE", name: "Lao People's Democratic Republic (the)", value: "LA" }, { key: "LEBANON", name: "Lebanon", value: "LB" }, { key: "SAINT_LUCIA", name: "Saint Lucia", value: "LC" }, { key: "LIECHTENSTEIN", name: "Liechtenstein", value: "LI" }, { key: "SRI_LANKA", name: "Sri Lanka", value: "LK" }, { key: "LIBERIA", name: "Liberia", value: "LR" }, { key: "LESOTHO", name: "Lesotho", value: "LS" }, { key: "LITHUANIA", name: "Lithuania", value: "LT" }, { key: "LUXEMBOURG", name: "Luxembourg", value: "LU" }, { key: "LATVIA", name: "Latvia", value: "LV" }, { key: "LIBYA", name: "Libya", value: "LY" }, { key: "MOROCCO", name: "Morocco", value: "MA" }, { key: "MONACO", name: "Monaco", value: "MC" }, { key: "MOLDOVA_THE_REPUBLIC_OF", name: "Moldova (the Republic of)", value: "MD" }, { key: "MONTENEGRO", name: "Montenegro", value: "ME" }, { key: "SAINT_MARTIN_FRENCH_PART", name: "Saint Martin (French part)", value: "MF" }, { key: "MADAGASCAR", name: "Madagascar", value: "MG" }, { key: "MARSHALL_ISLANDS_THE", name: "Marshall Islands (the)", value: "MH" }, { key: "NORTH_MACEDONIA", name: "North Macedonia", value: "MK" }, { key: "MALI", name: "Mali", value: "ML" }, { key: "MYANMAR", name: "Myanmar", value: "MM" }, { key: "MONGOLIA", name: "Mongolia", value: "MN" }, { key: "MACAO", name: "Macao", value: "MO" }, { key: "NORTHERN_MARIANA_ISLANDS_THE", name: "Northern Mariana Islands (the)", value: "MP" }, { key: "MARTINIQUE", name: "Martinique", value: "MQ" }, { key: "MAURITANIA", name: "Mauritania", value: "MR" }, { key: "MONTSERRAT", name: "Montserrat", value: "MS" }, { key: "MALTA", name: "Malta", value: "MT" }, { key: "MAURITIUS", name: "Mauritius", value: "MU" }, { key: "MALDIVES", name: "Maldives", value: "MV" }, { key: "MALAWI", name: "Malawi", value: "MW" }, { key: "MEXICO", name: "Mexico", value: "MX" }, { key: "MALAYSIA", name: "Malaysia", value: "MY" }, { key: "MOZAMBIQUE", name: "Mozambique", value: "MZ" }, { key: "NAMIBIA", name: "Namibia", value: "NA" }, { key: "NEW_CALEDONIA", name: "New Caledonia", value: "NC" }, { key: "NIGER_THE", name: "Niger (the)", value: "NE" }, { key: "NORFOLK_ISLAND", name: "Norfolk Island", value: "NF" }, { key: "NIGERIA", name: "Nigeria", value: "NG" }, { key: "NICARAGUA", name: "Nicaragua", value: "NI" }, { key: "NETHERLANDS_THE", name: "Netherlands (the)", value: "NL" }, { key: "NORWAY", name: "Norway", value: "NO" }, { key: "NEPAL", name: "Nepal", value: "NP" }, { key: "NAURU", name: "Nauru", value: "NR" }, { key: "NIUE", name: "Niue", value: "NU" }, { key: "NEW_ZEALAND", name: "New Zealand", value: "NZ" }, { key: "OMAN", name: "Oman", value: "OM" }, { key: "PANAMA", name: "Panama", value: "PA" }, { key: "PERU", name: "Peru", value: "PE" }, { key: "FRENCH_POLYNESIA", name: "French Polynesia", value: "PF" }, { key: "PAPUA_NEW_GUINEA", name: "Papua New Guinea", value: "PG" }, { key: "PHILIPPINES_THE", name: "Philippines (the)", value: "PH" }, { key: "PAKISTAN", name: "Pakistan", value: "PK" }, { key: "POLAND", name: "Poland", value: "PL" }, { key: "SAINT_PIERRE_AND_MIQUELON", name: "Saint Pierre and Miquelon", value: "PM" }, { key: "PITCAIRN", name: "Pitcairn", value: "PN" }, { key: "PUERTO_RICO", name: "Puerto Rico", value: "PR" }, { key: "PALESTINE_STATE_OF", name: "Palestine, State of", value: "PS" }, { key: "PORTUGAL", name: "Portugal", value: "PT" }, { key: "PALAU", name: "Palau", value: "PW" }, { key: "PARAGUAY", name: "Paraguay", value: "PY" }, { key: "QATAR", name: "Qatar", value: "QA" }, { key: "REUNION", name: "R\xE9union", value: "RE" }, { key: "ROMANIA", name: "Romania", value: "RO" }, { key: "SERBIA", name: "Serbia", value: "RS" }, { key: "RUSSIAN_FEDERATION_THE", name: "Russian Federation (the)", value: "RU" }, { key: "RWANDA", name: "Rwanda", value: "RW" }, { key: "SAUDI_ARABIA", name: "Saudi Arabia", value: "SA" }, { key: "SOLOMON_ISLANDS", name: "Solomon Islands", value: "SB" }, { key: "SEYCHELLES", name: "Seychelles", value: "SC" }, { key: "SUDAN_THE", name: "Sudan (the)", value: "SD" }, { key: "SWEDEN", name: "Sweden", value: "SE" }, { key: "SINGAPORE", name: "Singapore", value: "SG" }, { key: "SAINT_HELENA_ASCENSION_AND_TRISTAN_DA_CUNHA", name: "Saint Helena, Ascension and Tristan da Cunha", value: "SH" }, { key: "SLOVENIA", name: "Slovenia", value: "SI" }, { key: "SVALBARD_AND_JAN_MAYEN", name: "Svalbard and Jan Mayen", value: "SJ" }, { key: "SLOVAKIA", name: "Slovakia", value: "SK" }, { key: "SIERRA_LEONE", name: "Sierra Leone", value: "SL" }, { key: "SAN_MARINO", name: "San Marino", value: "SM" }, { key: "SENEGAL", name: "Senegal", value: "SN" }, { key: "SOMALIA", name: "Somalia", value: "SO" }, { key: "SURINAME", name: "Suriname", value: "SR" }, { key: "SOUTH_SUDAN", name: "South Sudan", value: "SS" }, { key: "SAO_TOME_AND_PRINCIPE", name: "Sao Tome and Principe", value: "ST" }, { key: "EL_SALVADOR", name: "El Salvador", value: "SV" }, { key: "SINT_MAARTEN_DUTCH_PART", name: "Sint Maarten (Dutch part)", value: "SX" }, { key: "SYRIAN_ARAB_REPUBLIC_THE", name: "Syrian Arab Republic (the)", value: "SY" }, { key: "ESWATINI", name: "Eswatini", value: "SZ" }, { key: "TURKS_AND_CAICOS_ISLANDS_THE", name: "Turks and Caicos Islands (the)", value: "TC" }, { key: "CHAD", name: "Chad", value: "TD" }, { key: "FRENCH_SOUTHERN_TERRITORIES_THE", name: "French Southern Territories (the)", value: "TF" }, { key: "TOGO", name: "Togo", value: "TG" }, { key: "THAILAND", name: "Thailand", value: "TH" }, { key: "TAJIKISTAN", name: "Tajikistan", value: "TJ" }, { key: "TOKELAU", name: "Tokelau", value: "TK" }, { key: "TIMOR_LESTE", name: "Timor-Leste", value: "TL" }, { key: "TURKMENISTAN", name: "Turkmenistan", value: "TM" }, { key: "TUNISIA", name: "Tunisia", value: "TN" }, { key: "TONGA", name: "Tonga", value: "TO" }, { key: "TURKIYE", name: "T\xFCrkiye", value: "TR" }, { key: "TRINIDAD_AND_TOBAGO", name: "Trinidad and Tobago", value: "TT" }, { key: "TUVALU", name: "Tuvalu", value: "TV" }, { key: "TAIWAN_PROVINCE_OF_CHINA", name: "Taiwan (Province of China)", value: "TW" }, { key: "TANZANIA_THE_UNITED_REPUBLIC_OF", name: "Tanzania, the United Republic of", value: "TZ" }, { key: "UKRAINE", name: "Ukraine", value: "UA" }, { key: "UGANDA", name: "Uganda", value: "UG" }, { key: "UNITED_STATES_MINOR_OUTLYING_ISLANDS_THE", name: "United States Minor Outlying Islands (the)", value: "UM" }, { key: "UNITED_STATES_OF_AMERICA_THE", name: "United States of America (the)", value: "US" }, { key: "URUGUAY", name: "Uruguay", value: "UY" }, { key: "UZBEKISTAN", name: "Uzbekistan", value: "UZ" }, { key: "HOLY_SEE_THE", name: "Holy See (the)", value: "VA" }, { key: "SAINT_VINCENT_AND_THE_GRENADINES", name: "Saint Vincent and the Grenadines", value: "VC" }, { key: "VENEZUELA_BOLIVARIAN_REPUBLIC_OF", name: "Venezuela (Bolivarian Republic of)", value: "VE" }, { key: "VIRGIN_ISLANDS_BRITISH", name: "Virgin Islands (British)", value: "VG" }, { key: "VIRGIN_ISLANDS_US", name: "Virgin Islands (U.S.)", value: "VI" }, { key: "VIET_NAM", name: "Viet Nam", value: "VN" }, { key: "VANUATU", name: "Vanuatu", value: "VU" }, { key: "WALLIS_AND_FUTUNA", name: "Wallis and Futuna", value: "WF" }, { key: "SAMOA", name: "Samoa", value: "WS" }, { key: "YEMEN", name: "Yemen", value: "YE" }, { key: "MAYOTTE", name: "Mayotte", value: "YT" }, { key: "SOUTH_AFRICA", name: "South Africa", value: "ZA" }, { key: "ZAMBIA", name: "Zambia", value: "ZM" }, { key: "ZIMBABWE", name: "Zimbabwe", value: "ZW" }, { key: "KOSOVO", name: "Kosovo", value: "1A" }, { key: "UNITED_KINGDOM_NORTHERN_IRELAND", name: "United Kingdom (Northern Ireland)", value: "XI" } ]; var countryCode = COUNTRY.map(({ value }) => value); var Country = createEnum(COUNTRY, { keyProp: "key", valueProp: "value" }); // src/codelists/currency.gen.ts 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" }); // src/codelists/icd.gen.ts var ICD = [ { key: "SYSTEM_INFORMATION_ET_REPERTOIRE_DES_ENTREPRISE_ET_DES_ETABLISSEMENTS_SIRENE", name: "System Information et Repertoire des Entreprise et des Etablissements: SIRENE", value: "0002" }, { key: "CODIFICATION_NUMERIQUE_DES_ETABLISSMENTS_FINANCIERS_EN_BELGIQUE", name: "Codification Numerique des Etablissments Financiers En Belgique", value: "0003" }, { key: "NBSOSI_NETWORK", name: "NBS/OSI NETWORK", value: "0004" }, { key: "USA_FED_GOV_OSI_NETWORK", name: "USA FED GOV OSI NETWORK", value: "0005" }, { key: "USA_DOD_OSI_NETWORK", name: "USA DOD OSI NETWORK", value: "0006" }, { key: "ORGANISATIONSNUMMER", name: "Organisationsnummer", value: "0007" }, { key: "LE_NUMERO_NATIONAL", name: "LE NUMERO NATIONAL", value: "0008" }, { key: "SIRET_CODE", name: "SIRET-CODE", value: "0009" }, { key: "ORGANIZATIONAL_IDENTIFIERS_FOR_STRUCTURED_NAMES_UNDER_ISO_9541_PART_2", name: "Organizational Identifiers for Structured Names under ISO 9541 Part 2", value: "0010" }, { key: "INTERNATIONAL_CODE_DESIGNATOR_FOR_THE_IDENTIFICATION_OF_OSI_BASED_AMATEUR_RADIO_ORGANIZATIONS_NETWORK_OBJECTS_AND_APPLICATION_SERVICES", name: "International Code Designator for the Identification of OSI-based, Amateur Radio Organizations, Network Objects and Application Services.", value: "0011" }, { key: "EUROPEAN_COMPUTER_MANUFACTURERS_ASSOCIATION_ECMA", name: "European Computer Manufacturers Association: ECMA", value: "0012" }, { key: "VSA_FTP_CODE_FTP__FILE_TRANSFER_PROTOCOL", name: "VSA FTP CODE (FTP = File Transfer Protocol)", value: "0013" }, { key: "NISTOSI_IMPLEMEMTS_WORKSHOP", name: "NIST/OSI Implememts' Workshop", value: "0014" }, { key: "ELECTRONIC_DATA_INTERCHANGE_EDI", name: "Electronic Data Interchange: EDI", value: "0015" }, { key: "EWOS_OBJECT_IDENTIFIERS", name: "EWOS Object Identifiers", value: "0016" }, { key: "COMMON_LANGUAGE", name: "COMMON LANGUAGE", value: "0017" }, { key: "SNAOSI_NETWORK", name: "SNA/OSI Network", value: "0018" }, { key: "AIR_TRANSPORT_INDUSTRY_SERVICES_COMMUNICATIONS_NETWORK", name: "Air Transport Industry Services Communications Network", value: "0019" }, { key: "EUROPEAN_LABORATORY_FOR_PARTICLE_PHYSICS_CERN", name: "European Laboratory for Particle Physics: CERN", value: "0020" }, { key: "SOCIETY_FOR_WORLDWIDE_INTERBANK_FINANCIAL_TELECOMMUNICATION_SWIFT", name: "SOCIETY FOR WORLDWIDE INTERBANK FINANCIAL, TELECOMMUNICATION S.W.I.F.T.", value: "0021" }, { key: "OSF_DISTRIBUTED_COMPUTING_OBJECT_IDENTIFICATION", name: "OSF Distributed Computing Object Identification", value: "0022" }, { key: "NORDIC_UNIVERSITY_AND_RESEARCH_NETWORK_NORDUNET", name: "Nordic University and Research Network: NORDUnet", value: "0023" }, { key: "DIGITAL_EQUIPMENT_CORPORATION_DEC", name: "Digital Equipment Corporation: DEC", value: "0024" }, { key: "OSI_ASIA_OCEANIA_WORKSHOP", name: "OSI ASIA-OCEANIA WORKSHOP", value: "0025" }, { key: "NATO_ISO_6523_ICDE_CODING_SCHEME", name: "NATO ISO 6523 ICDE coding scheme", value: "0026" }, { key: "AERONAUTICAL_TELECOMMUNICATIONS_NETWORK_ATN", name: "Aeronautical Telecommunications Network (ATN)", value: "0027" }, { key: "INTERNATIONAL_STANDARD_ISO_6523", name: "International Standard ISO 6523", value: "0028" }, { key: "THE_ALL_UNION_CLASSIFIER_OF_ENTERPRISES_AND_ORGANISATIONS", name: "The All-Union Classifier of Enterprises and Organisations", value: "0029" }, { key: "ATTOSI_NETWORK", name: "AT&T/OSI Network", value: "0030" }, { key: "EDI_PARTNER_IDENTIFICATION_CODE", name: "EDI Partner Identification Code", value: "0031" }, { key: "TELECOM_AUSTRALIA", name: "Telecom Australia", value: "0032" }, { key: "S_G_W_OSI_INTERNETWORK", name: "S G W OSI Internetwork", value: "0033" }, { key: "REUTER_OPEN_ADDRESS_STANDARD", name: "Reuter Open Address Standard", value: "0034" }, { key: "ISO_6523_ICD", name: "ISO 6523 - ICD", value: "0035" }, { key: "TELE_TRUST_OBJECT_IDENTIFIERS", name: "TeleTrust Object Identifiers", value: "0036" }, { key: "LY_TUNNUS", name: "LY-tunnus", value: "0037" }, { key: "THE_AUSTRALIAN_GOSIP_NETWORK", name: "The Australian GOSIP Network", value: "0038" }, { key: "THE_OZ_DOD_OSI_NETWORK", name: "The OZ DOD OSI Network", value: "0039" }, { key: "UNILEVER_GROUP_COMPANIES", name: "Unilever Group Companies", value: "0040" }, { key: "CITICORP_GLOBAL_INFORMATION_NETWORK", name: "Citicorp Global Information Network", value: "0041" }, { key: "DBP_TELEKOM_OBJECT_IDENTIFIERS", name: "DBP Telekom Object Identifiers", value: "0042" }, { key: "HYDRO_NETT", name: "HydroNETT", value: "0043" }, { key: "THAI_INDUSTRIAL_STANDARDS_INSTITUTE_TISI", name: "Thai Industrial Standards Institute (TISI)", value: "0044" }, { key: "ICI_COMPANY_IDENTIFICATION_SYSTEM", name: "ICI Company Identification System", value: "0045" }, { key: "FUNLOC", name: "FUNLOC", value: "0046" }, { key: "BULL_ODIDSAUNIX_NETWORK", name: "BULL ODI/DSA/UNIX Network", value: "0047" }, { key: "OSINZ", name: "OSINZ", value: "0048" }, { key: "AUCKLAND_AREA_HEALTH", name: "Auckland Area Health", value: "0049" }, { key: "FIRMENICH", name: "Firmenich", value: "0050" }, { key: "AGFA_DIS", name: "AGFA-DIS", value: "0051" }, { key: "SOCIETY_OF_MOTION_PICTURE_AND_TELEVISION_ENGINEERS_SMPTE", name: "Society of Motion Picture and Television Engineers (SMPTE)", value: "0052" }, { key: "MIGROS_NETWORK_M_NETOPZ", name: "Migros_Network M_NETOPZ", value: "0053" }, { key: "ISO6523_ICDPCR", name: "ISO6523 - ICDPCR", value: "0054" }, { key: "ENERGY_NET", name: "Energy Net", value: "0055" }, { key: "NOKIA_OBJECT_IDENTIFIERS_NOI", name: "Nokia Object Identifiers (NOI)", value: "0056" }, { key: "SAINT_GOBAIN", name: "Saint Gobain", value: "0057" }, { key: "SIEMENS_CORPORATE_NETWORK", name: "Siemens Corporate Network", value: "0058" }, { key: "DANZNET", name: "DANZNET", value: "0059" }, { key: "DATA_UNIVERSAL_NUMBERING_SYSTEM_D_U_N_S_NUMBER", name: "Data Universal Numbering System (D-U-N-S Number)", value: "0060" }, { key: "SOFFEX_OSI", name: "SOFFEX OSI", value: "0061" }, { key: "KPN_OVN", name: "KPN OVN", value: "0062" }, { key: "ASCOM_OSINET", name: "ascomOSINet", value: "0063" }, { key: "UTC_UNIFORME_TRANSPORT_CODE", name: "UTC: Uniforme Transport Code", value: "0064" }, { key: "SOLVAY_OSI_CODING", name: "SOLVAY OSI CODING", value: "0065" }, { key: "ROCHE_CORPORATE_NETWORK", name: "Roche Corporate Network", value: "0066" }, { key: "ZELLWEGER_OSINET", name: "ZellwegerOSINet", value: "0067" }, { key: "INTEL_CORPORATION_OSI", name: "Intel Corporation OSI", value: "0068" }, { key: "SITA_OBJECT_IDENTIFIER_TREE", name: "SITA Object Identifier Tree", value: "0069" }, { key: "DAIMLER_CHRYSLER_CORPORATE_NETWORK", name: "DaimlerChrysler Corporate Network", value: "0070" }, { key: "LEGO_OSI_NETWORK", name: "LEGO /OSI NETWORK", value: "0071" }, { key: "NAVISTAROSI_NETWORK", name: "NAVISTAR/OSI Network", value: "0072" }, { key: "ICD_FORMATTED_ATM_ADDRESS", name: "ICD Formatted ATM address", value: "0073" }, { key: "ARINC", name: "ARINC", value: "0074" }, { key: "ALCANETALCATEL_ALSTHOM_CORPORATE_NETWORK", name: "Alcanet/Alcatel-Alsthom Corporate Network", value: "0075" }, { key: "SISTEMA_ITALIANO_DI_IDENTIFICAZIONE_DI_OGETTI_GESTITO_DA_UNINFO", name: "Sistema Italiano di Identificazione di ogetti gestito da UNINFO", value: "0076" }, { key: "SISTEMA_ITALIANO_DI_INDIRIZZAMENTO_DI_RETI_OSI_GESTITO_DA_UNINFO", name: "Sistema Italiano di Indirizzamento di Reti OSI Gestito da UNINFO", value: "0077" }, { key: "MITEL_TERMINAL_OR_SWITCHING_EQUIPMENT", name: "Mitel terminal or switching equipment", value: "0078" }, { key: "ATM_FORUM", name: "ATM Forum", value: "0079" }, { key: "UK_NATIONAL_HEALTH_SERVICE_SCHEME_EDIRA_COMPLIANT", name: "UK National Health Service Scheme, (EDIRA compliant)", value: "0080" }, { key: "INTERNATIONAL_NSAP", name: "International NSAP", value: "0081" }, { key: "NORWEGIAN_TELECOMMUNICATIONS_AUTHORITYS_NTAS_EDI_IDENTIFIER_SCHEME_EDIRA_COMPLIANT", name: "Norwegian Telecommunications Authority's, NTA'S, EDI, identifier scheme (EDIRA compliant)", value: "0082" }, { key: "ADVANCED_TELECOMMUNICATIONS_MODULES_LIMITED_CORPORATE_NETWORK", name: "Advanced Telecommunications Modules Limited, Corporate Network", value: "0083" }, { key: "ATHENS_CHAMBER_OF_COMMERCE__INDUSTRY_SCHEME_EDIRA_COMPLIANT", name: "Athens Chamber of Commerce & Industry Scheme (EDIRA compliant)", value: "0084" }, { key: "SWISS_CHAMBERS_OF_COMMERCE_SCHEME_EDIRA_COMPLIANT", name: "Swiss Chambers of Commerce Scheme (EDIRA) compliant", value: "0085" }, { key: "UNITED_STATES_COUNCIL_FOR_INTERNATIONAL_BUSINESS_USCIB_SCHEME_EDIRA_COMPLIANT", name: "United States Council for International Business (USCIB) Scheme, (EDIRA compliant)", value: "0086" }, { key: "NATIONAL_FEDERATION_OF_CHAMBERS_OF_COMMERCE__INDUSTRY_OF_BELGIUM_SCHEME_EDIRA_COMPLIANT", name: "National Federation of Chambers of Commerce & Industry of Belgium, Scheme (EDIRA compliant)", value: "0087" }, { key: "EAN_LOCATION_CODE", name: "EAN Location Code", value: "0088" }, { key: "THE_ASSOCIATION_OF_BRITISH_CHAMBERS_OF_COMMERCE_LTD_SCHEME_EDIRA_COMPLIANT", name: "The Association of British Chambers of Commerce Ltd. Scheme, (EDIRA compliant)", value: "0089" }, { key: "INTERNET_IP_ADDRESSING_ISO_6523_ICD_ENCODING", name: "Internet IP addressing - ISO 6523 ICD encoding", value: "0090" }, { key: "CISCO_SYSYTEMS__OSI_NETWORK", name: "Cisco Sysytems / OSI Network", value: "0091" }, { key: "REVENUE_CANADA_BUSINESS_NUMBER_REGISTRATION_EDIRA_COMPLIANT", name: "Revenue Canada Business Number Registration (EDIRA compliant)", value: "0093" }, { key: "DEUTSCHER_INDUSTRIE_UND_HANDELSTAG_DIHT_SCHEME_EDIRA_COMPLIANT", name: "DEUTSCHER INDUSTRIE- UND HANDELSTAG (DIHT) Scheme (EDIRA compliant)", value: "0094" }, { key: "HEWLETT_PACKARD_COMPANY_INTERNAL_AM_NETWORK", name: "Hewlett - Packard Company Internal AM Network", value: "0095" }, { key: "DANISH_CHAMBER_OF_COMMERCE_SCHEME_EDIRA_COMPLIANT", name: "DANISH CHAMBER OF COMMERCE Scheme (EDIRA compliant)", value: "0096" }, { key: "FTI_EDIFORUM_ITALIA_EDIRA_COMPLIANT", name: "FTI - Ediforum Italia, (EDIRA compliant)", value: "0097" }, { key: "CHAMBER_OF_COMMERCE_TEL_AVIV_JAFFA_SCHEME_EDIRA_COMPLIANT", name: "CHAMBER OF COMMERCE TEL AVIV-JAFFA Scheme (EDIRA compliant)", value: "0098" }, { key: "SIEMENS_SUPERVISORY_SYSTEMS_NETWORK", name: "Siemens Supervisory Systems Network", value: "0099" }, { key: "PNG_ICD_SCHEME", name: "PNG_ICD Scheme", value: "0100" }, { key: "SOUTH_AFRICAN_CODE_ALLOCATION", name: "South African Code Allocation", value: "0101" }, { key: "HEAG", name: "HEAG", value: "0102" }, { key: "BT_ICD_CODING_SYSTEM", name: "BT - ICD Coding System", value: "0104" }, { key: "PORTUGUESE_CHAMBER_OF_COMMERCE_AND_INDUSTRY_SCHEME_EDIRA_COMPLIANT", name: "Portuguese Chamber of Commerce and Industry Scheme (EDIRA compliant)", value: "0105" }, { key: "VERENIGING_VAN_KAMERS_VAN_KOOPHANDEL_EN_FABRIEKEN_IN_NEDERLAND_ASSOCIATION_OF_CHAMBERS_OF_COMMERCE_AND_INDUSTRY_IN_THE_NETHERLANDS_SCHEME_EDIRA_COMPLIANT", name: "Vereniging van Kamers van Koophandel en Fabrieken in Nederland (Association of Chambers of Commerce and Industry in the Netherlands), Scheme (EDIRA compliant)", value: "0106" }, { key: "ASSOCIATION_OF_SWEDISH_CHAMBERS_OF_COMMERCE_AND_INDUSTRY_SCHEME_EDIRA_COMPLIANT", name: "Association of Swedish Chambers of Commerce and Industry Scheme (EDIRA compliant)", value: "0107" }, { key: "AUSTRALIAN_CHAMBERS_OF_COMMERCE_AND_INDUSTRY_SCHEME_EDIRA_COMPLIANT", name: "Australian Chambers of Commerce and Industry Scheme (EDIRA compliant)", value: "0108" }, { key: "BELL_SOUTH_ICD_AESA_ATM_END_SYSTEM_ADDRESS", name: "BellSouth ICD AESA (ATM End System Address)", value: "0109" }, { key: "BELL_ATLANTIC", name: "Bell Atlantic", value: "0110" }, { key: "OBJECT_IDENTIFIERS", name: "Object Identifiers", value: "0111" }, { key: "ISO_REGISTER_FOR_STANDARDS_PRODUCING_ORGANIZATIONS", name: "ISO register for Standards producing Organizations", value: "0112" }, { key: "ORIGIN_NET", name: "OriginNet", value: "0113" }, { key: "CHECK_POINT_SOFTWARE_TECHNOLOGIES", name: "Check Point Software Technologies", value: "0114" }, { key: "PACIFIC_BELL_DATA_COMMUNICATIONS_NETWORK", name: "Pacific Bell Data Communications Network", value: "0115" }, { key: "PSS_OBJECT_IDENTIFIERS", name: "PSS Object Identifiers", value: "0116" }, { key: "STENTOR_ICD_CODING_SYSTEM", name: "STENTOR-ICD CODING SYSTEM", value: "0117" }, { key: "ATM_NETWORK_ZN96", name: "ATM-Network ZN'96", value: "0118" }, { key: "MCI__OSI_NETWORK", name: "MCI / OSI Network", value: "0119" },