@taiga-ui/addon-commerce 3.16.0-dev.main-11c6b7c → 3.16.0-dev.main-0ee0b72

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.
@@ -133,6 +133,39 @@
133
133
  : String(currency).padStart(3, "0");
134
134
  }
135
135
 
136
+ var _b;
137
+ var TUI_CURRENCY_DICTIONARY = (_b = {},
138
+ _b["643" /* Ruble */] = "RUB" /* Ruble */,
139
+ _b["840" /* Dollar */] = "USD" /* Dollar */,
140
+ _b["484" /* MexicanPeso */] = "MXN" /* MexicanPeso */,
141
+ _b["702" /* SingaporeDollar */] = "SGD" /* SingaporeDollar */,
142
+ _b["702" /* SingaporeDollar */] = "SGD" /* SingaporeDollar */,
143
+ _b["036" /* AustralianDollar */] = "AUD" /* AustralianDollar */,
144
+ _b["344" /* HongKongDollar */] = "HKD" /* HongKongDollar */,
145
+ _b["124" /* CanadianDollar */] = "CAD" /* CanadianDollar */,
146
+ _b["978" /* Euro */] = "EUR" /* Euro */,
147
+ _b["826" /* Pound */] = "GBP" /* Pound */,
148
+ _b["764" /* Baht */] = "THB" /* Baht */,
149
+ _b["949" /* TurkishLira */] = "TRY" /* TurkishLira */,
150
+ _b["156" /* YuanRenminbi */] = "CNY" /* YuanRenminbi */,
151
+ _b["392" /* Yen */] = "JPY" /* Yen */,
152
+ _b["376" /* IsraeliShekel */] = "ILS" /* IsraeliShekel */,
153
+ _b["376" /* IsraeliShekel */] = "ILS" /* IsraeliShekel */,
154
+ _b["356" /* IndianRupee */] = "INR" /* IndianRupee */,
155
+ _b["756" /* SwissFranc */] = "CHF" /* SwissFranc */,
156
+ _b["051" /* ArmenianDram */] = "AMD" /* ArmenianDram */,
157
+ _b["410" /* Won */] = "KRW" /* Won */,
158
+ _b["398" /* Tenge */] = "KZT" /* Tenge */,
159
+ _b["980" /* Hryvnia */] = "UAH" /* Hryvnia */,
160
+ _b["860" /* UzbekSum */] = "UZS" /* UzbekSum */,
161
+ _b["417" /* KyrgyzstanSom */] = "KGS" /* KyrgyzstanSom */,
162
+ _b["784" /* Dirham */] = "AED" /* Dirham */,
163
+ _b);
164
+ function tuiGetCurrencyByCode(currency) {
165
+ var _a;
166
+ return (_a = TUI_CURRENCY_DICTIONARY[currency]) !== null && _a !== void 0 ? _a : null;
167
+ }
168
+
136
169
  function tuiGetPaymentSystem(cardNumber) {
137
170
  if (cardNumber === "") {
138
171
  return null;
@@ -259,8 +292,10 @@
259
292
  * Generated bundle index. Do not edit.
260
293
  */
261
294
 
295
+ exports.TUI_CURRENCY_DICTIONARY = TUI_CURRENCY_DICTIONARY;
262
296
  exports.tuiCreateAutoCorrectedExpirePipe = tuiCreateAutoCorrectedExpirePipe;
263
297
  exports.tuiFormatCurrency = tuiFormatCurrency;
298
+ exports.tuiGetCurrencyByCode = tuiGetCurrencyByCode;
264
299
  exports.tuiGetCurrencySymbol = tuiGetCurrencySymbol;
265
300
  exports.tuiGetPaymentSystem = tuiGetPaymentSystem;
266
301
  exports.tuiIsCardLengthValid = tuiIsCardLengthValid;
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["../../../projects/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","../../../projects/addon-commerce/utils/get-currency-symbol.ts","../../../projects/addon-commerce/utils/format-currency.ts","../../../projects/addon-commerce/utils/get-payment-system.ts","../../../projects/addon-commerce/utils/is-card-length-valid.ts","../../../projects/addon-commerce/utils/is-card-number-valid.ts","../../../projects/addon-commerce/utils/is-expire-valid.ts","../../../projects/addon-commerce/utils/taiga-ui-addon-commerce-utils.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\n // TODO: investigate why the month is sometimes more than 2-length in safari\n const month = array[1].slice(2);\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// eslint-disable-next-line complexity\nexport function tuiGetCurrencySymbol(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","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiIsString} from '@taiga-ui/cdk';\n\nimport {tuiGetCurrencySymbol} from './get-currency-symbol';\n\nexport function tuiFormatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return tuiGetCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || tuiIsString(currency)\n ? currency || ``\n : String(currency).padStart(3, `0`);\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\n\nexport function tuiGetPaymentSystem(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 (tuiIsMaestro(three, two, one)) {\n return `maestro`;\n }\n\n if (tuiIsMastercard(four, two, one)) {\n return `mastercard`;\n }\n\n if (tuiIsMir(four)) {\n return `mir`;\n }\n\n if (tuiIsElectron(four)) {\n return `electron`;\n }\n\n if (tuiIsVisa(one)) {\n return `visa`;\n }\n\n return null;\n}\n\nexport function tuiIsMaestro(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 function tuiIsMastercard(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 function tuiIsMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function tuiIsElectron(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 function tuiIsVisa(one: number): boolean {\n return one === 4;\n}\n","import {tuiGetPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function tuiIsCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = tuiGetPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case `electron`:\n return length === 16;\n case `maestro`:\n return length > 11 && length < 20;\n case `mastercard`:\n case `mir`:\n return length > 15 && length < 20;\n case `visa`:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function tuiIsCardNumberValid(value: number | string): 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","export function tuiIsExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n // eslint-disable-next-line radix\n const month = parseInt(expire.slice(0, 2), 0);\n // eslint-disable-next-line radix\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TUI_NON_DIGIT_REGEXP","tuiIsString","TUI_NON_DIGITS_REGEXP"],"mappings":";;;;;;IAEA,IAAM,kBAAkB,GAAG,mBAAmB,CAAC;IAC/C,IAAM,cAAc,GAAG,2BAA2B,CAAC;IAEnD;;;;;IAKG;aACa,gCAAgC,GAAA;QAC5C,OAAO,UAAC,cAAc,EAAE,EAAU,EAAA;IAAT,QAAA,IAAA,QAAQ,GAAA,EAAA,CAAA,QAAA,CAAA;;IAE7B,QAAA,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;IACnC,YAAA,cAAc,GAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAA,GAAA,GAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAG,CAAC;IACnE,SAAA;;IAGD,QAAA,IACI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACnB,QAAQ,CAAC,MAAM,GAAG,EAAE;IACpB,YAAA,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC/B;gBACE,IAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAACA,yBAAoB,CAAC,CAAC;;gBAGnD,IAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChC,YAAA,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,UAAC,EAAQ,EAAA;IAAP,gBAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA,CAAA;oBAAM,OAAA,MAAM,KAAK,CAAC,CAAA;IAAZ,aAAY,CAAC,CAAC;IAEpD,YAAA,cAAc,GAAG,EAAA,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,GAAA,GAAA,IACpD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAC3B,CAAE,CAAC;IACN,SAAA;YAED,IAAM,mBAAmB,GAAa,EAAE,CAAC;YACzC,IAAM,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAEnD,IAAI,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE;IACxC,YAAA,iBAAiB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;gBAC3B,iBAAiB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC5C,YAAA,iBAAiB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAC3B,YAAA,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,SAAA;YAED,OAAO;IACH,YAAA,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;IACjC,YAAA,mBAAmB,EAAA,mBAAA;aACtB,CAAC;IACN,KAAC,CAAC;IACN;;IC/CA;IACM,SAAU,oBAAoB,CAAC,QAA6B,EAAA;IAC9D,IAAA,QAAQ,QAAQ;YACZ,KAAuB,KAAA,aAAA;YACvB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAAwB,KAAA,cAAA;YACxB,KAA4B,KAAA,cAAA;YAC5B,KAA6B,KAAA,mBAAA;YAC7B,KAAA,KAAA;IACI,YAAA,OAAO,GAAG,CAAC;YACf,KAAiC,KAAA,uBAAA;YACjC,KAAA,KAAA;IACI,YAAA,OAAO,IAAI,CAAC;YAChB,KAAkC,KAAA,wBAAA;YAClC,KAAA,KAAA;IACI,YAAA,OAAO,IAAI,CAAC;YAChB,KAAgC,KAAA,sBAAA;YAChC,KAAA,KAAA;IACI,YAAA,OAAO,KAAK,CAAC;YACjB,KAAgC,KAAA,sBAAA;YAChC,KAAA,KAAA;IACI,YAAA,OAAO,IAAI,CAAC;YAChB,KAAsB,KAAA,YAAA;YACtB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAAuB,KAAA,aAAA;YACvB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAAsB,KAAA,YAAA;YACtB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAA6B,KAAA,mBAAA;YAC7B,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAA8B,KAAA,oBAAA;YAC9B,KAAA,KAAA;IACI,YAAA,OAAO,UAAK,CAAC;YACjB,KAAqB,KAAA,WAAA;YACrB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAA+B,KAAA,qBAAA;YAC/B,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAA6B,KAAA,mBAAA;YAC7B,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAA4B,KAAA,kBAAA;YAC5B,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAA8B,KAAA,oBAAA;YAC9B,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAAqB,KAAA,WAAA;YACrB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAAuB,KAAA,aAAA;YACvB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAAyB,KAAA,eAAA;YACzB,KAAA,KAAA;IACI,YAAA,OAAO,QAAG,CAAC;YACf,KAA0B,KAAA,gBAAA;YAC1B,KAAA,KAAA;IACI,YAAA,OAAO,MAAM,CAAC;YAClB,KAA+B,KAAA,qBAAA;YAC/B,KAAA,KAAA;IACI,YAAA,OAAO,GAAG,CAAC;YACf,KAAwB,KAAA,cAAA;YACxB,KAAA,KAAA;IACI,YAAA,OAAO,IAAI,CAAC;IAChB,QAAA;IACI,YAAA,OAAO,IAAI,CAAC;IACnB,KAAA;IACL;;ICxEM,SAAU,iBAAiB,CAAC,QAA6B,EAAA;IAC3D,IAAA,IAAM,mBAAmB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAExD,IAAA,OAAO,oBAAoB,CAAC,mBAAmB,CAAC,IAAI,mBAAmB,CAAC;IAC5E,CAAC;IAED,SAAS,iBAAiB,CAAC,QAA6B,EAAA;IACpD,IAAA,OAAO,QAAQ,KAAK,IAAI,IAAIC,eAAW,CAAC,QAAQ,CAAC;cAC3C,QAAQ,IAAI,EAAE;IAChB,UAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5C;;ICbM,SAAU,mBAAmB,CAAC,UAAkB,EAAA;QAClD,IAAI,UAAU,KAAK,EAAE,EAAE;IACnB,QAAA,OAAO,IAAI,CAAC;IACf,KAAA;IAED,IAAA,IAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAA,IAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,IAAA,IAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1D,IAAA,IAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEzD,IAAI,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IAC/B,QAAA,OAAO,SAAS,CAAC;IACpB,KAAA;QAED,IAAI,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IACjC,QAAA,OAAO,YAAY,CAAC;IACvB,KAAA;IAED,IAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;IAChB,QAAA,OAAO,KAAK,CAAC;IAChB,KAAA;IAED,IAAA,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;IACrB,QAAA,OAAO,UAAU,CAAC;IACrB,KAAA;IAED,IAAA,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;IAChB,QAAA,OAAO,MAAM,CAAC;IACjB,KAAA;IAED,IAAA,OAAO,IAAI,CAAC;IAChB,CAAC;aAEe,YAAY,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW,EAAA;QAChE,IAAI,GAAG,KAAK,CAAC,EAAE;IACX,QAAA,OAAO,IAAI,CAAC;IACf,KAAA;IAED,IAAA,IAAI,GAAG,KAAK,EAAE,KAAK,GAAG,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE;IACtC,QAAA,OAAO,IAAI,CAAC;IACf,KAAA;QAED,IAAI,KAAK,GAAG,GAAG,EAAE;IACb,QAAA,OAAO,KAAK,CAAC;IAChB,KAAA;QAED,OAAO,KAAK,GAAG,GAAG,CAAC;IACvB,CAAC;aAEe,eAAe,CAAC,IAAY,EAAE,GAAW,EAAE,GAAW,EAAA;QAClE,IAAI,GAAG,KAAK,CAAC,EAAE;IACX,QAAA,OAAO,IAAI,CAAC;IACf,KAAA;QAED,IAAI,GAAG,GAAG,EAAE,EAAE;IACV,QAAA,OAAO,KAAK,CAAC;IAChB,KAAA;IAED,IAAA,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,EAAE;IACtB,QAAA,OAAO,IAAI,CAAC;IACf,KAAA;QAED,IAAI,IAAI,GAAG,IAAI,EAAE;IACb,QAAA,OAAO,KAAK,CAAC;IAChB,KAAA;IAED,IAAA,OAAO,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC;IACtC,CAAC;IAEK,SAAU,QAAQ,CAAC,IAAY,EAAA;IACjC,IAAA,OAAO,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC;IACtC,CAAC;IAEK,SAAU,aAAa,CAAC,IAAY,EAAA;IACtC,IAAA,QAAQ,IAAI;IACR,QAAA,KAAK,IAAI,CAAC;IACV,QAAA,KAAK,IAAI,CAAC;IACV,QAAA,KAAK,IAAI,CAAC;IACV,QAAA,KAAK,IAAI,CAAC;IACV,QAAA,KAAK,IAAI,CAAC;IACV,QAAA,KAAK,IAAI,CAAC;IACV,QAAA,KAAK,IAAI;IACL,YAAA,OAAO,IAAI,CAAC;IAChB,QAAA;IACI,YAAA,OAAO,KAAK,CAAC;IACpB,KAAA;IACL,CAAC;IAEK,SAAU,SAAS,CAAC,GAAW,EAAA;QACjC,OAAO,GAAG,KAAK,CAAC,CAAC;IACrB;;IC1FA;;IAEG;IACG,SAAU,oBAAoB,CAAC,UAAkB,EAAA;IAC5C,IAAA,IAAA,MAAM,GAAI,UAAU,CAAA,MAAd,CAAe;IAC5B,IAAA,IAAM,aAAa,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAEtD,IAAA,QAAQ,aAAa;IACjB,QAAA,KAAK,UAAU;gBACX,OAAO,MAAM,KAAK,EAAE,CAAC;IACzB,QAAA,KAAK,SAAS;IACV,YAAA,OAAO,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;IACtC,QAAA,KAAK,YAAY,CAAC;IAClB,QAAA,KAAK,KAAK;IACN,YAAA,OAAO,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;IACtC,QAAA,KAAK,MAAM;IACP,YAAA,OAAO,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;IACtC,QAAA;IACI,YAAA,OAAO,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,EAAE,CAAC;IACxC,KAAA;IACL;;ICpBA;;IAEG;IACG,SAAU,oBAAoB,CAAC,KAAsB,EAAA;IACvD,IAAA,IAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAACC,0BAAqB,EAAE,EAAE,CAAC,CAAC;IAE7D,IAAA,IAAA,MAAM,GAAI,UAAU,CAAA,MAAd,CAAe;IAC5B,IAAA,IAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK,EAAA;YAC7C,IAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAEjC,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE;IAC5B,YAAA,IAAM,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC;IAE1B,YAAA,OAAO,OAAO,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC;IAC9C,SAAA;IAED,QAAA,OAAO,KAAK,CAAC;IACjB,KAAC,CAAC,CAAC;QAEH,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,EAAA,EAAK,OAAA,CAAC,GAAG,CAAC,CAAA,EAAA,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAClD;;ICtBM,SAAU,gBAAgB,CAAC,MAAc,EAAA;IAC3C,IAAA,IAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IACzB,IAAA,IAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC;;IAE/C,IAAA,IAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;IAE9C,IAAA,IAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3C,IAAA,OAAO,IAAI,GAAG,WAAW,KAAK,IAAI,KAAK,WAAW,IAAI,KAAK,IAAI,YAAY,CAAC,CAAC;IACjF;;ICVA;;IAEG;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["../../../projects/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","../../../projects/addon-commerce/utils/get-currency-symbol.ts","../../../projects/addon-commerce/utils/format-currency.ts","../../../projects/addon-commerce/utils/get-currency-by-code.ts","../../../projects/addon-commerce/utils/get-payment-system.ts","../../../projects/addon-commerce/utils/is-card-length-valid.ts","../../../projects/addon-commerce/utils/is-card-number-valid.ts","../../../projects/addon-commerce/utils/is-expire-valid.ts","../../../projects/addon-commerce/utils/taiga-ui-addon-commerce-utils.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\n // TODO: investigate why the month is sometimes more than 2-length in safari\n const month = array[1].slice(2);\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// eslint-disable-next-line complexity\nexport function tuiGetCurrencySymbol(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","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiIsString} from '@taiga-ui/cdk';\n\nimport {tuiGetCurrencySymbol} from './get-currency-symbol';\n\nexport function tuiFormatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return tuiGetCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || tuiIsString(currency)\n ? currency || ``\n : String(currency).padStart(3, `0`);\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\n\nexport const TUI_CURRENCY_DICTIONARY: Record<TuiCurrencyCode, TuiCurrency> = {\n [TuiCurrencyCode.Ruble]: TuiCurrency.Ruble,\n [TuiCurrencyCode.Dollar]: TuiCurrency.Dollar,\n [TuiCurrencyCode.MexicanPeso]: TuiCurrency.MexicanPeso,\n [TuiCurrencyCode.SingaporeDollar]: TuiCurrency.SingaporeDollar,\n [TuiCurrencyCode.SingaporeDollar]: TuiCurrency.SingaporeDollar,\n [TuiCurrencyCode.AustralianDollar]: TuiCurrency.AustralianDollar,\n [TuiCurrencyCode.HongKongDollar]: TuiCurrency.HongKongDollar,\n [TuiCurrencyCode.CanadianDollar]: TuiCurrency.CanadianDollar,\n [TuiCurrencyCode.Euro]: TuiCurrency.Euro,\n [TuiCurrencyCode.Pound]: TuiCurrency.Pound,\n [TuiCurrencyCode.Baht]: TuiCurrency.Baht,\n [TuiCurrencyCode.TurkishLira]: TuiCurrency.TurkishLira,\n [TuiCurrencyCode.YuanRenminbi]: TuiCurrency.YuanRenminbi,\n [TuiCurrencyCode.Yen]: TuiCurrency.Yen,\n [TuiCurrencyCode.IsraeliShekel]: TuiCurrency.IsraeliShekel,\n [TuiCurrencyCode.IsraeliShekel]: TuiCurrency.IsraeliShekel,\n [TuiCurrencyCode.IndianRupee]: TuiCurrency.IndianRupee,\n [TuiCurrencyCode.SwissFranc]: TuiCurrency.SwissFranc,\n [TuiCurrencyCode.ArmenianDram]: TuiCurrency.ArmenianDram,\n [TuiCurrencyCode.Won]: TuiCurrency.Won,\n [TuiCurrencyCode.Tenge]: TuiCurrency.Tenge,\n [TuiCurrencyCode.Hryvnia]: TuiCurrency.Hryvnia,\n [TuiCurrencyCode.UzbekSum]: TuiCurrency.UzbekSum,\n [TuiCurrencyCode.KyrgyzstanSom]: TuiCurrency.KyrgyzstanSom,\n [TuiCurrencyCode.Dirham]: TuiCurrency.Dirham,\n};\n\nexport function tuiGetCurrencyByCode(currency: TuiCurrencyCode): TuiCurrency | null {\n return TUI_CURRENCY_DICTIONARY[currency] ?? null;\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\n\nexport function tuiGetPaymentSystem(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 (tuiIsMaestro(three, two, one)) {\n return `maestro`;\n }\n\n if (tuiIsMastercard(four, two, one)) {\n return `mastercard`;\n }\n\n if (tuiIsMir(four)) {\n return `mir`;\n }\n\n if (tuiIsElectron(four)) {\n return `electron`;\n }\n\n if (tuiIsVisa(one)) {\n return `visa`;\n }\n\n return null;\n}\n\nexport function tuiIsMaestro(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 function tuiIsMastercard(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 function tuiIsMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function tuiIsElectron(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 function tuiIsVisa(one: number): boolean {\n return one === 4;\n}\n","import {tuiGetPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function tuiIsCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = tuiGetPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case `electron`:\n return length === 16;\n case `maestro`:\n return length > 11 && length < 20;\n case `mastercard`:\n case `mir`:\n return length > 15 && length < 20;\n case `visa`:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function tuiIsCardNumberValid(value: number | string): 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","export function tuiIsExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n // eslint-disable-next-line radix\n const month = parseInt(expire.slice(0, 2), 0);\n // eslint-disable-next-line radix\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TUI_NON_DIGIT_REGEXP","tuiIsString","TUI_NON_DIGITS_REGEXP"],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ export const TUI_CURRENCY_DICTIONARY = {
2
+ ["643" /* Ruble */]: "RUB" /* Ruble */,
3
+ ["840" /* Dollar */]: "USD" /* Dollar */,
4
+ ["484" /* MexicanPeso */]: "MXN" /* MexicanPeso */,
5
+ ["702" /* SingaporeDollar */]: "SGD" /* SingaporeDollar */,
6
+ ["702" /* SingaporeDollar */]: "SGD" /* SingaporeDollar */,
7
+ ["036" /* AustralianDollar */]: "AUD" /* AustralianDollar */,
8
+ ["344" /* HongKongDollar */]: "HKD" /* HongKongDollar */,
9
+ ["124" /* CanadianDollar */]: "CAD" /* CanadianDollar */,
10
+ ["978" /* Euro */]: "EUR" /* Euro */,
11
+ ["826" /* Pound */]: "GBP" /* Pound */,
12
+ ["764" /* Baht */]: "THB" /* Baht */,
13
+ ["949" /* TurkishLira */]: "TRY" /* TurkishLira */,
14
+ ["156" /* YuanRenminbi */]: "CNY" /* YuanRenminbi */,
15
+ ["392" /* Yen */]: "JPY" /* Yen */,
16
+ ["376" /* IsraeliShekel */]: "ILS" /* IsraeliShekel */,
17
+ ["376" /* IsraeliShekel */]: "ILS" /* IsraeliShekel */,
18
+ ["356" /* IndianRupee */]: "INR" /* IndianRupee */,
19
+ ["756" /* SwissFranc */]: "CHF" /* SwissFranc */,
20
+ ["051" /* ArmenianDram */]: "AMD" /* ArmenianDram */,
21
+ ["410" /* Won */]: "KRW" /* Won */,
22
+ ["398" /* Tenge */]: "KZT" /* Tenge */,
23
+ ["980" /* Hryvnia */]: "UAH" /* Hryvnia */,
24
+ ["860" /* UzbekSum */]: "UZS" /* UzbekSum */,
25
+ ["417" /* KyrgyzstanSom */]: "KGS" /* KyrgyzstanSom */,
26
+ ["784" /* Dirham */]: "AED" /* Dirham */,
27
+ };
28
+ export function tuiGetCurrencyByCode(currency) {
29
+ var _a;
30
+ return (_a = TUI_CURRENCY_DICTIONARY[currency]) !== null && _a !== void 0 ? _a : null;
31
+ }
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWN1cnJlbmN5LWJ5LWNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9nZXQtY3VycmVuY3ktYnktY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBeUM7SUFDekUsbUJBQXVCLG1CQUFtQjtJQUMxQyxvQkFBd0Isb0JBQW9CO0lBQzVDLHlCQUE2Qix5QkFBeUI7SUFDdEQsNkJBQWlDLDZCQUE2QjtJQUM5RCw2QkFBaUMsNkJBQTZCO0lBQzlELDhCQUFrQyw4QkFBOEI7SUFDaEUsNEJBQWdDLDRCQUE0QjtJQUM1RCw0QkFBZ0MsNEJBQTRCO0lBQzVELGtCQUFzQixrQkFBa0I7SUFDeEMsbUJBQXVCLG1CQUFtQjtJQUMxQyxrQkFBc0Isa0JBQWtCO0lBQ3hDLHlCQUE2Qix5QkFBeUI7SUFDdEQsMEJBQThCLDBCQUEwQjtJQUN4RCxpQkFBcUIsaUJBQWlCO0lBQ3RDLDJCQUErQiwyQkFBMkI7SUFDMUQsMkJBQStCLDJCQUEyQjtJQUMxRCx5QkFBNkIseUJBQXlCO0lBQ3RELHdCQUE0Qix3QkFBd0I7SUFDcEQsMEJBQThCLDBCQUEwQjtJQUN4RCxpQkFBcUIsaUJBQWlCO0lBQ3RDLG1CQUF1QixtQkFBbUI7SUFDMUMscUJBQXlCLHFCQUFxQjtJQUM5QyxzQkFBMEIsc0JBQXNCO0lBQ2hELDJCQUErQiwyQkFBMkI7SUFDMUQsb0JBQXdCLG9CQUFvQjtDQUMvQyxDQUFDO0FBRUYsTUFBTSxVQUFVLG9CQUFvQixDQUFDLFFBQXlCOztJQUMxRCxPQUFPLE1BQUEsdUJBQXVCLENBQUMsUUFBUSxDQUFDLG1DQUFJLElBQUksQ0FBQztBQUNyRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUdWlDdXJyZW5jeSwgVHVpQ3VycmVuY3lDb2RlfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvZW51bXMnO1xuXG5leHBvcnQgY29uc3QgVFVJX0NVUlJFTkNZX0RJQ1RJT05BUlk6IFJlY29yZDxUdWlDdXJyZW5jeUNvZGUsIFR1aUN1cnJlbmN5PiA9IHtcbiAgICBbVHVpQ3VycmVuY3lDb2RlLlJ1YmxlXTogVHVpQ3VycmVuY3kuUnVibGUsXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5Eb2xsYXJdOiBUdWlDdXJyZW5jeS5Eb2xsYXIsXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5NZXhpY2FuUGVzb106IFR1aUN1cnJlbmN5Lk1leGljYW5QZXNvLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuU2luZ2Fwb3JlRG9sbGFyXTogVHVpQ3VycmVuY3kuU2luZ2Fwb3JlRG9sbGFyLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuU2luZ2Fwb3JlRG9sbGFyXTogVHVpQ3VycmVuY3kuU2luZ2Fwb3JlRG9sbGFyLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuQXVzdHJhbGlhbkRvbGxhcl06IFR1aUN1cnJlbmN5LkF1c3RyYWxpYW5Eb2xsYXIsXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5Ib25nS29uZ0RvbGxhcl06IFR1aUN1cnJlbmN5LkhvbmdLb25nRG9sbGFyLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuQ2FuYWRpYW5Eb2xsYXJdOiBUdWlDdXJyZW5jeS5DYW5hZGlhbkRvbGxhcixcbiAgICBbVHVpQ3VycmVuY3lDb2RlLkV1cm9dOiBUdWlDdXJyZW5jeS5FdXJvLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuUG91bmRdOiBUdWlDdXJyZW5jeS5Qb3VuZCxcbiAgICBbVHVpQ3VycmVuY3lDb2RlLkJhaHRdOiBUdWlDdXJyZW5jeS5CYWh0LFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuVHVya2lzaExpcmFdOiBUdWlDdXJyZW5jeS5UdXJraXNoTGlyYSxcbiAgICBbVHVpQ3VycmVuY3lDb2RlLll1YW5SZW5taW5iaV06IFR1aUN1cnJlbmN5Lll1YW5SZW5taW5iaSxcbiAgICBbVHVpQ3VycmVuY3lDb2RlLlllbl06IFR1aUN1cnJlbmN5LlllbixcbiAgICBbVHVpQ3VycmVuY3lDb2RlLklzcmFlbGlTaGVrZWxdOiBUdWlDdXJyZW5jeS5Jc3JhZWxpU2hla2VsLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuSXNyYWVsaVNoZWtlbF06IFR1aUN1cnJlbmN5LklzcmFlbGlTaGVrZWwsXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5JbmRpYW5SdXBlZV06IFR1aUN1cnJlbmN5LkluZGlhblJ1cGVlLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuU3dpc3NGcmFuY106IFR1aUN1cnJlbmN5LlN3aXNzRnJhbmMsXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5Bcm1lbmlhbkRyYW1dOiBUdWlDdXJyZW5jeS5Bcm1lbmlhbkRyYW0sXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5Xb25dOiBUdWlDdXJyZW5jeS5Xb24sXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5UZW5nZV06IFR1aUN1cnJlbmN5LlRlbmdlLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuSHJ5dm5pYV06IFR1aUN1cnJlbmN5LkhyeXZuaWEsXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5VemJla1N1bV06IFR1aUN1cnJlbmN5LlV6YmVrU3VtLFxuICAgIFtUdWlDdXJyZW5jeUNvZGUuS3lyZ3l6c3RhblNvbV06IFR1aUN1cnJlbmN5Lkt5cmd5enN0YW5Tb20sXG4gICAgW1R1aUN1cnJlbmN5Q29kZS5EaXJoYW1dOiBUdWlDdXJyZW5jeS5EaXJoYW0sXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpR2V0Q3VycmVuY3lCeUNvZGUoY3VycmVuY3k6IFR1aUN1cnJlbmN5Q29kZSk6IFR1aUN1cnJlbmN5IHwgbnVsbCB7XG4gICAgcmV0dXJuIFRVSV9DVVJSRU5DWV9ESUNUSU9OQVJZW2N1cnJlbmN5XSA/PyBudWxsO1xufVxuIl19
@@ -1,8 +1,9 @@
1
1
  export * from './create-auto-corrected-expire-pipe';
2
2
  export * from './format-currency';
3
+ export * from './get-currency-by-code';
3
4
  export * from './get-currency-symbol';
4
5
  export * from './get-payment-system';
5
6
  export * from './is-card-length-valid';
6
7
  export * from './is-card-number-valid';
7
8
  export * from './is-expire-valid';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jcmVhdGUtYXV0by1jb3JyZWN0ZWQtZXhwaXJlLXBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtYXQtY3VycmVuY3knO1xuZXhwb3J0ICogZnJvbSAnLi9nZXQtY3VycmVuY3ktc3ltYm9sJztcbmV4cG9ydCAqIGZyb20gJy4vZ2V0LXBheW1lbnQtc3lzdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtY2FyZC1sZW5ndGgtdmFsaWQnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1jYXJkLW51bWJlci12YWxpZCc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWV4cGlyZS12YWxpZCc7XG4iXX0=
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1hdXRvLWNvcnJlY3RlZC1leHBpcmUtcGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm1hdC1jdXJyZW5jeSc7XG5leHBvcnQgKiBmcm9tICcuL2dldC1jdXJyZW5jeS1ieS1jb2RlJztcbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWN1cnJlbmN5LXN5bWJvbCc7XG5leHBvcnQgKiBmcm9tICcuL2dldC1wYXltZW50LXN5c3RlbSc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWNhcmQtbGVuZ3RoLXZhbGlkJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtY2FyZC1udW1iZXItdmFsaWQnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1leHBpcmUtdmFsaWQnO1xuIl19
@@ -126,6 +126,38 @@ function stringifyCurrency(currency) {
126
126
  : String(currency).padStart(3, `0`);
127
127
  }
128
128
 
129
+ const TUI_CURRENCY_DICTIONARY = {
130
+ ["643" /* Ruble */]: "RUB" /* Ruble */,
131
+ ["840" /* Dollar */]: "USD" /* Dollar */,
132
+ ["484" /* MexicanPeso */]: "MXN" /* MexicanPeso */,
133
+ ["702" /* SingaporeDollar */]: "SGD" /* SingaporeDollar */,
134
+ ["702" /* SingaporeDollar */]: "SGD" /* SingaporeDollar */,
135
+ ["036" /* AustralianDollar */]: "AUD" /* AustralianDollar */,
136
+ ["344" /* HongKongDollar */]: "HKD" /* HongKongDollar */,
137
+ ["124" /* CanadianDollar */]: "CAD" /* CanadianDollar */,
138
+ ["978" /* Euro */]: "EUR" /* Euro */,
139
+ ["826" /* Pound */]: "GBP" /* Pound */,
140
+ ["764" /* Baht */]: "THB" /* Baht */,
141
+ ["949" /* TurkishLira */]: "TRY" /* TurkishLira */,
142
+ ["156" /* YuanRenminbi */]: "CNY" /* YuanRenminbi */,
143
+ ["392" /* Yen */]: "JPY" /* Yen */,
144
+ ["376" /* IsraeliShekel */]: "ILS" /* IsraeliShekel */,
145
+ ["376" /* IsraeliShekel */]: "ILS" /* IsraeliShekel */,
146
+ ["356" /* IndianRupee */]: "INR" /* IndianRupee */,
147
+ ["756" /* SwissFranc */]: "CHF" /* SwissFranc */,
148
+ ["051" /* ArmenianDram */]: "AMD" /* ArmenianDram */,
149
+ ["410" /* Won */]: "KRW" /* Won */,
150
+ ["398" /* Tenge */]: "KZT" /* Tenge */,
151
+ ["980" /* Hryvnia */]: "UAH" /* Hryvnia */,
152
+ ["860" /* UzbekSum */]: "UZS" /* UzbekSum */,
153
+ ["417" /* KyrgyzstanSom */]: "KGS" /* KyrgyzstanSom */,
154
+ ["784" /* Dirham */]: "AED" /* Dirham */,
155
+ };
156
+ function tuiGetCurrencyByCode(currency) {
157
+ var _a;
158
+ return (_a = TUI_CURRENCY_DICTIONARY[currency]) !== null && _a !== void 0 ? _a : null;
159
+ }
160
+
129
161
  function tuiGetPaymentSystem(cardNumber) {
130
162
  if (cardNumber === ``) {
131
163
  return null;
@@ -252,5 +284,5 @@ function tuiIsExpireValid(expire) {
252
284
  * Generated bundle index. Do not edit.
253
285
  */
254
286
 
255
- export { tuiCreateAutoCorrectedExpirePipe, tuiFormatCurrency, tuiGetCurrencySymbol, tuiGetPaymentSystem, tuiIsCardLengthValid, tuiIsCardNumberValid, tuiIsElectron, tuiIsExpireValid, tuiIsMaestro, tuiIsMastercard, tuiIsMir, tuiIsVisa };
287
+ export { TUI_CURRENCY_DICTIONARY, tuiCreateAutoCorrectedExpirePipe, tuiFormatCurrency, tuiGetCurrencyByCode, tuiGetCurrencySymbol, tuiGetPaymentSystem, tuiIsCardLengthValid, tuiIsCardNumberValid, tuiIsElectron, tuiIsExpireValid, tuiIsMaestro, tuiIsMastercard, tuiIsMir, tuiIsVisa };
256
288
  //# sourceMappingURL=taiga-ui-addon-commerce-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-utils.js","sources":["../../../projects/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","../../../projects/addon-commerce/utils/get-currency-symbol.ts","../../../projects/addon-commerce/utils/format-currency.ts","../../../projects/addon-commerce/utils/get-payment-system.ts","../../../projects/addon-commerce/utils/is-card-length-valid.ts","../../../projects/addon-commerce/utils/is-card-number-valid.ts","../../../projects/addon-commerce/utils/is-expire-valid.ts","../../../projects/addon-commerce/utils/taiga-ui-addon-commerce-utils.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\n // TODO: investigate why the month is sometimes more than 2-length in safari\n const month = array[1].slice(2);\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// eslint-disable-next-line complexity\nexport function tuiGetCurrencySymbol(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","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiIsString} from '@taiga-ui/cdk';\n\nimport {tuiGetCurrencySymbol} from './get-currency-symbol';\n\nexport function tuiFormatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return tuiGetCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || tuiIsString(currency)\n ? currency || ``\n : String(currency).padStart(3, `0`);\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\n\nexport function tuiGetPaymentSystem(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 (tuiIsMaestro(three, two, one)) {\n return `maestro`;\n }\n\n if (tuiIsMastercard(four, two, one)) {\n return `mastercard`;\n }\n\n if (tuiIsMir(four)) {\n return `mir`;\n }\n\n if (tuiIsElectron(four)) {\n return `electron`;\n }\n\n if (tuiIsVisa(one)) {\n return `visa`;\n }\n\n return null;\n}\n\nexport function tuiIsMaestro(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 function tuiIsMastercard(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 function tuiIsMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function tuiIsElectron(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 function tuiIsVisa(one: number): boolean {\n return one === 4;\n}\n","import {tuiGetPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function tuiIsCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = tuiGetPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case `electron`:\n return length === 16;\n case `maestro`:\n return length > 11 && length < 20;\n case `mastercard`:\n case `mir`:\n return length > 15 && length < 20;\n case `visa`:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function tuiIsCardNumberValid(value: number | string): 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","export function tuiIsExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n // eslint-disable-next-line radix\n const month = parseInt(expire.slice(0, 2), 0);\n // eslint-disable-next-line radix\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAEA,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAC/C,MAAM,cAAc,GAAG,2BAA2B,CAAC;AAEnD;;;;;AAKG;SACa,gCAAgC,GAAA;AAC5C,IAAA,OAAO,CAAC,cAAc,EAAE,EAAC,QAAQ,EAAC,KAAI;;AAElC,QAAA,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AACnC,YAAA,cAAc,GAAG,CAAG,EAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAA,EAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AACnE,SAAA;;AAGD,QAAA,IACI,QAAQ,CAAC,MAAM,GAAG,CAAC;YACnB,QAAQ,CAAC,MAAM,GAAG,EAAE;AACpB,YAAA,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC/B;YACE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;;YAGnD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChC,YAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAC,MAAM,EAAC,KAAK,MAAM,KAAK,CAAC,CAAC,CAAC;AAEpD,YAAA,cAAc,GAAG,CAAA,EAAG,CAAG,CAAA,CAAA,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAA,CAAA,EACpD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAA,CAC3B,EAAE,CAAC;AACN,SAAA;QAED,MAAM,mBAAmB,GAAa,EAAE,CAAC;QACzC,MAAM,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA,CAAE,CAAC,CAAC;QAEnD,IAAI,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE;AACxC,YAAA,iBAAiB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC3B,iBAAiB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;AAC5C,YAAA,iBAAiB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAC3B,YAAA,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC/B,SAAA;QAED,OAAO;AACH,YAAA,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,mBAAmB;SACtB,CAAC;AACN,KAAC,CAAC;AACN;;AC/CA;AACM,SAAU,oBAAoB,CAAC,QAA6B,EAAA;AAC9D,IAAA,QAAQ,QAAQ;QACZ,KAAuB,KAAA,aAAA;AACvB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAwB,KAAA,cAAA;QACxB,KAA4B,KAAA,cAAA;QAC5B,KAA6B,KAAA,mBAAA;AAC7B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAiC,KAAA,uBAAA;AACjC,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,IAAI,CAAC;QAChB,KAAkC,KAAA,wBAAA;AAClC,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,IAAI,CAAC;QAChB,KAAgC,KAAA,sBAAA;AAChC,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,KAAK,CAAC;QACjB,KAAgC,KAAA,sBAAA;AAChC,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,IAAI,CAAC;QAChB,KAAsB,KAAA,YAAA;AACtB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAuB,KAAA,aAAA;AACvB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAsB,KAAA,YAAA;AACtB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAA6B,KAAA,mBAAA;AAC7B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAA8B,KAAA,oBAAA;AAC9B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,KAAK,CAAC;QACjB,KAAqB,KAAA,WAAA;AACrB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAA+B,KAAA,qBAAA;AAC/B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAA6B,KAAA,mBAAA;AAC7B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAA4B,KAAA,kBAAA;AAC5B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAA8B,KAAA,oBAAA;AAC9B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAqB,KAAA,WAAA;AACrB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAuB,KAAA,aAAA;AACvB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAyB,KAAA,eAAA;AACzB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAA0B,KAAA,gBAAA;AAC1B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,MAAM,CAAC;QAClB,KAA+B,KAAA,qBAAA;AAC/B,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,GAAG,CAAC;QACf,KAAwB,KAAA,cAAA;AACxB,QAAA,KAAA,KAAA;AACI,YAAA,OAAO,IAAI,CAAC;AAChB,QAAA;AACI,YAAA,OAAO,IAAI,CAAC;AACnB,KAAA;AACL;;ACxEM,SAAU,iBAAiB,CAAC,QAA6B,EAAA;AAC3D,IAAA,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AAExD,IAAA,OAAO,oBAAoB,CAAC,mBAAmB,CAAC,IAAI,mBAAmB,CAAC;AAC5E,CAAC;AAED,SAAS,iBAAiB,CAAC,QAA6B,EAAA;AACpD,IAAA,OAAO,QAAQ,KAAK,IAAI,IAAI,WAAW,CAAC,QAAQ,CAAC;UAC3C,QAAQ,IAAI,CAAE,CAAA;AAChB,UAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAG,CAAA,CAAA,CAAC,CAAC;AAC5C;;ACbM,SAAU,mBAAmB,CAAC,UAAkB,EAAA;IAClD,IAAI,UAAU,KAAK,CAAA,CAAE,EAAE;AACnB,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;AAED,IAAA,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/C,IAAA,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACxD,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1D,IAAA,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEzD,IAAI,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;AAC/B,QAAA,OAAO,SAAS,CAAC;AACpB,KAAA;IAED,IAAI,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;AACjC,QAAA,OAAO,YAAY,CAAC;AACvB,KAAA;AAED,IAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;AAChB,QAAA,OAAO,KAAK,CAAC;AAChB,KAAA;AAED,IAAA,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;AACrB,QAAA,OAAO,UAAU,CAAC;AACrB,KAAA;AAED,IAAA,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;AAChB,QAAA,OAAO,MAAM,CAAC;AACjB,KAAA;AAED,IAAA,OAAO,IAAI,CAAC;AAChB,CAAC;SAEe,YAAY,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW,EAAA;IAChE,IAAI,GAAG,KAAK,CAAC,EAAE;AACX,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;AAED,IAAA,IAAI,GAAG,KAAK,EAAE,KAAK,GAAG,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE;AACtC,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;IAED,IAAI,KAAK,GAAG,GAAG,EAAE;AACb,QAAA,OAAO,KAAK,CAAC;AAChB,KAAA;IAED,OAAO,KAAK,GAAG,GAAG,CAAC;AACvB,CAAC;SAEe,eAAe,CAAC,IAAY,EAAE,GAAW,EAAE,GAAW,EAAA;IAClE,IAAI,GAAG,KAAK,CAAC,EAAE;AACX,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;IAED,IAAI,GAAG,GAAG,EAAE,EAAE;AACV,QAAA,OAAO,KAAK,CAAC;AAChB,KAAA;AAED,IAAA,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,EAAE;AACtB,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;IAED,IAAI,IAAI,GAAG,IAAI,EAAE;AACb,QAAA,OAAO,KAAK,CAAC;AAChB,KAAA;AAED,IAAA,OAAO,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC;AACtC,CAAC;AAEK,SAAU,QAAQ,CAAC,IAAY,EAAA;AACjC,IAAA,OAAO,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC;AACtC,CAAC;AAEK,SAAU,aAAa,CAAC,IAAY,EAAA;AACtC,IAAA,QAAQ,IAAI;AACR,QAAA,KAAK,IAAI,CAAC;AACV,QAAA,KAAK,IAAI,CAAC;AACV,QAAA,KAAK,IAAI,CAAC;AACV,QAAA,KAAK,IAAI,CAAC;AACV,QAAA,KAAK,IAAI,CAAC;AACV,QAAA,KAAK,IAAI,CAAC;AACV,QAAA,KAAK,IAAI;AACL,YAAA,OAAO,IAAI,CAAC;AAChB,QAAA;AACI,YAAA,OAAO,KAAK,CAAC;AACpB,KAAA;AACL,CAAC;AAEK,SAAU,SAAS,CAAC,GAAW,EAAA;IACjC,OAAO,GAAG,KAAK,CAAC,CAAC;AACrB;;AC1FA;;AAEG;AACG,SAAU,oBAAoB,CAAC,UAAkB,EAAA;AACnD,IAAA,MAAM,EAAC,MAAM,EAAC,GAAG,UAAU,CAAC;AAC5B,IAAA,MAAM,aAAa,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;AAEtD,IAAA,QAAQ,aAAa;AACjB,QAAA,KAAK,CAAU,QAAA,CAAA;YACX,OAAO,MAAM,KAAK,EAAE,CAAC;AACzB,QAAA,KAAK,CAAS,OAAA,CAAA;AACV,YAAA,OAAO,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AACtC,QAAA,KAAK,YAAY,CAAC;AAClB,QAAA,KAAK,CAAK,GAAA,CAAA;AACN,YAAA,OAAO,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AACtC,QAAA,KAAK,CAAM,IAAA,CAAA;AACP,YAAA,OAAO,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AACtC,QAAA;AACI,YAAA,OAAO,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,EAAE,CAAC;AACxC,KAAA;AACL;;ACpBA;;AAEG;AACG,SAAU,oBAAoB,CAAC,KAAsB,EAAA;AACvD,IAAA,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAA,CAAE,CAAC,CAAC;AAEpE,IAAA,MAAM,EAAC,MAAM,EAAC,GAAG,UAAU,CAAC;AAC5B,IAAA,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,CAAE,CAAA,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;QACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEjC,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE;AAC5B,YAAA,MAAM,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC;AAE1B,YAAA,OAAO,OAAO,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC;AAC9C,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;AACjB,KAAC,CAAC,CAAC;IAEH,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AAClD;;ACtBM,SAAU,gBAAgB,CAAC,MAAc,EAAA;AAC3C,IAAA,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;AACzB,IAAA,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC;;AAE/C,IAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;AAE9C,IAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAE3C,IAAA,OAAO,IAAI,GAAG,WAAW,KAAK,IAAI,KAAK,WAAW,IAAI,KAAK,IAAI,YAAY,CAAC,CAAC;AACjF;;ACVA;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-utils.js","sources":["../../../projects/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","../../../projects/addon-commerce/utils/get-currency-symbol.ts","../../../projects/addon-commerce/utils/format-currency.ts","../../../projects/addon-commerce/utils/get-currency-by-code.ts","../../../projects/addon-commerce/utils/get-payment-system.ts","../../../projects/addon-commerce/utils/is-card-length-valid.ts","../../../projects/addon-commerce/utils/is-card-number-valid.ts","../../../projects/addon-commerce/utils/is-expire-valid.ts","../../../projects/addon-commerce/utils/taiga-ui-addon-commerce-utils.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\n // TODO: investigate why the month is sometimes more than 2-length in safari\n const month = array[1].slice(2);\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// eslint-disable-next-line complexity\nexport function tuiGetCurrencySymbol(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","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiIsString} from '@taiga-ui/cdk';\n\nimport {tuiGetCurrencySymbol} from './get-currency-symbol';\n\nexport function tuiFormatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return tuiGetCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || tuiIsString(currency)\n ? currency || ``\n : String(currency).padStart(3, `0`);\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\n\nexport const TUI_CURRENCY_DICTIONARY: Record<TuiCurrencyCode, TuiCurrency> = {\n [TuiCurrencyCode.Ruble]: TuiCurrency.Ruble,\n [TuiCurrencyCode.Dollar]: TuiCurrency.Dollar,\n [TuiCurrencyCode.MexicanPeso]: TuiCurrency.MexicanPeso,\n [TuiCurrencyCode.SingaporeDollar]: TuiCurrency.SingaporeDollar,\n [TuiCurrencyCode.SingaporeDollar]: TuiCurrency.SingaporeDollar,\n [TuiCurrencyCode.AustralianDollar]: TuiCurrency.AustralianDollar,\n [TuiCurrencyCode.HongKongDollar]: TuiCurrency.HongKongDollar,\n [TuiCurrencyCode.CanadianDollar]: TuiCurrency.CanadianDollar,\n [TuiCurrencyCode.Euro]: TuiCurrency.Euro,\n [TuiCurrencyCode.Pound]: TuiCurrency.Pound,\n [TuiCurrencyCode.Baht]: TuiCurrency.Baht,\n [TuiCurrencyCode.TurkishLira]: TuiCurrency.TurkishLira,\n [TuiCurrencyCode.YuanRenminbi]: TuiCurrency.YuanRenminbi,\n [TuiCurrencyCode.Yen]: TuiCurrency.Yen,\n [TuiCurrencyCode.IsraeliShekel]: TuiCurrency.IsraeliShekel,\n [TuiCurrencyCode.IsraeliShekel]: TuiCurrency.IsraeliShekel,\n [TuiCurrencyCode.IndianRupee]: TuiCurrency.IndianRupee,\n [TuiCurrencyCode.SwissFranc]: TuiCurrency.SwissFranc,\n [TuiCurrencyCode.ArmenianDram]: TuiCurrency.ArmenianDram,\n [TuiCurrencyCode.Won]: TuiCurrency.Won,\n [TuiCurrencyCode.Tenge]: TuiCurrency.Tenge,\n [TuiCurrencyCode.Hryvnia]: TuiCurrency.Hryvnia,\n [TuiCurrencyCode.UzbekSum]: TuiCurrency.UzbekSum,\n [TuiCurrencyCode.KyrgyzstanSom]: TuiCurrency.KyrgyzstanSom,\n [TuiCurrencyCode.Dirham]: TuiCurrency.Dirham,\n};\n\nexport function tuiGetCurrencyByCode(currency: TuiCurrencyCode): TuiCurrency | null {\n return TUI_CURRENCY_DICTIONARY[currency] ?? null;\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\n\nexport function tuiGetPaymentSystem(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 (tuiIsMaestro(three, two, one)) {\n return `maestro`;\n }\n\n if (tuiIsMastercard(four, two, one)) {\n return `mastercard`;\n }\n\n if (tuiIsMir(four)) {\n return `mir`;\n }\n\n if (tuiIsElectron(four)) {\n return `electron`;\n }\n\n if (tuiIsVisa(one)) {\n return `visa`;\n }\n\n return null;\n}\n\nexport function tuiIsMaestro(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 function tuiIsMastercard(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 function tuiIsMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function tuiIsElectron(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 function tuiIsVisa(one: number): boolean {\n return one === 4;\n}\n","import {tuiGetPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function tuiIsCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = tuiGetPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case `electron`:\n return length === 16;\n case `maestro`:\n return length > 11 && length < 20;\n case `mastercard`:\n case `mir`:\n return length > 15 && length < 20;\n case `visa`:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function tuiIsCardNumberValid(value: number | string): 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","export function tuiIsExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n // eslint-disable-next-line radix\n const month = parseInt(expire.slice(0, 2), 0);\n // eslint-disable-next-line radix\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/addon-commerce",
3
- "version": "3.16.0-dev.main-11c6b7c",
3
+ "version": "3.16.0-dev.main-0ee0b72",
4
4
  "description": "Extension package for Taiga UI related to commerce, payment systems, currencies etc.",
5
5
  "keywords": [
6
6
  "angular",
@@ -0,0 +1,3 @@
1
+ import { TuiCurrency, TuiCurrencyCode } from '@taiga-ui/addon-commerce/enums';
2
+ export declare const TUI_CURRENCY_DICTIONARY: Record<TuiCurrencyCode, TuiCurrency>;
3
+ export declare function tuiGetCurrencyByCode(currency: TuiCurrencyCode): TuiCurrency | null;
package/utils/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './create-auto-corrected-expire-pipe';
2
2
  export * from './format-currency';
3
+ export * from './get-currency-by-code';
3
4
  export * from './get-currency-symbol';
4
5
  export * from './get-payment-system';
5
6
  export * from './is-card-length-valid';