@taiga-ui/addon-commerce 4.0.0-rc.1 → 4.0.0-rc.10

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 (67) hide show
  1. package/components/index.d.ts +1 -1
  2. package/components/input-card/input-card.directive.d.ts +1 -1
  3. package/components/input-card-group/index.d.ts +3 -0
  4. package/components/{input-card-grouped/input-card-grouped.component.d.ts → input-card-group/input-card-group.component.d.ts} +10 -10
  5. package/components/{input-card-grouped/input-card-grouped.options.d.ts → input-card-group/input-card-group.options.d.ts} +3 -3
  6. package/components/{input-card-grouped/input-card-grouped.providers.d.ts → input-card-group/input-card-group.providers.d.ts} +2 -2
  7. package/components/input-cvc/input-cvc.directive.d.ts +2 -4
  8. package/components/input-expire/input-expire.directive.d.ts +2 -4
  9. package/components/thumbnail-card/index.d.ts +1 -0
  10. package/components/thumbnail-card/thumbnail-card.component.d.ts +6 -5
  11. package/components/thumbnail-card/thumbnail-card.options.d.ts +9 -0
  12. package/esm2022/components/index.mjs +2 -2
  13. package/esm2022/components/input-card/input-card.directive.mjs +4 -5
  14. package/esm2022/components/input-card-group/index.mjs +4 -0
  15. package/esm2022/components/input-card-group/input-card-group.component.mjs +278 -0
  16. package/esm2022/components/input-card-group/input-card-group.options.mjs +15 -0
  17. package/esm2022/components/input-card-group/input-card-group.providers.mjs +29 -0
  18. package/esm2022/components/input-card-group/taiga-ui-addon-commerce-components-input-card-group.mjs +5 -0
  19. package/esm2022/components/input-cvc/input-cvc.directive.mjs +5 -10
  20. package/esm2022/components/input-expire/input-expire.directive.mjs +3 -6
  21. package/esm2022/components/thumbnail-card/index.mjs +2 -1
  22. package/esm2022/components/thumbnail-card/thumbnail-card.component.mjs +13 -20
  23. package/esm2022/components/thumbnail-card/thumbnail-card.options.mjs +9 -0
  24. package/esm2022/constants/default-card-validator.mjs +2 -2
  25. package/esm2022/constants/mask-card-holder.mjs +2 -2
  26. package/esm2022/constants/mask-cvc.mjs +2 -2
  27. package/esm2022/pipes/amount/amount.options.mjs +2 -2
  28. package/esm2022/pipes/amount/amount.pipe.mjs +4 -3
  29. package/esm2022/pipes/decimal/decimal.pipe.mjs +28 -0
  30. package/esm2022/pipes/decimal/index.mjs +2 -0
  31. package/esm2022/pipes/decimal/taiga-ui-addon-commerce-pipes-decimal.mjs +5 -0
  32. package/esm2022/pipes/index.mjs +2 -1
  33. package/esm2022/tokens/i18n.mjs +2 -2
  34. package/fesm2022/taiga-ui-addon-commerce-components-input-card-group.mjs +318 -0
  35. package/fesm2022/taiga-ui-addon-commerce-components-input-card-group.mjs.map +1 -0
  36. package/fesm2022/taiga-ui-addon-commerce-components-input-card.mjs +3 -4
  37. package/fesm2022/taiga-ui-addon-commerce-components-input-card.mjs.map +1 -1
  38. package/fesm2022/taiga-ui-addon-commerce-components-input-cvc.mjs +4 -9
  39. package/fesm2022/taiga-ui-addon-commerce-components-input-cvc.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-addon-commerce-components-input-expire.mjs +2 -5
  41. package/fesm2022/taiga-ui-addon-commerce-components-input-expire.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-addon-commerce-components-thumbnail-card.mjs +20 -20
  43. package/fesm2022/taiga-ui-addon-commerce-components-thumbnail-card.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-addon-commerce-components.mjs +1 -1
  45. package/fesm2022/taiga-ui-addon-commerce-constants.mjs +3 -3
  46. package/fesm2022/taiga-ui-addon-commerce-constants.mjs.map +1 -1
  47. package/fesm2022/taiga-ui-addon-commerce-pipes-amount.mjs +4 -3
  48. package/fesm2022/taiga-ui-addon-commerce-pipes-amount.mjs.map +1 -1
  49. package/fesm2022/taiga-ui-addon-commerce-pipes-decimal.mjs +34 -0
  50. package/fesm2022/taiga-ui-addon-commerce-pipes-decimal.mjs.map +1 -0
  51. package/fesm2022/taiga-ui-addon-commerce-pipes.mjs +1 -0
  52. package/fesm2022/taiga-ui-addon-commerce-pipes.mjs.map +1 -1
  53. package/fesm2022/taiga-ui-addon-commerce-tokens.mjs +1 -1
  54. package/fesm2022/taiga-ui-addon-commerce-tokens.mjs.map +1 -1
  55. package/package.json +21 -15
  56. package/pipes/decimal/decimal.pipe.d.ts +11 -0
  57. package/pipes/decimal/index.d.ts +1 -0
  58. package/pipes/index.d.ts +1 -0
  59. package/tokens/i18n.d.ts +2 -2
  60. package/components/input-card-grouped/index.d.ts +0 -3
  61. package/esm2022/components/input-card-grouped/index.mjs +0 -4
  62. package/esm2022/components/input-card-grouped/input-card-grouped.component.mjs +0 -288
  63. package/esm2022/components/input-card-grouped/input-card-grouped.options.mjs +0 -15
  64. package/esm2022/components/input-card-grouped/input-card-grouped.providers.mjs +0 -29
  65. package/esm2022/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.mjs +0 -5
  66. package/fesm2022/taiga-ui-addon-commerce-components-input-card-grouped.mjs +0 -328
  67. package/fesm2022/taiga-ui-addon-commerce-components-input-card-grouped.mjs.map +0 -1
