@budiauktioner/buildi-primitives 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BREAKING_CHANGES.md +81 -0
- package/CHANGELOG.md +58 -1
- package/PARITY.md +202 -0
- package/README.md +58 -9
- package/dist/cjs/banking/bank-resolver.js +378 -0
- package/dist/cjs/banking/bank-resolver.js.map +7 -0
- package/dist/cjs/banking/bic.js +189 -0
- package/dist/cjs/banking/bic.js.map +7 -0
- package/dist/cjs/banking/iban.js +314 -0
- package/dist/cjs/banking/iban.js.map +7 -0
- package/dist/cjs/banking/index.js +60 -0
- package/dist/cjs/banking/index.js.map +7 -0
- package/dist/cjs/banking/swedish-bank-account-holder-name.js +124 -0
- package/dist/cjs/banking/swedish-bank-account-holder-name.js.map +7 -0
- package/dist/cjs/banking/swedish-bank-account.js +211 -0
- package/dist/cjs/banking/swedish-bank-account.js.map +7 -0
- package/dist/cjs/banking/swedish-bank-clearing-number.js +156 -0
- package/dist/cjs/banking/swedish-bank-clearing-number.js.map +7 -0
- package/dist/cjs/banking/swedish-bank.js +89 -0
- package/dist/cjs/banking/swedish-bank.js.map +7 -0
- package/dist/cjs/banking/swedish-bankgiro-number.js +176 -0
- package/dist/cjs/banking/swedish-bankgiro-number.js.map +7 -0
- package/dist/cjs/banking/swedish-banking-number.js +201 -0
- package/dist/cjs/banking/swedish-banking-number.js.map +7 -0
- package/dist/cjs/banking/swedish-ocr-reference-number.js +215 -0
- package/dist/cjs/banking/swedish-ocr-reference-number.js.map +7 -0
- package/dist/cjs/banking/swedish-postgiro-number.js +173 -0
- package/dist/cjs/banking/swedish-postgiro-number.js.map +7 -0
- package/dist/cjs/banking/swedish-swish-number.js +165 -0
- package/dist/cjs/banking/swedish-swish-number.js.map +7 -0
- package/dist/cjs/contact/address-city.js +104 -0
- package/dist/cjs/contact/address-city.js.map +7 -0
- package/dist/cjs/contact/address-street.js +220 -0
- package/dist/cjs/contact/address-street.js.map +7 -0
- package/dist/cjs/contact/address-zip-code.js +195 -0
- package/dist/cjs/contact/address-zip-code.js.map +7 -0
- package/dist/cjs/contact/address.js +405 -0
- package/dist/cjs/contact/address.js.map +7 -0
- package/dist/cjs/contact/contact-address.js +142 -0
- package/dist/cjs/contact/contact-address.js.map +7 -0
- package/dist/cjs/contact/contact-external-links.js +39 -0
- package/dist/cjs/contact/contact-external-links.js.map +7 -0
- package/dist/cjs/contact/contact-lookup.js +31 -0
- package/dist/cjs/contact/contact-lookup.js.map +7 -0
- package/dist/cjs/contact/contact-masking.js +117 -0
- package/dist/cjs/contact/contact-masking.js.map +7 -0
- package/dist/cjs/contact/country-address-factory.js +97 -0
- package/dist/cjs/contact/country-address-factory.js.map +7 -0
- package/dist/cjs/contact/country-address-registry.js +36 -0
- package/dist/cjs/contact/country-address-registry.js.map +7 -0
- package/dist/cjs/contact/country-address.js +98 -0
- package/dist/cjs/contact/country-address.js.map +7 -0
- package/dist/cjs/contact/country-addresses.js +346 -0
- package/dist/cjs/contact/country-addresses.js.map +7 -0
- package/dist/cjs/contact/country-zip-code-factory.js +117 -0
- package/dist/cjs/contact/country-zip-code-factory.js.map +7 -0
- package/dist/cjs/contact/country-zip-codes.js +376 -0
- package/dist/cjs/contact/country-zip-codes.js.map +7 -0
- package/dist/cjs/contact/index.js +72 -0
- package/dist/cjs/contact/index.js.map +7 -0
- package/dist/cjs/contact/phone-calling-code.js +439 -0
- package/dist/cjs/contact/phone-calling-code.js.map +7 -0
- package/dist/cjs/contact/phone-number-test-data.js +63 -0
- package/dist/cjs/contact/phone-number-test-data.js.map +7 -0
- package/dist/cjs/contact/phone-number.js +325 -0
- package/dist/cjs/contact/phone-number.js.map +7 -0
- package/dist/cjs/contact/register-default-country-addresses.js +88 -0
- package/dist/cjs/contact/register-default-country-addresses.js.map +7 -0
- package/dist/cjs/contact/swedish-address-zip-code.js +92 -0
- package/dist/cjs/contact/swedish-address-zip-code.js.map +7 -0
- package/dist/cjs/contact/swedish-address.js +169 -0
- package/dist/cjs/contact/swedish-address.js.map +7 -0
- package/dist/cjs/finance/currency.js +251 -0
- package/dist/cjs/finance/currency.js.map +7 -0
- package/dist/cjs/finance/exchange-rates.js +51 -0
- package/dist/cjs/finance/exchange-rates.js.map +7 -0
- package/dist/cjs/finance/index.js +34 -0
- package/dist/cjs/finance/index.js.map +7 -0
- package/dist/cjs/finance/isin.js +161 -0
- package/dist/cjs/finance/isin.js.map +7 -0
- package/dist/cjs/finance/money-amount.js +307 -0
- package/dist/cjs/finance/money-amount.js.map +7 -0
- package/dist/cjs/geography/adjacency-data.js +335 -0
- package/dist/cjs/geography/adjacency-data.js.map +7 -0
- package/dist/cjs/geography/continent.js +125 -0
- package/dist/cjs/geography/continent.js.map +7 -0
- package/dist/cjs/geography/country-capital.js +45 -0
- package/dist/cjs/geography/country-capital.js.map +7 -0
- package/dist/cjs/geography/country-capitals.js +288 -0
- package/dist/cjs/geography/country-capitals.js.map +7 -0
- package/dist/cjs/geography/country-coordinates.js +238 -0
- package/dist/cjs/geography/country-coordinates.js.map +7 -0
- package/dist/cjs/geography/country-data.js +530 -0
- package/dist/cjs/geography/country-data.js.map +7 -0
- package/dist/cjs/geography/country-metadata.js +627 -0
- package/dist/cjs/geography/country-metadata.js.map +7 -0
- package/dist/cjs/geography/country.js +427 -0
- package/dist/cjs/geography/country.js.map +7 -0
- package/dist/cjs/geography/geo-coordinate.js +244 -0
- package/dist/cjs/geography/geo-coordinate.js.map +7 -0
- package/dist/cjs/geography/geography-extensions.js +82 -0
- package/dist/cjs/geography/geography-extensions.js.map +7 -0
- package/dist/cjs/geography/geography-external-links.js +52 -0
- package/dist/cjs/geography/geography-external-links.js.map +7 -0
- package/dist/cjs/geography/geography-lookup.js +31 -0
- package/dist/cjs/geography/geography-lookup.js.map +7 -0
- package/dist/cjs/geography/geography-masking.js +54 -0
- package/dist/cjs/geography/geography-masking.js.map +7 -0
- package/dist/cjs/geography/index.js +57 -0
- package/dist/cjs/geography/index.js.map +7 -0
- package/dist/cjs/geography/language.js +462 -0
- package/dist/cjs/geography/language.js.map +7 -0
- package/dist/cjs/geography/swedish-county.js +232 -0
- package/dist/cjs/geography/swedish-county.js.map +7 -0
- package/dist/cjs/geography/swedish-municipality-data.js +316 -0
- package/dist/cjs/geography/swedish-municipality-data.js.map +7 -0
- package/dist/cjs/geography/swedish-municipality.js +218 -0
- package/dist/cjs/geography/swedish-municipality.js.map +7 -0
- package/dist/cjs/index.js +33 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/internal/case-folding.js +32 -0
- package/dist/cjs/internal/case-folding.js.map +7 -0
- package/dist/cjs/internal/clock.js +32 -0
- package/dist/cjs/internal/clock.js.map +7 -0
- package/dist/cjs/internal/decimal.js +262 -0
- package/dist/cjs/internal/decimal.js.map +7 -0
- package/dist/cjs/internal/gs1-prefix.js +164 -0
- package/dist/cjs/internal/gs1-prefix.js.map +7 -0
- package/dist/cjs/internal/gtin-check-digit.js +46 -0
- package/dist/cjs/internal/gtin-check-digit.js.map +7 -0
- package/dist/cjs/internal/input-sanitization.js +79 -0
- package/dist/cjs/internal/input-sanitization.js.map +7 -0
- package/dist/cjs/internal/luhn.js +40 -0
- package/dist/cjs/internal/luhn.js.map +7 -0
- package/dist/cjs/internal/measurement-unit-parser.js +86 -0
- package/dist/cjs/internal/measurement-unit-parser.js.map +7 -0
- package/dist/cjs/internal/measurement-unit.js +130 -0
- package/dist/cjs/internal/measurement-unit.js.map +7 -0
- package/dist/cjs/internal/quantity.js +122 -0
- package/dist/cjs/internal/quantity.js.map +7 -0
- package/dist/cjs/internal/shoe-size-format.js +31 -0
- package/dist/cjs/internal/shoe-size-format.js.map +7 -0
- package/dist/cjs/measurement/area-unit.js +158 -0
- package/dist/cjs/measurement/area-unit.js.map +7 -0
- package/dist/cjs/measurement/area.js +183 -0
- package/dist/cjs/measurement/area.js.map +7 -0
- package/dist/cjs/measurement/count.js +132 -0
- package/dist/cjs/measurement/count.js.map +7 -0
- package/dist/cjs/measurement/data-size-unit.js +208 -0
- package/dist/cjs/measurement/data-size-unit.js.map +7 -0
- package/dist/cjs/measurement/data-size.js +207 -0
- package/dist/cjs/measurement/data-size.js.map +7 -0
- package/dist/cjs/measurement/electric-charge-unit.js +109 -0
- package/dist/cjs/measurement/electric-charge-unit.js.map +7 -0
- package/dist/cjs/measurement/electric-charge.js +148 -0
- package/dist/cjs/measurement/electric-charge.js.map +7 -0
- package/dist/cjs/measurement/electric-current-unit.js +108 -0
- package/dist/cjs/measurement/electric-current-unit.js.map +7 -0
- package/dist/cjs/measurement/electric-current.js +154 -0
- package/dist/cjs/measurement/electric-current.js.map +7 -0
- package/dist/cjs/measurement/energy-unit.js +201 -0
- package/dist/cjs/measurement/energy-unit.js.map +7 -0
- package/dist/cjs/measurement/energy.js +207 -0
- package/dist/cjs/measurement/energy.js.map +7 -0
- package/dist/cjs/measurement/flow-rate-unit.js +132 -0
- package/dist/cjs/measurement/flow-rate-unit.js.map +7 -0
- package/dist/cjs/measurement/flow-rate.js +162 -0
- package/dist/cjs/measurement/flow-rate.js.map +7 -0
- package/dist/cjs/measurement/frequency-unit.js +132 -0
- package/dist/cjs/measurement/frequency-unit.js.map +7 -0
- package/dist/cjs/measurement/frequency.js +165 -0
- package/dist/cjs/measurement/frequency.js.map +7 -0
- package/dist/cjs/measurement/index.js +136 -0
- package/dist/cjs/measurement/index.js.map +7 -0
- package/dist/cjs/measurement/length-unit.js +210 -0
- package/dist/cjs/measurement/length-unit.js.map +7 -0
- package/dist/cjs/measurement/length.js +208 -0
- package/dist/cjs/measurement/length.js.map +7 -0
- package/dist/cjs/measurement/luminance-unit.js +110 -0
- package/dist/cjs/measurement/luminance-unit.js.map +7 -0
- package/dist/cjs/measurement/luminance.js +158 -0
- package/dist/cjs/measurement/luminance.js.map +7 -0
- package/dist/cjs/measurement/luminous-flux-unit.js +86 -0
- package/dist/cjs/measurement/luminous-flux-unit.js.map +7 -0
- package/dist/cjs/measurement/luminous-flux.js +139 -0
- package/dist/cjs/measurement/luminous-flux.js.map +7 -0
- package/dist/cjs/measurement/percentage.js +212 -0
- package/dist/cjs/measurement/percentage.js.map +7 -0
- package/dist/cjs/measurement/power-unit.js +155 -0
- package/dist/cjs/measurement/power-unit.js.map +7 -0
- package/dist/cjs/measurement/power.js +184 -0
- package/dist/cjs/measurement/power.js.map +7 -0
- package/dist/cjs/measurement/pressure-unit.js +168 -0
- package/dist/cjs/measurement/pressure-unit.js.map +7 -0
- package/dist/cjs/measurement/pressure.js +189 -0
- package/dist/cjs/measurement/pressure.js.map +7 -0
- package/dist/cjs/measurement/rotational-speed-unit.js +96 -0
- package/dist/cjs/measurement/rotational-speed-unit.js.map +7 -0
- package/dist/cjs/measurement/rotational-speed.js +152 -0
- package/dist/cjs/measurement/rotational-speed.js.map +7 -0
- package/dist/cjs/measurement/sound-level.js +185 -0
- package/dist/cjs/measurement/sound-level.js.map +7 -0
- package/dist/cjs/measurement/speed-unit.js +119 -0
- package/dist/cjs/measurement/speed-unit.js.map +7 -0
- package/dist/cjs/measurement/speed.js +159 -0
- package/dist/cjs/measurement/speed.js.map +7 -0
- package/dist/cjs/measurement/temperature-delta.js +101 -0
- package/dist/cjs/measurement/temperature-delta.js.map +7 -0
- package/dist/cjs/measurement/temperature-unit.js +130 -0
- package/dist/cjs/measurement/temperature-unit.js.map +7 -0
- package/dist/cjs/measurement/temperature.js +216 -0
- package/dist/cjs/measurement/temperature.js.map +7 -0
- package/dist/cjs/measurement/torque-unit.js +138 -0
- package/dist/cjs/measurement/torque-unit.js.map +7 -0
- package/dist/cjs/measurement/torque.js +165 -0
- package/dist/cjs/measurement/torque.js.map +7 -0
- package/dist/cjs/measurement/voltage-unit.js +127 -0
- package/dist/cjs/measurement/voltage-unit.js.map +7 -0
- package/dist/cjs/measurement/voltage.js +159 -0
- package/dist/cjs/measurement/voltage.js.map +7 -0
- package/dist/cjs/measurement/volume-unit.js +178 -0
- package/dist/cjs/measurement/volume-unit.js.map +7 -0
- package/dist/cjs/measurement/volume.js +195 -0
- package/dist/cjs/measurement/volume.js.map +7 -0
- package/dist/cjs/measurement/weight-unit.js +158 -0
- package/dist/cjs/measurement/weight-unit.js.map +7 -0
- package/dist/cjs/measurement/weight.js +183 -0
- package/dist/cjs/measurement/weight.js.map +7 -0
- package/dist/cjs/measurement/year-month.js +204 -0
- package/dist/cjs/measurement/year-month.js.map +7 -0
- package/dist/cjs/measurement/year.js +109 -0
- package/dist/cjs/measurement/year.js.map +7 -0
- package/dist/cjs/organization/duns-number.js +114 -0
- package/dist/cjs/organization/duns-number.js.map +7 -0
- package/dist/cjs/organization/elf-code.js +132 -0
- package/dist/cjs/organization/elf-code.js.map +7 -0
- package/dist/cjs/organization/eu-organization-name.js +119 -0
- package/dist/cjs/organization/eu-organization-name.js.map +7 -0
- package/dist/cjs/organization/eu-vat-number.js +444 -0
- package/dist/cjs/organization/eu-vat-number.js.map +7 -0
- package/dist/cjs/organization/index.js +65 -0
- package/dist/cjs/organization/index.js.map +7 -0
- package/dist/cjs/organization/lei-code.js +133 -0
- package/dist/cjs/organization/lei-code.js.map +7 -0
- package/dist/cjs/organization/organization-extensions.js +80 -0
- package/dist/cjs/organization/organization-extensions.js.map +7 -0
- package/dist/cjs/organization/organization-validation-utils.js +78 -0
- package/dist/cjs/organization/organization-validation-utils.js.map +7 -0
- package/dist/cjs/organization/swedish-cfar-number.js +88 -0
- package/dist/cjs/organization/swedish-cfar-number.js.map +7 -0
- package/dist/cjs/organization/swedish-organization-identifier-type.js +34 -0
- package/dist/cjs/organization/swedish-organization-identifier-type.js.map +7 -0
- package/dist/cjs/organization/swedish-organization-identifier.js +166 -0
- package/dist/cjs/organization/swedish-organization-identifier.js.map +7 -0
- package/dist/cjs/organization/swedish-organization-name.js +255 -0
- package/dist/cjs/organization/swedish-organization-name.js.map +7 -0
- package/dist/cjs/organization/swedish-organization-number.js +289 -0
- package/dist/cjs/organization/swedish-organization-number.js.map +7 -0
- package/dist/cjs/organization/swedish-organization-type.js +51 -0
- package/dist/cjs/organization/swedish-organization-type.js.map +7 -0
- package/dist/cjs/organization/swedish-sni-code.js +96 -0
- package/dist/cjs/organization/swedish-sni-code.js.map +7 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/person/index.js +49 -0
- package/dist/cjs/person/index.js.map +7 -0
- package/dist/cjs/person/person-age.js +187 -0
- package/dist/cjs/person/person-age.js.map +7 -0
- package/dist/cjs/person/person-family-name.js +83 -0
- package/dist/cjs/person/person-family-name.js.map +7 -0
- package/dist/cjs/person/person-full-name.js +106 -0
- package/dist/cjs/person/person-full-name.js.map +7 -0
- package/dist/cjs/person/person-given-name.js +103 -0
- package/dist/cjs/person/person-given-name.js.map +7 -0
- package/dist/cjs/person/person-masking.js +48 -0
- package/dist/cjs/person/person-masking.js.map +7 -0
- package/dist/cjs/person/person-name-normalization.js +99 -0
- package/dist/cjs/person/person-name-normalization.js.map +7 -0
- package/dist/cjs/person/personnummer-parser.js +156 -0
- package/dist/cjs/person/personnummer-parser.js.map +7 -0
- package/dist/cjs/person/swedish-coordination-number.js +186 -0
- package/dist/cjs/person/swedish-coordination-number.js.map +7 -0
- package/dist/cjs/person/swedish-personal-identity-number.js +188 -0
- package/dist/cjs/person/swedish-personal-identity-number.js.map +7 -0
- package/dist/cjs/primitive-type-info.js +17 -0
- package/dist/cjs/primitive-type-info.js.map +7 -0
- package/dist/cjs/primitives-defaults.js +92 -0
- package/dist/cjs/primitives-defaults.js.map +7 -0
- package/dist/cjs/product/adult-clothing-size.js +148 -0
- package/dist/cjs/product/adult-clothing-size.js.map +7 -0
- package/dist/cjs/product/adult-shoe-size.js +139 -0
- package/dist/cjs/product/adult-shoe-size.js.map +7 -0
- package/dist/cjs/product/aspect-ratio.js +188 -0
- package/dist/cjs/product/aspect-ratio.js.map +7 -0
- package/dist/cjs/product/battery-capacity.js +184 -0
- package/dist/cjs/product/battery-capacity.js.map +7 -0
- package/dist/cjs/product/battery-chemistry.js +259 -0
- package/dist/cjs/product/battery-chemistry.js.map +7 -0
- package/dist/cjs/product/camera-resolution.js +161 -0
- package/dist/cjs/product/camera-resolution.js.map +7 -0
- package/dist/cjs/product/child-clothing-size.js +254 -0
- package/dist/cjs/product/child-clothing-size.js.map +7 -0
- package/dist/cjs/product/child-shoe-size.js +200 -0
- package/dist/cjs/product/child-shoe-size.js.map +7 -0
- package/dist/cjs/product/clothing-fit.js +223 -0
- package/dist/cjs/product/clothing-fit.js.map +7 -0
- package/dist/cjs/product/clothing-gender.js +198 -0
- package/dist/cjs/product/clothing-gender.js.map +7 -0
- package/dist/cjs/product/clothing-season.js +202 -0
- package/dist/cjs/product/clothing-season.js.map +7 -0
- package/dist/cjs/product/clothing-size-system.js +31 -0
- package/dist/cjs/product/clothing-size-system.js.map +7 -0
- package/dist/cjs/product/clothing-size.js +146 -0
- package/dist/cjs/product/clothing-size.js.map +7 -0
- package/dist/cjs/product/color.js +334 -0
- package/dist/cjs/product/color.js.map +7 -0
- package/dist/cjs/product/display-panel-type.js +287 -0
- package/dist/cjs/product/display-panel-type.js.map +7 -0
- package/dist/cjs/product/electrical-phase.js +194 -0
- package/dist/cjs/product/electrical-phase.js.map +7 -0
- package/dist/cjs/product/energy-scale.js +31 -0
- package/dist/cjs/product/energy-scale.js.map +7 -0
- package/dist/cjs/product/eu-energy-efficiency-class.js +135 -0
- package/dist/cjs/product/eu-energy-efficiency-class.js.map +7 -0
- package/dist/cjs/product/google-product-category.js +114 -0
- package/dist/cjs/product/google-product-category.js.map +7 -0
- package/dist/cjs/product/gtin.js +99 -0
- package/dist/cjs/product/gtin.js.map +7 -0
- package/dist/cjs/product/gtin12.js +130 -0
- package/dist/cjs/product/gtin12.js.map +7 -0
- package/dist/cjs/product/gtin13.js +147 -0
- package/dist/cjs/product/gtin13.js.map +7 -0
- package/dist/cjs/product/gtin14.js +135 -0
- package/dist/cjs/product/gtin14.js.map +7 -0
- package/dist/cjs/product/gtin8.js +130 -0
- package/dist/cjs/product/gtin8.js.map +7 -0
- package/dist/cjs/product/hs-code-level.js +32 -0
- package/dist/cjs/product/hs-code-level.js.map +7 -0
- package/dist/cjs/product/hs-code.js +126 -0
- package/dist/cjs/product/hs-code.js.map +7 -0
- package/dist/cjs/product/index.js +128 -0
- package/dist/cjs/product/index.js.map +7 -0
- package/dist/cjs/product/ip-rating.js +166 -0
- package/dist/cjs/product/ip-rating.js.map +7 -0
- package/dist/cjs/product/operating-system-family.js +37 -0
- package/dist/cjs/product/operating-system-family.js.map +7 -0
- package/dist/cjs/product/operating-system-info.js +100 -0
- package/dist/cjs/product/operating-system-info.js.map +7 -0
- package/dist/cjs/product/operating-system-name.js +127 -0
- package/dist/cjs/product/operating-system-name.js.map +7 -0
- package/dist/cjs/product/operating-system-version.js +110 -0
- package/dist/cjs/product/operating-system-version.js.map +7 -0
- package/dist/cjs/product/power-source.js +318 -0
- package/dist/cjs/product/power-source.js.map +7 -0
- package/dist/cjs/product/processor-speed.js +159 -0
- package/dist/cjs/product/processor-speed.js.map +7 -0
- package/dist/cjs/product/product-extensions.js +27 -0
- package/dist/cjs/product/product-extensions.js.map +7 -0
- package/dist/cjs/product/product-masking.js +102 -0
- package/dist/cjs/product/product-masking.js.map +7 -0
- package/dist/cjs/product/ram-capacity.js +154 -0
- package/dist/cjs/product/ram-capacity.js.map +7 -0
- package/dist/cjs/product/refrigerant-family.js +40 -0
- package/dist/cjs/product/refrigerant-family.js.map +7 -0
- package/dist/cjs/product/refrigerant.js +419 -0
- package/dist/cjs/product/refrigerant.js.map +7 -0
- package/dist/cjs/product/screen-resolution.js +197 -0
- package/dist/cjs/product/screen-resolution.js.map +7 -0
- package/dist/cjs/product/screen-size.js +184 -0
- package/dist/cjs/product/screen-size.js.map +7 -0
- package/dist/cjs/product/shoe-size-system.js +31 -0
- package/dist/cjs/product/shoe-size-system.js.map +7 -0
- package/dist/cjs/product/shoe-size.js +138 -0
- package/dist/cjs/product/shoe-size.js.map +7 -0
- package/dist/cjs/product/storage-capacity.js +159 -0
- package/dist/cjs/product/storage-capacity.js.map +7 -0
- package/dist/cjs/product/storage-media-type.js +271 -0
- package/dist/cjs/product/storage-media-type.js.map +7 -0
- package/dist/cjs/property/index.js +31 -0
- package/dist/cjs/property/index.js.map +7 -0
- package/dist/cjs/property/swedish-property-designation.js +179 -0
- package/dist/cjs/property/swedish-property-designation.js.map +7 -0
- package/dist/cjs/property/swedish-property-taxation-code.js +218 -0
- package/dist/cjs/property/swedish-property-taxation-code.js.map +7 -0
- package/dist/cjs/register-default-text-scanners.js +290 -0
- package/dist/cjs/register-default-text-scanners.js.map +7 -0
- package/dist/cjs/sample-data/index.js +358 -0
- package/dist/cjs/sample-data/index.js.map +7 -0
- package/dist/cjs/text-scanning/index.js +38 -0
- package/dist/cjs/text-scanning/index.js.map +7 -0
- package/dist/cjs/text-scanning/text-candidate-category.js +35 -0
- package/dist/cjs/text-scanning/text-candidate-category.js.map +7 -0
- package/dist/cjs/text-scanning/text-candidate.js +75 -0
- package/dist/cjs/text-scanning/text-candidate.js.map +7 -0
- package/dist/cjs/text-scanning/text-match-confidence.js +43 -0
- package/dist/cjs/text-scanning/text-match-confidence.js.map +7 -0
- package/dist/cjs/text-scanning/text-scan-helpers.js +98 -0
- package/dist/cjs/text-scanning/text-scan-helpers.js.map +7 -0
- package/dist/cjs/text-scanning/text-scan-result.js +333 -0
- package/dist/cjs/text-scanning/text-scan-result.js.map +7 -0
- package/dist/cjs/text-scanning/text-scanner-options.js +29 -0
- package/dist/cjs/text-scanning/text-scanner-options.js.map +7 -0
- package/dist/cjs/text-scanning/text-scanner.js +60 -0
- package/dist/cjs/text-scanning/text-scanner.js.map +7 -0
- package/dist/cjs/validation/index.js +29 -0
- package/dist/cjs/validation/index.js.map +7 -0
- package/dist/cjs/validation/validation-error-reason.js +53 -0
- package/dist/cjs/validation/validation-error-reason.js.map +7 -0
- package/dist/cjs/validation/validation-issue.js +43 -0
- package/dist/cjs/validation/validation-issue.js.map +7 -0
- package/dist/cjs/validation/validation-result.js +52 -0
- package/dist/cjs/validation/validation-result.js.map +7 -0
- package/dist/cjs/vehicle/boat-ce-design-category.js +200 -0
- package/dist/cjs/vehicle/boat-ce-design-category.js.map +7 -0
- package/dist/cjs/vehicle/boat-hull-material.js +222 -0
- package/dist/cjs/vehicle/boat-hull-material.js.map +7 -0
- package/dist/cjs/vehicle/body-type.js +325 -0
- package/dist/cjs/vehicle/body-type.js.map +7 -0
- package/dist/cjs/vehicle/bolt-pattern.js +150 -0
- package/dist/cjs/vehicle/bolt-pattern.js.map +7 -0
- package/dist/cjs/vehicle/drivetrain-type.js +200 -0
- package/dist/cjs/vehicle/drivetrain-type.js.map +7 -0
- package/dist/cjs/vehicle/emission-rate.js +194 -0
- package/dist/cjs/vehicle/emission-rate.js.map +7 -0
- package/dist/cjs/vehicle/energy-consumption.js +250 -0
- package/dist/cjs/vehicle/energy-consumption.js.map +7 -0
- package/dist/cjs/vehicle/engine-displacement.js +169 -0
- package/dist/cjs/vehicle/engine-displacement.js.map +7 -0
- package/dist/cjs/vehicle/engine-power.js +211 -0
- package/dist/cjs/vehicle/engine-power.js.map +7 -0
- package/dist/cjs/vehicle/eu-type-approval-number.js +196 -0
- package/dist/cjs/vehicle/eu-type-approval-number.js.map +7 -0
- package/dist/cjs/vehicle/eu-vehicle-category.js +167 -0
- package/dist/cjs/vehicle/eu-vehicle-category.js.map +7 -0
- package/dist/cjs/vehicle/euro-emission-class.js +313 -0
- package/dist/cjs/vehicle/euro-emission-class.js.map +7 -0
- package/dist/cjs/vehicle/fuel-consumption-norm.js +206 -0
- package/dist/cjs/vehicle/fuel-consumption-norm.js.map +7 -0
- package/dist/cjs/vehicle/fuel-consumption.js +281 -0
- package/dist/cjs/vehicle/fuel-consumption.js.map +7 -0
- package/dist/cjs/vehicle/fuel-type.js +288 -0
- package/dist/cjs/vehicle/fuel-type.js.map +7 -0
- package/dist/cjs/vehicle/index.js +108 -0
- package/dist/cjs/vehicle/index.js.map +7 -0
- package/dist/cjs/vehicle/odometer-reading.js +165 -0
- package/dist/cjs/vehicle/odometer-reading.js.map +7 -0
- package/dist/cjs/vehicle/operating-hours.js +174 -0
- package/dist/cjs/vehicle/operating-hours.js.map +7 -0
- package/dist/cjs/vehicle/suspension-type.js +312 -0
- package/dist/cjs/vehicle/suspension-type.js.map +7 -0
- package/dist/cjs/vehicle/swedish-driving-license-category.js +404 -0
- package/dist/cjs/vehicle/swedish-driving-license-category.js.map +7 -0
- package/dist/cjs/vehicle/swedish-driving-license-vehicle-group.js +32 -0
- package/dist/cjs/vehicle/swedish-driving-license-vehicle-group.js.map +7 -0
- package/dist/cjs/vehicle/swedish-eco-vehicle-classification.js +232 -0
- package/dist/cjs/vehicle/swedish-eco-vehicle-classification.js.map +7 -0
- package/dist/cjs/vehicle/swedish-vehicle-registration-number.js +193 -0
- package/dist/cjs/vehicle/swedish-vehicle-registration-number.js.map +7 -0
- package/dist/cjs/vehicle/swedish-vehicle-status.js +172 -0
- package/dist/cjs/vehicle/swedish-vehicle-status.js.map +7 -0
- package/dist/cjs/vehicle/swedish-vehicle-type.js +282 -0
- package/dist/cjs/vehicle/swedish-vehicle-type.js.map +7 -0
- package/dist/cjs/vehicle/tire-dimension.js +206 -0
- package/dist/cjs/vehicle/tire-dimension.js.map +7 -0
- package/dist/cjs/vehicle/tire-type.js +228 -0
- package/dist/cjs/vehicle/tire-type.js.map +7 -0
- package/dist/cjs/vehicle/track-type.js +188 -0
- package/dist/cjs/vehicle/track-type.js.map +7 -0
- package/dist/cjs/vehicle/transmission-type.js +258 -0
- package/dist/cjs/vehicle/transmission-type.js.map +7 -0
- package/dist/cjs/vehicle/vehicle-extensions.js +35 -0
- package/dist/cjs/vehicle/vehicle-extensions.js.map +7 -0
- package/dist/cjs/vehicle/vehicle-identification-number.js +265 -0
- package/dist/cjs/vehicle/vehicle-identification-number.js.map +7 -0
- package/dist/cjs/vehicle/vehicle-masking.js +68 -0
- package/dist/cjs/vehicle/vehicle-masking.js.map +7 -0
- package/dist/cjs/vehicle/wheel-rim-dimension.js +183 -0
- package/dist/cjs/vehicle/wheel-rim-dimension.js.map +7 -0
- package/dist/cjs/web/email-address.js +542 -0
- package/dist/cjs/web/email-address.js.map +7 -0
- package/dist/cjs/web/index.js +31 -0
- package/dist/cjs/web/index.js.map +7 -0
- package/dist/cjs/web/url.js +353 -0
- package/dist/cjs/web/url.js.map +7 -0
- package/dist/esm/banking/bank-resolver.js +358 -0
- package/dist/esm/banking/bank-resolver.js.map +7 -0
- package/dist/esm/banking/bic.js +169 -0
- package/dist/esm/banking/bic.js.map +7 -0
- package/dist/esm/banking/iban.js +294 -0
- package/dist/esm/banking/iban.js.map +7 -0
- package/dist/esm/banking/index.js +60 -0
- package/dist/esm/banking/index.js.map +7 -0
- package/dist/esm/banking/swedish-bank-account-holder-name.js +104 -0
- package/dist/esm/banking/swedish-bank-account-holder-name.js.map +7 -0
- package/dist/esm/banking/swedish-bank-account.js +199 -0
- package/dist/esm/banking/swedish-bank-account.js.map +7 -0
- package/dist/esm/banking/swedish-bank-clearing-number.js +136 -0
- package/dist/esm/banking/swedish-bank-clearing-number.js.map +7 -0
- package/dist/esm/banking/swedish-bank.js +69 -0
- package/dist/esm/banking/swedish-bank.js.map +7 -0
- package/dist/esm/banking/swedish-bankgiro-number.js +156 -0
- package/dist/esm/banking/swedish-bankgiro-number.js.map +7 -0
- package/dist/esm/banking/swedish-banking-number.js +181 -0
- package/dist/esm/banking/swedish-banking-number.js.map +7 -0
- package/dist/esm/banking/swedish-ocr-reference-number.js +195 -0
- package/dist/esm/banking/swedish-ocr-reference-number.js.map +7 -0
- package/dist/esm/banking/swedish-postgiro-number.js +153 -0
- package/dist/esm/banking/swedish-postgiro-number.js.map +7 -0
- package/dist/esm/banking/swedish-swish-number.js +145 -0
- package/dist/esm/banking/swedish-swish-number.js.map +7 -0
- package/dist/esm/contact/address-city.js +84 -0
- package/dist/esm/contact/address-city.js.map +7 -0
- package/dist/esm/contact/address-street.js +200 -0
- package/dist/esm/contact/address-street.js.map +7 -0
- package/dist/esm/contact/address-zip-code.js +175 -0
- package/dist/esm/contact/address-zip-code.js.map +7 -0
- package/dist/esm/contact/address.js +388 -0
- package/dist/esm/contact/address.js.map +7 -0
- package/dist/esm/contact/contact-address.js +122 -0
- package/dist/esm/contact/contact-address.js.map +7 -0
- package/dist/esm/contact/contact-external-links.js +19 -0
- package/dist/esm/contact/contact-external-links.js.map +7 -0
- package/dist/esm/contact/contact-lookup.js +11 -0
- package/dist/esm/contact/contact-lookup.js.map +7 -0
- package/dist/esm/contact/contact-masking.js +97 -0
- package/dist/esm/contact/contact-masking.js.map +7 -0
- package/dist/esm/contact/country-address-factory.js +80 -0
- package/dist/esm/contact/country-address-factory.js.map +7 -0
- package/dist/esm/contact/country-address-registry.js +16 -0
- package/dist/esm/contact/country-address-registry.js.map +7 -0
- package/dist/esm/contact/country-address.js +78 -0
- package/dist/esm/contact/country-address.js.map +7 -0
- package/dist/esm/contact/country-addresses.js +316 -0
- package/dist/esm/contact/country-addresses.js.map +7 -0
- package/dist/esm/contact/country-zip-code-factory.js +97 -0
- package/dist/esm/contact/country-zip-code-factory.js.map +7 -0
- package/dist/esm/contact/country-zip-codes.js +363 -0
- package/dist/esm/contact/country-zip-codes.js.map +7 -0
- package/dist/esm/contact/index.js +63 -0
- package/dist/esm/contact/index.js.map +7 -0
- package/dist/esm/contact/phone-calling-code.js +419 -0
- package/dist/esm/contact/phone-calling-code.js.map +7 -0
- package/dist/esm/contact/phone-number-test-data.js +43 -0
- package/dist/esm/contact/phone-number-test-data.js.map +7 -0
- package/dist/esm/contact/phone-number.js +305 -0
- package/dist/esm/contact/phone-number.js.map +7 -0
- package/dist/esm/contact/register-default-country-addresses.js +58 -0
- package/dist/esm/contact/register-default-country-addresses.js.map +7 -0
- package/dist/esm/contact/swedish-address-zip-code.js +72 -0
- package/dist/esm/contact/swedish-address-zip-code.js.map +7 -0
- package/dist/esm/contact/swedish-address.js +149 -0
- package/dist/esm/contact/swedish-address.js.map +7 -0
- package/dist/esm/finance/currency.js +231 -0
- package/dist/esm/finance/currency.js.map +7 -0
- package/dist/esm/finance/exchange-rates.js +31 -0
- package/dist/esm/finance/exchange-rates.js.map +7 -0
- package/dist/esm/finance/index.js +14 -0
- package/dist/esm/finance/index.js.map +7 -0
- package/dist/esm/finance/isin.js +141 -0
- package/dist/esm/finance/isin.js.map +7 -0
- package/dist/esm/finance/money-amount.js +287 -0
- package/dist/esm/finance/money-amount.js.map +7 -0
- package/dist/esm/geography/adjacency-data.js +315 -0
- package/dist/esm/geography/adjacency-data.js.map +7 -0
- package/dist/esm/geography/continent.js +105 -0
- package/dist/esm/geography/continent.js.map +7 -0
- package/dist/esm/geography/country-capital.js +25 -0
- package/dist/esm/geography/country-capital.js.map +7 -0
- package/dist/esm/geography/country-capitals.js +268 -0
- package/dist/esm/geography/country-capitals.js.map +7 -0
- package/dist/esm/geography/country-coordinates.js +218 -0
- package/dist/esm/geography/country-coordinates.js.map +7 -0
- package/dist/esm/geography/country-data.js +510 -0
- package/dist/esm/geography/country-data.js.map +7 -0
- package/dist/esm/geography/country-metadata.js +607 -0
- package/dist/esm/geography/country-metadata.js.map +7 -0
- package/dist/esm/geography/country.js +417 -0
- package/dist/esm/geography/country.js.map +7 -0
- package/dist/esm/geography/geo-coordinate.js +224 -0
- package/dist/esm/geography/geo-coordinate.js.map +7 -0
- package/dist/esm/geography/geography-extensions.js +62 -0
- package/dist/esm/geography/geography-extensions.js.map +7 -0
- package/dist/esm/geography/geography-external-links.js +32 -0
- package/dist/esm/geography/geography-external-links.js.map +7 -0
- package/dist/esm/geography/geography-lookup.js +11 -0
- package/dist/esm/geography/geography-lookup.js.map +7 -0
- package/dist/esm/geography/geography-masking.js +34 -0
- package/dist/esm/geography/geography-masking.js.map +7 -0
- package/dist/esm/geography/index.js +55 -0
- package/dist/esm/geography/index.js.map +7 -0
- package/dist/esm/geography/language.js +442 -0
- package/dist/esm/geography/language.js.map +7 -0
- package/dist/esm/geography/swedish-county.js +212 -0
- package/dist/esm/geography/swedish-county.js.map +7 -0
- package/dist/esm/geography/swedish-municipality-data.js +296 -0
- package/dist/esm/geography/swedish-municipality-data.js.map +7 -0
- package/dist/esm/geography/swedish-municipality.js +198 -0
- package/dist/esm/geography/swedish-municipality.js.map +7 -0
- package/dist/esm/index.js +16 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/internal/case-folding.js +12 -0
- package/dist/esm/internal/case-folding.js.map +7 -0
- package/dist/esm/internal/clock.js +12 -0
- package/dist/esm/internal/clock.js.map +7 -0
- package/dist/esm/internal/decimal.js +242 -0
- package/dist/esm/internal/decimal.js.map +7 -0
- package/dist/esm/internal/gs1-prefix.js +144 -0
- package/dist/esm/internal/gs1-prefix.js.map +7 -0
- package/dist/esm/internal/gtin-check-digit.js +26 -0
- package/dist/esm/internal/gtin-check-digit.js.map +7 -0
- package/dist/esm/internal/input-sanitization.js +59 -0
- package/dist/esm/internal/input-sanitization.js.map +7 -0
- package/dist/esm/internal/luhn.js +20 -0
- package/dist/esm/internal/luhn.js.map +7 -0
- package/dist/esm/internal/measurement-unit-parser.js +66 -0
- package/dist/esm/internal/measurement-unit-parser.js.map +7 -0
- package/dist/esm/internal/measurement-unit.js +110 -0
- package/dist/esm/internal/measurement-unit.js.map +7 -0
- package/dist/esm/internal/quantity.js +102 -0
- package/dist/esm/internal/quantity.js.map +7 -0
- package/dist/esm/internal/shoe-size-format.js +11 -0
- package/dist/esm/internal/shoe-size-format.js.map +7 -0
- package/dist/esm/measurement/area-unit.js +138 -0
- package/dist/esm/measurement/area-unit.js.map +7 -0
- package/dist/esm/measurement/area.js +163 -0
- package/dist/esm/measurement/area.js.map +7 -0
- package/dist/esm/measurement/count.js +112 -0
- package/dist/esm/measurement/count.js.map +7 -0
- package/dist/esm/measurement/data-size-unit.js +188 -0
- package/dist/esm/measurement/data-size-unit.js.map +7 -0
- package/dist/esm/measurement/data-size.js +187 -0
- package/dist/esm/measurement/data-size.js.map +7 -0
- package/dist/esm/measurement/electric-charge-unit.js +89 -0
- package/dist/esm/measurement/electric-charge-unit.js.map +7 -0
- package/dist/esm/measurement/electric-charge.js +128 -0
- package/dist/esm/measurement/electric-charge.js.map +7 -0
- package/dist/esm/measurement/electric-current-unit.js +88 -0
- package/dist/esm/measurement/electric-current-unit.js.map +7 -0
- package/dist/esm/measurement/electric-current.js +134 -0
- package/dist/esm/measurement/electric-current.js.map +7 -0
- package/dist/esm/measurement/energy-unit.js +181 -0
- package/dist/esm/measurement/energy-unit.js.map +7 -0
- package/dist/esm/measurement/energy.js +187 -0
- package/dist/esm/measurement/energy.js.map +7 -0
- package/dist/esm/measurement/flow-rate-unit.js +112 -0
- package/dist/esm/measurement/flow-rate-unit.js.map +7 -0
- package/dist/esm/measurement/flow-rate.js +142 -0
- package/dist/esm/measurement/flow-rate.js.map +7 -0
- package/dist/esm/measurement/frequency-unit.js +112 -0
- package/dist/esm/measurement/frequency-unit.js.map +7 -0
- package/dist/esm/measurement/frequency.js +145 -0
- package/dist/esm/measurement/frequency.js.map +7 -0
- package/dist/esm/measurement/index.js +129 -0
- package/dist/esm/measurement/index.js.map +7 -0
- package/dist/esm/measurement/length-unit.js +190 -0
- package/dist/esm/measurement/length-unit.js.map +7 -0
- package/dist/esm/measurement/length.js +188 -0
- package/dist/esm/measurement/length.js.map +7 -0
- package/dist/esm/measurement/luminance-unit.js +90 -0
- package/dist/esm/measurement/luminance-unit.js.map +7 -0
- package/dist/esm/measurement/luminance.js +138 -0
- package/dist/esm/measurement/luminance.js.map +7 -0
- package/dist/esm/measurement/luminous-flux-unit.js +66 -0
- package/dist/esm/measurement/luminous-flux-unit.js.map +7 -0
- package/dist/esm/measurement/luminous-flux.js +119 -0
- package/dist/esm/measurement/luminous-flux.js.map +7 -0
- package/dist/esm/measurement/percentage.js +192 -0
- package/dist/esm/measurement/percentage.js.map +7 -0
- package/dist/esm/measurement/power-unit.js +135 -0
- package/dist/esm/measurement/power-unit.js.map +7 -0
- package/dist/esm/measurement/power.js +164 -0
- package/dist/esm/measurement/power.js.map +7 -0
- package/dist/esm/measurement/pressure-unit.js +148 -0
- package/dist/esm/measurement/pressure-unit.js.map +7 -0
- package/dist/esm/measurement/pressure.js +169 -0
- package/dist/esm/measurement/pressure.js.map +7 -0
- package/dist/esm/measurement/rotational-speed-unit.js +76 -0
- package/dist/esm/measurement/rotational-speed-unit.js.map +7 -0
- package/dist/esm/measurement/rotational-speed.js +132 -0
- package/dist/esm/measurement/rotational-speed.js.map +7 -0
- package/dist/esm/measurement/sound-level.js +165 -0
- package/dist/esm/measurement/sound-level.js.map +7 -0
- package/dist/esm/measurement/speed-unit.js +99 -0
- package/dist/esm/measurement/speed-unit.js.map +7 -0
- package/dist/esm/measurement/speed.js +139 -0
- package/dist/esm/measurement/speed.js.map +7 -0
- package/dist/esm/measurement/temperature-delta.js +81 -0
- package/dist/esm/measurement/temperature-delta.js.map +7 -0
- package/dist/esm/measurement/temperature-unit.js +110 -0
- package/dist/esm/measurement/temperature-unit.js.map +7 -0
- package/dist/esm/measurement/temperature.js +196 -0
- package/dist/esm/measurement/temperature.js.map +7 -0
- package/dist/esm/measurement/torque-unit.js +118 -0
- package/dist/esm/measurement/torque-unit.js.map +7 -0
- package/dist/esm/measurement/torque.js +145 -0
- package/dist/esm/measurement/torque.js.map +7 -0
- package/dist/esm/measurement/voltage-unit.js +107 -0
- package/dist/esm/measurement/voltage-unit.js.map +7 -0
- package/dist/esm/measurement/voltage.js +139 -0
- package/dist/esm/measurement/voltage.js.map +7 -0
- package/dist/esm/measurement/volume-unit.js +158 -0
- package/dist/esm/measurement/volume-unit.js.map +7 -0
- package/dist/esm/measurement/volume.js +175 -0
- package/dist/esm/measurement/volume.js.map +7 -0
- package/dist/esm/measurement/weight-unit.js +138 -0
- package/dist/esm/measurement/weight-unit.js.map +7 -0
- package/dist/esm/measurement/weight.js +163 -0
- package/dist/esm/measurement/weight.js.map +7 -0
- package/dist/esm/measurement/year-month.js +184 -0
- package/dist/esm/measurement/year-month.js.map +7 -0
- package/dist/esm/measurement/year.js +89 -0
- package/dist/esm/measurement/year.js.map +7 -0
- package/dist/esm/organization/duns-number.js +94 -0
- package/dist/esm/organization/duns-number.js.map +7 -0
- package/dist/esm/organization/elf-code.js +112 -0
- package/dist/esm/organization/elf-code.js.map +7 -0
- package/dist/esm/organization/eu-organization-name.js +99 -0
- package/dist/esm/organization/eu-organization-name.js.map +7 -0
- package/dist/esm/organization/eu-vat-number.js +424 -0
- package/dist/esm/organization/eu-vat-number.js.map +7 -0
- package/dist/esm/organization/index.js +62 -0
- package/dist/esm/organization/index.js.map +7 -0
- package/dist/esm/organization/lei-code.js +113 -0
- package/dist/esm/organization/lei-code.js.map +7 -0
- package/dist/esm/organization/organization-extensions.js +60 -0
- package/dist/esm/organization/organization-extensions.js.map +7 -0
- package/dist/esm/organization/organization-validation-utils.js +58 -0
- package/dist/esm/organization/organization-validation-utils.js.map +7 -0
- package/dist/esm/organization/swedish-cfar-number.js +68 -0
- package/dist/esm/organization/swedish-cfar-number.js.map +7 -0
- package/dist/esm/organization/swedish-organization-identifier-type.js +14 -0
- package/dist/esm/organization/swedish-organization-identifier-type.js.map +7 -0
- package/dist/esm/organization/swedish-organization-identifier.js +146 -0
- package/dist/esm/organization/swedish-organization-identifier.js.map +7 -0
- package/dist/esm/organization/swedish-organization-name.js +235 -0
- package/dist/esm/organization/swedish-organization-name.js.map +7 -0
- package/dist/esm/organization/swedish-organization-number.js +269 -0
- package/dist/esm/organization/swedish-organization-number.js.map +7 -0
- package/dist/esm/organization/swedish-organization-type.js +31 -0
- package/dist/esm/organization/swedish-organization-type.js.map +7 -0
- package/dist/esm/organization/swedish-sni-code.js +76 -0
- package/dist/esm/organization/swedish-sni-code.js.map +7 -0
- package/dist/esm/person/index.js +42 -0
- package/dist/esm/person/index.js.map +7 -0
- package/dist/esm/person/person-age.js +167 -0
- package/dist/esm/person/person-age.js.map +7 -0
- package/dist/esm/person/person-family-name.js +67 -0
- package/dist/esm/person/person-family-name.js.map +7 -0
- package/dist/esm/person/person-full-name.js +86 -0
- package/dist/esm/person/person-full-name.js.map +7 -0
- package/dist/esm/person/person-given-name.js +87 -0
- package/dist/esm/person/person-given-name.js.map +7 -0
- package/dist/esm/person/person-masking.js +28 -0
- package/dist/esm/person/person-masking.js.map +7 -0
- package/dist/esm/person/person-name-normalization.js +79 -0
- package/dist/esm/person/person-name-normalization.js.map +7 -0
- package/dist/esm/person/personnummer-parser.js +136 -0
- package/dist/esm/person/personnummer-parser.js.map +7 -0
- package/dist/esm/person/swedish-coordination-number.js +173 -0
- package/dist/esm/person/swedish-coordination-number.js.map +7 -0
- package/dist/esm/person/swedish-personal-identity-number.js +175 -0
- package/dist/esm/person/swedish-personal-identity-number.js.map +7 -0
- package/dist/esm/primitive-type-info.js +1 -0
- package/dist/esm/primitive-type-info.js.map +7 -0
- package/dist/esm/primitives-defaults.js +72 -0
- package/dist/esm/primitives-defaults.js.map +7 -0
- package/dist/esm/product/adult-clothing-size.js +128 -0
- package/dist/esm/product/adult-clothing-size.js.map +7 -0
- package/dist/esm/product/adult-shoe-size.js +119 -0
- package/dist/esm/product/adult-shoe-size.js.map +7 -0
- package/dist/esm/product/aspect-ratio.js +168 -0
- package/dist/esm/product/aspect-ratio.js.map +7 -0
- package/dist/esm/product/battery-capacity.js +164 -0
- package/dist/esm/product/battery-capacity.js.map +7 -0
- package/dist/esm/product/battery-chemistry.js +239 -0
- package/dist/esm/product/battery-chemistry.js.map +7 -0
- package/dist/esm/product/camera-resolution.js +141 -0
- package/dist/esm/product/camera-resolution.js.map +7 -0
- package/dist/esm/product/child-clothing-size.js +234 -0
- package/dist/esm/product/child-clothing-size.js.map +7 -0
- package/dist/esm/product/child-shoe-size.js +180 -0
- package/dist/esm/product/child-shoe-size.js.map +7 -0
- package/dist/esm/product/clothing-fit.js +203 -0
- package/dist/esm/product/clothing-fit.js.map +7 -0
- package/dist/esm/product/clothing-gender.js +178 -0
- package/dist/esm/product/clothing-gender.js.map +7 -0
- package/dist/esm/product/clothing-season.js +182 -0
- package/dist/esm/product/clothing-season.js.map +7 -0
- package/dist/esm/product/clothing-size-system.js +11 -0
- package/dist/esm/product/clothing-size-system.js.map +7 -0
- package/dist/esm/product/clothing-size.js +126 -0
- package/dist/esm/product/clothing-size.js.map +7 -0
- package/dist/esm/product/color.js +314 -0
- package/dist/esm/product/color.js.map +7 -0
- package/dist/esm/product/display-panel-type.js +267 -0
- package/dist/esm/product/display-panel-type.js.map +7 -0
- package/dist/esm/product/electrical-phase.js +174 -0
- package/dist/esm/product/electrical-phase.js.map +7 -0
- package/dist/esm/product/energy-scale.js +11 -0
- package/dist/esm/product/energy-scale.js.map +7 -0
- package/dist/esm/product/eu-energy-efficiency-class.js +115 -0
- package/dist/esm/product/eu-energy-efficiency-class.js.map +7 -0
- package/dist/esm/product/google-product-category.js +94 -0
- package/dist/esm/product/google-product-category.js.map +7 -0
- package/dist/esm/product/gtin.js +83 -0
- package/dist/esm/product/gtin.js.map +7 -0
- package/dist/esm/product/gtin12.js +110 -0
- package/dist/esm/product/gtin12.js.map +7 -0
- package/dist/esm/product/gtin13.js +127 -0
- package/dist/esm/product/gtin13.js.map +7 -0
- package/dist/esm/product/gtin14.js +115 -0
- package/dist/esm/product/gtin14.js.map +7 -0
- package/dist/esm/product/gtin8.js +110 -0
- package/dist/esm/product/gtin8.js.map +7 -0
- package/dist/esm/product/hs-code-level.js +12 -0
- package/dist/esm/product/hs-code-level.js.map +7 -0
- package/dist/esm/product/hs-code.js +106 -0
- package/dist/esm/product/hs-code.js.map +7 -0
- package/dist/esm/product/index.js +137 -0
- package/dist/esm/product/index.js.map +7 -0
- package/dist/esm/product/ip-rating.js +146 -0
- package/dist/esm/product/ip-rating.js.map +7 -0
- package/dist/esm/product/operating-system-family.js +17 -0
- package/dist/esm/product/operating-system-family.js.map +7 -0
- package/dist/esm/product/operating-system-info.js +80 -0
- package/dist/esm/product/operating-system-info.js.map +7 -0
- package/dist/esm/product/operating-system-name.js +107 -0
- package/dist/esm/product/operating-system-name.js.map +7 -0
- package/dist/esm/product/operating-system-version.js +90 -0
- package/dist/esm/product/operating-system-version.js.map +7 -0
- package/dist/esm/product/power-source.js +298 -0
- package/dist/esm/product/power-source.js.map +7 -0
- package/dist/esm/product/processor-speed.js +139 -0
- package/dist/esm/product/processor-speed.js.map +7 -0
- package/dist/esm/product/product-extensions.js +7 -0
- package/dist/esm/product/product-extensions.js.map +7 -0
- package/dist/esm/product/product-masking.js +82 -0
- package/dist/esm/product/product-masking.js.map +7 -0
- package/dist/esm/product/ram-capacity.js +134 -0
- package/dist/esm/product/ram-capacity.js.map +7 -0
- package/dist/esm/product/refrigerant-family.js +20 -0
- package/dist/esm/product/refrigerant-family.js.map +7 -0
- package/dist/esm/product/refrigerant.js +399 -0
- package/dist/esm/product/refrigerant.js.map +7 -0
- package/dist/esm/product/screen-resolution.js +177 -0
- package/dist/esm/product/screen-resolution.js.map +7 -0
- package/dist/esm/product/screen-size.js +164 -0
- package/dist/esm/product/screen-size.js.map +7 -0
- package/dist/esm/product/shoe-size-system.js +11 -0
- package/dist/esm/product/shoe-size-system.js.map +7 -0
- package/dist/esm/product/shoe-size.js +118 -0
- package/dist/esm/product/shoe-size.js.map +7 -0
- package/dist/esm/product/storage-capacity.js +139 -0
- package/dist/esm/product/storage-capacity.js.map +7 -0
- package/dist/esm/product/storage-media-type.js +251 -0
- package/dist/esm/product/storage-media-type.js.map +7 -0
- package/dist/esm/property/index.js +19 -0
- package/dist/esm/property/index.js.map +7 -0
- package/dist/esm/property/swedish-property-designation.js +159 -0
- package/dist/esm/property/swedish-property-designation.js.map +7 -0
- package/dist/esm/property/swedish-property-taxation-code.js +198 -0
- package/dist/esm/property/swedish-property-taxation-code.js.map +7 -0
- package/dist/esm/register-default-text-scanners.js +270 -0
- package/dist/esm/register-default-text-scanners.js.map +7 -0
- package/dist/esm/sample-data/index.js +355 -0
- package/dist/esm/sample-data/index.js.map +7 -0
- package/dist/esm/text-scanning/index.js +21 -0
- package/dist/esm/text-scanning/index.js.map +7 -0
- package/dist/esm/text-scanning/text-candidate-category.js +15 -0
- package/dist/esm/text-scanning/text-candidate-category.js.map +7 -0
- package/dist/esm/text-scanning/text-candidate.js +55 -0
- package/dist/esm/text-scanning/text-candidate.js.map +7 -0
- package/dist/esm/text-scanning/text-match-confidence.js +23 -0
- package/dist/esm/text-scanning/text-match-confidence.js.map +7 -0
- package/dist/esm/text-scanning/text-scan-helpers.js +78 -0
- package/dist/esm/text-scanning/text-scan-helpers.js.map +7 -0
- package/dist/esm/text-scanning/text-scan-result.js +313 -0
- package/dist/esm/text-scanning/text-scan-result.js.map +7 -0
- package/dist/esm/text-scanning/text-scanner-options.js +9 -0
- package/dist/esm/text-scanning/text-scanner-options.js.map +7 -0
- package/dist/esm/text-scanning/text-scanner.js +40 -0
- package/dist/esm/text-scanning/text-scanner.js.map +7 -0
- package/dist/esm/validation/index.js +9 -0
- package/dist/esm/validation/index.js.map +7 -0
- package/dist/esm/validation/validation-error-reason.js +33 -0
- package/dist/esm/validation/validation-error-reason.js.map +7 -0
- package/dist/esm/validation/validation-issue.js +23 -0
- package/dist/esm/validation/validation-issue.js.map +7 -0
- package/dist/esm/validation/validation-result.js +32 -0
- package/dist/esm/validation/validation-result.js.map +7 -0
- package/dist/esm/vehicle/boat-ce-design-category.js +180 -0
- package/dist/esm/vehicle/boat-ce-design-category.js.map +7 -0
- package/dist/esm/vehicle/boat-hull-material.js +202 -0
- package/dist/esm/vehicle/boat-hull-material.js.map +7 -0
- package/dist/esm/vehicle/body-type.js +305 -0
- package/dist/esm/vehicle/body-type.js.map +7 -0
- package/dist/esm/vehicle/bolt-pattern.js +130 -0
- package/dist/esm/vehicle/bolt-pattern.js.map +7 -0
- package/dist/esm/vehicle/drivetrain-type.js +180 -0
- package/dist/esm/vehicle/drivetrain-type.js.map +7 -0
- package/dist/esm/vehicle/emission-rate.js +174 -0
- package/dist/esm/vehicle/emission-rate.js.map +7 -0
- package/dist/esm/vehicle/energy-consumption.js +230 -0
- package/dist/esm/vehicle/energy-consumption.js.map +7 -0
- package/dist/esm/vehicle/engine-displacement.js +149 -0
- package/dist/esm/vehicle/engine-displacement.js.map +7 -0
- package/dist/esm/vehicle/engine-power.js +191 -0
- package/dist/esm/vehicle/engine-power.js.map +7 -0
- package/dist/esm/vehicle/eu-type-approval-number.js +176 -0
- package/dist/esm/vehicle/eu-type-approval-number.js.map +7 -0
- package/dist/esm/vehicle/eu-vehicle-category.js +147 -0
- package/dist/esm/vehicle/eu-vehicle-category.js.map +7 -0
- package/dist/esm/vehicle/euro-emission-class.js +293 -0
- package/dist/esm/vehicle/euro-emission-class.js.map +7 -0
- package/dist/esm/vehicle/fuel-consumption-norm.js +186 -0
- package/dist/esm/vehicle/fuel-consumption-norm.js.map +7 -0
- package/dist/esm/vehicle/fuel-consumption.js +261 -0
- package/dist/esm/vehicle/fuel-consumption.js.map +7 -0
- package/dist/esm/vehicle/fuel-type.js +268 -0
- package/dist/esm/vehicle/fuel-type.js.map +7 -0
- package/dist/esm/vehicle/index.js +134 -0
- package/dist/esm/vehicle/index.js.map +7 -0
- package/dist/esm/vehicle/odometer-reading.js +145 -0
- package/dist/esm/vehicle/odometer-reading.js.map +7 -0
- package/dist/esm/vehicle/operating-hours.js +154 -0
- package/dist/esm/vehicle/operating-hours.js.map +7 -0
- package/dist/esm/vehicle/suspension-type.js +292 -0
- package/dist/esm/vehicle/suspension-type.js.map +7 -0
- package/dist/esm/vehicle/swedish-driving-license-category.js +384 -0
- package/dist/esm/vehicle/swedish-driving-license-category.js.map +7 -0
- package/dist/esm/vehicle/swedish-driving-license-vehicle-group.js +12 -0
- package/dist/esm/vehicle/swedish-driving-license-vehicle-group.js.map +7 -0
- package/dist/esm/vehicle/swedish-eco-vehicle-classification.js +212 -0
- package/dist/esm/vehicle/swedish-eco-vehicle-classification.js.map +7 -0
- package/dist/esm/vehicle/swedish-vehicle-registration-number.js +176 -0
- package/dist/esm/vehicle/swedish-vehicle-registration-number.js.map +7 -0
- package/dist/esm/vehicle/swedish-vehicle-status.js +152 -0
- package/dist/esm/vehicle/swedish-vehicle-status.js.map +7 -0
- package/dist/esm/vehicle/swedish-vehicle-type.js +262 -0
- package/dist/esm/vehicle/swedish-vehicle-type.js.map +7 -0
- package/dist/esm/vehicle/tire-dimension.js +186 -0
- package/dist/esm/vehicle/tire-dimension.js.map +7 -0
- package/dist/esm/vehicle/tire-type.js +208 -0
- package/dist/esm/vehicle/tire-type.js.map +7 -0
- package/dist/esm/vehicle/track-type.js +168 -0
- package/dist/esm/vehicle/track-type.js.map +7 -0
- package/dist/esm/vehicle/transmission-type.js +238 -0
- package/dist/esm/vehicle/transmission-type.js.map +7 -0
- package/dist/esm/vehicle/vehicle-extensions.js +15 -0
- package/dist/esm/vehicle/vehicle-extensions.js.map +7 -0
- package/dist/esm/vehicle/vehicle-identification-number.js +248 -0
- package/dist/esm/vehicle/vehicle-identification-number.js.map +7 -0
- package/dist/esm/vehicle/vehicle-masking.js +48 -0
- package/dist/esm/vehicle/vehicle-masking.js.map +7 -0
- package/dist/esm/vehicle/wheel-rim-dimension.js +163 -0
- package/dist/esm/vehicle/wheel-rim-dimension.js.map +7 -0
- package/dist/esm/web/email-address.js +522 -0
- package/dist/esm/web/email-address.js.map +7 -0
- package/dist/esm/web/index.js +16 -0
- package/dist/esm/web/index.js.map +7 -0
- package/dist/esm/web/url.js +333 -0
- package/dist/esm/web/url.js.map +7 -0
- package/dist/types/frequency-CweGfJFS.d.cts +329 -0
- package/dist/types/frequency-DdOMV6Sw.d.ts +329 -0
- package/dist/{index.d.cts → types/index.d.cts} +9 -0
- package/dist/{index.d.ts → types/index.d.ts} +9 -0
- package/dist/types/length-CceXIJYY.d.ts +354 -0
- package/dist/types/length-XRL5Eg7F.d.cts +354 -0
- package/dist/types/measurement/index.d.cts +136 -0
- package/dist/types/measurement/index.d.ts +136 -0
- package/dist/types/product/index.d.cts +1239 -0
- package/dist/types/product/index.d.ts +1239 -0
- package/dist/types/screen-size-BD4t3wzb.d.cts +473 -0
- package/dist/types/screen-size-DUmjNjxG.d.ts +473 -0
- package/dist/{text-scanning → types/text-scanning}/index.d.cts +50 -0
- package/dist/{text-scanning → types/text-scanning}/index.d.ts +50 -0
- package/dist/types/vehicle/index.d.cts +798 -0
- package/dist/types/vehicle/index.d.ts +798 -0
- package/dist/types/volume-CFA4e3dc.d.cts +175 -0
- package/dist/types/volume-DGLPQypt.d.ts +175 -0
- package/dist/types/weight-B30-Hzxu.d.ts +1057 -0
- package/dist/types/weight-C5C7OuV_.d.cts +1057 -0
- package/dist/types/wheel-rim-dimension-CVCmLASl.d.ts +699 -0
- package/dist/types/wheel-rim-dimension-CdkDrzad.d.cts +699 -0
- package/package.json +97 -62
- package/dist/banking/index.cjs +0 -6491
- package/dist/banking/index.cjs.map +0 -1
- package/dist/banking/index.js +0 -6464
- package/dist/banking/index.js.map +0 -1
- package/dist/contact/index.cjs +0 -6678
- package/dist/contact/index.cjs.map +0 -1
- package/dist/contact/index.js +0 -6586
- package/dist/contact/index.js.map +0 -1
- package/dist/finance/index.cjs +0 -3592
- package/dist/finance/index.cjs.map +0 -1
- package/dist/finance/index.js +0 -3584
- package/dist/finance/index.js.map +0 -1
- package/dist/geography/index.cjs +0 -4227
- package/dist/geography/index.cjs.map +0 -1
- package/dist/geography/index.js +0 -4202
- package/dist/geography/index.js.map +0 -1
- package/dist/index.cjs +0 -14087
- package/dist/index.cjs.map +0 -1
- package/dist/index.js +0 -13868
- package/dist/index.js.map +0 -1
- package/dist/organization/index.cjs +0 -2376
- package/dist/organization/index.cjs.map +0 -1
- package/dist/organization/index.js +0 -2346
- package/dist/organization/index.js.map +0 -1
- package/dist/person/index.cjs +0 -1144
- package/dist/person/index.cjs.map +0 -1
- package/dist/person/index.js +0 -1125
- package/dist/person/index.js.map +0 -1
- package/dist/property/index.cjs +0 -487
- package/dist/property/index.cjs.map +0 -1
- package/dist/property/index.js +0 -480
- package/dist/property/index.js.map +0 -1
- package/dist/sample-data/index.cjs +0 -12310
- package/dist/sample-data/index.cjs.map +0 -1
- package/dist/sample-data/index.js +0 -12302
- package/dist/sample-data/index.js.map +0 -1
- package/dist/text-scanning/index.cjs +0 -10414
- package/dist/text-scanning/index.cjs.map +0 -1
- package/dist/text-scanning/index.js +0 -10406
- package/dist/text-scanning/index.js.map +0 -1
- package/dist/validation/index.cjs +0 -83
- package/dist/validation/index.cjs.map +0 -1
- package/dist/validation/index.js +0 -79
- package/dist/validation/index.js.map +0 -1
- package/dist/web/index.cjs +0 -3994
- package/dist/web/index.cjs.map +0 -1
- package/dist/web/index.js +0 -3987
- package/dist/web/index.js.map +0 -1
- /package/dist/{banking → types/banking}/index.d.cts +0 -0
- /package/dist/{banking → types/banking}/index.d.ts +0 -0
- /package/dist/{contact → types/contact}/index.d.cts +0 -0
- /package/dist/{contact → types/contact}/index.d.ts +0 -0
- /package/dist/{country-BhD51LDL.d.cts → types/country-BhD51LDL.d.cts} +0 -0
- /package/dist/{country-p0n0EVQ9.d.ts → types/country-p0n0EVQ9.d.ts} +0 -0
- /package/dist/{finance → types/finance}/index.d.cts +0 -0
- /package/dist/{finance → types/finance}/index.d.ts +0 -0
- /package/dist/{geography → types/geography}/index.d.cts +0 -0
- /package/dist/{geography → types/geography}/index.d.ts +0 -0
- /package/dist/{isin-EeVPpNWu.d.ts → types/isin-EeVPpNWu.d.ts} +0 -0
- /package/dist/{isin-ZlQLBVm8.d.cts → types/isin-ZlQLBVm8.d.cts} +0 -0
- /package/dist/{organization → types/organization}/index.d.cts +0 -0
- /package/dist/{organization → types/organization}/index.d.ts +0 -0
- /package/dist/{person → types/person}/index.d.cts +0 -0
- /package/dist/{person → types/person}/index.d.ts +0 -0
- /package/dist/{person-full-name-Cmc9Ynuc.d.cts → types/person-full-name-Cmc9Ynuc.d.cts} +0 -0
- /package/dist/{person-full-name-D6Hbsab6.d.ts → types/person-full-name-D6Hbsab6.d.ts} +0 -0
- /package/dist/{phone-number-C24--ggy.d.ts → types/phone-number-C24--ggy.d.ts} +0 -0
- /package/dist/{phone-number-DZ-YxCQQ.d.cts → types/phone-number-DZ-YxCQQ.d.cts} +0 -0
- /package/dist/{property → types/property}/index.d.cts +0 -0
- /package/dist/{property → types/property}/index.d.ts +0 -0
- /package/dist/{sample-data → types/sample-data}/index.d.cts +0 -0
- /package/dist/{sample-data → types/sample-data}/index.d.ts +0 -0
- /package/dist/{swedish-address-DNC3ftRF.d.cts → types/swedish-address-DNC3ftRF.d.cts} +0 -0
- /package/dist/{swedish-address-GMzjqgxb.d.ts → types/swedish-address-GMzjqgxb.d.ts} +0 -0
- /package/dist/{swedish-bank-account-holder-name-BFJ8h1aO.d.cts → types/swedish-bank-account-holder-name-BFJ8h1aO.d.cts} +0 -0
- /package/dist/{swedish-bank-account-holder-name-CAAru07F.d.ts → types/swedish-bank-account-holder-name-CAAru07F.d.ts} +0 -0
- /package/dist/{swedish-municipality-DlUS7g7h.d.cts → types/swedish-municipality-DlUS7g7h.d.cts} +0 -0
- /package/dist/{swedish-municipality-nDRHYRAd.d.ts → types/swedish-municipality-nDRHYRAd.d.ts} +0 -0
- /package/dist/{swedish-organization-name-D7NvERxA.d.cts → types/swedish-organization-name-D7NvERxA.d.cts} +0 -0
- /package/dist/{swedish-organization-name-rR0Q836C.d.ts → types/swedish-organization-name-rR0Q836C.d.ts} +0 -0
- /package/dist/{swedish-organization-number-Bcj7V_lh.d.cts → types/swedish-organization-number-Bcj7V_lh.d.cts} +0 -0
- /package/dist/{swedish-organization-number-DM8dpXwR.d.ts → types/swedish-organization-number-DM8dpXwR.d.ts} +0 -0
- /package/dist/{swedish-organization-type-CZOdETwG.d.cts → types/swedish-organization-type-CZOdETwG.d.cts} +0 -0
- /package/dist/{swedish-organization-type-CZOdETwG.d.ts → types/swedish-organization-type-CZOdETwG.d.ts} +0 -0
- /package/dist/{swedish-personal-identity-number-BiIg4io3.d.ts → types/swedish-personal-identity-number-BiIg4io3.d.ts} +0 -0
- /package/dist/{swedish-personal-identity-number-Cp9Coz55.d.cts → types/swedish-personal-identity-number-Cp9Coz55.d.cts} +0 -0
- /package/dist/{swedish-property-designation-BM-gdd9x.d.ts → types/swedish-property-designation-BM-gdd9x.d.ts} +0 -0
- /package/dist/{swedish-property-designation-BaHXufqV.d.cts → types/swedish-property-designation-BaHXufqV.d.cts} +0 -0
- /package/dist/{swedish-sni-code-Ccsswpni.d.ts → types/swedish-sni-code-Ccsswpni.d.ts} +0 -0
- /package/dist/{swedish-sni-code-CuJFyM6l.d.cts → types/swedish-sni-code-CuJFyM6l.d.cts} +0 -0
- /package/dist/{swedish-swish-number-CL6Gx_h3.d.cts → types/swedish-swish-number-CL6Gx_h3.d.cts} +0 -0
- /package/dist/{swedish-swish-number-DDG3mNDg.d.ts → types/swedish-swish-number-DDG3mNDg.d.ts} +0 -0
- /package/dist/{text-candidate-qg2bD9PY.d.cts → types/text-candidate-qg2bD9PY.d.cts} +0 -0
- /package/dist/{text-candidate-qg2bD9PY.d.ts → types/text-candidate-qg2bD9PY.d.ts} +0 -0
- /package/dist/{validation → types/validation}/index.d.cts +0 -0
- /package/dist/{validation → types/validation}/index.d.ts +0 -0
- /package/dist/{web → types/web}/index.d.cts +0 -0
- /package/dist/{web → types/web}/index.d.ts +0 -0
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var decimal_exports = {};
|
|
20
|
+
__export(decimal_exports, {
|
|
21
|
+
Decimal: () => Decimal,
|
|
22
|
+
DecimalDivisionByZeroError: () => DecimalDivisionByZeroError,
|
|
23
|
+
DecimalOverflowError: () => DecimalOverflowError
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(decimal_exports);
|
|
26
|
+
const MAX_SCALE = 28;
|
|
27
|
+
const MAX_UNSCALED = (1n << 96n) - 1n;
|
|
28
|
+
const POW10_CACHE = [];
|
|
29
|
+
function pow10(exponent) {
|
|
30
|
+
if (exponent < 0) throw new RangeError("Negative power of ten.");
|
|
31
|
+
const cached = POW10_CACHE[exponent];
|
|
32
|
+
if (cached !== void 0) return cached;
|
|
33
|
+
let value = 1n;
|
|
34
|
+
for (let i = 0; i < exponent; i++) value *= 10n;
|
|
35
|
+
POW10_CACHE[exponent] = value;
|
|
36
|
+
return value;
|
|
37
|
+
}
|
|
38
|
+
function absBigInt(value) {
|
|
39
|
+
return value < 0n ? -value : value;
|
|
40
|
+
}
|
|
41
|
+
function divideRounded(numerator, denominator, mode) {
|
|
42
|
+
let n = numerator;
|
|
43
|
+
let d = denominator;
|
|
44
|
+
if (d < 0n) {
|
|
45
|
+
n = -n;
|
|
46
|
+
d = -d;
|
|
47
|
+
}
|
|
48
|
+
const negative = n < 0n;
|
|
49
|
+
const magnitude = negative ? -n : n;
|
|
50
|
+
let quotient = magnitude / d;
|
|
51
|
+
const doubledRemainder = magnitude % d * 2n;
|
|
52
|
+
if (doubledRemainder > d) {
|
|
53
|
+
quotient += 1n;
|
|
54
|
+
} else if (doubledRemainder === d) {
|
|
55
|
+
if (mode === "away-from-zero" || quotient % 2n === 1n) quotient += 1n;
|
|
56
|
+
}
|
|
57
|
+
return negative ? -quotient : quotient;
|
|
58
|
+
}
|
|
59
|
+
class DecimalOverflowError extends Error {
|
|
60
|
+
constructor() {
|
|
61
|
+
super("Decimal overflow.");
|
|
62
|
+
this.name = "DecimalOverflowError";
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
class DecimalDivisionByZeroError extends Error {
|
|
66
|
+
constructor() {
|
|
67
|
+
super("Decimal division by zero.");
|
|
68
|
+
this.name = "DecimalDivisionByZeroError";
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
const DECIMAL_PATTERN = /^[+-]?(?:\d+)(?:\.\d+)?$/;
|
|
72
|
+
class Decimal {
|
|
73
|
+
constructor(units, scale) {
|
|
74
|
+
this.units = units;
|
|
75
|
+
this.scale = scale;
|
|
76
|
+
}
|
|
77
|
+
units;
|
|
78
|
+
scale;
|
|
79
|
+
static zero = new Decimal(0n, 0);
|
|
80
|
+
static one = new Decimal(1n, 0);
|
|
81
|
+
/**
|
|
82
|
+
* Drops scale until the value fits in 96 bits and 28 fractional digits.
|
|
83
|
+
*
|
|
84
|
+
* .NET reduces precision before it gives up, which is why `1e-16 * 1e-16`
|
|
85
|
+
* yields a scale-28 zero rather than throwing.
|
|
86
|
+
*/
|
|
87
|
+
static fit(units, scale, mode) {
|
|
88
|
+
let u = units;
|
|
89
|
+
let s = scale;
|
|
90
|
+
while (s > MAX_SCALE || absBigInt(u) > MAX_UNSCALED) {
|
|
91
|
+
if (s === 0) throw new DecimalOverflowError();
|
|
92
|
+
let dropped = Math.max(1, s - MAX_SCALE);
|
|
93
|
+
let rounded = divideRounded(u, pow10(dropped), mode);
|
|
94
|
+
while (absBigInt(rounded) > MAX_UNSCALED && dropped < s) {
|
|
95
|
+
dropped += 1;
|
|
96
|
+
rounded = divideRounded(u, pow10(dropped), mode);
|
|
97
|
+
}
|
|
98
|
+
u = rounded;
|
|
99
|
+
s -= dropped;
|
|
100
|
+
}
|
|
101
|
+
return new Decimal(u, s);
|
|
102
|
+
}
|
|
103
|
+
/** Builds a value from an integer. Throws if it does not fit. */
|
|
104
|
+
static fromBigInt(value) {
|
|
105
|
+
if (absBigInt(value) > MAX_UNSCALED) throw new DecimalOverflowError();
|
|
106
|
+
return new Decimal(value, 0);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Parses a plain decimal literal such as `-12.750`. Trailing zeros are
|
|
110
|
+
* significant and preserved, as in .NET. Exponent notation is not accepted.
|
|
111
|
+
* Returns `null` when the input is malformed or too large.
|
|
112
|
+
*/
|
|
113
|
+
static parse(input) {
|
|
114
|
+
if (!DECIMAL_PATTERN.test(input)) return null;
|
|
115
|
+
const negative = input.startsWith("-");
|
|
116
|
+
const unsigned = input.startsWith("+") || negative ? input.slice(1) : input;
|
|
117
|
+
const pointIndex = unsigned.indexOf(".");
|
|
118
|
+
const integerDigits = pointIndex < 0 ? unsigned : unsigned.slice(0, pointIndex);
|
|
119
|
+
const fractionDigits = pointIndex < 0 ? "" : unsigned.slice(pointIndex + 1);
|
|
120
|
+
let units = BigInt(integerDigits + fractionDigits);
|
|
121
|
+
if (negative) units = -units;
|
|
122
|
+
try {
|
|
123
|
+
return Decimal.fit(units, fractionDigits.length, "half-even");
|
|
124
|
+
} catch {
|
|
125
|
+
return null;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Converts a `number`, expanding the exponent notation JavaScript uses for
|
|
130
|
+
* very large and very small magnitudes so that `1e-7` parses as
|
|
131
|
+
* `0.0000001`. Returns `null` for non-finite input or a magnitude outside the
|
|
132
|
+
* representable range.
|
|
133
|
+
*/
|
|
134
|
+
static fromNumber(value) {
|
|
135
|
+
if (!Number.isFinite(value)) return null;
|
|
136
|
+
const rendered = String(value);
|
|
137
|
+
const exponentIndex = rendered.search(/[eE]/u);
|
|
138
|
+
if (exponentIndex < 0) return Decimal.parse(rendered);
|
|
139
|
+
const exponent = Number(rendered.slice(exponentIndex + 1));
|
|
140
|
+
const mantissa = rendered.slice(0, exponentIndex);
|
|
141
|
+
const negative = mantissa.startsWith("-");
|
|
142
|
+
const unsigned = negative ? mantissa.slice(1) : mantissa;
|
|
143
|
+
const pointIndex = unsigned.indexOf(".");
|
|
144
|
+
const digits = pointIndex < 0 ? unsigned : unsigned.replace(".", "");
|
|
145
|
+
const pointPosition = (pointIndex < 0 ? unsigned.length : pointIndex) + exponent;
|
|
146
|
+
let expanded;
|
|
147
|
+
if (pointPosition <= 0) expanded = `0.${"0".repeat(-pointPosition)}${digits}`;
|
|
148
|
+
else if (pointPosition >= digits.length)
|
|
149
|
+
expanded = digits + "0".repeat(pointPosition - digits.length);
|
|
150
|
+
else expanded = `${digits.slice(0, pointPosition)}.${digits.slice(pointPosition)}`;
|
|
151
|
+
return Decimal.parse(negative ? `-${expanded}` : expanded);
|
|
152
|
+
}
|
|
153
|
+
get isZero() {
|
|
154
|
+
return this.units === 0n;
|
|
155
|
+
}
|
|
156
|
+
get isNegative() {
|
|
157
|
+
return this.units < 0n;
|
|
158
|
+
}
|
|
159
|
+
plus(other) {
|
|
160
|
+
const scale = Math.max(this.scale, other.scale);
|
|
161
|
+
const a = this.units * pow10(scale - this.scale);
|
|
162
|
+
const b = other.units * pow10(scale - other.scale);
|
|
163
|
+
return Decimal.fit(a + b, scale, "half-even");
|
|
164
|
+
}
|
|
165
|
+
minus(other) {
|
|
166
|
+
const scale = Math.max(this.scale, other.scale);
|
|
167
|
+
const a = this.units * pow10(scale - this.scale);
|
|
168
|
+
const b = other.units * pow10(scale - other.scale);
|
|
169
|
+
return Decimal.fit(a - b, scale, "half-even");
|
|
170
|
+
}
|
|
171
|
+
/** Scales add, as in .NET: `1.0 * 1.0` is `1.00`. */
|
|
172
|
+
times(other) {
|
|
173
|
+
return Decimal.fit(this.units * other.units, this.scale + other.scale, "half-even");
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Divides at the highest precision that still fits, which is how .NET arrives
|
|
177
|
+
* at `1m / 0.0254m === 39.370078740157480314960629921` — 27 fractional
|
|
178
|
+
* digits, because 28 would not fit in 96 bits.
|
|
179
|
+
*
|
|
180
|
+
* Unlike the other operations, division discards trailing zeros down to a
|
|
181
|
+
* preferred scale of `dividend scale - divisor scale`. That is what makes
|
|
182
|
+
* `536870912m / 2.5m` come out as `214748364.8` while `1.00m / 2m` keeps both
|
|
183
|
+
* digits as `0.50`.
|
|
184
|
+
*/
|
|
185
|
+
dividedBy(other) {
|
|
186
|
+
if (other.units === 0n) throw new DecimalDivisionByZeroError();
|
|
187
|
+
const preferredScale = Math.max(0, this.scale - other.scale);
|
|
188
|
+
for (let target = MAX_SCALE; target >= 0; target--) {
|
|
189
|
+
const shift = target - this.scale + other.scale;
|
|
190
|
+
let numerator = this.units;
|
|
191
|
+
let denominator = other.units;
|
|
192
|
+
if (shift >= 0) numerator *= pow10(shift);
|
|
193
|
+
else denominator *= pow10(-shift);
|
|
194
|
+
let quotient = divideRounded(numerator, denominator, "half-even");
|
|
195
|
+
if (absBigInt(quotient) > MAX_UNSCALED) continue;
|
|
196
|
+
const floorScale = quotient === 0n ? 0 : preferredScale;
|
|
197
|
+
let scale = target;
|
|
198
|
+
while (scale > floorScale && quotient % 10n === 0n) {
|
|
199
|
+
quotient /= 10n;
|
|
200
|
+
scale -= 1;
|
|
201
|
+
}
|
|
202
|
+
return new Decimal(quotient, scale);
|
|
203
|
+
}
|
|
204
|
+
throw new DecimalOverflowError();
|
|
205
|
+
}
|
|
206
|
+
negated() {
|
|
207
|
+
return new Decimal(-this.units, this.scale);
|
|
208
|
+
}
|
|
209
|
+
abs() {
|
|
210
|
+
return this.units < 0n ? this.negated() : this;
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Rounds to `decimals` fractional digits. Asking for more digits than the
|
|
214
|
+
* value carries leaves it untouched, matching .NET `Math.Round`.
|
|
215
|
+
*/
|
|
216
|
+
round(decimals, mode = "half-even") {
|
|
217
|
+
if (!Number.isInteger(decimals) || decimals < 0 || decimals > MAX_SCALE) {
|
|
218
|
+
throw new RangeError(`Decimals must be an integer from 0 through ${MAX_SCALE}.`);
|
|
219
|
+
}
|
|
220
|
+
if (decimals >= this.scale) return this;
|
|
221
|
+
const dropped = this.scale - decimals;
|
|
222
|
+
return new Decimal(divideRounded(this.units, pow10(dropped), mode), decimals);
|
|
223
|
+
}
|
|
224
|
+
/** Compares by value; scale is ignored, so `1.0` and `1.00` are equal. */
|
|
225
|
+
compareTo(other) {
|
|
226
|
+
const scale = Math.max(this.scale, other.scale);
|
|
227
|
+
const a = this.units * pow10(scale - this.scale);
|
|
228
|
+
const b = other.units * pow10(scale - other.scale);
|
|
229
|
+
return a < b ? -1 : a > b ? 1 : 0;
|
|
230
|
+
}
|
|
231
|
+
equals(other) {
|
|
232
|
+
return this.compareTo(other) === 0;
|
|
233
|
+
}
|
|
234
|
+
/** Renders with trailing zeros intact, as .NET does. */
|
|
235
|
+
toString() {
|
|
236
|
+
const negative = this.units < 0n;
|
|
237
|
+
const digits = absBigInt(this.units).toString();
|
|
238
|
+
if (this.scale === 0) return negative ? `-${digits}` : digits;
|
|
239
|
+
const padded = digits.padStart(this.scale + 1, "0");
|
|
240
|
+
const split = padded.length - this.scale;
|
|
241
|
+
const rendered = `${padded.slice(0, split)}.${padded.slice(split)}`;
|
|
242
|
+
return negative ? `-${rendered}` : rendered;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Renders without trailing fractional zeros, e.g. `0.9144` rather than
|
|
246
|
+
* `0.914400`. This is the form the quantity types display.
|
|
247
|
+
*/
|
|
248
|
+
toTrimmedString() {
|
|
249
|
+
const rendered = this.toString();
|
|
250
|
+
if (!rendered.includes(".")) return rendered;
|
|
251
|
+
return rendered.replace(/0+$/, "").replace(/\.$/, "");
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Converts to a binary `number` for ergonomic consumer-facing accessors.
|
|
255
|
+
* Lossy beyond 17 significant digits — never round-trip a value through this
|
|
256
|
+
* on the normalization path.
|
|
257
|
+
*/
|
|
258
|
+
toNumber() {
|
|
259
|
+
return Number(this.toString());
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
//# sourceMappingURL=decimal.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/internal/decimal.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Exact base-10 arithmetic matching the observable semantics of .NET\n * `System.Decimal`, which is what every `Measurement` quantity in\n * `Buildi.Primitives` stores its value as.\n *\n * A binary `number` cannot stand in here. Unit conversion multiplies by exact\n * decimal factors, and the result is what `normalize()` writes out as the\n * canonical storage form:\n *\n * ```text\n * 3 ft -> meters number: 0.9144000000000001 decimal: 0.9144\n * ```\n *\n * Since `isNormalized(input)` is defined as `input === normalize(input)`, that\n * drift would break the contract the package is built around, and would fail\n * the parity vectors ported from the .NET test suite.\n *\n * A value is `units / 10 ** scale`. Both the 96-bit magnitude limit and the\n * maximum scale of 28 are reproduced so that inputs .NET rejects as overflow\n * are rejected here too.\n *\n * Equivalent of .NET `System.Decimal`. Internal; not re-exported publicly.\n */\n\n/** Largest number of fractional digits a .NET decimal can carry. */\nconst MAX_SCALE = 28;\n\n/** 2^96 - 1 \u2014 the largest unscaled magnitude, i.e. `decimal.MaxValue`. */\nconst MAX_UNSCALED = (1n << 96n) - 1n;\n\n/**\n * How to break a tie when discarding digits.\n *\n * .NET uses `HalfEven` for arithmetic (verified: `1m / 536870912m` yields\n * `0.0000000018626451492309570312`, keeping the even `2` where away-from-zero\n * would produce `3`), while `Math.Round(x, n, MidpointRounding.AwayFromZero)`\n * is what the quantity formatters ask for explicitly.\n */\nexport type RoundingMode = \"half-even\" | \"away-from-zero\";\n\nconst POW10_CACHE: bigint[] = [];\n\nfunction pow10(exponent: number): bigint {\n if (exponent < 0) throw new RangeError(\"Negative power of ten.\");\n const cached = POW10_CACHE[exponent];\n if (cached !== undefined) return cached;\n let value = 1n;\n for (let i = 0; i < exponent; i++) value *= 10n;\n POW10_CACHE[exponent] = value;\n return value;\n}\n\nfunction absBigInt(value: bigint): bigint {\n return value < 0n ? -value : value;\n}\n\n/** Divides and rounds in one step, keeping the sign out of the tie logic. */\nfunction divideRounded(numerator: bigint, denominator: bigint, mode: RoundingMode): bigint {\n let n = numerator;\n let d = denominator;\n if (d < 0n) {\n n = -n;\n d = -d;\n }\n\n const negative = n < 0n;\n const magnitude = negative ? -n : n;\n\n let quotient = magnitude / d;\n const doubledRemainder = (magnitude % d) * 2n;\n\n if (doubledRemainder > d) {\n quotient += 1n;\n } else if (doubledRemainder === d) {\n if (mode === \"away-from-zero\" || quotient % 2n === 1n) quotient += 1n;\n }\n\n return negative ? -quotient : quotient;\n}\n\n/** Thrown when a result cannot be represented, mirroring .NET `OverflowException`. */\nexport class DecimalOverflowError extends Error {\n constructor() {\n super(\"Decimal overflow.\");\n this.name = \"DecimalOverflowError\";\n }\n}\n\n/** Thrown by division by zero, mirroring .NET `DivideByZeroException`. */\nexport class DecimalDivisionByZeroError extends Error {\n constructor() {\n super(\"Decimal division by zero.\");\n this.name = \"DecimalDivisionByZeroError\";\n }\n}\n\nconst DECIMAL_PATTERN = /^[+-]?(?:\\d+)(?:\\.\\d+)?$/;\n\nexport class Decimal {\n static readonly zero = new Decimal(0n, 0);\n static readonly one = new Decimal(1n, 0);\n\n private constructor(\n private readonly units: bigint,\n private readonly scale: number,\n ) {}\n\n /**\n * Drops scale until the value fits in 96 bits and 28 fractional digits.\n *\n * .NET reduces precision before it gives up, which is why `1e-16 * 1e-16`\n * yields a scale-28 zero rather than throwing.\n */\n private static fit(units: bigint, scale: number, mode: RoundingMode): Decimal {\n let u = units;\n let s = scale;\n while (s > MAX_SCALE || absBigInt(u) > MAX_UNSCALED) {\n if (s === 0) throw new DecimalOverflowError();\n let dropped = Math.max(1, s - MAX_SCALE);\n let rounded = divideRounded(u, pow10(dropped), mode);\n while (absBigInt(rounded) > MAX_UNSCALED && dropped < s) {\n dropped += 1;\n rounded = divideRounded(u, pow10(dropped), mode);\n }\n u = rounded;\n s -= dropped;\n }\n return new Decimal(u, s);\n }\n\n /** Builds a value from an integer. Throws if it does not fit. */\n static fromBigInt(value: bigint): Decimal {\n if (absBigInt(value) > MAX_UNSCALED) throw new DecimalOverflowError();\n return new Decimal(value, 0);\n }\n\n /**\n * Parses a plain decimal literal such as `-12.750`. Trailing zeros are\n * significant and preserved, as in .NET. Exponent notation is not accepted.\n * Returns `null` when the input is malformed or too large.\n */\n static parse(input: string): Decimal | null {\n if (!DECIMAL_PATTERN.test(input)) return null;\n\n const negative = input.startsWith(\"-\");\n const unsigned = input.startsWith(\"+\") || negative ? input.slice(1) : input;\n\n const pointIndex = unsigned.indexOf(\".\");\n const integerDigits = pointIndex < 0 ? unsigned : unsigned.slice(0, pointIndex);\n const fractionDigits = pointIndex < 0 ? \"\" : unsigned.slice(pointIndex + 1);\n\n let units = BigInt(integerDigits + fractionDigits);\n if (negative) units = -units;\n\n try {\n return Decimal.fit(units, fractionDigits.length, \"half-even\");\n } catch {\n return null;\n }\n }\n\n /**\n * Converts a `number`, expanding the exponent notation JavaScript uses for\n * very large and very small magnitudes so that `1e-7` parses as\n * `0.0000001`. Returns `null` for non-finite input or a magnitude outside the\n * representable range.\n */\n static fromNumber(value: number): Decimal | null {\n if (!Number.isFinite(value)) return null;\n\n const rendered = String(value);\n const exponentIndex = rendered.search(/[eE]/u);\n if (exponentIndex < 0) return Decimal.parse(rendered);\n\n const exponent = Number(rendered.slice(exponentIndex + 1));\n const mantissa = rendered.slice(0, exponentIndex);\n const negative = mantissa.startsWith(\"-\");\n const unsigned = negative ? mantissa.slice(1) : mantissa;\n\n const pointIndex = unsigned.indexOf(\".\");\n const digits = pointIndex < 0 ? unsigned : unsigned.replace(\".\", \"\");\n const pointPosition = (pointIndex < 0 ? unsigned.length : pointIndex) + exponent;\n\n let expanded: string;\n if (pointPosition <= 0) expanded = `0.${\"0\".repeat(-pointPosition)}${digits}`;\n else if (pointPosition >= digits.length)\n expanded = digits + \"0\".repeat(pointPosition - digits.length);\n else expanded = `${digits.slice(0, pointPosition)}.${digits.slice(pointPosition)}`;\n\n return Decimal.parse(negative ? `-${expanded}` : expanded);\n }\n\n get isZero(): boolean {\n return this.units === 0n;\n }\n\n get isNegative(): boolean {\n return this.units < 0n;\n }\n\n plus(other: Decimal): Decimal {\n const scale = Math.max(this.scale, other.scale);\n const a = this.units * pow10(scale - this.scale);\n const b = other.units * pow10(scale - other.scale);\n return Decimal.fit(a + b, scale, \"half-even\");\n }\n\n minus(other: Decimal): Decimal {\n const scale = Math.max(this.scale, other.scale);\n const a = this.units * pow10(scale - this.scale);\n const b = other.units * pow10(scale - other.scale);\n return Decimal.fit(a - b, scale, \"half-even\");\n }\n\n /** Scales add, as in .NET: `1.0 * 1.0` is `1.00`. */\n times(other: Decimal): Decimal {\n return Decimal.fit(this.units * other.units, this.scale + other.scale, \"half-even\");\n }\n\n /**\n * Divides at the highest precision that still fits, which is how .NET arrives\n * at `1m / 0.0254m === 39.370078740157480314960629921` \u2014 27 fractional\n * digits, because 28 would not fit in 96 bits.\n *\n * Unlike the other operations, division discards trailing zeros down to a\n * preferred scale of `dividend scale - divisor scale`. That is what makes\n * `536870912m / 2.5m` come out as `214748364.8` while `1.00m / 2m` keeps both\n * digits as `0.50`.\n */\n dividedBy(other: Decimal): Decimal {\n if (other.units === 0n) throw new DecimalDivisionByZeroError();\n\n const preferredScale = Math.max(0, this.scale - other.scale);\n\n for (let target = MAX_SCALE; target >= 0; target--) {\n const shift = target - this.scale + other.scale;\n let numerator = this.units;\n let denominator = other.units;\n if (shift >= 0) numerator *= pow10(shift);\n else denominator *= pow10(-shift);\n\n let quotient = divideRounded(numerator, denominator, \"half-even\");\n if (absBigInt(quotient) > MAX_UNSCALED) continue;\n\n // A quotient that underflows to zero loses its scale entirely rather\n // than honouring the preferred scale.\n const floorScale = quotient === 0n ? 0 : preferredScale;\n\n let scale = target;\n while (scale > floorScale && quotient % 10n === 0n) {\n quotient /= 10n;\n scale -= 1;\n }\n return new Decimal(quotient, scale);\n }\n\n throw new DecimalOverflowError();\n }\n\n negated(): Decimal {\n return new Decimal(-this.units, this.scale);\n }\n\n abs(): Decimal {\n return this.units < 0n ? this.negated() : this;\n }\n\n /**\n * Rounds to `decimals` fractional digits. Asking for more digits than the\n * value carries leaves it untouched, matching .NET `Math.Round`.\n */\n round(decimals: number, mode: RoundingMode = \"half-even\"): Decimal {\n if (!Number.isInteger(decimals) || decimals < 0 || decimals > MAX_SCALE) {\n throw new RangeError(`Decimals must be an integer from 0 through ${MAX_SCALE}.`);\n }\n if (decimals >= this.scale) return this;\n const dropped = this.scale - decimals;\n return new Decimal(divideRounded(this.units, pow10(dropped), mode), decimals);\n }\n\n /** Compares by value; scale is ignored, so `1.0` and `1.00` are equal. */\n compareTo(other: Decimal): number {\n const scale = Math.max(this.scale, other.scale);\n const a = this.units * pow10(scale - this.scale);\n const b = other.units * pow10(scale - other.scale);\n return a < b ? -1 : a > b ? 1 : 0;\n }\n\n equals(other: Decimal): boolean {\n return this.compareTo(other) === 0;\n }\n\n /** Renders with trailing zeros intact, as .NET does. */\n toString(): string {\n const negative = this.units < 0n;\n const digits = absBigInt(this.units).toString();\n\n if (this.scale === 0) return negative ? `-${digits}` : digits;\n\n const padded = digits.padStart(this.scale + 1, \"0\");\n const split = padded.length - this.scale;\n const rendered = `${padded.slice(0, split)}.${padded.slice(split)}`;\n return negative ? `-${rendered}` : rendered;\n }\n\n /**\n * Renders without trailing fractional zeros, e.g. `0.9144` rather than\n * `0.914400`. This is the form the quantity types display.\n */\n toTrimmedString(): string {\n const rendered = this.toString();\n if (!rendered.includes(\".\")) return rendered;\n return rendered.replace(/0+$/, \"\").replace(/\\.$/, \"\");\n }\n\n /**\n * Converts to a binary `number` for ergonomic consumer-facing accessors.\n * Lossy beyond 17 significant digits \u2014 never round-trip a value through this\n * on the normalization path.\n */\n toNumber(): number {\n return Number(this.toString());\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var gs1_prefix_exports = {};
|
|
20
|
+
__export(gs1_prefix_exports, {
|
|
21
|
+
resolveGs1Prefix: () => resolveGs1Prefix
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(gs1_prefix_exports);
|
|
24
|
+
const RANGES = [
|
|
25
|
+
[0, 19, "USA & Canada", null],
|
|
26
|
+
[20, 29, "Restricted distribution", null],
|
|
27
|
+
[30, 39, "USA (drugs)", "US"],
|
|
28
|
+
[40, 49, "Restricted distribution", null],
|
|
29
|
+
[50, 59, "Coupons (USA)", null],
|
|
30
|
+
[60, 99, "USA & Canada", null],
|
|
31
|
+
[100, 139, "USA", "US"],
|
|
32
|
+
[200, 299, "Restricted distribution (in-store)", null],
|
|
33
|
+
[300, 379, "France & Monaco", "FR"],
|
|
34
|
+
[380, 380, "Bulgaria", "BG"],
|
|
35
|
+
[383, 383, "Slovenia", "SI"],
|
|
36
|
+
[385, 385, "Croatia", "HR"],
|
|
37
|
+
[387, 387, "Bosnia & Herzegovina", "BA"],
|
|
38
|
+
[389, 389, "Montenegro", "ME"],
|
|
39
|
+
[390, 390, "Kosovo", "XK"],
|
|
40
|
+
[400, 440, "Germany", "DE"],
|
|
41
|
+
[450, 459, "Japan", "JP"],
|
|
42
|
+
[460, 469, "Russia", "RU"],
|
|
43
|
+
[470, 470, "Kyrgyzstan", "KG"],
|
|
44
|
+
[471, 471, "Taiwan", "TW"],
|
|
45
|
+
[474, 474, "Estonia", "EE"],
|
|
46
|
+
[475, 475, "Latvia", "LV"],
|
|
47
|
+
[476, 476, "Azerbaijan", "AZ"],
|
|
48
|
+
[477, 477, "Lithuania", "LT"],
|
|
49
|
+
[478, 478, "Uzbekistan", "UZ"],
|
|
50
|
+
[479, 479, "Sri Lanka", "LK"],
|
|
51
|
+
[480, 480, "Philippines", "PH"],
|
|
52
|
+
[481, 481, "Belarus", "BY"],
|
|
53
|
+
[482, 482, "Ukraine", "UA"],
|
|
54
|
+
[484, 484, "Moldova", "MD"],
|
|
55
|
+
[485, 485, "Armenia", "AM"],
|
|
56
|
+
[486, 486, "Georgia", "GE"],
|
|
57
|
+
[487, 487, "Kazakhstan", "KZ"],
|
|
58
|
+
[488, 488, "Tajikistan", "TJ"],
|
|
59
|
+
[489, 489, "Hong Kong", "HK"],
|
|
60
|
+
[490, 499, "Japan", "JP"],
|
|
61
|
+
[500, 509, "United Kingdom", "GB"],
|
|
62
|
+
[520, 521, "Greece", "GR"],
|
|
63
|
+
[528, 528, "Lebanon", "LB"],
|
|
64
|
+
[529, 529, "Cyprus", "CY"],
|
|
65
|
+
[530, 530, "Albania", "AL"],
|
|
66
|
+
[531, 531, "North Macedonia", "MK"],
|
|
67
|
+
[535, 535, "Malta", "MT"],
|
|
68
|
+
[539, 539, "Ireland", "IE"],
|
|
69
|
+
[540, 549, "Belgium & Luxembourg", "BE"],
|
|
70
|
+
[560, 560, "Portugal", "PT"],
|
|
71
|
+
[569, 569, "Iceland", "IS"],
|
|
72
|
+
[570, 579, "Denmark", "DK"],
|
|
73
|
+
[590, 590, "Poland", "PL"],
|
|
74
|
+
[594, 594, "Romania", "RO"],
|
|
75
|
+
[599, 599, "Hungary", "HU"],
|
|
76
|
+
[600, 601, "South Africa", "ZA"],
|
|
77
|
+
[603, 603, "Ghana", "GH"],
|
|
78
|
+
[604, 604, "Senegal", "SN"],
|
|
79
|
+
[608, 608, "Bahrain", "BH"],
|
|
80
|
+
[609, 609, "Mauritius", "MU"],
|
|
81
|
+
[611, 611, "Morocco", "MA"],
|
|
82
|
+
[613, 613, "Algeria", "DZ"],
|
|
83
|
+
[615, 615, "Nigeria", "NG"],
|
|
84
|
+
[616, 616, "Kenya", "KE"],
|
|
85
|
+
[617, 617, "Cameroon", "CM"],
|
|
86
|
+
[618, 618, "Ivory Coast", "CI"],
|
|
87
|
+
[619, 619, "Tunisia", "TN"],
|
|
88
|
+
[620, 620, "Tanzania", "TZ"],
|
|
89
|
+
[621, 621, "Syria", "SY"],
|
|
90
|
+
[622, 622, "Egypt", "EG"],
|
|
91
|
+
[623, 623, "Brunei", "BN"],
|
|
92
|
+
[624, 624, "Libya", "LY"],
|
|
93
|
+
[625, 625, "Jordan", "JO"],
|
|
94
|
+
[626, 626, "Iran", "IR"],
|
|
95
|
+
[627, 627, "Kuwait", "KW"],
|
|
96
|
+
[628, 628, "Saudi Arabia", "SA"],
|
|
97
|
+
[629, 629, "United Arab Emirates", "AE"],
|
|
98
|
+
[640, 649, "Finland", "FI"],
|
|
99
|
+
[690, 699, "China", "CN"],
|
|
100
|
+
[700, 709, "Norway", "NO"],
|
|
101
|
+
[729, 729, "Israel", "IL"],
|
|
102
|
+
[730, 739, "Sweden", "SE"],
|
|
103
|
+
[740, 740, "Guatemala", "GT"],
|
|
104
|
+
[741, 741, "El Salvador", "SV"],
|
|
105
|
+
[742, 742, "Honduras", "HN"],
|
|
106
|
+
[743, 743, "Nicaragua", "NI"],
|
|
107
|
+
[744, 744, "Costa Rica", "CR"],
|
|
108
|
+
[745, 745, "Panama", "PA"],
|
|
109
|
+
[746, 746, "Dominican Republic", "DO"],
|
|
110
|
+
[750, 750, "Mexico", "MX"],
|
|
111
|
+
[754, 755, "Canada", "CA"],
|
|
112
|
+
[759, 759, "Venezuela", "VE"],
|
|
113
|
+
[760, 769, "Switzerland & Liechtenstein", "CH"],
|
|
114
|
+
[770, 771, "Colombia", "CO"],
|
|
115
|
+
[773, 773, "Uruguay", "UY"],
|
|
116
|
+
[775, 775, "Peru", "PE"],
|
|
117
|
+
[777, 777, "Bolivia", "BO"],
|
|
118
|
+
[778, 779, "Argentina", "AR"],
|
|
119
|
+
[780, 780, "Chile", "CL"],
|
|
120
|
+
[784, 784, "Paraguay", "PY"],
|
|
121
|
+
[786, 786, "Ecuador", "EC"],
|
|
122
|
+
[789, 790, "Brazil", "BR"],
|
|
123
|
+
[800, 839, "Italy", "IT"],
|
|
124
|
+
[840, 849, "Spain & Andorra", "ES"],
|
|
125
|
+
[850, 850, "Cuba", "CU"],
|
|
126
|
+
[858, 858, "Slovakia", "SK"],
|
|
127
|
+
[859, 859, "Czech Republic", "CZ"],
|
|
128
|
+
[860, 860, "Serbia", "RS"],
|
|
129
|
+
[865, 865, "Mongolia", "MN"],
|
|
130
|
+
[867, 867, "North Korea", "KP"],
|
|
131
|
+
[868, 869, "Turkey", "TR"],
|
|
132
|
+
[870, 879, "Netherlands", "NL"],
|
|
133
|
+
[880, 880, "South Korea", "KR"],
|
|
134
|
+
[884, 884, "Cambodia", "KH"],
|
|
135
|
+
[885, 885, "Thailand", "TH"],
|
|
136
|
+
[888, 888, "Singapore", "SG"],
|
|
137
|
+
[890, 890, "India", "IN"],
|
|
138
|
+
[893, 893, "Vietnam", "VN"],
|
|
139
|
+
[896, 896, "Pakistan", "PK"],
|
|
140
|
+
[899, 899, "Indonesia", "ID"],
|
|
141
|
+
[900, 919, "Austria", "AT"],
|
|
142
|
+
[930, 939, "Australia", "AU"],
|
|
143
|
+
[940, 949, "New Zealand", "NZ"],
|
|
144
|
+
[950, 950, "GS1 Global Office", null],
|
|
145
|
+
[951, 951, "GS1 Global Office (EPC)", null],
|
|
146
|
+
[955, 955, "Malaysia", "MY"],
|
|
147
|
+
[958, 958, "Macau", "MO"],
|
|
148
|
+
[960, 969, "GS1 Global Office (GTIN-8)", null],
|
|
149
|
+
[977, 977, "Periodicals (ISSN)", null],
|
|
150
|
+
[978, 979, "Books (ISBN)", null],
|
|
151
|
+
[980, 980, "Refund receipts", null],
|
|
152
|
+
[981, 984, "Common currency coupons", null],
|
|
153
|
+
[990, 999, "Coupons", null]
|
|
154
|
+
];
|
|
155
|
+
function resolveGs1Prefix(prefix) {
|
|
156
|
+
if (prefix.length < 1) return null;
|
|
157
|
+
const value = Number(prefix.length <= 3 ? prefix : prefix.slice(0, 3));
|
|
158
|
+
if (!Number.isInteger(value)) return null;
|
|
159
|
+
for (const [from, to, name, countryCode] of RANGES) {
|
|
160
|
+
if (value >= from && value <= to) return { name, countryCode };
|
|
161
|
+
}
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=gs1-prefix.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/internal/gs1-prefix.ts"],
|
|
4
|
+
"sourcesContent": ["/** A GS1 prefix range and the organization or country it identifies. */\nexport interface Gs1PrefixAssignment {\n /** Organization or country name, e.g. `Sweden`. */\n readonly name: string;\n /** ISO 3166-1 alpha-2 code, or `null` for non-country assignments such as ISBN. */\n readonly countryCode: string | null;\n}\n\n/**\n * GS1 company prefix ranges, maintained by GS1 and published at\n * https://www.gs1.org/standards/id-keys/company-prefix.\n */\nconst RANGES: readonly (readonly [number, number, string, string | null])[] = [\n [0, 19, \"USA & Canada\", null],\n [20, 29, \"Restricted distribution\", null],\n [30, 39, \"USA (drugs)\", \"US\"],\n [40, 49, \"Restricted distribution\", null],\n [50, 59, \"Coupons (USA)\", null],\n [60, 99, \"USA & Canada\", null],\n [100, 139, \"USA\", \"US\"],\n [200, 299, \"Restricted distribution (in-store)\", null],\n [300, 379, \"France & Monaco\", \"FR\"],\n [380, 380, \"Bulgaria\", \"BG\"],\n [383, 383, \"Slovenia\", \"SI\"],\n [385, 385, \"Croatia\", \"HR\"],\n [387, 387, \"Bosnia & Herzegovina\", \"BA\"],\n [389, 389, \"Montenegro\", \"ME\"],\n [390, 390, \"Kosovo\", \"XK\"],\n [400, 440, \"Germany\", \"DE\"],\n [450, 459, \"Japan\", \"JP\"],\n [460, 469, \"Russia\", \"RU\"],\n [470, 470, \"Kyrgyzstan\", \"KG\"],\n [471, 471, \"Taiwan\", \"TW\"],\n [474, 474, \"Estonia\", \"EE\"],\n [475, 475, \"Latvia\", \"LV\"],\n [476, 476, \"Azerbaijan\", \"AZ\"],\n [477, 477, \"Lithuania\", \"LT\"],\n [478, 478, \"Uzbekistan\", \"UZ\"],\n [479, 479, \"Sri Lanka\", \"LK\"],\n [480, 480, \"Philippines\", \"PH\"],\n [481, 481, \"Belarus\", \"BY\"],\n [482, 482, \"Ukraine\", \"UA\"],\n [484, 484, \"Moldova\", \"MD\"],\n [485, 485, \"Armenia\", \"AM\"],\n [486, 486, \"Georgia\", \"GE\"],\n [487, 487, \"Kazakhstan\", \"KZ\"],\n [488, 488, \"Tajikistan\", \"TJ\"],\n [489, 489, \"Hong Kong\", \"HK\"],\n [490, 499, \"Japan\", \"JP\"],\n [500, 509, \"United Kingdom\", \"GB\"],\n [520, 521, \"Greece\", \"GR\"],\n [528, 528, \"Lebanon\", \"LB\"],\n [529, 529, \"Cyprus\", \"CY\"],\n [530, 530, \"Albania\", \"AL\"],\n [531, 531, \"North Macedonia\", \"MK\"],\n [535, 535, \"Malta\", \"MT\"],\n [539, 539, \"Ireland\", \"IE\"],\n [540, 549, \"Belgium & Luxembourg\", \"BE\"],\n [560, 560, \"Portugal\", \"PT\"],\n [569, 569, \"Iceland\", \"IS\"],\n [570, 579, \"Denmark\", \"DK\"],\n [590, 590, \"Poland\", \"PL\"],\n [594, 594, \"Romania\", \"RO\"],\n [599, 599, \"Hungary\", \"HU\"],\n [600, 601, \"South Africa\", \"ZA\"],\n [603, 603, \"Ghana\", \"GH\"],\n [604, 604, \"Senegal\", \"SN\"],\n [608, 608, \"Bahrain\", \"BH\"],\n [609, 609, \"Mauritius\", \"MU\"],\n [611, 611, \"Morocco\", \"MA\"],\n [613, 613, \"Algeria\", \"DZ\"],\n [615, 615, \"Nigeria\", \"NG\"],\n [616, 616, \"Kenya\", \"KE\"],\n [617, 617, \"Cameroon\", \"CM\"],\n [618, 618, \"Ivory Coast\", \"CI\"],\n [619, 619, \"Tunisia\", \"TN\"],\n [620, 620, \"Tanzania\", \"TZ\"],\n [621, 621, \"Syria\", \"SY\"],\n [622, 622, \"Egypt\", \"EG\"],\n [623, 623, \"Brunei\", \"BN\"],\n [624, 624, \"Libya\", \"LY\"],\n [625, 625, \"Jordan\", \"JO\"],\n [626, 626, \"Iran\", \"IR\"],\n [627, 627, \"Kuwait\", \"KW\"],\n [628, 628, \"Saudi Arabia\", \"SA\"],\n [629, 629, \"United Arab Emirates\", \"AE\"],\n [640, 649, \"Finland\", \"FI\"],\n [690, 699, \"China\", \"CN\"],\n [700, 709, \"Norway\", \"NO\"],\n [729, 729, \"Israel\", \"IL\"],\n [730, 739, \"Sweden\", \"SE\"],\n [740, 740, \"Guatemala\", \"GT\"],\n [741, 741, \"El Salvador\", \"SV\"],\n [742, 742, \"Honduras\", \"HN\"],\n [743, 743, \"Nicaragua\", \"NI\"],\n [744, 744, \"Costa Rica\", \"CR\"],\n [745, 745, \"Panama\", \"PA\"],\n [746, 746, \"Dominican Republic\", \"DO\"],\n [750, 750, \"Mexico\", \"MX\"],\n [754, 755, \"Canada\", \"CA\"],\n [759, 759, \"Venezuela\", \"VE\"],\n [760, 769, \"Switzerland & Liechtenstein\", \"CH\"],\n [770, 771, \"Colombia\", \"CO\"],\n [773, 773, \"Uruguay\", \"UY\"],\n [775, 775, \"Peru\", \"PE\"],\n [777, 777, \"Bolivia\", \"BO\"],\n [778, 779, \"Argentina\", \"AR\"],\n [780, 780, \"Chile\", \"CL\"],\n [784, 784, \"Paraguay\", \"PY\"],\n [786, 786, \"Ecuador\", \"EC\"],\n [789, 790, \"Brazil\", \"BR\"],\n [800, 839, \"Italy\", \"IT\"],\n [840, 849, \"Spain & Andorra\", \"ES\"],\n [850, 850, \"Cuba\", \"CU\"],\n [858, 858, \"Slovakia\", \"SK\"],\n [859, 859, \"Czech Republic\", \"CZ\"],\n [860, 860, \"Serbia\", \"RS\"],\n [865, 865, \"Mongolia\", \"MN\"],\n [867, 867, \"North Korea\", \"KP\"],\n [868, 869, \"Turkey\", \"TR\"],\n [870, 879, \"Netherlands\", \"NL\"],\n [880, 880, \"South Korea\", \"KR\"],\n [884, 884, \"Cambodia\", \"KH\"],\n [885, 885, \"Thailand\", \"TH\"],\n [888, 888, \"Singapore\", \"SG\"],\n [890, 890, \"India\", \"IN\"],\n [893, 893, \"Vietnam\", \"VN\"],\n [896, 896, \"Pakistan\", \"PK\"],\n [899, 899, \"Indonesia\", \"ID\"],\n [900, 919, \"Austria\", \"AT\"],\n [930, 939, \"Australia\", \"AU\"],\n [940, 949, \"New Zealand\", \"NZ\"],\n [950, 950, \"GS1 Global Office\", null],\n [951, 951, \"GS1 Global Office (EPC)\", null],\n [955, 955, \"Malaysia\", \"MY\"],\n [958, 958, \"Macau\", \"MO\"],\n [960, 969, \"GS1 Global Office (GTIN-8)\", null],\n [977, 977, \"Periodicals (ISSN)\", null],\n [978, 979, \"Books (ISBN)\", null],\n [980, 980, \"Refund receipts\", null],\n [981, 984, \"Common currency coupons\", null],\n [990, 999, \"Coupons\", null],\n];\n\n/**\n * Resolves the first three digits of a GTIN to their GS1 assignment. Returns `null` when the\n * prefix falls outside every published range.\n */\nexport function resolveGs1Prefix(prefix: string): Gs1PrefixAssignment | null {\n if (prefix.length < 1) return null;\n\n const value = Number(prefix.length <= 3 ? prefix : prefix.slice(0, 3));\n if (!Number.isInteger(value)) return null;\n\n for (const [from, to, name, countryCode] of RANGES) {\n if (value >= from && value <= to) return { name, countryCode };\n }\n\n return null;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var gtin_check_digit_exports = {};
|
|
20
|
+
__export(gtin_check_digit_exports, {
|
|
21
|
+
GTIN_VALID_LENGTHS: () => GTIN_VALID_LENGTHS,
|
|
22
|
+
extractGtinDigits: () => extractGtinDigits,
|
|
23
|
+
validateGtinCheckDigit: () => validateGtinCheckDigit
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(gtin_check_digit_exports);
|
|
26
|
+
const GTIN_VALID_LENGTHS = [8, 12, 13, 14];
|
|
27
|
+
function extractGtinDigits(input) {
|
|
28
|
+
if (input == null || input.trim().length === 0) return null;
|
|
29
|
+
let digits = "";
|
|
30
|
+
for (const character of input) {
|
|
31
|
+
if (character >= "0" && character <= "9") digits += character;
|
|
32
|
+
else if (character !== " " && character !== "-") return null;
|
|
33
|
+
}
|
|
34
|
+
return digits.length === 0 ? null : digits;
|
|
35
|
+
}
|
|
36
|
+
function validateGtinCheckDigit(digits) {
|
|
37
|
+
let sum = 0;
|
|
38
|
+
for (let i = 0; i < digits.length - 1; i++) {
|
|
39
|
+
const digit = digits.charCodeAt(i) - 48;
|
|
40
|
+
const positionFromRight = digits.length - 1 - i;
|
|
41
|
+
sum += digit * (positionFromRight % 2 === 1 ? 3 : 1);
|
|
42
|
+
}
|
|
43
|
+
const expected = (10 - sum % 10) % 10;
|
|
44
|
+
return expected === digits.charCodeAt(digits.length - 1) - 48;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=gtin-check-digit.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/internal/gtin-check-digit.ts"],
|
|
4
|
+
"sourcesContent": ["/** The four GTIN lengths GS1 defines: GTIN-8, GTIN-12, GTIN-13 and GTIN-14. */\nexport const GTIN_VALID_LENGTHS: readonly number[] = [8, 12, 13, 14];\n\n/**\n * Strips the separators a printed GTIN may carry. Spaces and hyphens are dropped; anything\n * else disqualifies the input, so `59012341234-57` extracts but `590.1234` does not.\n * Returns `null` when nothing is left or a foreign character appears.\n */\nexport function extractGtinDigits(input: string | null | undefined): string | null {\n if (input == null || input.trim().length === 0) return null;\n\n let digits = \"\";\n for (const character of input) {\n if (character >= \"0\" && character <= \"9\") digits += character;\n else if (character !== \" \" && character !== \"-\") return null;\n }\n\n return digits.length === 0 ? null : digits;\n}\n\n/**\n * Validates the GS1 modulo-10 check digit, where digits are weighted 3 and 1 alternating from\n * the right, ahead of the trailing check digit itself.\n */\nexport function validateGtinCheckDigit(digits: string): boolean {\n let sum = 0;\n for (let i = 0; i < digits.length - 1; i++) {\n const digit = digits.charCodeAt(i) - 48;\n const positionFromRight = digits.length - 1 - i;\n sum += digit * (positionFromRight % 2 === 1 ? 3 : 1);\n }\n\n const expected = (10 - (sum % 10)) % 10;\n return expected === digits.charCodeAt(digits.length - 1) - 48;\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,MAAM,qBAAwC,CAAC,GAAG,IAAI,IAAI,EAAE;AAO5D,SAAS,kBAAkB,OAAiD;AACjF,MAAI,SAAS,QAAQ,MAAM,KAAK,EAAE,WAAW,EAAG,QAAO;AAEvD,MAAI,SAAS;AACb,aAAW,aAAa,OAAO;AAC7B,QAAI,aAAa,OAAO,aAAa,IAAK,WAAU;AAAA,aAC3C,cAAc,OAAO,cAAc,IAAK,QAAO;AAAA,EAC1D;AAEA,SAAO,OAAO,WAAW,IAAI,OAAO;AACtC;AAMO,SAAS,uBAAuB,QAAyB;AAC9D,MAAI,MAAM;AACV,WAAS,IAAI,GAAG,IAAI,OAAO,SAAS,GAAG,KAAK;AAC1C,UAAM,QAAQ,OAAO,WAAW,CAAC,IAAI;AACrC,UAAM,oBAAoB,OAAO,SAAS,IAAI;AAC9C,WAAO,SAAS,oBAAoB,MAAM,IAAI,IAAI;AAAA,EACpD;AAEA,QAAM,YAAY,KAAM,MAAM,MAAO;AACrC,SAAO,aAAa,OAAO,WAAW,OAAO,SAAS,CAAC,IAAI;AAC7D;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var input_sanitization_exports = {};
|
|
20
|
+
__export(input_sanitization_exports, {
|
|
21
|
+
collapseWhitespace: () => collapseWhitespace,
|
|
22
|
+
keepAsciiAlphanumericUppercase: () => keepAsciiAlphanumericUppercase,
|
|
23
|
+
keepDigits: () => keepDigits,
|
|
24
|
+
sanitizeInput: () => sanitizeInput
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(input_sanitization_exports);
|
|
27
|
+
const FORMAT_OR_NOT_ASSIGNED = /[\p{Cf}\p{Cn}]/u;
|
|
28
|
+
const SPACE_SEPARATOR = /[\p{Zs}\p{Zl}\p{Zp}]/u;
|
|
29
|
+
const CONTROL = /\p{Cc}/u;
|
|
30
|
+
function sanitizeInput(input) {
|
|
31
|
+
let out = "";
|
|
32
|
+
for (const c of input) {
|
|
33
|
+
if (c === "\u2018" || c === "\u2019" || c === "\u201A" || c === "\u201B") {
|
|
34
|
+
out += "'";
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
if (c === "\u201C" || c === "\u201D" || c === "\u201E" || c === "\u201F" || c === "\xAB" || c === "\xBB") {
|
|
38
|
+
out += '"';
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
if (FORMAT_OR_NOT_ASSIGNED.test(c)) {
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
if (CONTROL.test(c)) {
|
|
45
|
+
if (c === " " || c === "\n" || c === "\r") out += " ";
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
if (SPACE_SEPARATOR.test(c)) {
|
|
49
|
+
out += " ";
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
out += c;
|
|
53
|
+
}
|
|
54
|
+
return out;
|
|
55
|
+
}
|
|
56
|
+
const WHITESPACE_RUN = /\s+/g;
|
|
57
|
+
function collapseWhitespace(input) {
|
|
58
|
+
if (input == null) return "";
|
|
59
|
+
return sanitizeInput(input).trim().replace(WHITESPACE_RUN, " ");
|
|
60
|
+
}
|
|
61
|
+
function keepDigits(input) {
|
|
62
|
+
let out = "";
|
|
63
|
+
for (let i = 0; i < input.length; i++) {
|
|
64
|
+
const c = input.charCodeAt(i);
|
|
65
|
+
if (c >= 48 && c <= 57) out += input[i];
|
|
66
|
+
}
|
|
67
|
+
return out;
|
|
68
|
+
}
|
|
69
|
+
function keepAsciiAlphanumericUppercase(input) {
|
|
70
|
+
let out = "";
|
|
71
|
+
for (let i = 0; i < input.length; i++) {
|
|
72
|
+
const c = input.charCodeAt(i);
|
|
73
|
+
if (c >= 48 && c <= 57) out += input[i];
|
|
74
|
+
else if (c >= 65 && c <= 90) out += input[i];
|
|
75
|
+
else if (c >= 97 && c <= 122) out += String.fromCharCode(c - 32);
|
|
76
|
+
}
|
|
77
|
+
return out;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=input-sanitization.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/internal/input-sanitization.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Shared input sanitization for text inputs across domain types.\n * Provides invisible-character stripping, whitespace normalization, and common\n * character-filtering helpers (digits-only, alphanumeric-only, collapse whitespace).\n *\n * Real-world inputs (e.g. from CRM/banking systems) commonly contain invisible\n * Unicode characters that break validation while being completely invisible in UIs\n * and logs. The most frequent offender is `U+202A` LEFT-TO-RIGHT EMBEDDING,\n * especially on values originating from RTL-language contexts (Arabic, Hebrew).\n * Other common contaminants include non-breaking spaces from web/PDF copy-paste,\n * null bytes from binary data, stray newlines from multi-line form fields,\n * and typographic (smart/curly) quotes from mobile keyboards and word processors.\n *\n * Equivalent of `Buildi.Primitives.InputSanitization` (internal in .NET).\n * Exposed via `internal/` and not re-exported from the public package entry.\n */\n\nconst FORMAT_OR_NOT_ASSIGNED = /[\\p{Cf}\\p{Cn}]/u;\nconst SPACE_SEPARATOR = /[\\p{Zs}\\p{Zl}\\p{Zp}]/u;\nconst CONTROL = /\\p{Cc}/u;\n\n/**\n * Strips invisible/non-printable characters, normalizes all whitespace variants\n * to ASCII space (`U+0020`), normalizes typographic single quotes to ASCII\n * apostrophe (`'`), and normalizes typographic and guillemet double quotes to\n * ASCII quotation mark (`\"`).\n */\nexport function sanitizeInput(input: string): string {\n let out = \"\";\n for (const c of input) {\n // Smart single quotes -> ASCII apostrophe.\n if (c === \"\\u2018\" || c === \"\\u2019\" || c === \"\\u201A\" || c === \"\\u201B\") {\n out += \"'\";\n continue;\n }\n // Smart and guillemet double quotes -> ASCII quotation mark.\n if (\n c === \"\\u201C\" ||\n c === \"\\u201D\" ||\n c === \"\\u201E\" ||\n c === \"\\u201F\" ||\n c === \"\\u00AB\" ||\n c === \"\\u00BB\"\n ) {\n out += '\"';\n continue;\n }\n\n if (FORMAT_OR_NOT_ASSIGNED.test(c)) {\n // Drop format characters (Cf) and unassigned code points (Cn).\n continue;\n }\n\n if (CONTROL.test(c)) {\n if (c === \"\\t\" || c === \"\\n\" || c === \"\\r\") out += \" \";\n continue;\n }\n\n if (SPACE_SEPARATOR.test(c)) {\n out += \" \";\n continue;\n }\n\n out += c;\n }\n return out;\n}\n\nconst WHITESPACE_RUN = /\\s+/g;\n\n/**\n * Sanitizes the input, trims, and collapses whitespace runs to a single space.\n * Returns an empty string when `input` is `null` or `undefined`.\n */\nexport function collapseWhitespace(input: string | null | undefined): string {\n if (input == null) return \"\";\n return sanitizeInput(input).trim().replace(WHITESPACE_RUN, \" \");\n}\n\n/** Keeps only ASCII digits (`0`-`9`), stripping everything else. */\nexport function keepDigits(input: string): string {\n let out = \"\";\n for (let i = 0; i < input.length; i++) {\n const c = input.charCodeAt(i);\n if (c >= 0x30 && c <= 0x39) out += input[i];\n }\n return out;\n}\n\n/**\n * Keeps only ASCII letters and digits, uppercasing letters.\n * Strips whitespace, hyphens, and all other non-alphanumeric characters.\n */\nexport function keepAsciiAlphanumericUppercase(input: string): string {\n let out = \"\";\n for (let i = 0; i < input.length; i++) {\n const c = input.charCodeAt(i);\n if (c >= 0x30 && c <= 0x39) out += input[i];\n else if (c >= 0x41 && c <= 0x5a) out += input[i];\n else if (c >= 0x61 && c <= 0x7a) out += String.fromCharCode(c - 32);\n }\n return out;\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiBA,MAAM,yBAAyB;AAC/B,MAAM,kBAAkB;AACxB,MAAM,UAAU;AAQT,SAAS,cAAc,OAAuB;AACnD,MAAI,MAAM;AACV,aAAW,KAAK,OAAO;AAErB,QAAI,MAAM,YAAY,MAAM,YAAY,MAAM,YAAY,MAAM,UAAU;AACxE,aAAO;AACP;AAAA,IACF;AAEA,QACE,MAAM,YACN,MAAM,YACN,MAAM,YACN,MAAM,YACN,MAAM,UACN,MAAM,QACN;AACA,aAAO;AACP;AAAA,IACF;AAEA,QAAI,uBAAuB,KAAK,CAAC,GAAG;AAElC;AAAA,IACF;AAEA,QAAI,QAAQ,KAAK,CAAC,GAAG;AACnB,UAAI,MAAM,OAAQ,MAAM,QAAQ,MAAM,KAAM,QAAO;AACnD;AAAA,IACF;AAEA,QAAI,gBAAgB,KAAK,CAAC,GAAG;AAC3B,aAAO;AACP;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEA,MAAM,iBAAiB;AAMhB,SAAS,mBAAmB,OAA0C;AAC3E,MAAI,SAAS,KAAM,QAAO;AAC1B,SAAO,cAAc,KAAK,EAAE,KAAK,EAAE,QAAQ,gBAAgB,GAAG;AAChE;AAGO,SAAS,WAAW,OAAuB;AAChD,MAAI,MAAM;AACV,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,UAAM,IAAI,MAAM,WAAW,CAAC;AAC5B,QAAI,KAAK,MAAQ,KAAK,GAAM,QAAO,MAAM,CAAC;AAAA,EAC5C;AACA,SAAO;AACT;AAMO,SAAS,+BAA+B,OAAuB;AACpE,MAAI,MAAM;AACV,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,UAAM,IAAI,MAAM,WAAW,CAAC;AAC5B,QAAI,KAAK,MAAQ,KAAK,GAAM,QAAO,MAAM,CAAC;AAAA,aACjC,KAAK,MAAQ,KAAK,GAAM,QAAO,MAAM,CAAC;AAAA,aACtC,KAAK,MAAQ,KAAK,IAAM,QAAO,OAAO,aAAa,IAAI,EAAE;AAAA,EACpE;AACA,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|