@taiga-ui/addon-commerce 3.57.0 → 3.59.0-canary.10da730

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 (261) hide show
  1. package/components/input-card/abstract-input-card.d.ts +1 -1
  2. package/components/input-card/input-card.component.d.ts +1 -1
  3. package/components/input-card/input-card.directive.d.ts +1 -1
  4. package/components/input-card-grouped/input-card-grouped.component.d.ts +1 -1
  5. package/components/input-cvc/input-cvc.component.d.ts +1 -1
  6. package/components/input-expire/input-expire.component.d.ts +1 -1
  7. package/components/money/money.component.d.ts +1 -1
  8. package/components/money/pipes/fraction-part.pipe.d.ts +1 -1
  9. package/components/money/pipes/integer-part.pipe.d.ts +1 -1
  10. package/components/money/pipes/sign-symbol.pipe.d.ts +1 -1
  11. package/components/thumbnail-card/deprecated.d.ts +1 -1
  12. package/components/thumbnail-card/thumbnail-card.component.d.ts +1 -1
  13. package/{esm2015/components/input-card/abstract-input-card.js → esm2020/components/input-card/abstract-input-card.mjs} +3 -3
  14. package/esm2020/components/input-card/input-card.component.mjs +91 -0
  15. package/{esm2015/components/input-card/input-card.directive.js → esm2020/components/input-card/input-card.directive.mjs} +3 -3
  16. package/{esm2015/components/input-card/input-card.module.js → esm2020/components/input-card/input-card.module.mjs} +9 -11
  17. package/esm2020/components/input-card-grouped/input-card-grouped.component.mjs +337 -0
  18. package/{esm2015/components/input-card-grouped/input-card-grouped.module.js → esm2020/components/input-card-grouped/input-card-grouped.module.mjs} +19 -21
  19. package/esm2020/components/input-card-grouped/input-card-grouped.options.mjs +14 -0
  20. package/esm2020/components/input-card-grouped/input-card-grouped.providers.mjs +28 -0
  21. package/esm2020/components/input-cvc/input-cvc.component.mjs +91 -0
  22. package/{esm2015/components/input-cvc/input-cvc.module.js → esm2020/components/input-cvc/input-cvc.module.mjs} +8 -10
  23. package/esm2020/components/input-expire/input-expire.component.mjs +73 -0
  24. package/{esm2015/components/input-expire/input-expire.module.js → esm2020/components/input-expire/input-expire.module.mjs} +8 -10
  25. package/esm2020/components/money/money.component.mjs +78 -0
  26. package/{esm2015/components/money/money.module.js → esm2020/components/money/money.module.mjs} +5 -5
  27. package/{esm2015/components/money/pipes/fraction-part.pipe.js → esm2020/components/money/pipes/fraction-part.pipe.mjs} +3 -3
  28. package/{esm2015/components/money/pipes/integer-part.pipe.js → esm2020/components/money/pipes/integer-part.pipe.mjs} +9 -5
  29. package/{esm2015/components/money/pipes/sign-symbol.pipe.js → esm2020/components/money/pipes/sign-symbol.pipe.mjs} +3 -3
  30. package/esm2020/components/money/utils/format-fraction-part.mjs +11 -0
  31. package/esm2020/components/thumbnail-card/deprecated.mjs +35 -0
  32. package/{esm2015/components/thumbnail-card/thumbnail-card.component.js → esm2020/components/thumbnail-card/thumbnail-card.component.mjs} +7 -12
  33. package/{esm2015/components/thumbnail-card/thumbnail-card.module.js → esm2020/components/thumbnail-card/thumbnail-card.module.mjs} +5 -5
  34. package/{esm2015/pipes/currency/currency.module.js → esm2020/pipes/currency/currency.module.mjs} +4 -4
  35. package/{esm2015/pipes/currency/currency.pipe.js → esm2020/pipes/currency/currency.pipe.mjs} +3 -3
  36. package/{esm2015/pipes/format-card/format-card.module.js → esm2020/pipes/format-card/format-card.module.mjs} +4 -4
  37. package/{esm2015/pipes/format-card/format-card.pipe.js → esm2020/pipes/format-card/format-card.pipe.mjs} +3 -3
  38. package/{esm2015/utils/get-code-by-currency.js → esm2020/utils/get-code-by-currency.mjs} +2 -3
  39. package/{esm2015/utils/get-currency-by-code.js → esm2020/utils/get-currency-by-code.mjs} +2 -3
  40. package/esm2020/utils/get-payment-system.mjs +105 -0
  41. package/esm2020/validators/card-expire.validator.mjs +8 -0
  42. package/esm2020/validators/card-number.validator.mjs +8 -0
  43. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.mjs +450 -0
  44. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.mjs.map +1 -0
  45. package/fesm2015/taiga-ui-addon-commerce-components-input-card.mjs +230 -0
  46. package/fesm2015/taiga-ui-addon-commerce-components-input-card.mjs.map +1 -0
  47. package/fesm2015/taiga-ui-addon-commerce-components-input-cvc.mjs +128 -0
  48. package/fesm2015/taiga-ui-addon-commerce-components-input-cvc.mjs.map +1 -0
  49. package/fesm2015/taiga-ui-addon-commerce-components-input-expire.mjs +110 -0
  50. package/fesm2015/taiga-ui-addon-commerce-components-input-expire.mjs.map +1 -0
  51. package/fesm2015/taiga-ui-addon-commerce-components-money.mjs +205 -0
  52. package/fesm2015/taiga-ui-addon-commerce-components-money.mjs.map +1 -0
  53. package/fesm2015/taiga-ui-addon-commerce-components-thumbnail-card.mjs +100 -0
  54. package/fesm2015/taiga-ui-addon-commerce-components-thumbnail-card.mjs.map +1 -0
  55. package/fesm2015/{taiga-ui-addon-commerce-components.js → taiga-ui-addon-commerce-components.mjs} +1 -1
  56. package/fesm2015/taiga-ui-addon-commerce-components.mjs.map +1 -0
  57. package/fesm2015/{taiga-ui-addon-commerce-constants.js → taiga-ui-addon-commerce-constants.mjs} +1 -1
  58. package/fesm2015/taiga-ui-addon-commerce-constants.mjs.map +1 -0
  59. package/fesm2015/{taiga-ui-addon-commerce-enums.js → taiga-ui-addon-commerce-enums.mjs} +1 -1
  60. package/fesm2015/taiga-ui-addon-commerce-enums.mjs.map +1 -0
  61. package/fesm2015/taiga-ui-addon-commerce-interfaces.mjs +4 -0
  62. package/fesm2015/taiga-ui-addon-commerce-interfaces.mjs.map +1 -0
  63. package/fesm2015/{taiga-ui-addon-commerce-pipes.js → taiga-ui-addon-commerce-pipes.mjs} +15 -15
  64. package/fesm2015/taiga-ui-addon-commerce-pipes.mjs.map +1 -0
  65. package/fesm2015/{taiga-ui-addon-commerce-tokens.js → taiga-ui-addon-commerce-tokens.mjs} +1 -1
  66. package/fesm2015/taiga-ui-addon-commerce-tokens.mjs.map +1 -0
  67. package/fesm2015/taiga-ui-addon-commerce-types.mjs +4 -0
  68. package/fesm2015/taiga-ui-addon-commerce-types.mjs.map +1 -0
  69. package/fesm2015/{taiga-ui-addon-commerce-utils.js → taiga-ui-addon-commerce-utils.mjs} +1 -2
  70. package/fesm2015/taiga-ui-addon-commerce-utils.mjs.map +1 -0
  71. package/fesm2015/{taiga-ui-addon-commerce-validators.js → taiga-ui-addon-commerce-validators.mjs} +1 -1
  72. package/fesm2015/taiga-ui-addon-commerce-validators.mjs.map +1 -0
  73. package/fesm2015/{taiga-ui-addon-commerce.js → taiga-ui-addon-commerce.mjs} +1 -1
  74. package/fesm2015/taiga-ui-addon-commerce.mjs.map +1 -0
  75. package/fesm2020/taiga-ui-addon-commerce-components-input-card-grouped.mjs +440 -0
  76. package/fesm2020/taiga-ui-addon-commerce-components-input-card-grouped.mjs.map +1 -0
  77. package/{fesm2015/taiga-ui-addon-commerce-components-input-card.js → fesm2020/taiga-ui-addon-commerce-components-input-card.mjs} +28 -38
  78. package/fesm2020/taiga-ui-addon-commerce-components-input-card.mjs.map +1 -0
  79. package/{fesm2015/taiga-ui-addon-commerce-components-input-cvc.js → fesm2020/taiga-ui-addon-commerce-components-input-cvc.mjs} +27 -36
  80. package/fesm2020/taiga-ui-addon-commerce-components-input-cvc.mjs.map +1 -0
  81. package/{fesm2015/taiga-ui-addon-commerce-components-input-expire.js → fesm2020/taiga-ui-addon-commerce-components-input-expire.mjs} +20 -29
  82. package/fesm2020/taiga-ui-addon-commerce-components-input-expire.mjs.map +1 -0
  83. package/{fesm2015/taiga-ui-addon-commerce-components-money.js → fesm2020/taiga-ui-addon-commerce-components-money.mjs} +67 -65
  84. package/fesm2020/taiga-ui-addon-commerce-components-money.mjs.map +1 -0
  85. package/{fesm2015/taiga-ui-addon-commerce-components-thumbnail-card.js → fesm2020/taiga-ui-addon-commerce-components-thumbnail-card.mjs} +19 -29
  86. package/fesm2020/taiga-ui-addon-commerce-components-thumbnail-card.mjs.map +1 -0
  87. package/fesm2020/taiga-ui-addon-commerce-components.mjs +11 -0
  88. package/fesm2020/taiga-ui-addon-commerce-components.mjs.map +1 -0
  89. package/fesm2020/taiga-ui-addon-commerce-constants.mjs +103 -0
  90. package/fesm2020/taiga-ui-addon-commerce-constants.mjs.map +1 -0
  91. package/fesm2020/taiga-ui-addon-commerce-enums.mjs +721 -0
  92. package/fesm2020/taiga-ui-addon-commerce-enums.mjs.map +1 -0
  93. package/fesm2020/taiga-ui-addon-commerce-interfaces.mjs +4 -0
  94. package/fesm2020/taiga-ui-addon-commerce-interfaces.mjs.map +1 -0
  95. package/fesm2020/taiga-ui-addon-commerce-pipes.mjs +67 -0
  96. package/fesm2020/taiga-ui-addon-commerce-pipes.mjs.map +1 -0
  97. package/fesm2020/taiga-ui-addon-commerce-tokens.mjs +23 -0
  98. package/fesm2020/taiga-ui-addon-commerce-tokens.mjs.map +1 -0
  99. package/fesm2020/taiga-ui-addon-commerce-types.mjs +4 -0
  100. package/fesm2020/taiga-ui-addon-commerce-types.mjs.map +1 -0
  101. package/fesm2020/taiga-ui-addon-commerce-utils.mjs +443 -0
  102. package/fesm2020/taiga-ui-addon-commerce-utils.mjs.map +1 -0
  103. package/fesm2020/taiga-ui-addon-commerce-validators.mjs +25 -0
  104. package/fesm2020/taiga-ui-addon-commerce-validators.mjs.map +1 -0
  105. package/fesm2020/taiga-ui-addon-commerce.mjs +14 -0
  106. package/fesm2020/taiga-ui-addon-commerce.mjs.map +1 -0
  107. package/package.json +172 -39
  108. package/pipes/currency/currency.pipe.d.ts +1 -1
  109. package/pipes/format-card/format-card.pipe.d.ts +1 -1
  110. package/types/code-length.d.ts +1 -1
  111. package/types/currency-variants.d.ts +2 -2
  112. package/types/money-sign.d.ts +2 -2
  113. package/types/payment-system.d.ts +1 -1
  114. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js +0 -917
  115. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js.map +0 -1
  116. package/bundles/taiga-ui-addon-commerce-components-input-card.umd.js +0 -635
  117. package/bundles/taiga-ui-addon-commerce-components-input-card.umd.js.map +0 -1
  118. package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.js +0 -507
  119. package/bundles/taiga-ui-addon-commerce-components-input-cvc.umd.js.map +0 -1
  120. package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.js +0 -480
  121. package/bundles/taiga-ui-addon-commerce-components-input-expire.umd.js.map +0 -1
  122. package/bundles/taiga-ui-addon-commerce-components-money.umd.js +0 -272
  123. package/bundles/taiga-ui-addon-commerce-components-money.umd.js.map +0 -1
  124. package/bundles/taiga-ui-addon-commerce-components-thumbnail-card.umd.js +0 -475
  125. package/bundles/taiga-ui-addon-commerce-components-thumbnail-card.umd.js.map +0 -1
  126. package/bundles/taiga-ui-addon-commerce-components.umd.js +0 -51
  127. package/bundles/taiga-ui-addon-commerce-components.umd.js.map +0 -1
  128. package/bundles/taiga-ui-addon-commerce-constants.umd.js +0 -114
  129. package/bundles/taiga-ui-addon-commerce-constants.umd.js.map +0 -1
  130. package/bundles/taiga-ui-addon-commerce-enums.umd.js +0 -729
  131. package/bundles/taiga-ui-addon-commerce-enums.umd.js.map +0 -1
  132. package/bundles/taiga-ui-addon-commerce-interfaces.umd.js +0 -11
  133. package/bundles/taiga-ui-addon-commerce-interfaces.umd.js.map +0 -1
  134. package/bundles/taiga-ui-addon-commerce-pipes.umd.js +0 -110
  135. package/bundles/taiga-ui-addon-commerce-pipes.umd.js.map +0 -1
  136. package/bundles/taiga-ui-addon-commerce-tokens.umd.js +0 -31
  137. package/bundles/taiga-ui-addon-commerce-tokens.umd.js.map +0 -1
  138. package/bundles/taiga-ui-addon-commerce-types.umd.js +0 -11
  139. package/bundles/taiga-ui-addon-commerce-types.umd.js.map +0 -1
  140. package/bundles/taiga-ui-addon-commerce-utils.umd.js +0 -794
  141. package/bundles/taiga-ui-addon-commerce-utils.umd.js.map +0 -1
  142. package/bundles/taiga-ui-addon-commerce-validators.umd.js +0 -40
  143. package/bundles/taiga-ui-addon-commerce-validators.umd.js.map +0 -1
  144. package/bundles/taiga-ui-addon-commerce.umd.js +0 -69
  145. package/bundles/taiga-ui-addon-commerce.umd.js.map +0 -1
  146. package/components/input-card/package.json +0 -10
  147. package/components/input-card/taiga-ui-addon-commerce-components-input-card.d.ts +0 -5
  148. package/components/input-card-grouped/package.json +0 -10
  149. package/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.d.ts +0 -5
  150. package/components/input-cvc/package.json +0 -10
  151. package/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.d.ts +0 -5
  152. package/components/input-expire/package.json +0 -10
  153. package/components/input-expire/taiga-ui-addon-commerce-components-input-expire.d.ts +0 -5
  154. package/components/money/package.json +0 -10
  155. package/components/money/taiga-ui-addon-commerce-components-money.d.ts +0 -5
  156. package/components/package.json +0 -10
  157. package/components/taiga-ui-addon-commerce-components.d.ts +0 -5
  158. package/components/thumbnail-card/package.json +0 -10
  159. package/components/thumbnail-card/taiga-ui-addon-commerce-components-thumbnail-card.d.ts +0 -5
  160. package/constants/package.json +0 -10
  161. package/constants/taiga-ui-addon-commerce-constants.d.ts +0 -5
  162. package/enums/package.json +0 -10
  163. package/enums/taiga-ui-addon-commerce-enums.d.ts +0 -5
  164. package/esm2015/components/input-card/input-card.component.js +0 -99
  165. package/esm2015/components/input-card-grouped/input-card-grouped.component.js +0 -357
  166. package/esm2015/components/input-card-grouped/input-card-grouped.options.js +0 -9
  167. package/esm2015/components/input-card-grouped/input-card-grouped.providers.js +0 -29
  168. package/esm2015/components/input-cvc/input-cvc.component.js +0 -98
  169. package/esm2015/components/input-expire/input-expire.component.js +0 -80
  170. package/esm2015/components/money/money.component.js +0 -83
  171. package/esm2015/components/money/utils/format-fraction-part.js +0 -8
  172. package/esm2015/components/thumbnail-card/deprecated.js +0 -40
  173. package/esm2015/utils/get-payment-system.js +0 -107
  174. package/esm2015/validators/card-expire.validator.js +0 -9
  175. package/esm2015/validators/card-number.validator.js +0 -8
  176. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js +0 -458
  177. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js.map +0 -1
  178. package/fesm2015/taiga-ui-addon-commerce-components-input-card.js.map +0 -1
  179. package/fesm2015/taiga-ui-addon-commerce-components-input-cvc.js.map +0 -1
  180. package/fesm2015/taiga-ui-addon-commerce-components-input-expire.js.map +0 -1
  181. package/fesm2015/taiga-ui-addon-commerce-components-money.js.map +0 -1
  182. package/fesm2015/taiga-ui-addon-commerce-components-thumbnail-card.js.map +0 -1
  183. package/fesm2015/taiga-ui-addon-commerce-components.js.map +0 -1
  184. package/fesm2015/taiga-ui-addon-commerce-constants.js.map +0 -1
  185. package/fesm2015/taiga-ui-addon-commerce-enums.js.map +0 -1
  186. package/fesm2015/taiga-ui-addon-commerce-interfaces.js +0 -4
  187. package/fesm2015/taiga-ui-addon-commerce-interfaces.js.map +0 -1
  188. package/fesm2015/taiga-ui-addon-commerce-pipes.js.map +0 -1
  189. package/fesm2015/taiga-ui-addon-commerce-tokens.js.map +0 -1
  190. package/fesm2015/taiga-ui-addon-commerce-types.js +0 -4
  191. package/fesm2015/taiga-ui-addon-commerce-types.js.map +0 -1
  192. package/fesm2015/taiga-ui-addon-commerce-utils.js.map +0 -1
  193. package/fesm2015/taiga-ui-addon-commerce-validators.js.map +0 -1
  194. package/fesm2015/taiga-ui-addon-commerce.js.map +0 -1
  195. package/interfaces/package.json +0 -10
  196. package/interfaces/taiga-ui-addon-commerce-interfaces.d.ts +0 -5
  197. package/pipes/package.json +0 -10
  198. package/pipes/taiga-ui-addon-commerce-pipes.d.ts +0 -5
  199. package/taiga-ui-addon-commerce.d.ts +0 -5
  200. package/tokens/package.json +0 -10
  201. package/tokens/taiga-ui-addon-commerce-tokens.d.ts +0 -5
  202. package/types/package.json +0 -10
  203. package/types/taiga-ui-addon-commerce-types.d.ts +0 -5
  204. package/utils/package.json +0 -10
  205. package/utils/taiga-ui-addon-commerce-utils.d.ts +0 -5
  206. package/validators/package.json +0 -10
  207. package/validators/taiga-ui-addon-commerce-validators.d.ts +0 -5
  208. /package/{esm2015/components/index.js → esm2020/components/index.mjs} +0 -0
  209. /package/{esm2015/components/input-card/index.js → esm2020/components/input-card/index.mjs} +0 -0
  210. /package/{esm2015/components/input-card/input-card.options.js → esm2020/components/input-card/input-card.options.mjs} +0 -0
  211. /package/{esm2015/components/input-card/taiga-ui-addon-commerce-components-input-card.js → esm2020/components/input-card/taiga-ui-addon-commerce-components-input-card.mjs} +0 -0
  212. /package/{esm2015/components/input-card-grouped/index.js → esm2020/components/input-card-grouped/index.mjs} +0 -0
  213. /package/{esm2015/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.js → esm2020/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.mjs} +0 -0
  214. /package/{esm2015/components/input-cvc/index.js → esm2020/components/input-cvc/index.mjs} +0 -0
  215. /package/{esm2015/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.js → esm2020/components/input-cvc/taiga-ui-addon-commerce-components-input-cvc.mjs} +0 -0
  216. /package/{esm2015/components/input-expire/index.js → esm2020/components/input-expire/index.mjs} +0 -0
  217. /package/{esm2015/components/input-expire/taiga-ui-addon-commerce-components-input-expire.js → esm2020/components/input-expire/taiga-ui-addon-commerce-components-input-expire.mjs} +0 -0
  218. /package/{esm2015/components/money/index.js → esm2020/components/money/index.mjs} +0 -0
  219. /package/{esm2015/components/money/money.options.js → esm2020/components/money/money.options.mjs} +0 -0
  220. /package/{esm2015/components/money/taiga-ui-addon-commerce-components-money.js → esm2020/components/money/taiga-ui-addon-commerce-components-money.mjs} +0 -0
  221. /package/{esm2015/components/money/utils/format-sign-symbol.js → esm2020/components/money/utils/format-sign-symbol.mjs} +0 -0
  222. /package/{esm2015/components/taiga-ui-addon-commerce-components.js → esm2020/components/taiga-ui-addon-commerce-components.mjs} +0 -0
  223. /package/{esm2015/components/thumbnail-card/index.js → esm2020/components/thumbnail-card/index.mjs} +0 -0
  224. /package/{esm2015/components/thumbnail-card/taiga-ui-addon-commerce-components-thumbnail-card.js → esm2020/components/thumbnail-card/taiga-ui-addon-commerce-components-thumbnail-card.mjs} +0 -0
  225. /package/{esm2015/constants/card-holder-mask.js → esm2020/constants/card-holder-mask.mjs} +0 -0
  226. /package/{esm2015/constants/card-mask.js → esm2020/constants/card-mask.mjs} +0 -0
  227. /package/{esm2015/constants/default-card-validator.js → esm2020/constants/default-card-validator.mjs} +0 -0
  228. /package/{esm2015/constants/index.js → esm2020/constants/index.mjs} +0 -0
  229. /package/{esm2015/constants/taiga-ui-addon-commerce-constants.js → esm2020/constants/taiga-ui-addon-commerce-constants.mjs} +0 -0
  230. /package/{esm2015/enums/currency-code.js → esm2020/enums/currency-code.mjs} +0 -0
  231. /package/{esm2015/enums/currency.js → esm2020/enums/currency.mjs} +0 -0
  232. /package/{esm2015/enums/index.js → esm2020/enums/index.mjs} +0 -0
  233. /package/{esm2015/enums/taiga-ui-addon-commerce-enums.js → esm2020/enums/taiga-ui-addon-commerce-enums.mjs} +0 -0
  234. /package/{esm2015/index.js → esm2020/index.mjs} +0 -0
  235. /package/{esm2015/interfaces/card.js → esm2020/interfaces/card.mjs} +0 -0
  236. /package/{esm2015/interfaces/index.js → esm2020/interfaces/index.mjs} +0 -0
  237. /package/{esm2015/interfaces/taiga-ui-addon-commerce-interfaces.js → esm2020/interfaces/taiga-ui-addon-commerce-interfaces.mjs} +0 -0
  238. /package/{esm2015/pipes/index.js → esm2020/pipes/index.mjs} +0 -0
  239. /package/{esm2015/pipes/taiga-ui-addon-commerce-pipes.js → esm2020/pipes/taiga-ui-addon-commerce-pipes.mjs} +0 -0
  240. /package/{esm2015/taiga-ui-addon-commerce.js → esm2020/taiga-ui-addon-commerce.mjs} +0 -0
  241. /package/{esm2015/tokens/i18n.js → esm2020/tokens/i18n.mjs} +0 -0
  242. /package/{esm2015/tokens/index.js → esm2020/tokens/index.mjs} +0 -0
  243. /package/{esm2015/tokens/taiga-ui-addon-commerce-tokens.js → esm2020/tokens/taiga-ui-addon-commerce-tokens.mjs} +0 -0
  244. /package/{esm2015/types/code-length.js → esm2020/types/code-length.mjs} +0 -0
  245. /package/{esm2015/types/currency-variants.js → esm2020/types/currency-variants.mjs} +0 -0
  246. /package/{esm2015/types/index.js → esm2020/types/index.mjs} +0 -0
  247. /package/{esm2015/types/money-sign.js → esm2020/types/money-sign.mjs} +0 -0
  248. /package/{esm2015/types/payment-system.js → esm2020/types/payment-system.mjs} +0 -0
  249. /package/{esm2015/types/taiga-ui-addon-commerce-types.js → esm2020/types/taiga-ui-addon-commerce-types.mjs} +0 -0
  250. /package/{esm2015/utils/create-auto-corrected-expire-pipe.js → esm2020/utils/create-auto-corrected-expire-pipe.mjs} +0 -0
  251. /package/{esm2015/utils/format-currency.js → esm2020/utils/format-currency.mjs} +0 -0
  252. /package/{esm2015/utils/get-currency-symbol.js → esm2020/utils/get-currency-symbol.mjs} +0 -0
  253. /package/{esm2015/utils/index.js → esm2020/utils/index.mjs} +0 -0
  254. /package/{esm2015/utils/is-card-length-valid.js → esm2020/utils/is-card-length-valid.mjs} +0 -0
  255. /package/{esm2015/utils/is-card-number-valid.js → esm2020/utils/is-card-number-valid.mjs} +0 -0
  256. /package/{esm2015/utils/is-expire-valid.js → esm2020/utils/is-expire-valid.mjs} +0 -0
  257. /package/{esm2015/utils/payment-system-icons.js → esm2020/utils/payment-system-icons.mjs} +0 -0
  258. /package/{esm2015/utils/taiga-ui-addon-commerce-utils.js → esm2020/utils/taiga-ui-addon-commerce-utils.mjs} +0 -0
  259. /package/{esm2015/validators/index.js → esm2020/validators/index.mjs} +0 -0
  260. /package/{esm2015/validators/luhn.validator.js → esm2020/validators/luhn.validator.mjs} +0 -0
  261. /package/{esm2015/validators/taiga-ui-addon-commerce-validators.js → esm2020/validators/taiga-ui-addon-commerce-validators.mjs} +0 -0