@@ -0,0 +1,278 @@
1
+ import { __decorate } from "tslib";
2
+ import { NgIf } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, computed, EventEmitter, inject, Input, Output, ViewChild, } from '@angular/core';
4
+ import { toSignal } from '@angular/core/rxjs-interop';
5
+ import { FormsModule } from '@angular/forms';
6
+ import { MaskitoDirective } from '@maskito/angular';
7
+ import { WaResizeObserver } from '@ng-web-apis/resize-observer';
8
+ import { TUI_MASK_CARD, TUI_MASK_CVC, TUI_MASK_EXPIRE, } from '@taiga-ui/addon-commerce/constants';
9
+ import { TuiFormatCardPipe } from '@taiga-ui/addon-commerce/pipes';
10
+ import { TUI_PAYMENT_SYSTEM_ICONS } from '@taiga-ui/addon-commerce/tokens';
11
+ import { tuiAsControl, TuiControl } from '@taiga-ui/cdk/classes';
12
+ import { TUI_NON_DIGIT_REGEXP } from '@taiga-ui/cdk/constants';
13
+ import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
14
+ import { tuiHovered, TuiHoveredService } from '@taiga-ui/cdk/directives/hovered';
15
+ import { TuiLet } from '@taiga-ui/cdk/directives/let';
16
+ import { tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
17
+ import { TuiMapperPipe } from '@taiga-ui/cdk/pipes/mapper';
18
+ import { TuiIdService } from '@taiga-ui/cdk/services';
19
+ import { tuiInjectElement, tuiIsElement, tuiIsInput } from '@taiga-ui/cdk/utils/dom';
20
+ import { tuiIsNativeFocused, tuiIsNativeFocusedIn } from '@taiga-ui/cdk/utils/focus';
21
+ import { tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
22
+ import { tuiAsDataListHost } from '@taiga-ui/core/components/data-list';
23
+ import { TuiIcon, TuiIconPipe } from '@taiga-ui/core/components/icon';
24
+ import { TUI_TEXTFIELD_OPTIONS, TuiWithTextfieldDropdown, } from '@taiga-ui/core/components/textfield';
25
+ import { TuiAppearance, tuiAppearance, tuiAppearanceFocus, tuiAppearanceState, } from '@taiga-ui/core/directives/appearance';
26
+ import { TuiDropdownDirective, tuiDropdownOpen, tuiDropdownOptionsProvider, TuiWithDropdownOpen, } from '@taiga-ui/core/directives/dropdown';
27
+ import { TUI_COMMON_ICONS } from '@taiga-ui/core/tokens';
28
+ import { TuiChevron } from '@taiga-ui/kit/directives/chevron';
29
+ import { PolymorpheusOutlet, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
30
+ import { map, merge } from 'rxjs';
31
+ import { TUI_INPUT_CARD_GROUP_OPTIONS } from './input-card-group.options';
32
+ import { TUI_INPUT_CARD_GROUP_TEXTS } from './input-card-group.providers';
33
+ import * as i0 from "@angular/core";
34
+ import * as i1 from "@taiga-ui/core/directives/appearance";
35
+ import * as i2 from "@taiga-ui/core/directives/dropdown";
36
+ import * as i3 from "@taiga-ui/core/components/textfield";
37
+ import * as i4 from "@angular/forms";
38
+ class TuiInputCardGroup extends TuiControl {
39
+ constructor() {
40
+ super(...arguments);
41
+ this.expirePrefilled = false;
42
+ this.paymentSystems = inject(TUI_PAYMENT_SYSTEM_ICONS);
43
+ this.options = inject(TUI_INPUT_CARD_GROUP_OPTIONS);
44
+ this.el = tuiInjectElement();
45
+ this.hover = tuiHovered();
46
+ this.focusedIn = toSignal(merge(tuiTypedFromEvent(this.el, 'focusin'), tuiTypedFromEvent(this.el, 'focusout')).pipe(map(() => tuiIsNativeFocusedIn(this.el))), { initialValue: false });
47
+ this.exampleTextCVC = this.options.exampleTextCVC;
48
+ this.cvcHidden = this.options.cvcHidden;
49
+ this.maskCVC = TUI_MASK_CVC(3);
50
+ this.dropdown = inject(TuiDropdownDirective);
51
+ this.maskCard = TUI_MASK_CARD;
52
+ this.maskExpire = TUI_MASK_EXPIRE;
53
+ this.icons = inject(TUI_COMMON_ICONS);
54
+ this.texts = toSignal(inject(TUI_INPUT_CARD_GROUP_TEXTS));
55
+ this.open = tuiDropdownOpen();
56
+ this.appearance = tuiAppearance(inject(TUI_TEXTFIELD_OPTIONS).appearance);
57
+ this.state = tuiAppearanceState(
58
+ // eslint-disable-next-line no-nested-ternary
59
+ computed(() => (this.disabled() ? 'disabled' : this.hover() ? 'hover' : null)));
60
+ this.focus = tuiAppearanceFocus(computed(() => this.open() || this.focusedIn()));
61
+ this.labelRaised = computed(() => (this.focus() && !this.readOnly()) || !!this.value()?.card);
62
+ this.hasCleaner = computed(() => !!this.value()?.card && this.interactive());
63
+ this.exampleText = this.options.exampleText;
64
+ this.cardValidator = this.options.cardValidator;
65
+ this.icon = this.options.icon;
66
+ this.id = inject(TuiIdService).generate();
67
+ this.autocomplete = this.options.autocomplete;
68
+ this.binChange = new EventEmitter();
69
+ }
70
+ set codeLength(length) {
71
+ this.exampleTextCVC = '0'.repeat(length);
72
+ this.maskCVC = TUI_MASK_CVC(length);
73
+ }
74
+ get bin() {
75
+ return this.card.length < 6 ? null : this.card.slice(0, 6);
76
+ }
77
+ writeValue(value) {
78
+ const { bin } = this;
79
+ super.writeValue(value);
80
+ this.updateBin(bin);
81
+ this.expirePrefilled = !!this.expire && this.cardPrefilled;
82
+ }
83
+ /** Public API for manual focus management */
84
+ focusCard() {
85
+ this.inputCard?.nativeElement.focus({ preventScroll: true });
86
+ }
87
+ focusExpire() {
88
+ this.inputExpire?.nativeElement.focus({ preventScroll: true });
89
+ }
90
+ focusCVC() {
91
+ this.inputCVC?.nativeElement.focus({ preventScroll: true });
92
+ }
93
+ handleOption(option) {
94
+ const { card = '', expire = '', cvc = '' } = option || {};
95
+ const { bin } = this;
96
+ const element = (!card && this.inputCard?.nativeElement) ||
97
+ (!expire && this.inputExpire?.nativeElement) ||
98
+ this.inputCVC?.nativeElement;
99
+ this.onChange({ card, expire, cvc });
100
+ this.updateBin(bin);
101
+ this.open.set(false);
102
+ this.expirePrefilled = !!expire;
103
+ element?.focus();
104
+ }
105
+ clear() {
106
+ this.expirePrefilled = false;
107
+ this.onChange(null);
108
+ this.focusCard();
109
+ }
110
+ get content() {
111
+ const system = this.getPaymentSystem(this.card);
112
+ return this.icon || (system && this.paymentSystems[system]);
113
+ }
114
+ get card() {
115
+ return this.value()?.card || '';
116
+ }
117
+ get expire() {
118
+ return this.value()?.expire || '';
119
+ }
120
+ get cvc() {
121
+ return this.value()?.cvc || '';
122
+ }
123
+ get cardCollapsed() {
124
+ return (this.isFocusable(this.card) &&
125
+ !tuiIsNativeFocused(this.inputCard?.nativeElement));
126
+ }
127
+ get tailLength() {
128
+ return this.card.length % 4 > 0 ? 5 : 4;
129
+ }
130
+ get cardPrefilled() {
131
+ return !!this.card.match(TUI_NON_DIGIT_REGEXP);
132
+ }
133
+ get cvcPrefilled() {
134
+ return !!this.cvc.match(TUI_NON_DIGIT_REGEXP);
135
+ }
136
+ get cardFocusable() {
137
+ return !this.cardPrefilled;
138
+ }
139
+ get expireFocusable() {
140
+ return this.isFocusable(this.card) && !this.expirePrefilled;
141
+ }
142
+ get cvcFocusable() {
143
+ return this.isFocusable(this.card);
144
+ }
145
+ get masked() {
146
+ return this.cardPrefilled ? `*${this.card.slice(-4)}` : '*';
147
+ }
148
+ onCardChange(card) {
149
+ const { value, bin } = this;
150
+ const parsed = card.split(' ').join('');
151
+ if (value()?.card === parsed) {
152
+ return;
153
+ }
154
+ this.updateProperty(parsed, 'card');
155
+ this.updateBin(bin);
156
+ if (this.cardValidator(this.card) && !value()?.expire && this.inputExpire) {
157
+ this.focusExpire();
158
+ }
159
+ }
160
+ onExpireChange(expire) {
161
+ this.updateProperty(expire, 'expire');
162
+ if (Number(this.inputExpire?.nativeElement.selectionStart) === 5 // MM/YY
163
+ ) {
164
+ this.focusCVC();
165
+ }
166
+ }
167
+ onCVCChange(cvc) {
168
+ this.updateProperty(cvc, 'cvc');
169
+ }
170
+ transform({ offsetWidth }) {
171
+ return this.cardCollapsed ? `translate3d(${offsetWidth}px, 0, 0)` : '';
172
+ }
173
+ onMouseDown(event) {
174
+ if (tuiIsElement(event.target) && tuiIsInput(event.target)) {
175
+ return;
176
+ }
177
+ event.preventDefault();
178
+ this.focusInput();
179
+ }
180
+ toggle() {
181
+ this.open.set(!this.open());
182
+ }
183
+ isFocusable(card) {
184
+ return this.cardValidator(card) || this.cardPrefilled;
185
+ }
186
+ getPaymentSystem(value) {
187
+ return this.options.paymentSystemHandler(value);
188
+ }
189
+ updateBin(oldBin) {
190
+ const { bin } = this;
191
+ if (bin !== oldBin && !this.cardPrefilled) {
192
+ this.binChange.emit(bin);
193
+ }
194
+ }
195
+ updateProperty(value, propName) {
196
+ const { card = '', expire = '', cvc = '' } = this.value() || {};
197
+ const newValue = { card, expire, cvc };
198
+ newValue[propName] = value;
199
+ this.onChange(newValue.expire || newValue.cvc || newValue.card ? newValue : null);
200
+ }
201
+ focusInput() {
202
+ const element = (this.cardFocusable && this.inputCard?.nativeElement) ||
203
+ (this.expireFocusable && this.inputExpire?.nativeElement) ||
204
+ this.inputCVC?.nativeElement;
205
+ element?.focus();
206
+ }
207
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputCardGroup, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
208
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputCardGroup, isStandalone: true, selector: "tui-input-card-group", inputs: { exampleText: "exampleText", cardValidator: "cardValidator", icon: "icon", id: "id", autocomplete: "autocomplete", codeLength: "codeLength" }, outputs: { binChange: "binChange" }, host: { attributes: { "data-size": "l" }, listeners: { "mousedown": "onMouseDown($event)" }, properties: { "attr.data-mode": "mode()" } }, providers: [
209
+ tuiAsDataListHost(TuiInputCardGroup),
210
+ tuiAsControl(TuiInputCardGroup),
211
+ tuiDropdownOptionsProvider({ limitWidth: 'fixed' }),
212
+ TuiHoveredService,
213
+ ], viewQueries: [{ propertyName: "inputCard", first: true, predicate: ["inputCard"], descendants: true }, { propertyName: "inputExpire", first: true, predicate: ["inputExpire"], descendants: true }, { propertyName: "inputCVC", first: true, predicate: ["inputCVC"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.TuiAppearance }, { directive: i2.TuiDropdownDirective }, { directive: i3.TuiWithTextfieldDropdown }, { directive: i2.TuiWithDropdownOpen }], ngImport: i0, template: "<div class=\"t-wrapper\">\n <label\n *tuiLet=\"value()?.card | tuiFormatCard: cardPrefilled as formattedCard\"\n (click.silent.prevent)=\"(0)\"\n >\n <input\n #inputCard\n automation-id=\"tui-input-card-group__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]=\"id + '_card'\"\n [autocomplete]=\"autocomplete ? 'cc-number' : 'off'\"\n [class.t-input_hidden]=\"!card.length && focus()\"\n [class.t-input_inert]=\"cardPrefilled\"\n [disabled]=\"disabled()\"\n [maskito]=\"maskCard\"\n [ngModel]=\"formattedCard\"\n [placeholder]=\"cardPrefilled ? '' : exampleText\"\n [readOnly]=\"readOnly()\"\n [tabIndex]=\"cardFocusable ? 0 : -1\"\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]=\"cardCollapsed\"\n (waResizeObserver)=\"(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 <div\n class=\"t-label\"\n [class.t-label_raised]=\"labelRaised()\"\n >\n {{ texts()?.cardNumberText }}\n </div>\n </label>\n</div>\n<div\n class=\"t-wrapper t-wrapper_expire\"\n [class.t-wrapper_active]=\"cardCollapsed\"\n>\n <label (click.silent.prevent)=\"(0)\">\n <input\n #inputExpire\n automation-id=\"tui-input-card-group__expire\"\n inputmode=\"numeric\"\n placeholder=\"00/00\"\n translate=\"no\"\n class=\"t-input\"\n [attr.id]=\"id + '_expire'\"\n [attr.name]=\"autocomplete ? 'ccexpiryyear' : null\"\n [autocomplete]=\"autocomplete ? 'cc-exp' : 'off'\"\n [class.t-input_inert]=\"!expireFocusable\"\n [disabled]=\"disabled()\"\n [maskito]=\"maskExpire\"\n [ngModel]=\"expire\"\n [readOnly]=\"readOnly()\"\n [tabIndex]=\"expireFocusable ? 0 : -1\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onExpireChange($event)\"\n />\n <div\n class=\"t-label\"\n [class.t-label_raised]=\"labelRaised()\"\n >\n {{ texts()?.expiryText }}\n </div>\n </label>\n</div>\n<div\n class=\"t-wrapper t-wrapper_cvc\"\n [class.t-wrapper_active]=\"cardCollapsed\"\n>\n <label (click.silent.prevent)=\"(0)\">\n <input\n #inputCVC\n automation-id=\"tui-input-card-group__cvc\"\n inputmode=\"numeric\"\n translate=\"no\"\n type=\"text\"\n class=\"t-input\"\n [attr.id]=\"id + '_cvc'\"\n [autocomplete]=\"autocomplete ? 'cc-csc' : 'off'\"\n [class.t-input_cvc_hidden]=\"cvcHidden\"\n [class.t-input_prefilled]=\"cvcPrefilled\"\n [disabled]=\"disabled()\"\n [maskito]=\"maskCVC\"\n [ngModel]=\"cvc\"\n [placeholder]=\"cvcPrefilled ? '\u2022\u2022\u2022' : exampleTextCVC\"\n [readOnly]=\"readOnly() || cvcPrefilled\"\n [tabIndex]=\"cvcFocusable ? 0 : -1\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onCVCChange($event)\"\n />\n <div\n class=\"t-label\"\n [class.t-label_raised]=\"labelRaised()\"\n >\n {{ texts()?.cvcText }}\n </div>\n </label>\n</div>\n<div class=\"t-icons\">\n <div\n *ngIf=\"content\"\n class=\"t-icon-outlet\"\n >\n <img\n *polymorpheusOutlet=\"content as src\"\n alt=\"\"\n automation-id=\"tui-input-card-group__icon\"\n class=\"t-card\"\n [src]=\"src | tuiIcon\"\n />\n </div>\n <tui-icon\n *ngIf=\"hasCleaner()\"\n automation-id=\"tui-input-card-group__cleaner\"\n tuiAppearance=\"icon\"\n class=\"t-icon\"\n [icon]=\"icons.close\"\n (click)=\"clear()\"\n />\n <tui-icon\n *ngIf=\"dropdown.content\"\n automation-id=\"tui-input-card-group__dropdown\"\n tuiAppearance=\"icon\"\n tuiChevron\n (click)=\"toggle()\"\n />\n</div>\n", styles: [":host{position:relative;display:block;height:var(--tui-height-l);width:29.5rem;border-radius:var(--tui-radius-l);overflow:clip}:host :host-context(tui-root._mobile){width:18rem}.t-outline{height:100%;width:100%}.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}.t-collapsed{position:absolute;top:0;left:0;width:100%;height:100%;padding:1.25rem var(--tui-padding-l) 0;box-sizing:border-box;font:var(--tui-font-text-s);line-height:2.25rem;color:var(--tui-text-primary);white-space:nowrap;pointer-events: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{position:absolute;top:0;left:0;width:100%;height:100%;border:0;margin:0;padding:1.25rem var(--tui-padding-l) 0;outline:none;background:transparent;box-sizing:border-box;font:var(--tui-font-text-s);color:var(--tui-text-primary)}.t-input::placeholder{color:var(--tui-text-tertiary)}.t-input.t-input.t-input_card:not(.t-input_hidden),.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{caret-color:var(--tui-text-primary);color:transparent!important;-webkit-text-fill-color:transparent!important}.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-input_cvc_hidden{-webkit-text-security:disc}@supports (-webkit-touch-callout: none){.t-input:active{font-size:1rem}}.t-icons{position:absolute;right:.75rem;display:flex;align-items:center;height:100%}.t-icon-outlet{display:flex;margin-right:.25rem}.t-icon{cursor:pointer;border:.25rem solid transparent}.t-label{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:1.125rem 1rem;font:var(--tui-font-text-m);line-height:1.25rem;color:var(--tui-text-secondary)}.t-label_raised{font-size:.8156rem;transform:translateY(-.7em)}:host([data-mode=\"invalid\"]) .t-label{color:var(--tui-text-negative)}:host([data-focus=\"true\"]) .t-label{color:var(--tui-text-primary)}.t-ghost{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MaskitoDirective, selector: "[maskito]", inputs: ["maskito", "maskitoElement"] }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "pipe", type: TuiFormatCardPipe, name: "tuiFormatCard" }, { kind: "pipe", type: TuiMapperPipe, name: "tuiMapper" }, { kind: "directive", type: TuiLet, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }, { kind: "directive", type: TuiAppearance, selector: "[tuiAppearance]", inputs: ["tuiAppearance", "tuiAppearanceState", "tuiAppearanceFocus"] }, { kind: "pipe", type: TuiIconPipe, name: "tuiIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
214
+ }
215
+ __decorate([
216
+ tuiPure
217
+ ], TuiInputCardGroup.prototype, "isFocusable", null);
218
+ __decorate([
219
+ tuiPure
220
+ ], TuiInputCardGroup.prototype, "getPaymentSystem", null);
221
+ export { TuiInputCardGroup };
222
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputCardGroup, decorators: [{
223
+ type: Component,
224
+ args: [{ standalone: true, selector: 'tui-input-card-group', imports: [
225
+ NgIf,
226
+ FormsModule,
227
+ MaskitoDirective,
228
+ WaResizeObserver,
229
+ PolymorpheusOutlet,
230
+ PolymorpheusTemplate,
231
+ TuiActiveZone,
232
+ TuiFormatCardPipe,
233
+ TuiMapperPipe,
234
+ TuiLet,
235
+ TuiIcon,
236
+ TuiChevron,
237
+ TuiAppearance,
238
+ TuiIconPipe,
239
+ ], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
240
+ tuiAsDataListHost(TuiInputCardGroup),
241
+ tuiAsControl(TuiInputCardGroup),
242
+ tuiDropdownOptionsProvider({ limitWidth: 'fixed' }),
243
+ TuiHoveredService,
244
+ ], hostDirectives: [
245
+ TuiAppearance,
246
+ TuiDropdownDirective,
247
+ TuiWithTextfieldDropdown,
248
+ TuiWithDropdownOpen,
249
+ ], host: {
250
+ 'data-size': 'l',
251
+ '[attr.data-mode]': 'mode()',
252
+ '(mousedown)': 'onMouseDown($event)',
253
+ }, template: "<div class=\"t-wrapper\">\n <label\n *tuiLet=\"value()?.card | tuiFormatCard: cardPrefilled as formattedCard\"\n (click.silent.prevent)=\"(0)\"\n >\n <input\n #inputCard\n automation-id=\"tui-input-card-group__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]=\"id + '_card'\"\n [autocomplete]=\"autocomplete ? 'cc-number' : 'off'\"\n [class.t-input_hidden]=\"!card.length && focus()\"\n [class.t-input_inert]=\"cardPrefilled\"\n [disabled]=\"disabled()\"\n [maskito]=\"maskCard\"\n [ngModel]=\"formattedCard\"\n [placeholder]=\"cardPrefilled ? '' : exampleText\"\n [readOnly]=\"readOnly()\"\n [tabIndex]=\"cardFocusable ? 0 : -1\"\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]=\"cardCollapsed\"\n (waResizeObserver)=\"(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 <div\n class=\"t-label\"\n [class.t-label_raised]=\"labelRaised()\"\n >\n {{ texts()?.cardNumberText }}\n </div>\n </label>\n</div>\n<div\n class=\"t-wrapper t-wrapper_expire\"\n [class.t-wrapper_active]=\"cardCollapsed\"\n>\n <label (click.silent.prevent)=\"(0)\">\n <input\n #inputExpire\n automation-id=\"tui-input-card-group__expire\"\n inputmode=\"numeric\"\n placeholder=\"00/00\"\n translate=\"no\"\n class=\"t-input\"\n [attr.id]=\"id + '_expire'\"\n [attr.name]=\"autocomplete ? 'ccexpiryyear' : null\"\n [autocomplete]=\"autocomplete ? 'cc-exp' : 'off'\"\n [class.t-input_inert]=\"!expireFocusable\"\n [disabled]=\"disabled()\"\n [maskito]=\"maskExpire\"\n [ngModel]=\"expire\"\n [readOnly]=\"readOnly()\"\n [tabIndex]=\"expireFocusable ? 0 : -1\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onExpireChange($event)\"\n />\n <div\n class=\"t-label\"\n [class.t-label_raised]=\"labelRaised()\"\n >\n {{ texts()?.expiryText }}\n </div>\n </label>\n</div>\n<div\n class=\"t-wrapper t-wrapper_cvc\"\n [class.t-wrapper_active]=\"cardCollapsed\"\n>\n <label (click.silent.prevent)=\"(0)\">\n <input\n #inputCVC\n automation-id=\"tui-input-card-group__cvc\"\n inputmode=\"numeric\"\n translate=\"no\"\n type=\"text\"\n class=\"t-input\"\n [attr.id]=\"id + '_cvc'\"\n [autocomplete]=\"autocomplete ? 'cc-csc' : 'off'\"\n [class.t-input_cvc_hidden]=\"cvcHidden\"\n [class.t-input_prefilled]=\"cvcPrefilled\"\n [disabled]=\"disabled()\"\n [maskito]=\"maskCVC\"\n [ngModel]=\"cvc\"\n [placeholder]=\"cvcPrefilled ? '\u2022\u2022\u2022' : exampleTextCVC\"\n [readOnly]=\"readOnly() || cvcPrefilled\"\n [tabIndex]=\"cvcFocusable ? 0 : -1\"\n (focus)=\"(0)\"\n (ngModelChange)=\"onCVCChange($event)\"\n />\n <div\n class=\"t-label\"\n [class.t-label_raised]=\"labelRaised()\"\n >\n {{ texts()?.cvcText }}\n </div>\n </label>\n</div>\n<div class=\"t-icons\">\n <div\n *ngIf=\"content\"\n class=\"t-icon-outlet\"\n >\n <img\n *polymorpheusOutlet=\"content as src\"\n alt=\"\"\n automation-id=\"tui-input-card-group__icon\"\n class=\"t-card\"\n [src]=\"src | tuiIcon\"\n />\n </div>\n <tui-icon\n *ngIf=\"hasCleaner()\"\n automation-id=\"tui-input-card-group__cleaner\"\n tuiAppearance=\"icon\"\n class=\"t-icon\"\n [icon]=\"icons.close\"\n (click)=\"clear()\"\n />\n <tui-icon\n *ngIf=\"dropdown.content\"\n automation-id=\"tui-input-card-group__dropdown\"\n tuiAppearance=\"icon\"\n tuiChevron\n (click)=\"toggle()\"\n />\n</div>\n", styles: [":host{position:relative;display:block;height:var(--tui-height-l);width:29.5rem;border-radius:var(--tui-radius-l);overflow:clip}:host :host-context(tui-root._mobile){width:18rem}.t-outline{height:100%;width:100%}.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}.t-collapsed{position:absolute;top:0;left:0;width:100%;height:100%;padding:1.25rem var(--tui-padding-l) 0;box-sizing:border-box;font:var(--tui-font-text-s);line-height:2.25rem;color:var(--tui-text-primary);white-space:nowrap;pointer-events: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{position:absolute;top:0;left:0;width:100%;height:100%;border:0;margin:0;padding:1.25rem var(--tui-padding-l) 0;outline:none;background:transparent;box-sizing:border-box;font:var(--tui-font-text-s);color:var(--tui-text-primary)}.t-input::placeholder{color:var(--tui-text-tertiary)}.t-input.t-input.t-input_card:not(.t-input_hidden),.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{caret-color:var(--tui-text-primary);color:transparent!important;-webkit-text-fill-color:transparent!important}.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-input_cvc_hidden{-webkit-text-security:disc}@supports (-webkit-touch-callout: none){.t-input:active{font-size:1rem}}.t-icons{position:absolute;right:.75rem;display:flex;align-items:center;height:100%}.t-icon-outlet{display:flex;margin-right:.25rem}.t-icon{cursor:pointer;border:.25rem solid transparent}.t-label{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:1.125rem 1rem;font:var(--tui-font-text-m);line-height:1.25rem;color:var(--tui-text-secondary)}.t-label_raised{font-size:.8156rem;transform:translateY(-.7em)}:host([data-mode=\"invalid\"]) .t-label{color:var(--tui-text-negative)}:host([data-focus=\"true\"]) .t-label{color:var(--tui-text-primary)}.t-ghost{visibility:hidden}\n"] }]
254
+ }], propDecorators: { inputCard: [{
255
+ type: ViewChild,
256
+ args: ['inputCard']
257
+ }], inputExpire: [{
258
+ type: ViewChild,
259
+ args: ['inputExpire']
260
+ }], inputCVC: [{
261
+ type: ViewChild,
262
+ args: ['inputCVC']
263
+ }], exampleText: [{
264
+ type: Input
265
+ }], cardValidator: [{
266
+ type: Input
267
+ }], icon: [{
268
+ type: Input
269
+ }], id: [{
270
+ type: Input
271
+ }], autocomplete: [{
272
+ type: Input
273
+ }], binChange: [{
274
+ type: Output
275
+ }], codeLength: [{
276
+ type: Input
277
+ }], isFocusable: [], getPaymentSystem: [] } });
278
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQtZ3JvdXAvaW5wdXQtY2FyZC1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQtZ3JvdXAvaW5wdXQtY2FyZC1ncm91cC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFckMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQ0gsYUFBYSxFQUNiLFlBQVksRUFDWixlQUFlLEdBQ2xCLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFekUsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVB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IjpbImltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtFbGVtZW50UmVmLCBTaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgY29tcHV0ZWQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TWFza2l0b0RpcmVjdGl2ZX0gZnJvbSAnQG1hc2tpdG8vYW5ndWxhcic7XG5pbXBvcnQge1dhUmVzaXplT2JzZXJ2ZXJ9IGZyb20gJ0BuZy13ZWItYXBpcy9yZXNpemUtb2JzZXJ2ZXInO1xuaW1wb3J0IHtcbiAgICBUVUlfTUFTS19DQVJELFxuICAgIFRVSV9NQVNLX0NWQyxcbiAgICBUVUlfTUFTS19FWFBJUkUsXG59IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlGb3JtYXRDYXJkUGlwZX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL3BpcGVzJztcbmltcG9ydCB7VFVJX1BBWU1FTlRfU1lTVEVNX0lDT05TfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtUdWlQYXltZW50U3lzdGVtfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuaW1wb3J0IHt0dWlBc0NvbnRyb2wsIFR1aUNvbnRyb2x9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1RVSV9OT05fRElHSVRfUkVHRVhQfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUFjdGl2ZVpvbmV9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9hY3RpdmUtem9uZSc7XG5pbXBvcnQge3R1aUhvdmVyZWQsIFR1aUhvdmVyZWRTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvaG92ZXJlZCc7XG5pbXBvcnQge1R1aUxldH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2xldCc7XG5pbXBvcnQge3R1aVR5cGVkRnJvbUV2ZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7VHVpTWFwcGVyUGlwZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9waXBlcy9tYXBwZXInO1xuaW1wb3J0IHtUdWlJZFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHR5cGUge1R1aUJvb2xlYW5IYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudCwgdHVpSXNFbGVtZW50LCB0dWlJc0lucHV0fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUlzTmF0aXZlRm9jdXNlZCwgdHVpSXNOYXRpdmVGb2N1c2VkSW59IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZm9jdXMnO1xuaW1wb3J0IHt0dWlQdXJlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHR5cGUge1R1aURhdGFMaXN0SG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHt0dWlBc0RhdGFMaXN0SG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlJY29uLCBUdWlJY29uUGlwZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7XG4gICAgVFVJX1RFWFRGSUVMRF9PUFRJT05TLFxuICAgIFR1aVdpdGhUZXh0ZmllbGREcm9wZG93bixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQnO1xuaW1wb3J0IHtcbiAgICBUdWlBcHBlYXJhbmNlLFxuICAgIHR1aUFwcGVhcmFuY2UsXG4gICAgdHVpQXBwZWFyYW5jZUZvY3VzLFxuICAgIHR1aUFwcGVhcmFuY2VTdGF0ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9hcHBlYXJhbmNlJztcbmltcG9ydCB7XG4gICAgVHVpRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgdHVpRHJvcGRvd25PcGVuLFxuICAgIHR1aURyb3Bkb3duT3B0aW9uc1Byb3ZpZGVyLFxuICAgIFR1aVdpdGhEcm9wZG93bk9wZW4sXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHtUVUlfQ09NTU9OX0lDT05TfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUdWlDaGV2cm9ufSBmcm9tICdAdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMvY2hldnJvbic7XG5pbXBvcnQgdHlwZSB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c091dGxldCwgUG9seW1vcnBoZXVzVGVtcGxhdGV9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHttYXAsIG1lcmdlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfSU5QVVRfQ0FSRF9HUk9VUF9PUFRJT05TfSBmcm9tICcuL2lucHV0LWNhcmQtZ3JvdXAub3B0aW9ucyc7XG5pbXBvcnQge1RVSV9JTlBVVF9DQVJEX0dST1VQX1RFWFRTfSBmcm9tICcuL2lucHV0LWNhcmQtZ3JvdXAucHJvdmlkZXJzJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlDYXJkIHtcbiAgICBjYXJkOiBzdHJpbmc7XG4gICAgY3ZjOiBzdHJpbmc7XG4gICAgZXhwaXJlOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtY2FyZC1ncm91cCcsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ0lmLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTWFza2l0b0RpcmVjdGl2ZSxcbiAgICAgICAgV2FSZXNpemVPYnNlcnZlcixcbiAgICAgICAgUG9seW1vcnBoZXVzT3V0bGV0LFxuICAgICAgICBQb2x5bW9ycGhldXNUZW1wbGF0ZSxcbiAgICAgICAgVHVpQWN0aXZlWm9uZSxcbiAgICAgICAgVHVpRm9ybWF0Q2FyZFBpcGUsXG4gICAgICAgIFR1aU1hcHBlclBpcGUsXG4gICAgICAgIFR1aUxldCxcbiAgICAgICAgVHVpSWNvbixcbiAgICAgICAgVHVpQ2hldnJvbixcbiAgICAgICAgVHVpQXBwZWFyYW5jZSxcbiAgICAgICAgVHVpSWNvblBpcGUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtY2FyZC1ncm91cC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1jYXJkLWdyb3VwLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNEYXRhTGlzdEhvc3QoVHVpSW5wdXRDYXJkR3JvdXApLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpSW5wdXRDYXJkR3JvdXApLFxuICAgICAgICB0dWlEcm9wZG93bk9wdGlvbnNQcm92aWRlcih7bGltaXRXaWR0aDogJ2ZpeGVkJ30pLFxuICAgICAgICBUdWlIb3ZlcmVkU2VydmljZSxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIFR1aUFwcGVhcmFuY2UsXG4gICAgICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgICAgICBUdWlXaXRoVGV4dGZpZWxkRHJvcGRvd24sXG4gICAgICAgIFR1aVdpdGhEcm9wZG93bk9wZW4sXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdkYXRhLXNpemUnOiAnbCcsXG4gICAgICAgICdbYXR0ci5kYXRhLW1vZGVdJzogJ21vZGUoKScsXG4gICAgICAgICcobW91c2Vkb3duKSc6ICdvbk1vdXNlRG93bigkZXZlbnQpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dENhcmRHcm91cFxuICAgIGV4dGVuZHMgVHVpQ29udHJvbDxUdWlDYXJkIHwgbnVsbD5cbiAgICBpbXBsZW1lbnRzIFR1aURhdGFMaXN0SG9zdDxQYXJ0aWFsPFR1aUNhcmQ+Plxue1xuICAgIEBWaWV3Q2hpbGQoJ2lucHV0Q2FyZCcpXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dENhcmQ/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRFeHBpcmUnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRFeHBpcmU/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRDVkMnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRDVkM/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgcHJpdmF0ZSBleHBpcmVQcmVmaWxsZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBheW1lbnRTeXN0ZW1zID0gaW5qZWN0KFRVSV9QQVlNRU5UX1NZU1RFTV9JQ09OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9JTlBVVF9DQVJEX0dST1VQX09QVElPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZWwgPSB0dWlJbmplY3RFbGVtZW50KCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBob3ZlciA9IHR1aUhvdmVyZWQoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvY3VzZWRJbiA9IHRvU2lnbmFsKFxuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZWwsICdmb2N1c2luJyksXG4gICAgICAgICAgICB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmVsLCAnZm9jdXNvdXQnKSxcbiAgICAgICAgKS5waXBlKG1hcCgoKSA9PiB0dWlJc05hdGl2ZUZvY3VzZWRJbih0aGlzLmVsKSkpLFxuICAgICAgICB7aW5pdGlhbFZhbHVlOiBmYWxzZX0sXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCBleGFtcGxlVGV4dENWQyA9IHRoaXMub3B0aW9ucy5leGFtcGxlVGV4dENWQztcbiAgICBwcm90ZWN0ZWQgY3ZjSGlkZGVuID0gdGhpcy5vcHRpb25zLmN2Y0hpZGRlbjtcbiAgICBwcm90ZWN0ZWQgbWFza0NWQyA9IFRVSV9NQVNLX0NWQygzKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZHJvcGRvd24gPSBpbmplY3QoVHVpRHJvcGRvd25EaXJlY3RpdmUpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBtYXNrQ2FyZCA9IFRVSV9NQVNLX0NBUkQ7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1hc2tFeHBpcmUgPSBUVUlfTUFTS19FWFBJUkU7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXh0cyA9IHRvU2lnbmFsKGluamVjdChUVUlfSU5QVVRfQ0FSRF9HUk9VUF9URVhUUykpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBvcGVuID0gdHVpRHJvcGRvd25PcGVuKCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBwZWFyYW5jZSA9IHR1aUFwcGVhcmFuY2UoXG4gICAgICAgIGluamVjdChUVUlfVEVYVEZJRUxEX09QVElPTlMpLmFwcGVhcmFuY2UsXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBzdGF0ZTogU2lnbmFsPHVua25vd24+ID0gdHVpQXBwZWFyYW5jZVN0YXRlKFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmVzdGVkLXRlcm5hcnlcbiAgICAgICAgY29tcHV0ZWQoKCkgPT4gKHRoaXMuZGlzYWJsZWQoKSA/ICdkaXNhYmxlZCcgOiB0aGlzLmhvdmVyKCkgPyAnaG92ZXInIDogbnVsbCkpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZm9jdXMgPSB0dWlBcHBlYXJhbmNlRm9jdXMoXG4gICAgICAgIGNvbXB1dGVkKCgpID0+IHRoaXMub3BlbigpIHx8IHRoaXMuZm9jdXNlZEluKCkpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGFiZWxSYWlzZWQgPSBjb21wdXRlZChcbiAgICAgICAgKCkgPT4gKHRoaXMuZm9jdXMoKSAmJiAhdGhpcy5yZWFkT25seSgpKSB8fCAhIXRoaXMudmFsdWUoKT8uY2FyZCxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhhc0NsZWFuZXIgPSBjb21wdXRlZChcbiAgICAgICAgKCkgPT4gISF0aGlzLnZhbHVlKCk/LmNhcmQgJiYgdGhpcy5pbnRlcmFjdGl2ZSgpLFxuICAgICk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBleGFtcGxlVGV4dCA9IHRoaXMub3B0aW9ucy5leGFtcGxlVGV4dDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGNhcmRWYWxpZGF0b3I6IFR1aUJvb2xlYW5IYW5kbGVyPHN0cmluZz4gPSB0aGlzLm9wdGlvbnMuY2FyZFZhbGlkYXRvcjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGljb246IFBvbHltb3JwaGV1c0NvbnRlbnQgPSB0aGlzLm9wdGlvbnMuaWNvbjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGlkID0gaW5qZWN0KFR1aUlkU2VydmljZSkuZ2VuZXJhdGUoKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF1dG9jb21wbGV0ZSA9IHRoaXMub3B0aW9ucy5hdXRvY29tcGxldGU7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcmVhZG9ubHkgYmluQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCBudWxsPigpO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IGNvZGVMZW5ndGgobGVuZ3RoOiAzIHwgNCkge1xuICAgICAgICB0aGlzLmV4YW1wbGVUZXh0Q1ZDID0gJzAnLnJlcGVhdChsZW5ndGgpO1xuICAgICAgICB0aGlzLm1hc2tDVkMgPSBUVUlfTUFTS19DVkMobGVuZ3RoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGJpbigpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FyZC5sZW5ndGggPCA2ID8gbnVsbCA6IHRoaXMuY2FyZC5zbGljZSgwLCA2KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogVHVpQ2FyZCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2Jpbn0gPSB0aGlzO1xuXG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLnVwZGF0ZUJpbihiaW4pO1xuICAgICAgICB0aGlzLmV4cGlyZVByZWZpbGxlZCA9ICEhdGhpcy5leHBpcmUgJiYgdGhpcy5jYXJkUHJlZmlsbGVkO1xuICAgIH1cblxuICAgIC8qKiBQdWJsaWMgQVBJIGZvciBtYW51YWwgZm9jdXMgbWFuYWdlbWVudCAqL1xuICAgIHB1YmxpYyBmb2N1c0NhcmQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRDYXJkPy5uYXRpdmVFbGVtZW50LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGZvY3VzRXhwaXJlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0RXhwaXJlPy5uYXRpdmVFbGVtZW50LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGZvY3VzQ1ZDKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0Q1ZDPy5uYXRpdmVFbGVtZW50LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZU9wdGlvbihvcHRpb246IFBhcnRpYWw8VHVpQ2FyZD4gfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtjYXJkID0gJycsIGV4cGlyZSA9ICcnLCBjdmMgPSAnJ30gPSBvcHRpb24gfHwge307XG4gICAgICAgIGNvbnN0IHtiaW59ID0gdGhpcztcbiAgICAgICAgY29uc3QgZWxlbWVudCA9XG4gICAgICAgICAgICAoIWNhcmQgJiYgdGhpcy5pbnB1dENhcmQ/Lm5hdGl2ZUVsZW1lbnQpIHx8XG4gICAgICAgICAgICAoIWV4cGlyZSAmJiB0aGlzLmlucHV0RXhwaXJlPy5uYXRpdmVFbGVtZW50KSB8fFxuICAgICAgICAgICAgdGhpcy5pbnB1dENWQz8ubmF0aXZlRWxlbWVudDtcblxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHtjYXJkLCBleHBpcmUsIGN2Y30pO1xuICAgICAgICB0aGlzLnVwZGF0ZUJpbihiaW4pO1xuICAgICAgICB0aGlzLm9wZW4uc2V0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5leHBpcmVQcmVmaWxsZWQgPSAhIWV4cGlyZTtcblxuICAgICAgICBlbGVtZW50Py5mb2N1cygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5leHBpcmVQcmVmaWxsZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZShudWxsKTtcbiAgICAgICAgdGhpcy5mb2N1c0NhcmQoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGNvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIGNvbnN0IHN5c3RlbSA9IHRoaXMuZ2V0UGF5bWVudFN5c3RlbSh0aGlzLmNhcmQpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmljb24gfHwgKHN5c3RlbSAmJiB0aGlzLnBheW1lbnRTeXN0ZW1zW3N5c3RlbV0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgY2FyZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZSgpPy5jYXJkIHx8ICcnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgZXhwaXJlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlKCk/LmV4cGlyZSB8fCAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGN2YygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZSgpPy5jdmMgfHwgJyc7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBjYXJkQ29sbGFwc2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5pc0ZvY3VzYWJsZSh0aGlzLmNhcmQpICYmXG4gICAgICAgICAgICAhdHVpSXNOYXRpdmVGb2N1c2VkKHRoaXMuaW5wdXRDYXJkPy5uYXRpdmVFbGVtZW50KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgdGFpbExlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5jYXJkLmxlbmd0aCAlIDQgPiAwID8gNSA6IDQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBjYXJkUHJlZmlsbGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmNhcmQubWF0Y2goVFVJX05PTl9ESUdJVF9SRUdFWFApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgY3ZjUHJlZmlsbGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmN2Yy5tYXRjaChUVUlfTk9OX0RJR0lUX1JFR0VYUCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBjYXJkRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuY2FyZFByZWZpbGxlZDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGV4cGlyZUZvY3VzYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNGb2N1c2FibGUodGhpcy5jYXJkKSAmJiAhdGhpcy5leHBpcmVQcmVmaWxsZWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBjdmNGb2N1c2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzRm9jdXNhYmxlKHRoaXMuY2FyZCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBtYXNrZWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FyZFByZWZpbGxlZCA/IGAqJHt0aGlzLmNhcmQuc2xpY2UoLTQpfWAgOiAnKic7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2FyZENoYW5nZShjYXJkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBiaW59ID0gdGhpcztcbiAgICAgICAgY29uc3QgcGFyc2VkID0gY2FyZC5zcGxpdCgnICcpLmpvaW4oJycpO1xuXG4gICAgICAgIGlmICh2YWx1ZSgpPy5jYXJkID09PSBwYXJzZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlUHJvcGVydHkocGFyc2VkLCAnY2FyZCcpO1xuICAgICAgICB0aGlzLnVwZGF0ZUJpbihiaW4pO1xuXG4gICAgICAgIGlmICh0aGlzLmNhcmRWYWxpZGF0b3IodGhpcy5jYXJkKSAmJiAhdmFsdWUoKT8uZXhwaXJlICYmIHRoaXMuaW5wdXRFeHBpcmUpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNFeHBpcmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkV4cGlyZUNoYW5nZShleHBpcmU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVByb3BlcnR5KGV4cGlyZSwgJ2V4cGlyZScpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIE51bWJlcih0aGlzLmlucHV0RXhwaXJlPy5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0KSA9PT0gNSAvLyBNTS9ZWVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNDVkMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkNWQ0NoYW5nZShjdmM6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVByb3BlcnR5KGN2YywgJ2N2YycpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCB0cmFuc2Zvcm0oe29mZnNldFdpZHRofTogSFRNTFNwYW5FbGVtZW50KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FyZENvbGxhcHNlZCA/IGB0cmFuc2xhdGUzZCgke29mZnNldFdpZHRofXB4LCAwLCAwKWAgOiAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Nb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHR1aUlzRWxlbWVudChldmVudC50YXJnZXQpICYmIHR1aUlzSW5wdXQoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuLnNldCghdGhpcy5vcGVuKCkpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBpc0ZvY3VzYWJsZShjYXJkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FyZFZhbGlkYXRvcihjYXJkKSB8fCB0aGlzLmNhcmRQcmVmaWxsZWQ7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldFBheW1lbnRTeXN0ZW0odmFsdWU6IHN0cmluZyk6IFR1aVBheW1lbnRTeXN0ZW0gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5wYXltZW50U3lzdGVtSGFuZGxlcih2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVCaW4ob2xkQmluOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtiaW59ID0gdGhpcztcblxuICAgICAgICBpZiAoYmluICE9PSBvbGRCaW4gJiYgIXRoaXMuY2FyZFByZWZpbGxlZCkge1xuICAgICAgICAgICAgdGhpcy5iaW5DaGFuZ2UuZW1pdChiaW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVQcm9wZXJ0eSh2YWx1ZTogc3RyaW5nLCBwcm9wTmFtZTogJ2NhcmQnIHwgJ2N2YycgfCAnZXhwaXJlJyk6IHZvaWQge1xuICAgICAgICBjb25zdCB7Y2FyZCA9ICcnLCBleHBpcmUgPSAnJywgY3ZjID0gJyd9ID0gdGhpcy52YWx1ZSgpIHx8IHt9O1xuICAgICAgICBjb25zdCBuZXdWYWx1ZTogVHVpQ2FyZCA9IHtjYXJkLCBleHBpcmUsIGN2Y307XG5cbiAgICAgICAgbmV3VmFsdWVbcHJvcE5hbWVdID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy5vbkNoYW5nZShuZXdWYWx1ZS5leHBpcmUgfHwgbmV3VmFsdWUuY3ZjIHx8IG5ld1ZhbHVlLmNhcmQgPyBuZXdWYWx1ZSA6IG51bGwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNJbnB1dCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9XG4gICAgICAgICAgICAodGhpcy5jYXJkRm9jdXNhYmxlICYmIHRoaXMuaW5wdXRDYXJkPy5uYXRpdmVFbGVtZW50KSB8fFxuICAgICAgICAgICAgKHRoaXMuZXhwaXJlRm9jdXNhYmxlICYmIHRoaXMuaW5wdXRFeHBpcmU/Lm5hdGl2ZUVsZW1lbnQpIHx8XG4gICAgICAgICAgICB0aGlzLmlucHV0Q1ZDPy5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInQtd3JhcHBlclwiPlxuICAgIDxsYWJlbFxuICAgICAgICAqdHVpTGV0PVwidmFsdWUoKT8uY2FyZCB8IHR1aUZvcm1hdENhcmQ6IGNhcmRQcmVmaWxsZWQgYXMgZm9ybWF0dGVkQ2FyZFwiXG4gICAgICAgIChjbGljay5zaWxlbnQucHJldmVudCk9XCIoMClcIlxuICAgID5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAjaW5wdXRDYXJkXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWNhcmQtZ3JvdXBfX2NhcmRcIlxuICAgICAgICAgICAgaW5wdXRtb2RlPVwibnVtZXJpY1wiXG4gICAgICAgICAgICB0cmFuc2xhdGU9XCJub1wiXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaW5wdXQgdC1pbnB1dF9jYXJkXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCIhY2FyZFByZWZpbGxlZCAmJiAhKHRoaXMuY2FyZCB8IHR1aU1hcHBlcjogY2FyZFZhbGlkYXRvcilcIlxuICAgICAgICAgICAgW2F0dHIuaWRdPVwiaWQgKyAnX2NhcmQnXCJcbiAgICAgICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlID8gJ2NjLW51bWJlcicgOiAnb2ZmJ1wiXG4gICAgICAgICAgICBbY2xhc3MudC1pbnB1dF9oaWRkZW5dPVwiIWNhcmQubGVuZ3RoICYmIGZvY3VzKClcIlxuICAgICAgICAgICAgW2NsYXNzLnQtaW5wdXRfaW5lcnRdPVwiY2FyZFByZWZpbGxlZFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICAgICAgICBbbWFza2l0b109XCJtYXNrQ2FyZFwiXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJmb3JtYXR0ZWRDYXJkXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjYXJkUHJlZmlsbGVkID8gJycgOiBleGFtcGxlVGV4dFwiXG4gICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHkoKVwiXG4gICAgICAgICAgICBbdGFiSW5kZXhdPVwiY2FyZEZvY3VzYWJsZSA/IDAgOiAtMVwiXG4gICAgICAgICAgICAoZm9jdXMpPVwiKDApXCJcbiAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2FyZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICB0cmFuc2xhdGU9XCJub1wiXG4gICAgICAgICAgICBjbGFzcz1cInQtY29sbGFwc2VkXCJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtYmVmb3JlXT1cIm1hc2tlZFwiXG4gICAgICAgICAgICBbY2xhc3MudC1jb2xsYXBzZWRfZW5hYmxlLW1hc2tdPVwiY2FyZENvbGxhcHNlZFwiXG4gICAgICAgICAgICAod2FSZXNpemVPYnNlcnZlcik9XCIoMClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICNnaG9zdFxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1naG9zdFwiXG4gICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cImZvcm1hdHRlZENhcmQuc2xpY2UoLXRhaWxMZW5ndGgpXCJcbiAgICAgICAgICAgID48L3NwYW4+XG5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidC1jb2xsYXBzZWQtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC12YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS50cmFuc2Zvcm1dPVwidHJhbnNmb3JtKGdob3N0KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBmb3JtYXR0ZWRDYXJkIH19XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwidC1sYWJlbFwiXG4gICAgICAgICAgICBbY2xhc3MudC1sYWJlbF9yYWlzZWRdPVwibGFiZWxSYWlzZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHRleHRzKCk/LmNhcmROdW1iZXJUZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGFiZWw+XG48L2Rpdj5cbjxkaXZcbiAgICBjbGFzcz1cInQtd3JhcHBlciB0LXdyYXBwZXJfZXhwaXJlXCJcbiAgICBbY2xhc3MudC13cmFwcGVyX2FjdGl2ZV09XCJjYXJkQ29sbGFwc2VkXCJcbj5cbiAgICA8bGFiZWwgKGNsaWNrLnNpbGVudC5wcmV2ZW50KT1cIigwKVwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICNpbnB1dEV4cGlyZVxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC1jYXJkLWdyb3VwX19leHBpcmVcIlxuICAgICAgICAgICAgaW5wdXRtb2RlPVwibnVtZXJpY1wiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIjAwLzAwXCJcbiAgICAgICAgICAgIHRyYW5zbGF0ZT1cIm5vXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgICAgICAgICBbYXR0ci5pZF09XCJpZCArICdfZXhwaXJlJ1wiXG4gICAgICAgICAgICBbYXR0ci5uYW1lXT1cImF1dG9jb21wbGV0ZSA/ICdjY2V4cGlyeXllYXInIDogbnVsbFwiXG4gICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZSA/ICdjYy1leHAnIDogJ29mZidcIlxuICAgICAgICAgICAgW2NsYXNzLnQtaW5wdXRfaW5lcnRdPVwiIWV4cGlyZUZvY3VzYWJsZVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICAgICAgICBbbWFza2l0b109XCJtYXNrRXhwaXJlXCJcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cImV4cGlyZVwiXG4gICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHkoKVwiXG4gICAgICAgICAgICBbdGFiSW5kZXhdPVwiZXhwaXJlRm9jdXNhYmxlID8gMCA6IC0xXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCIoMClcIlxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25FeHBpcmVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwidC1sYWJlbFwiXG4gICAgICAgICAgICBbY2xhc3MudC1sYWJlbF9yYWlzZWRdPVwibGFiZWxSYWlzZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHRleHRzKCk/LmV4cGlyeVRleHQgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9sYWJlbD5cbjwvZGl2PlxuPGRpdlxuICAgIGNsYXNzPVwidC13cmFwcGVyIHQtd3JhcHBlcl9jdmNcIlxuICAgIFtjbGFzcy50LXdyYXBwZXJfYWN0aXZlXT1cImNhcmRDb2xsYXBzZWRcIlxuPlxuICAgIDxsYWJlbCAoY2xpY2suc2lsZW50LnByZXZlbnQpPVwiKDApXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2lucHV0Q1ZDXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWNhcmQtZ3JvdXBfX2N2Y1wiXG4gICAgICAgICAgICBpbnB1dG1vZGU9XCJudW1lcmljXCJcbiAgICAgICAgICAgIHRyYW5zbGF0ZT1cIm5vXCJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgICAgICAgICBbYXR0ci5pZF09XCJpZCArICdfY3ZjJ1wiXG4gICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZSA/ICdjYy1jc2MnIDogJ29mZidcIlxuICAgICAgICAgICAgW2NsYXNzLnQtaW5wdXRfY3ZjX2hpZGRlbl09XCJjdmNIaWRkZW5cIlxuICAgICAgICAgICAgW2NsYXNzLnQtaW5wdXRfcHJlZmlsbGVkXT1cImN2Y1ByZWZpbGxlZFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICAgICAgICBbbWFza2l0b109XCJtYXNrQ1ZDXCJcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cImN2Y1wiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY3ZjUHJlZmlsbGVkID8gJ+KAouKAouKAoicgOiBleGFtcGxlVGV4dENWQ1wiXG4gICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHkoKSB8fCBjdmNQcmVmaWxsZWRcIlxuICAgICAgICAgICAgW3RhYkluZGV4XT1cImN2Y0ZvY3VzYWJsZSA/IDAgOiAtMVwiXG4gICAgICAgICAgICAoZm9jdXMpPVwiKDApXCJcbiAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ1ZDQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAvPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInQtbGFiZWxcIlxuICAgICAgICAgICAgW2NsYXNzLnQtbGFiZWxfcmFpc2VkXT1cImxhYmVsUmFpc2VkKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyB0ZXh0cygpPy5jdmNUZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGFiZWw+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJ0LWljb25zXCI+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImNvbnRlbnRcIlxuICAgICAgICBjbGFzcz1cInQtaWNvbi1vdXRsZXRcIlxuICAgID5cbiAgICAgICAgPGltZ1xuICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImNvbnRlbnQgYXMgc3JjXCJcbiAgICAgICAgICAgIGFsdD1cIlwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWNhcmQtZ3JvdXBfX2ljb25cIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWNhcmRcIlxuICAgICAgICAgICAgW3NyY109XCJzcmMgfCB0dWlJY29uXCJcbiAgICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgICA8dHVpLWljb25cbiAgICAgICAgKm5nSWY9XCJoYXNDbGVhbmVyKClcIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWNhcmQtZ3JvdXBfX2NsZWFuZXJcIlxuICAgICAgICB0dWlBcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgIGNsYXNzPVwidC1pY29uXCJcbiAgICAgICAgW2ljb25dPVwiaWNvbnMuY2xvc2VcIlxuICAgICAgICAoY2xpY2spPVwiY2xlYXIoKVwiXG4gICAgLz5cbiAgICA8dHVpLWljb25cbiAgICAgICAgKm5nSWY9XCJkcm9wZG93bi5jb250ZW50XCJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC1jYXJkLWdyb3VwX19kcm9wZG93blwiXG4gICAgICAgIHR1aUFwcGVhcmFuY2U9XCJpY29uXCJcbiAgICAgICAgdHVpQ2hldnJvblxuICAgICAgICAoY2xpY2spPVwidG9nZ2xlKClcIlxuICAgIC8+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,15 @@
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/utils/miscellaneous';
4
+ export const TUI_INPUT_CARD_GROUP_DEFAULT_OPTIONS = {
5
+ ...TUI_INPUT_CARD_DEFAULT_OPTIONS,
6
+ cardValidator: tuiDefaultCardValidator,
7
+ exampleText: '0000 0000 0000 0000',
8
+ exampleTextCVC: '000',
9
+ cvcHidden: true,
10
+ };
11
+ export const TUI_INPUT_CARD_GROUP_OPTIONS = tuiCreateToken(TUI_INPUT_CARD_GROUP_DEFAULT_OPTIONS);
12
+ export function tuiInputCardGroupOptionsProvider(options) {
13
+ return tuiProvideOptions(TUI_INPUT_CARD_GROUP_OPTIONS, options, TUI_INPUT_CARD_GROUP_DEFAULT_OPTIONS);
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC1ncm91cC5vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY29tbWVyY2UvY29tcG9uZW50cy9pbnB1dC1jYXJkLWdyb3VwL2lucHV0LWNhcmQtZ3JvdXAub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUM5RixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUUzRSxPQUFPLEVBQUMsY0FBYyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFTcEYsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQTZCO0lBQzFFLEdBQUcsOEJBQThCO0lBQ2pDLGFBQWEsRUFBRSx1QkFBdUI7SUFDdEMsV0FBVyxFQUFFLHFCQUFxQjtJQUNsQyxjQUFjLEVBQUUsS0FBSztJQUNyQixTQUFTLEVBQUUsSUFBSTtDQUNsQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsY0FBYyxDQUN0RCxvQ0FBb0MsQ0FDdkMsQ0FBQztBQUVGLE1BQU0sVUFBVSxnQ0FBZ0MsQ0FDNUMsT0FBMEM7SUFFMUMsT0FBTyxpQkFBaUIsQ0FDcEIsNEJBQTRCLEVBQzVCLE9BQU8sRUFDUCxvQ0FBb0MsQ0FDdkMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7UHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUge1R1aUlucHV0Q2FyZE9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQnO1xuaW1wb3J0IHtUVUlfSU5QVVRfQ0FSRF9ERUZBVUxUX09QVElPTlN9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQnO1xuaW1wb3J0IHt0dWlEZWZhdWx0Q2FyZFZhbGlkYXRvcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbnN0YW50cyc7XG5pbXBvcnQgdHlwZSB7VHVpQm9vbGVhbkhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlDcmVhdGVUb2tlbiwgdHVpUHJvdmlkZU9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpSW5wdXRDYXJkR3JvdXBPcHRpb25zIGV4dGVuZHMgVHVpSW5wdXRDYXJkT3B0aW9ucyB7XG4gICAgcmVhZG9ubHkgY2FyZFZhbGlkYXRvcjogVHVpQm9vbGVhbkhhbmRsZXI8c3RyaW5nPjtcbiAgICByZWFkb25seSBleGFtcGxlVGV4dDogc3RyaW5nO1xuICAgIHJlYWRvbmx5IGV4YW1wbGVUZXh0Q1ZDOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgY3ZjSGlkZGVuOiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgVFVJX0lOUFVUX0NBUkRfR1JPVVBfREVGQVVMVF9PUFRJT05TOiBUdWlJbnB1dENhcmRHcm91cE9wdGlvbnMgPSB7XG4gICAgLi4uVFVJX0lOUFVUX0NBUkRfREVGQVVMVF9PUFRJT05TLFxuICAgIGNhcmRWYWxpZGF0b3I6IHR1aURlZmF1bHRDYXJkVmFsaWRhdG9yLFxuICAgIGV4YW1wbGVUZXh0OiAnMDAwMCAwMDAwIDAwMDAgMDAwMCcsXG4gICAgZXhhbXBsZVRleHRDVkM6ICcwMDAnLFxuICAgIGN2Y0hpZGRlbjogdHJ1ZSxcbn07XG5cbmV4cG9ydCBjb25zdCBUVUlfSU5QVVRfQ0FSRF9HUk9VUF9PUFRJT05TID0gdHVpQ3JlYXRlVG9rZW4oXG4gICAgVFVJX0lOUFVUX0NBUkRfR1JPVVBfREVGQVVMVF9PUFRJT05TLFxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUlucHV0Q2FyZEdyb3VwT3B0aW9uc1Byb3ZpZGVyKFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8VHVpSW5wdXRDYXJkR3JvdXBPcHRpb25zPixcbik6IFByb3ZpZGVyIHtcbiAgICByZXR1cm4gdHVpUHJvdmlkZU9wdGlvbnMoXG4gICAgICAgIFRVSV9JTlBVVF9DQVJEX0dST1VQX09QVElPTlMsXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICAgIFRVSV9JTlBVVF9DQVJEX0dST1VQX0RFRkFVTFRfT1BUSU9OUyxcbiAgICApO1xufVxuIl19
@@ -0,0 +1,29 @@
1
+ import { inject } from '@angular/core';
2
+ import { WA_WINDOW } from '@ng-web-apis/common';
3
+ import { TUI_CARD_CVC_TEXTS, TUI_CARD_EXPIRY_TEXTS, TUI_CARD_NUMBER_TEXTS, } from '@taiga-ui/addon-commerce/tokens';
4
+ import { tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
5
+ import { tuiCreateTokenFromFactory } from '@taiga-ui/cdk/utils/miscellaneous';
6
+ import { TUI_MEDIA } from '@taiga-ui/core/tokens';
7
+ import { combineLatest, map, of, startWith, switchMap } from 'rxjs';
8
+ /**
9
+ * InputCardGroup texts
10
+ */
11
+ export const TUI_INPUT_CARD_GROUP_TEXTS = tuiCreateTokenFromFactory(() => {
12
+ const win = inject(WA_WINDOW);
13
+ const cardNumberTexts = inject(TUI_CARD_NUMBER_TEXTS);
14
+ const expiryTexts = inject(TUI_CARD_EXPIRY_TEXTS);
15
+ const cvcTexts = inject(TUI_CARD_CVC_TEXTS);
16
+ const { desktopSmall } = inject(TUI_MEDIA);
17
+ const media = win.matchMedia(`screen and (min-width: ${(desktopSmall - 1) / 16}em)`);
18
+ return tuiTypedFromEvent(media, 'change').pipe(startWith(null), switchMap(() => combineLatest([
19
+ of(Number(media.matches)),
20
+ cardNumberTexts,
21
+ expiryTexts,
22
+ cvcTexts,
23
+ ])), map(([index, cardNumber, expiry, cvcTexts]) => ({
24
+ cardNumberText: cardNumber[index],
25
+ expiryText: expiry[index],
26
+ cvcText: cvcTexts[index],
27
+ })));
28
+ });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FyZC1ncm91cC5wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL2lucHV0LWNhcmQtZ3JvdXAvaW5wdXQtY2FyZC1ncm91cC5wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNyQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDOUMsT0FBTyxFQUNILGtCQUFrQixFQUNsQixxQkFBcUIsRUFDckIscUJBQXFCLEdBQ3hCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDNUUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRWhELE9BQU8sRUFBQyxhQUFhLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBUWxFOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcseUJBQXlCLENBRWpFLEdBQUcsRUFBRTtJQUNILE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN0RCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNsRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUM1QyxNQUFNLEVBQUMsWUFBWSxFQUFDLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRXpDLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFckYsT0FBTyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUMxQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUNYLGFBQWEsQ0FBQztRQUNWLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pCLGVBQWU7UUFDZixXQUFXO1FBQ1gsUUFBUTtLQUNYLENBQUMsQ0FDTCxFQUNELEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFDakMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDekIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUM7S0FDM0IsQ0FBQyxDQUFDLENBQ04sQ0FBQztBQUNOLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXQV9XSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBUVUlfQ0FSRF9DVkNfVEVYVFMsXG4gICAgVFVJX0NBUkRfRVhQSVJZX1RFWFRTLFxuICAgIFRVSV9DQVJEX05VTUJFUl9URVhUUyxcbn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL3Rva2Vucyc7XG5pbXBvcnQge3R1aVR5cGVkRnJvbUV2ZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7dHVpQ3JlYXRlVG9rZW5Gcm9tRmFjdG9yeX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7VFVJX01FRElBfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHR5cGUge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBtYXAsIG9mLCBzdGFydFdpdGgsIHN3aXRjaE1hcH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpQ2FyZEdyb3VwZWRUZXh0cyB7XG4gICAgcmVhZG9ubHkgY2FyZE51bWJlclRleHQ6IHN0cmluZztcbiAgICByZWFkb25seSBjdmNUZXh0OiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgZXhwaXJ5VGV4dDogc3RyaW5nO1xufVxuXG4vKipcbiAqIElucHV0Q2FyZEdyb3VwIHRleHRzXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfSU5QVVRfQ0FSRF9HUk9VUF9URVhUUyA9IHR1aUNyZWF0ZVRva2VuRnJvbUZhY3Rvcnk8XG4gICAgT2JzZXJ2YWJsZTxUdWlDYXJkR3JvdXBlZFRleHRzPlxuPigoKSA9PiB7XG4gICAgY29uc3Qgd2luID0gaW5qZWN0KFdBX1dJTkRPVyk7XG4gICAgY29uc3QgY2FyZE51bWJlclRleHRzID0gaW5qZWN0KFRVSV9DQVJEX05VTUJFUl9URVhUUyk7XG4gICAgY29uc3QgZXhwaXJ5VGV4dHMgPSBpbmplY3QoVFVJX0NBUkRfRVhQSVJZX1RFWFRTKTtcbiAgICBjb25zdCBjdmNUZXh0cyA9IGluamVjdChUVUlfQ0FSRF9DVkNfVEVYVFMpO1xuICAgIGNvbnN0IHtkZXNrdG9wU21hbGx9ID0gaW5qZWN0KFRVSV9NRURJQSk7XG5cbiAgICBjb25zdCBtZWRpYSA9IHdpbi5tYXRjaE1lZGlhKGBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR7KGRlc2t0b3BTbWFsbCAtIDEpIC8gMTZ9ZW0pYCk7XG5cbiAgICByZXR1cm4gdHVpVHlwZWRGcm9tRXZlbnQobWVkaWEsICdjaGFuZ2UnKS5waXBlKFxuICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PlxuICAgICAgICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICAgICAgb2YoTnVtYmVyKG1lZGlhLm1hdGNoZXMpKSxcbiAgICAgICAgICAgICAgICBjYXJkTnVtYmVyVGV4dHMsXG4gICAgICAgICAgICAgICAgZXhwaXJ5VGV4dHMsXG4gICAgICAgICAgICAgICAgY3ZjVGV4dHMsXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgKSxcbiAgICAgICAgbWFwKChbaW5kZXgsIGNhcmROdW1iZXIsIGV4cGlyeSwgY3ZjVGV4dHNdKSA9PiAoe1xuICAgICAgICAgICAgY2FyZE51bWJlclRleHQ6IGNhcmROdW1iZXJbaW5kZXhdLFxuICAgICAgICAgICAgZXhwaXJ5VGV4dDogZXhwaXJ5W2luZGV4XSxcbiAgICAgICAgICAgIGN2Y1RleHQ6IGN2Y1RleHRzW2luZGV4XSxcbiAgICAgICAgfSkpLFxuICAgICk7XG59KTtcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tY29tbWVyY2UtY29tcG9uZW50cy1pbnB1dC1jYXJkLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY29tbWVyY2UvY29tcG9uZW50cy9pbnB1dC1jYXJkLWdyb3VwL3RhaWdhLXVpLWFkZG9uLWNvbW1lcmNlLWNvbXBvbmVudHMtaW5wdXQtY2FyZC1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -2,24 +2,19 @@ import { Directive, inject, Input } from '@angular/core';
2
2
  import { MaskitoDirective } from '@maskito/angular';
3
3
  import { TUI_INPUT_CARD_OPTIONS } from '@taiga-ui/addon-commerce/components/input-card';
4
4
  import { TUI_MASK_CVC } from '@taiga-ui/addon-commerce/constants';
5
+ import { tuiMaskito } from '@taiga-ui/kit/utils';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@maskito/angular";
7
8
  class TuiInputCVC {
8
9
  constructor() {
9
- this.mask = inject(MaskitoDirective);
10
+ this.mask = tuiMaskito(TUI_MASK_CVC(3));
10
11
  this.autocomplete = inject(TUI_INPUT_CARD_OPTIONS).autocomplete;
11
12
  this.hidden = true;
12
13
  this.length = 3;
13
14
  }
14
- ngOnInit() {
15
- this.refresh();
16
- }
15
+ // TODO: refactor to signal inputs after Angular update
17
16
  ngOnChanges() {
18
- this.refresh();
19
- }
20
- refresh() {
21
- this.mask.options = TUI_MASK_CVC(this.length);
22
- this.mask.ngOnChanges();
17
+ this.mask.set(TUI_MASK_CVC(this.length));
23
18
  }
24
19
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputCVC, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
25
20
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputCVC, isStandalone: true, selector: "input[tuiInputCVC]", inputs: { autocomplete: "autocomplete", hidden: "hidden", length: "length" }, host: { attributes: { "inputmode": "numeric" }, listeners: { "copy.prevent": "(0)" }, properties: { "autocomplete": "autocomplete ? \"cc-csc\" : \"off\"", "placeholder": "\"0\".repeat(length)", "style.-webkit-text-security": "hidden ? \"disc\" : null" } }, usesOnChanges: true, hostDirectives: [{ directive: i1.MaskitoDirective }], ngImport: i0 }); }
@@ -46,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
46
41
  }], length: [{
47
42
  type: Input
48
43
  }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY3ZjLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY3ZjL2lucHV0LWN2Yy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBRWhFLE1BWWEsV0FBVztJQVp4QjtRQWFxQixTQUFJLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFHMUMsaUJBQVksR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFHM0QsV0FBTSxHQUFHLElBQUksQ0FBQztRQUdkLFdBQU0sR0FBVSxDQUFDLENBQUM7S0FjNUI7SUFaVSxRQUFRO1FBQ1gsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTyxPQUFPO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVCLENBQUM7K0dBdkJRLFdBQVc7bUdBQVgsV0FBVzs7U0FBWCxXQUFXOzRGQUFYLFdBQVc7a0JBWnZCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLGNBQWMsRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNsQyxJQUFJLEVBQUU7d0JBQ0YsU0FBUyxFQUFFLFNBQVM7d0JBQ3BCLGdCQUFnQixFQUFFLGlDQUFpQzt3QkFDbkQsZUFBZSxFQUFFLG9CQUFvQjt3QkFDckMsK0JBQStCLEVBQUUsd0JBQXdCO3dCQUN6RCxnQkFBZ0IsRUFBRSxLQUFLO3FCQUMxQjtpQkFDSjs4QkFLVSxZQUFZO3NCQURsQixLQUFLO2dCQUlDLE1BQU07c0JBRFosS0FBSztnQkFJQyxNQUFNO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7T25DaGFuZ2VzLCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEaXJlY3RpdmUsIGluamVjdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXNraXRvRGlyZWN0aXZlfSBmcm9tICdAbWFza2l0by9hbmd1bGFyJztcbmltcG9ydCB7VFVJX0lOUFVUX0NBUkRfT1BUSU9OU30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY2FyZCc7XG5pbXBvcnQge1RVSV9NQVNLX0NWQ30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbnN0YW50cyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdpbnB1dFt0dWlJbnB1dENWQ10nLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbTWFza2l0b0RpcmVjdGl2ZV0sXG4gICAgaG9zdDoge1xuICAgICAgICBpbnB1dG1vZGU6ICdudW1lcmljJyxcbiAgICAgICAgJ1thdXRvY29tcGxldGVdJzogJ2F1dG9jb21wbGV0ZSA/IFwiY2MtY3NjXCIgOiBcIm9mZlwiJyxcbiAgICAgICAgJ1twbGFjZWhvbGRlcl0nOiAnXCIwXCIucmVwZWF0KGxlbmd0aCknLFxuICAgICAgICAnW3N0eWxlLi13ZWJraXQtdGV4dC1zZWN1cml0eV0nOiAnaGlkZGVuID8gXCJkaXNjXCIgOiBudWxsJyxcbiAgICAgICAgJyhjb3B5LnByZXZlbnQpJzogJygwKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRDVkMgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBtYXNrID0gaW5qZWN0KE1hc2tpdG9EaXJlY3RpdmUpO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXV0b2NvbXBsZXRlID0gaW5qZWN0KFRVSV9JTlBVVF9DQVJEX09QVElPTlMpLmF1dG9jb21wbGV0ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGhpZGRlbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsZW5ndGg6IDMgfCA0ID0gMztcblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlZnJlc2goKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZnJlc2goKTogdm9pZCB7XG4gICAgICAgIHRoaXMubWFzay5vcHRpb25zID0gVFVJX01BU0tfQ1ZDKHRoaXMubGVuZ3RoKTtcbiAgICAgICAgdGhpcy5tYXNrLm5nT25DaGFuZ2VzKCk7XG4gICAgfVxufVxuIl19
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY3ZjLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY3ZjL2lucHV0LWN2Yy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUNoRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7OztBQUUvQyxNQVlhLFdBQVc7SUFaeEI7UUFhcUIsU0FBSSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUc3QyxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUczRCxXQUFNLEdBQUcsSUFBSSxDQUFDO1FBR2QsV0FBTSxHQUFVLENBQUMsQ0FBQztLQU01QjtJQUpHLHVEQUF1RDtJQUNoRCxXQUFXO1FBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBZlEsV0FBVzttR0FBWCxXQUFXOztTQUFYLFdBQVc7NEZBQVgsV0FBVztrQkFadkIsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsY0FBYyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2xDLElBQUksRUFBRTt3QkFDRixTQUFTLEVBQUUsU0FBUzt3QkFDcEIsZ0JBQWdCLEVBQUUsaUNBQWlDO3dCQUNuRCxlQUFlLEVBQUUsb0JBQW9CO3dCQUNyQywrQkFBK0IsRUFBRSx3QkFBd0I7d0JBQ3pELGdCQUFnQixFQUFFLEtBQUs7cUJBQzFCO2lCQUNKOzhCQUtVLFlBQVk7c0JBRGxCLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLO2dCQUlDLE1BQU07c0JBRFosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtPbkNoYW5nZXN9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEaXJlY3RpdmUsIGluamVjdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXNraXRvRGlyZWN0aXZlfSBmcm9tICdAbWFza2l0by9hbmd1bGFyJztcbmltcG9ydCB7VFVJX0lOUFVUX0NBUkRfT1BUSU9OU30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY2FyZCc7XG5pbXBvcnQge1RVSV9NQVNLX0NWQ30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbnN0YW50cyc7XG5pbXBvcnQge3R1aU1hc2tpdG99IGZyb20gJ0B0YWlnYS11aS9raXQvdXRpbHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpSW5wdXRDVkNdJyxcbiAgICBob3N0RGlyZWN0aXZlczogW01hc2tpdG9EaXJlY3RpdmVdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgaW5wdXRtb2RlOiAnbnVtZXJpYycsXG4gICAgICAgICdbYXV0b2NvbXBsZXRlXSc6ICdhdXRvY29tcGxldGUgPyBcImNjLWNzY1wiIDogXCJvZmZcIicsXG4gICAgICAgICdbcGxhY2Vob2xkZXJdJzogJ1wiMFwiLnJlcGVhdChsZW5ndGgpJyxcbiAgICAgICAgJ1tzdHlsZS4td2Via2l0LXRleHQtc2VjdXJpdHldJzogJ2hpZGRlbiA/IFwiZGlzY1wiIDogbnVsbCcsXG4gICAgICAgICcoY29weS5wcmV2ZW50KSc6ICcoMCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0Q1ZDIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1hc2sgPSB0dWlNYXNraXRvKFRVSV9NQVNLX0NWQygzKSk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhdXRvY29tcGxldGUgPSBpbmplY3QoVFVJX0lOUFVUX0NBUkRfT1BUSU9OUykuYXV0b2NvbXBsZXRlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaGlkZGVuID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGxlbmd0aDogMyB8IDQgPSAzO1xuXG4gICAgLy8gVE9ETzogcmVmYWN0b3IgdG8gc2lnbmFsIGlucHV0cyBhZnRlciBBbmd1bGFyIHVwZGF0ZVxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tYXNrLnNldChUVUlfTUFTS19DVkModGhpcy5sZW5ndGgpKTtcbiAgICB9XG59XG4iXX0=
@@ -2,17 +2,14 @@ import { Directive, inject, Input } from '@angular/core';
2
2
  import { MaskitoDirective } from '@maskito/angular';
3
3
  import { TUI_INPUT_CARD_OPTIONS } from '@taiga-ui/addon-commerce/components/input-card';
4
4
  import { TUI_MASK_EXPIRE } from '@taiga-ui/addon-commerce/constants';
5
+ import { tuiMaskito } from '@taiga-ui/kit/utils';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@maskito/angular";
7
8
  class TuiInputExpire {
8
9
  constructor() {
9
- this.mask = inject(MaskitoDirective);
10
+ this.mask = tuiMaskito(TUI_MASK_EXPIRE);
10
11
  this.autocomplete = inject(TUI_INPUT_CARD_OPTIONS).autocomplete;
11
12
  }
12
- ngOnInit() {
13
- this.mask.options = TUI_MASK_EXPIRE;
14
- this.mask.ngOnChanges();
15
- }
16
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputExpire, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
14
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputExpire, isStandalone: true, selector: "input[tuiInputExpire]", inputs: { autocomplete: "autocomplete" }, host: { attributes: { "inputmode": "numeric", "placeholder": "00/00", "translate": "no" }, properties: { "autocomplete": "autocomplete ? \"cc-exp\" : \"off\"" } }, hostDirectives: [{ directive: i1.MaskitoDirective }], ngImport: i0 }); }
18
15
  }
