@taiga-ui/addon-commerce 2.59.1 → 2.62.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.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = `${rawValue.slice(0, 2)}/${rawValue.slice(5)}`;\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${`0`.repeat(2 - month.length)}${month}/${\n year ? year.slice(2) : ``\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = `/`;\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = `0`;\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\n/**\n * @deprecated: use {@link tuiGetCurrencySymbol} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return `₽`;\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n case TuiCurrency.MexicanPeso:\n case TuiCurrencyCode.MexicanPeso:\n return `$`;\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return `S$`;\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return `A$`;\n case TuiCurrency.HongKongDollar:\n case TuiCurrencyCode.HongKongDollar:\n return `HK$`;\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return `C$`;\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return `€`;\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return `£`;\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return `฿`;\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return `₺`;\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return `CN¥`;\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return `¥`;\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return `₪`;\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return `₹`;\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return `₣`;\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return `֏`;\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return `₩`;\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return `₸`;\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return `₴`;\n default:\n return null;\n }\n}\n\nexport const tuiGetCurrencySymbol = getCurrencySymbol;\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\n/**\n * @deprecated: use {@link tuiFormatCurrency} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nexport const tuiFormatCurrency = formatCurrency;\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === `string`\n ? currency || ``\n : padStart(String(currency), 3, `0`);\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\n/**\n * @deprecated: use {@link tuiGetPaymentSystem} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === ``) {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.slice(0, 2), 10);\n const three = Number.parseInt(cardNumber.slice(0, 3), 10);\n const four = Number.parseInt(cardNumber.slice(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport const tuiGetPaymentSystem = getPaymentSystem;\n\n/**\n * @deprecated: use {@link tuiIsMaestro} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport const tuiIsMaestro = isMaestro;\n\n/**\n * @deprecated: use {@link tuiIsMastercard} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport const tuiIsMastercard = isMastercard;\n\n/**\n * @deprecated: use {@link tuiIsMir} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport const tuiIsMir = isMir;\n\n/**\n * @deprecated: use {@link tuiIsElectron} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport const tuiIsElectron = isElectron;\n\n/**\n * @deprecated: use {@link tuiIsVisa} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n\nexport const tuiIsVisa = isVisa;\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * @deprecated: use {@link tuiIsCardLengthValid} instead\n * Validates card number length using payment system dictionary\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n\nexport const tuiIsCardLengthValid = isCardLengthValid;\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * @deprecated: use {@link tuiIsCardNumberValid} instead\n * Validates card number using Luhn algorithm\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, ``);\n\n const {length} = cardNumber;\n const arr = cardNumber.split(``).map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n\nexport const tuiIsCardNumberValid = isCardNumberValid;\n","/**\n * @deprecated: use {@link tuiIsExpireValid} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n\nexport const tuiIsExpireValid = isExpireValid;\n"],"names":["TUI_NON_DIGIT_REGEXP","padStart","TUI_NON_DIGITS_REGEXP"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = `${rawValue.slice(0, 2)}/${rawValue.slice(5)}`;\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${`0`.repeat(2 - month.length)}${month}/${\n year ? year.slice(2) : ``\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = `/`;\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = `0`;\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\n/**\n * @deprecated: use {@link tuiGetCurrencySymbol} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return `₽`;\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n case TuiCurrency.MexicanPeso:\n case TuiCurrencyCode.MexicanPeso:\n return `$`;\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return `S$`;\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return `A$`;\n case TuiCurrency.HongKongDollar:\n case TuiCurrencyCode.HongKongDollar:\n return `HK$`;\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return `C$`;\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return `€`;\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return `£`;\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return `฿`;\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return `₺`;\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return `CN¥`;\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return `¥`;\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return `₪`;\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return `₹`;\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return `₣`;\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return `֏`;\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return `₩`;\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return `₸`;\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return `₴`;\n case TuiCurrency.UzbekSum:\n case TuiCurrencyCode.UzbekSum:\n return `So'm`;\n case TuiCurrency.KyrgyzstanSom:\n case TuiCurrencyCode.KyrgyzstanSom:\n return `c`;\n case TuiCurrency.Dirham:\n case TuiCurrencyCode.Dirham:\n return `Dh`;\n default:\n return null;\n }\n}\n\nexport const tuiGetCurrencySymbol = getCurrencySymbol;\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\n/**\n * @deprecated: use {@link tuiFormatCurrency} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nexport const tuiFormatCurrency = formatCurrency;\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === `string`\n ? currency || ``\n : padStart(String(currency), 3, `0`);\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\n/**\n * @deprecated: use {@link tuiGetPaymentSystem} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === ``) {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.slice(0, 2), 10);\n const three = Number.parseInt(cardNumber.slice(0, 3), 10);\n const four = Number.parseInt(cardNumber.slice(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport const tuiGetPaymentSystem = getPaymentSystem;\n\n/**\n * @deprecated: use {@link tuiIsMaestro} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport const tuiIsMaestro = isMaestro;\n\n/**\n * @deprecated: use {@link tuiIsMastercard} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport const tuiIsMastercard = isMastercard;\n\n/**\n * @deprecated: use {@link tuiIsMir} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport const tuiIsMir = isMir;\n\n/**\n * @deprecated: use {@link tuiIsElectron} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport const tuiIsElectron = isElectron;\n\n/**\n * @deprecated: use {@link tuiIsVisa} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n\nexport const tuiIsVisa = isVisa;\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * @deprecated: use {@link tuiIsCardLengthValid} instead\n * Validates card number length using payment system dictionary\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n\nexport const tuiIsCardLengthValid = isCardLengthValid;\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * @deprecated: use {@link tuiIsCardNumberValid} instead\n * Validates card number using Luhn algorithm\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, ``);\n\n const {length} = cardNumber;\n const arr = cardNumber.split(``).map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n\nexport const tuiIsCardNumberValid = isCardNumberValid;\n","/**\n * @deprecated: use {@link tuiIsExpireValid} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n\nexport const tuiIsExpireValid = isExpireValid;\n"],"names":["TUI_NON_DIGIT_REGEXP","padStart","TUI_NON_DIGITS_REGEXP"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@taiga-ui/core"),require("@taiga-ui/cdk")):"function"==typeof define&&define.amd?define("@taiga-ui/addon-commerce/utils",["exports","@taiga-ui/core","@taiga-ui/cdk"],r):r(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"]["addon-commerce"]=e["taiga-ui"]["addon-commerce"]||{},e["taiga-ui"]["addon-commerce"].utils={}),e.core,e.cdk)}(this,(function(e,r,t){"use strict";var a=/^\d{2}[/|.]\d{4}$/,n=/^\d{1,4}.\d{1,2}.\d{1,4}$/;function s(e){switch(e){case"RUB":case"643":return"₽";case"USD":case"840":case"MXN":case"484":return"$";case"SGD":case"702":return"S$";case"AUD":case"036":return"A$";case"HKD":case"344":return"HK$";case"CAD":case"124":return"C$";case"EUR":case"978":return"€";case"GBP":case"826":return"£";case"THB":case"764":return"฿";case"TRY":case"949":return"₺";case"CNY":case"156":return"CN¥";case"JPY":case"392":return"¥";case"ILS":case"376":return"₪";case"INR":case"356":return"₹";case"CHF":case"756":return"₣";case"AMD":case"051":return"֏";case"KRW":case"410":return"₩";case"KZT":case"398":return"₸";case"UAH":case"980":return"₴";default:return null}}var u=s;function c(e){var r=function(e){return null===e||"string"==typeof e?e||"":t.padStart(String(e),3,"0")}(e);return s(r)||r}var i=c;function o(e){if(""===e)return null;var r=Number.parseInt(e[0],10),t=Number.parseInt(e.slice(0,2),10),a=Number.parseInt(e.slice(0,3),10),n=Number.parseInt(e.slice(0,4),10);return d(a,t,r)?"maestro":m(n,t,r)?"mastercard":v(n)?"mir":I(n)?"electron":h(r)?"visa":null}var l=o;function d(e,r,t){return 6===t||(50===r||r>55&&r<59||!(e<500)&&e<510)}var f=d;function m(e,r,t){return 5===t||!(r<10)&&(r>50&&r<56||!(e<1e3)&&(e>2220&&e<2721))}var p=m;function v(e){return e>2199&&e<2205}var g=v;function I(e){switch(e){case 4026:case 4175:case 4405:case 4508:case 4844:case 4913:case 4917:return!0;default:return!1}}var C=I;function h(e){return 4===e}var y=h;function N(e){var r=e.length;switch(o(e)){case"electron":return 16===r;case"maestro":return r>11&&r<20;case"mastercard":case"mir":return r>15&&r<20;case"visa":return r>12&&r<20;default:return r>8&&r<20}}var S=N;function b(e){var t=String(e).replace(r.TUI_NON_DIGITS_REGEXP,""),a=t.length;return!(t.split("").map((function(e,r){var t=parseInt(e,10);if((r+a)%2==0){var n=2*t;return n>9?n-9:n}return t})).reduce((function(e,r){return e+r}),0)%10)}var E=b;function M(e){var r=new Date,t=r.getMonth(),a=r.getFullYear()-2e3,n=parseInt(e.slice(0,2),0),s=parseInt(e.slice(-2),0);return s>a||s===a&&n>=t}var D=M;e.formatCurrency=c,e.getCurrencySymbol=s,e.getPaymentSystem=o,e.isCardLengthValid=N,e.isCardNumberValid=b,e.isElectron=I,e.isExpireValid=M,e.isMaestro=d,e.isMastercard=m,e.isMir=v,e.isVisa=h,e.tuiCreateAutoCorrectedExpirePipe=function(){return function(e,t){var s=t.rawValue;if(a.test(s)&&(e=s.slice(0,2)+"/"+s.slice(5)),s.length>7&&s.length<11&&n.test(s)){var u=s.split(r.TUI_NON_DIGIT_REGEXP),c=u[1],i=u.find((function(e){return 4===e.length}));e=""+"0".repeat(2-c.length)+c+"/"+(i?i.slice(2):"")}var o=[],l=e.split("");return parseInt(l[0],10)>1&&(l[2]="/",l[1]=l[0],l[0]="0",o.push(0)),{value:l.join(""),indexesOfPipedChars:o}}},e.tuiFormatCurrency=i,e.tuiGetCurrencySymbol=u,e.tuiGetPaymentSystem=l,e.tuiIsCardLengthValid=S,e.tuiIsCardNumberValid=E,e.tuiIsElectron=C,e.tuiIsExpireValid=D,e.tuiIsMaestro=f,e.tuiIsMastercard=p,e.tuiIsMir=g,e.tuiIsVisa=y,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@taiga-ui/core"),require("@taiga-ui/cdk")):"function"==typeof define&&define.amd?define("@taiga-ui/addon-commerce/utils",["exports","@taiga-ui/core","@taiga-ui/cdk"],r):r(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"]["addon-commerce"]=e["taiga-ui"]["addon-commerce"]||{},e["taiga-ui"]["addon-commerce"].utils={}),e.core,e.cdk)}(this,(function(e,r,t){"use strict";var a=/^\d{2}[/|.]\d{4}$/,n=/^\d{1,4}.\d{1,2}.\d{1,4}$/;function s(e){switch(e){case"RUB":case"643":return"₽";case"USD":case"840":case"MXN":case"484":return"$";case"SGD":case"702":return"S$";case"AUD":case"036":return"A$";case"HKD":case"344":return"HK$";case"CAD":case"124":return"C$";case"EUR":case"978":return"€";case"GBP":case"826":return"£";case"THB":case"764":return"฿";case"TRY":case"949":return"₺";case"CNY":case"156":return"CN¥";case"JPY":case"392":return"¥";case"ILS":case"376":return"₪";case"INR":case"356":return"₹";case"CHF":case"756":return"₣";case"AMD":case"051":return"֏";case"KRW":case"410":return"₩";case"KZT":case"398":return"₸";case"UAH":case"980":return"₴";case"UZS":case"860":return"So'm";case"KGS":case"417":return"c";case"AED":case"784":return"Dh";default:return null}}var c=s;function u(e){var r=function(e){return null===e||"string"==typeof e?e||"":t.padStart(String(e),3,"0")}(e);return s(r)||r}var i=u;function o(e){if(""===e)return null;var r=Number.parseInt(e[0],10),t=Number.parseInt(e.slice(0,2),10),a=Number.parseInt(e.slice(0,3),10),n=Number.parseInt(e.slice(0,4),10);return d(a,t,r)?"maestro":m(n,t,r)?"mastercard":v(n)?"mir":I(n)?"electron":C(r)?"visa":null}var l=o;function d(e,r,t){return 6===t||(50===r||r>55&&r<59||!(e<500)&&e<510)}var f=d;function m(e,r,t){return 5===t||!(r<10)&&(r>50&&r<56||!(e<1e3)&&(e>2220&&e<2721))}var p=m;function v(e){return e>2199&&e<2205}var g=v;function I(e){switch(e){case 4026:case 4175:case 4405:case 4508:case 4844:case 4913:case 4917:return!0;default:return!1}}var h=I;function C(e){return 4===e}var y=C;function S(e){var r=e.length;switch(o(e)){case"electron":return 16===r;case"maestro":return r>11&&r<20;case"mastercard":case"mir":return r>15&&r<20;case"visa":return r>12&&r<20;default:return r>8&&r<20}}var N=S;function D(e){var t=String(e).replace(r.TUI_NON_DIGITS_REGEXP,""),a=t.length;return!(t.split("").map((function(e,r){var t=parseInt(e,10);if((r+a)%2==0){var n=2*t;return n>9?n-9:n}return t})).reduce((function(e,r){return e+r}),0)%10)}var E=D;function b(e){var r=new Date,t=r.getMonth(),a=r.getFullYear()-2e3,n=parseInt(e.slice(0,2),0),s=parseInt(e.slice(-2),0);return s>a||s===a&&n>=t}var M=b;e.formatCurrency=u,e.getCurrencySymbol=s,e.getPaymentSystem=o,e.isCardLengthValid=S,e.isCardNumberValid=D,e.isElectron=I,e.isExpireValid=b,e.isMaestro=d,e.isMastercard=m,e.isMir=v,e.isVisa=C,e.tuiCreateAutoCorrectedExpirePipe=function(){return function(e,t){var s=t.rawValue;if(a.test(s)&&(e=s.slice(0,2)+"/"+s.slice(5)),s.length>7&&s.length<11&&n.test(s)){var c=s.split(r.TUI_NON_DIGIT_REGEXP),u=c[1],i=c.find((function(e){return 4===e.length}));e=""+"0".repeat(2-u.length)+u+"/"+(i?i.slice(2):"")}var o=[],l=e.split("");return parseInt(l[0],10)>1&&(l[2]="/",l[1]=l[0],l[0]="0",o.push(0)),{value:l.join(""),indexesOfPipedChars:o}}},e.tuiFormatCurrency=i,e.tuiGetCurrencySymbol=c,e.tuiGetPaymentSystem=l,e.tuiIsCardLengthValid=N,e.tuiIsCardNumberValid=E,e.tuiIsElectron=h,e.tuiIsExpireValid=M,e.tuiIsMaestro=f,e.tuiIsMastercard=p,e.tuiIsMir=g,e.tuiIsVisa=y,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=taiga-ui-addon-commerce-utils.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"names":["TUI_EXP_YEAR_MONTH","TUI_EXP_SAFARI","getCurrencySymbol","currency","tuiGetCurrencySymbol","formatCurrency","stringifiedCurrency","padStart","String","stringifyCurrency","tuiFormatCurrency","getPaymentSystem","cardNumber","one","Number","parseInt","two","slice","three","four","isMaestro","isMastercard","isMir","isElectron","isVisa","tuiGetPaymentSystem","tuiIsMaestro","tuiIsMastercard","tuiIsMir","tuiIsElectron","tuiIsVisa","isCardLengthValid","length","tuiIsCardLengthValid","isCardNumberValid","value","replace","TUI_NON_DIGITS_REGEXP","split","map","char","index","digit","digitX2","reduce","a","b","tuiIsCardNumberValid","isExpireValid","expire","today","Date","currentMonth","getMonth","currentYear","getFullYear","month","year","tuiIsExpireValid","conformedValue","_a","rawValue","test","array","TUI_NON_DIGIT_REGEXP","find","repeat","indexesOfPipedChars","conformedValueArr","push","join"],"mappings":"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","sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = `${rawValue.slice(0, 2)}/${rawValue.slice(5)}`;\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${`0`.repeat(2 - month.length)}${month}/${\n year ? year.slice(2) : ``\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = `/`;\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = `0`;\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\n/**\n * @deprecated: use {@link tuiGetCurrencySymbol} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return `₽`;\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n case TuiCurrency.MexicanPeso:\n case TuiCurrencyCode.MexicanPeso:\n return `$`;\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return `S$`;\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return `A$`;\n case TuiCurrency.HongKongDollar:\n case TuiCurrencyCode.HongKongDollar:\n return `HK$`;\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return `C$`;\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return `€`;\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return `£`;\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return `฿`;\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return `₺`;\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return `CN¥`;\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return `¥`;\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return `₪`;\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return `₹`;\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return `₣`;\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return `֏`;\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return `₩`;\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return `₸`;\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return `₴`;\n default:\n return null;\n }\n}\n\nexport const tuiGetCurrencySymbol = getCurrencySymbol;\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\n/**\n * @deprecated: use {@link tuiFormatCurrency} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nexport const tuiFormatCurrency = formatCurrency;\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === `string`\n ? currency || ``\n : padStart(String(currency), 3, `0`);\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\n/**\n * @deprecated: use {@link tuiGetPaymentSystem} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === ``) {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.slice(0, 2), 10);\n const three = Number.parseInt(cardNumber.slice(0, 3), 10);\n const four = Number.parseInt(cardNumber.slice(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport const tuiGetPaymentSystem = getPaymentSystem;\n\n/**\n * @deprecated: use {@link tuiIsMaestro} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport const tuiIsMaestro = isMaestro;\n\n/**\n * @deprecated: use {@link tuiIsMastercard} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport const tuiIsMastercard = isMastercard;\n\n/**\n * @deprecated: use {@link tuiIsMir} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport const tuiIsMir = isMir;\n\n/**\n * @deprecated: use {@link tuiIsElectron} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport const tuiIsElectron = isElectron;\n\n/**\n * @deprecated: use {@link tuiIsVisa} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n\nexport const tuiIsVisa = isVisa;\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * @deprecated: use {@link tuiIsCardLengthValid} instead\n * Validates card number length using payment system dictionary\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n\nexport const tuiIsCardLengthValid = isCardLengthValid;\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * @deprecated: use {@link tuiIsCardNumberValid} instead\n * Validates card number using Luhn algorithm\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, ``);\n\n const {length} = cardNumber;\n const arr = cardNumber.split(``).map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n\nexport const tuiIsCardNumberValid = isCardNumberValid;\n","/**\n * @deprecated: use {@link tuiIsExpireValid} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n\nexport const tuiIsExpireValid = isExpireValid;\n"]}
1
+ {"version":3,"sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"names":["TUI_EXP_YEAR_MONTH","TUI_EXP_SAFARI","getCurrencySymbol","currency","tuiGetCurrencySymbol","formatCurrency","stringifiedCurrency","padStart","String","stringifyCurrency","tuiFormatCurrency","getPaymentSystem","cardNumber","one","Number","parseInt","two","slice","three","four","isMaestro","isMastercard","isMir","isElectron","isVisa","tuiGetPaymentSystem","tuiIsMaestro","tuiIsMastercard","tuiIsMir","tuiIsElectron","tuiIsVisa","isCardLengthValid","length","tuiIsCardLengthValid","isCardNumberValid","value","replace","TUI_NON_DIGITS_REGEXP","split","map","char","index","digit","digitX2","reduce","a","b","tuiIsCardNumberValid","isExpireValid","expire","today","Date","currentMonth","getMonth","currentYear","getFullYear","month","year","tuiIsExpireValid","conformedValue","_a","rawValue","test","array","TUI_NON_DIGIT_REGEXP","find","repeat","indexesOfPipedChars","conformedValueArr","push","join"],"mappings":"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","sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = `${rawValue.slice(0, 2)}/${rawValue.slice(5)}`;\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${`0`.repeat(2 - month.length)}${month}/${\n year ? year.slice(2) : ``\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = `/`;\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = `0`;\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\n/**\n * @deprecated: use {@link tuiGetCurrencySymbol} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return `₽`;\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n case TuiCurrency.MexicanPeso:\n case TuiCurrencyCode.MexicanPeso:\n return `$`;\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return `S$`;\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return `A$`;\n case TuiCurrency.HongKongDollar:\n case TuiCurrencyCode.HongKongDollar:\n return `HK$`;\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return `C$`;\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return `€`;\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return `£`;\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return `฿`;\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return `₺`;\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return `CN¥`;\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return `¥`;\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return `₪`;\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return `₹`;\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return `₣`;\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return `֏`;\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return `₩`;\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return `₸`;\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return `₴`;\n case TuiCurrency.UzbekSum:\n case TuiCurrencyCode.UzbekSum:\n return `So'm`;\n case TuiCurrency.KyrgyzstanSom:\n case TuiCurrencyCode.KyrgyzstanSom:\n return `c`;\n case TuiCurrency.Dirham:\n case TuiCurrencyCode.Dirham:\n return `Dh`;\n default:\n return null;\n }\n}\n\nexport const tuiGetCurrencySymbol = getCurrencySymbol;\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\n/**\n * @deprecated: use {@link tuiFormatCurrency} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nexport const tuiFormatCurrency = formatCurrency;\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === `string`\n ? currency || ``\n : padStart(String(currency), 3, `0`);\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\n/**\n * @deprecated: use {@link tuiGetPaymentSystem} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === ``) {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.slice(0, 2), 10);\n const three = Number.parseInt(cardNumber.slice(0, 3), 10);\n const four = Number.parseInt(cardNumber.slice(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport const tuiGetPaymentSystem = getPaymentSystem;\n\n/**\n * @deprecated: use {@link tuiIsMaestro} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport const tuiIsMaestro = isMaestro;\n\n/**\n * @deprecated: use {@link tuiIsMastercard} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport const tuiIsMastercard = isMastercard;\n\n/**\n * @deprecated: use {@link tuiIsMir} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport const tuiIsMir = isMir;\n\n/**\n * @deprecated: use {@link tuiIsElectron} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport const tuiIsElectron = isElectron;\n\n/**\n * @deprecated: use {@link tuiIsVisa} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n\nexport const tuiIsVisa = isVisa;\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * @deprecated: use {@link tuiIsCardLengthValid} instead\n * Validates card number length using payment system dictionary\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n\nexport const tuiIsCardLengthValid = isCardLengthValid;\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * @deprecated: use {@link tuiIsCardNumberValid} instead\n * Validates card number using Luhn algorithm\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, ``);\n\n const {length} = cardNumber;\n const arr = cardNumber.split(``).map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n\nexport const tuiIsCardNumberValid = isCardNumberValid;\n","/**\n * @deprecated: use {@link tuiIsExpireValid} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n\nexport const tuiIsExpireValid = isExpireValid;\n"]}
@@ -13,6 +13,7 @@ export declare const enum TuiCurrencyCode {
13
13
  * @description Numeric code: 643
14
14
  * @description Alphabetic code: RUB
15
15
  * @description Countries and territories: Russia
16
+ * @description Currency symbol: ₽
16
17
  */
17
18
  Ruble = "643",
18
19
  /**
@@ -21,6 +22,7 @@ export declare const enum TuiCurrencyCode {
21
22
  * @description Numeric code: 978
22
23
  * @description Alphabetic code: EUR
23
24
  * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)
25
+ * @description Currency symbol: €
24
26
  */
25
27
  Euro = "978",
26
28
  /**
@@ -29,6 +31,7 @@ export declare const enum TuiCurrencyCode {
29
31
  * @description Numeric code: 840
30
32
  * @description Alphabetic code: USD
31
33
  * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)
34
+ * @description Currency symbol: $
32
35
  */
33
36
  Dollar = "840",
34
37
  /**
@@ -37,6 +40,7 @@ export declare const enum TuiCurrencyCode {
37
40
  * @description Numeric code: 826
38
41
  * @description Alphabetic code: GBP
39
42
  * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)
43
+ * @description Currency symbol: £
40
44
  */
41
45
  Pound = "826",
42
46
  /**
@@ -45,6 +49,7 @@ export declare const enum TuiCurrencyCode {
45
49
  * @description Numeric code: 764
46
50
  * @description Alphabetic code: THB
47
51
  * @description Countries and territories: Thailand
52
+ * @description Currency symbol: ฿
48
53
  */
49
54
  Baht = "764",
50
55
  /**
@@ -53,6 +58,7 @@ export declare const enum TuiCurrencyCode {
53
58
  * @description Numeric code: 949
54
59
  * @description Alphabetic code: TRY
55
60
  * @description Countries and territories: Turkey
61
+ * @description Currency symbol: ₺
56
62
  */
57
63
  TurkishLira = "949",
58
64
  /**
@@ -61,6 +67,7 @@ export declare const enum TuiCurrencyCode {
61
67
  * @description Numeric code: 156
62
68
  * @description Alphabetic code: CNY
63
69
  * @description Countries and territories: China
70
+ * @description Currency symbol: CN¥
64
71
  */
65
72
  YuanRenminbi = "156",
66
73
  /**
@@ -69,6 +76,7 @@ export declare const enum TuiCurrencyCode {
69
76
  * @description Numeric code: 398
70
77
  * @description Alphabetic code: KZT
71
78
  * @description Countries and territories: Kazakhstan
79
+ * @description Currency symbol: ₸
72
80
  */
73
81
  Tenge = "398",
74
82
  /**
@@ -77,6 +85,7 @@ export declare const enum TuiCurrencyCode {
77
85
  * @description Numeric code: 376
78
86
  * @description Alphabetic code: ILS
79
87
  * @description Countries and territories: Israel
88
+ * @description Currency symbol: ₪
80
89
  */
81
90
  IsraeliShekel = "376",
82
91
  /**
@@ -85,6 +94,7 @@ export declare const enum TuiCurrencyCode {
85
94
  * @description Numeric code: 356
86
95
  * @description Alphabetic code: INR
87
96
  * @description Countries and territories: India, Bhutan
97
+ * @description Currency symbol: ₹
88
98
  */
89
99
  IndianRupee = "356",
90
100
  /**
@@ -93,6 +103,7 @@ export declare const enum TuiCurrencyCode {
93
103
  * @description Numeric code: 392
94
104
  * @description Alphabetic code: JPY
95
105
  * @description Countries and territories: Japan
106
+ * @description Currency symbol: ¥
96
107
  */
97
108
  Yen = "392",
98
109
  /**
@@ -101,6 +112,7 @@ export declare const enum TuiCurrencyCode {
101
112
  * @description Numeric code: 410
102
113
  * @description Alphabetic code: KRW
103
114
  * @description Countries and territories: South Korea
115
+ * @description Currency symbol: ₩
104
116
  */
105
117
  Won = "410",
106
118
  /**
@@ -109,6 +121,7 @@ export declare const enum TuiCurrencyCode {
109
121
  * @description Numeric code: 756
110
122
  * @description Alphabetic code: CHF
111
123
  * @description Countries and territories: Switzerland, Liechtenstein (LI)
124
+ * @description Currency symbol: ₣
112
125
  */
113
126
  SwissFranc = "756",
114
127
  /**
@@ -117,6 +130,7 @@ export declare const enum TuiCurrencyCode {
117
130
  * @description Numeric code: 702
118
131
  * @description Alphabetic code: SGD
119
132
  * @description Countries and territories: Singapore
133
+ * @description Currency symbol: S$
120
134
  */
121
135
  SingaporeDollar = "702",
122
136
  /**
@@ -125,6 +139,7 @@ export declare const enum TuiCurrencyCode {
125
139
  * @description Numeric code: 036
126
140
  * @description Alphabetic code: AUD
127
141
  * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)
142
+ * @description Currency symbol: A$
128
143
  */
129
144
  AustralianDollar = "036",
130
145
  /**
@@ -133,6 +148,7 @@ export declare const enum TuiCurrencyCode {
133
148
  * @description Numeric code: 344
134
149
  * @description Alphabetic code: HKD
135
150
  * @description Countries and territories: Hong Kong
151
+ * @description Currency symbol: HK$
136
152
  */
137
153
  HongKongDollar = "344",
138
154
  /**
@@ -146,6 +162,7 @@ export declare const enum TuiCurrencyCode {
146
162
  * @description Numeric code: 124
147
163
  * @description Alphabetic code: CAD
148
164
  * @description Countries and territories: Canada
165
+ * @description Currency symbol: C$
149
166
  */
150
167
  CanadianDollar = "124",
151
168
  /**
@@ -154,6 +171,7 @@ export declare const enum TuiCurrencyCode {
154
171
  * @description Numeric code: 051
155
172
  * @description Alphabetic code: AMD
156
173
  * @description Countries and territories: Armenia
174
+ * @description Currency symbol: ֏
157
175
  */
158
176
  ArmenianDram = "051",
159
177
  /**
@@ -162,6 +180,7 @@ export declare const enum TuiCurrencyCode {
162
180
  * @description Numeric code: 980
163
181
  * @description Alphabetic code: UAH
164
182
  * @description Countries and territories: Ukraine
183
+ * @description Currency symbol: ₴
165
184
  */
166
185
  Hryvnia = "980",
167
186
  /**
@@ -170,6 +189,34 @@ export declare const enum TuiCurrencyCode {
170
189
  * @description Numeric code: 484
171
190
  * @description Alphabetic code: MXN
172
191
  * @description Countries and territories: Mexico
192
+ * @description Currency symbol: $
173
193
  */
174
- MexicanPeso = "484"
194
+ MexicanPeso = "484",
195
+ /**
196
+ * Uzbek sum
197
+ *
198
+ * @description Numeric code: 860
199
+ * @description Alphabetic code: UZS
200
+ * @description Countries and territories: Uzbekistan
201
+ * @description Currency symbol: So'm
202
+ */
203
+ UzbekSum = "860",
204
+ /**
205
+ * Kyrgyzstani som
206
+ *
207
+ * @description Numeric code: 417
208
+ * @description Alphabetic code: KGS
209
+ * @description Countries and territories: Kyrgyzstan
210
+ * @description Currency symbol: c
211
+ */
212
+ KyrgyzstanSom = "417",
213
+ /**
214
+ * United Arab Emirates dirham
215
+ *
216
+ * @description Numeric code: 784
217
+ * @description Alphabetic code: AED
218
+ * @description Countries and territories: United Arab Emirates
219
+ * @description Currency symbol: Dh
220
+ */
221
+ Dirham = "784"
175
222
  }
