@taiga-ui/addon-commerce 3.49.1 → 3.491.1-canary.5e01f6f

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.
Files changed (130) hide show
  1. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js +1 -10
  2. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js.map +1 -1
  3. package/bundles/taiga-ui-addon-commerce-components-input-card.umd.js +0 -10
  4. package/bundles/taiga-ui-addon-commerce-components-input-card.umd.js.map +1 -1
  5. package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.js +0 -5
  6. package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.js.map +1 -1
  7. package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.js +0 -4
  8. package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.js.map +1 -1
  9. package/bundles/taiga-ui-addon-commerce-components-money.umd.js +0 -7
  10. package/bundles/taiga-ui-addon-commerce-components-money.umd.js.map +1 -1
  11. package/bundles/taiga-ui-addon-commerce-components-thumbnail-card.umd.js +0 -10
  12. package/bundles/taiga-ui-addon-commerce-components-thumbnail-card.umd.js.map +1 -1
  13. package/bundles/taiga-ui-addon-commerce-components.umd.js +0 -4
  14. package/bundles/taiga-ui-addon-commerce-components.umd.js.map +1 -1
  15. package/bundles/taiga-ui-addon-commerce-constants.umd.js +0 -12
  16. package/bundles/taiga-ui-addon-commerce-constants.umd.js.map +1 -1
  17. package/bundles/taiga-ui-addon-commerce-enums.umd.js +0 -635
  18. package/bundles/taiga-ui-addon-commerce-enums.umd.js.map +1 -1
  19. package/bundles/taiga-ui-addon-commerce-interfaces.umd.js +1 -3
  20. package/bundles/taiga-ui-addon-commerce-interfaces.umd.js.map +1 -1
  21. package/bundles/taiga-ui-addon-commerce-pipes.umd.js +0 -4
  22. package/bundles/taiga-ui-addon-commerce-pipes.umd.js.map +1 -1
  23. package/bundles/taiga-ui-addon-commerce-tokens.umd.js +0 -13
  24. package/bundles/taiga-ui-addon-commerce-tokens.umd.js.map +1 -1
  25. package/bundles/taiga-ui-addon-commerce-types.umd.js +1 -3
  26. package/bundles/taiga-ui-addon-commerce-types.umd.js.map +1 -1
  27. package/bundles/taiga-ui-addon-commerce-utils.umd.js +0 -23
  28. package/bundles/taiga-ui-addon-commerce-utils.umd.js.map +1 -1
  29. package/bundles/taiga-ui-addon-commerce-validators.umd.js +0 -4
  30. package/bundles/taiga-ui-addon-commerce-validators.umd.js.map +1 -1
  31. package/bundles/taiga-ui-addon-commerce.umd.js +0 -4
  32. package/bundles/taiga-ui-addon-commerce.umd.js.map +1 -1
  33. package/components/input-card/abstract-input-card.d.ts +0 -5
  34. package/components/input-card/taiga-ui-addon-commerce-components-input-card.d.ts +0 -3
  35. package/components/input-card-grouped/input-card-grouped.component.d.ts +0 -1
  36. package/components/input-card-grouped/input-card-grouped.providers.d.ts +0 -3
  37. package/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.d.ts +0 -3
  38. package/components/input-cvc/input-cvc.component.d.ts +0 -1
  39. package/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.d.ts +0 -3
  40. package/components/input-expire/taiga-ui-addon-commerce-components-input-expire.d.ts +0 -3
  41. package/components/money/money.options.d.ts +0 -3
  42. package/components/money/taiga-ui-addon-commerce-components-money.d.ts +0 -3
  43. package/components/taiga-ui-addon-commerce-components.d.ts +0 -3
  44. package/components/thumbnail-card/deprecated.d.ts +0 -6
  45. package/components/thumbnail-card/taiga-ui-addon-commerce-components-thumbnail-card.d.ts +0 -3
  46. package/constants/card-holder-mask.d.ts +0 -4
  47. package/constants/card-mask.d.ts +0 -3
  48. package/constants/taiga-ui-addon-commerce-constants.d.ts +0 -3
  49. package/enums/currency-code.d.ts +0 -313
  50. package/enums/currency.d.ts +0 -313
  51. package/enums/taiga-ui-addon-commerce-enums.d.ts +0 -3
  52. package/esm2015/components/input-card/abstract-input-card.js +1 -6
  53. package/esm2015/components/input-card/input-card.options.js +1 -2
  54. package/esm2015/components/input-card/taiga-ui-addon-commerce-components-input-card.js +1 -4
  55. package/esm2015/components/input-card-grouped/input-card-grouped.component.js +2 -4
  56. package/esm2015/components/input-card-grouped/input-card-grouped.providers.js +1 -4
  57. package/esm2015/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.js +1 -4
  58. package/esm2015/components/input-cvc/input-cvc.component.js +1 -2
  59. package/esm2015/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.js +1 -4
  60. package/esm2015/components/input-expire/taiga-ui-addon-commerce-components-input-expire.js +1 -4
  61. package/esm2015/components/money/money.options.js +1 -4
  62. package/esm2015/components/money/taiga-ui-addon-commerce-components-money.js +1 -4
  63. package/esm2015/components/taiga-ui-addon-commerce-components.js +1 -4
  64. package/esm2015/components/thumbnail-card/deprecated.js +1 -7
  65. package/esm2015/components/thumbnail-card/taiga-ui-addon-commerce-components-thumbnail-card.js +1 -4
  66. package/esm2015/constants/card-holder-mask.js +1 -6
  67. package/esm2015/constants/card-mask.js +1 -4
  68. package/esm2015/constants/taiga-ui-addon-commerce-constants.js +1 -4
  69. package/esm2015/enums/currency-code.js +1 -316
  70. package/esm2015/enums/currency.js +1 -317
  71. package/esm2015/enums/taiga-ui-addon-commerce-enums.js +1 -4
  72. package/esm2015/interfaces/taiga-ui-addon-commerce-interfaces.js +1 -4
  73. package/esm2015/pipes/taiga-ui-addon-commerce-pipes.js +1 -4
  74. package/esm2015/taiga-ui-addon-commerce.js +1 -4
  75. package/esm2015/tokens/i18n.js +1 -10
  76. package/esm2015/tokens/taiga-ui-addon-commerce-tokens.js +1 -4
  77. package/esm2015/types/taiga-ui-addon-commerce-types.js +1 -4
  78. package/esm2015/utils/create-auto-corrected-expire-pipe.js +1 -12
  79. package/esm2015/utils/get-code-by-currency.js +1 -2
  80. package/esm2015/utils/get-currency-by-code.js +1 -2
  81. package/esm2015/utils/get-payment-system.js +1 -2
  82. package/esm2015/utils/is-card-length-valid.js +1 -4
  83. package/esm2015/utils/is-card-number-valid.js +1 -4
  84. package/esm2015/utils/payment-system-icons.js +1 -2
  85. package/esm2015/utils/taiga-ui-addon-commerce-utils.js +1 -4
  86. package/esm2015/validators/taiga-ui-addon-commerce-validators.js +1 -4
  87. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js +1 -10
  88. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js.map +1 -1
  89. package/fesm2015/taiga-ui-addon-commerce-components-input-card.js +0 -10
  90. package/fesm2015/taiga-ui-addon-commerce-components-input-card.js.map +1 -1
  91. package/fesm2015/taiga-ui-addon-commerce-components-input-cvc.js +0 -5
  92. package/fesm2015/taiga-ui-addon-commerce-components-input-cvc.js.map +1 -1
  93. package/fesm2015/taiga-ui-addon-commerce-components-input-expire.js +0 -4
  94. package/fesm2015/taiga-ui-addon-commerce-components-input-expire.js.map +1 -1
  95. package/fesm2015/taiga-ui-addon-commerce-components-money.js +0 -7
  96. package/fesm2015/taiga-ui-addon-commerce-components-money.js.map +1 -1
  97. package/fesm2015/taiga-ui-addon-commerce-components-thumbnail-card.js +0 -10
  98. package/fesm2015/taiga-ui-addon-commerce-components-thumbnail-card.js.map +1 -1
  99. package/fesm2015/taiga-ui-addon-commerce-components.js +0 -4
  100. package/fesm2015/taiga-ui-addon-commerce-components.js.map +1 -1
  101. package/fesm2015/taiga-ui-addon-commerce-constants.js +0 -12
  102. package/fesm2015/taiga-ui-addon-commerce-constants.js.map +1 -1
  103. package/fesm2015/taiga-ui-addon-commerce-enums.js +0 -635
  104. package/fesm2015/taiga-ui-addon-commerce-enums.js.map +1 -1
  105. package/fesm2015/taiga-ui-addon-commerce-interfaces.js +1 -3
  106. package/fesm2015/taiga-ui-addon-commerce-interfaces.js.map +1 -1
  107. package/fesm2015/taiga-ui-addon-commerce-pipes.js +0 -4
  108. package/fesm2015/taiga-ui-addon-commerce-pipes.js.map +1 -1
  109. package/fesm2015/taiga-ui-addon-commerce-tokens.js +0 -13
  110. package/fesm2015/taiga-ui-addon-commerce-tokens.js.map +1 -1
  111. package/fesm2015/taiga-ui-addon-commerce-types.js +1 -3
  112. package/fesm2015/taiga-ui-addon-commerce-types.js.map +1 -1
  113. package/fesm2015/taiga-ui-addon-commerce-utils.js +0 -25
  114. package/fesm2015/taiga-ui-addon-commerce-utils.js.map +1 -1
  115. package/fesm2015/taiga-ui-addon-commerce-validators.js +0 -4
  116. package/fesm2015/taiga-ui-addon-commerce-validators.js.map +1 -1
  117. package/fesm2015/taiga-ui-addon-commerce.js +0 -4
  118. package/fesm2015/taiga-ui-addon-commerce.js.map +1 -1
  119. package/interfaces/taiga-ui-addon-commerce-interfaces.d.ts +0 -3
  120. package/package.json +1 -1
  121. package/pipes/taiga-ui-addon-commerce-pipes.d.ts +0 -3
  122. package/taiga-ui-addon-commerce.d.ts +0 -3
  123. package/tokens/i18n.d.ts +0 -9
  124. package/tokens/taiga-ui-addon-commerce-tokens.d.ts +0 -3
  125. package/types/taiga-ui-addon-commerce-types.d.ts +0 -3
  126. package/utils/create-auto-corrected-expire-pipe.d.ts +0 -8
  127. package/utils/is-card-length-valid.d.ts +0 -3
  128. package/utils/is-card-number-valid.d.ts +0 -3
  129. package/utils/taiga-ui-addon-commerce-utils.d.ts +0 -3
  130. package/validators/taiga-ui-addon-commerce-validators.d.ts +0 -3
