@taiga-ui/addon-commerce 3.25.0-dev.main-569524c → 3.25.0-dev.main-165117e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js +9 -82
- package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-components-input-card.umd.js +136 -71
- package/bundles/taiga-ui-addon-commerce-components-input-card.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-utils.umd.js +1 -1
- package/bundles/taiga-ui-addon-commerce-utils.umd.js.map +1 -1
- package/components/input-card/abstract-input-card.d.ts +24 -0
- package/components/input-card/index.d.ts +2 -0
- package/components/input-card/input-card.component.d.ts +9 -16
- package/components/input-card/input-card.providers.d.ts +13 -0
- package/components/input-card-grouped/input-card-grouped.component.d.ts +4 -13
- package/components/input-card-grouped/input-card-grouped.providers.d.ts +4 -7
- package/esm2015/components/input-card/abstract-input-card.js +65 -0
- package/esm2015/components/input-card/index.js +3 -1
- package/esm2015/components/input-card/input-card.component.js +26 -50
- package/esm2015/components/input-card/input-card.providers.js +20 -0
- package/esm2015/components/input-card-grouped/input-card-grouped.component.js +7 -46
- package/esm2015/components/input-card-grouped/input-card-grouped.providers.js +3 -16
- package/esm2015/utils/get-payment-system.js +2 -2
- package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js +8 -60
- package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components-input-card.js +104 -52
- package/fesm2015/taiga-ui-addon-commerce-components-input-card.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-utils.js +1 -1
- package/fesm2015/taiga-ui-addon-commerce-utils.js.map +1 -1
- package/package.json +1 -1
- package/utils/get-payment-system.d.ts +1 -1
|
@@ -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-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","// cspell:disable\nimport {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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"}
|
|
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","// cspell:disable\nimport {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 | null): 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,24 @@
|
|
|
1
|
+
import { ChangeDetectorRef, EventEmitter } from '@angular/core';
|
|
2
|
+
import { NgControl } from '@angular/forms';
|
|
3
|
+
import { TuiPaymentSystem } from '@taiga-ui/addon-commerce/types';
|
|
4
|
+
import { AbstractTuiNullableControl, TuiAutofillFieldName, TuiFocusableElementAccessor, TuiNativeFocusableElement } from '@taiga-ui/cdk';
|
|
5
|
+
import { PolymorpheusContent } from '@tinkoff/ng-polymorpheus';
|
|
6
|
+
import { TuiInputCardOptions } from './input-card.providers';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export declare abstract class AbstractTuiInputCard<T, Options extends TuiInputCardOptions = TuiInputCardOptions> extends AbstractTuiNullableControl<T> implements TuiFocusableElementAccessor {
|
|
9
|
+
protected readonly options: Options;
|
|
10
|
+
cardSrc: PolymorpheusContent;
|
|
11
|
+
autocompleteEnabled: boolean;
|
|
12
|
+
readonly binChange: EventEmitter<string | null>;
|
|
13
|
+
constructor(control: NgControl | null, cdr: ChangeDetectorRef, options: Options);
|
|
14
|
+
abstract get card(): string;
|
|
15
|
+
abstract get nativeFocusableElement(): TuiNativeFocusableElement | null;
|
|
16
|
+
get defaultIcon(): string | null;
|
|
17
|
+
get paymentSystem(): TuiPaymentSystem | null;
|
|
18
|
+
get icon(): PolymorpheusContent;
|
|
19
|
+
get autocompleteCard(): TuiAutofillFieldName;
|
|
20
|
+
get bin(): string | null;
|
|
21
|
+
protected getPaymentSystem(cardNumber?: string | null): TuiPaymentSystem | null;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AbstractTuiInputCard<any, any>, never>;
|
|
23
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractTuiInputCard<any, any>, never, never, { "cardSrc": "cardSrc"; "autocompleteEnabled": "autocompleteEnabled"; }, { "binChange": "binChange"; }, never>;
|
|
24
|
+
}
|
|
@@ -1,29 +1,22 @@
|
|
|
1
|
-
import { ChangeDetectorRef
|
|
1
|
+
import { ChangeDetectorRef } from '@angular/core';
|
|
2
2
|
import { NgControl } from '@angular/forms';
|
|
3
|
-
import { TuiPaymentSystem } from '@taiga-ui/addon-commerce/types';
|
|
4
|
-
import { AbstractTuiControl, TuiAutofillFieldName, TuiFocusableElementAccessor } from '@taiga-ui/cdk';
|
|
5
3
|
import { TuiTextMaskOptions } from '@taiga-ui/core';
|
|
6
|
-
import {
|
|
4
|
+
import { AbstractTuiInputCard } from './abstract-input-card';
|
|
5
|
+
import { TuiInputCardOptions } from './input-card.providers';
|
|
7
6
|
import * as i0 from "@angular/core";
|
|
8
|
-
export declare class TuiInputCardComponent extends
|
|
7
|
+
export declare class TuiInputCardComponent extends AbstractTuiInputCard<string> {
|
|
9
8
|
private readonly input?;
|
|
10
|
-
cardSrc: PolymorpheusContent;
|
|
11
|
-
autocompleteEnabled: boolean;
|
|
12
|
-
readonly binChange: EventEmitter<string | null>;
|
|
13
9
|
readonly textMaskOptions: TuiTextMaskOptions;
|
|
14
|
-
constructor(control: NgControl | null, cdr: ChangeDetectorRef);
|
|
15
|
-
|
|
10
|
+
constructor(control: NgControl | null, cdr: ChangeDetectorRef, options: TuiInputCardOptions);
|
|
11
|
+
get card(): string;
|
|
16
12
|
get nativeFocusableElement(): HTMLInputElement | null;
|
|
17
13
|
get focused(): boolean;
|
|
18
|
-
get icon(): PolymorpheusContent;
|
|
19
|
-
get autocomplete(): TuiAutofillFieldName;
|
|
20
|
-
get paymentSystem(): TuiPaymentSystem | null;
|
|
21
|
-
get bin(): string | null;
|
|
22
14
|
get formattedCard(): string;
|
|
23
15
|
onValueChange(value: string): void;
|
|
24
16
|
onFocused(focused: boolean): void;
|
|
25
17
|
writeValue(value: string | null): void;
|
|
26
18
|
protected getFallbackValue(): string;
|
|
27
|
-
|
|
28
|
-
static
|
|
19
|
+
private getFormattedCard;
|
|
20
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiInputCardComponent, [{ optional: true; self: true; }, null, null]>;
|
|
21
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiInputCardComponent, "tui-input-card", never, {}, {}, never, ["*", "input"]>;
|
|
29
22
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { InjectionToken, ValueProvider } from '@angular/core';
|
|
2
|
+
import { TuiPaymentSystem } from '@taiga-ui/addon-commerce/types';
|
|
3
|
+
import { TuiHandler } from '@taiga-ui/cdk';
|
|
4
|
+
import { PolymorpheusContent } from '@tinkoff/ng-polymorpheus';
|
|
5
|
+
export interface TuiInputCardOptions {
|
|
6
|
+
cardSrc: PolymorpheusContent;
|
|
7
|
+
readonly autocompleteEnabled: boolean;
|
|
8
|
+
readonly icons: Record<TuiPaymentSystem, string>;
|
|
9
|
+
readonly paymentSystemHandler: TuiHandler<string | null | undefined, TuiPaymentSystem | null>;
|
|
10
|
+
}
|
|
11
|
+
export declare const TUI_INPUT_CARD_DEFAULT_OPTIONS: TuiInputCardOptions;
|
|
12
|
+
export declare const TUI_INPUT_CARD_OPTIONS: InjectionToken<TuiInputCardOptions>;
|
|
13
|
+
export declare const tuiInputCardOptionsProvider: (options: Partial<TuiInputCardOptions>) => ValueProvider;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { ChangeDetectorRef, ElementRef, EventEmitter } from '@angular/core';
|
|
2
2
|
import { NgControl } from '@angular/forms';
|
|
3
|
+
import { AbstractTuiInputCard } from '@taiga-ui/addon-commerce/components/input-card';
|
|
3
4
|
import { TuiCard } from '@taiga-ui/addon-commerce/interfaces';
|
|
4
5
|
import { TuiCodeCVCLength } from '@taiga-ui/addon-commerce/types';
|
|
5
|
-
import {
|
|
6
|
+
import { TuiAutofillFieldName, TuiFocusableElementAccessor } from '@taiga-ui/cdk';
|
|
6
7
|
import { TuiBrightness, TuiDataListComponent, TuiDataListHost, TuiTextfieldController, TuiTextMaskOptions } from '@taiga-ui/core';
|
|
7
8
|
import { PolymorpheusContent } from '@tinkoff/ng-polymorpheus';
|
|
8
9
|
import { Observable } from 'rxjs';
|
|
9
10
|
import { TuiCardGroupedTexts, TuiInputCardGroupedOptions } from './input-card-grouped.providers';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
|
-
export declare class TuiInputCardGroupedComponent extends
|
|
12
|
+
export declare class TuiInputCardGroupedComponent extends AbstractTuiInputCard<TuiCard, TuiInputCardGroupedOptions> implements TuiFocusableElementAccessor, TuiDataListHost<Partial<TuiCard>> {
|
|
12
13
|
private readonly el;
|
|
13
14
|
readonly mode$: Observable<TuiBrightness | null>;
|
|
14
15
|
readonly cardGroupedTexts$: Observable<TuiCardGroupedTexts>;
|
|
15
16
|
readonly controller: TuiTextfieldController;
|
|
16
|
-
private readonly options;
|
|
17
17
|
private readonly inputCard?;
|
|
18
18
|
private readonly cardNumberAutofocusRef?;
|
|
19
19
|
private readonly inputExpire?;
|
|
@@ -21,13 +21,10 @@ export declare class TuiInputCardGroupedComponent extends AbstractTuiNullableCon
|
|
|
21
21
|
private readonly inputCVC?;
|
|
22
22
|
private readonly cvcCardAutofocusRef?;
|
|
23
23
|
private expireInert;
|
|
24
|
-
autocompleteEnabled: boolean;
|
|
25
|
-
cardSrc: PolymorpheusContent;
|
|
26
24
|
exampleText: string;
|
|
27
25
|
cardValidator: import("@taiga-ui/cdk").TuiBooleanHandler<string>;
|
|
28
26
|
set codeLength(length: TuiCodeCVCLength);
|
|
29
27
|
readonly autofilledChange: EventEmitter<boolean>;
|
|
30
|
-
readonly binChange: EventEmitter<string | null>;
|
|
31
28
|
readonly dropdown: PolymorpheusContent;
|
|
32
29
|
readonly datalist?: TuiDataListComponent<TuiCard>;
|
|
33
30
|
exampleTextCVC: string;
|
|
@@ -44,16 +41,12 @@ export declare class TuiInputCardGroupedComponent extends AbstractTuiNullableCon
|
|
|
44
41
|
get cvc(): string;
|
|
45
42
|
get hasCleaner(): boolean;
|
|
46
43
|
get hasDropdown(): boolean;
|
|
47
|
-
get defaultIcon(): string | null;
|
|
48
|
-
get icon(): PolymorpheusContent;
|
|
49
|
-
get bin(): string | null;
|
|
50
44
|
get placeholderRaised(): boolean;
|
|
51
45
|
get hasCardNumber(): boolean;
|
|
52
46
|
get idCard(): string;
|
|
53
47
|
get idExpire(): string;
|
|
54
48
|
get idCVC(): string;
|
|
55
49
|
get isCardCollapsed(): boolean;
|
|
56
|
-
get autocompleteCard(): TuiAutofillFieldName;
|
|
57
50
|
get autocompleteExpire(): TuiAutofillFieldName;
|
|
58
51
|
get autocompleteCVC(): TuiAutofillFieldName;
|
|
59
52
|
get tailLength(): number;
|
|
@@ -82,13 +75,11 @@ export declare class TuiInputCardGroupedComponent extends AbstractTuiNullableCon
|
|
|
82
75
|
focusExpire(): void;
|
|
83
76
|
focusCVC(): void;
|
|
84
77
|
private get cardFocused();
|
|
85
|
-
private get paymentSystem();
|
|
86
78
|
private get hasExtraSpace();
|
|
87
|
-
private getPaymentSystem;
|
|
88
79
|
private isFocusable;
|
|
89
80
|
private updateBin;
|
|
90
81
|
private updateProperty;
|
|
91
82
|
private focusInput;
|
|
92
83
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiInputCardGroupedComponent, [{ optional: true; self: true; }, null, null, null, null, null, null]>;
|
|
93
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiInputCardGroupedComponent, "tui-input-card-grouped", never, { "
|
|
84
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiInputCardGroupedComponent, "tui-input-card-grouped", never, { "exampleText": "exampleText"; "cardValidator": "cardValidator"; "codeLength": "codeLength"; }, { "autofilledChange": "autofilledChange"; }, ["dropdown", "datalist"], never>;
|
|
94
85
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { InjectionToken, ValueProvider } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import { TuiBooleanHandler
|
|
2
|
+
import { TuiInputCardOptions } from '@taiga-ui/addon-commerce/components/input-card';
|
|
3
|
+
import { TuiBooleanHandler } from '@taiga-ui/cdk';
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
5
|
export interface TuiCardGroupedTexts {
|
|
6
6
|
readonly cardNumberText: string;
|
|
@@ -11,13 +11,10 @@ export interface TuiCardGroupedTexts {
|
|
|
11
11
|
* InputCardGrouped texts
|
|
12
12
|
*/
|
|
13
13
|
export declare const TUI_INPUT_CARD_GROUPED_TEXTS: InjectionToken<Observable<TuiCardGroupedTexts>>;
|
|
14
|
-
export interface TuiInputCardGroupedOptions {
|
|
14
|
+
export interface TuiInputCardGroupedOptions extends TuiInputCardOptions {
|
|
15
|
+
readonly cardValidator: TuiBooleanHandler<string>;
|
|
15
16
|
readonly exampleText: string;
|
|
16
17
|
readonly exampleTextCVC: string;
|
|
17
|
-
readonly autocompleteEnabled: boolean;
|
|
18
|
-
readonly icons: Record<TuiPaymentSystem, string>;
|
|
19
|
-
readonly cardValidator: TuiBooleanHandler<string>;
|
|
20
|
-
readonly paymentSystemHandler: TuiHandler<string, TuiPaymentSystem | null>;
|
|
21
18
|
}
|
|
22
19
|
export declare const TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS: TuiInputCardGroupedOptions;
|
|
23
20
|
export declare const TUI_INPUT_CARD_GROUPED_OPTIONS: InjectionToken<TuiInputCardGroupedOptions>;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { ChangeDetectorRef, Directive, EventEmitter, Inject, Input, Optional, Output, Self, } from '@angular/core';
|
|
3
|
+
import { NgControl } from '@angular/forms';
|
|
4
|
+
import { AbstractTuiNullableControl, tuiDefaultProp, tuiPure, } from '@taiga-ui/cdk';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/forms";
|
|
7
|
+
export class AbstractTuiInputCard extends AbstractTuiNullableControl {
|
|
8
|
+
constructor(control, cdr, options) {
|
|
9
|
+
super(control, cdr);
|
|
10
|
+
this.options = options;
|
|
11
|
+
this.cardSrc = ``;
|
|
12
|
+
this.autocompleteEnabled = this.options.autocompleteEnabled;
|
|
13
|
+
this.binChange = new EventEmitter();
|
|
14
|
+
}
|
|
15
|
+
get defaultIcon() {
|
|
16
|
+
const paymentSystem = this.getPaymentSystem(this.card);
|
|
17
|
+
return paymentSystem && this.options.icons[paymentSystem];
|
|
18
|
+
}
|
|
19
|
+
get paymentSystem() {
|
|
20
|
+
return this.getPaymentSystem(this.card);
|
|
21
|
+
}
|
|
22
|
+
get icon() {
|
|
23
|
+
return this.cardSrc || this.defaultIcon;
|
|
24
|
+
}
|
|
25
|
+
get autocompleteCard() {
|
|
26
|
+
return this.autocompleteEnabled ? `cc-number` : `off`;
|
|
27
|
+
}
|
|
28
|
+
get bin() {
|
|
29
|
+
return this.card.length < 6 ? null : this.card.slice(0, 6);
|
|
30
|
+
}
|
|
31
|
+
getPaymentSystem(cardNumber) {
|
|
32
|
+
return this.options.paymentSystemHandler(cardNumber);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
AbstractTuiInputCard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AbstractTuiInputCard, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
36
|
+
AbstractTuiInputCard.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: AbstractTuiInputCard, inputs: { cardSrc: "cardSrc", autocompleteEnabled: "autocompleteEnabled" }, outputs: { binChange: "binChange" }, usesInheritance: true, ngImport: i0 });
|
|
37
|
+
__decorate([
|
|
38
|
+
tuiDefaultProp()
|
|
39
|
+
], AbstractTuiInputCard.prototype, "cardSrc", void 0);
|
|
40
|
+
__decorate([
|
|
41
|
+
tuiDefaultProp()
|
|
42
|
+
], AbstractTuiInputCard.prototype, "autocompleteEnabled", void 0);
|
|
43
|
+
__decorate([
|
|
44
|
+
tuiPure
|
|
45
|
+
], AbstractTuiInputCard.prototype, "getPaymentSystem", null);
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AbstractTuiInputCard, decorators: [{
|
|
47
|
+
type: Directive
|
|
48
|
+
}], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
|
|
49
|
+
type: Optional
|
|
50
|
+
}, {
|
|
51
|
+
type: Self
|
|
52
|
+
}, {
|
|
53
|
+
type: Inject,
|
|
54
|
+
args: [NgControl]
|
|
55
|
+
}] }, { type: i0.ChangeDetectorRef, decorators: [{
|
|
56
|
+
type: Inject,
|
|
57
|
+
args: [ChangeDetectorRef]
|
|
58
|
+
}] }, { type: undefined }]; }, propDecorators: { cardSrc: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], autocompleteEnabled: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], binChange: [{
|
|
63
|
+
type: Output
|
|
64
|
+
}], getPaymentSystem: [] } });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtaW5wdXQtY2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY2FyZC9hYnN0cmFjdC1pbnB1dC1jYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUNILDBCQUEwQixFQUUxQixjQUFjLEVBR2QsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDOzs7QUFNdkIsTUFBTSxPQUFnQixvQkFJbEIsU0FBUSwwQkFBNkI7SUFjckMsWUFJSSxPQUF5QixFQUNFLEdBQXNCLEVBQzlCLE9BQWdCO1FBRW5DLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFGRCxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBZnZDLFlBQU8sR0FBd0IsRUFBRSxDQUFDO1FBSWxDLHdCQUFtQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUM7UUFHOUMsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO0lBV3ZELENBQUM7SUFNRCxJQUFJLFdBQVc7UUFDWCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXZELE9BQU8sYUFBYSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQUksR0FBRztRQUNILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBR1MsZ0JBQWdCLENBQUMsVUFBMEI7UUFDakQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7O2tIQTFEaUIsb0JBQW9CO3NHQUFwQixvQkFBb0I7QUFTdEM7SUFEQyxjQUFjLEVBQUU7cURBQ2lCO0FBSWxDO0lBREMsY0FBYyxFQUFFO2lFQUNzQztBQTJDdkQ7SUFEQyxPQUFPOzREQUdQOzRGQTFEaUIsb0JBQW9CO2tCQUR6QyxTQUFTOzswQkFvQkQsUUFBUTs7MEJBQ1IsSUFBSTs7MEJBQ0osTUFBTTsyQkFBQyxTQUFTOzswQkFFaEIsTUFBTTsyQkFBQyxpQkFBaUI7aUVBZDdCLE9BQU87c0JBRk4sS0FBSztnQkFNTixtQkFBbUI7c0JBRmxCLEtBQUs7Z0JBS0csU0FBUztzQkFEakIsTUFBTTtnQkF5Q0csZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUdWlQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aU51bGxhYmxlQ29udHJvbCxcbiAgICBUdWlBdXRvZmlsbEZpZWxkTmFtZSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbiAgICB0dWlQdXJlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlJbnB1dENhcmRPcHRpb25zfSBmcm9tICcuL2lucHV0LWNhcmQucHJvdmlkZXJzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RUdWlJbnB1dENhcmQ8XG4gICAgICAgIFQsXG4gICAgICAgIE9wdGlvbnMgZXh0ZW5kcyBUdWlJbnB1dENhcmRPcHRpb25zID0gVHVpSW5wdXRDYXJkT3B0aW9ucyxcbiAgICA+XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aU51bGxhYmxlQ29udHJvbDxUPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNhcmRTcmM6IFBvbHltb3JwaGV1c0NvbnRlbnQgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBhdXRvY29tcGxldGVFbmFibGVkID0gdGhpcy5vcHRpb25zLmF1dG9jb21wbGV0ZUVuYWJsZWQ7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBiaW5DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IG51bGw+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wdGlvbnM6IE9wdGlvbnMsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNkcik7XG4gICAgfVxuXG4gICAgYWJzdHJhY3QgZ2V0IGNhcmQoKTogc3RyaW5nO1xuXG4gICAgYWJzdHJhY3QgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGw7XG5cbiAgICBnZXQgZGVmYXVsdEljb24oKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHBheW1lbnRTeXN0ZW0gPSB0aGlzLmdldFBheW1lbnRTeXN0ZW0odGhpcy5jYXJkKTtcblxuICAgICAgICByZXR1cm4gcGF5bWVudFN5c3RlbSAmJiB0aGlzLm9wdGlvbnMuaWNvbnNbcGF5bWVudFN5c3RlbV07XG4gICAgfVxuXG4gICAgZ2V0IHBheW1lbnRTeXN0ZW0oKTogVHVpUGF5bWVudFN5c3RlbSB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRQYXltZW50U3lzdGVtKHRoaXMuY2FyZCk7XG4gICAgfVxuXG4gICAgZ2V0IGljb24oKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhcmRTcmMgfHwgdGhpcy5kZWZhdWx0SWNvbjtcbiAgICB9XG5cbiAgICBnZXQgYXV0b2NvbXBsZXRlQ2FyZCgpOiBUdWlBdXRvZmlsbEZpZWxkTmFtZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmF1dG9jb21wbGV0ZUVuYWJsZWQgPyBgY2MtbnVtYmVyYCA6IGBvZmZgO1xuICAgIH1cblxuICAgIGdldCBiaW4oKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhcmQubGVuZ3RoIDwgNiA/IG51bGwgOiB0aGlzLmNhcmQuc2xpY2UoMCwgNik7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcm90ZWN0ZWQgZ2V0UGF5bWVudFN5c3RlbShjYXJkTnVtYmVyPzogc3RyaW5nIHwgbnVsbCk6IFR1aVBheW1lbnRTeXN0ZW0gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5wYXltZW50U3lzdGVtSGFuZGxlcihjYXJkTnVtYmVyKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
export * from './abstract-input-card';
|
|
1
2
|
export * from './input-card.component';
|
|
2
3
|
export * from './input-card.directive';
|
|
3
4
|
export * from './input-card.module';
|
|
4
|
-
|
|
5
|
+
export * from './input-card.providers';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hYnN0cmFjdC1pbnB1dC1jYXJkJztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1jYXJkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LWNhcmQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtY2FyZC5wcm92aWRlcnMnO1xuIl19
|
|
@@ -1,36 +1,27 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component,
|
|
2
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Optional, Self, ViewChild, } from '@angular/core';
|
|
3
3
|
import { NgControl } from '@angular/forms';
|
|
4
4
|
import { TUI_CARD_MASK } from '@taiga-ui/addon-commerce/constants';
|
|
5
|
-
import {
|
|
6
|
-
import { AbstractTuiControl, tuiAsControl, tuiAsFocusableItemAccessor, tuiDefaultProp, } from '@taiga-ui/cdk';
|
|
5
|
+
import { tuiAsControl, tuiAsFocusableItemAccessor, tuiPure } from '@taiga-ui/cdk';
|
|
7
6
|
import { TuiPrimitiveTextfieldComponent } from '@taiga-ui/core';
|
|
7
|
+
import { AbstractTuiInputCard } from './abstract-input-card';
|
|
8
|
+
import { TUI_INPUT_CARD_OPTIONS } from './input-card.providers';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "@taiga-ui/core";
|
|
10
11
|
import * as i2 from "@taiga-ui/kit";
|
|
11
12
|
import * as i3 from "@angular/forms";
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
electron: 'tuiIconElectron',
|
|
16
|
-
mastercard: 'tuiIconMastercard',
|
|
17
|
-
maestro: 'tuiIconMaestro',
|
|
18
|
-
};
|
|
19
|
-
export class TuiInputCardComponent extends AbstractTuiControl {
|
|
20
|
-
constructor(control, cdr) {
|
|
21
|
-
super(control, cdr);
|
|
22
|
-
this.cardSrc = '';
|
|
23
|
-
this.autocompleteEnabled = false;
|
|
24
|
-
this.binChange = new EventEmitter();
|
|
13
|
+
export class TuiInputCardComponent extends AbstractTuiInputCard {
|
|
14
|
+
constructor(control, cdr, options) {
|
|
15
|
+
super(control, cdr, options);
|
|
25
16
|
this.textMaskOptions = {
|
|
26
17
|
mask: TUI_CARD_MASK,
|
|
27
18
|
guide: false,
|
|
28
19
|
pipe: conformedValue => conformedValue.trim(),
|
|
29
20
|
};
|
|
30
21
|
}
|
|
31
|
-
get
|
|
32
|
-
|
|
33
|
-
return
|
|
22
|
+
get card() {
|
|
23
|
+
var _a;
|
|
24
|
+
return (_a = this.value) !== null && _a !== void 0 ? _a : '';
|
|
34
25
|
}
|
|
35
26
|
get nativeFocusableElement() {
|
|
36
27
|
return this.input ? this.input.nativeFocusableElement : null;
|
|
@@ -38,23 +29,8 @@ export class TuiInputCardComponent extends AbstractTuiControl {
|
|
|
38
29
|
get focused() {
|
|
39
30
|
return !!this.input && this.input.focused;
|
|
40
31
|
}
|
|
41
|
-
get icon() {
|
|
42
|
-
return this.cardSrc || this.defaultCardIcon;
|
|
43
|
-
}
|
|
44
|
-
get autocomplete() {
|
|
45
|
-
return this.autocompleteEnabled ? 'cc-number' : 'off';
|
|
46
|
-
}
|
|
47
|
-
get paymentSystem() {
|
|
48
|
-
return tuiGetPaymentSystem(this.value);
|
|
49
|
-
}
|
|
50
|
-
get bin() {
|
|
51
|
-
return this.value.length < 6 ? null : this.value.slice(0, 6);
|
|
52
|
-
}
|
|
53
32
|
get formattedCard() {
|
|
54
|
-
return this.
|
|
55
|
-
.split('')
|
|
56
|
-
.map((char, index) => (index && index % 4 === 0 ? ` ${char}` : char))
|
|
57
|
-
.join('');
|
|
33
|
+
return this.getFormattedCard(this.card);
|
|
58
34
|
}
|
|
59
35
|
onValueChange(value) {
|
|
60
36
|
const parsed = value.split(' ').join('');
|
|
@@ -79,18 +55,21 @@ export class TuiInputCardComponent extends AbstractTuiControl {
|
|
|
79
55
|
getFallbackValue() {
|
|
80
56
|
return '';
|
|
81
57
|
}
|
|
58
|
+
getFormattedCard(cardNumber) {
|
|
59
|
+
return cardNumber
|
|
60
|
+
.split('')
|
|
61
|
+
.map((char, index) => (index && index % 4 === 0 ? ` ${char}` : char))
|
|
62
|
+
.join('');
|
|
63
|
+
}
|
|
82
64
|
}
|
|
83
|
-
TuiInputCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputCardComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
TuiInputCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiInputCardComponent, selector: "tui-input-card",
|
|
65
|
+
TuiInputCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputCardComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TUI_INPUT_CARD_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
|
|
66
|
+
TuiInputCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiInputCardComponent, selector: "tui-input-card", providers: [
|
|
85
67
|
tuiAsFocusableItemAccessor(TuiInputCardComponent),
|
|
86
68
|
tuiAsControl(TuiInputCardComponent),
|
|
87
69
|
], viewQueries: [{ propertyName: "input", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-primitive-textfield\n tuiValueAccessor\n class=\"t-input\"\n [tuiTextfieldCustomContent]=\"icon\"\n [readOnly]=\"readOnly\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [nativeId]=\"nativeId\"\n [invalid]=\"computedInvalid\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [textMask]=\"textMaskOptions\"\n [value]=\"formattedCard\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n</tui-primitive-textfield>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.t-input{border-radius:inherit;text-align:inherit}\n"], components: [{ type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }], directives: [{ type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2.TuiValueAccessorDirective, selector: "[tuiValueAccessor]" }, { type: i1.TuiTextfieldCustomContentDirective, selector: "[tuiTextfieldCustomContent]", inputs: ["tuiTextfieldCustomContent"] }, { type: i2.MaskedInputDirective, selector: "[textMask]", inputs: ["textMask"], exportAs: ["textMask"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
88
70
|
__decorate([
|
|
89
|
-
|
|
90
|
-
], TuiInputCardComponent.prototype, "
|
|
91
|
-
__decorate([
|
|
92
|
-
tuiDefaultProp()
|
|
93
|
-
], TuiInputCardComponent.prototype, "autocompleteEnabled", void 0);
|
|
71
|
+
tuiPure
|
|
72
|
+
], TuiInputCardComponent.prototype, "getFormattedCard", null);
|
|
94
73
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputCardComponent, decorators: [{
|
|
95
74
|
type: Component,
|
|
96
75
|
args: [{
|
|
@@ -113,14 +92,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
113
92
|
}] }, { type: i0.ChangeDetectorRef, decorators: [{
|
|
114
93
|
type: Inject,
|
|
115
94
|
args: [ChangeDetectorRef]
|
|
95
|
+
}] }, { type: undefined, decorators: [{
|
|
96
|
+
type: Inject,
|
|
97
|
+
args: [TUI_INPUT_CARD_OPTIONS]
|
|
116
98
|
}] }]; }, propDecorators: { input: [{
|
|
117
99
|
type: ViewChild,
|
|
118
100
|
args: [TuiPrimitiveTextfieldComponent]
|
|
119
|
-
}],
|
|
120
|
-
|
|
121
|
-
}], autocompleteEnabled: [{
|
|
122
|
-
type: Input
|
|
123
|
-
}], binChange: [{
|
|
124
|
-
type: Output
|
|
125
|
-
}] } });
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQvaW5wdXQtY2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQvaW5wdXQtY2FyZC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBQ0osU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFakUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUNILGtCQUFrQixFQUNsQixZQUFZLEVBQ1osMEJBQTBCLEVBRTFCLGNBQWMsR0FFakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLDhCQUE4QixFQUFxQixNQUFNLGdCQUFnQixDQUFDOzs7OztBQUdsRixNQUFNLEtBQUssR0FBcUM7SUFDNUMsR0FBRyxFQUFFLFlBQVk7SUFDakIsSUFBSSxFQUFFLGFBQWE7SUFDbkIsUUFBUSxFQUFFLGlCQUFpQjtJQUMzQixVQUFVLEVBQUUsbUJBQW1CO0lBQy9CLE9BQU8sRUFBRSxnQkFBZ0I7Q0FDNUIsQ0FBQztBQVlGLE1BQU0sT0FBTyxxQkFDVCxTQUFRLGtCQUEwQjtJQXVCbEMsWUFJSSxPQUF5QixFQUNFLEdBQXNCO1FBRWpELEtBQUssQ0FBQyxPQUFPLEVBQUUs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QUM7UUFFeEIsSUFBSSxVQUFVLEtBQUssTUFBTSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQy9CO0lBQ0wsQ0FBQztJQUVTLGdCQUFnQjtRQUN0QixPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7O21IQXRHUSxxQkFBcUIsa0JBMkJsQixTQUFTLHlDQUVULGlCQUFpQjt1R0E3QnBCLHFCQUFxQiwwSkFMbkI7UUFDUCwwQkFBMEIsQ0FBQyxxQkFBcUIsQ0FBQztRQUNqRCxZQUFZLENBQUMscUJBQXFCLENBQUM7S0FDdEMsaUVBTVUsOEJBQThCLHVFQ2pEN0MsOHFCQXVCQTtBRCtCSTtJQURDLGNBQWMsRUFBRTtzREFDaUI7QUFJbEM7SUFEQyxjQUFjLEVBQUU7a0VBQ1c7NEZBYm5CLHFCQUFxQjtrQkFWakMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixXQUFXLEVBQUUsNEJBQTRCO29CQUN6QyxTQUFTLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztvQkFDdEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFNBQVMsRUFBRTt3QkFDUCwwQkFBMEIsdUJBQXVCO3dCQUNqRCxZQUFZLHVCQUF1QjtxQkFDdEM7aUJBQ0o7OzBCQTBCUSxRQUFROzswQkFDUixJQUFJOzswQkFDSixNQUFNOzJCQUFDLFNBQVM7OzBCQUVoQixNQUFNOzJCQUFDLGlCQUFpQjs0Q0F4QlosS0FBSztzQkFEckIsU0FBUzt1QkFBQyw4QkFBOEI7Z0JBS3pDLE9BQU87c0JBRk4sS0FBSztnQkFNTixtQkFBbUI7c0JBRmxCLEtBQUs7Z0JBS0csU0FBUztzQkFEakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1RVSV9DQVJEX01BU0t9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuaW1wb3J0IHt0dWlHZXRQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdXRpbHMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgdHVpQXNDb250cm9sLFxuICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yLFxuICAgIFR1aUF1dG9maWxsRmllbGROYW1lLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCwgVHVpVGV4dE1hc2tPcHRpb25zfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmNvbnN0IGljb25zOiBSZWNvcmQ8VHVpUGF5bWVudFN5c3RlbSwgc3RyaW5nPiA9IHtcbiAgICBtaXI6ICd0dWlJY29uTWlyJyxcbiAgICB2aXNhOiAndHVpSWNvblZpc2EnLFxuICAgIGVsZWN0cm9uOiAndHVpSWNvbkVsZWN0cm9uJyxcbiAgICBtYXN0ZXJjYXJkOiAndHVpSWNvbk1hc3RlcmNhcmQnLFxuICAgIG1hZXN0cm86ICd0dWlJY29uTWFlc3RybycsXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtY2FyZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1jYXJkLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpSW5wdXRDYXJkQ29tcG9uZW50KSxcbiAgICAgICAgdHVpQXNDb250cm9sKFR1aUlucHV0Q2FyZENvbXBvbmVudCksXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRDYXJkQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aUNvbnRyb2w8c3RyaW5nPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZChUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dD86IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjYXJkU3JjOiBQb2x5bW9ycGhldXNDb250ZW50ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgYXV0b2NvbXBsZXRlRW5hYmxlZCA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgYmluQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCBudWxsPigpO1xuXG4gICAgcmVhZG9ubHkgdGV4dE1hc2tPcHRpb25zOiBUdWlUZXh0TWFza09wdGlvbnMgPSB7XG4gICAgICAgIG1hc2s6IFRVSV9DQVJEX01BU0ssXG4gICAgICAgIGd1aWRlOiBmYWxzZSxcbiAgICAgICAgcGlwZTogY29uZm9ybWVkVmFsdWUgPT4gY29uZm9ybWVkVmFsdWUudHJpbSgpLFxuICAgIH07XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2RyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBkZWZhdWx0Q2FyZEljb24oKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHtwYXltZW50U3lzdGVtfSA9IHRoaXM7XG5cbiAgICAgICAgcmV0dXJuIHBheW1lbnRTeXN0ZW0gPyBpY29uc1twYXltZW50U3lzdGVtXSA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dCA/IHRoaXMuaW5wdXQubmF0aXZlRm9jdXNhYmxlRWxlbWVudCA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5mb2N1c2VkO1xuICAgIH1cblxuICAgIGdldCBpY29uKCk6IFBvbHltb3JwaGV1c0NvbnRlbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5jYXJkU3JjIHx8IHRoaXMuZGVmYXVsdENhcmRJY29uO1xuICAgIH1cblxuICAgIGdldCBhdXRvY29tcGxldGUoKTogVHVpQXV0b2ZpbGxGaWVsZE5hbWUge1xuICAgICAgICByZXR1cm4gdGhpcy5hdXRvY29tcGxldGVFbmFibGVkID8gJ2NjLW51bWJlcicgOiAnb2ZmJztcbiAgICB9XG5cbiAgICBnZXQgcGF5bWVudFN5c3RlbSgpOiBUdWlQYXltZW50U3lzdGVtIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0dWlHZXRQYXltZW50U3lzdGVtKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIGdldCBiaW4oKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLmxlbmd0aCA8IDYgPyBudWxsIDogdGhpcy52YWx1ZS5zbGljZSgwLCA2KTtcbiAgICB9XG5cbiAgICBnZXQgZm9ybWF0dGVkQ2FyZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZVxuICAgICAgICAgICAgLnNwbGl0KCcnKVxuICAgICAgICAgICAgLm1hcCgoY2hhciwgaW5kZXgpID0+IChpbmRleCAmJiBpbmRleCAlIDQgPT09IDAgPyBgICR7Y2hhcn1gIDogY2hhcikpXG4gICAgICAgICAgICAuam9pbignJyk7XG4gICAgfVxuXG4gICAgb25WYWx1ZUNoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IHZhbHVlLnNwbGl0KCcgJykuam9pbignJyk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRCaW4gPSB0aGlzLmJpbjtcblxuICAgICAgICB0aGlzLnZhbHVlID0gcGFyc2VkO1xuXG4gICAgICAgIGNvbnN0IG5ld0JpbiA9IHRoaXMuYmluO1xuXG4gICAgICAgIGlmIChjdXJyZW50QmluICE9PSBuZXdCaW4pIHtcbiAgICAgICAgICAgIHRoaXMuYmluQ2hhbmdlLmVtaXQobmV3QmluKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRCaW4gPSB0aGlzLmJpbjtcblxuICAgICAgICBzdXBlci53cml0ZVZhbHVlKHZhbHVlKTtcblxuICAgICAgICBjb25zdCBuZXdCaW4gPSB0aGlzLmJpbjtcblxuICAgICAgICBpZiAoY3VycmVudEJpbiAhPT0gbmV3QmluKSB7XG4gICAgICAgICAgICB0aGlzLmJpbkNoYW5nZS5lbWl0KG5ld0Jpbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmFsbGJhY2tWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxufVxuIiwiPHR1aS1wcmltaXRpdmUtdGV4dGZpZWxkXG4gICAgdHVpVmFsdWVBY2Nlc3NvclxuICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgW3R1aVRleHRmaWVsZEN1c3RvbUNvbnRlbnRdPVwiaWNvblwiXG4gICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtmb2N1c2FibGVdPVwiZm9jdXNhYmxlXCJcbiAgICBbbmF0aXZlSWRdPVwibmF0aXZlSWRcIlxuICAgIFtpbnZhbGlkXT1cImNvbXB1dGVkSW52YWxpZFwiXG4gICAgW3BzZXVkb0hvdmVyXT1cInBzZXVkb0hvdmVyXCJcbiAgICBbcHNldWRvQWN0aXZlXT1cInBzZXVkb0FjdGl2ZVwiXG4gICAgW3BzZXVkb0ZvY3VzXT1cInBzZXVkb0ZvY3VzXCJcbiAgICBbdGV4dE1hc2tdPVwidGV4dE1hc2tPcHRpb25zXCJcbiAgICBbdmFsdWVdPVwiZm9ybWF0dGVkQ2FyZFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGZvY3VzZWRDaGFuZ2UpPVwib25Gb2N1c2VkKCRldmVudClcIlxuPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudFxuICAgICAgICBzZWxlY3Q9XCJpbnB1dFwiXG4gICAgICAgIG5nUHJvamVjdEFzPVwiaW5wdXRcIlxuICAgID48L25nLWNvbnRlbnQ+XG48L3R1aS1wcmltaXRpdmUtdGV4dGZpZWxkPlxuIl19
|
|
101
|
+
}], getFormattedCard: [] } });
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQvaW5wdXQtY2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQvaW5wdXQtY2FyZC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsTUFBTSxFQUNOLFFBQVEsRUFDUixJQUFJLEVBQ0osU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDakUsT0FBTyxFQUFDLFlBQVksRUFBRSwwQkFBMEIsRUFBRSxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLDhCQUE4QixFQUFxQixNQUFNLGdCQUFnQixDQUFDO0FBRWxGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBQyxzQkFBc0IsRUFBc0IsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFZbkYsTUFBTSxPQUFPLHFCQUFzQixTQUFRLG9CQUE0QjtJQVVuRSxZQUlJLE9BQXlCLEVBQ0UsR0FBc0IsRUFDakIsT0FBNEI7UUFFNUQsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFkeEIsb0JBQWUsR0FBdUI7WUFDM0MsSUFBSSxFQUFFLGFBQWE7WUFDbkIsS0FBSyxFQUFFLEtBQUs7WUFDWixJQUFJLEVBQUUsY0FBYyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMs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OzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsc0JBQXNCOzRDQWRqQixLQUFLO3NCQURyQixTQUFTO3VCQUFDLDhCQUE4QjtnQkFzRWpDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEluamVjdCxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUVUlfQ0FSRF9NQVNLfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvY29uc3RhbnRzJztcbmltcG9ydCB7dHVpQXNDb250cm9sLCB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvciwgdHVpUHVyZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCwgVHVpVGV4dE1hc2tPcHRpb25zfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlJbnB1dENhcmR9IGZyb20gJy4vYWJzdHJhY3QtaW5wdXQtY2FyZCc7XG5pbXBvcnQge1RVSV9JTlBVVF9DQVJEX09QVElPTlMsIFR1aUlucHV0Q2FyZE9wdGlvbnN9IGZyb20gJy4vaW5wdXQtY2FyZC5wcm92aWRlcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtY2FyZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1jYXJkLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpSW5wdXRDYXJkQ29tcG9uZW50KSxcbiAgICAgICAgdHVpQXNDb250cm9sKFR1aUlucHV0Q2FyZENvbXBvbmVudCksXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRDYXJkQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RUdWlJbnB1dENhcmQ8c3RyaW5nPiB7XG4gICAgQFZpZXdDaGlsZChUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dD86IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudDtcblxuICAgIHJlYWRvbmx5IHRleHRNYXNrT3B0aW9uczogVHVpVGV4dE1hc2tPcHRpb25zID0ge1xuICAgICAgICBtYXNrOiBUVUlfQ0FSRF9NQVNLLFxuICAgICAgICBndWlkZTogZmFsc2UsXG4gICAgICAgIHBpcGU6IGNvbmZvcm1lZFZhbHVlID0+IGNvbmZvcm1lZFZhbHVlLnRyaW0oKSxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChOZ0NvbnRyb2wpXG4gICAgICAgIGNvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX0lOUFVUX0NBUkRfT1BUSU9OUykgb3B0aW9uczogVHVpSW5wdXRDYXJkT3B0aW9ucyxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2RyLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBnZXQgY2FyZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZSA/PyAnJztcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmlucHV0ID8gdGhpcy5pbnB1dC5uYXRpdmVGb2N1c2FibGVFbGVtZW50IDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0LmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGZvcm1hdHRlZENhcmQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Rm9ybWF0dGVkQ2FyZCh0aGlzLmNhcmQpO1xuICAgIH1cblxuICAgIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBwYXJzZWQgPSB2YWx1ZS5zcGxpdCgnICcpLmpvaW4oJycpO1xuICAgICAgICBjb25zdCBjdXJyZW50QmluID0gdGhpcy5iaW47XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IHBhcnNlZDtcblxuICAgICAgICBjb25zdCBuZXdCaW4gPSB0aGlzLmJpbjtcblxuICAgICAgICBpZiAoY3VycmVudEJpbiAhPT0gbmV3QmluKSB7XG4gICAgICAgICAgICB0aGlzLmJpbkNoYW5nZS5lbWl0KG5ld0Jpbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoZm9jdXNlZCk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50QmluID0gdGhpcy5iaW47XG5cbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG5cbiAgICAgICAgY29uc3QgbmV3QmluID0gdGhpcy5iaW47XG5cbiAgICAgICAgaWYgKGN1cnJlbnRCaW4gIT09IG5ld0Jpbikge1xuICAgICAgICAgICAgdGhpcy5iaW5DaGFuZ2UuZW1pdChuZXdCaW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGdldEZhbGxiYWNrVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRGb3JtYXR0ZWRDYXJkKGNhcmROdW1iZXI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBjYXJkTnVtYmVyXG4gICAgICAgICAgICAuc3BsaXQoJycpXG4gICAgICAgICAgICAubWFwKChjaGFyLCBpbmRleCkgPT4gKGluZGV4ICYmIGluZGV4ICUgNCA9PT0gMCA/IGAgJHtjaGFyfWAgOiBjaGFyKSlcbiAgICAgICAgICAgIC5qb2luKCcnKTtcbiAgICB9XG59XG4iLCI8dHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRcbiAgICB0dWlWYWx1ZUFjY2Vzc29yXG4gICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICBbdHVpVGV4dGZpZWxkQ3VzdG9tQ29udGVudF09XCJpY29uXCJcbiAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2ZvY3VzYWJsZV09XCJmb2N1c2FibGVcIlxuICAgIFtuYXRpdmVJZF09XCJuYXRpdmVJZFwiXG4gICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICBbcHNldWRvSG92ZXJdPVwicHNldWRvSG92ZXJcIlxuICAgIFtwc2V1ZG9BY3RpdmVdPVwicHNldWRvQWN0aXZlXCJcbiAgICBbcHNldWRvRm9jdXNdPVwicHNldWRvRm9jdXNcIlxuICAgIFt0ZXh0TWFza109XCJ0ZXh0TWFza09wdGlvbnNcIlxuICAgIFt2YWx1ZV09XCJmb3JtYXR0ZWRDYXJkXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAoZm9jdXNlZENoYW5nZSk9XCJvbkZvY3VzZWQoJGV2ZW50KVwiXG4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDxuZy1jb250ZW50XG4gICAgICAgIHNlbGVjdD1cImlucHV0XCJcbiAgICAgICAgbmdQcm9qZWN0QXM9XCJpbnB1dFwiXG4gICAgPjwvbmctY29udGVudD5cbjwvdHVpLXByaW1pdGl2ZS10ZXh0ZmllbGQ+XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
import { tuiGetPaymentSystem } from '@taiga-ui/addon-commerce/utils';
|
|
3
|
+
export const TUI_INPUT_CARD_DEFAULT_OPTIONS = {
|
|
4
|
+
icons: {
|
|
5
|
+
mir: `tuiIconMir`,
|
|
6
|
+
visa: `tuiIconVisa`,
|
|
7
|
+
electron: `tuiIconElectron`,
|
|
8
|
+
mastercard: `tuiIconMastercard`,
|
|
9
|
+
maestro: `tuiIconMaestro`,
|
|
10
|
+
},
|
|
11
|
+
cardSrc: ``,
|
|
12
|
+
paymentSystemHandler: tuiGetPaymentSystem,
|
|
13
|
+
autocompleteEnabled: false,
|
|
14
|
+
};
|
|
15
|
+
export const TUI_INPUT_CARD_OPTIONS = new InjectionToken(`[TUI_INPUT_CARD_OPTIONS]`, { factory: () => TUI_INPUT_CARD_DEFAULT_OPTIONS });
|
|
16
|
+
export const tuiInputCardOptionsProvider = (options) => ({
|
|
17
|
+
provide: TUI_INPUT_CARD_OPTIONS,
|
|
18
|
+
useValue: Object.assign(Object.assign({}, TUI_INPUT_CARD_DEFAULT_OPTIONS), options),
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC5wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQvaW5wdXQtY2FyZC5wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFFNUQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFjbkUsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQXdCO0lBQy9ELEtBQUssRUFBRTtRQUNILEdBQUcsRUFBRSxZQUFZO1FBQ2pCLElBQUksRUFBRSxhQUFhO1FBQ25CLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsVUFBVSxFQUFFLG1CQUFtQjtRQUMvQixPQUFPLEVBQUUsZ0JBQWdCO0tBQzVCO0lBQ0QsT0FBTyxFQUFFLEVBQUU7SUFDWCxvQkFBb0IsRUFBRSxtQkFBbUI7SUFDekMsbUJBQW1CLEVBQUUsS0FBSztDQUM3QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxjQUFjLENBQ3BELDBCQUEwQixFQUMxQixFQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyw4QkFBOEIsRUFBQyxDQUNsRCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBRW5CLENBQUMsT0FBcUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM3RCxPQUFPLEVBQUUsc0JBQXNCO0lBQy9CLFFBQVEsa0NBQU0sOEJBQThCLEdBQUssT0FBTyxDQUFDO0NBQzVELENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFZhbHVlUHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuaW1wb3J0IHt0dWlHZXRQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdXRpbHMnO1xuaW1wb3J0IHtUdWlIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlJbnB1dENhcmRPcHRpb25zIHtcbiAgICBjYXJkU3JjOiBQb2x5bW9ycGhldXNDb250ZW50O1xuICAgIHJlYWRvbmx5IGF1dG9jb21wbGV0ZUVuYWJsZWQ6IGJvb2xlYW47XG4gICAgcmVhZG9ubHkgaWNvbnM6IFJlY29yZDxUdWlQYXltZW50U3lzdGVtLCBzdHJpbmc+O1xuICAgIHJlYWRvbmx5IHBheW1lbnRTeXN0ZW1IYW5kbGVyOiBUdWlIYW5kbGVyPFxuICAgICAgICBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkLFxuICAgICAgICBUdWlQYXltZW50U3lzdGVtIHwgbnVsbFxuICAgID47XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfSU5QVVRfQ0FSRF9ERUZBVUxUX09QVElPTlM6IFR1aUlucHV0Q2FyZE9wdGlvbnMgPSB7XG4gICAgaWNvbnM6IHtcbiAgICAgICAgbWlyOiBgdHVpSWNvbk1pcmAsXG4gICAgICAgIHZpc2E6IGB0dWlJY29uVmlzYWAsXG4gICAgICAgIGVsZWN0cm9uOiBgdHVpSWNvbkVsZWN0cm9uYCxcbiAgICAgICAgbWFzdGVyY2FyZDogYHR1aUljb25NYXN0ZXJjYXJkYCxcbiAgICAgICAgbWFlc3RybzogYHR1aUljb25NYWVzdHJvYCxcbiAgICB9LFxuICAgIGNhcmRTcmM6IGBgLFxuICAgIHBheW1lbnRTeXN0ZW1IYW5kbGVyOiB0dWlHZXRQYXltZW50U3lzdGVtLFxuICAgIGF1dG9jb21wbGV0ZUVuYWJsZWQ6IGZhbHNlLFxufTtcblxuZXhwb3J0IGNvbnN0IFRVSV9JTlBVVF9DQVJEX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHVpSW5wdXRDYXJkT3B0aW9ucz4oXG4gICAgYFtUVUlfSU5QVVRfQ0FSRF9PUFRJT05TXWAsXG4gICAge2ZhY3Rvcnk6ICgpID0+IFRVSV9JTlBVVF9DQVJEX0RFRkFVTFRfT1BUSU9OU30sXG4pO1xuXG5leHBvcnQgY29uc3QgdHVpSW5wdXRDYXJkT3B0aW9uc1Byb3ZpZGVyOiAoXG4gICAgb3B0aW9uczogUGFydGlhbDxUdWlJbnB1dENhcmRPcHRpb25zPixcbikgPT4gVmFsdWVQcm92aWRlciA9IChvcHRpb25zOiBQYXJ0aWFsPFR1aUlucHV0Q2FyZE9wdGlvbnM+KSA9PiAoe1xuICAgIHByb3ZpZGU6IFRVSV9JTlBVVF9DQVJEX09QVElPTlMsXG4gICAgdXNlVmFsdWU6IHsuLi5UVUlfSU5QVVRfQ0FSRF9ERUZBVUxUX09QVElPTlMsIC4uLm9wdGlvbnN9LFxufSk7XG4iXX0=
|