@taiga-ui/addon-commerce 2.55.0 → 3.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taiga-ui-addon-commerce-components-card.umd.js +424 -305
- package/bundles/taiga-ui-addon-commerce-components-card.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js +623 -466
- 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 +461 -331
- package/bundles/taiga-ui-addon-commerce-components-input-card.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.js +444 -314
- package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.js +432 -306
- package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-components-money.umd.js +516 -384
- package/bundles/taiga-ui-addon-commerce-components-money.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-components.umd.js +15 -27
- package/bundles/taiga-ui-addon-commerce-components.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-constants.umd.js +38 -36
- package/bundles/taiga-ui-addon-commerce-constants.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-enums.umd.js +6 -35
- package/bundles/taiga-ui-addon-commerce-enums.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-interfaces.umd.js +2 -2
- package/bundles/taiga-ui-addon-commerce-interfaces.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-pipes.umd.js +63 -274
- package/bundles/taiga-ui-addon-commerce-pipes.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-tokens.umd.js +11 -7
- package/bundles/taiga-ui-addon-commerce-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-types.umd.js +2 -2
- package/bundles/taiga-ui-addon-commerce-types.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-utils.umd.js +63 -107
- package/bundles/taiga-ui-addon-commerce-utils.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce-validators.umd.js +17 -11
- package/bundles/taiga-ui-addon-commerce-validators.umd.js.map +1 -1
- package/bundles/taiga-ui-addon-commerce.umd.js +31 -33
- package/bundles/taiga-ui-addon-commerce.umd.js.map +1 -1
- package/components/card/card.component.d.ts +5 -2
- package/components/card/card.module.d.ts +7 -0
- package/components/card/package.json +2 -5
- package/components/card/taiga-ui-addon-commerce-components-card.d.ts +1 -0
- package/components/input-card/input-card.component.d.ts +4 -2
- package/components/input-card/input-card.module.d.ts +8 -0
- package/components/input-card/package.json +2 -5
- package/components/input-card/taiga-ui-addon-commerce-components-input-card.d.ts +1 -0
- package/components/input-card-grouped/input-card-grouped.component.d.ts +5 -3
- package/components/input-card-grouped/input-card-grouped.module.d.ts +12 -0
- package/components/input-card-grouped/package.json +2 -5
- package/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.d.ts +1 -0
- package/components/input-cvc/input-cvc.component.d.ts +3 -1
- package/components/input-cvc/input-cvc.module.d.ts +8 -0
- package/components/input-cvc/package.json +2 -5
- package/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.d.ts +1 -0
- package/components/input-expire/input-expire.component.d.ts +3 -1
- package/components/input-expire/input-expire.module.d.ts +8 -0
- package/components/input-expire/package.json +2 -5
- package/components/input-expire/taiga-ui-addon-commerce-components-input-expire.d.ts +1 -0
- package/components/money/money-options.d.ts +4 -4
- package/components/money/money.component.d.ts +7 -4
- package/components/money/money.module.d.ts +10 -0
- package/components/money/package.json +2 -5
- package/components/money/pipes/fraction-part.pipe.d.ts +5 -2
- package/components/money/pipes/integer-part.pipe.d.ts +3 -0
- package/components/money/pipes/sign-symbol.pipe.d.ts +5 -2
- package/components/money/taiga-ui-addon-commerce-components-money.d.ts +1 -0
- package/components/money/utils/format-fraction-part.d.ts +2 -2
- package/components/money/utils/format-sign-symbol.d.ts +2 -2
- package/components/package.json +2 -5
- package/components/taiga-ui-addon-commerce-components.d.ts +1 -0
- package/constants/package.json +2 -5
- package/constants/taiga-ui-addon-commerce-constants.d.ts +1 -0
- package/enums/currency-code.d.ts +0 -5
- package/enums/index.d.ts +0 -2
- package/enums/package.json +2 -5
- package/enums/taiga-ui-addon-commerce-enums.d.ts +1 -0
- package/esm2015/components/card/card.component.js +44 -30
- package/esm2015/components/card/card.module.js +15 -12
- package/esm2015/components/card/index.js +1 -1
- package/esm2015/components/card/taiga-ui-addon-commerce-components-card.js +1 -1
- package/esm2015/components/index.js +1 -1
- package/esm2015/components/input-card/index.js +1 -1
- package/esm2015/components/input-card/input-card.component.js +72 -56
- package/esm2015/components/input-card/input-card.module.js +24 -13
- package/esm2015/components/input-card/taiga-ui-addon-commerce-components-input-card.js +1 -1
- package/esm2015/components/input-card-grouped/index.js +1 -1
- package/esm2015/components/input-card-grouped/input-card-grouped.component.js +148 -121
- package/esm2015/components/input-card-grouped/input-card-grouped.module.js +45 -15
- package/esm2015/components/input-card-grouped/input-card-grouped.providers.js +3 -3
- package/esm2015/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.js +1 -1
- package/esm2015/components/input-cvc/index.js +1 -1
- package/esm2015/components/input-cvc/input-cvc.component.js +56 -43
- package/esm2015/components/input-cvc/input-cvc.module.js +26 -13
- package/esm2015/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.js +1 -1
- package/esm2015/components/input-expire/index.js +1 -1
- package/esm2015/components/input-expire/input-expire.component.js +49 -38
- package/esm2015/components/input-expire/input-expire.module.js +24 -13
- package/esm2015/components/input-expire/taiga-ui-addon-commerce-components-input-expire.js +1 -1
- package/esm2015/components/money/index.js +1 -1
- package/esm2015/components/money/money-options.js +4 -4
- package/esm2015/components/money/money.component.js +48 -35
- package/esm2015/components/money/money.module.js +23 -17
- package/esm2015/components/money/pipes/fraction-part.pipe.js +13 -12
- package/esm2015/components/money/pipes/integer-part.pipe.js +13 -12
- package/esm2015/components/money/pipes/sign-symbol.pipe.js +10 -8
- package/esm2015/components/money/taiga-ui-addon-commerce-components-money.js +1 -1
- package/esm2015/components/money/utils/format-fraction-part.js +4 -4
- package/esm2015/components/money/utils/format-sign-symbol.js +4 -4
- package/esm2015/components/taiga-ui-addon-commerce-components.js +1 -1
- package/esm2015/constants/card-holder-mask.js +27 -27
- package/esm2015/constants/card-mask.js +5 -5
- package/esm2015/constants/default-card-validator.js +3 -3
- package/esm2015/constants/index.js +1 -1
- package/esm2015/constants/taiga-ui-addon-commerce-constants.js +1 -1
- package/esm2015/enums/currency-code.js +1 -7
- package/esm2015/enums/currency.js +1 -1
- package/esm2015/enums/index.js +1 -3
- package/esm2015/enums/taiga-ui-addon-commerce-enums.js +1 -1
- package/esm2015/index.js +3 -1
- package/esm2015/interfaces/card.js +2 -1
- package/esm2015/interfaces/index.js +2 -1
- package/esm2015/interfaces/taiga-ui-addon-commerce-interfaces.js +2 -1
- package/esm2015/pipes/currency/currency.module.js +14 -11
- package/esm2015/pipes/currency/currency.pipe.js +12 -10
- package/esm2015/pipes/format-card/format-card.module.js +14 -11
- package/esm2015/pipes/format-card/format-card.pipe.js +14 -12
- package/esm2015/pipes/index.js +1 -1
- package/esm2015/pipes/taiga-ui-addon-commerce-pipes.js +1 -1
- package/esm2015/taiga-ui-addon-commerce.js +1 -1
- package/esm2015/tokens/i18n.js +6 -6
- package/esm2015/tokens/index.js +1 -1
- package/esm2015/tokens/taiga-ui-addon-commerce-tokens.js +1 -1
- package/esm2015/types/code-length.js +2 -1
- package/esm2015/types/currency-variants.js +2 -1
- package/esm2015/types/index.js +5 -1
- package/esm2015/types/money-sign.js +2 -1
- package/esm2015/types/payment-system.js +2 -0
- package/esm2015/types/taiga-ui-addon-commerce-types.js +2 -1
- package/esm2015/utils/create-auto-corrected-expire-pipe.js +6 -6
- package/esm2015/utils/format-currency.js +7 -7
- package/esm2015/utils/get-currency-symbol.js +21 -26
- package/esm2015/utils/get-payment-system.js +18 -48
- package/esm2015/utils/index.js +1 -1
- package/esm2015/utils/is-card-length-valid.js +9 -11
- package/esm2015/utils/is-card-number-valid.js +4 -6
- package/esm2015/utils/is-expire-valid.js +1 -1
- package/esm2015/utils/taiga-ui-addon-commerce-utils.js +1 -1
- package/esm2015/validators/card-expire.validator.js +2 -2
- package/esm2015/validators/card-number.validator.js +4 -4
- package/esm2015/validators/index.js +1 -1
- package/esm2015/validators/luhn.validator.js +5 -3
- package/esm2015/validators/taiga-ui-addon-commerce-validators.js +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components-card.js +58 -39
- package/fesm2015/taiga-ui-addon-commerce-components-card.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js +196 -136
- package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components-input-card.js +96 -67
- package/fesm2015/taiga-ui-addon-commerce-components-input-card.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components-input-cvc.js +81 -53
- package/fesm2015/taiga-ui-addon-commerce-components-input-cvc.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components-input-expire.js +72 -48
- package/fesm2015/taiga-ui-addon-commerce-components-input-expire.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components-money.js +133 -108
- package/fesm2015/taiga-ui-addon-commerce-components-money.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-components.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-constants.js +32 -32
- package/fesm2015/taiga-ui-addon-commerce-constants.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-enums.js +1 -34
- package/fesm2015/taiga-ui-addon-commerce-enums.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-interfaces.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-pipes.js +47 -33
- package/fesm2015/taiga-ui-addon-commerce-pipes.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-tokens.js +5 -5
- package/fesm2015/taiga-ui-addon-commerce-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-types.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-utils.js +58 -97
- package/fesm2015/taiga-ui-addon-commerce-utils.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce-validators.js +7 -5
- package/fesm2015/taiga-ui-addon-commerce-validators.js.map +1 -1
- package/fesm2015/taiga-ui-addon-commerce.js +2 -0
- package/fesm2015/taiga-ui-addon-commerce.js.map +1 -1
- package/interfaces/package.json +2 -5
- package/interfaces/taiga-ui-addon-commerce-interfaces.d.ts +1 -0
- package/package.json +12 -15
- package/pipes/currency/currency.module.d.ts +5 -0
- package/pipes/currency/currency.pipe.d.ts +3 -0
- package/pipes/format-card/format-card.module.d.ts +5 -0
- package/pipes/format-card/format-card.pipe.d.ts +3 -0
- package/pipes/package.json +2 -5
- package/pipes/taiga-ui-addon-commerce-pipes.d.ts +1 -0
- package/taiga-ui-addon-commerce.d.ts +1 -0
- package/tokens/package.json +2 -5
- package/tokens/taiga-ui-addon-commerce-tokens.d.ts +1 -0
- package/types/index.d.ts +1 -0
- package/types/money-sign.d.ts +1 -1
- package/types/package.json +2 -5
- package/types/payment-system.d.ts +1 -0
- package/types/taiga-ui-addon-commerce-types.d.ts +1 -0
- package/utils/get-currency-symbol.d.ts +1 -5
- package/utils/get-payment-system.d.ts +7 -31
- package/utils/is-card-length-valid.d.ts +1 -3
- package/utils/is-card-number-valid.d.ts +1 -3
- package/utils/package.json +2 -5
- package/utils/taiga-ui-addon-commerce-utils.d.ts +1 -0
- package/validators/package.json +2 -5
- package/validators/taiga-ui-addon-commerce-validators.d.ts +1 -0
- package/bundles/taiga-ui-addon-commerce-components-card.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-components-card.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-components-input-card.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-components-input-card.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-components-money.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-components-money.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-components.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-components.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-constants.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-constants.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-enums.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-enums.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-interfaces.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-interfaces.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-pipes.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-pipes.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-tokens.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-tokens.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-types.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-types.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-utils.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-utils.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce-validators.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce-validators.umd.min.js.map +0 -1
- package/bundles/taiga-ui-addon-commerce.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-commerce.umd.min.js.map +0 -1
- package/components/card/taiga-ui-addon-commerce-components-card.metadata.json +0 -1
- package/components/input-card/taiga-ui-addon-commerce-components-input-card.metadata.json +0 -1
- package/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.metadata.json +0 -1
- package/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.metadata.json +0 -1
- package/components/input-expire/taiga-ui-addon-commerce-components-input-expire.metadata.json +0 -1
- package/components/money/taiga-ui-addon-commerce-components-money.metadata.json +0 -1
- package/components/taiga-ui-addon-commerce-components.metadata.json +0 -1
- package/constants/taiga-ui-addon-commerce-constants.metadata.json +0 -1
- package/enums/money-sign.d.ts +0 -16
- package/enums/payment-system.d.ts +0 -8
- package/enums/taiga-ui-addon-commerce-enums.metadata.json +0 -1
- package/esm2015/enums/money-sign.js +0 -18
- package/esm2015/enums/payment-system.js +0 -9
- package/esm5/components/card/card.component.js +0 -73
- package/esm5/components/card/card.module.js +0 -19
- package/esm5/components/card/index.js +0 -3
- package/esm5/components/card/taiga-ui-addon-commerce-components-card.js +0 -5
- package/esm5/components/index.js +0 -7
- package/esm5/components/input-card/index.js +0 -3
- package/esm5/components/input-card/input-card.component.js +0 -167
- package/esm5/components/input-card/input-card.module.js +0 -25
- package/esm5/components/input-card/taiga-ui-addon-commerce-components-input-card.js +0 -5
- package/esm5/components/input-card-grouped/index.js +0 -4
- package/esm5/components/input-card-grouped/input-card-grouped.component.js +0 -511
- package/esm5/components/input-card-grouped/input-card-grouped.module.js +0 -40
- package/esm5/components/input-card-grouped/input-card-grouped.providers.js +0 -34
- package/esm5/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.js +0 -5
- package/esm5/components/input-cvc/index.js +0 -3
- package/esm5/components/input-cvc/input-cvc.component.js +0 -113
- package/esm5/components/input-cvc/input-cvc.module.js +0 -26
- package/esm5/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.js +0 -5
- package/esm5/components/input-expire/index.js +0 -3
- package/esm5/components/input-expire/input-expire.component.js +0 -108
- package/esm5/components/input-expire/input-expire.module.js +0 -25
- package/esm5/components/input-expire/taiga-ui-addon-commerce-components-input-expire.js +0 -5
- package/esm5/components/money/index.js +0 -9
- package/esm5/components/money/money-options.js +0 -18
- package/esm5/components/money/money.component.js +0 -101
- package/esm5/components/money/money.module.js +0 -27
- package/esm5/components/money/pipes/fraction-part.pipe.js +0 -27
- package/esm5/components/money/pipes/integer-part.pipe.js +0 -21
- package/esm5/components/money/pipes/sign-symbol.pipe.js +0 -16
- package/esm5/components/money/taiga-ui-addon-commerce-components-money.js +0 -5
- package/esm5/components/money/utils/format-fraction-part.js +0 -7
- package/esm5/components/money/utils/format-sign-symbol.js +0 -11
- package/esm5/components/taiga-ui-addon-commerce-components.js +0 -5
- package/esm5/constants/card-holder-mask.js +0 -37
- package/esm5/constants/card-mask.js +0 -30
- package/esm5/constants/default-card-validator.js +0 -5
- package/esm5/constants/index.js +0 -4
- package/esm5/constants/taiga-ui-addon-commerce-constants.js +0 -5
- package/esm5/enums/currency-code.js +0 -171
- package/esm5/enums/currency.js +0 -171
- package/esm5/enums/index.js +0 -5
- package/esm5/enums/money-sign.js +0 -18
- package/esm5/enums/payment-system.js +0 -9
- package/esm5/enums/taiga-ui-addon-commerce-enums.js +0 -5
- package/esm5/index.js +0 -8
- package/esm5/interfaces/card.js +0 -1
- package/esm5/interfaces/index.js +0 -1
- package/esm5/interfaces/taiga-ui-addon-commerce-interfaces.js +0 -4
- package/esm5/pipes/currency/currency.module.js +0 -16
- package/esm5/pipes/currency/currency.pipe.js +0 -18
- package/esm5/pipes/format-card/format-card.module.js +0 -16
- package/esm5/pipes/format-card/format-card.pipe.js +0 -22
- package/esm5/pipes/index.js +0 -5
- package/esm5/pipes/taiga-ui-addon-commerce-pipes.js +0 -5
- package/esm5/taiga-ui-addon-commerce.js +0 -5
- package/esm5/tokens/i18n.js +0 -13
- package/esm5/tokens/index.js +0 -2
- package/esm5/tokens/taiga-ui-addon-commerce-tokens.js +0 -5
- package/esm5/types/code-length.js +0 -1
- package/esm5/types/currency-variants.js +0 -1
- package/esm5/types/index.js +0 -1
- package/esm5/types/money-sign.js +0 -1
- package/esm5/types/taiga-ui-addon-commerce-types.js +0 -4
- package/esm5/utils/create-auto-corrected-expire-pipe.js +0 -43
- package/esm5/utils/format-currency.js +0 -17
- package/esm5/utils/get-currency-symbol.js +0 -71
- package/esm5/utils/get-payment-system.js +0 -103
- package/esm5/utils/index.js +0 -8
- package/esm5/utils/is-card-length-valid.js +0 -25
- package/esm5/utils/is-card-number-valid.js +0 -21
- package/esm5/utils/is-expire-valid.js +0 -14
- package/esm5/utils/taiga-ui-addon-commerce-utils.js +0 -5
- package/esm5/validators/card-expire.validator.js +0 -10
- package/esm5/validators/card-number.validator.js +0 -9
- package/esm5/validators/index.js +0 -4
- package/esm5/validators/luhn.validator.js +0 -9
- package/esm5/validators/taiga-ui-addon-commerce-validators.js +0 -5
- package/fesm5/taiga-ui-addon-commerce-components-card.js +0 -94
- package/fesm5/taiga-ui-addon-commerce-components-card.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-components-input-card-grouped.js +0 -579
- package/fesm5/taiga-ui-addon-commerce-components-input-card-grouped.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-components-input-card.js +0 -193
- package/fesm5/taiga-ui-addon-commerce-components-input-card.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-components-input-cvc.js +0 -140
- package/fesm5/taiga-ui-addon-commerce-components-input-cvc.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-components-input-expire.js +0 -134
- package/fesm5/taiga-ui-addon-commerce-components-input-expire.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-components-money.js +0 -210
- package/fesm5/taiga-ui-addon-commerce-components-money.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-components.js +0 -11
- package/fesm5/taiga-ui-addon-commerce-components.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-constants.js +0 -78
- package/fesm5/taiga-ui-addon-commerce-constants.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-enums.js +0 -375
- package/fesm5/taiga-ui-addon-commerce-enums.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-interfaces.js +0 -4
- package/fesm5/taiga-ui-addon-commerce-interfaces.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-pipes.js +0 -67
- package/fesm5/taiga-ui-addon-commerce-pipes.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-tokens.js +0 -20
- package/fesm5/taiga-ui-addon-commerce-tokens.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-types.js +0 -4
- package/fesm5/taiga-ui-addon-commerce-types.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-utils.js +0 -298
- package/fesm5/taiga-ui-addon-commerce-utils.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce-validators.js +0 -31
- package/fesm5/taiga-ui-addon-commerce-validators.js.map +0 -1
- package/fesm5/taiga-ui-addon-commerce.js +0 -12
- package/fesm5/taiga-ui-addon-commerce.js.map +0 -1
- package/interfaces/taiga-ui-addon-commerce-interfaces.metadata.json +0 -1
- package/pipes/taiga-ui-addon-commerce-pipes.metadata.json +0 -1
- package/taiga-ui-addon-commerce.metadata.json +0 -1
- package/tokens/taiga-ui-addon-commerce-tokens.metadata.json +0 -1
- package/types/taiga-ui-addon-commerce-types.metadata.json +0 -1
- package/utils/taiga-ui-addon-commerce-utils.metadata.json +0 -1
- package/validators/taiga-ui-addon-commerce-validators.metadata.json +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@taiga-ui/core'), require('@taiga-ui/cdk')) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define('@taiga-ui/addon-commerce/utils', ['exports', '@taiga-ui/core', '@taiga-ui/cdk'], factory) :
|
|
4
|
-
(global = global || self, factory((global[
|
|
5
|
-
}(this, (function (exports, core, cdk) { 'use strict';
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global["taiga-ui"] = global["taiga-ui"] || {}, global["taiga-ui"]["addon-commerce"] = global["taiga-ui"]["addon-commerce"] || {}, global["taiga-ui"]["addon-commerce"].utils = {}), global.core, global.cdk));
|
|
5
|
+
})(this, (function (exports, core, cdk) { 'use strict';
|
|
6
6
|
|
|
7
7
|
var TUI_EXP_YEAR_MONTH = /^\d{2}[/|.]\d{4}$/;
|
|
8
8
|
var TUI_EXP_SAFARI = /^\d{1,4}.\d{1,2}.\d{1,4}$/;
|
|
@@ -29,93 +29,88 @@
|
|
|
29
29
|
var length = _a.length;
|
|
30
30
|
return length === 4;
|
|
31
31
|
});
|
|
32
|
-
conformedValue = "" +
|
|
32
|
+
conformedValue = "" + "0".repeat(2 - month.length) + month + "/" + (year ? year.slice(2) : "");
|
|
33
33
|
}
|
|
34
34
|
var indexesOfPipedChars = [];
|
|
35
|
-
var conformedValueArr = conformedValue.split(
|
|
35
|
+
var conformedValueArr = conformedValue.split("");
|
|
36
36
|
if (parseInt(conformedValueArr[0], 10) > 1) {
|
|
37
|
-
conformedValueArr[2] =
|
|
37
|
+
conformedValueArr[2] = "/";
|
|
38
38
|
conformedValueArr[1] = conformedValueArr[0];
|
|
39
|
-
conformedValueArr[0] =
|
|
39
|
+
conformedValueArr[0] = "0";
|
|
40
40
|
indexesOfPipedChars.push(0);
|
|
41
41
|
}
|
|
42
42
|
return {
|
|
43
|
-
value: conformedValueArr.join(
|
|
43
|
+
value: conformedValueArr.join(""),
|
|
44
44
|
indexesOfPipedChars: indexesOfPipedChars,
|
|
45
45
|
};
|
|
46
46
|
};
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
* @deprecated: use {@link tuiGetCurrencySymbol} instead
|
|
51
|
-
*/
|
|
52
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
53
|
-
function getCurrencySymbol(currency) {
|
|
49
|
+
function tuiGetCurrencySymbol(currency) {
|
|
54
50
|
switch (currency) {
|
|
55
51
|
case "RUB" /* Ruble */:
|
|
56
52
|
case "643" /* Ruble */:
|
|
57
|
-
return
|
|
53
|
+
return "\u20BD";
|
|
58
54
|
case "USD" /* Dollar */:
|
|
59
55
|
case "840" /* Dollar */:
|
|
60
56
|
case "MXN" /* MexicanPeso */:
|
|
61
57
|
case "484" /* MexicanPeso */:
|
|
62
|
-
return
|
|
58
|
+
return "$";
|
|
63
59
|
case "SGD" /* SingaporeDollar */:
|
|
64
60
|
case "702" /* SingaporeDollar */:
|
|
65
|
-
return
|
|
61
|
+
return "S$";
|
|
66
62
|
case "AUD" /* AustralianDollar */:
|
|
67
63
|
case "036" /* AustralianDollar */:
|
|
68
|
-
return
|
|
64
|
+
return "A$";
|
|
69
65
|
case "HKD" /* HongKongDollar */:
|
|
70
66
|
case "344" /* HongKongDollar */:
|
|
71
|
-
return
|
|
67
|
+
return "HK$";
|
|
72
68
|
case "CAD" /* CanadianDollar */:
|
|
73
69
|
case "124" /* CanadianDollar */:
|
|
74
|
-
return
|
|
70
|
+
return "C$";
|
|
75
71
|
case "EUR" /* Euro */:
|
|
76
72
|
case "978" /* Euro */:
|
|
77
|
-
return
|
|
73
|
+
return "\u20AC";
|
|
78
74
|
case "GBP" /* Pound */:
|
|
79
75
|
case "826" /* Pound */:
|
|
80
|
-
return
|
|
76
|
+
return "\u00A3";
|
|
81
77
|
case "THB" /* Baht */:
|
|
82
78
|
case "764" /* Baht */:
|
|
83
|
-
return
|
|
79
|
+
return "\u0E3F";
|
|
84
80
|
case "TRY" /* TurkishLira */:
|
|
85
81
|
case "949" /* TurkishLira */:
|
|
86
|
-
return
|
|
82
|
+
return "\u20BA";
|
|
87
83
|
case "CNY" /* YuanRenminbi */:
|
|
88
84
|
case "156" /* YuanRenminbi */:
|
|
89
|
-
return
|
|
85
|
+
return "CN\u00A5";
|
|
90
86
|
case "JPY" /* Yen */:
|
|
91
87
|
case "392" /* Yen */:
|
|
92
|
-
return
|
|
88
|
+
return "\u00A5";
|
|
93
89
|
case "ILS" /* IsraeliShekel */:
|
|
94
90
|
case "376" /* IsraeliShekel */:
|
|
95
|
-
return
|
|
91
|
+
return "\u20AA";
|
|
96
92
|
case "INR" /* IndianRupee */:
|
|
97
93
|
case "356" /* IndianRupee */:
|
|
98
|
-
return
|
|
94
|
+
return "\u20B9";
|
|
99
95
|
case "CHF" /* SwissFranc */:
|
|
100
96
|
case "756" /* SwissFranc */:
|
|
101
|
-
return
|
|
97
|
+
return "\u20A3";
|
|
102
98
|
case "AMD" /* ArmenianDram */:
|
|
103
99
|
case "051" /* ArmenianDram */:
|
|
104
|
-
return
|
|
100
|
+
return "\u058F";
|
|
105
101
|
case "KRW" /* Won */:
|
|
106
102
|
case "410" /* Won */:
|
|
107
|
-
return
|
|
103
|
+
return "\u20A9";
|
|
108
104
|
case "KZT" /* Tenge */:
|
|
109
105
|
case "398" /* Tenge */:
|
|
110
|
-
return
|
|
106
|
+
return "\u20B8";
|
|
111
107
|
case "UAH" /* Hryvnia */:
|
|
112
108
|
case "980" /* Hryvnia */:
|
|
113
|
-
return
|
|
109
|
+
return "\u20B4";
|
|
114
110
|
default:
|
|
115
111
|
return null;
|
|
116
112
|
}
|
|
117
113
|
}
|
|
118
|
-
var tuiGetCurrencySymbol = getCurrencySymbol;
|
|
119
114
|
|
|
120
115
|
/**
|
|
121
116
|
* @deprecated: use {@link tuiFormatCurrency} instead
|
|
@@ -123,50 +118,41 @@
|
|
|
123
118
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
124
119
|
function formatCurrency(currency) {
|
|
125
120
|
var stringifiedCurrency = stringifyCurrency(currency);
|
|
126
|
-
return
|
|
121
|
+
return tuiGetCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;
|
|
127
122
|
}
|
|
128
123
|
var tuiFormatCurrency = formatCurrency;
|
|
129
124
|
function stringifyCurrency(currency) {
|
|
130
|
-
return currency === null ||
|
|
131
|
-
? currency ||
|
|
132
|
-
:
|
|
125
|
+
return currency === null || cdk.tuiIsString(currency)
|
|
126
|
+
? currency || ""
|
|
127
|
+
: String(currency).padStart(3, "0");
|
|
133
128
|
}
|
|
134
129
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
*/
|
|
138
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
139
|
-
function getPaymentSystem(cardNumber) {
|
|
140
|
-
if (cardNumber === '') {
|
|
130
|
+
function tuiGetPaymentSystem(cardNumber) {
|
|
131
|
+
if (cardNumber === "") {
|
|
141
132
|
return null;
|
|
142
133
|
}
|
|
143
134
|
var one = Number.parseInt(cardNumber[0], 10);
|
|
144
135
|
var two = Number.parseInt(cardNumber.slice(0, 2), 10);
|
|
145
136
|
var three = Number.parseInt(cardNumber.slice(0, 3), 10);
|
|
146
137
|
var four = Number.parseInt(cardNumber.slice(0, 4), 10);
|
|
147
|
-
if (
|
|
148
|
-
return "maestro"
|
|
138
|
+
if (tuiIsMaestro(three, two, one)) {
|
|
139
|
+
return "maestro";
|
|
149
140
|
}
|
|
150
|
-
if (
|
|
151
|
-
return "mastercard"
|
|
141
|
+
if (tuiIsMastercard(four, two, one)) {
|
|
142
|
+
return "mastercard";
|
|
152
143
|
}
|
|
153
|
-
if (
|
|
154
|
-
return "mir"
|
|
144
|
+
if (tuiIsMir(four)) {
|
|
145
|
+
return "mir";
|
|
155
146
|
}
|
|
156
|
-
if (
|
|
157
|
-
return "electron"
|
|
147
|
+
if (tuiIsElectron(four)) {
|
|
148
|
+
return "electron";
|
|
158
149
|
}
|
|
159
|
-
if (
|
|
160
|
-
return "visa"
|
|
150
|
+
if (tuiIsVisa(one)) {
|
|
151
|
+
return "visa";
|
|
161
152
|
}
|
|
162
153
|
return null;
|
|
163
154
|
}
|
|
164
|
-
|
|
165
|
-
/**
|
|
166
|
-
* @deprecated: use {@link tuiIsMaestro} instead
|
|
167
|
-
*/
|
|
168
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
169
|
-
function isMaestro(three, two, one) {
|
|
155
|
+
function tuiIsMaestro(three, two, one) {
|
|
170
156
|
if (one === 6) {
|
|
171
157
|
return true;
|
|
172
158
|
}
|
|
@@ -178,12 +164,7 @@
|
|
|
178
164
|
}
|
|
179
165
|
return three < 510;
|
|
180
166
|
}
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* @deprecated: use {@link tuiIsMastercard} instead
|
|
184
|
-
*/
|
|
185
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
186
|
-
function isMastercard(four, two, one) {
|
|
167
|
+
function tuiIsMastercard(four, two, one) {
|
|
187
168
|
if (one === 5) {
|
|
188
169
|
return true;
|
|
189
170
|
}
|
|
@@ -198,20 +179,10 @@
|
|
|
198
179
|
}
|
|
199
180
|
return four > 2220 && four < 2721;
|
|
200
181
|
}
|
|
201
|
-
|
|
202
|
-
/**
|
|
203
|
-
* @deprecated: use {@link tuiIsMir} instead
|
|
204
|
-
*/
|
|
205
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
206
|
-
function isMir(four) {
|
|
182
|
+
function tuiIsMir(four) {
|
|
207
183
|
return four > 2199 && four < 2205;
|
|
208
184
|
}
|
|
209
|
-
|
|
210
|
-
/**
|
|
211
|
-
* @deprecated: use {@link tuiIsElectron} instead
|
|
212
|
-
*/
|
|
213
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
214
|
-
function isElectron(four) {
|
|
185
|
+
function tuiIsElectron(four) {
|
|
215
186
|
switch (four) {
|
|
216
187
|
case 4026:
|
|
217
188
|
case 4175:
|
|
@@ -225,49 +196,40 @@
|
|
|
225
196
|
return false;
|
|
226
197
|
}
|
|
227
198
|
}
|
|
228
|
-
|
|
229
|
-
/**
|
|
230
|
-
* @deprecated: use {@link tuiIsVisa} instead
|
|
231
|
-
*/
|
|
232
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
233
|
-
function isVisa(one) {
|
|
199
|
+
function tuiIsVisa(one) {
|
|
234
200
|
return one === 4;
|
|
235
201
|
}
|
|
236
|
-
var tuiIsVisa = isVisa;
|
|
237
202
|
|
|
238
203
|
/**
|
|
239
|
-
* @deprecated: use {@link tuiIsCardLengthValid} instead
|
|
240
204
|
* Validates card number length using payment system dictionary
|
|
241
205
|
*/
|
|
242
206
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
243
|
-
function
|
|
207
|
+
function tuiIsCardLengthValid(cardNumber) {
|
|
244
208
|
var length = cardNumber.length;
|
|
245
|
-
var paymentSystem =
|
|
209
|
+
var paymentSystem = tuiGetPaymentSystem(cardNumber);
|
|
246
210
|
switch (paymentSystem) {
|
|
247
|
-
case "electron"
|
|
211
|
+
case "electron":
|
|
248
212
|
return length === 16;
|
|
249
|
-
case "maestro"
|
|
213
|
+
case "maestro":
|
|
250
214
|
return length > 11 && length < 20;
|
|
251
|
-
case "mastercard"
|
|
252
|
-
case "mir"
|
|
215
|
+
case "mastercard":
|
|
216
|
+
case "mir":
|
|
253
217
|
return length > 15 && length < 20;
|
|
254
|
-
case "visa"
|
|
218
|
+
case "visa":
|
|
255
219
|
return length > 12 && length < 20;
|
|
256
220
|
default:
|
|
257
221
|
return length > 8 && length < 20;
|
|
258
222
|
}
|
|
259
223
|
}
|
|
260
|
-
var tuiIsCardLengthValid = isCardLengthValid;
|
|
261
224
|
|
|
262
225
|
/**
|
|
263
|
-
* @deprecated: use {@link tuiIsCardNumberValid} instead
|
|
264
226
|
* Validates card number using Luhn algorithm
|
|
265
227
|
*/
|
|
266
228
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
267
|
-
function
|
|
268
|
-
var cardNumber = String(value).replace(core.TUI_NON_DIGITS_REGEXP,
|
|
229
|
+
function tuiIsCardNumberValid(value) {
|
|
230
|
+
var cardNumber = String(value).replace(core.TUI_NON_DIGITS_REGEXP, "");
|
|
269
231
|
var length = cardNumber.length;
|
|
270
|
-
var arr = cardNumber.split(
|
|
232
|
+
var arr = cardNumber.split("").map(function (char, index) {
|
|
271
233
|
var digit = parseInt(char, 10);
|
|
272
234
|
if ((index + length) % 2 === 0) {
|
|
273
235
|
var digitX2 = digit * 2;
|
|
@@ -277,7 +239,6 @@
|
|
|
277
239
|
});
|
|
278
240
|
return !(arr.reduce(function (a, b) { return a + b; }, 0) % 10);
|
|
279
241
|
}
|
|
280
|
-
var tuiIsCardNumberValid = isCardNumberValid;
|
|
281
242
|
|
|
282
243
|
/**
|
|
283
244
|
* @deprecated: use {@link tuiIsExpireValid} instead
|
|
@@ -293,17 +254,12 @@
|
|
|
293
254
|
}
|
|
294
255
|
var tuiIsExpireValid = isExpireValid;
|
|
295
256
|
|
|
257
|
+
/**
|
|
258
|
+
* Generated bundle index. Do not edit.
|
|
259
|
+
*/
|
|
260
|
+
|
|
296
261
|
exports.formatCurrency = formatCurrency;
|
|
297
|
-
exports.getCurrencySymbol = getCurrencySymbol;
|
|
298
|
-
exports.getPaymentSystem = getPaymentSystem;
|
|
299
|
-
exports.isCardLengthValid = isCardLengthValid;
|
|
300
|
-
exports.isCardNumberValid = isCardNumberValid;
|
|
301
|
-
exports.isElectron = isElectron;
|
|
302
262
|
exports.isExpireValid = isExpireValid;
|
|
303
|
-
exports.isMaestro = isMaestro;
|
|
304
|
-
exports.isMastercard = isMastercard;
|
|
305
|
-
exports.isMir = isMir;
|
|
306
|
-
exports.isVisa = isVisa;
|
|
307
263
|
exports.tuiCreateAutoCorrectedExpirePipe = tuiCreateAutoCorrectedExpirePipe;
|
|
308
264
|
exports.tuiFormatCurrency = tuiFormatCurrency;
|
|
309
265
|
exports.tuiGetCurrencySymbol = tuiGetCurrencySymbol;
|
|
@@ -319,5 +275,5 @@
|
|
|
319
275
|
|
|
320
276
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
321
277
|
|
|
322
|
-
}))
|
|
278
|
+
}));
|
|
323
279
|
//# sourceMappingURL=taiga-ui-addon-commerce-utils.umd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = `${rawValue.slice(0, 2)}/${rawValue.slice(5)}`;\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${'0'.repeat(2 - month.length)}${month}/${\n year ? year.slice(2) : ''\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split('');\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = '/';\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = '0';\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\n/**\n * @deprecated: use {@link tuiGetCurrencySymbol} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return '₽';\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n case TuiCurrency.MexicanPeso:\n case TuiCurrencyCode.MexicanPeso:\n return '$';\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return 'S$';\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return 'A$';\n case TuiCurrency.HongKongDollar:\n case TuiCurrencyCode.HongKongDollar:\n return 'HK$';\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return 'C$';\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return '€';\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return '£';\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return '฿';\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return '₺';\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return 'CN¥';\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return '¥';\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return '₪';\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return '₹';\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return '₣';\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return '֏';\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return '₩';\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return '₸';\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return '₴';\n default:\n return null;\n }\n}\n\nexport const tuiGetCurrencySymbol = getCurrencySymbol;\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\n/**\n * @deprecated: use {@link tuiFormatCurrency} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nexport const tuiFormatCurrency = formatCurrency;\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === 'string'\n ? currency || ''\n : padStart(String(currency), 3, '0');\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\n/**\n * @deprecated: use {@link tuiGetPaymentSystem} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === '') {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.slice(0, 2), 10);\n const three = Number.parseInt(cardNumber.slice(0, 3), 10);\n const four = Number.parseInt(cardNumber.slice(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport const tuiGetPaymentSystem = getPaymentSystem;\n\n/**\n * @deprecated: use {@link tuiIsMaestro} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport const tuiIsMaestro = isMaestro;\n\n/**\n * @deprecated: use {@link tuiIsMastercard} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport const tuiIsMastercard = isMastercard;\n\n/**\n * @deprecated: use {@link tuiIsMir} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport const tuiIsMir = isMir;\n\n/**\n * @deprecated: use {@link tuiIsElectron} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport const tuiIsElectron = isElectron;\n\n/**\n * @deprecated: use {@link tuiIsVisa} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n\nexport const tuiIsVisa = isVisa;\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * @deprecated: use {@link tuiIsCardLengthValid} instead\n * Validates card number length using payment system dictionary\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n\nexport const tuiIsCardLengthValid = isCardLengthValid;\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * @deprecated: use {@link tuiIsCardNumberValid} instead\n * Validates card number using Luhn algorithm\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, '');\n\n const {length} = cardNumber;\n const arr = cardNumber.split('').map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n\nexport const tuiIsCardNumberValid = isCardNumberValid;\n","/**\n * @deprecated: use {@link tuiIsExpireValid} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n\nexport const tuiIsExpireValid = isExpireValid;\n"],"names":["TUI_NON_DIGIT_REGEXP","padStart","TUI_NON_DIGITS_REGEXP"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["../../../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 const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${`0`.repeat(2 - month.length)}${month}/${\n year ? year.slice(2) : ``\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = `/`;\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = `0`;\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\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 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\n/**\n * @deprecated: use {@link tuiFormatCurrency} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return tuiGetCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nexport const tuiFormatCurrency = formatCurrency;\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 */\n// eslint-disable-next-line @typescript-eslint/naming-convention\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 */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function tuiIsCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, ``);\n\n const {length} = cardNumber;\n const arr = cardNumber.split(``).map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n","/**\n * @deprecated: use {@link tuiIsExpireValid} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n\nexport const tuiIsExpireValid = isExpireValid;\n","/**\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,36 +1,42 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@taiga-ui/addon-commerce/utils'), require('@taiga-ui/cdk')) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define('@taiga-ui/addon-commerce/validators', ['exports', '@taiga-ui/addon-commerce/utils', '@taiga-ui/cdk'], factory) :
|
|
4
|
-
(global = global || self, factory((global[
|
|
5
|
-
}(this, (function (exports, utils, cdk) { 'use strict';
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global["taiga-ui"] = global["taiga-ui"] || {}, global["taiga-ui"]["addon-commerce"] = global["taiga-ui"]["addon-commerce"] || {}, global["taiga-ui"]["addon-commerce"].validators = {}), global["taiga-ui"]["addon-commerce"].utils, global.cdk));
|
|
5
|
+
})(this, (function (exports, utils, cdk) { 'use strict';
|
|
6
6
|
|
|
7
|
-
function tuiCardExpireValidator(
|
|
8
|
-
var value =
|
|
9
|
-
var
|
|
10
|
-
return ((
|
|
11
|
-
? { expire: new cdk.TuiValidationError(
|
|
7
|
+
function tuiCardExpireValidator(_b) {
|
|
8
|
+
var value = _b.value;
|
|
9
|
+
var _a;
|
|
10
|
+
return ((_a = value === null || value === void 0 ? void 0 : value.expire) === null || _a === void 0 ? void 0 : _a.length) === 5 && !utils.isExpireValid(value === null || value === void 0 ? void 0 : value.expire)
|
|
11
|
+
? { expire: new cdk.TuiValidationError("Expire date") }
|
|
12
12
|
: null;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
function tuiCardNumberValidator(_a) {
|
|
16
16
|
var value = _a.value;
|
|
17
|
-
return (value === null || value === void 0 ? void 0 : value.card) && !utils.
|
|
18
|
-
? { card: new cdk.TuiValidationError(
|
|
17
|
+
return (value === null || value === void 0 ? void 0 : value.card) && !utils.tuiIsCardNumberValid(value.card)
|
|
18
|
+
? { card: new cdk.TuiValidationError("Invalid card number") }
|
|
19
19
|
: null;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
function tuiCreateLuhnValidator(message) {
|
|
23
23
|
return function (_a) {
|
|
24
24
|
var value = _a.value;
|
|
25
|
-
return utils.
|
|
25
|
+
return utils.tuiIsCardNumberValid(value)
|
|
26
|
+
? null
|
|
27
|
+
: { luhn: new cdk.TuiValidationError(message) };
|
|
26
28
|
};
|
|
27
29
|
}
|
|
28
30
|
|
|
31
|
+
/**
|
|
32
|
+
* Generated bundle index. Do not edit.
|
|
33
|
+
*/
|
|
34
|
+
|
|
29
35
|
exports.tuiCardExpireValidator = tuiCardExpireValidator;
|
|
30
36
|
exports.tuiCardNumberValidator = tuiCardNumberValidator;
|
|
31
37
|
exports.tuiCreateLuhnValidator = tuiCreateLuhnValidator;
|
|
32
38
|
|
|
33
39
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
34
40
|
|
|
35
|
-
}))
|
|
41
|
+
}));
|
|
36
42
|
//# sourceMappingURL=taiga-ui-addon-commerce-validators.umd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-commerce-validators.umd.js","sources":["
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-commerce-validators.umd.js","sources":["../../../projects/addon-commerce/validators/card-expire.validator.ts","../../../projects/addon-commerce/validators/card-number.validator.ts","../../../projects/addon-commerce/validators/luhn.validator.ts","../../../projects/addon-commerce/validators/taiga-ui-addon-commerce-validators.ts"],"sourcesContent":["import {AbstractControl, ValidationErrors} from '@angular/forms';\nimport {isExpireValid} from '@taiga-ui/addon-commerce/utils';\nimport {TuiValidationError} from '@taiga-ui/cdk';\n\nexport function tuiCardExpireValidator({\n value,\n}: AbstractControl): ValidationErrors | null {\n return value?.expire?.length === 5 && !isExpireValid(value?.expire)\n ? {expire: new TuiValidationError(`Expire date`)}\n : null;\n}\n","import {AbstractControl, ValidationErrors} from '@angular/forms';\nimport {tuiIsCardNumberValid} from '@taiga-ui/addon-commerce/utils';\nimport {TuiValidationError} from '@taiga-ui/cdk';\n\nexport function tuiCardNumberValidator({\n value,\n}: AbstractControl): ValidationErrors | null {\n return value?.card && !tuiIsCardNumberValid(value.card)\n ? {card: new TuiValidationError(`Invalid card number`)}\n : null;\n}\n","import {AbstractControl, ValidatorFn} from '@angular/forms';\nimport {tuiIsCardNumberValid} from '@taiga-ui/addon-commerce/utils';\nimport {TuiValidationError} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport function tuiCreateLuhnValidator(message: PolymorpheusContent): ValidatorFn {\n return ({value}: AbstractControl) => {\n return tuiIsCardNumberValid(value)\n ? null\n : {luhn: new TuiValidationError(message)};\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["isExpireValid","TuiValidationError","tuiIsCardNumberValid"],"mappings":";;;;;;IAIM,SAAU,sBAAsB,CAAC,EAErB,EAAA;IADd,IAAA,IAAA,KAAK,GAAA,EAAA,CAAA,KAAA,CAAA;;IAEL,IAAA,OAAO,CAAA,CAAA,EAAA,GAAA,KAAK,KAAL,IAAA,IAAA,KAAK,uBAAL,KAAK,CAAE,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,MAAK,CAAC,IAAI,CAACA,mBAAa,CAAC,KAAK,KAAA,IAAA,IAAL,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,KAAK,CAAE,MAAM,CAAC;cAC7D,EAAC,MAAM,EAAE,IAAIC,sBAAkB,CAAC,aAAa,CAAC,EAAC;cAC/C,IAAI,CAAC;IACf;;ICNM,SAAU,sBAAsB,CAAC,EAErB,EAAA;IADd,IAAA,IAAA,KAAK,GAAA,EAAA,CAAA,KAAA,CAAA;IAEL,IAAA,OAAO,CAAA,KAAK,KAAL,IAAA,IAAA,KAAK,uBAAL,KAAK,CAAE,IAAI,KAAI,CAACC,0BAAoB,CAAC,KAAK,CAAC,IAAI,CAAC;cACjD,EAAC,IAAI,EAAE,IAAID,sBAAkB,CAAC,qBAAqB,CAAC,EAAC;cACrD,IAAI,CAAC;IACf;;ICLM,SAAU,sBAAsB,CAAC,OAA4B,EAAA;IAC/D,IAAA,OAAO,UAAC,EAAwB,EAAA;IAAvB,QAAA,IAAA,KAAK,GAAA,EAAA,CAAA,KAAA,CAAA;YACV,OAAOC,0BAAoB,CAAC,KAAK,CAAC;IAC9B,cAAE,IAAI;kBACJ,EAAC,IAAI,EAAE,IAAID,sBAAkB,CAAC,OAAO,CAAC,EAAC,CAAC;IAClD,KAAC,CAAC;IACN;;ICXA;;IAEG;;;;;;;;;;;;"}
|
|
@@ -1,71 +1,69 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@taiga-ui/addon-commerce/components'), require('@taiga-ui/addon-commerce/constants'), require('@taiga-ui/addon-commerce/enums'), require('@taiga-ui/addon-commerce/pipes'), require('@taiga-ui/addon-commerce/tokens'), require('@taiga-ui/addon-commerce/utils'), require('@taiga-ui/addon-commerce/validators')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define('@taiga-ui/addon-commerce', ['exports', '@taiga-ui/addon-commerce/components', '@taiga-ui/addon-commerce/constants', '@taiga-ui/addon-commerce/enums', '@taiga-ui/addon-commerce/pipes', '@taiga-ui/addon-commerce/tokens', '@taiga-ui/addon-commerce/utils', '@taiga-ui/addon-commerce/validators'], factory) :
|
|
4
|
-
(global = global || self, factory((global[
|
|
5
|
-
}(this, (function (exports, components, constants, enums, pipes, tokens, utils, validators) { 'use strict';
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@taiga-ui/addon-commerce/components'), require('@taiga-ui/addon-commerce/constants'), require('@taiga-ui/addon-commerce/enums'), require('@taiga-ui/addon-commerce/interfaces'), require('@taiga-ui/addon-commerce/pipes'), require('@taiga-ui/addon-commerce/tokens'), require('@taiga-ui/addon-commerce/types'), require('@taiga-ui/addon-commerce/utils'), require('@taiga-ui/addon-commerce/validators')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define('@taiga-ui/addon-commerce', ['exports', '@taiga-ui/addon-commerce/components', '@taiga-ui/addon-commerce/constants', '@taiga-ui/addon-commerce/enums', '@taiga-ui/addon-commerce/interfaces', '@taiga-ui/addon-commerce/pipes', '@taiga-ui/addon-commerce/tokens', '@taiga-ui/addon-commerce/types', '@taiga-ui/addon-commerce/utils', '@taiga-ui/addon-commerce/validators'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global["taiga-ui"] = global["taiga-ui"] || {}, global["taiga-ui"]["addon-commerce"] = {}), global["taiga-ui"]["addon-commerce"].components, global["taiga-ui"]["addon-commerce"].constants, global["taiga-ui"]["addon-commerce"].enums, global["taiga-ui"]["addon-commerce"].interfaces, global["taiga-ui"]["addon-commerce"].pipes, global["taiga-ui"]["addon-commerce"].tokens, global["taiga-ui"]["addon-commerce"].types, global["taiga-ui"]["addon-commerce"].utils, global["taiga-ui"]["addon-commerce"].validators));
|
|
5
|
+
})(this, (function (exports, components, constants, enums, interfaces, pipes, tokens, types, utils, validators) { 'use strict';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Generated bundle index. Do not edit.
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
Object.keys(components).forEach(function (k) {
|
|
12
|
-
if (k !== 'default') Object.defineProperty(exports, k, {
|
|
12
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () {
|
|
15
|
-
return components[k];
|
|
16
|
-
}
|
|
14
|
+
get: function () { return components[k]; }
|
|
17
15
|
});
|
|
18
16
|
});
|
|
19
17
|
Object.keys(constants).forEach(function (k) {
|
|
20
|
-
if (k !== 'default') Object.defineProperty(exports, k, {
|
|
18
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
21
19
|
enumerable: true,
|
|
22
|
-
get: function () {
|
|
23
|
-
return constants[k];
|
|
24
|
-
}
|
|
20
|
+
get: function () { return constants[k]; }
|
|
25
21
|
});
|
|
26
22
|
});
|
|
27
23
|
Object.keys(enums).forEach(function (k) {
|
|
28
|
-
if (k !== 'default') Object.defineProperty(exports, k, {
|
|
24
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
29
25
|
enumerable: true,
|
|
30
|
-
get: function () {
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
get: function () { return enums[k]; }
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
Object.keys(interfaces).forEach(function (k) {
|
|
30
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () { return interfaces[k]; }
|
|
33
33
|
});
|
|
34
34
|
});
|
|
35
35
|
Object.keys(pipes).forEach(function (k) {
|
|
36
|
-
if (k !== 'default') Object.defineProperty(exports, k, {
|
|
36
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
37
37
|
enumerable: true,
|
|
38
|
-
get: function () {
|
|
39
|
-
return pipes[k];
|
|
40
|
-
}
|
|
38
|
+
get: function () { return pipes[k]; }
|
|
41
39
|
});
|
|
42
40
|
});
|
|
43
41
|
Object.keys(tokens).forEach(function (k) {
|
|
44
|
-
if (k !== 'default') Object.defineProperty(exports, k, {
|
|
42
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () { return tokens[k]; }
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
Object.keys(types).forEach(function (k) {
|
|
48
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
45
49
|
enumerable: true,
|
|
46
|
-
get: function () {
|
|
47
|
-
return tokens[k];
|
|
48
|
-
}
|
|
50
|
+
get: function () { return types[k]; }
|
|
49
51
|
});
|
|
50
52
|
});
|
|
51
53
|
Object.keys(utils).forEach(function (k) {
|
|
52
|
-
if (k !== 'default') Object.defineProperty(exports, k, {
|
|
54
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
53
55
|
enumerable: true,
|
|
54
|
-
get: function () {
|
|
55
|
-
return utils[k];
|
|
56
|
-
}
|
|
56
|
+
get: function () { return utils[k]; }
|
|
57
57
|
});
|
|
58
58
|
});
|
|
59
59
|
Object.keys(validators).forEach(function (k) {
|
|
60
|
-
if (k !== 'default') Object.defineProperty(exports, k, {
|
|
60
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
61
61
|
enumerable: true,
|
|
62
|
-
get: function () {
|
|
63
|
-
return validators[k];
|
|
64
|
-
}
|
|
62
|
+
get: function () { return validators[k]; }
|
|
65
63
|
});
|
|
66
64
|
});
|
|
67
65
|
|
|
68
66
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
69
67
|
|
|
70
|
-
}))
|
|
68
|
+
}));
|
|
71
69
|
//# sourceMappingURL=taiga-ui-addon-commerce.umd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-addon-commerce.umd.js","sources":["
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-commerce.umd.js","sources":["../../../projects/addon-commerce/taiga-ui-addon-commerce.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;CAAA;;CAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
import { TuiPaymentSystem
|
|
1
|
+
import { TuiPaymentSystem } from '@taiga-ui/addon-commerce/types';
|
|
2
2
|
import { TuiSizeS } from '@taiga-ui/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
3
4
|
export declare function cardNumberAssertion({ length }: string): boolean;
|
|
4
5
|
export declare const cardNumberAssertionMessage = "cardNumber should contain 4 symbols";
|
|
5
6
|
export declare class TuiCardComponent {
|
|
6
7
|
active: boolean;
|
|
7
8
|
brandLogo: string;
|
|
8
9
|
cardNumber: string;
|
|
9
|
-
paymentSystem:
|
|
10
|
+
paymentSystem: TuiPaymentSystem | null;
|
|
10
11
|
size: TuiSizeS;
|
|
11
12
|
get hasBrandLogo(): boolean;
|
|
12
13
|
get paymentSystemLogo(): string;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiCardComponent, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiCardComponent, "tui-card", never, { "active": "active"; "brandLogo": "brandLogo"; "cardNumber": "cardNumber"; "paymentSystem": "paymentSystem"; "size": "size"; }, {}, never, never>;
|
|
13
16
|
}
|
|
@@ -1,2 +1,9 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./card.component";
|
|
3
|
+
import * as i2 from "@angular/common";
|
|
4
|
+
import * as i3 from "@taiga-ui/core";
|
|
1
5
|
export declare class TuiCardModule {
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiCardModule, never>;
|
|
7
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<TuiCardModule, [typeof i1.TuiCardComponent], [typeof i2.CommonModule, typeof i3.TuiSvgModule], [typeof i1.TuiCardComponent]>;
|
|
8
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<TuiCardModule>;
|
|
2
9
|
}
|