@@ -1,4 +1,3 @@
1
- // https://en.wikipedia.org/wiki/Payment_card_number#Issuer_identification_number_(IIN)
2
1
  export const TUI_BIN_TABLE = [
3
2
  [`mir`, 2200, 2204],
4
3
  [`mastercard`, 2221, 2720],
@@ -104,4 +103,4 @@ export function tuiIsElectron(four) {
104
103
  export function tuiIsVisa(one) {
105
104
  return one === 4;
106
105
  }
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXBheW1lbnQtc3lzdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY29tbWVyY2UvdXRpbHMvZ2V0LXBheW1lbnQtc3lzdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLHVGQUF1RjtBQUN2RixNQUFNLENBQUMsTUFBTSxhQUFhLEdBRXRCO0lBQ0EsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQztJQUNuQixDQUFDLFlBQVksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO0lBQzFCLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7SUFDbkIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBQ1osQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBQ1osQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO0lBQ2xCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUNsQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDbEIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ2xCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUNsQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDbEIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ2xCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUNsQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDWCxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ3pCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDekIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO0lBQ2pCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQztJQUNqQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUM7SUFDakIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO0lBQ2pCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FB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Q2Y7SUFFRCxJQUFJLEdBQUcsR0FBRyxFQUFFLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELElBQUksR0FBRyxHQUFHLEVBQUUsSUFBSSxHQUFHLEdBQUcsRUFBRSxFQUFFO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7SUFFRCxJQUFJLElBQUksR0FBRyxJQUFJLEVBQUU7UUFDYixPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELE9BQU8sSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBQ3RDLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUSxDQUFDLElBQVk7SUFDakMsT0FBTyxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBWTtJQUN0QyxRQUFRLElBQUksRUFBRTtRQUNWLEtBQUssSUFBSSxDQUFDO1FBQ1YsS0FBSyxJQUFJLENBQUM7UUFDVixLQUFLLElBQUksQ0FBQztRQUNWLEtBQUssSUFBSSxDQUFDO1FBQ1YsS0FBSyxJQUFJLENBQUM7UUFDVixLQUFLLElBQUksQ0FBQztRQUNWLEtBQUssSUFBSTtZQUNMLE9BQU8sSUFBSSxDQUFDO1FBQ2hCO1lBQ0ksT0FBTyxLQUFLLENBQUM7S0FDcEI7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLFNBQVMsQ0FBQyxHQUFXO0lBQ2pDLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQztBQUNyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUdWlQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuXG4vLyBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9QYXltZW50X2NhcmRfbnVtYmVyI0lzc3Vlcl9pZGVudGlmaWNhdGlvbl9udW1iZXJfKElJTilcbmV4cG9ydCBjb25zdCBUVUlfQklOX1RBQkxFOiBSZWFkb25seUFycmF5PFxuICAgIFtwYXltZW50U3lzdGVtOiBUdWlQYXltZW50U3lzdGVtLCBzdGFydDogbnVtYmVyLCBlbmQ/OiBudW1iZXJdXG4+ID0gW1xuICAgIFtgbWlyYCwgMjIwMCwgMjIwNF0sXG4gICAgW2BtYXN0ZXJjYXJkYCwgMjIyMSwgMjcyMF0sXG4gICAgW2BqY2JgLCAzNTI4LCAzNTg5XSxcbiAgICBbYGFtZXhgLCAzNF0sXG4gICAgW2BhbWV4YCwgMzddLFxuICAgIFtgZGluZXJzY2x1YmAsIDM2XSxcbiAgICBbYGVsZWN0cm9uYCwgNDAyNl0sXG4gICAgW2BlbGVjdHJvbmAsIDQxNzVdLFxuICAgIFtgZWxlY3Ryb25gLCA0NDA1XSxcbiAgICBbYGVsZWN0cm9uYCwgNDUwOF0sXG4gICAgW2BlbGVjdHJvbmAsIDQ4NDRdLFxuICAgIFtgZWxlY3Ryb25gLCA0OTEzXSxcbiAgICBbYGVsZWN0cm9uYCwgNDkxN10sXG4gICAgW2B2aXNhYCwgNF0sXG4gICAgW2B2ZXJ2ZWAsIDUwNjA5OSwgNTA2MTk4XSxcbiAgICBbYHZlcnZlYCwgNTA3ODY1LCA1MDc5NjRdLFxuICAgIFtgbWFlc3Ryb2AsIDUwMThdLFxuICAgIFtgbWFlc3Ryb2AsIDUwMjBdLFxuICAgIFtgbWFlc3Ryb2AsIDUwMzhdLFxuICAgIFtgbWFlc3Ryb2AsIDUwOTBdLFxuICAgIFtgbWFlc3Ryb2AsIDU4OTBdLFxuICAgIFtgbWFlc3Ryb2AsIDU4OTNdLFxuICAgIFtgcnVwYXlgLCA1MDhdLFxuICAgIFtgbWFlc3Ryb2AsIDUwXSxcbiAgICBbYGRpbmVyc2NsdWJgLCA1NF0sXG4gICAgW2BtYXN0ZXJjYXJkYCwgNTEsIDU1XSxcbiAgICBbYG1hZXN0cm9gLCA1Nl0sXG4gICAgW2BtYWVzdHJvYCwgNThdLFxuICAgIFtgbWFzdGVyY2FyZGAsIDVdLFxuICAgIFtgbWFlc3Ryb2AsIDYwMDBdLFxuICAgIFtgbWFlc3Ryb2AsIDYzMDRdLFxuICAgIFtgbWFlc3Ryb2AsIDY3NTksIDY3NjNdLFxuICAgIFtgdmVydmVgLCA2NTAwMDIsIDY1MDAyN10sXG4gICAgW2BtYWVzdHJvYCwgNjc2NzcwXSxcbiAgICBbYG1hZXN0cm9gLCA2NzY3NzRdLFxuICAgIFtgZGlzY292ZXJgLCA2NDQsIDY0OV0sXG4gICAgW2BkaXNjb3ZlcmAsIDYwMTFdLFxuICAgIFtgcnVwYXlgLCA2MF0sXG4gICAgW2B1bmlvbnBheWAsIDYyXSxcbiAgICBbYGRpc2NvdmVyYCwgNjVdLFxuICAgIFtgbWFlc3Ryb2AsIDZdLFxuICAgIFtgcnVwYXlgLCA4MSwgODJdLFxuICAgIFtgdXpjYXJkYCwgODYwMF0sXG4gICAgW2BodW1vYCwgOTg2MF0sXG5dO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpR2V0UGF5bWVudFN5c3RlbShcbiAgICBjYXJkTnVtYmVyPzogc3RyaW5nIHwgbnVsbCxcbiAgICBzdXBwb3J0ZWQ/OiBUdWlQYXltZW50U3lzdGVtW10sXG4pOiBUdWlQYXltZW50U3lzdGVtIHwgbnVsbCB7XG4gICAgaWYgKCFjYXJkTnVtYmVyKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHJvdyA9IFRVSV9CSU5fVEFCTEUuZmluZCgoW3BheW1lbnRTeXN0ZW0sIHN0YXJ0LCBlbmQgPSBzdGFydF0pID0+IHtcbiAgICAgICAgY29uc3QgY2FyZE51bWJlck51bWVyaWMgPSBOdW1iZXIucGFyc2VJbnQoXG4gICAgICAgICAgICBjYXJkTnVtYmVyLnNsaWNlKDAsIFN0cmluZyhzdGFydCkubGVuZ3RoKSxcbiAgICAgICAgICAgIDEwLFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IG1hdGNoID0gY2FyZE51bWJlck51bWVyaWMgPj0gc3RhcnQgJiYgY2FyZE51bWJlck51bWVyaWMgPD0gZW5kO1xuXG4gICAgICAgIHJldHVybiBtYXRjaCAmJiAoIXN1cHBvcnRlZD8ubGVuZ3RoIHx8IHN1cHBvcnRlZC5pbmNsdWRlcyhwYXltZW50U3lzdGVtKSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcm93Py5bMF0gPz8gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUlzTWFlc3Rybyh0aHJlZTogbnVtYmVyLCB0d286IG51bWJlciwgb25lOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBpZiAob25lID09PSA2KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0d28gPT09IDUwIHx8ICh0d28gPiA1NSAmJiB0d28gPCA1OSkpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRocmVlIDwgNTAwKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhyZWUgPCA1MTA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlJc01hc3RlcmNhcmQoZm91cjogbnVtYmVyLCB0d286IG51bWJlciwgb25lOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBpZiAob25lID09PSA1KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0d28gPCAxMCkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKHR3byA+IDUwICYmIHR3byA8IDU2KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmIChmb3VyIDwgMTAwMCkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvdXIgPiAyMjIwICYmIGZvdXIgPCAyNzIxO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpSXNNaXIoZm91cjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZvdXIgPiAyMTk5ICYmIGZvdXIgPCAyMjA1O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpSXNFbGVjdHJvbihmb3VyOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBzd2l0Y2ggKGZvdXIpIHtcbiAgICAgICAgY2FzZSA0MDI2OlxuICAgICAgICBjYXNlIDQxNzU6XG4gICAgICAgIGNhc2UgNDQwNTpcbiAgICAgICAgY2FzZSA0NTA4OlxuICAgICAgICBjYXNlIDQ4NDQ6XG4gICAgICAgIGNhc2UgNDkxMzpcbiAgICAgICAgY2FzZSA0OTE3OlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpSXNWaXNhKG9uZTogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG9uZSA9PT0gNDtcbn1cbiJdfQ==
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXBheW1lbnQtc3lzdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY29tbWVyY2UvdXRpbHMvZ2V0LXBheW1lbnQtc3lzdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FFdEI7SUFDQSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO0lBQ25CLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7SUFDMUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQztJQUNuQixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7SUFDWixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7SUFDWixDQUFDLFlBQVksRUFBRSxFQUFFLENBQUM7SUFDbEIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ2xCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUNsQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDbEIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ2xCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUNsQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDbEIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ2xCLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNYLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDekIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztJQUN6QixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUM7SUFDakIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO0lBQ2pCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQztJQUNqQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUM7SUFDakIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO0lBQ2pCLENBQUMs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R0FBRyxHQUFHLEVBQUUsRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0lBRUQsSUFBSSxHQUFHLEdBQUcsRUFBRSxJQUFJLEdBQUcsR0FBRyxFQUFFLEVBQUU7UUFDdEIsT0FBTyxJQUFJLENBQUM7S0FDZjtJQUVELElBQUksSUFBSSxHQUFHLElBQUksRUFBRTtRQUNiLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0lBRUQsT0FBTyxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxRQUFRLENBQUMsSUFBWTtJQUNqQyxPQUFPLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztBQUN0QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxJQUFZO0lBQ3RDLFFBQVEsSUFBSSxFQUFFO1FBQ1YsS0FBSyxJQUFJLENBQUM7UUFDVixLQUFLLElBQUksQ0FBQztRQUNWLEtBQUssSUFBSSxDQUFDO1FBQ1YsS0FBSyxJQUFJLENBQUM7UUFDVixLQUFLLElBQUksQ0FBQztRQUNWLEtBQUssSUFBSSxDQUFDO1FBQ1YsS0FBSyxJQUFJO1lBQ0wsT0FBTyxJQUFJLENBQUM7UUFDaEI7WUFDSSxPQUFPLEtBQUssQ0FBQztLQUNwQjtBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUFDLEdBQVc7SUFDakMsT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDO0FBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R1aVBheW1lbnRTeXN0ZW19IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS90eXBlcyc7XG5cbi8vIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1BheW1lbnRfY2FyZF9udW1iZXIjSXNzdWVyX2lkZW50aWZpY2F0aW9uX251bWJlcl8oSUlOKVxuZXhwb3J0IGNvbnN0IFRVSV9CSU5fVEFCTEU6IFJlYWRvbmx5QXJyYXk8XG4gICAgW3BheW1lbnRTeXN0ZW06IFR1aVBheW1lbnRTeXN0ZW0sIHN0YXJ0OiBudW1iZXIsIGVuZD86IG51bWJlcl1cbj4gPSBbXG4gICAgW2BtaXJgLCAyMjAwLCAyMjA0XSxcbiAgICBbYG1hc3RlcmNhcmRgLCAyMjIxLCAyNzIwXSxcbiAgICBbYGpjYmAsIDM1MjgsIDM1ODldLFxuICAgIFtgYW1leGAsIDM0XSxcbiAgICBbYGFtZXhgLCAzN10sXG4gICAgW2BkaW5lcnNjbHViYCwgMzZdLFxuICAgIFtgZWxlY3Ryb25gLCA0MDI2XSxcbiAgICBbYGVsZWN0cm9uYCwgNDE3NV0sXG4gICAgW2BlbGVjdHJvbmAsIDQ0MDVdLFxuICAgIFtgZWxlY3Ryb25gLCA0NTA4XSxcbiAgICBbYGVsZWN0cm9uYCwgNDg0NF0sXG4gICAgW2BlbGVjdHJvbmAsIDQ5MTNdLFxuICAgIFtgZWxlY3Ryb25gLCA0OTE3XSxcbiAgICBbYHZpc2FgLCA0XSxcbiAgICBbYHZlcnZlYCwgNTA2MDk5LCA1MDYxOThdLFxuICAgIFtgdmVydmVgLCA1MDc4NjUsIDUwNzk2NF0sXG4gICAgW2BtYWVzdHJvYCwgNTAxOF0sXG4gICAgW2BtYWVzdHJvYCwgNTAyMF0sXG4gICAgW2BtYWVzdHJvYCwgNTAzOF0sXG4gICAgW2BtYWVzdHJvYCwgNTA5MF0sXG4gICAgW2BtYWVzdHJvYCwgNTg5MF0sXG4gICAgW2BtYWVzdHJvYCwgNTg5M10sXG4gICAgW2BydXBheWAsIDUwOF0sXG4gICAgW2BtYWVzdHJvYCwgNTBdLFxuICAgIFtgZGluZXJzY2x1YmAsIDU0XSxcbiAgICBbYG1hc3RlcmNhcmRgLCA1MSwgNTVdLFxuICAgIFtgbWFlc3Ryb2AsIDU2XSxcbiAgICBbYG1hZXN0cm9gLCA1OF0sXG4gICAgW2BtYXN0ZXJjYXJkYCwgNV0sXG4gICAgW2BtYWVzdHJvYCwgNjAwMF0sXG4gICAgW2BtYWVzdHJvYCwgNjMwNF0sXG4gICAgW2BtYWVzdHJvYCwgNjc1OSwgNjc2M10sXG4gICAgW2B2ZXJ2ZWAsIDY1MDAwMiwgNjUwMDI3XSxcbiAgICBbYG1hZXN0cm9gLCA2NzY3NzBdLFxuICAgIFtgbWFlc3Ryb2AsIDY3Njc3NF0sXG4gICAgW2BkaXNjb3ZlcmAsIDY0NCwgNjQ5XSxcbiAgICBbYGRpc2NvdmVyYCwgNjAxMV0sXG4gICAgW2BydXBheWAsIDYwXSxcbiAgICBbYHVuaW9ucGF5YCwgNjJdLFxuICAgIFtgZGlzY292ZXJgLCA2NV0sXG4gICAgW2BtYWVzdHJvYCwgNl0sXG4gICAgW2BydXBheWAsIDgxLCA4Ml0sXG4gICAgW2B1emNhcmRgLCA4NjAwXSxcbiAgICBbYGh1bW9gLCA5ODYwXSxcbl07XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlHZXRQYXltZW50U3lzdGVtKFxuICAgIGNhcmROdW1iZXI/OiBzdHJpbmcgfCBudWxsLFxuICAgIHN1cHBvcnRlZD86IFR1aVBheW1lbnRTeXN0ZW1bXSxcbik6IFR1aVBheW1lbnRTeXN0ZW0gfCBudWxsIHtcbiAgICBpZiAoIWNhcmROdW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3Qgcm93ID0gVFVJX0JJTl9UQUJMRS5maW5kKChbcGF5bWVudFN5c3RlbSwgc3RhcnQsIGVuZCA9IHN0YXJ0XSkgPT4ge1xuICAgICAgICBjb25zdCBjYXJkTnVtYmVyTnVtZXJpYyA9IE51bWJlci5wYXJzZUludChcbiAgICAgICAgICAgIGNhcmROdW1iZXIuc2xpY2UoMCwgU3RyaW5nKHN0YXJ0KS5sZW5ndGgpLFxuICAgICAgICAgICAgMTAsXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgbWF0Y2ggPSBjYXJkTnVtYmVyTnVtZXJpYyA+PSBzdGFydCAmJiBjYXJkTnVtYmVyTnVtZXJpYyA8PSBlbmQ7XG5cbiAgICAgICAgcmV0dXJuIG1hdGNoICYmICghc3VwcG9ydGVkPy5sZW5ndGggfHwgc3VwcG9ydGVkLmluY2x1ZGVzKHBheW1lbnRTeXN0ZW0pKTtcbiAgICB9KTtcblxuICAgIHJldHVybiByb3c/LlswXSA/PyBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpSXNNYWVzdHJvKHRocmVlOiBudW1iZXIsIHR3bzogbnVtYmVyLCBvbmU6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGlmIChvbmUgPT09IDYpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHR3byA9PT0gNTAgfHwgKHR3byA+IDU1ICYmIHR3byA8IDU5KSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodGhyZWUgPCA1MDApIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0aHJlZSA8IDUxMDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUlzTWFzdGVyY2FyZChmb3VyOiBudW1iZXIsIHR3bzogbnVtYmVyLCBvbmU6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGlmIChvbmUgPT09IDUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHR3byA8IDEwKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAodHdvID4gNTAgJiYgdHdvIDwgNTYpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKGZvdXIgPCAxMDAwKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm91ciA+IDIyMjAgJiYgZm91ciA8IDI3MjE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlJc01pcihmb3VyOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZm91ciA+IDIxOTkgJiYgZm91ciA8IDIyMDU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlJc0VsZWN0cm9uKGZvdXI6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHN3aXRjaCAoZm91cikge1xuICAgICAgICBjYXNlIDQwMjY6XG4gICAgICAgIGNhc2UgNDE3NTpcbiAgICAgICAgY2FzZSA0NDA1OlxuICAgICAgICBjYXNlIDQ1MDg6XG4gICAgICAgIGNhc2UgNDg0NDpcbiAgICAgICAgY2FzZSA0OTEzOlxuICAgICAgICBjYXNlIDQ5MTc6XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlJc1Zpc2Eob25lOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gb25lID09PSA0O1xufVxuIl19
@@ -1,7 +1,4 @@
1
1
  import { tuiGetPaymentSystem } from './get-payment-system';
2
- /**
3
- * Validates card number length using payment system dictionary
4
- */
5
2
  export function tuiIsCardLengthValid(cardNumber) {
6
3
  const { length } = cardNumber;
7
4
  const paymentSystem = tuiGetPaymentSystem(cardNumber);
@@ -19,4 +16,4 @@ export function tuiIsCardLengthValid(cardNumber) {
19
16
  return length > 8 && length < 20;
20
17
  }
21
18
  }
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY2FyZC1sZW5ndGgtdmFsaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9pcy1jYXJkLWxlbmd0aC12YWxpZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUV6RDs7R0FFRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxVQUFrQjtJQUNuRCxNQUFNLEVBQUMsTUFBTSxFQUFDLEdBQUcsVUFBVSxDQUFDO0lBQzVCLE1BQU0sYUFBYSxHQUFHLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXRELFFBQVEsYUFBYSxFQUFFO1FBQ25CLEtBQUssVUFBVTtZQUNYLE9BQU8sTUFBTSxLQUFLLEVBQUUsQ0FBQztRQUN6QixLQUFLLFNBQVM7WUFDVixPQUFPLE1BQU0sR0FBRyxFQUFFLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUN0QyxLQUFLLFlBQVksQ0FBQztRQUNsQixLQUFLLEtBQUs7WUFDTixPQUFPLE1BQU0sR0FBRyxFQUFFLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUN0QyxLQUFLLE1BQU07WUFDUCxPQUFPLE1BQU0sR0FBRyxFQUFFLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUN0QztZQUNJLE9BQU8sTUFBTSxHQUFHLENBQUMsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO0tBQ3hDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dHVpR2V0UGF5bWVudFN5c3RlbX0gZnJvbSAnLi9nZXQtcGF5bWVudC1zeXN0ZW0nO1xuXG4vKipcbiAqIFZhbGlkYXRlcyBjYXJkIG51bWJlciBsZW5ndGggdXNpbmcgcGF5bWVudCBzeXN0ZW0gZGljdGlvbmFyeVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpSXNDYXJkTGVuZ3RoVmFsaWQoY2FyZE51bWJlcjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3Qge2xlbmd0aH0gPSBjYXJkTnVtYmVyO1xuICAgIGNvbnN0IHBheW1lbnRTeXN0ZW0gPSB0dWlHZXRQYXltZW50U3lzdGVtKGNhcmROdW1iZXIpO1xuXG4gICAgc3dpdGNoIChwYXltZW50U3lzdGVtKSB7XG4gICAgICAgIGNhc2UgYGVsZWN0cm9uYDpcbiAgICAgICAgICAgIHJldHVybiBsZW5ndGggPT09IDE2O1xuICAgICAgICBjYXNlIGBtYWVzdHJvYDpcbiAgICAgICAgICAgIHJldHVybiBsZW5ndGggPiAxMSAmJiBsZW5ndGggPCAyMDtcbiAgICAgICAgY2FzZSBgbWFzdGVyY2FyZGA6XG4gICAgICAgIGNhc2UgYG1pcmA6XG4gICAgICAgICAgICByZXR1cm4gbGVuZ3RoID4gMTUgJiYgbGVuZ3RoIDwgMjA7XG4gICAgICAgIGNhc2UgYHZpc2FgOlxuICAgICAgICAgICAgcmV0dXJuIGxlbmd0aCA+IDEyICYmIGxlbmd0aCA8IDIwO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIGxlbmd0aCA+IDggJiYgbGVuZ3RoIDwgMjA7XG4gICAgfVxufVxuIl19
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY2FyZC1sZW5ndGgtdmFsaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9pcy1jYXJkLWxlbmd0aC12YWxpZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUt6RCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsVUFBa0I7SUFDbkQsTUFBTSxFQUFDLE1BQU0sRUFBQyxHQUFHLFVBQVUsQ0FBQztJQUM1QixNQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUV0RCxRQUFRLGFBQWEsRUFBRTtRQUNuQixLQUFLLFVBQVU7WUFDWCxPQUFPLE1BQU0sS0FBSyxFQUFFLENBQUM7UUFDekIsS0FBSyxTQUFTO1lBQ1YsT0FBTyxNQUFNLEdBQUcsRUFBRSxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDdEMsS0FBSyxZQUFZLENBQUM7UUFDbEIsS0FBSyxLQUFLO1lBQ04sT0FBTyxNQUFNLEdBQUcsRUFBRSxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDdEMsS0FBSyxNQUFNO1lBQ1AsT0FBTyxNQUFNLEdBQUcsRUFBRSxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDdEM7WUFDSSxPQUFPLE1BQU0sR0FBRyxDQUFDLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztLQUN4QztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUdldFBheW1lbnRTeXN0ZW19IGZyb20gJy4vZ2V0LXBheW1lbnQtc3lzdGVtJztcblxuLyoqXG4gKiBWYWxpZGF0ZXMgY2FyZCBudW1iZXIgbGVuZ3RoIHVzaW5nIHBheW1lbnQgc3lzdGVtIGRpY3Rpb25hcnlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHR1aUlzQ2FyZExlbmd0aFZhbGlkKGNhcmROdW1iZXI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHtsZW5ndGh9ID0gY2FyZE51bWJlcjtcbiAgICBjb25zdCBwYXltZW50U3lzdGVtID0gdHVpR2V0UGF5bWVudFN5c3RlbShjYXJkTnVtYmVyKTtcblxuICAgIHN3aXRjaCAocGF5bWVudFN5c3RlbSkge1xuICAgICAgICBjYXNlIGBlbGVjdHJvbmA6XG4gICAgICAgICAgICByZXR1cm4gbGVuZ3RoID09PSAxNjtcbiAgICAgICAgY2FzZSBgbWFlc3Ryb2A6XG4gICAgICAgICAgICByZXR1cm4gbGVuZ3RoID4gMTEgJiYgbGVuZ3RoIDwgMjA7XG4gICAgICAgIGNhc2UgYG1hc3RlcmNhcmRgOlxuICAgICAgICBjYXNlIGBtaXJgOlxuICAgICAgICAgICAgcmV0dXJuIGxlbmd0aCA+IDE1ICYmIGxlbmd0aCA8IDIwO1xuICAgICAgICBjYXNlIGB2aXNhYDpcbiAgICAgICAgICAgIHJldHVybiBsZW5ndGggPiAxMiAmJiBsZW5ndGggPCAyMDtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBsZW5ndGggPiA4ICYmIGxlbmd0aCA8IDIwO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,7 +1,4 @@
1
1
  import { TUI_NON_DIGITS_REGEXP } from '@taiga-ui/core';
2
- /**
3
- * Validates card number using Luhn algorithm
4
- */
5
2
  export function tuiIsCardNumberValid(value) {
6
3
  const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, ``);
7
4
  const { length } = cardNumber;
@@ -15,4 +12,4 @@ export function tuiIsCardNumberValid(value) {
15
12
  });
16
13
  return !(arr.reduce((a, b) => a + b, 0) % 10);
17
14
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY2FyZC1udW1iZXItdmFsaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9pcy1jYXJkLW51bWJlci12YWxpZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRDs7R0FFRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxLQUFzQjtJQUN2RCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXBFLE1BQU0sRUFBQyxNQUFNLEVBQUMsR0FBRyxVQUFVLENBQUM7SUFDNUIsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDakQsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDNUIsTUFBTSxPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztZQUUxQixPQUFPLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztTQUM5QztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7QUFDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VFVJX05PTl9ESUdJVFNfUkVHRVhQfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbi8qKlxuICogVmFsaWRhdGVzIGNhcmQgbnVtYmVyIHVzaW5nIEx1aG4gYWxnb3JpdGhtXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlJc0NhcmROdW1iZXJWYWxpZCh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY2FyZE51bWJlciA9IFN0cmluZyh2YWx1ZSkucmVwbGFjZShUVUlfTk9OX0RJR0lUU19SRUdFWFAsIGBgKTtcblxuICAgIGNvbnN0IHtsZW5ndGh9ID0gY2FyZE51bWJlcjtcbiAgICBjb25zdCBhcnIgPSBjYXJkTnVtYmVyLnNwbGl0KGBgKS5tYXAoKGNoYXIsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbnN0IGRpZ2l0ID0gcGFyc2VJbnQoY2hhciwgMTApO1xuXG4gICAgICAgIGlmICgoaW5kZXggKyBsZW5ndGgpICUgMiA9PT0gMCkge1xuICAgICAgICAgICAgY29uc3QgZGlnaXRYMiA9IGRpZ2l0ICogMjtcblxuICAgICAgICAgICAgcmV0dXJuIGRpZ2l0WDIgPiA5ID8gZGlnaXRYMiAtIDkgOiBkaWdpdFgyO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRpZ2l0O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuICEoYXJyLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIDApICUgMTApO1xufVxuIl19
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY2FyZC1udW1iZXItdmFsaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9pcy1jYXJkLW51bWJlci12YWxpZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUtyRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsS0FBc0I7SUFDdkQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVwRSxNQUFNLEVBQUMsTUFBTSxFQUFDLEdBQUcsVUFBVSxDQUFDO0lBQzVCLE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ2pELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakMsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzVCLE1BQU0sT0FBTyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7WUFFMUIsT0FBTyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7U0FDOUM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0FBQ2xELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1RVSV9OT05fRElHSVRTX1JFR0VYUH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG4vKipcbiAqIFZhbGlkYXRlcyBjYXJkIG51bWJlciB1c2luZyBMdWhuIGFsZ29yaXRobVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpSXNDYXJkTnVtYmVyVmFsaWQodmFsdWU6IG51bWJlciB8IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNhcmROdW1iZXIgPSBTdHJpbmcodmFsdWUpLnJlcGxhY2UoVFVJX05PTl9ESUdJVFNfUkVHRVhQLCBgYCk7XG5cbiAgICBjb25zdCB7bGVuZ3RofSA9IGNhcmROdW1iZXI7XG4gICAgY29uc3QgYXJyID0gY2FyZE51bWJlci5zcGxpdChgYCkubWFwKChjaGFyLCBpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBkaWdpdCA9IHBhcnNlSW50KGNoYXIsIDEwKTtcblxuICAgICAgICBpZiAoKGluZGV4ICsgbGVuZ3RoKSAlIDIgPT09IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGRpZ2l0WDIgPSBkaWdpdCAqIDI7XG5cbiAgICAgICAgICAgIHJldHVybiBkaWdpdFgyID4gOSA/IGRpZ2l0WDIgLSA5IDogZGlnaXRYMjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBkaWdpdDtcbiAgICB9KTtcblxuICAgIHJldHVybiAhKGFyci5yZWR1Y2UoKGEsIGIpID0+IGEgKyBiLCAwKSAlIDEwKTtcbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
- // TODO: Make it a token in 4.0, think about mono icons for card component
2
1
  export const TUI_PAYMENT_SYSTEM_ICONS = {
3
2
  mir: `tuiIconMir`,
4
3
  visa: `tuiIconVisaMono`,
@@ -15,4 +14,4 @@ export const TUI_PAYMENT_SYSTEM_ICONS = {
15
14
  uzcard: `tuiIconUzcard`,
16
15
  verve: `tuiIconVerve`,
17
16
  };
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1zeXN0ZW0taWNvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9wYXltZW50LXN5c3RlbS1pY29ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSwwRUFBMEU7QUFDMUUsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQXFDO0lBQ3RFLEdBQUcsRUFBRSxZQUFZO0lBQ2pCLElBQUksRUFBRSxpQkFBaUI7SUFDdkIsUUFBUSxFQUFFLHFCQUFxQjtJQUMvQixVQUFVLEVBQUUsbUJBQW1CO0lBQy9CLE9BQU8sRUFBRSxnQkFBZ0I7SUFDekIsSUFBSSxFQUFFLGFBQWE7SUFDbkIsVUFBVSxFQUFFLG1CQUFtQjtJQUMvQixRQUFRLEVBQUUsaUJBQWlCO0lBQzNCLElBQUksRUFBRSxhQUFhO0lBQ25CLEdBQUcsRUFBRSxZQUFZO0lBQ2pCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsTUFBTSxFQUFFLGVBQWU7SUFDdkIsS0FBSyxFQUFFLGNBQWM7Q0FDeEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHVpUGF5bWVudFN5c3RlbX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL3R5cGVzJztcblxuLy8gVE9ETzogTWFrZSBpdCBhIHRva2VuIGluIDQuMCwgdGhpbmsgYWJvdXQgbW9ubyBpY29ucyBmb3IgY2FyZCBjb21wb25lbnRcbmV4cG9ydCBjb25zdCBUVUlfUEFZTUVOVF9TWVNURU1fSUNPTlM6IFJlY29yZDxUdWlQYXltZW50U3lzdGVtLCBzdHJpbmc+ID0ge1xuICAgIG1pcjogYHR1aUljb25NaXJgLFxuICAgIHZpc2E6IGB0dWlJY29uVmlzYU1vbm9gLFxuICAgIGVsZWN0cm9uOiBgdHVpSWNvbkVsZWN0cm9uTW9ub2AsXG4gICAgbWFzdGVyY2FyZDogYHR1aUljb25NYXN0ZXJjYXJkYCxcbiAgICBtYWVzdHJvOiBgdHVpSWNvbk1hZXN0cm9gLFxuICAgIGFtZXg6IGB0dWlJY29uQW1leGAsXG4gICAgZGluZXJzY2x1YjogYHR1aUljb25EaW5lcnNDbHViYCxcbiAgICBkaXNjb3ZlcjogYHR1aUljb25EaXNjb3ZlcmAsXG4gICAgaHVtbzogYHR1aUljb25IdW1vYCxcbiAgICBqY2I6IGB0dWlJY29uSkNCYCxcbiAgICBydXBheTogYHR1aUljb25SdVBheWAsXG4gICAgdW5pb25wYXk6IGB0dWlJY29uVW5pb25QYXlgLFxuICAgIHV6Y2FyZDogYHR1aUljb25VemNhcmRgLFxuICAgIHZlcnZlOiBgdHVpSWNvblZlcnZlYCxcbn07XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1zeXN0ZW0taWNvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy9wYXltZW50LXN5c3RlbS1pY29ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBcUM7SUFDdEUsR0FBRyxFQUFFLFlBQVk7SUFDakIsSUFBSSxFQUFFLGlCQUFpQjtJQUN2QixRQUFRLEVBQUUscUJBQXFCO0lBQy9CLFVBQVUsRUFBRSxtQkFBbUI7SUFDL0IsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixJQUFJLEVBQUUsYUFBYTtJQUNuQixVQUFVLEVBQUUsbUJBQW1CO0lBQy9CLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsSUFBSSxFQUFFLGFBQWE7SUFDbkIsR0FBRyxFQUFFLFlBQVk7SUFDakIsS0FBSyxFQUFFLGNBQWM7SUFDckIsUUFBUSxFQUFFLGlCQUFpQjtJQUMzQixNQUFNLEVBQUUsZUFBZTtJQUN2QixLQUFLLEVBQUUsY0FBYztDQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUdWlQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuXG4vLyBUT0RPOiBNYWtlIGl0IGEgdG9rZW4gaW4gNC4wLCB0aGluayBhYm91dCBtb25vIGljb25zIGZvciBjYXJkIGNvbXBvbmVudFxuZXhwb3J0IGNvbnN0IFRVSV9QQVlNRU5UX1NZU1RFTV9JQ09OUzogUmVjb3JkPFR1aVBheW1lbnRTeXN0ZW0sIHN0cmluZz4gPSB7XG4gICAgbWlyOiBgdHVpSWNvbk1pcmAsXG4gICAgdmlzYTogYHR1aUljb25WaXNhTW9ub2AsXG4gICAgZWxlY3Ryb246IGB0dWlJY29uRWxlY3Ryb25Nb25vYCxcbiAgICBtYXN0ZXJjYXJkOiBgdHVpSWNvbk1hc3RlcmNhcmRgLFxuICAgIG1hZXN0cm86IGB0dWlJY29uTWFlc3Ryb2AsXG4gICAgYW1leDogYHR1aUljb25BbWV4YCxcbiAgICBkaW5lcnNjbHViOiBgdHVpSWNvbkRpbmVyc0NsdWJgLFxuICAgIGRpc2NvdmVyOiBgdHVpSWNvbkRpc2NvdmVyYCxcbiAgICBodW1vOiBgdHVpSWNvbkh1bW9gLFxuICAgIGpjYjogYHR1aUljb25KQ0JgLFxuICAgIHJ1cGF5OiBgdHVpSWNvblJ1UGF5YCxcbiAgICB1bmlvbnBheTogYHR1aUljb25VbmlvblBheWAsXG4gICAgdXpjYXJkOiBgdHVpSWNvblV6Y2FyZGAsXG4gICAgdmVydmU6IGB0dWlJY29uVmVydmVgLFxufTtcbiJdfQ==
@@ -1,5 +1,2 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
1
  export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tY29tbWVyY2UtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy90YWlnYS11aS1hZGRvbi1jb21tZXJjZS11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tY29tbWVyY2UtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS91dGlscy90YWlnYS11aS1hZGRvbi1jb21tZXJjZS11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -1,5 +1,2 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
1
  export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tY29tbWVyY2UtdmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL3ZhbGlkYXRvcnMvdGFpZ2EtdWktYWRkb24tY29tbWVyY2UtdmFsaWRhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tY29tbWVyY2UtdmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL3ZhbGlkYXRvcnMvdGFpZ2EtdWktYWRkb24tY29tbWVyY2UtdmFsaWRhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -31,9 +31,6 @@ function tuiInputCardGroupedOptionsProvider(options) {
31
31
  return tuiProvideOptions(TUI_INPUT_CARD_GROUPED_OPTIONS, options, TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS);
32
32
  }
33
33
 
34
- /**
35
- * InputCardGrouped texts
36
- */
37
34
  const TUI_INPUT_CARD_GROUPED_TEXTS = tuiCreateTokenFromFactory(() => {
38
35
  const win = inject(WINDOW);
39
36
  const cardNumberTexts = inject(TUI_CARD_NUMBER_TEXTS);
@@ -53,7 +50,7 @@ const TUI_INPUT_CARD_GROUPED_TEXTS = tuiCreateTokenFromFactory(() => {
53
50
  })));
54
51
  });