@@ -0,0 +1,337 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ElementRef, EventEmitter, HostListener, Inject, Input, Optional, Output, Self, TemplateRef, ViewChild, } from '@angular/core';
3
+ import { NgControl } from '@angular/forms';
4
+ import { maskitoDateOptionsGenerator } from '@maskito/kit';
5
+ import { AbstractTuiInputCard } from '@taiga-ui/addon-commerce/components/input-card';
6
+ import { TUI_CARD_MASK } from '@taiga-ui/addon-commerce/constants';
7
+ import { tuiAsControl, tuiAsFocusableItemAccessor, TuiAutoFocusDirective, tuiIsElement, tuiIsInput, tuiIsNativeFocused, tuiIsNativeFocusedIn, tuiPure, } from '@taiga-ui/cdk';
8
+ import { MODE_PROVIDER, TEXTFIELD_CONTROLLER_PROVIDER, TUI_COMMON_ICONS, TUI_DIGIT_REGEXP, TUI_MODE, TUI_NON_DIGIT_REGEXP, TUI_TEXTFIELD_WATCHED_CONTROLLER, tuiAsDataListHost, TuiDataListComponent, TuiDataListDirective, } from '@taiga-ui/core';
9
+ import { TUI_ARROW_OPTIONS } from '@taiga-ui/kit';
10
+ import { TUI_INPUT_CARD_GROUPED_OPTIONS, } from './input-card-grouped.options';
11
+ import { TUI_INPUT_CARD_GROUPED_TEXTS, } from './input-card-grouped.providers';
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@angular/common";
14
+ import * as i2 from "@angular/forms";
15
+ import * as i3 from "@maskito/angular";
16
+ import * as i4 from "@taiga-ui/cdk";
17
+ import * as i5 from "@taiga-ui/core";
18
+ import * as i6 from "@tinkoff/ng-polymorpheus";
19
+ import * as i7 from "@taiga-ui/addon-commerce/pipes";
20
+ import * as i8 from "rxjs";
21
+ const EXPIRE_COMPLETE_LENGTH = 5; // MM/YY
22
+ export class TuiInputCardGroupedComponent extends AbstractTuiInputCard {
23
+ set codeLength(length) {
24
+ this.exampleTextCVC = '0'.repeat(length);
25
+ this.maskCVC = {
26
+ mask: new Array(length).fill(TUI_DIGIT_REGEXP),
27
+ };
28
+ }
29
+ constructor(control, cdr, el, mode$, cardGroupedTexts$, controller, icons, arrowOptions, options) {
30
+ super(control, cdr, options);
31
+ this.el = el;
32
+ this.mode$ = mode$;
33
+ this.cardGroupedTexts$ = cardGroupedTexts$;
34
+ this.controller = controller;
35
+ this.icons = icons;
36
+ this.arrowOptions = arrowOptions;
37
+ this.expireInert = false;
38
+ this.exampleText = this.options.exampleText;
39
+ this.cardValidator = this.options.cardValidator;
40
+ this.autofilledChange = new EventEmitter();
41
+ this.exampleTextCVC = this.options.exampleTextCVC;
42
+ this.maskCVC = {
43
+ mask: new Array(3).fill(TUI_DIGIT_REGEXP),
44
+ };
45
+ this.maskCard = {
46
+ mask: TUI_CARD_MASK,
47
+ };
48
+ this.maskExpire = maskitoDateOptionsGenerator({
49
+ mode: 'mm/yy',
50
+ separator: '/',
51
+ });
52
+ this.open = false;
53
+ }
54
+ get nativeFocusableElement() {
55
+ return this.inputCard?.nativeElement ?? null;
56
+ }
57
+ get focused() {
58
+ return this.open || tuiIsNativeFocusedIn(this.el.nativeElement);
59
+ }
60
+ get appearance() {
61
+ return this.controller.appearance;
62
+ }
63
+ get card() {
64
+ return this.value?.card || '';
65
+ }
66
+ get expire() {
67
+ return this.value?.expire || '';
68
+ }
69
+ get cvc() {
70
+ return this.value?.cvc || '';
71
+ }
72
+ get hasCleaner() {
73
+ return !!this.value?.card?.trim() && !this.readOnly && !this.computedDisabled;
74
+ }
75
+ get hasDropdown() {
76
+ return !!this.dropdown;
77
+ }
78
+ get placeholderRaised() {
79
+ return (this.computedFocused && !this.readOnly) || this.hasCardNumber;
80
+ }
81
+ get hasCardNumber() {
82
+ return !!this.value?.card?.trim();
83
+ }
84
+ get idCard() {
85
+ return `${this.id}_card`;
86
+ }
87
+ get idExpire() {
88
+ return `${this.id}_expire`;
89
+ }
90
+ get idCVC() {
91
+ return `${this.id}_cvc`;
92
+ }
93
+ get isCardCollapsed() {
94
+ return this.isFocusable(this.card) && !this.cardFocused;
95
+ }
96
+ get autocompleteExpire() {
97
+ return this.autocompleteEnabled ? 'cc-exp' : 'off';
98
+ }
99
+ get autocompleteCVC() {
100
+ return this.autocompleteEnabled ? 'cc-csc' : 'off';
101
+ }
102
+ get tailLength() {
103
+ return this.hasExtraSpace ? 5 : 4;
104
+ }
105
+ // Safari expiration date autofill workaround
106
+ get name() {
107
+ return this.autocompleteEnabled ? 'ccexpiryyear' : null;
108
+ }
109
+ get cardPrefilled() {
110
+ return !!this.card.match(TUI_NON_DIGIT_REGEXP);
111
+ }
112
+ get cvcPrefilled() {
113
+ return !!this.cvc.match(TUI_NON_DIGIT_REGEXP);
114
+ }
115
+ get cardFocusable() {
116
+ return this.focusable && !this.cardPrefilled;
117
+ }
118
+ get expireFocusable() {
119
+ return this.isFocusable(this.card) && !this.expireInert;
120
+ }
121
+ get cvcFocusable() {
122
+ return this.isFocusable(this.card);
123
+ }
124
+ get masked() {
125
+ return this.cardPrefilled ? `*${this.card.slice(-4)}` : '*';
126
+ }
127
+ get expireSelectionStart() {
128
+ return this.inputExpire?.nativeElement.selectionStart || 0;
129
+ }
130
+ onEsc() {
131
+ this.open = false;
132
+ }
133
+ onArrow(element, step) {
134
+ this.open = this.hasDropdown;
135
+ this.cdr.detectChanges();
136
+ this.datalist?.onKeyDownArrow(element, step);
137
+ }
138
+ handleOption(option) {
139
+ const { card = '', expire = '', cvc = '' } = option;
140
+ const { bin } = this;
141
+ const element = (!expire && this.inputExpire?.nativeElement) || this.inputCVC?.nativeElement;
142
+ this.value = { card, expire, cvc };
143
+ this.updateBin(bin);
144
+ this.open = false;
145
+ this.expireInert = !!expire;
146
+ element?.focus();
147
+ }
148
+ onCardChange(card) {
149
+ const { value, bin } = this;
150
+ const parsed = card.split(' ').join('');
151
+ if (value && value.card === parsed) {
152
+ return;
153
+ }
154
+ this.updateProperty(parsed, 'card');
155
+ this.updateBin(bin);
156
+ if (this.cardValidator(this.card) && !this.expire && this.inputExpire) {
157
+ this.focusExpire();
158
+ }
159
+ }
160
+ onExpireChange(expire) {
161
+ this.updateProperty(expire, 'expire');
162
+ if (expire.length === EXPIRE_COMPLETE_LENGTH &&
163
+ this.expireSelectionStart >= EXPIRE_COMPLETE_LENGTH) {
164
+ this.focusCVC();
165
+ }
166
+ }
167
+ onCVCChange(cvc) {
168
+ this.updateProperty(cvc, 'cvc');
169
+ }
170
+ transform({ offsetWidth }) {
171
+ return this.isCardCollapsed ? `translate3d(${offsetWidth}px, 0, 0)` : '';
172
+ }
173
+ onActiveZoneChange(active) {
174
+ this.updateFocused(active);
175
+ this.open = active && this.open;
176
+ }
177
+ onMouseDown(event) {
178
+ if (tuiIsElement(event.target) && tuiIsInput(event.target)) {
179
+ return;
180
+ }
181
+ event.preventDefault();
182
+ this.focusInput();
183
+ }
184
+ onScroll({ currentTarget }) {
185
+ if (tuiIsElement(currentTarget)) {
186
+ currentTarget.scrollLeft = 0;
187
+ }
188
+ }
189
+ clear() {
190
+ this.expireInert = false;
191
+ this.value = null;
192
+ this.focusCard();
193
+ }
194
+ toggle() {
195
+ this.open = !this.open;
196
+ }
197
+ writeValue(value) {
198
+ const { bin } = this;
199
+ super.writeValue(value);
200
+ this.updateBin(bin);
201
+ this.expireInert = !!this.expire && this.cardPrefilled;
202
+ }
203
+ /** Public API for manual focus management */
204
+ focusCard() {
205
+ this.cardNumberAutofocusRef?.focus();
206
+ }
207
+ focusExpire() {
208
+ this.expireCardAutofocusRef?.focus();
209
+ }
210
+ focusCVC() {
211
+ this.cvcCardAutofocusRef?.focus();
212
+ }
213
+ get cardFocused() {
214
+ return !!this.inputCard && tuiIsNativeFocused(this.inputCard.nativeElement);
215
+ }
216
+ get hasExtraSpace() {
217
+ return this.card.length % 4 > 0;
218
+ }
219
+ isFocusable(card) {
220
+ return this.focusable && (this.cardValidator(card) || this.cardPrefilled);
221
+ }
222
+ updateBin(oldBin) {
223
+ const { bin } = this;
224
+ if (bin !== oldBin && !this.cardPrefilled) {
225
+ this.binChange.emit(bin);
226
+ }
227
+ }
228
+ updateProperty(value, propName) {
229
+ const { card = '', expire = '', cvc = '' } = this.value || {};
230
+ const newValue = { card, expire, cvc };
231
+ newValue[propName] = value;
232
+ this.value = newValue.expire || newValue.cvc || newValue.card ? newValue : null;
233
+ }
234
+ focusInput() {
235
+ const element = (this.cardFocusable && this.inputCard?.nativeElement) ||
236
+ (this.expireFocusable && this.inputExpire?.nativeElement) ||
237
+ this.inputCVC?.nativeElement;
238
+ element?.focus();
239
+ }
240
+ }
241
+ TuiInputCardGroupedComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiInputCardGroupedComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: ElementRef }, { token: TUI_MODE }, { token: TUI_INPUT_CARD_GROUPED_TEXTS }, { token: TUI_TEXTFIELD_WATCHED_CONTROLLER }, { token: TUI_COMMON_ICONS }, { token: TUI_ARROW_OPTIONS }, { token: TUI_INPUT_CARD_GROUPED_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
242
+ TuiInputCardGroupedComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TuiInputCardGroupedComponent, selector: "tui-input-card-grouped", inputs: { exampleText: "exampleText", cardValidator: "cardValidator", codeLength: "codeLength" }, outputs: { autofilledChange: "autofilledChange" }, host: { attributes: { "data-size": "l" }, listeners: { "$.data-mode.attr": "mode$", "keydown.esc": "onEsc()", "keydown.arrowDown.prevent": "onArrow($event.target,1)", "keydown.arrowUp.prevent": "onArrow($event.target,-1)" } }, providers: [
243
+ tuiAsFocusableItemAccessor(TuiInputCardGroupedComponent),
244
+ tuiAsControl(TuiInputCardGroupedComponent),
245
+ tuiAsDataListHost(TuiInputCardGroupedComponent),
246
+ MODE_PROVIDER,
247
+ TEXTFIELD_CONTROLLER_PROVIDER,
248
+ ], queries: [{ propertyName: "dropdown", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }, { propertyName: "datalist", first: true, predicate: TuiDataListComponent, descendants: true }], viewQueries: [{ propertyName: "inputCard", first: true, predicate: ["inputCard"], descendants: true }, { propertyName: "cardNumberAutofocusRef", first: true, predicate: ["inputCard"], descendants: true, read: TuiAutoFocusDirective }, { propertyName: "inputExpire", first: true, predicate: ["inputExpire"], descendants: true }, { propertyName: "expireCardAutofocusRef", first: true, predicate: ["inputExpire"], descendants: true, read: TuiAutoFocusDirective }, { propertyName: "inputCVC", first: true, predicate: ["inputCVC"], descendants: true }, { propertyName: "cvcCardAutofocusRef", first: true, predicate: ["inputCVC"], descendants: true, read: TuiAutoFocusDirective }], usesInheritance: true, ngImport: i0, template: "<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 ? '\u2022\u2022\u2022' : 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", styles: [":host{display:block;height:var(--tui-height-l);width:29.5rem;border-radius:var(--tui-radius-m)}:host[data-mode=onDark]{--tui-autofill: var(--tui-autofill-night)}:host :host-context(tui-root._mobile){width:18rem}.t-outline{height:100%;width:100%}.t-common-wrapper{position:relative;height:100%;width:100%;overflow:hidden}.t-wrapper{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;width:100%;height:100%}.t-wrapper_cvc{margin-left:7.1875rem;transform:translate3d(100%,0,0)}:host-context(tui-root._mobile) .t-wrapper_cvc{margin-left:4.0625rem}.t-wrapper_expire{transform:translate3d(100%,0,0)}.t-wrapper_active{transform:translate3d(6.5625rem,0,0)}:host-context(tui-root._mobile) .t-wrapper_active{transform:translate3d(4.125rem,0,0)}.t-card{width:2rem;height:2rem;margin-right:.5rem;color:#1434cb}.t-collapsed{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none;border:0;padding-left:1rem;line-height:2.25rem;pointer-events:none}.t-collapsed:-webkit-autofill,.t-collapsed:-webkit-autofill:hover,.t-collapsed:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-collapsed:-webkit-autofill,.t-collapsed:-webkit-autofill:first-line{font-size:inherit;line-height:inherit}.t-collapsed::-webkit-caps-lock-indicator,.t-collapsed::-webkit-contacts-auto-fill-button,.t-collapsed::-webkit-credit-card-auto-fill-button,.t-collapsed::-webkit-credentials-auto-fill-button,.t-collapsed::-webkit-strong-password-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}.t-collapsed::placeholder{color:var(--tui-text-03);opacity:0}:host._focused:not(._readonly) .t-collapsed::placeholder,:host-context(tui-primitive-textfield._focused:not(._readonly)) .t-collapsed::placeholder,:host-context(tui-textarea._focused:not(._readonly)) .t-collapsed::placeholder,:host-context(tui-text-area._focused:not(._readonly)) .t-collapsed::placeholder{opacity:1}[tuiWrapper][data-mode=onDark] .t-collapsed:-webkit-autofill,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill,[tuiWrapper][data-mode=onDark] .t-collapsed:-webkit-autofill:hover,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:hover,[tuiWrapper][data-mode=onDark] .t-collapsed:-webkit-autofill:focus,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}[tuiWrapper][data-mode=onDark] .t-collapsed::placeholder,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"])::placeholder{color:var(--tui-text-03-night)}:host[data-size=s] .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-collapsed :host-context(tui-textarea[data-size=\"s\"]):not(tui-textarea),.t-collapsed :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=m] .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"m\"]):not(tui-primitive-textfield),.t-collapsed :host-context(tui-textarea[data-size=\"m\"]):not(tui-textarea),.t-collapsed :host-context(tui-text-area[data-size=\"m\"]):not(tui-text-area){padding:0 var(--tui-padding-m)}:host[data-size=l] .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-collapsed :host-context(tui-textarea[data-size=\"l\"]):not(tui-textarea),.t-collapsed :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield._disabled),.t-collapsed :host-context(tui-textarea._disabled),.t-collapsed :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-collapsed:-webkit-autofill+.t-content .t-placeholder,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1rem}:host[data-size=m]:not(._label-outside) .t-collapsed:-webkit-autofill+.t-content .t-placeholder,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-collapsed,.t-collapsed :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-collapsed_enable-mask:before{content:attr(data-before)}.t-collapsed_enable-mask .t-collapsed-wrapper{left:1.375rem}.t-collapsed-wrapper{position:absolute;top:0;display:block;width:100%;height:100%;overflow:hidden}.t-value{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;bottom:0;right:100%;display:block;transform:translate3d(100%,0,0)}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;border:0;padding:0 1rem}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-input:-webkit-autofill,.t-input:-webkit-autofill:first-line{font-size:inherit;line-height:inherit}.t-input::-webkit-caps-lock-indicator,.t-input::-webkit-contacts-auto-fill-button,.t-input::-webkit-credit-card-auto-fill-button,.t-input::-webkit-credentials-auto-fill-button,.t-input::-webkit-strong-password-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host._focused:not(._readonly) .t-input::placeholder,:host-context(tui-primitive-textfield._focused:not(._readonly)) .t-input::placeholder,:host-context(tui-textarea._focused:not(._readonly)) .t-input::placeholder,:host-context(tui-text-area._focused:not(._readonly)) .t-input::placeholder{opacity:1}[tuiWrapper][data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill,[tuiWrapper][data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:hover,[tuiWrapper][data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}[tuiWrapper][data-mode=onDark] .t-input::placeholder,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"])::placeholder{color:var(--tui-text-03-night)}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"s\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=m] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"m\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"m\"]):not(tui-text-area){padding:0 var(--tui-padding-m)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"l\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-textarea._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-input::placeholder{color:var(--tui-text-03);opacity:1}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}.t-input.t-input.t-input_card:not(.t-input_hidden),:host[data-mode=onDark] .t-input.t-input.t-input_card:not(.t-input_hidden),.t-input.t-input.t-input_card:not(.t-input_hidden)::placeholder,:host[data-mode=onDark] .t-input.t-input.t-input_card:not(.t-input_hidden)::placeholder,.t-input.t-input.t-input_card:not(.t-input_hidden):-webkit-autofill,:host[data-mode=onDark] .t-input.t-input.t-input_card:not(.t-input_hidden):-webkit-autofill{caret-color:var(--tui-base-09);color:transparent!important;-webkit-text-fill-color:transparent!important}.t-input.t-input.t-input_card::-webkit-credit-card-auto-fill-button,:host[data-mode=onDark] .t-input.t-input.t-input_card::-webkit-credit-card-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}.t-input_inert{pointer-events:none}.t-icons{position:absolute;right:.75rem;display:flex;align-items:center;height:100%}.t-icon-outlet{display:flex}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:relative;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;box-sizing:border-box;cursor:pointer;pointer-events:none;pointer-events:auto}:host._readonly .t-icon,:host._disabled .t-icon{pointer-events:none}.t-icon_rotated{transform:rotate(180deg)}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;font:var(--tui-font-text-s);color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0);margin:1.125rem 1rem;line-height:1.25rem}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);line-height:1.25rem;transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host._invalid:not(._focused) [tuiWrapper][data-mode=onDark] .t-placeholder_raised,:host._invalid:not(._focused):hover [tuiWrapper][data-mode=onDark] .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font:var(--tui-font-text-m);line-height:1.25rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}[tuiWrapper][data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m]._focused:not(._label-outside) [tuiWrapper][data-mode=onDark] .t-placeholder,:host[data-size=l]._focused:not(._label-outside) [tuiWrapper][data-mode=onDark] .t-placeholder{color:var(--tui-text-01-night)}:host._focused [tuiWrapper][data-mode=onDark] .t-placeholder,:host[data-size=m]._focused._label-outside [tuiWrapper][data-mode=onDark] .t-placeholder,:host[data-size=l]._focused._label-outside [tuiWrapper][data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}.t-ghost{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.MaskitoDirective, selector: "[maskito]", inputs: ["maskito", "maskitoElement"] }, { kind: "directive", type: i3.MaskitoCva, selector: "input[maskito], textarea[maskito]", inputs: ["maskito"] }, { kind: "directive", type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { kind: "component", type: i5.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { kind: "directive", type: i5.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { kind: "directive", type: i4.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { kind: "directive", type: i5.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i5.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownAppearance", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { kind: "directive", type: i5.TuiDropdownDriverDirective, selector: "[tuiDropdown]" }, { kind: "directive", type: i5.TuiDropdownManualDirective, selector: "[tuiDropdown][tuiDropdownManual]", inputs: ["tuiDropdownManual"] }, { kind: "directive", type: i5.TuiDropdownPositionDirective, selector: "[tuiDropdown]:not([tuiDropdownCustomPosition]):not([tuiDropdownSided])" }, { kind: "directive", type: i4.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }, { kind: "directive", type: i6.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: i4.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "directive", type: i4.TuiResizeDirective, selector: "[tuiResize]", outputs: ["tuiResize"] }, { kind: "directive", type: i4.TuiAutoFocusDirective, selector: "[tuiAutoFocus]", inputs: ["tuiAutoFocus"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TuiMapperPipe, name: "tuiMapper" }, { kind: "pipe", type: i7.TuiFormatCardPipe, name: "tuiFormatCard" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
249
+ __decorate([
250
+ tuiPure
251
+ ], TuiInputCardGroupedComponent.prototype, "isFocusable", null);
252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiInputCardGroupedComponent, decorators: [{
253
+ type: Component,
254
+ args: [{ selector: 'tui-input-card-grouped', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
255
+ tuiAsFocusableItemAccessor(TuiInputCardGroupedComponent),
256
+ tuiAsControl(TuiInputCardGroupedComponent),
257
+ tuiAsDataListHost(TuiInputCardGroupedComponent),
258
+ MODE_PROVIDER,
259
+ TEXTFIELD_CONTROLLER_PROVIDER,
260
+ ], host: {
261
+ '($.data-mode.attr)': 'mode$',
262
+ 'data-size': 'l',
263
+ }, template: "<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 ? '\u2022\u2022\u2022' : 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", styles: [":host{display:block;height:var(--tui-height-l);width:29.5rem;border-radius:var(--tui-radius-m)}:host[data-mode=onDark]{--tui-autofill: var(--tui-autofill-night)}:host :host-context(tui-root._mobile){width:18rem}.t-outline{height:100%;width:100%}.t-common-wrapper{position:relative;height:100%;width:100%;overflow:hidden}.t-wrapper{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;width:100%;height:100%}.t-wrapper_cvc{margin-left:7.1875rem;transform:translate3d(100%,0,0)}:host-context(tui-root._mobile) .t-wrapper_cvc{margin-left:4.0625rem}.t-wrapper_expire{transform:translate3d(100%,0,0)}.t-wrapper_active{transform:translate3d(6.5625rem,0,0)}:host-context(tui-root._mobile) .t-wrapper_active{transform:translate3d(4.125rem,0,0)}.t-card{width:2rem;height:2rem;margin-right:.5rem;color:#1434cb}.t-collapsed{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none;border:0;padding-left:1rem;line-height:2.25rem;pointer-events:none}.t-collapsed:-webkit-autofill,.t-collapsed:-webkit-autofill:hover,.t-collapsed:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-collapsed:-webkit-autofill,.t-collapsed:-webkit-autofill:first-line{font-size:inherit;line-height:inherit}.t-collapsed::-webkit-caps-lock-indicator,.t-collapsed::-webkit-contacts-auto-fill-button,.t-collapsed::-webkit-credit-card-auto-fill-button,.t-collapsed::-webkit-credentials-auto-fill-button,.t-collapsed::-webkit-strong-password-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}.t-collapsed::placeholder{color:var(--tui-text-03);opacity:0}:host._focused:not(._readonly) .t-collapsed::placeholder,:host-context(tui-primitive-textfield._focused:not(._readonly)) .t-collapsed::placeholder,:host-context(tui-textarea._focused:not(._readonly)) .t-collapsed::placeholder,:host-context(tui-text-area._focused:not(._readonly)) .t-collapsed::placeholder{opacity:1}[tuiWrapper][data-mode=onDark] .t-collapsed:-webkit-autofill,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill,[tuiWrapper][data-mode=onDark] .t-collapsed:-webkit-autofill:hover,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:hover,[tuiWrapper][data-mode=onDark] .t-collapsed:-webkit-autofill:focus,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}[tuiWrapper][data-mode=onDark] .t-collapsed::placeholder,.t-collapsed :host-context([tuiWrapper][data-mode=\"onDark\"])::placeholder{color:var(--tui-text-03-night)}:host[data-size=s] .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-collapsed :host-context(tui-textarea[data-size=\"s\"]):not(tui-textarea),.t-collapsed :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=m] .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"m\"]):not(tui-primitive-textfield),.t-collapsed :host-context(tui-textarea[data-size=\"m\"]):not(tui-textarea),.t-collapsed :host-context(tui-text-area[data-size=\"m\"]):not(tui-text-area){padding:0 var(--tui-padding-m)}:host[data-size=l] .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-collapsed :host-context(tui-textarea[data-size=\"l\"]):not(tui-textarea),.t-collapsed :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield._disabled),.t-collapsed :host-context(tui-textarea._disabled),.t-collapsed :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-collapsed:-webkit-autofill+.t-content .t-placeholder,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-collapsed,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1rem}:host[data-size=m]:not(._label-outside) .t-collapsed:-webkit-autofill+.t-content .t-placeholder,.t-collapsed :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-collapsed,.t-collapsed :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-collapsed_enable-mask:before{content:attr(data-before)}.t-collapsed_enable-mask .t-collapsed-wrapper{left:1.375rem}.t-collapsed-wrapper{position:absolute;top:0;display:block;width:100%;height:100%;overflow:hidden}.t-value{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;bottom:0;right:100%;display:block;transform:translate3d(100%,0,0)}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;border:0;padding:0 1rem}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-input:-webkit-autofill,.t-input:-webkit-autofill:first-line{font-size:inherit;line-height:inherit}.t-input::-webkit-caps-lock-indicator,.t-input::-webkit-contacts-auto-fill-button,.t-input::-webkit-credit-card-auto-fill-button,.t-input::-webkit-credentials-auto-fill-button,.t-input::-webkit-strong-password-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host._focused:not(._readonly) .t-input::placeholder,:host-context(tui-primitive-textfield._focused:not(._readonly)) .t-input::placeholder,:host-context(tui-textarea._focused:not(._readonly)) .t-input::placeholder,:host-context(tui-text-area._focused:not(._readonly)) .t-input::placeholder{opacity:1}[tuiWrapper][data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill,[tuiWrapper][data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:hover,[tuiWrapper][data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}[tuiWrapper][data-mode=onDark] .t-input::placeholder,.t-input :host-context([tuiWrapper][data-mode=\"onDark\"])::placeholder{color:var(--tui-text-03-night)}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"s\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=m] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"m\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"m\"]):not(tui-text-area){padding:0 var(--tui-padding-m)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"l\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-textarea._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-input::placeholder{color:var(--tui-text-03);opacity:1}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}.t-input.t-input.t-input_card:not(.t-input_hidden),:host[data-mode=onDark] .t-input.t-input.t-input_card:not(.t-input_hidden),.t-input.t-input.t-input_card:not(.t-input_hidden)::placeholder,:host[data-mode=onDark] .t-input.t-input.t-input_card:not(.t-input_hidden)::placeholder,.t-input.t-input.t-input_card:not(.t-input_hidden):-webkit-autofill,:host[data-mode=onDark] .t-input.t-input.t-input_card:not(.t-input_hidden):-webkit-autofill{caret-color:var(--tui-base-09);color:transparent!important;-webkit-text-fill-color:transparent!important}.t-input.t-input.t-input_card::-webkit-credit-card-auto-fill-button,:host[data-mode=onDark] .t-input.t-input.t-input_card::-webkit-credit-card-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}.t-input_inert{pointer-events:none}.t-icons{position:absolute;right:.75rem;display:flex;align-items:center;height:100%}.t-icon-outlet{display:flex}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:relative;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;box-sizing:border-box;cursor:pointer;pointer-events:none;pointer-events:auto}:host._readonly .t-icon,:host._disabled .t-icon{pointer-events:none}.t-icon_rotated{transform:rotate(180deg)}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;font:var(--tui-font-text-s);color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0);margin:1.125rem 1rem;line-height:1.25rem}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);line-height:1.25rem;transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host._invalid:not(._focused) [tuiWrapper][data-mode=onDark] .t-placeholder_raised,:host._invalid:not(._focused):hover [tuiWrapper][data-mode=onDark] .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font:var(--tui-font-text-m);line-height:1.25rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}[tuiWrapper][data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m]._focused:not(._label-outside) [tuiWrapper][data-mode=onDark] .t-placeholder,:host[data-size=l]._focused:not(._label-outside) [tuiWrapper][data-mode=onDark] .t-placeholder{color:var(--tui-text-01-night)}:host._focused [tuiWrapper][data-mode=onDark] .t-placeholder,:host[data-size=m]._focused._label-outside [tuiWrapper][data-mode=onDark] .t-placeholder,:host[data-size=l]._focused._label-outside [tuiWrapper][data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}.t-ghost{visibility:hidden}\n"] }]
264
+ }], ctorParameters: function () { return [{ type: i2.NgControl, decorators: [{
265
+ type: Optional
266
+ }, {
267
+ type: Self
268
+ }, {
269
+ type: Inject,
270
+ args: [NgControl]
271
+ }] }, { type: i0.ChangeDetectorRef, decorators: [{
272
+ type: Inject,
273
+ args: [ChangeDetectorRef]
274
+ }] }, { type: i0.ElementRef, decorators: [{
275
+ type: Inject,
276
+ args: [ElementRef]
277
+ }] }, { type: i8.Observable, decorators: [{
278
+ type: Inject,
279
+ args: [TUI_MODE]
280
+ }] }, { type: i8.Observable, decorators: [{
281
+ type: Inject,
282
+ args: [TUI_INPUT_CARD_GROUPED_TEXTS]
283
+ }] }, { type: i5.TuiTextfieldController, decorators: [{
284
+ type: Inject,
285
+ args: [TUI_TEXTFIELD_WATCHED_CONTROLLER]
286
+ }] }, { type: undefined, decorators: [{
287
+ type: Inject,
288
+ args: [TUI_COMMON_ICONS]
289
+ }] }, { type: undefined, decorators: [{
290
+ type: Inject,
291
+ args: [TUI_ARROW_OPTIONS]
292
+ }] }, { type: undefined, decorators: [{
293
+ type: Inject,
294
+ args: [TUI_INPUT_CARD_GROUPED_OPTIONS]
295
+ }] }]; }, propDecorators: { inputCard: [{
296
+ type: ViewChild,
297
+ args: ['inputCard']
298
+ }], cardNumberAutofocusRef: [{
299
+ type: ViewChild,
300
+ args: ['inputCard', { read: TuiAutoFocusDirective }]
301
+ }], inputExpire: [{
302
+ type: ViewChild,
303
+ args: ['inputExpire']
304
+ }], expireCardAutofocusRef: [{
305
+ type: ViewChild,
306
+ args: ['inputExpire', { read: TuiAutoFocusDirective }]
307
+ }], inputCVC: [{
308
+ type: ViewChild,
309
+ args: ['inputCVC']
310
+ }], cvcCardAutofocusRef: [{
311
+ type: ViewChild,
312
+ args: ['inputCVC', { read: TuiAutoFocusDirective }]
313
+ }], exampleText: [{
314
+ type: Input
315
+ }], cardValidator: [{
316
+ type: Input
317
+ }], codeLength: [{
318
+ type: Input
319
+ }], autofilledChange: [{
320
+ type: Output
321
+ }], dropdown: [{
322
+ type: ContentChild,
323
+ args: [TuiDataListDirective, { read: TemplateRef }]
324
+ }], datalist: [{
325
+ type: ContentChild,
326
+ args: [TuiDataListComponent]
327
+ }], onEsc: [{
328
+ type: HostListener,
329
+ args: ['keydown.esc']
330
+ }], onArrow: [{
331
+ type: HostListener,
332
+ args: ['keydown.arrowDown.prevent', ['$event.target', '1']]
333
+ }, {
334
+ type: HostListener,
335
+ args: ['keydown.arrowUp.prevent', ['$event.target', '-1']]
336
+ }], isFocusable: [] } });
337
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC1ncm91cGVkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY2FyZC1ncm91cGVkL2lucHV0LWNhcmQtZ3JvdXBlZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQtZ3JvdXBlZC9pbnB1dC1jYXJkLWdyb3VwZWQudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFdBQVcsRUFDWCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUN6RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUNwRixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFHakUsT0FBTyxFQUNILFlBQVksRUFDWiwwQkFBMEIsRUFFMUIscUJBQXFCLEVBRXJCLFlBQVksRUFDWixVQUFVLEVBQ1Ysa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNwQixPQUFPLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILGFBQWEsRUFDYiw2QkFBNkIsRUFDN0IsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixRQUFRLEVBQ1Isb0JBQW9CLEVBQ3BCLGdDQUFnQyxFQUNoQyxpQkFBaUIsRUFHakIs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QUFDLGdDQUFnQzs7MEJBRXZDLE1BQU07MkJBQUMsZ0JBQWdCOzswQkFDdkIsTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLDhCQUE4Qjs0Q0F6RXpCLFNBQVM7c0JBRHpCLFNBQVM7dUJBQUMsV0FBVztnQkFJTCxzQkFBc0I7c0JBRHRDLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFDO2dCQUlwQyxXQUFXO3NCQUQzQixTQUFTO3VCQUFDLGFBQWE7Z0JBSVAsc0JBQXNCO3NCQUR0QyxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBQztnQkFJdEMsUUFBUTtzQkFEeEIsU0FBUzt1QkFBQyxVQUFVO2dCQUlKLG1CQUFtQjtzQkFEbkMsU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUM7Z0JBTXBELFdBQVc7c0JBRFYsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBSUYsVUFBVTtzQkFEYixLQUFLO2dCQVNHLGdCQUFnQjtzQkFEeEIsTUFBTTtnQkFJRSxRQUFRO3NCQURoQixZQUFZO3VCQUFDLG9CQUFvQixFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBQztnQkFJOUMsUUFBUTtzQkFEaEIsWUFBWTt1QkFBQyxvQkFBb0I7Z0JBNklsQyxLQUFLO3NCQURKLFlBQVk7dUJBQUMsYUFBYTtnQkFPM0IsT0FBTztzQkFGTixZQUFZO3VCQUFDLDJCQUEyQixFQUFFLENBQUMsZUFBZSxFQUFFLEdBQUcsQ0FBQzs7c0JBQ2hFLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDO2dCQW9IeEQsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBTZWxmLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXNraXRvT3B0aW9uc30gZnJvbSAnQG1hc2tpdG8vY29yZSc7XG5pbXBvcnQge21hc2tpdG9EYXRlT3B0aW9uc0dlbmVyYXRvcn0gZnJvbSAnQG1hc2tpdG8va2l0JztcbmltcG9ydCB7QWJzdHJhY3RUdWlJbnB1dENhcmR9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQnO1xuaW1wb3J0IHtUVUlfQ0FSRF9NQVNLfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpQ2FyZH0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlDb2RlQ1ZDTGVuZ3RofSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuaW1wb3J0IHtcbiAgICB0dWlBc0NvbnRyb2wsXG4gICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IsXG4gICAgVHVpQXV0b2ZpbGxGaWVsZE5hbWUsXG4gICAgVHVpQXV0b0ZvY3VzRGlyZWN0aXZlLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICB0dWlJc0VsZW1lbnQsXG4gICAgdHVpSXNJbnB1dCxcbiAgICB0dWlJc05hdGl2ZUZvY3VzZWQsXG4gICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4sXG4gICAgdHVpUHVyZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIE1PREVfUFJPVklERVIsXG4gICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX0NPTU1PTl9JQ09OUyxcbiAgICBUVUlfRElHSVRfUkVHRVhQLFxuICAgIFRVSV9NT0RFLFxuICAgIFRVSV9OT05fRElHSVRfUkVHRVhQLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIHR1aUFzRGF0YUxpc3RIb3N0LFxuICAgIFR1aUJyaWdodG5lc3MsXG4gICAgVHVpQ29tbW9uSWNvbnMsXG4gICAgVHVpRGF0YUxpc3RDb21wb25lbnQsXG4gICAgVHVpRGF0YUxpc3REaXJlY3RpdmUsXG4gICAgVHVpRGF0YUxpc3RIb3N0LFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VFVJX0FSUk9XX09QVElPTlMsIFR1aUFycm93T3B0aW9uc30gZnJvbSAnQHRhaWdhLXVpL2tpdCc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICAgIFRVSV9JTlBVVF9DQVJEX0dST1VQRURfT1BUSU9OUyxcbiAgICBUdWlJbnB1dENhcmRHcm91cGVkT3B0aW9ucyxcbn0gZnJvbSAnLi9pbnB1dC1jYXJkLWdyb3VwZWQub3B0aW9ucyc7XG5pbXBvcnQge1xuICAgIFRVSV9JTlBVVF9DQVJEX0dST1VQRURfVEVYVFMsXG4gICAgVHVpQ2FyZEdyb3VwZWRUZXh0cyxcbn0gZnJvbSAnLi9pbnB1dC1jYXJkLWdyb3VwZWQucHJvdmlkZXJzJztcblxuY29uc3QgRVhQSVJFX0NPTVBMRVRFX0xFTkdUSCA9IDU7IC8vIE1NL1lZXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWlucHV0LWNhcmQtZ3JvdXBlZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LWNhcmQtZ3JvdXBlZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1jYXJkLWdyb3VwZWQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcihUdWlJbnB1dENhcmRHcm91cGVkQ29tcG9uZW50KSxcbiAgICAgICAgdHVpQXNDb250cm9sKFR1aUlucHV0Q2FyZEdyb3VwZWRDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0RhdGFMaXN0SG9zdChUdWlJbnB1dENhcmRHcm91cGVkQ29tcG9uZW50KSxcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoJC5kYXRhLW1vZGUuYXR0ciknOiAnbW9kZSQnLFxuICAgICAgICAnZGF0YS1zaXplJzogJ2wnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0Q2FyZEdyb3VwZWRDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpSW5wdXRDYXJkPFR1aUNhcmQsIFR1aUlucHV0Q2FyZEdyb3VwZWRPcHRpb25zPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLCBUdWlEYXRhTGlzdEhvc3Q8UGFydGlhbDxUdWlDYXJkPj5cbntcbiAgICBAVmlld0NoaWxkKCdpbnB1dENhcmQnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRDYXJkPzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0Q2FyZCcsIHtyZWFkOiBUdWlBdXRvRm9jdXNEaXJlY3RpdmV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FyZE51bWJlckF1dG9mb2N1c1JlZj86IFR1aUF1dG9Gb2N1c0RpcmVjdGl2ZTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0RXhwaXJlJylcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0RXhwaXJlPzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0RXhwaXJlJywge3JlYWQ6IFR1aUF1dG9Gb2N1c0RpcmVjdGl2ZX0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBleHBpcmVDYXJkQXV0b2ZvY3VzUmVmPzogVHVpQXV0b0ZvY3VzRGlyZWN0aXZlO1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRDVkMnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRDVkM/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRDVkMnLCB7cmVhZDogVHVpQXV0b0ZvY3VzRGlyZWN0aXZlfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN2Y0NhcmRBdXRvZm9jdXNSZWY/OiBUdWlBdXRvRm9jdXNEaXJlY3RpdmU7XG5cbiAgICBwcml2YXRlIGV4cGlyZUluZXJ0ID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGV4YW1wbGVUZXh0ID0gdGhpcy5vcHRpb25zLmV4YW1wbGVUZXh0O1xuXG4gICAgQElucHV0KClcbiAgICBjYXJkVmFsaWRhdG9yID0gdGhpcy5vcHRpb25zLmNhcmRWYWxpZGF0b3I7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBjb2RlTGVuZ3RoKGxlbmd0aDogVHVpQ29kZUNWQ0xlbmd0aCkge1xuICAgICAgICB0aGlzLmV4YW1wbGVUZXh0Q1ZDID0gJzAnLnJlcGVhdChsZW5ndGgpO1xuICAgICAgICB0aGlzLm1hc2tDVkMgPSB7XG4gICAgICAgICAgICBtYXNrOiBuZXcgQXJyYXkobGVuZ3RoKS5maWxsKFRVSV9ESUdJVF9SRUdFWFApLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGF1dG9maWxsZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBAQ29udGVudENoaWxkKFR1aURhdGFMaXN0RGlyZWN0aXZlLCB7cmVhZDogVGVtcGxhdGVSZWZ9KVxuICAgIHJlYWRvbmx5IGRyb3Bkb3duOiBQb2x5bW9ycGhldXNDb250ZW50O1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlEYXRhTGlzdENvbXBvbmVudClcbiAgICByZWFkb25seSBkYXRhbGlzdD86IFR1aURhdGFMaXN0Q29tcG9uZW50PFR1aUNhcmQ+O1xuXG4gICAgZXhhbXBsZVRleHRDVkMgPSB0aGlzLm9wdGlvbnMuZXhhbXBsZVRleHRDVkM7XG5cbiAgICBtYXNrQ1ZDOiBNYXNraXRvT3B0aW9ucyA9IHtcbiAgICAgICAgbWFzazogbmV3IEFycmF5KDMpLmZpbGwoVFVJX0RJR0lUX1JFR0VYUCksXG4gICAgfTtcblxuICAgIHJlYWRvbmx5IG1hc2tDYXJkOiBNYXNraXRvT3B0aW9ucyA9IHtcbiAgICAgICAgbWFzazogVFVJX0NBUkRfTUFTSyxcbiAgICB9O1xuXG4gICAgcmVhZG9ubHkgbWFza0V4cGlyZTogTWFza2l0b09wdGlvbnMgPSBtYXNraXRvRGF0ZU9wdGlvbnNHZW5lcmF0b3Ioe1xuICAgICAgICBtb2RlOiAnbW0veXknLFxuICAgICAgICBzZXBhcmF0b3I6ICcvJyxcbiAgICB9KTtcblxuICAgIG9wZW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFRVSV9NT0RFKSByZWFkb25seSBtb2RlJDogT2JzZXJ2YWJsZTxUdWlCcmlnaHRuZXNzIHwgbnVsbD4sXG4gICAgICAgIEBJbmplY3QoVFVJX0lOUFVUX0NBUkRfR1JPVVBFRF9URVhUUylcbiAgICAgICAgcmVhZG9ubHkgY2FyZEdyb3VwZWRUZXh0cyQ6IE9ic2VydmFibGU8VHVpQ2FyZEdyb3VwZWRUZXh0cz4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBJbmplY3QoVFVJX0NPTU1PTl9JQ09OUykgcmVhZG9ubHkgaWNvbnM6IFR1aUNvbW1vbkljb25zLFxuICAgICAgICBASW5qZWN0KFRVSV9BUlJPV19PUFRJT05TKSByZWFkb25seSBhcnJvd09wdGlvbnM6IFR1aUFycm93T3B0aW9ucyxcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfQ0FSRF9HUk9VUEVEX09QVElPTlMpIG9wdGlvbnM6IFR1aUlucHV0Q2FyZEdyb3VwZWRPcHRpb25zLFxuICAgICkge1xuICAgICAgICBzdXBlcihjb250cm9sLCBjZHIsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5wdXRDYXJkPy5uYXRpdmVFbGVtZW50ID8/IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wZW4gfHwgdHVpSXNOYXRpdmVGb2N1c2VkSW4odGhpcy5lbC5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBnZXQgYXBwZWFyYW5jZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmFwcGVhcmFuY2U7XG4gICAgfVxuXG4gICAgZ2V0IGNhcmQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU/LmNhcmQgfHwgJyc7XG4gICAgfVxuXG4gICAgZ2V0IGV4cGlyZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZT8uZXhwaXJlIHx8ICcnO1xuICAgIH1cblxuICAgIGdldCBjdmMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU/LmN2YyB8fCAnJztcbiAgICB9XG5cbiAgICBnZXQgaGFzQ2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy52YWx1ZT8uY2FyZD8udHJpbSgpICYmICF0aGlzLnJlYWRPbmx5ICYmICF0aGlzLmNvbXB1dGVkRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0Ryb3Bkb3duKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmRyb3Bkb3duO1xuICAgIH1cblxuICAgIGdldCBwbGFjZWhvbGRlclJhaXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLmNvbXB1dGVkRm9jdXNlZCAmJiAhdGhpcy5yZWFkT25seSkgfHwgdGhpcy5oYXNDYXJkTnVtYmVyO1xuICAgIH1cblxuICAgIGdldCBoYXNDYXJkTnVtYmVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnZhbHVlPy5jYXJkPy50cmltKCk7XG4gICAgfVxuXG4gICAgZ2V0IGlkQ2FyZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5pZH1fY2FyZGA7XG4gICAgfVxuXG4gICAgZ2V0IGlkRXhwaXJlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmlkfV9leHBpcmVgO1xuICAgIH1cblxuICAgIGdldCBpZENWQygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5pZH1fY3ZjYDtcbiAgICB9XG5cbiAgICBnZXQgaXNDYXJkQ29sbGFwc2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0ZvY3VzYWJsZSh0aGlzLmNhcmQpICYmICF0aGlzLmNhcmRGb2N1c2VkO1xuICAgIH1cblxuICAgIGdldCBhdXRvY29tcGxldGVFeHBpcmUoKTogVHVpQXV0b2ZpbGxGaWVsZE5hbWUge1xuICAgICAgICByZXR1cm4gdGhpcy5hdXRvY29tcGxldGVFbmFibGVkID8gJ2NjLWV4cCcgOiAnb2ZmJztcbiAgICB9XG5cbiAgICBnZXQgYXV0b2NvbXBsZXRlQ1ZDKCk6IFR1aUF1dG9maWxsRmllbGROYW1lIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXV0b2NvbXBsZXRlRW5hYmxlZCA/ICdjYy1jc2MnIDogJ29mZic7XG4gICAgfVxuXG4gICAgZ2V0IHRhaWxMZW5ndGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzRXh0cmFTcGFjZSA/IDUgOiA0O1xuICAgIH1cblxuICAgIC8vIFNhZmFyaSBleHBpcmF0aW9uIGRhdGUgYXV0b2ZpbGwgd29ya2Fyb3VuZFxuICAgIGdldCBuYW1lKCk6ICdjY2V4cGlyeXllYXInIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmF1dG9jb21wbGV0ZUVuYWJsZWQgPyAnY2NleHBpcnl5ZWFyJyA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGNhcmRQcmVmaWxsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY2FyZC5tYXRjaChUVUlfTk9OX0RJR0lUX1JFR0VYUCk7XG4gICAgfVxuXG4gICAgZ2V0IGN2Y1ByZWZpbGxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5jdmMubWF0Y2goVFVJX05PTl9ESUdJVF9SRUdFWFApO1xuICAgIH1cblxuICAgIGdldCBjYXJkRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb2N1c2FibGUgJiYgIXRoaXMuY2FyZFByZWZpbGxlZDtcbiAgICB9XG5cbiAgICBnZXQgZXhwaXJlRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0ZvY3VzYWJsZSh0aGlzLmNhcmQpICYmICF0aGlzLmV4cGlyZUluZXJ0O1xuICAgIH1cblxuICAgIGdldCBjdmNGb2N1c2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzRm9jdXNhYmxlKHRoaXMuY2FyZCk7XG4gICAgfVxuXG4gICAgZ2V0IG1hc2tlZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5jYXJkUHJlZmlsbGVkID8gYCoke3RoaXMuY2FyZC5zbGljZSgtNCl9YCA6ICcqJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBleHBpcmVTZWxlY3Rpb25TdGFydCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dEV4cGlyZT8ubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCB8fCAwO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uZXNjJylcbiAgICBvbkVzYygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd0Rvd24ucHJldmVudCcsIFsnJGV2ZW50LnRhcmdldCcsICcxJ10pXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd1VwLnByZXZlbnQnLCBbJyRldmVudC50YXJnZXQnLCAnLTEnXSlcbiAgICBvbkFycm93KGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBzdGVwOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gdGhpcy5oYXNEcm9wZG93bjtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB0aGlzLmRhdGFsaXN0Py5vbktleURvd25BcnJvdyhlbGVtZW50LCBzdGVwKTtcbiAgICB9XG5cbiAgICBoYW5kbGVPcHRpb24ob3B0aW9uOiBQYXJ0aWFsPFR1aUNhcmQ+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtjYXJkID0gJycsIGV4cGlyZSA9ICcnLCBjdmMgPSAnJ30gPSBvcHRpb247XG4gICAgICAgIGNvbnN0IHtiaW59ID0gdGhpcztcbiAgICAgICAgY29uc3QgZWxlbWVudCA9XG4gICAgICAgICAgICAoIWV4cGlyZSAmJiB0aGlzLmlucHV0RXhwaXJlPy5uYXRpdmVFbGVtZW50KSB8fCB0aGlzLmlucHV0Q1ZDPy5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIHRoaXMudmFsdWUgPSB7Y2FyZCwgZXhwaXJlLCBjdmN9O1xuICAgICAgICB0aGlzLnVwZGF0ZUJpbihiaW4pO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5leHBpcmVJbmVydCA9ICEhZXhwaXJlO1xuXG4gICAgICAgIGVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb25DYXJkQ2hhbmdlKGNhcmQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCB7dmFsdWUsIGJpbn0gPSB0aGlzO1xuICAgICAgICBjb25zdCBwYXJzZWQgPSBjYXJkLnNwbGl0KCcgJykuam9pbignJyk7XG5cbiAgICAgICAgaWYgKHZhbHVlICYmIHZhbHVlLmNhcmQgPT09IHBhcnNlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVQcm9wZXJ0eShwYXJzZWQsICdjYXJkJyk7XG4gICAgICAgIHRoaXMudXBkYXRlQmluKGJpbik7XG5cbiAgICAgICAgaWYgKHRoaXMuY2FyZFZhbGlkYXRvcih0aGlzLmNhcmQpICYmICF0aGlzLmV4cGlyZSAmJiB0aGlzLmlucHV0RXhwaXJlKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzRXhwaXJlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkV4cGlyZUNoYW5nZShleHBpcmU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVByb3BlcnR5KGV4cGlyZSwgJ2V4cGlyZScpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGV4cGlyZS5sZW5ndGggPT09IEVYUElSRV9DT01QTEVURV9MRU5HVEggJiZcbiAgICAgICAgICAgIHRoaXMuZXhwaXJlU2VsZWN0aW9uU3RhcnQgPj0gRVhQSVJFX0NPTVBMRVRFX0xFTkdUSFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNDVkMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ1ZDQ2hhbmdlKGN2Yzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlUHJvcGVydHkoY3ZjLCAnY3ZjJyk7XG4gICAgfVxuXG4gICAgdHJhbnNmb3JtKHtvZmZzZXRXaWR0aH06IEhUTUxTcGFuRWxlbWVudCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzQ2FyZENvbGxhcHNlZCA/IGB0cmFuc2xhdGUzZCgke29mZnNldFdpZHRofXB4LCAwLCAwKWAgOiAnJztcbiAgICB9XG5cbiAgICBvbkFjdGl2ZVpvbmVDaGFuZ2UoYWN0aXZlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChhY3RpdmUpO1xuICAgICAgICB0aGlzLm9wZW4gPSBhY3RpdmUgJiYgdGhpcy5vcGVuO1xuICAgIH1cblxuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0dWlJc0VsZW1lbnQoZXZlbnQudGFyZ2V0KSAmJiB0dWlJc0lucHV0KGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgIH1cblxuICAgIG9uU2Nyb2xsKHtjdXJyZW50VGFyZ2V0fTogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHR1aUlzRWxlbWVudChjdXJyZW50VGFyZ2V0KSkge1xuICAgICAgICAgICAgY3VycmVudFRhcmdldC5zY3JvbGxMZWZ0ID0gMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsZWFyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV4cGlyZUluZXJ0ID0gZmFsc2U7XG4gICAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xuICAgICAgICB0aGlzLmZvY3VzQ2FyZCgpO1xuICAgIH1cblxuICAgIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gIXRoaXMub3BlbjtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBUdWlDYXJkIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7YmlufSA9IHRoaXM7XG5cbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMudXBkYXRlQmluKGJpbik7XG4gICAgICAgIHRoaXMuZXhwaXJlSW5lcnQgPSAhIXRoaXMuZXhwaXJlICYmIHRoaXMuY2FyZFByZWZpbGxlZDtcbiAgICB9XG5cbiAgICAvKiogUHVibGljIEFQSSBmb3IgbWFudWFsIGZvY3VzIG1hbmFnZW1lbnQgKi9cbiAgICBmb2N1c0NhcmQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2FyZE51bWJlckF1dG9mb2N1c1JlZj8uZm9jdXMoKTtcbiAgICB9XG5cbiAgICBmb2N1c0V4cGlyZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5leHBpcmVDYXJkQXV0b2ZvY3VzUmVmPy5mb2N1cygpO1xuICAgIH1cblxuICAgIGZvY3VzQ1ZDKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN2Y0NhcmRBdXRvZm9jdXNSZWY/LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgY2FyZEZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaW5wdXRDYXJkICYmIHR1aUlzTmF0aXZlRm9jdXNlZCh0aGlzLmlucHV0Q2FyZC5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBoYXNFeHRyYVNwYWNlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jYXJkLmxlbmd0aCAlIDQgPiAwO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBpc0ZvY3VzYWJsZShjYXJkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9jdXNhYmxlICYmICh0aGlzLmNhcmRWYWxpZGF0b3IoY2FyZCkgfHwgdGhpcy5jYXJkUHJlZmlsbGVkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUJpbihvbGRCaW46IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2Jpbn0gPSB0aGlzO1xuXG4gICAgICAgIGlmIChiaW4gIT09IG9sZEJpbiAmJiAhdGhpcy5jYXJkUHJlZmlsbGVkKSB7XG4gICAgICAgICAgICB0aGlzLmJpbkNoYW5nZS5lbWl0KGJpbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVByb3BlcnR5KHZhbHVlOiBzdHJpbmcsIHByb3BOYW1lOiAnY2FyZCcgfCAnY3ZjJyB8ICdleHBpcmUnKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtjYXJkID0gJycsIGV4cGlyZSA9ICcnLCBjdmMgPSAnJ30gPSB0aGlzLnZhbHVlIHx8IHt9O1xuICAgICAgICBjb25zdCBuZXdWYWx1ZTogVHVpQ2FyZCA9IHtjYXJkLCBleHBpcmUsIGN2Y307XG5cbiAgICAgICAgbmV3VmFsdWVbcHJvcE5hbWVdID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlLmV4cGlyZSB8fCBuZXdWYWx1ZS5jdmMgfHwgbmV3VmFsdWUuY2FyZCA/IG5ld1ZhbHVlIDogbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzSW5wdXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPVxuICAgICAgICAgICAgKHRoaXMuY2FyZEZvY3VzYWJsZSAmJiB0aGlzLmlucHV0Q2FyZD8ubmF0aXZlRWxlbWVudCkgfHxcbiAgICAgICAgICAgICh0aGlzLmV4cGlyZUZvY3VzYWJsZSAmJiB0aGlzLmlucHV0RXhwaXJlPy5uYXRpdmVFbGVtZW50KSB8fFxuICAgICAgICAgICAgdGhpcy5pbnB1dENWQz8ubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBlbGVtZW50Py5mb2N1cygpO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICAqbmdJZj1cImNhcmRHcm91cGVkVGV4dHMkIHwgYXN5bmMgYXMgdGV4dHNcIlxuICAgIHR1aURyb3Bkb3duTGltaXRXaWR0aD1cImZpeGVkXCJcbiAgICB0dWlXcmFwcGVyXG4gICAgY2xhc3M9XCJ0LWNvbW1vbi13cmFwcGVyXCJcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBbZGlzYWJsZWRdPVwiY29tcHV0ZWREaXNhYmxlZFwiXG4gICAgW2ZvY3VzXT1cImNvbXB1dGVkRm9jdXNlZFwiXG4gICAgW2hvdmVyXT1cInBzZXVkb0hvdmVyXCJcbiAgICBbaW52YWxpZF09XCJjb21wdXRlZEludmFsaWRcIlxuICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgW3R1aURyb3Bkb3duXT1cImRyb3Bkb3duIHx8ICcnXCJcbiAgICBbdHVpRHJvcGRvd25NYW51YWxdPVwib3BlblwiXG4gICAgKG1vdXNlZG93bik9XCJvbk1vdXNlRG93bigkZXZlbnQpXCJcbiAgICAoc2Nyb2xsKT1cIm9uU2Nyb2xsKCRldmVudClcIlxuICAgICh0dWlBY3RpdmVab25lQ2hhbmdlKT1cIm9uQWN0aXZlWm9uZUNoYW5nZSgkZXZlbnQpXCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwidC13cmFwcGVyXCI+XG4gICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgKnR1aUxldD1cInZhbHVlPy5jYXJkIHwgdHVpRm9ybWF0Q2FyZDogY2FyZFByZWZpbGxlZCBhcyBmb3JtYXR0ZWRDYXJkXCJcbiAgICAgICAgICAgIHR1aVByZXZlbnREZWZhdWx0PVwiY2xpY2tcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAjaW5wdXRDYXJkXG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC1jYXJkLWdyb3VwZWRfX2NhcmRcIlxuICAgICAgICAgICAgICAgIGlucHV0bW9kZT1cIm51bWVyaWNcIlxuICAgICAgICAgICAgICAgIHRyYW5zbGF0ZT1cIm5vXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWlucHV0IHQtaW5wdXRfY2FyZFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cIiFjYXJkUHJlZmlsbGVkICYmICEodGhpcy5jYXJkIHwgdHVpTWFwcGVyOiBjYXJkVmFsaWRhdG9yKVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiaWRDYXJkXCJcbiAgICAgICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZUNhcmRcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LWlucHV0X2hpZGRlbl09XCIhY2FyZC5sZW5ndGggJiYgZm9jdXNlZFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnQtaW5wdXRfaW5lcnRdPVwiY2FyZFByZWZpbGxlZFwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbXB1dGVkRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgIFttYXNraXRvXT1cIm1hc2tDYXJkXCJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJmb3JtYXR0ZWRDYXJkXCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY2FyZFByZWZpbGxlZCA/ICcnIDogZXhhbXBsZVRleHRcIlxuICAgICAgICAgICAgICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgICAgICAgICAgICAgW3R1aUF1dG9Gb2N1c109XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjYXJkRm9jdXNhYmxlXCJcbiAgICAgICAgICAgICAgICAoZm9jdXMpPVwiKDApXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkNhcmRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgIHRyYW5zbGF0ZT1cIm5vXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtY29sbGFwc2VkXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWJlZm9yZV09XCJtYXNrZWRcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LWNvbGxhcHNlZF9lbmFibGUtbWFza109XCJpc0NhcmRDb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgICh0dWlSZXNpemUpPVwiKDApXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAjZ2hvc3RcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWdob3N0XCJcbiAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cImZvcm1hdHRlZENhcmQuc2xpY2UoLXRhaWxMZW5ndGgpXCJcbiAgICAgICAgICAgICAgICA+PC9zcGFuPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0LWNvbGxhcHNlZC13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtdmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlLnRyYW5zZm9ybV09XCJ0cmFuc2Zvcm0oZ2hvc3QpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZm9ybWF0dGVkQ2FyZCB9fVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LXBsYWNlaG9sZGVyX3JhaXNlZF09XCJwbGFjZWhvbGRlclJhaXNlZFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdGV4dHMuY2FyZE51bWJlclRleHQgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidC13cmFwcGVyIHQtd3JhcHBlcl9leHBpcmVcIlxuICAgICAgICBbY2xhc3MudC13cmFwcGVyX2FjdGl2ZV09XCJpc0NhcmRDb2xsYXBzZWRcIlxuICAgID5cbiAgICAgICAgPGxhYmVsIHR1aVByZXZlbnREZWZhdWx0PVwiY2xpY2tcIj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICNpbnB1dEV4cGlyZVxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktaW5wdXQtY2FyZC1ncm91cGVkX19leHBpcmVcIlxuICAgICAgICAgICAgICAgIGlucHV0bW9kZT1cIm51bWVyaWNcIlxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiMDAvMDBcIlxuICAgICAgICAgICAgICAgIHRyYW5zbGF0ZT1cIm5vXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cImlkRXhwaXJlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlRXhwaXJlXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1pbnB1dF9pbmVydF09XCIhZXhwaXJlRm9jdXNhYmxlXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29tcHV0ZWREaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgW21hc2tpdG9dPVwibWFza0V4cGlyZVwiXG4gICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiZXhwaXJlXCJcbiAgICAgICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgIFt0dWlBdXRvRm9jdXNdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgIFt0dWlGb2N1c2FibGVdPVwiZXhwaXJlRm9jdXNhYmxlXCJcbiAgICAgICAgICAgICAgICAoZm9jdXMpPVwiKDApXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkV4cGlyZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnQtcGxhY2Vob2xkZXJfcmFpc2VkXT1cInBsYWNlaG9sZGVyUmFpc2VkXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB0ZXh0cy5leHBpcnlUZXh0IH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cInQtd3JhcHBlciB0LXdyYXBwZXJfY3ZjXCJcbiAgICAgICAgW2NsYXNzLnQtd3JhcHBlcl9hY3RpdmVdPVwiaXNDYXJkQ29sbGFwc2VkXCJcbiAgICA+XG4gICAgICAgIDxsYWJlbCB0dWlQcmV2ZW50RGVmYXVsdD1cImNsaWNrXCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAjaW5wdXRDVkNcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWNhcmQtZ3JvdXBlZF9fY3ZjXCJcbiAgICAgICAgICAgICAgICBpbnB1dG1vZGU9XCJudW1lcmljXCJcbiAgICAgICAgICAgICAgICB0cmFuc2xhdGU9XCJub1wiXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiaWRDVkNcIlxuICAgICAgICAgICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlQ1ZDXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1pbnB1dF9wcmVmaWxsZWRdPVwiY3ZjUHJlZmlsbGVkXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29tcHV0ZWREaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgW21hc2tpdG9dPVwibWFza0NWQ1wiXG4gICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiY3ZjXCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY3ZjUHJlZmlsbGVkID8gJ+KAouKAouKAoicgOiBleGFtcGxlVGV4dENWQ1wiXG4gICAgICAgICAgICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5IHx8IGN2Y1ByZWZpbGxlZFwiXG4gICAgICAgICAgICAgICAgW3R1aUF1dG9Gb2N1c109XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjdmNGb2N1c2FibGVcIlxuICAgICAgICAgICAgICAgIChmb2N1cyk9XCIoMClcIlxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ1ZDQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1wbGFjZWhvbGRlcl9yYWlzZWRdPVwicGxhY2Vob2xkZXJSYWlzZWRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IHRleHRzLmN2Y1RleHQgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidC1pY29uc1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cImljb25cIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWljb24tb3V0bGV0XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaWNvbiBhcyB0ZXh0XCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWNhcmQtZ3JvdXBlZF9faWNvblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWNhcmRcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwidGV4dFwiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICpuZ0lmPVwiaGFzQ2xlYW5lclwiXG4gICAgICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWNhcmQtZ3JvdXBlZF9fY2xlYW5lclwiXG4gICAgICAgICAgICB0dWlXcmFwcGVyXG4gICAgICAgICAgICBjbGFzcz1cInQtaWNvblwiXG4gICAgICAgICAgICBbc3JjXT1cImljb25zLmNsb3NlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJjbGVhcigpXCJcbiAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICpuZ0lmPVwiaGFzRHJvcGRvd25cIlxuICAgICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC1jYXJkLWdyb3VwZWRfX2Ryb3Bkb3duXCJcbiAgICAgICAgICAgIHR1aVdyYXBwZXJcbiAgICAgICAgICAgIGNsYXNzPVwidC1pY29uXCJcbiAgICAgICAgICAgIFtjbGFzcy50LWljb25fcm90YXRlZF09XCJvcGVuXCJcbiAgICAgICAgICAgIFtzcmNdPVwiYXJyb3dPcHRpb25zLmljb25MYXJnZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlKClcIlxuICAgICAgICA+PC90dWktc3ZnPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -10,8 +10,8 @@ import { TuiInputCardGroupedComponent } from './input-card-grouped.component';
10
10
  import * as i0 from "@angular/core";