@@ -13,6 +13,7 @@ export declare const enum TuiCurrency {
13
13
  * @description Numeric code: 643
14
14
  * @description Alphabetic code: RUB
15
15
  * @description Countries and territories: Russia
16
+ * @description Currency symbol: ₽
16
17
  */
17
18
  Ruble = "RUB",
18
19
  /**
@@ -21,6 +22,7 @@ export declare const enum TuiCurrency {
21
22
  * @description Numeric code: 978
22
23
  * @description Alphabetic code: EUR
23
24
  * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)
25
+ * @description Currency symbol: €
24
26
  */
25
27
  Euro = "EUR",
26
28
  /**
@@ -29,6 +31,7 @@ export declare const enum TuiCurrency {
29
31
  * @description Numeric code: 840
30
32
  * @description Alphabetic code: USD
31
33
  * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)
34
+ * @description Currency symbol: $
32
35
  */
33
36
  Dollar = "USD",
34
37
  /**
@@ -37,6 +40,7 @@ export declare const enum TuiCurrency {
37
40
  * @description Numeric code: 826
38
41
  * @description Alphabetic code: GBP
39
42
  * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)
43
+ * @description Currency symbol: £
40
44
  */
41
45
  Pound = "GBP",
42
46
  /**
@@ -45,6 +49,7 @@ export declare const enum TuiCurrency {
45
49
  * @description Numeric code: 764
46
50
  * @description Alphabetic code: THB
47
51
  * @description Countries and territories: Thailand
52
+ * @description Currency symbol: ฿
48
53
  */
49
54
  Baht = "THB",
50
55
  /**
@@ -53,6 +58,7 @@ export declare const enum TuiCurrency {
53
58
  * @description Numeric code: 949
54
59
  * @description Alphabetic code: TRY
55
60
  * @description Countries and territories: Turkey
61
+ * @description Currency symbol: ₺
56
62
  */
57
63
  TurkishLira = "TRY",
58
64
  /**
@@ -61,6 +67,7 @@ export declare const enum TuiCurrency {
61
67
  * @description Numeric code: 156
62
68
  * @description Alphabetic code: CNY
63
69
  * @description Countries and territories: China
70
+ * @description Currency symbol: CN¥
64
71
  */
65
72
  YuanRenminbi = "CNY",
66
73
  /**
@@ -69,6 +76,7 @@ export declare const enum TuiCurrency {
69
76
  * @description Numeric code: 398
70
77
  * @description Alphabetic code: KZT
71
78
  * @description Countries and territories: Kazakhstan
79
+ * @description Currency symbol: ₸
72
80
  */
73
81
  Tenge = "KZT",
74
82
  /**
@@ -77,6 +85,7 @@ export declare const enum TuiCurrency {
77
85
  * @description Numeric code: 376
78
86
  * @description Alphabetic code: ILS
79
87
  * @description Countries and territories: Israel
88
+ * @description Currency symbol: ₪
80
89
  */
81
90
  IsraeliShekel = "ILS",
82
91
  /**
@@ -85,6 +94,7 @@ export declare const enum TuiCurrency {
85
94
  * @description Numeric code: 356
86
95
  * @description Alphabetic code: INR
87
96
  * @description Countries and territories: India, Bhutan
97
+ * @description Currency symbol: ₹
88
98
  */
89
99
  IndianRupee = "INR",
90
100
  /**
@@ -93,6 +103,7 @@ export declare const enum TuiCurrency {
93
103
  * @description Numeric code: 392
94
104
  * @description Alphabetic code: JPY
95
105
  * @description Countries and territories: Japan
106
+ * @description Currency symbol: ¥
96
107
  */
97
108
  Yen = "JPY",
98
109
  /**
@@ -101,6 +112,7 @@ export declare const enum TuiCurrency {
101
112
  * @description Numeric code: 410
102
113
  * @description Alphabetic code: KRW
103
114
  * @description Countries and territories: South Korea
115
+ * @description Currency symbol: ₩
104
116
  */
105
117
  Won = "KRW",
106
118
  /**
@@ -109,6 +121,7 @@ export declare const enum TuiCurrency {
109
121
  * @description Numeric code: 756
110
122
  * @description Alphabetic code: CHF
111
123
  * @description Countries and territories: Switzerland, Liechtenstein (LI)
124
+ * @description Currency symbol: ₣
112
125
  */
113
126
  SwissFranc = "CHF",
114
127
  /**
@@ -117,6 +130,7 @@ export declare const enum TuiCurrency {
117
130
  * @description Numeric code: 702
118
131
  * @description Alphabetic code: SGD
119
132
  * @description Countries and territories: Singapore
133
+ * @description Currency symbol: S$
120
134
  */
121
135
  SingaporeDollar = "SGD",
122
136
  /**
@@ -125,6 +139,7 @@ export declare const enum TuiCurrency {
125
139
  * @description Numeric code: 036
126
140
  * @description Alphabetic code: AUD
127
141
  * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)
142
+ * @description Currency symbol: A$
128
143
  */
129
144
  AustralianDollar = "AUD",
130
145
  /**
@@ -133,6 +148,7 @@ export declare const enum TuiCurrency {
133
148
  * @description Numeric code: 344
134
149
  * @description Alphabetic code: HKD
135
150
  * @description Countries and territories: Hong Kong
151
+ * @description Currency symbol: HK$
136
152
  */
137
153
  HongKongDollar = "HKD",
138
154
  /**
@@ -146,6 +162,7 @@ export declare const enum TuiCurrency {
146
162
  * @description Numeric code: 124
147
163
  * @description Alphabetic code: CAD
148
164
  * @description Countries and territories: Canada
165
+ * @description Currency symbol: C$
149
166
  */
150
167
  CanadianDollar = "CAD",
151
168
  /**
@@ -154,6 +171,7 @@ export declare const enum TuiCurrency {
154
171
  * @description Numeric code: 051
155
172
  * @description Alphabetic code: AMD
156
173
  * @description Countries and territories: Armenia
174
+ * @description Currency symbol: ֏
157
175
  */
158
176
  ArmenianDram = "AMD",
159
177
  /**
@@ -162,6 +180,7 @@ export declare const enum TuiCurrency {
162
180
  * @description Numeric code: 980
163
181
  * @description Alphabetic code: UAH
164
182
  * @description Countries and territories: Ukraine
183
+ * @description Currency symbol: ₴
165
184
  */
166
185
  Hryvnia = "UAH",
167
186
  /**
@@ -170,6 +189,34 @@ export declare const enum TuiCurrency {
170
189
  * @description Numeric code: 484
171
190
  * @description Alphabetic code: MXN
172
191
  * @description Countries and territories: Mexico
192
+ * @description Currency symbol: $
173
193
  */
174
- MexicanPeso = "MXN"
194
+ MexicanPeso = "MXN",
195
+ /**
196
+ * Uzbek sum
197
+ *
198
+ * @description Numeric code: 860
199
+ * @description Alphabetic code: UZS
200
+ * @description Countries and territories: Uzbekistan
201
+ * @description Currency symbol: So'm
202
+ */
203
+ UzbekSum = "UZS",
204
+ /**
205
+ * Kyrgyzstani som
206
+ *
207
+ * @description Numeric code: 417
208
+ * @description Alphabetic code: KGS
209
+ * @description Countries and territories: Kyrgyzstan
210
+ * @description Currency symbol: c
211
+ */
212
+ KyrgyzstanSom = "KGS",
213
+ /**
214
+ * United Arab Emirates dirham
215
+ *
216
+ * @description Numeric code: 784
217
+ * @description Alphabetic code: AED
218
+ * @description Countries and territories: United Arab Emirates
219
+ * @description Currency symbol: Dh
220
+ */
221
+ Dirham = "AED"
175
222
  }
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"TuiCurrency":{"Ruble":"RUB","Euro":"EUR","Dollar":"USD","Pound":"GBP","Baht":"THB","TurkishLira":"TRY","YuanRenminbi":"CNY","Tenge":"KZT","IsraeliShekel":"ILS","IndianRupee":"INR","Yen":"JPY","Won":"KRW","SwissFranc":"CHF","SingaporeDollar":"SGD","AustralianDollar":"AUD","HongKongDollar":"HKD","HongKong_dollar":"HKD","CanadianDollar":"CAD","ArmenianDram":"AMD","Hryvnia":"UAH","MexicanPeso":"MXN"},"TuiCurrencyCode":{"Ruble":"643","Euro":"978","Dollar":"840","Pound":"826","Baht":"764","TurkishLira":"949","YuanRenminbi":"156","Tenge":"398","IsraeliShekel":"376","IndianRupee":"356","Yen":"392","Won":"410","SwissFranc":"756","SingaporeDollar":"702","AustralianDollar":"036","HongKongDollar":"344","HongKong_dollar":"344","CanadianDollar":"124","ArmenianDram":"051","Hryvnia":"980","MexicanPeso":"484"},"TuiMoneySign":{"NegativeOnly":"negative-only","Always":"always","Never":"never","ForceNegative":"force-negative","ForcePositive":"force-positive"},"TuiPaymentSystem":{"Visa":"visa","Electron":"electron","Mastercard":"mastercard","Maestro":"maestro","Mir":"mir"},"TuiPaymentSystemT":{"__symbolic":"interface"}},"origins":{"TuiCurrency":"./currency","TuiCurrencyCode":"./currency-code","TuiMoneySign":"./money-sign","TuiPaymentSystem":"./payment-system","TuiPaymentSystemT":"./payment-system"},"importAs":"@taiga-ui/addon-commerce/enums"}
1
+ {"__symbolic":"module","version":4,"metadata":{"TuiCurrency":{"Ruble":"RUB","Euro":"EUR","Dollar":"USD","Pound":"GBP","Baht":"THB","TurkishLira":"TRY","YuanRenminbi":"CNY","Tenge":"KZT","IsraeliShekel":"ILS","IndianRupee":"INR","Yen":"JPY","Won":"KRW","SwissFranc":"CHF","SingaporeDollar":"SGD","AustralianDollar":"AUD","HongKongDollar":"HKD","HongKong_dollar":"HKD","CanadianDollar":"CAD","ArmenianDram":"AMD","Hryvnia":"UAH","MexicanPeso":"MXN","UzbekSum":"UZS","KyrgyzstanSom":"KGS","Dirham":"AED"},"TuiCurrencyCode":{"Ruble":"643","Euro":"978","Dollar":"840","Pound":"826","Baht":"764","TurkishLira":"949","YuanRenminbi":"156","Tenge":"398","IsraeliShekel":"376","IndianRupee":"356","Yen":"392","Won":"410","SwissFranc":"756","SingaporeDollar":"702","AustralianDollar":"036","HongKongDollar":"344","HongKong_dollar":"344","CanadianDollar":"124","ArmenianDram":"051","Hryvnia":"980","MexicanPeso":"484","UzbekSum":"860","KyrgyzstanSom":"417","Dirham":"784"},"TuiMoneySign":{"NegativeOnly":"negative-only","Always":"always","Never":"never","ForceNegative":"force-negative","ForcePositive":"force-positive"},"TuiPaymentSystem":{"Visa":"visa","Electron":"electron","Mastercard":"mastercard","Maestro":"maestro","Mir":"mir"},"TuiPaymentSystemT":{"__symbolic":"interface"}},"origins":{"TuiCurrency":"./currency","TuiCurrencyCode":"./currency-code","TuiMoneySign":"./money-sign","TuiPaymentSystem":"./payment-system","TuiPaymentSystemT":"./payment-system"},"importAs":"@taiga-ui/addon-commerce/enums"}