55
52
 
56
- const EXPIRE_COMPLETE_LENGTH = 5; // MM/YY
53
+ const EXPIRE_COMPLETE_LENGTH = 5;
57
54
  class TuiInputCardGroupedComponent extends AbstractTuiInputCard {
58
55
  constructor(control, cdr, el, mode$, cardGroupedTexts$, controller, icons, arrowOptions, options) {
59
56
  super(control, cdr, options);
@@ -142,7 +139,6 @@ class TuiInputCardGroupedComponent extends AbstractTuiInputCard {
142
139
  get tailLength() {
143
140
  return this.hasExtraSpace ? 5 : 4;
144
141
  }
145
- // Safari expiration date autofill workaround
146
142
  get name() {
147
143
  return this.autocompleteEnabled ? 'ccexpiryyear' : null;
148
144
  }
@@ -243,7 +239,6 @@ class TuiInputCardGroupedComponent extends AbstractTuiInputCard {
243
239
  this.updateBin(bin);
244
240
  this.expireInert = !!this.expire && this.cardPrefilled;
245
241
  }
246
- /** Public API for manual focus management */
247
242
  focusCard() {
248
243
  var _a;
249
244
  (_a = this.cardNumberAutofocusRef) === null || _a === void 0 ? void 0 : _a.focus();
@@ -449,9 +444,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
449
444
  }]
450
445
  }] });