11
11
  export class TuiInputCardGroupedModule {
12
12
  }
13
- TuiInputCardGroupedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputCardGroupedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
- TuiInputCardGroupedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputCardGroupedModule, declarations: [TuiInputCardGroupedComponent], imports: [CommonModule,
13
+ TuiInputCardGroupedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiInputCardGroupedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ TuiInputCardGroupedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TuiInputCardGroupedModule, declarations: [TuiInputCardGroupedComponent], imports: [CommonModule,
15
15
  FormsModule,
16
16
  MaskitoModule,
17
17
  TuiFocusableModule,
@@ -26,24 +26,22 @@ TuiInputCardGroupedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0
26
26
  TuiResizeModule,
27
27
  TuiFormatCardModule,
28
28
  TuiAutoFocusModule], exports: [TuiInputCardGroupedComponent] });
29
- TuiInputCardGroupedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputCardGroupedModule, imports: [[
30
- CommonModule,
31
- FormsModule,
32
- MaskitoModule,
33
- TuiFocusableModule,
34
- TuiSvgModule,
35
- TuiWrapperModule,
36
- TuiActiveZoneModule,
37
- TuiMapperPipeModule,
38
- TuiDropdownModule,
39
- TuiPreventDefaultModule,
40
- PolymorpheusModule,
41
- TuiLetModule,
42
- TuiResizeModule,
43
- TuiFormatCardModule,
44
- TuiAutoFocusModule,
45
- ]] });
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputCardGroupedModule, decorators: [{
29
+ TuiInputCardGroupedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiInputCardGroupedModule, imports: [CommonModule,
30
+ FormsModule,
31
+ MaskitoModule,
32
+ TuiFocusableModule,
33
+ TuiSvgModule,
34
+ TuiWrapperModule,
35
+ TuiActiveZoneModule,
36
+ TuiMapperPipeModule,
37
+ TuiDropdownModule,
38
+ TuiPreventDefaultModule,
39
+ PolymorpheusModule,
40
+ TuiLetModule,
41
+ TuiResizeModule,
42
+ TuiFormatCardModule,
43
+ TuiAutoFocusModule] });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TuiInputCardGroupedModule, decorators: [{
47
45
  type: NgModule,
48
46
  args: [{
49
47
  imports: [
@@ -67,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
67
65
  exports: [TuiInputCardGroupedComponent],
68
66
  }]
69
67
  }] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC1ncm91cGVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY2FyZC1ncm91cGVkL2lucHV0LWNhcmQtZ3JvdXBlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsWUFBWSxFQUNaLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDdkIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFNUQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7O0FBdUI1RSxNQUFNLE9BQU8seUJBQXlCOzt1SEFBekIseUJBQXlCO3dIQUF6Qix5QkFBeUIsaUJBSG5CLDRCQUE0QixhQWhCdkMsWUFBWTtRQUNaLFdBQVc7UUFDWCxhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsdUJBQXVCO1FBQ3ZCLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixrQkFBa0IsYUFHWiw0QkFBNEI7d0hBRTdCLHlCQUF5QixZQXBCekI7WUFDTCxZQUFZO1lBQ1osV0FBVztZQUNYLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixtQkFBbUI7WUFDbkIsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQix1QkFBdUI7WUFDdkIsa0JBQWtCO1lBQ2xCLFlBQVk7WUFDWixlQUFlO1lBQ2YsbUJBQW1CO1lBQ25CLGtCQUFrQjtTQUNyQjs0RkFJUSx5QkFBeUI7a0JBckJyQyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixrQkFBa0I7d0JBQ2xCLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQix1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIsWUFBWTt3QkFDWixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3FCQUNyQjtvQkFDRCxZQUFZLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztvQkFDNUMsT0FBTyxFQUFFLENBQUMsNEJBQTRCLENBQUM7aUJBQzFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TWFza2l0b01vZHVsZX0gZnJvbSAnQG1hc2tpdG8vYW5ndWxhcic7XG5pbXBvcnQge1R1aUZvcm1hdENhcmRNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9waXBlcyc7XG5pbXBvcnQge1xuICAgIFR1aUFjdGl2ZVpvbmVNb2R1bGUsXG4gICAgVHVpQXV0b0ZvY3VzTW9kdWxlLFxuICAgIFR1aUZvY3VzYWJsZU1vZHVsZSxcbiAgICBUdWlMZXRNb2R1bGUsXG4gICAgVHVpTWFwcGVyUGlwZU1vZHVsZSxcbiAgICBUdWlQcmV2ZW50RGVmYXVsdE1vZHVsZSxcbiAgICBUdWlSZXNpemVNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlEcm9wZG93bk1vZHVsZSwgVHVpU3ZnTW9kdWxlLCBUdWlXcmFwcGVyTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c01vZHVsZX0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlJbnB1dENhcmRHcm91cGVkQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWNhcmQtZ3JvdXBlZC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTWFza2l0b01vZHVsZSxcbiAgICAgICAgVHVpRm9jdXNhYmxlTW9kdWxlLFxuICAgICAgICBUdWlTdmdNb2R1bGUsXG4gICAgICAgIFR1aVdyYXBwZXJNb2R1bGUsXG4gICAgICAgIFR1aUFjdGl2ZVpvbmVNb2R1bGUsXG4gICAgICAgIFR1aU1hcHBlclBpcGVNb2R1bGUsXG4gICAgICAgIFR1aURyb3Bkb3duTW9kdWxlLFxuICAgICAgICBUdWlQcmV2ZW50RGVmYXVsdE1vZHVsZSxcbiAgICAgICAgUG9seW1vcnBoZXVzTW9kdWxlLFxuICAgICAgICBUdWlMZXRNb2R1bGUsXG4gICAgICAgIFR1aVJlc2l6ZU1vZHVsZSxcbiAgICAgICAgVHVpRm9ybWF0Q2FyZE1vZHVsZSxcbiAgICAgICAgVHVpQXV0b0ZvY3VzTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpSW5wdXRDYXJkR3JvdXBlZENvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW1R1aUlucHV0Q2FyZEdyb3VwZWRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dENhcmRHcm91cGVkTW9kdWxlIHt9XG4iXX0=
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC1ncm91cGVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY2FyZC1ncm91cGVkL2lucHV0LWNhcmQtZ3JvdXBlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsWUFBWSxFQUNaLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDdkIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFNUQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7O0FBdUI1RSxNQUFNLE9BQU8seUJBQXlCOzt1SEFBekIseUJBQXlCO3dIQUF6Qix5QkFBeUIsaUJBSG5CLDRCQUE0QixhQWhCdkMsWUFBWTtRQUNaLFdBQVc7UUFDWCxhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsdUJBQXVCO1FBQ3ZCLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixrQkFBa0IsYUFHWiw0QkFBNEI7d0hBRTdCLHlCQUF5QixZQW5COUIsWUFBWTtRQUNaLFdBQVc7UUFDWCxhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsdUJBQXVCO1FBQ3ZCLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixrQkFBa0I7NEZBS2IseUJBQXlCO2tCQXJCckMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsdUJBQXVCO3dCQUN2QixrQkFBa0I7d0JBQ2xCLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGtCQUFrQjtxQkFDckI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsNEJBQTRCLENBQUM7b0JBQzVDLE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFDO2lCQUMxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge01hc2tpdG9Nb2R1bGV9IGZyb20gJ0BtYXNraXRvL2FuZ3VsYXInO1xuaW1wb3J0IHtUdWlGb3JtYXRDYXJkTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvcGlwZXMnO1xuaW1wb3J0IHtcbiAgICBUdWlBY3RpdmVab25lTW9kdWxlLFxuICAgIFR1aUF1dG9Gb2N1c01vZHVsZSxcbiAgICBUdWlGb2N1c2FibGVNb2R1bGUsXG4gICAgVHVpTGV0TW9kdWxlLFxuICAgIFR1aU1hcHBlclBpcGVNb2R1bGUsXG4gICAgVHVpUHJldmVudERlZmF1bHRNb2R1bGUsXG4gICAgVHVpUmVzaXplTW9kdWxlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpRHJvcGRvd25Nb2R1bGUsIFR1aVN2Z01vZHVsZSwgVHVpV3JhcHBlck1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNNb2R1bGV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpSW5wdXRDYXJkR3JvdXBlZENvbXBvbmVudH0gZnJvbSAnLi9pbnB1dC1jYXJkLWdyb3VwZWQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hc2tpdG9Nb2R1bGUsXG4gICAgICAgIFR1aUZvY3VzYWJsZU1vZHVsZSxcbiAgICAgICAgVHVpU3ZnTW9kdWxlLFxuICAgICAgICBUdWlXcmFwcGVyTW9kdWxlLFxuICAgICAgICBUdWlBY3RpdmVab25lTW9kdWxlLFxuICAgICAgICBUdWlNYXBwZXJQaXBlTW9kdWxlLFxuICAgICAgICBUdWlEcm9wZG93bk1vZHVsZSxcbiAgICAgICAgVHVpUHJldmVudERlZmF1bHRNb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c01vZHVsZSxcbiAgICAgICAgVHVpTGV0TW9kdWxlLFxuICAgICAgICBUdWlSZXNpemVNb2R1bGUsXG4gICAgICAgIFR1aUZvcm1hdENhcmRNb2R1bGUsXG4gICAgICAgIFR1aUF1dG9Gb2N1c01vZHVsZSxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1R1aUlucHV0Q2FyZEdyb3VwZWRDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtUdWlJbnB1dENhcmRHcm91cGVkQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRDYXJkR3JvdXBlZE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,14 @@
1
+ import { TUI_INPUT_CARD_DEFAULT_OPTIONS, } from '@taiga-ui/addon-commerce/components/input-card';
2
+ import { tuiDefaultCardValidator } from '@taiga-ui/addon-commerce/constants';
3
+ import { tuiCreateToken, tuiProvideOptions } from '@taiga-ui/cdk';
4
+ export const TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS = {
5
+ ...TUI_INPUT_CARD_DEFAULT_OPTIONS,
6
+ cardValidator: tuiDefaultCardValidator,
7
+ exampleText: `0000 0000 0000 0000`,
8
+ exampleTextCVC: `000`,
9
+ };
10
+ export const TUI_INPUT_CARD_GROUPED_OPTIONS = tuiCreateToken(TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS);
11
+ export function tuiInputCardGroupedOptionsProvider(options) {
12
+ return tuiProvideOptions(TUI_INPUT_CARD_GROUPED_OPTIONS, options, TUI_INPUT_CARD_GROUPED_DEFAULT_OPTIONS);
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC1ncm91cGVkLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQtZ3JvdXBlZC9pbnB1dC1jYXJkLWdyb3VwZWQub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0gsOEJBQThCLEdBRWpDLE1BQU0sZ0RBQWdELENBQUM7QUFDeEQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFvQixjQUFjLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFRbkYsTUFBTSxDQUFDLE1BQU0sc0NBQXNDLEdBQStCO0lBQzlFLEdBQUcsOEJBQThCO0lBQ2pDLGFBQWEsRUFBRSx1QkFBdUI7SUFDdEMsV0FBVyxFQUFFLHFCQUFxQjtJQUNsQyxjQUFjLEVBQUUsS0FBSztDQUN4QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsY0FBYyxDQUN4RCxzQ0FBc0MsQ0FDekMsQ0FBQztBQUVGLE1BQU0sVUFBVSxrQ0FBa0MsQ0FDOUMsT0FBNEM7SUFFNUMsT0FBTyxpQkFBaUIsQ0FDcEIsOEJBQThCLEVBQzlCLE9BQU8sRUFDUCxzQ0FBc0MsQ0FDekMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1Byb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVFVJX0lOUFVUX0NBUkRfREVGQVVMVF9PUFRJT05TLFxuICAgIFR1aUlucHV0Q2FyZE9wdGlvbnMsXG59IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQnO1xuaW1wb3J0IHt0dWlEZWZhdWx0Q2FyZFZhbGlkYXRvcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUJvb2xlYW5IYW5kbGVyLCB0dWlDcmVhdGVUb2tlbiwgdHVpUHJvdmlkZU9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFR1aUlucHV0Q2FyZEdyb3VwZWRPcHRpb25zIGV4dGVuZHMgVHVpSW5wdXRDYXJkT3B0aW9ucyB7XG4gICAgcmVhZG9ubHkgY2FyZFZhbGlkYXRvcjogVHVpQm9vbGVhbkhhbmRsZXI8c3RyaW5nPjtcbiAgICByZWFkb25seSBleGFtcGxlVGV4dDogc3RyaW5nO1xuICAgIHJlYWRvbmx5IGV4YW1wbGVUZXh0Q1ZDOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfSU5QVVRfQ0FSRF9HUk9VUEVEX0RFRkFVTFRfT1BUSU9OUzogVHVpSW5wdXRDYXJkR3JvdXBlZE9wdGlvbnMgPSB7XG4gICAgLi4uVFVJX0lOUFVUX0NBUkRfREVGQVVMVF9PUFRJT05TLFxuICAgIGNhcmRWYWxpZGF0b3I6IHR1aURlZmF1bHRDYXJkVmFsaWRhdG9yLFxuICAgIGV4YW1wbGVUZXh0OiBgMDAwMCAwMDAwIDAwMDAgMDAwMGAsXG4gICAgZXhhbXBsZVRleHRDVkM6IGAwMDBgLFxufTtcblxuZXhwb3J0IGNvbnN0IFRVSV9JTlBVVF9DQVJEX0dST1VQRURfT1BUSU9OUyA9IHR1aUNyZWF0ZVRva2VuKFxuICAgIFRVSV9JTlBVVF9DQVJEX0dST1VQRURfREVGQVVMVF9PUFRJT05TLFxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUlucHV0Q2FyZEdyb3VwZWRPcHRpb25zUHJvdmlkZXIoXG4gICAgb3B0aW9uczogUGFydGlhbDxUdWlJbnB1dENhcmRHcm91cGVkT3B0aW9ucz4sXG4pOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHR1aVByb3ZpZGVPcHRpb25zKFxuICAgICAgICBUVUlfSU5QVVRfQ0FSRF9HUk9VUEVEX09QVElPTlMsXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICAgIFRVSV9JTlBVVF9DQVJEX0dST1VQRURfREVGQVVMVF9PUFRJT05TLFxuICAgICk7XG59XG4iXX0=