@@ -33,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
33
30
  }], propDecorators: { autocomplete: [{
34
31
  type: Input
35
32
  }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZXhwaXJlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtZXhwaXJlL2lucHV0LWV4cGlyZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBRW5FLE1BV2EsY0FBYztJQVgzQjtRQVlxQixTQUFJLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFHMUMsaUJBQVksR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxZQUFZLENBQUM7S0FNckU7SUFKVSxRQUFRO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDNUIsQ0FBQzsrR0FUUSxjQUFjO21HQUFkLGNBQWM7O1NBQWQsY0FBYzs0RkFBZCxjQUFjO2tCQVgxQixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxjQUFjLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDbEMsSUFBSSxFQUFFO3dCQUNGLFNBQVMsRUFBRSxTQUFTO3dCQUNwQixXQUFXLEVBQUUsT0FBTzt3QkFDcEIsU0FBUyxFQUFFLElBQUk7d0JBQ2YsZ0JBQWdCLEVBQUUsaUNBQWlDO3FCQUN0RDtpQkFDSjs4QkFLVSxZQUFZO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge09uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RpcmVjdGl2ZSwgaW5qZWN0LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hc2tpdG9EaXJlY3RpdmV9IGZyb20gJ0BtYXNraXRvL2FuZ3VsYXInO1xuaW1wb3J0IHtUVUlfSU5QVVRfQ0FSRF9PUFRJT05TfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvY29tcG9uZW50cy9pbnB1dC1jYXJkJztcbmltcG9ydCB7VFVJX01BU0tfRVhQSVJFfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvY29uc3RhbnRzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2lucHV0W3R1aUlucHV0RXhwaXJlXScsXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtNYXNraXRvRGlyZWN0aXZlXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGlucHV0bW9kZTogJ251bWVyaWMnLFxuICAgICAgICBwbGFjZWhvbGRlcjogJzAwLzAwJyxcbiAgICAgICAgdHJhbnNsYXRlOiAnbm8nLFxuICAgICAgICAnW2F1dG9jb21wbGV0ZV0nOiAnYXV0b2NvbXBsZXRlID8gXCJjYy1leHBcIiA6IFwib2ZmXCInLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0RXhwaXJlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1hc2sgPSBpbmplY3QoTWFza2l0b0RpcmVjdGl2ZSk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhdXRvY29tcGxldGUgPSBpbmplY3QoVFVJX0lOUFVUX0NBUkRfT1BUSU9OUykuYXV0b2NvbXBsZXRlO1xuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1hc2sub3B0aW9ucyA9IFRVSV9NQVNLX0VYUElSRTtcbiAgICAgICAgdGhpcy5tYXNrLm5nT25DaGFuZ2VzKCk7XG4gICAgfVxufVxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZXhwaXJlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtZXhwaXJlL2lucHV0LWV4cGlyZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7OztBQUUvQyxNQVdhLGNBQWM7SUFYM0I7UUFZdUIsU0FBSSxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUcvQyxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLFlBQVksQ0FBQztLQUNyRTsrR0FMWSxjQUFjO21HQUFkLGNBQWM7O1NBQWQsY0FBYzs0RkFBZCxjQUFjO2tCQVgxQixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxjQUFjLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDbEMsSUFBSSxFQUFFO3dCQUNGLFNBQVMsRUFBRSxTQUFTO3dCQUNwQixXQUFXLEVBQUUsT0FBTzt3QkFDcEIsU0FBUyxFQUFFLElBQUk7d0JBQ2YsZ0JBQWdCLEVBQUUsaUNBQWlDO3FCQUN0RDtpQkFDSjs4QkFLVSxZQUFZO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIGluamVjdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXNraXRvRGlyZWN0aXZlfSBmcm9tICdAbWFza2l0by9hbmd1bGFyJztcbmltcG9ydCB7VFVJX0lOUFVUX0NBUkRfT1BUSU9OU30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbXBvbmVudHMvaW5wdXQtY2FyZCc7XG5pbXBvcnQge1RVSV9NQVNLX0VYUElSRX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL2NvbnN0YW50cyc7XG5pbXBvcnQge3R1aU1hc2tpdG99IGZyb20gJ0B0YWlnYS11aS9raXQvdXRpbHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpSW5wdXRFeHBpcmVdJyxcbiAgICBob3N0RGlyZWN0aXZlczogW01hc2tpdG9EaXJlY3RpdmVdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgaW5wdXRtb2RlOiAnbnVtZXJpYycsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnMDAvMDAnLFxuICAgICAgICB0cmFuc2xhdGU6ICdubycsXG4gICAgICAgICdbYXV0b2NvbXBsZXRlXSc6ICdhdXRvY29tcGxldGUgPyBcImNjLWV4cFwiIDogXCJvZmZcIicsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRFeHBpcmUge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBtYXNrID0gdHVpTWFza2l0byhUVUlfTUFTS19FWFBJUkUpO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXV0b2NvbXBsZXRlID0gaW5qZWN0KFRVSV9JTlBVVF9DQVJEX09QVElPTlMpLmF1dG9jb21wbGV0ZTtcbn1cbiJdfQ==
@@ -1,2 +1,3 @@
1
1
  export * from './thumbnail-card.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL3RodW1ibmFpbC1jYXJkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RodW1ibmFpbC1jYXJkLmNvbXBvbmVudCc7XG4iXX0=
2
+ export * from './thumbnail-card.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9jb21wb25lbnRzL3RodW1ibmFpbC1jYXJkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGh1bWJuYWlsLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGh1bWJuYWlsLWNhcmQub3B0aW9ucyc7XG4iXX0=