451
446
 
452
- /**
453
- * Generated bundle index. Do not edit.
454
- */
455
-
456
447
  export { TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS, TUI_INPUT_CARD_GROUPED_OPTIONS, TUI_INPUT_CARD_GROUPED_TEXTS, TuiInputCardGroupedComponent, TuiInputCardGroupedModule, tuiInputCardGroupedOptionsProvider };
457
448
  //# sourceMappingURL=taiga-ui-addon-commerce-components-input-card-grouped.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-components-input-card-grouped.js","sources":["../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.options.ts","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.providers.ts","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.component.ts","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.template.html","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.module.ts","../../../projects/addon-commerce/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.ts"],"sourcesContent":["import {Provider} from '@angular/core';\nimport {\n TUI_INPUT_CARD_DEFAULT_OPTIONS,\n TuiInputCardOptions,\n} from '@taiga-ui/addon-commerce/components/input-card';\nimport {tuiDefaultCardValidator} from '@taiga-ui/addon-commerce/constants';\nimport {TuiBooleanHandler, tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk';\n\nexport interface TuiInputCardGroupedOptions extends TuiInputCardOptions {\n readonly cardValidator: TuiBooleanHandler<string>;\n readonly exampleText: string;\n readonly exampleTextCVC: string;\n}\n\nexport const TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS: TuiInputCardGroupedOptions = {\n ...TUI_INPUT_CARD_DEFAULT_OPTIONS,\n cardValidator: tuiDefaultCardValidator,\n exampleText: `0000 0000 0000 0000`,\n exampleTextCVC: `000`,\n};\n\nexport const TUI_INPUT_CARD_GROUPED_OPTIONS = tuiCreateToken(\n TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS,\n);\n\nexport function tuiInputCardGroupedOptionsProvider(\n options: Partial<TuiInputCardGroupedOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_CARD_GROUPED_OPTIONS,\n options,\n TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS,\n );\n}\n","import {inject} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n TUI_CARD_CVC_TEXTS,\n TUI_CARD_EXPIRY_TEXTS,\n TUI_CARD_NUMBER_TEXTS,\n} from '@taiga-ui/addon-commerce/tokens';\nimport {tuiCreateTokenFromFactory, tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {TUI_MEDIA} from '@taiga-ui/core';\nimport {combineLatest, Observable, of} from 'rxjs';\nimport {map, startWith, switchMap} from 'rxjs/operators';\n\nexport interface TuiCardGroupedTexts {\n readonly cardNumberText: string;\n readonly cvcText: string;\n readonly expiryText: string;\n}\n\n/**\n * InputCardGrouped texts\n */\nexport const TUI_INPUT_CARD_GROUPED_TEXTS = tuiCreateTokenFromFactory<\n Observable<TuiCardGroupedTexts>\n>(() => {\n const win = inject(WINDOW);\n const cardNumberTexts = inject(TUI_CARD_NUMBER_TEXTS);\n const expiryTexts = inject(TUI_CARD_EXPIRY_TEXTS);\n const cvcTexts = inject(TUI_CARD_CVC_TEXTS);\n const {desktopSmall} = inject(TUI_MEDIA);\n\n const media = win.matchMedia(`screen and (min-width: ${(desktopSmall - 1) / 16}em)`);\n\n return tuiTypedFromEvent(media, `change`).pipe(\n startWith(null),\n switchMap(() =>\n combineLatest([\n of(Number(media.matches)),\n cardNumberTexts,\n expiryTexts,\n cvcTexts,\n ]),\n ),\n map(([index, cardNumber, expiry, cvcTexts]) => ({\n cardNumberText: cardNumber[index],\n expiryText: expiry[index],\n cvcText: cvcTexts[index],\n })),\n );\n});\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {MaskitoOptions} from '@maskito/core';\nimport {maskitoDateOptionsGenerator} from '@maskito/kit';\nimport {AbstractTuiInputCard} from '@taiga-ui/addon-commerce/components/input-card';\nimport {TUI_CARD_MASK} from '@taiga-ui/addon-commerce/constants';\nimport {TuiCard} from '@taiga-ui/addon-commerce/interfaces';\nimport {TuiCodeCVCLength} from '@taiga-ui/addon-commerce/types';\nimport {\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiAutofillFieldName,\n TuiAutoFocusDirective,\n TuiFocusableElementAccessor,\n tuiIsElement,\n tuiIsInput,\n tuiIsNativeFocused,\n tuiIsNativeFocusedIn,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_COMMON_ICONS,\n TUI_DIGIT_REGEXP,\n TUI_MODE,\n TUI_NON_DIGIT_REGEXP,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n tuiAsDataListHost,\n TuiBrightness,\n TuiCommonIcons,\n TuiDataListComponent,\n TuiDataListDirective,\n TuiDataListHost,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {TUI_ARROW_OPTIONS, TuiArrowOptions} from '@taiga-ui/kit';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {\n TUI_INPUT_CARD_GROUPED_OPTIONS,\n TuiInputCardGroupedOptions,\n} from './input-card-grouped.options';\nimport {\n TUI_INPUT_CARD_GROUPED_TEXTS,\n TuiCardGroupedTexts,\n} from './input-card-grouped.providers';\n\nconst EXPIRE_COMPLETE_LENGTH = 5; // MM/YY\n\n@Component({\n selector: 'tui-input-card-grouped',\n templateUrl: './input-card-grouped.template.html',\n styleUrls: ['./input-card-grouped.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputCardGroupedComponent),\n tuiAsControl(TuiInputCardGroupedComponent),\n tuiAsDataListHost(TuiInputCardGroupedComponent),\n MODE_PROVIDER,\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '($.data-mode.attr)': 'mode$',\n 'data-size': 'l',\n },\n})\nexport class TuiInputCardGroupedComponent\n extends AbstractTuiInputCard<TuiCard, TuiInputCardGroupedOptions>\n implements TuiFocusableElementAccessor, TuiDataListHost<Partial<TuiCard>>\n{\n @ViewChild('inputCard')\n private readonly inputCard?: ElementRef<HTMLInputElement>;\n\n @ViewChild('inputCard', {read: TuiAutoFocusDirective})\n private readonly cardNumberAutofocusRef?: TuiAutoFocusDirective;\n\n @ViewChild('inputExpire')\n private readonly inputExpire?: ElementRef<HTMLInputElement>;\n\n @ViewChild('inputExpire', {read: TuiAutoFocusDirective})\n private readonly expireCardAutofocusRef?: TuiAutoFocusDirective;\n\n @ViewChild('inputCVC')\n private readonly inputCVC?: ElementRef<HTMLInputElement>;\n\n @ViewChild('inputCVC', {read: TuiAutoFocusDirective})\n private readonly cvcCardAutofocusRef?: TuiAutoFocusDirective;\n\n private expireInert = false;\n\n @Input()\n exampleText = this.options.exampleText;\n\n @Input()\n cardValidator = this.options.cardValidator;\n\n @Input()\n set codeLength(length: TuiCodeCVCLength) {\n this.exampleTextCVC = '0'.repeat(length);\n this.maskCVC = {\n mask: new Array(length).fill(TUI_DIGIT_REGEXP),\n };\n }\n\n @Output()\n readonly autofilledChange = new EventEmitter<boolean>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly dropdown: PolymorpheusContent;\n\n @ContentChild(TuiDataListComponent)\n readonly datalist?: TuiDataListComponent<TuiCard>;\n\n exampleTextCVC = this.options.exampleTextCVC;\n\n maskCVC: MaskitoOptions = {\n mask: new Array(3).fill(TUI_DIGIT_REGEXP),\n };\n\n readonly maskCard: MaskitoOptions = {\n mask: TUI_CARD_MASK,\n };\n\n readonly maskExpire: MaskitoOptions = maskitoDateOptionsGenerator({\n mode: 'mm/yy',\n separator: '/',\n });\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_INPUT_CARD_GROUPED_TEXTS)\n readonly cardGroupedTexts$: Observable<TuiCardGroupedTexts>,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n @Inject(TUI_COMMON_ICONS) readonly icons: TuiCommonIcons,\n @Inject(TUI_ARROW_OPTIONS) readonly arrowOptions: TuiArrowOptions,\n @Inject(TUI_INPUT_CARD_GROUPED_OPTIONS) options: TuiInputCardGroupedOptions,\n ) {\n super(control, cdr, options);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.inputCard ? this.inputCard.nativeElement : null;\n }\n\n get focused(): boolean {\n return this.open || tuiIsNativeFocusedIn(this.el.nativeElement);\n }\n\n get appearance(): string {\n return this.controller.appearance;\n }\n\n get card(): string {\n return this.value?.card || '';\n }\n\n get expire(): string {\n return this.value?.expire || '';\n }\n\n get cvc(): string {\n return this.value?.cvc || '';\n }\n\n get hasCleaner(): boolean {\n return !!this.value?.card?.trim() && !this.readOnly && !this.computedDisabled;\n }\n\n get hasDropdown(): boolean {\n return !!this.dropdown;\n }\n\n get placeholderRaised(): boolean {\n return (this.computedFocused && !this.readOnly) || this.hasCardNumber;\n }\n\n get hasCardNumber(): boolean {\n return !!this.value?.card?.trim();\n }\n\n get idCard(): string {\n return `${this.id}_card`;\n }\n\n get idExpire(): string {\n return `${this.id}_expire`;\n }\n\n get idCVC(): string {\n return `${this.id}_cvc`;\n }\n\n get isCardCollapsed(): boolean {\n return this.isFocusable(this.card) && !this.cardFocused;\n }\n\n get autocompleteExpire(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? 'cc-exp' : 'off';\n }\n\n get autocompleteCVC(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? 'cc-csc' : 'off';\n }\n\n get tailLength(): number {\n return this.hasExtraSpace ? 5 : 4;\n }\n\n // Safari expiration date autofill workaround\n get name(): 'ccexpiryyear' | null {\n return this.autocompleteEnabled ? 'ccexpiryyear' : null;\n }\n\n get cardPrefilled(): boolean {\n return !!this.card.match(TUI_NON_DIGIT_REGEXP);\n }\n\n get cvcPrefilled(): boolean {\n return !!this.cvc.match(TUI_NON_DIGIT_REGEXP);\n }\n\n get cardFocusable(): boolean {\n return this.focusable && !this.cardPrefilled;\n }\n\n get expireFocusable(): boolean {\n return this.isFocusable(this.card) && !this.expireInert;\n }\n\n get cvcFocusable(): boolean {\n return this.isFocusable(this.card);\n }\n\n get masked(): string {\n return this.cardPrefilled ? `*${this.card.slice(-4)}` : '*';\n }\n\n private get expireSelectionStart(): number {\n return this.inputExpire?.nativeElement.selectionStart || 0;\n }\n\n @HostListener('keydown.esc')\n onEsc(): void {\n this.open = false;\n }\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n onArrow(element: HTMLElement, step: number): void {\n this.open = this.hasDropdown;\n this.cdr.detectChanges();\n this.datalist?.onKeyDownArrow(element, step);\n }\n\n handleOption(option: Partial<TuiCard>): void {\n const {card = '', expire = '', cvc = ''} = option;\n const {bin} = this;\n const element =\n (!expire && this.inputExpire?.nativeElement) || this.inputCVC?.nativeElement;\n\n this.value = {card, expire, cvc};\n this.updateBin(bin);\n this.open = false;\n this.expireInert = !!expire;\n\n element?.focus();\n }\n\n onCardChange(card: string): void {\n const {value, bin} = this;\n const parsed = card.split(' ').join('');\n\n if (value && value.card === parsed) {\n return;\n }\n\n this.updateProperty(parsed, 'card');\n this.updateBin(bin);\n\n if (this.cardValidator(this.card) && !this.expire && this.inputExpire) {\n this.focusExpire();\n }\n }\n\n onExpireChange(expire: string): void {\n this.updateProperty(expire, 'expire');\n\n if (\n expire.length === EXPIRE_COMPLETE_LENGTH &&\n this.expireSelectionStart >= EXPIRE_COMPLETE_LENGTH\n ) {\n this.focusCVC();\n }\n }\n\n onCVCChange(cvc: string): void {\n this.updateProperty(cvc, 'cvc');\n }\n\n transform({offsetWidth}: HTMLSpanElement): string {\n return this.isCardCollapsed ? `translate3d(${offsetWidth}px, 0, 0)` : '';\n }\n\n onActiveZoneChange(active: boolean): void {\n this.updateFocused(active);\n this.open = active && this.open;\n }\n\n onMouseDown(event: MouseEvent): void {\n if (tuiIsElement(event.target) && tuiIsInput(event.target)) {\n return;\n }\n\n event.preventDefault();\n this.focusInput();\n }\n\n onScroll({currentTarget}: Event): void {\n if (tuiIsElement(currentTarget)) {\n currentTarget.scrollLeft = 0;\n }\n }\n\n clear(): void {\n this.expireInert = false;\n this.value = null;\n this.focusCard();\n }\n\n toggle(): void {\n this.open = !this.open;\n }\n\n override writeValue(value: TuiCard | null): void {\n const {bin} = this;\n\n super.writeValue(value);\n this.updateBin(bin);\n this.expireInert = !!this.expire && this.cardPrefilled;\n }\n\n /** Public API for manual focus management */\n focusCard(): void {\n this.cardNumberAutofocusRef?.focus();\n }\n\n focusExpire(): void {\n this.expireCardAutofocusRef?.focus();\n }\n\n focusCVC(): void {\n this.cvcCardAutofocusRef?.focus();\n }\n\n private get cardFocused(): boolean {\n return !!this.inputCard && tuiIsNativeFocused(this.inputCard.nativeElement);\n }\n\n private get hasExtraSpace(): boolean {\n return this.card.length % 4 > 0;\n }\n\n @tuiPure\n private isFocusable(card: string): boolean {\n return this.focusable && (this.cardValidator(card) || this.cardPrefilled);\n }\n\n private updateBin(oldBin: string | null): void {\n const {bin} = this;\n\n if (bin !== oldBin && !this.cardPrefilled) {\n this.binChange.emit(bin);\n }\n }\n\n private updateProperty(value: string, propName: 'card' | 'cvc' | 'expire'): void {\n const {card = '', expire = '', cvc = ''} = this.value || {};\n const newValue: TuiCard = {card, expire, cvc};\n\n newValue[propName] = value;\n\n this.value = newValue.expire || newValue.cvc || newValue.card ? newValue : null;\n }\n\n private focusInput(): void {\n const element =\n (this.cardFocusable && this.inputCard?.nativeElement) ||\n (this.expireFocusable && this.inputExpire?.nativeElement) ||\n this.inputCVC?.nativeElement;\n\n element?.focus();\n }\n}\n","<div\n *ngIf=\"cardGroupedTexts$ | async as texts\"\n tuiDropdownLimitWidth=\"fixed\"\n tuiWrapper\n class=\"t-common-wrapper\"\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n [tuiDropdown]=\"dropdown || ''\"\n [tuiDropdownManual]=\"open\"\n (mousedown)=\"onMouseDown($event)\"\n (scroll)=\"onScroll($event)\"\n (tuiActiveZoneChange)=\"onActiveZoneChange($event)\"\n>\n <div class=\"t-wrapper\">\n <label\n *tuiLet=\"value?.card | tuiFormatCard: cardPrefilled as formattedCard\"\n tuiPreventDefault=\"click\"\n >\n <input\n #inputCard\n automation-id=\"tui-input-card-grouped__card\"\n inputmode=\"numeric\"\n translate=\"no\"\n type=\"text\"\n class=\"t-input t-input_card\"\n [attr.aria-invalid]=\"!cardPrefilled && !(this.card | tuiMapper: cardValidator)\"\n [attr.id]=\"idCard\"\n [autocomplete]=\"autocompleteCard\"\n [class.t-input_hidden]=\"!card.length && focused\"\n [class.t-input_inert]=\"cardPrefilled\"\n [disabled]=\"computedDisabled\"\n [maskito]=\"maskCard\"\n [ngModel]=\"formattedCard\"\n [placeholder]=\"cardPrefilled ? '' : exampleText\"\n [readOnly]=\"readOnly\"\n [tuiAutoFocus]=\"false\"\n [tuiFocusable]=\"cardFocusable\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onCardChange($event)\"\n />\n <span\n aria-hidden=\"true\"\n translate=\"no\"\n class=\"t-collapsed\"\n [attr.data-before]=\"masked\"\n [class.t-collapsed_enable-mask]=\"isCardCollapsed\"\n (tuiResize)=\"(0)\"\n >\n <span\n #ghost\n class=\"t-ghost\"\n [textContent]=\"formattedCard.slice(-tailLength)\"\n ></span>\n\n <span class=\"t-collapsed-wrapper\">\n <span\n class=\"t-value\"\n [style.transform]=\"transform(ghost)\"\n >\n {{ formattedCard }}\n </span>\n </span>\n </span>\n <span\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n {{ texts.cardNumberText }}\n </span>\n </label>\n </div>\n <div\n class=\"t-wrapper t-wrapper_expire\"\n [class.t-wrapper_active]=\"isCardCollapsed\"\n >\n <label tuiPreventDefault=\"click\">\n <input\n #inputExpire\n automation-id=\"tui-input-card-grouped__expire\"\n inputmode=\"numeric\"\n placeholder=\"00/00\"\n translate=\"no\"\n class=\"t-input\"\n [attr.id]=\"idExpire\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocompleteExpire\"\n [class.t-input_inert]=\"!expireFocusable\"\n [disabled]=\"computedDisabled\"\n [maskito]=\"maskExpire\"\n [ngModel]=\"expire\"\n [readOnly]=\"readOnly\"\n [tuiAutoFocus]=\"false\"\n [tuiFocusable]=\"expireFocusable\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onExpireChange($event)\"\n />\n <span\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n {{ texts.expiryText }}\n </span>\n </label>\n </div>\n <div\n class=\"t-wrapper t-wrapper_cvc\"\n [class.t-wrapper_active]=\"isCardCollapsed\"\n >\n <label tuiPreventDefault=\"click\">\n <input\n #inputCVC\n automation-id=\"tui-input-card-grouped__cvc\"\n inputmode=\"numeric\"\n translate=\"no\"\n type=\"text\"\n class=\"t-input\"\n [attr.id]=\"idCVC\"\n [autocomplete]=\"autocompleteCVC\"\n [class.t-input_prefilled]=\"cvcPrefilled\"\n [disabled]=\"computedDisabled\"\n [maskito]=\"maskCVC\"\n [ngModel]=\"cvc\"\n [placeholder]=\"cvcPrefilled ? '•••' : exampleTextCVC\"\n [readOnly]=\"readOnly || cvcPrefilled\"\n [tuiAutoFocus]=\"false\"\n [tuiFocusable]=\"cvcFocusable\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onCVCChange($event)\"\n />\n <span\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n {{ texts.cvcText }}\n </span>\n </label>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"icon\"\n class=\"t-icon-outlet\"\n >\n <tui-svg\n *polymorpheusOutlet=\"icon as text\"\n automation-id=\"tui-input-card-grouped__icon\"\n class=\"t-card\"\n [src]=\"text\"\n ></tui-svg>\n </div>\n <tui-svg\n *ngIf=\"hasCleaner\"\n appearance=\"icon\"\n automation-id=\"tui-input-card-grouped__cleaner\"\n tuiWrapper\n class=\"t-icon\"\n [src]=\"icons.close\"\n (click)=\"clear()\"\n ></tui-svg>\n <tui-svg\n *ngIf=\"hasDropdown\"\n appearance=\"icon\"\n automation-id=\"tui-input-card-grouped__dropdown\"\n tuiWrapper\n class=\"t-icon\"\n [class.t-icon_rotated]=\"open\"\n [src]=\"arrowOptions.iconLarge\"\n (click)=\"toggle()\"\n ></tui-svg>\n </div>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {MaskitoModule} from '@maskito/angular';\nimport {TuiFormatCardModule} from '@taiga-ui/addon-commerce/pipes';\nimport {\n TuiActiveZoneModule,\n TuiAutoFocusModule,\n TuiFocusableModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiPreventDefaultModule,\n TuiResizeModule,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownModule, TuiSvgModule, TuiWrapperModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputCardGroupedComponent} from './input-card-grouped.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MaskitoModule,\n TuiFocusableModule,\n TuiSvgModule,\n TuiWrapperModule,\n TuiActiveZoneModule,\n TuiMapperPipeModule,\n TuiDropdownModule,\n TuiPreventDefaultModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiResizeModule,\n TuiFormatCardModule,\n TuiAutoFocusModule,\n ],\n declarations: [TuiInputCardGroupedComponent],\n exports: [TuiInputCardGroupedComponent],\n})\nexport class TuiInputCardGroupedModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-components-input-card-grouped.js","sources":["../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.options.ts","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.providers.ts","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.component.ts","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.template.html","../../../projects/addon-commerce/components/input-card-grouped/input-card-grouped.module.ts"],"sourcesContent":["import {Provider} from '@angular/core';\nimport {\n TUI_INPUT_CARD_DEFAULT_OPTIONS,\n TuiInputCardOptions,\n} from '@taiga-ui/addon-commerce/components/input-card';\nimport {tuiDefaultCardValidator} from '@taiga-ui/addon-commerce/constants';\nimport {TuiBooleanHandler, tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk';\n\nexport interface TuiInputCardGroupedOptions extends TuiInputCardOptions {\n readonly cardValidator: TuiBooleanHandler<string>;\n readonly exampleText: string;\n readonly exampleTextCVC: string;\n}\n\nexport const TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS: TuiInputCardGroupedOptions = {\n ...TUI_INPUT_CARD_DEFAULT_OPTIONS,\n cardValidator: tuiDefaultCardValidator,\n exampleText: `0000 0000 0000 0000`,\n exampleTextCVC: `000`,\n};\n\nexport const TUI_INPUT_CARD_GROUPED_OPTIONS = tuiCreateToken(\n TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS,\n);\n\nexport function tuiInputCardGroupedOptionsProvider(\n options: Partial<TuiInputCardGroupedOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_CARD_GROUPED_OPTIONS,\n options,\n TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS,\n );\n}\n","import {inject} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {\n TUI_CARD_CVC_TEXTS,\n TUI_CARD_EXPIRY_TEXTS,\n TUI_CARD_NUMBER_TEXTS,\n} from '@taiga-ui/addon-commerce/tokens';\nimport {tuiCreateTokenFromFactory, tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {TUI_MEDIA} from '@taiga-ui/core';\nimport {combineLatest, Observable, of} from 'rxjs';\nimport {map, startWith, switchMap} from 'rxjs/operators';\n\nexport interface TuiCardGroupedTexts {\n readonly cardNumberText: string;\n readonly cvcText: string;\n readonly expiryText: string;\n}\n\n/**\n * InputCardGrouped texts\n */\nexport const TUI_INPUT_CARD_GROUPED_TEXTS = tuiCreateTokenFromFactory<\n Observable<TuiCardGroupedTexts>\n>(() => {\n const win = inject(WINDOW);\n const cardNumberTexts = inject(TUI_CARD_NUMBER_TEXTS);\n const expiryTexts = inject(TUI_CARD_EXPIRY_TEXTS);\n const cvcTexts = inject(TUI_CARD_CVC_TEXTS);\n const {desktopSmall} = inject(TUI_MEDIA);\n\n const media = win.matchMedia(`screen and (min-width: ${(desktopSmall - 1) / 16}em)`);\n\n return tuiTypedFromEvent(media, `change`).pipe(\n startWith(null),\n switchMap(() =>\n combineLatest([\n of(Number(media.matches)),\n cardNumberTexts,\n expiryTexts,\n cvcTexts,\n ]),\n ),\n map(([index, cardNumber, expiry, cvcTexts]) => ({\n cardNumberText: cardNumber[index],\n expiryText: expiry[index],\n cvcText: cvcTexts[index],\n })),\n );\n});\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {MaskitoOptions} from '@maskito/core';\nimport {maskitoDateOptionsGenerator} from '@maskito/kit';\nimport {AbstractTuiInputCard} from '@taiga-ui/addon-commerce/components/input-card';\nimport {TUI_CARD_MASK} from '@taiga-ui/addon-commerce/constants';\nimport {TuiCard} from '@taiga-ui/addon-commerce/interfaces';\nimport {TuiCodeCVCLength} from '@taiga-ui/addon-commerce/types';\nimport {\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiAutofillFieldName,\n TuiAutoFocusDirective,\n TuiFocusableElementAccessor,\n tuiIsElement,\n tuiIsInput,\n tuiIsNativeFocused,\n tuiIsNativeFocusedIn,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_COMMON_ICONS,\n TUI_DIGIT_REGEXP,\n TUI_MODE,\n TUI_NON_DIGIT_REGEXP,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n tuiAsDataListHost,\n TuiBrightness,\n TuiCommonIcons,\n TuiDataListComponent,\n TuiDataListDirective,\n TuiDataListHost,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {TUI_ARROW_OPTIONS, TuiArrowOptions} from '@taiga-ui/kit';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {\n TUI_INPUT_CARD_GROUPED_OPTIONS,\n TuiInputCardGroupedOptions,\n} from './input-card-grouped.options';\nimport {\n TUI_INPUT_CARD_GROUPED_TEXTS,\n TuiCardGroupedTexts,\n} from './input-card-grouped.providers';\n\nconst EXPIRE_COMPLETE_LENGTH = 5; // MM/YY\n\n@Component({\n selector: 'tui-input-card-grouped',\n templateUrl: './input-card-grouped.template.html',\n styleUrls: ['./input-card-grouped.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputCardGroupedComponent),\n tuiAsControl(TuiInputCardGroupedComponent),\n tuiAsDataListHost(TuiInputCardGroupedComponent),\n MODE_PROVIDER,\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '($.data-mode.attr)': 'mode$',\n 'data-size': 'l',\n },\n})\nexport class TuiInputCardGroupedComponent\n extends AbstractTuiInputCard<TuiCard, TuiInputCardGroupedOptions>\n implements TuiFocusableElementAccessor, TuiDataListHost<Partial<TuiCard>>\n{\n @ViewChild('inputCard')\n private readonly inputCard?: ElementRef<HTMLInputElement>;\n\n @ViewChild('inputCard', {read: TuiAutoFocusDirective})\n private readonly cardNumberAutofocusRef?: TuiAutoFocusDirective;\n\n @ViewChild('inputExpire')\n private readonly inputExpire?: ElementRef<HTMLInputElement>;\n\n @ViewChild('inputExpire', {read: TuiAutoFocusDirective})\n private readonly expireCardAutofocusRef?: TuiAutoFocusDirective;\n\n @ViewChild('inputCVC')\n private readonly inputCVC?: ElementRef<HTMLInputElement>;\n\n @ViewChild('inputCVC', {read: TuiAutoFocusDirective})\n private readonly cvcCardAutofocusRef?: TuiAutoFocusDirective;\n\n private expireInert = false;\n\n @Input()\n exampleText = this.options.exampleText;\n\n @Input()\n cardValidator = this.options.cardValidator;\n\n @Input()\n set codeLength(length: TuiCodeCVCLength) {\n this.exampleTextCVC = '0'.repeat(length);\n this.maskCVC = {\n mask: new Array(length).fill(TUI_DIGIT_REGEXP),\n };\n }\n\n @Output()\n readonly autofilledChange = new EventEmitter<boolean>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly dropdown: PolymorpheusContent;\n\n @ContentChild(TuiDataListComponent)\n readonly datalist?: TuiDataListComponent<TuiCard>;\n\n exampleTextCVC = this.options.exampleTextCVC;\n\n maskCVC: MaskitoOptions = {\n mask: new Array(3).fill(TUI_DIGIT_REGEXP),\n };\n\n readonly maskCard: MaskitoOptions = {\n mask: TUI_CARD_MASK,\n };\n\n readonly maskExpire: MaskitoOptions = maskitoDateOptionsGenerator({\n mode: 'mm/yy',\n separator: '/',\n });\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_INPUT_CARD_GROUPED_TEXTS)\n readonly cardGroupedTexts$: Observable<TuiCardGroupedTexts>,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n @Inject(TUI_COMMON_ICONS) readonly icons: TuiCommonIcons,\n @Inject(TUI_ARROW_OPTIONS) readonly arrowOptions: TuiArrowOptions,\n @Inject(TUI_INPUT_CARD_GROUPED_OPTIONS) options: TuiInputCardGroupedOptions,\n ) {\n super(control, cdr, options);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.inputCard ? this.inputCard.nativeElement : null;\n }\n\n get focused(): boolean {\n return this.open || tuiIsNativeFocusedIn(this.el.nativeElement);\n }\n\n get appearance(): string {\n return this.controller.appearance;\n }\n\n get card(): string {\n return this.value?.card || '';\n }\n\n get expire(): string {\n return this.value?.expire || '';\n }\n\n get cvc(): string {\n return this.value?.cvc || '';\n }\n\n get hasCleaner(): boolean {\n return !!this.value?.card?.trim() && !this.readOnly && !this.computedDisabled;\n }\n\n get hasDropdown(): boolean {\n return !!this.dropdown;\n }\n\n get placeholderRaised(): boolean {\n return (this.computedFocused && !this.readOnly) || this.hasCardNumber;\n }\n\n get hasCardNumber(): boolean {\n return !!this.value?.card?.trim();\n }\n\n get idCard(): string {\n return `${this.id}_card`;\n }\n\n get idExpire(): string {\n return `${this.id}_expire`;\n }\n\n get idCVC(): string {\n return `${this.id}_cvc`;\n }\n\n get isCardCollapsed(): boolean {\n return this.isFocusable(this.card) && !this.cardFocused;\n }\n\n get autocompleteExpire(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? 'cc-exp' : 'off';\n }\n\n get autocompleteCVC(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? 'cc-csc' : 'off';\n }\n\n get tailLength(): number {\n return this.hasExtraSpace ? 5 : 4;\n }\n\n // Safari expiration date autofill workaround\n get name(): 'ccexpiryyear' | null {\n return this.autocompleteEnabled ? 'ccexpiryyear' : null;\n }\n\n get cardPrefilled(): boolean {\n return !!this.card.match(TUI_NON_DIGIT_REGEXP);\n }\n\n get cvcPrefilled(): boolean {\n return !!this.cvc.match(TUI_NON_DIGIT_REGEXP);\n }\n\n get cardFocusable(): boolean {\n return this.focusable && !this.cardPrefilled;\n }\n\n get expireFocusable(): boolean {\n return this.isFocusable(this.card) && !this.expireInert;\n }\n\n get cvcFocusable(): boolean {\n return this.isFocusable(this.card);\n }\n\n get masked(): string {\n return this.cardPrefilled ? `*${this.card.slice(-4)}` : '*';\n }\n\n private get expireSelectionStart(): number {\n return this.inputExpire?.nativeElement.selectionStart || 0;\n }\n\n @HostListener('keydown.esc')\n onEsc(): void {\n this.open = false;\n }\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n onArrow(element: HTMLElement, step: number): void {\n this.open = this.hasDropdown;\n this.cdr.detectChanges();\n this.datalist?.onKeyDownArrow(element, step);\n }\n\n handleOption(option: Partial<TuiCard>): void {\n const {card = '', expire = '', cvc = ''} = option;\n const {bin} = this;\n const element =\n (!expire && this.inputExpire?.nativeElement) || this.inputCVC?.nativeElement;\n\n this.value = {card, expire, cvc};\n this.updateBin(bin);\n this.open = false;\n this.expireInert = !!expire;\n\n element?.focus();\n }\n\n onCardChange(card: string): void {\n const {value, bin} = this;\n const parsed = card.split(' ').join('');\n\n if (value && value.card === parsed) {\n return;\n }\n\n this.updateProperty(parsed, 'card');\n this.updateBin(bin);\n\n if (this.cardValidator(this.card) && !this.expire && this.inputExpire) {\n this.focusExpire();\n }\n }\n\n onExpireChange(expire: string): void {\n this.updateProperty(expire, 'expire');\n\n if (\n expire.length === EXPIRE_COMPLETE_LENGTH &&\n this.expireSelectionStart >= EXPIRE_COMPLETE_LENGTH\n ) {\n this.focusCVC();\n }\n }\n\n onCVCChange(cvc: string): void {\n this.updateProperty(cvc, 'cvc');\n }\n\n transform({offsetWidth}: HTMLSpanElement): string {\n return this.isCardCollapsed ? `translate3d(${offsetWidth}px, 0, 0)` : '';\n }\n\n onActiveZoneChange(active: boolean): void {\n this.updateFocused(active);\n this.open = active && this.open;\n }\n\n onMouseDown(event: MouseEvent): void {\n if (tuiIsElement(event.target) && tuiIsInput(event.target)) {\n return;\n }\n\n event.preventDefault();\n this.focusInput();\n }\n\n onScroll({currentTarget}: Event): void {\n if (tuiIsElement(currentTarget)) {\n currentTarget.scrollLeft = 0;\n }\n }\n\n clear(): void {\n this.expireInert = false;\n this.value = null;\n this.focusCard();\n }\n\n toggle(): void {\n this.open = !this.open;\n }\n\n override writeValue(value: TuiCard | null): void {\n const {bin} = this;\n\n super.writeValue(value);\n this.updateBin(bin);\n this.expireInert = !!this.expire && this.cardPrefilled;\n }\n\n /** Public API for manual focus management */\n focusCard(): void {\n this.cardNumberAutofocusRef?.focus();\n }\n\n focusExpire(): void {\n this.expireCardAutofocusRef?.focus();\n }\n\n focusCVC(): void {\n this.cvcCardAutofocusRef?.focus();\n }\n\n private get cardFocused(): boolean {\n return !!this.inputCard && tuiIsNativeFocused(this.inputCard.nativeElement);\n }\n\n private get hasExtraSpace(): boolean {\n return this.card.length % 4 > 0;\n }\n\n @tuiPure\n private isFocusable(card: string): boolean {\n return this.focusable && (this.cardValidator(card) || this.cardPrefilled);\n }\n\n private updateBin(oldBin: string | null): void {\n const {bin} = this;\n\n if (bin !== oldBin && !this.cardPrefilled) {\n this.binChange.emit(bin);\n }\n }\n\n private updateProperty(value: string, propName: 'card' | 'cvc' | 'expire'): void {\n const {card = '', expire = '', cvc = ''} = this.value || {};\n const newValue: TuiCard = {card, expire, cvc};\n\n newValue[propName] = value;\n\n this.value = newValue.expire || newValue.cvc || newValue.card ? newValue : null;\n }\n\n private focusInput(): void {\n const element =\n (this.cardFocusable && this.inputCard?.nativeElement) ||\n (this.expireFocusable && this.inputExpire?.nativeElement) ||\n this.inputCVC?.nativeElement;\n\n element?.focus();\n }\n}\n","<div\n *ngIf=\"cardGroupedTexts$ | async as texts\"\n tuiDropdownLimitWidth=\"fixed\"\n tuiWrapper\n class=\"t-common-wrapper\"\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n [tuiDropdown]=\"dropdown || ''\"\n [tuiDropdownManual]=\"open\"\n (mousedown)=\"onMouseDown($event)\"\n (scroll)=\"onScroll($event)\"\n (tuiActiveZoneChange)=\"onActiveZoneChange($event)\"\n>\n <div class=\"t-wrapper\">\n <label\n *tuiLet=\"value?.card | tuiFormatCard: cardPrefilled as formattedCard\"\n tuiPreventDefault=\"click\"\n >\n <input\n #inputCard\n automation-id=\"tui-input-card-grouped__card\"\n inputmode=\"numeric\"\n translate=\"no\"\n type=\"text\"\n class=\"t-input t-input_card\"\n [attr.aria-invalid]=\"!cardPrefilled && !(this.card | tuiMapper: cardValidator)\"\n [attr.id]=\"idCard\"\n [autocomplete]=\"autocompleteCard\"\n [class.t-input_hidden]=\"!card.length && focused\"\n [class.t-input_inert]=\"cardPrefilled\"\n [disabled]=\"computedDisabled\"\n [maskito]=\"maskCard\"\n [ngModel]=\"formattedCard\"\n [placeholder]=\"cardPrefilled ? '' : exampleText\"\n [readOnly]=\"readOnly\"\n [tuiAutoFocus]=\"false\"\n [tuiFocusable]=\"cardFocusable\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onCardChange($event)\"\n />\n <span\n aria-hidden=\"true\"\n translate=\"no\"\n class=\"t-collapsed\"\n [attr.data-before]=\"masked\"\n [class.t-collapsed_enable-mask]=\"isCardCollapsed\"\n (tuiResize)=\"(0)\"\n >\n <span\n #ghost\n class=\"t-ghost\"\n [textContent]=\"formattedCard.slice(-tailLength)\"\n ></span>\n\n <span class=\"t-collapsed-wrapper\">\n <span\n class=\"t-value\"\n [style.transform]=\"transform(ghost)\"\n >\n {{ formattedCard }}\n </span>\n </span>\n </span>\n <span\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n {{ texts.cardNumberText }}\n </span>\n </label>\n </div>\n <div\n class=\"t-wrapper t-wrapper_expire\"\n [class.t-wrapper_active]=\"isCardCollapsed\"\n >\n <label tuiPreventDefault=\"click\">\n <input\n #inputExpire\n automation-id=\"tui-input-card-grouped__expire\"\n inputmode=\"numeric\"\n placeholder=\"00/00\"\n translate=\"no\"\n class=\"t-input\"\n [attr.id]=\"idExpire\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocompleteExpire\"\n [class.t-input_inert]=\"!expireFocusable\"\n [disabled]=\"computedDisabled\"\n [maskito]=\"maskExpire\"\n [ngModel]=\"expire\"\n [readOnly]=\"readOnly\"\n [tuiAutoFocus]=\"false\"\n [tuiFocusable]=\"expireFocusable\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onExpireChange($event)\"\n />\n <span\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n {{ texts.expiryText }}\n </span>\n </label>\n </div>\n <div\n class=\"t-wrapper t-wrapper_cvc\"\n [class.t-wrapper_active]=\"isCardCollapsed\"\n >\n <label tuiPreventDefault=\"click\">\n <input\n #inputCVC\n automation-id=\"tui-input-card-grouped__cvc\"\n inputmode=\"numeric\"\n translate=\"no\"\n type=\"text\"\n class=\"t-input\"\n [attr.id]=\"idCVC\"\n [autocomplete]=\"autocompleteCVC\"\n [class.t-input_prefilled]=\"cvcPrefilled\"\n [disabled]=\"computedDisabled\"\n [maskito]=\"maskCVC\"\n [ngModel]=\"cvc\"\n [placeholder]=\"cvcPrefilled ? '•••' : exampleTextCVC\"\n [readOnly]=\"readOnly || cvcPrefilled\"\n [tuiAutoFocus]=\"false\"\n [tuiFocusable]=\"cvcFocusable\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onCVCChange($event)\"\n />\n <span\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n {{ texts.cvcText }}\n </span>\n </label>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"icon\"\n class=\"t-icon-outlet\"\n >\n <tui-svg\n *polymorpheusOutlet=\"icon as text\"\n automation-id=\"tui-input-card-grouped__icon\"\n class=\"t-card\"\n [src]=\"text\"\n ></tui-svg>\n </div>\n <tui-svg\n *ngIf=\"hasCleaner\"\n appearance=\"icon\"\n automation-id=\"tui-input-card-grouped__cleaner\"\n tuiWrapper\n class=\"t-icon\"\n [src]=\"icons.close\"\n (click)=\"clear()\"\n ></tui-svg>\n <tui-svg\n *ngIf=\"hasDropdown\"\n appearance=\"icon\"\n automation-id=\"tui-input-card-grouped__dropdown\"\n tuiWrapper\n class=\"t-icon\"\n [class.t-icon_rotated]=\"open\"\n [src]=\"arrowOptions.iconLarge\"\n (click)=\"toggle()\"\n ></tui-svg>\n </div>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {MaskitoModule} from '@maskito/angular';\nimport {TuiFormatCardModule} from '@taiga-ui/addon-commerce/pipes';\nimport {\n TuiActiveZoneModule,\n TuiAutoFocusModule,\n TuiFocusableModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiPreventDefaultModule,\n TuiResizeModule,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownModule, TuiSvgModule, TuiWrapperModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputCardGroupedComponent} from './input-card-grouped.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MaskitoModule,\n TuiFocusableModule,\n TuiSvgModule,\n TuiWrapperModule,\n TuiActiveZoneModule,\n TuiMapperPipeModule,\n TuiDropdownModule,\n TuiPreventDefaultModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiResizeModule,\n TuiFormatCardModule,\n TuiAutoFocusModule,\n ],\n declarations: [TuiInputCardGroupedComponent],\n exports: [TuiInputCardGroupedComponent],\n})\nexport class TuiInputCardGroupedModule {}\n"],"names":[],"mappings":"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"}
@@ -27,17 +27,12 @@ class AbstractTuiInputCard extends AbstractTuiNullableControl {
27
27
  get paymentSystem() {
28
28
  return this.getPaymentSystem(this.card);
29
29
  }
30
- /** @deprecated remove in 4.0 */
31
30
  get icon() {
32
31
  return this.cardSrc || this.defaultIcon;
33
32
  }
34
33
  get autocomplete() {
35
34
  return this.autocompleteEnabled ? `cc-number` : `off`;
36
35
  }
37
- /**
38
- * @deprecated: drop in v4.0
39
- * use {@link autocomplete}
40
- */
41
36
  get autocompleteCard() {
42
37
  return this.autocomplete;
43
38
  }
@@ -73,7 +68,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
73
68
  type: Output
74
69
  }], getPaymentSystem: [] } });
75
70
 
76
- // TODO: Move payment system icons into its own token in 4.0
77
71
  const TUI_INPUT_CARD_DEFAULT_OPTIONS = {
78
72
  icons: TUI_PAYMENT_SYSTEM_ICONS,
79
73
  cardSrc: ``,
@@ -225,9 +219,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
225
219
  }]
226
220
  }] });
227
221
 
228
- /**
229
- * Generated bundle index. Do not edit.
230
- */
231
-
232
222
  export { AbstractTuiInputCard, TUI_INPUT_CARD_DEFAULT_OPTIONS, TUI_INPUT_CARD_OPTIONS, TuiInputCardComponent, TuiInputCardDirective, TuiInputCardModule, tuiInputCardOptionsProvider };
233
223
  //# sourceMappingURL=taiga-ui-addon-commerce-components-input-card.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-components-input-card.js","sources":["../../../projects/addon-commerce/components/input-card/abstract-input-card.ts","../../../projects/addon-commerce/components/input-card/input-card.options.ts","../../../projects/addon-commerce/components/input-card/input-card.component.ts","../../../projects/addon-commerce/components/input-card/input-card.template.html","../../../projects/addon-commerce/components/input-card/input-card.directive.ts","../../../projects/addon-commerce/components/input-card/input-card.module.ts","../../../projects/addon-commerce/components/input-card/taiga-ui-addon-commerce-components-input-card.ts"],"sourcesContent":["import {\n ChangeDetectorRef,\n Directive,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\nimport {\n AbstractTuiNullableControl,\n TuiAutofillFieldName,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputCardOptions} from './input-card.options';\n\n@Directive()\nexport abstract class AbstractTuiInputCard<\n T,\n Options extends TuiInputCardOptions = TuiInputCardOptions,\n >\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor\n{\n @Input()\n cardSrc: PolymorpheusContent;\n\n @Input()\n autocompleteEnabled = this.options.autocompleteEnabled;\n\n @Output()\n readonly binChange = new EventEmitter<string | null>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n protected readonly options: Options,\n ) {\n super(control, cdr);\n }\n\n abstract get card(): string;\n\n abstract get nativeFocusableElement(): TuiNativeFocusableElement | null;\n\n get defaultIcon(): string | null {\n const paymentSystem = this.getPaymentSystem(this.card);\n\n return paymentSystem && this.options.icons[paymentSystem];\n }\n\n get paymentSystem(): TuiPaymentSystem | null {\n return this.getPaymentSystem(this.card);\n }\n\n /** @deprecated remove in 4.0 */\n get icon(): PolymorpheusContent {\n return this.cardSrc || this.defaultIcon;\n }\n\n get autocomplete(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? `cc-number` : `off`;\n }\n\n /**\n * @deprecated: drop in v4.0\n * use {@link autocomplete}\n */\n get autocompleteCard(): TuiAutofillFieldName {\n return this.autocomplete;\n }\n\n get bin(): string | null {\n return this.card.length < 6 ? null : this.card.slice(0, 6);\n }\n\n @tuiPure\n protected getPaymentSystem(cardNumber?: string | null): TuiPaymentSystem | null {\n return this.options.paymentSystemHandler(cardNumber);\n }\n}\n","import {Provider} from '@angular/core';\nimport {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\nimport {\n TUI_PAYMENT_SYSTEM_ICONS,\n tuiGetPaymentSystem,\n} from '@taiga-ui/addon-commerce/utils';\nimport {tuiCreateToken, TuiHandler, tuiProvideOptions} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputCardOptions {\n readonly autocompleteEnabled: boolean;\n cardSrc: PolymorpheusContent;\n readonly icons: Record<TuiPaymentSystem, string>;\n readonly paymentSystemHandler: TuiHandler<\n string | null | undefined,\n TuiPaymentSystem | null\n >;\n}\n\n// TODO: Move payment system icons into its own token in 4.0\nexport const TUI_INPUT_CARD_DEFAULT_OPTIONS: TuiInputCardOptions = {\n icons: TUI_PAYMENT_SYSTEM_ICONS,\n cardSrc: ``,\n paymentSystemHandler: tuiGetPaymentSystem,\n autocompleteEnabled: false,\n};\n\nexport const TUI_INPUT_CARD_OPTIONS = tuiCreateToken(TUI_INPUT_CARD_DEFAULT_OPTIONS);\n\nexport function tuiInputCardOptionsProvider(\n options: Partial<TuiInputCardOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_CARD_OPTIONS,\n options,\n TUI_INPUT_CARD_DEFAULT_OPTIONS,\n );\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {MaskitoOptions} from '@maskito/core';\nimport {TUI_CARD_MASK} from '@taiga-ui/addon-commerce/constants';\nimport {tuiAsControl, tuiAsFocusableItemAccessor} from '@taiga-ui/cdk';\nimport {\n TUI_TEXTFIELD_SIZE,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeS,\n TuiTextfieldSizeDirective,\n} from '@taiga-ui/core';\n\nimport {AbstractTuiInputCard} from './abstract-input-card';\nimport {TUI_INPUT_CARD_OPTIONS, TuiInputCardOptions} from './input-card.options';\n\n@Component({\n selector: 'tui-input-card',\n templateUrl: './input-card.template.html',\n styleUrls: ['./input-card.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputCardComponent),\n tuiAsControl(TuiInputCardComponent),\n ],\n})\nexport class TuiInputCardComponent extends AbstractTuiInputCard<string> {\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly input?: TuiPrimitiveTextfieldComponent;\n\n readonly maskOptions: MaskitoOptions = {\n mask: TUI_CARD_MASK,\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n @Inject(TUI_INPUT_CARD_OPTIONS) options: TuiInputCardOptions,\n ) {\n super(control, cdr, options);\n }\n\n @HostBinding('attr.data-size')\n get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n get card(): string {\n return this.value ?? '';\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.input ? this.input.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.input && this.input.focused;\n }\n\n onValueChange(value: string): void {\n const parsed = value.split(' ').join('');\n const currentBin = this.bin;\n\n this.value = parsed;\n\n const newBin = this.bin;\n\n if (currentBin !== newBin) {\n this.binChange.emit(newBin);\n }\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n override writeValue(value: string | null): void {\n const currentBin = this.bin;\n\n super.writeValue(value);\n\n const newBin = this.bin;\n\n if (currentBin !== newBin) {\n this.binChange.emit(newBin);\n }\n }\n\n protected override getFallbackValue(): string {\n return '';\n }\n}\n","<tui-primitive-textfield\n tuiValueAccessor\n class=\"t-input\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"maskOptions\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldCustomContent]=\"cardSrc || (defaultIcon && logo)\"\n [value]=\"card | maskito: maskOptions\"\n (focusedChange)=\"onFocused($event)\"\n (valueChange)=\"onValueChange($event)\"\n>\n <ng-content></ng-content>\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n ></ng-content>\n</tui-primitive-textfield>\n<ng-template #logo>\n <tui-svg\n class=\"t-payment-system\"\n [src]=\"defaultIcon\"\n ></tui-svg>\n</ng-template>\n","import {AfterViewInit, Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputCardComponent} from './input-card.component';\n\n@Directive({\n selector: 'tui-input-card',\n providers: [tuiAsTextfieldHost(TuiInputCardDirective)],\n})\nexport class TuiInputCardDirective\n extends AbstractTuiTextfieldHost<TuiInputCardComponent>\n implements AfterViewInit\n{\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n ngAfterViewInit(): void {\n const {nativeFocusableElement} = this.host;\n\n if (!nativeFocusableElement) {\n return;\n }\n\n nativeFocusableElement.inputMode = 'numeric';\n nativeFocusableElement.placeholder =\n nativeFocusableElement.placeholder || '0000 0000 0000 0000';\n }\n}\n","import {NgModule} from '@angular/core';\nimport {MaskitoModule} from '@maskito/angular';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit';\n\nimport {TuiInputCardComponent} from './input-card.component';\nimport {TuiInputCardDirective} from './input-card.directive';\n\n@NgModule({\n imports: [\n MaskitoModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n TuiSvgModule,\n ],\n declarations: [TuiInputCardComponent, TuiInputCardDirective],\n exports: [TuiInputCardComponent, TuiInputCardDirective, TuiTextfieldComponent],\n})\nexport class TuiInputCardModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-components-input-card.js","sources":["../../../projects/addon-commerce/components/input-card/abstract-input-card.ts","../../../projects/addon-commerce/components/input-card/input-card.options.ts","../../../projects/addon-commerce/components/input-card/input-card.component.ts","../../../projects/addon-commerce/components/input-card/input-card.template.html","../../../projects/addon-commerce/components/input-card/input-card.directive.ts","../../../projects/addon-commerce/components/input-card/input-card.module.ts"],"sourcesContent":["import {\n ChangeDetectorRef,\n Directive,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\nimport {\n AbstractTuiNullableControl,\n TuiAutofillFieldName,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputCardOptions} from './input-card.options';\n\n@Directive()\nexport abstract class AbstractTuiInputCard<\n T,\n Options extends TuiInputCardOptions = TuiInputCardOptions,\n >\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor\n{\n @Input()\n cardSrc: PolymorpheusContent;\n\n @Input()\n autocompleteEnabled = this.options.autocompleteEnabled;\n\n @Output()\n readonly binChange = new EventEmitter<string | null>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n protected readonly options: Options,\n ) {\n super(control, cdr);\n }\n\n abstract get card(): string;\n\n abstract get nativeFocusableElement(): TuiNativeFocusableElement | null;\n\n get defaultIcon(): string | null {\n const paymentSystem = this.getPaymentSystem(this.card);\n\n return paymentSystem && this.options.icons[paymentSystem];\n }\n\n get paymentSystem(): TuiPaymentSystem | null {\n return this.getPaymentSystem(this.card);\n }\n\n /** @deprecated remove in 4.0 */\n get icon(): PolymorpheusContent {\n return this.cardSrc || this.defaultIcon;\n }\n\n get autocomplete(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? `cc-number` : `off`;\n }\n\n /**\n * @deprecated: drop in v4.0\n * use {@link autocomplete}\n */\n get autocompleteCard(): TuiAutofillFieldName {\n return this.autocomplete;\n }\n\n get bin(): string | null {\n return this.card.length < 6 ? null : this.card.slice(0, 6);\n }\n\n @tuiPure\n protected getPaymentSystem(cardNumber?: string | null): TuiPaymentSystem | null {\n return this.options.paymentSystemHandler(cardNumber);\n }\n}\n","import {Provider} from '@angular/core';\nimport {TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\nimport {\n TUI_PAYMENT_SYSTEM_ICONS,\n tuiGetPaymentSystem,\n} from '@taiga-ui/addon-commerce/utils';\nimport {tuiCreateToken, TuiHandler, tuiProvideOptions} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputCardOptions {\n readonly autocompleteEnabled: boolean;\n cardSrc: PolymorpheusContent;\n readonly icons: Record<TuiPaymentSystem, string>;\n readonly paymentSystemHandler: TuiHandler<\n string | null | undefined,\n TuiPaymentSystem | null\n >;\n}\n\n// TODO: Move payment system icons into its own token in 4.0\nexport const TUI_INPUT_CARD_DEFAULT_OPTIONS: TuiInputCardOptions = {\n icons: TUI_PAYMENT_SYSTEM_ICONS,\n cardSrc: ``,\n paymentSystemHandler: tuiGetPaymentSystem,\n autocompleteEnabled: false,\n};\n\nexport const TUI_INPUT_CARD_OPTIONS = tuiCreateToken(TUI_INPUT_CARD_DEFAULT_OPTIONS);\n\nexport function tuiInputCardOptionsProvider(\n options: Partial<TuiInputCardOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_CARD_OPTIONS,\n options,\n TUI_INPUT_CARD_DEFAULT_OPTIONS,\n );\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {MaskitoOptions} from '@maskito/core';\nimport {TUI_CARD_MASK} from '@taiga-ui/addon-commerce/constants';\nimport {tuiAsControl, tuiAsFocusableItemAccessor} from '@taiga-ui/cdk';\nimport {\n TUI_TEXTFIELD_SIZE,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeS,\n TuiTextfieldSizeDirective,\n} from '@taiga-ui/core';\n\nimport {AbstractTuiInputCard} from './abstract-input-card';\nimport {TUI_INPUT_CARD_OPTIONS, TuiInputCardOptions} from './input-card.options';\n\n@Component({\n selector: 'tui-input-card',\n templateUrl: './input-card.template.html',\n styleUrls: ['./input-card.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputCardComponent),\n tuiAsControl(TuiInputCardComponent),\n ],\n})\nexport class TuiInputCardComponent extends AbstractTuiInputCard<string> {\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly input?: TuiPrimitiveTextfieldComponent;\n\n readonly maskOptions: MaskitoOptions = {\n mask: TUI_CARD_MASK,\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n @Inject(TUI_INPUT_CARD_OPTIONS) options: TuiInputCardOptions,\n ) {\n super(control, cdr, options);\n }\n\n @HostBinding('attr.data-size')\n get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n get card(): string {\n return this.value ?? '';\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.input ? this.input.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.input && this.input.focused;\n }\n\n onValueChange(value: string): void {\n const parsed = value.split(' ').join('');\n const currentBin = this.bin;\n\n this.value = parsed;\n\n const newBin = this.bin;\n\n if (currentBin !== newBin) {\n this.binChange.emit(newBin);\n }\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n override writeValue(value: string | null): void {\n const currentBin = this.bin;\n\n super.writeValue(value);\n\n const newBin = this.bin;\n\n if (currentBin !== newBin) {\n this.binChange.emit(newBin);\n }\n }\n\n protected override getFallbackValue(): string {\n return '';\n }\n}\n","<tui-primitive-textfield\n tuiValueAccessor\n class=\"t-input\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"maskOptions\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldCustomContent]=\"cardSrc || (defaultIcon && logo)\"\n [value]=\"card | maskito: maskOptions\"\n (focusedChange)=\"onFocused($event)\"\n (valueChange)=\"onValueChange($event)\"\n>\n <ng-content></ng-content>\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n ></ng-content>\n</tui-primitive-textfield>\n<ng-template #logo>\n <tui-svg\n class=\"t-payment-system\"\n [src]=\"defaultIcon\"\n ></tui-svg>\n</ng-template>\n","import {AfterViewInit, Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputCardComponent} from './input-card.component';\n\n@Directive({\n selector: 'tui-input-card',\n providers: [tuiAsTextfieldHost(TuiInputCardDirective)],\n})\nexport class TuiInputCardDirective\n extends AbstractTuiTextfieldHost<TuiInputCardComponent>\n implements AfterViewInit\n{\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n ngAfterViewInit(): void {\n const {nativeFocusableElement} = this.host;\n\n if (!nativeFocusableElement) {\n return;\n }\n\n nativeFocusableElement.inputMode = 'numeric';\n nativeFocusableElement.placeholder =\n nativeFocusableElement.placeholder || '0000 0000 0000 0000';\n }\n}\n","import {NgModule} from '@angular/core';\nimport {MaskitoModule} from '@maskito/angular';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit';\n\nimport {TuiInputCardComponent} from './input-card.component';\nimport {TuiInputCardDirective} from './input-card.directive';\n\n@NgModule({\n imports: [\n MaskitoModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n TuiSvgModule,\n ],\n declarations: [TuiInputCardComponent, TuiInputCardDirective],\n exports: [TuiInputCardComponent, TuiInputCardDirective, TuiTextfieldComponent],\n})\nexport class TuiInputCardModule {}\n"],"names":["i1"],"mappings":"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"}
@@ -45,7 +45,6 @@ class TuiInputCVCComponent extends AbstractTuiControl {
45
45
  onFocused(focused) {
46
46
  this.updateFocused(focused);
47
47
  }
48
- /** deprecated use 'value' setter */
49
48
  onValueChange(value) {
50
49
  this.value = value;
51
50
  }
@@ -125,9 +124,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
125
124
  }]
126
125
  }] });
127
126
 
128
- /**
129
- * Generated bundle index. Do not edit.
130
- */
131
-
132
127
  export { TuiInputCVCComponent, TuiInputCVCModule };
133
128
  //# sourceMappingURL=taiga-ui-addon-commerce-components-input-cvc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-components-input-cvc.js","sources":["../../../projects/addon-commerce/components/input-cvc/input-cvc.component.ts","../../../projects/addon-commerce/components/input-cvc/input-cvc.template.html","../../../projects/addon-commerce/components/input-cvc/input-cvc.module.ts","../../../projects/addon-commerce/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {MaskitoOptions} from '@maskito/core';\nimport {TuiCodeCVCLength} from '@taiga-ui/addon-commerce/types';\nimport {\n AbstractTuiControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiAutofillFieldName,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DIGIT_REGEXP,\n TUI_TEXTFIELD_LABEL_OUTSIDE,\n TUI_TEXTFIELD_SIZE,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeS,\n TuiTextfieldLabelOutsideDirective,\n TuiTextfieldSizeDirective,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'tui-input-cvc',\n templateUrl: './input-cvc.template.html',\n styleUrls: ['./input-cvc.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputCVCComponent),\n tuiAsControl(TuiInputCVCComponent),\n ],\n})\nexport class TuiInputCVCComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly input?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n autocompleteEnabled = false;\n\n @Input()\n set length(length: TuiCodeCVCLength) {\n this.exampleText = '0'.repeat(length);\n this.maskOptions = {\n mask: new Array(length).fill(TUI_DIGIT_REGEXP),\n };\n }\n\n exampleText = '000';\n\n maskOptions: MaskitoOptions = {\n mask: new Array(3).fill(TUI_DIGIT_REGEXP),\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_LABEL_OUTSIDE)\n private readonly textfieldLabelOutside: TuiTextfieldLabelOutsideDirective,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n ) {\n super(control, cdr);\n }\n\n @HostBinding('attr.data-size')\n get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input ? this.input.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.input && this.input.focused;\n }\n\n get autocomplete(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? 'cc-csc' : 'off';\n }\n\n get computedPlaceholder(): string {\n return this.textfieldLabelOutside.labelOutside ? '' : this.exampleText;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n /** deprecated use 'value' setter */\n onValueChange(value: string): void {\n this.value = value;\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n}\n","<tui-primitive-textfield\n tuiValueAccessor\n class=\"t-input\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"maskOptions\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [(value)]=\"value\"\n (copy.prevent)=\"(0)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <ng-content></ng-content>\n <input\n inputmode=\"numeric\"\n tuiTextfield\n [autocomplete]=\"autocomplete\"\n [placeholder]=\"computedPlaceholder\"\n />\n</tui-primitive-textfield>\n","import {NgModule} from '@angular/core';\nimport {MaskitoModule} from '@maskito/angular';\nimport {TuiPrimitiveTextfieldModule, TuiTextfieldControllerModule} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit';\n\nimport {TuiInputCVCComponent} from './input-cvc.component';\n\n@NgModule({\n imports: [\n MaskitoModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n ],\n declarations: [TuiInputCVCComponent],\n exports: [TuiInputCVCComponent],\n})\nexport class TuiInputCVCModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-components-input-cvc.js","sources":["../../../projects/addon-commerce/components/input-cvc/input-cvc.component.ts","../../../projects/addon-commerce/components/input-cvc/input-cvc.template.html","../../../projects/addon-commerce/components/input-cvc/input-cvc.module.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {MaskitoOptions} from '@maskito/core';\nimport {TuiCodeCVCLength} from '@taiga-ui/addon-commerce/types';\nimport {\n AbstractTuiControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiAutofillFieldName,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DIGIT_REGEXP,\n TUI_TEXTFIELD_LABEL_OUTSIDE,\n TUI_TEXTFIELD_SIZE,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeS,\n TuiTextfieldLabelOutsideDirective,\n TuiTextfieldSizeDirective,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'tui-input-cvc',\n templateUrl: './input-cvc.template.html',\n styleUrls: ['./input-cvc.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputCVCComponent),\n tuiAsControl(TuiInputCVCComponent),\n ],\n})\nexport class TuiInputCVCComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly input?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n autocompleteEnabled = false;\n\n @Input()\n set length(length: TuiCodeCVCLength) {\n this.exampleText = '0'.repeat(length);\n this.maskOptions = {\n mask: new Array(length).fill(TUI_DIGIT_REGEXP),\n };\n }\n\n exampleText = '000';\n\n maskOptions: MaskitoOptions = {\n mask: new Array(3).fill(TUI_DIGIT_REGEXP),\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_LABEL_OUTSIDE)\n private readonly textfieldLabelOutside: TuiTextfieldLabelOutsideDirective,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n ) {\n super(control, cdr);\n }\n\n @HostBinding('attr.data-size')\n get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input ? this.input.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.input && this.input.focused;\n }\n\n get autocomplete(): TuiAutofillFieldName {\n return this.autocompleteEnabled ? 'cc-csc' : 'off';\n }\n\n get computedPlaceholder(): string {\n return this.textfieldLabelOutside.labelOutside ? '' : this.exampleText;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n /** deprecated use 'value' setter */\n onValueChange(value: string): void {\n this.value = value;\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n}\n","<tui-primitive-textfield\n tuiValueAccessor\n class=\"t-input\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"maskOptions\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [(value)]=\"value\"\n (copy.prevent)=\"(0)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <ng-content></ng-content>\n <input\n inputmode=\"numeric\"\n tuiTextfield\n [autocomplete]=\"autocomplete\"\n [placeholder]=\"computedPlaceholder\"\n />\n</tui-primitive-textfield>\n","import {NgModule} from '@angular/core';\nimport {MaskitoModule} from '@maskito/angular';\nimport {TuiPrimitiveTextfieldModule, TuiTextfieldControllerModule} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit';\n\nimport {TuiInputCVCComponent} from './input-cvc.component';\n\n@NgModule({\n imports: [\n MaskitoModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n ],\n declarations: [TuiInputCVCComponent],\n exports: [TuiInputCVCComponent],\n})\nexport class TuiInputCVCModule {}\n"],"names":[],"mappings":"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"}
@@ -107,9 +107,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
107
107
  }]
108
108
  }] });
109
109
 
110
- /**
111
- * Generated bundle index. Do not edit.
112
- */
113
-
114
110
  export { TuiInputExpireComponent, TuiInputExpireModule };
115
111
  //# sourceMappingURL=taiga-ui-addon-commerce-components-input-expire.js.map