@taiga-ui/kit 3.47.0 → 3.48.0-canary.0e61adf
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js +9 -6
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-textarea.umd.js +2 -2
- package/bundles/taiga-ui-kit-constants.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js +22 -10
- package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
- package/components/calendar-range/calendar-range.component.d.ts +9 -3
- package/components/input-date-range/input-date-range.component.d.ts +7 -2
- package/components/input-phone-international/input-phone-international.component.d.ts +2 -2
- package/components/multi-select/multi-select.component.d.ts +9 -3
- package/components/multi-select/multi-select.module.d.ts +1 -1
- package/components/multi-select/native-multi-select/native-multi-select.d.ts +2 -2
- package/constants/max-day-range-length-mapper.d.ts +7 -2
- package/esm2015/components/calendar-month/calendar-month.component.js +1 -1
- package/esm2015/components/calendar-range/calendar-range.component.js +3 -3
- package/esm2015/components/input-date-range/input-date-range.component.js +1 -1
- package/esm2015/components/input-phone-international/input-phone-international.component.js +1 -1
- package/esm2015/components/input-slider/input-slider.component.js +1 -1
- package/esm2015/components/input-tag/input-tag.component.js +1 -1
- package/esm2015/components/multi-select/multi-select.component.js +1 -1
- package/esm2015/components/multi-select/multi-select.module.js +2 -2
- package/esm2015/components/multi-select/native-multi-select/native-multi-select-group.component.js +1 -1
- package/esm2015/components/multi-select/native-multi-select/native-multi-select.component.js +1 -1
- package/esm2015/components/multi-select/native-multi-select/native-multi-select.js +1 -1
- package/esm2015/components/tabs/tabs/tabs.component.js +1 -1
- package/esm2015/components/textarea/deprecated.js +1 -1
- package/esm2015/components/textarea/textarea.component.js +1 -1
- package/esm2015/constants/max-day-range-length-mapper.js +1 -1
- package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +1 -1
- package/esm2015/pipes/filter-by-input/filter-by-input-with.pipe.js +11 -4
- package/esm2015/pipes/filter-by-input/filter-by-input.base.js +3 -3
- package/esm2015/pipes/filter-by-input/filter-by-input.pipe.js +11 -4
- package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-range.js +2 -2
- package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select.js +2 -2
- package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tabs.js +1 -1
- package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-textarea.js +2 -2
- package/fesm2015/taiga-ui-kit-constants.js.map +1 -1
- package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js +20 -7
- package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
- package/internal/primitive-calendar-range/primitive-calendar-range.component.d.ts +2 -2
- package/package.json +4 -4
- package/pipes/filter-by-input/filter-by-input-with.pipe.d.ts +5 -4
- package/pipes/filter-by-input/filter-by-input.base.d.ts +7 -1
- package/pipes/filter-by-input/filter-by-input.pipe.d.ts +5 -4
|
@@ -131,7 +131,7 @@ TuiTextareaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
131
131
|
tuiAsControl(TuiTextareaComponent),
|
|
132
132
|
TEXTFIELD_CONTROLLER_PROVIDER,
|
|
133
133
|
MODE_PROVIDER,
|
|
134
|
-
], queries: [{ propertyName: "textfield", first: true, predicate: TuiTextfieldComponent, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<div\n automation-id=\"tui-text-area__wrapper\"\n tuiWrapper\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n <span class=\"t-caret\"></span>\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [readOnly]=\"readOnly\"\n [tuiFocusable]=\"computedFocusable\"\n [(ngModel)]=\"value\"\n ></textarea>\n <ng-content select=\"textarea\"></ng-content>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n <ng-container *ngIf=\"hasCustomContent\">\n <tui-svg\n *polymorpheusOutlet=\"controller.customContent as src\"\n [src]=\"src\"\n ></tui-svg>\n </ng-container>\n <ng-container *ngIf=\"hasCleaner\">\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n class=\"t-cleaner\"\n [src]=\"src\"\n (click.stop)=\"onValueChange('')\"\n ></tui-svg>\n </ng-container>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n ></tui-tooltip>\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </label>\n</div>\n", styles: [":host{position:relative;z-index:0;display:flex;flex-direction:column;min-height:var(--tui-textarea-height);border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-size=s]{--tui-height: var(--tui-height-s);--tui-textarea-height: 4.5625rem;font:var(--tui-font-text-s)}:host[data-size=m]{--tui-height: var(--tui-height-m);--tui-textarea-height: 5.5rem;font:var(--tui-font-text-s)}:host[data-size=l]{--tui-height: var(--tui-height-l);--tui-textarea-height: 6.75rem;font:var(--tui-font-text-m)}:host[data-size=m]._has-counter{--tui-textarea-height: 6.625rem}:host[data-size=l]._has-counter{--tui-textarea-height: 7.875rem}.t-outline{min-height:inherit}.t-content{display:block;margin-top:0;margin-bottom:0;min-height:inherit;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .t-content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .t-content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .t-content{bottom:1.6875rem}:host._label-outside._has-counter:not(._expandable) .t-content{bottom:1rem}.t-wrapper{position:relative;width:100%;height:100%;min-height:inherit;box-sizing:border-box;padding:calc((var(--tui-height) - 1.25rem) / 2) 0}:host[data-size=l]._label-outside .t-wrapper{padding:calc((var(--tui-height) - 1.5rem) / 2) 0}:host[data-size=m]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.25rem) / 2) 0}:host[data-size=l]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.625rem) / 2) 0}:host-context(table)[data-size=m]._label-outside .t-wrapper{padding-bottom:.75rem}:host-context(table)[data-size=l]._label-outside .t-wrapper{padding-bottom:1rem}.t-input-wrapper{min-height:inherit;width:100%;flex:1}.t-relative{position:relative;min-height:inherit}.t-box{display:flex;min-height:calc(100% - 1rem);width:100%}:host:not(._expandable) .t-box{height:calc(100% - 1rem)}:host:not(._expandable)._label-outside .t-box{height:100%}:host._has-counter._expandable .t-box{margin-bottom:1.25rem}:host[data-size=m]:not(._label-outside) .t-box{border-top:1rem solid transparent}:host[data-size=l]:not(._label-outside) .t-box{border-top:1.25rem solid transparent}.t-pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:solid transparent;border-top:0;border-bottom:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}:host[data-size=s] .t-pseudo-content,:host[data-size=m] .t-pseudo-content{padding:0 .75rem}:host[data-size=l] .t-pseudo-content{padding:0 1rem}.t-pseudo-content__extra{background-color:var(--tui-error-bg-night)}.t-input{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;-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%;box-sizing:border-box;resize:none;overflow:hidden;outline:none;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}.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:not(:last-of-type){display:none}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}:host._focused .t-input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-input:not(:read-only)::placeholder{opacity:1}:host[data-size=s] .t-input,:host[data-size=m] .t-input{padding:0 .75rem}:host[data-size=l] .t-input{padding:0 1rem}:host[data-mode=onDark]._disabled .t-input{color:var(--tui-text-03-night)}@supports (-webkit-marquee-repetition: infinite) and (object-fit: fill){:host._ios .t-input{padding-left:.8125rem}}.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);position:absolute;top:calc(var(--tui-height) / 2 - .625rem);left:0;max-width:100%;border:solid transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);box-sizing:border-box}.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)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}:host[data-size=s] .t-placeholder{padding:0 .75rem}:host[data-size=m] .t-placeholder{padding:0 .75rem}:host[data-size=l] .t-placeholder{padding:0 1rem}:host._label-outside .t-placeholder{overflow:initial;height:auto;white-space:initial}.t-icons{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;justify-content:flex-end;pointer-events:none;padding:calc((var(--tui-height) - 1.5rem) / 2) 1rem}:host[data-size=m] .t-icons{padding:calc((var(--tui-height) - 1.5rem) / 2) .625rem}.t-icons>:not(:first-child){-webkit-margin-start:.25rem;margin-inline-start:.25rem}.t-icon{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}.t-icon_left{-webkit-margin-end:auto;margin-inline-end:auto}.t-cleaner{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-cleaner,:host._disabled .t-cleaner{pointer-events:none}.t-caret{display:inline-block;height:1rem;width:0}.t-counter{position:absolute;right:.75rem;bottom:.5rem;font:var(--tui-font-text-s);pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .t-counter{color:var(--tui-text-03-night)}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId", "context"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
134
|
+
], queries: [{ propertyName: "textfield", first: true, predicate: TuiTextfieldComponent, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<div\n automation-id=\"tui-text-area__wrapper\"\n tuiWrapper\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n <span class=\"t-caret\"></span>\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [readOnly]=\"readOnly\"\n [tuiFocusable]=\"computedFocusable\"\n [(ngModel)]=\"value\"\n ></textarea>\n <ng-content select=\"textarea\"></ng-content>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n <ng-container *ngIf=\"hasCustomContent\">\n <tui-svg\n *polymorpheusOutlet=\"controller.customContent as src\"\n [src]=\"src\"\n ></tui-svg>\n </ng-container>\n <ng-container *ngIf=\"hasCleaner\">\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n class=\"t-cleaner\"\n [src]=\"src\"\n (click.stop)=\"onValueChange('')\"\n ></tui-svg>\n </ng-container>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n ></tui-tooltip>\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </label>\n</div>\n", styles: [":host{position:relative;z-index:0;display:flex;flex-direction:column;min-height:var(--tui-textarea-height);border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-size=s]{--tui-height: var(--tui-height-s);--tui-textarea-height: 4.5625rem;font:var(--tui-font-text-s)}:host[data-size=m]{--tui-height: var(--tui-height-m);--tui-textarea-height: 5.5rem;font:var(--tui-font-text-s)}:host[data-size=l]{--tui-height: var(--tui-height-l);--tui-textarea-height: 6.75rem;font:var(--tui-font-text-m)}:host[data-size=m]._has-counter{--tui-textarea-height: 6.625rem}:host[data-size=l]._has-counter{--tui-textarea-height: 7.875rem}.t-outline{min-height:inherit}.t-content{display:block;margin-top:0;margin-bottom:0;min-height:inherit;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .t-content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .t-content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .t-content{bottom:1.6875rem}:host._label-outside._has-counter:not(._expandable) .t-content{bottom:1rem}.t-wrapper{position:relative;width:100%;height:100%;min-height:inherit;box-sizing:border-box;padding:calc((var(--tui-height) - 1.25rem) / 2) 0}:host[data-size=l]._label-outside .t-wrapper{padding:calc((var(--tui-height) - 1.5rem) / 2) 0}:host[data-size=m]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.25rem) / 2) 0}:host[data-size=l]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.625rem) / 2) 0}:host-context(table)[data-size=m]._label-outside .t-wrapper{padding-bottom:.75rem}:host-context(table)[data-size=l]._label-outside .t-wrapper{padding-bottom:1rem}.t-input-wrapper{min-height:inherit;width:100%;flex:1}.t-relative{position:relative;min-height:inherit}.t-box{display:flex;min-height:calc(100% - 1rem);width:100%}:host:not(._expandable) .t-box{height:calc(100% - 1rem)}:host:not(._expandable)._label-outside .t-box{height:100%}:host._has-counter._expandable .t-box{margin-bottom:1.25rem}:host[data-size=m]:not(._label-outside) .t-box{border-top:1rem solid transparent}:host[data-size=l]:not(._label-outside) .t-box{border-top:1.25rem solid transparent}.t-pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:solid transparent;border-top:0;border-bottom:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}:host[data-size=s] .t-pseudo-content,:host[data-size=m] .t-pseudo-content{padding:0 .75rem}:host[data-size=l] .t-pseudo-content{padding:0 1rem}.t-pseudo-content__extra{background-color:var(--tui-error-bg-night)}.t-input{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;-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%;box-sizing:border-box;resize:none;overflow:hidden;outline:none;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}.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:not(:last-of-type){display:none}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}:host._focused .t-input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-input:not(:read-only)::placeholder{opacity:1}:host[data-size=s] .t-input,:host[data-size=m] .t-input{padding:0 .75rem}:host[data-size=l] .t-input{padding:0 1rem}:host[data-mode=onDark]._disabled .t-input{color:var(--tui-text-03-night)}@supports (-webkit-marquee-repetition: infinite) and (object-fit: fill){:host._ios .t-input{padding-left:.8125rem}}.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);position:absolute;top:calc(var(--tui-height) / 2 - .625rem);left:0;max-width:100%;border:solid transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);box-sizing:border-box}@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)}:host[data-size=s] .t-placeholder{padding:0 .75rem}:host[data-size=m] .t-placeholder{padding:0 .75rem}:host[data-size=l] .t-placeholder{padding:0 1rem}:host._label-outside .t-placeholder{overflow:initial;height:auto;white-space:initial}.t-icons{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;justify-content:flex-end;pointer-events:none;padding:calc((var(--tui-height) - 1.5rem) / 2) 1rem}:host[data-size=m] .t-icons{padding:calc((var(--tui-height) - 1.5rem) / 2) .625rem}.t-icons>:not(:first-child){-webkit-margin-start:.25rem;margin-inline-start:.25rem}.t-icon{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}.t-icon_left{-webkit-margin-end:auto;margin-inline-end:auto}.t-cleaner{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-cleaner,:host._disabled .t-cleaner{pointer-events:none}.t-caret{display:inline-block;height:1rem;width:0}.t-counter{position:absolute;right:.75rem;bottom:.5rem;font:var(--tui-font-text-s);pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .t-counter{color:var(--tui-text-03-night)}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId", "context"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
135
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTextareaComponent, decorators: [{
|
|
136
136
|
type: Component,
|
|
137
137
|
args: [{
|
|
@@ -244,7 +244,7 @@ TuiTextAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
244
244
|
tuiAsControl(TuiTextAreaComponent),
|
|
245
245
|
TEXTFIELD_CONTROLLER_PROVIDER,
|
|
246
246
|
MODE_PROVIDER,
|
|
247
|
-
], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<div\n automation-id=\"tui-text-area__wrapper\"\n tuiWrapper\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n <span class=\"t-caret\"></span>\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [readOnly]=\"readOnly\"\n [tuiFocusable]=\"computedFocusable\"\n [(ngModel)]=\"value\"\n ></textarea>\n <ng-content select=\"textarea\"></ng-content>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n <ng-container *ngIf=\"hasCustomContent\">\n <tui-svg\n *polymorpheusOutlet=\"controller.customContent as src\"\n [src]=\"src\"\n ></tui-svg>\n </ng-container>\n <ng-container *ngIf=\"hasCleaner\">\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n class=\"t-cleaner\"\n [src]=\"src\"\n (click.stop)=\"onValueChange('')\"\n ></tui-svg>\n </ng-container>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n ></tui-tooltip>\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </label>\n</div>\n", styles: [":host{position:relative;z-index:0;display:flex;flex-direction:column;min-height:var(--tui-textarea-height);border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-size=s]{--tui-height: var(--tui-height-s);--tui-textarea-height: 4.5625rem;font:var(--tui-font-text-s)}:host[data-size=m]{--tui-height: var(--tui-height-m);--tui-textarea-height: 5.5rem;font:var(--tui-font-text-s)}:host[data-size=l]{--tui-height: var(--tui-height-l);--tui-textarea-height: 6.75rem;font:var(--tui-font-text-m)}:host[data-size=m]._has-counter{--tui-textarea-height: 6.625rem}:host[data-size=l]._has-counter{--tui-textarea-height: 7.875rem}.t-outline{min-height:inherit}.t-content{display:block;margin-top:0;margin-bottom:0;min-height:inherit;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .t-content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .t-content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .t-content{bottom:1.6875rem}:host._label-outside._has-counter:not(._expandable) .t-content{bottom:1rem}.t-wrapper{position:relative;width:100%;height:100%;min-height:inherit;box-sizing:border-box;padding:calc((var(--tui-height) - 1.25rem) / 2) 0}:host[data-size=l]._label-outside .t-wrapper{padding:calc((var(--tui-height) - 1.5rem) / 2) 0}:host[data-size=m]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.25rem) / 2) 0}:host[data-size=l]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.625rem) / 2) 0}:host-context(table)[data-size=m]._label-outside .t-wrapper{padding-bottom:.75rem}:host-context(table)[data-size=l]._label-outside .t-wrapper{padding-bottom:1rem}.t-input-wrapper{min-height:inherit;width:100%;flex:1}.t-relative{position:relative;min-height:inherit}.t-box{display:flex;min-height:calc(100% - 1rem);width:100%}:host:not(._expandable) .t-box{height:calc(100% - 1rem)}:host:not(._expandable)._label-outside .t-box{height:100%}:host._has-counter._expandable .t-box{margin-bottom:1.25rem}:host[data-size=m]:not(._label-outside) .t-box{border-top:1rem solid transparent}:host[data-size=l]:not(._label-outside) .t-box{border-top:1.25rem solid transparent}.t-pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:solid transparent;border-top:0;border-bottom:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}:host[data-size=s] .t-pseudo-content,:host[data-size=m] .t-pseudo-content{padding:0 .75rem}:host[data-size=l] .t-pseudo-content{padding:0 1rem}.t-pseudo-content__extra{background-color:var(--tui-error-bg-night)}.t-input{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;-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%;box-sizing:border-box;resize:none;overflow:hidden;outline:none;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}.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:not(:last-of-type){display:none}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}:host._focused .t-input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-input:not(:read-only)::placeholder{opacity:1}:host[data-size=s] .t-input,:host[data-size=m] .t-input{padding:0 .75rem}:host[data-size=l] .t-input{padding:0 1rem}:host[data-mode=onDark]._disabled .t-input{color:var(--tui-text-03-night)}@supports (-webkit-marquee-repetition: infinite) and (object-fit: fill){:host._ios .t-input{padding-left:.8125rem}}.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);position:absolute;top:calc(var(--tui-height) / 2 - .625rem);left:0;max-width:100%;border:solid transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);box-sizing:border-box}.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)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}:host[data-size=s] .t-placeholder{padding:0 .75rem}:host[data-size=m] .t-placeholder{padding:0 .75rem}:host[data-size=l] .t-placeholder{padding:0 1rem}:host._label-outside .t-placeholder{overflow:initial;height:auto;white-space:initial}.t-icons{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;justify-content:flex-end;pointer-events:none;padding:calc((var(--tui-height) - 1.5rem) / 2) 1rem}:host[data-size=m] .t-icons{padding:calc((var(--tui-height) - 1.5rem) / 2) .625rem}.t-icons>:not(:first-child){-webkit-margin-start:.25rem;margin-inline-start:.25rem}.t-icon{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}.t-icon_left{-webkit-margin-end:auto;margin-inline-end:auto}.t-cleaner{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-cleaner,:host._disabled .t-cleaner{pointer-events:none}.t-caret{display:inline-block;height:1rem;width:0}.t-counter{position:absolute;right:.75rem;bottom:.5rem;font:var(--tui-font-text-s);pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .t-counter{color:var(--tui-text-03-night)}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId", "context"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
247
|
+
], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<div\n automation-id=\"tui-text-area__wrapper\"\n tuiWrapper\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n <span class=\"t-caret\"></span>\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [readOnly]=\"readOnly\"\n [tuiFocusable]=\"computedFocusable\"\n [(ngModel)]=\"value\"\n ></textarea>\n <ng-content select=\"textarea\"></ng-content>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n <ng-container *ngIf=\"hasCustomContent\">\n <tui-svg\n *polymorpheusOutlet=\"controller.customContent as src\"\n [src]=\"src\"\n ></tui-svg>\n </ng-container>\n <ng-container *ngIf=\"hasCleaner\">\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n class=\"t-cleaner\"\n [src]=\"src\"\n (click.stop)=\"onValueChange('')\"\n ></tui-svg>\n </ng-container>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n ></tui-tooltip>\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon t-textfield-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n appearance=\"icon\"\n tuiWrapper\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </label>\n</div>\n", styles: [":host{position:relative;z-index:0;display:flex;flex-direction:column;min-height:var(--tui-textarea-height);border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-size=s]{--tui-height: var(--tui-height-s);--tui-textarea-height: 4.5625rem;font:var(--tui-font-text-s)}:host[data-size=m]{--tui-height: var(--tui-height-m);--tui-textarea-height: 5.5rem;font:var(--tui-font-text-s)}:host[data-size=l]{--tui-height: var(--tui-height-l);--tui-textarea-height: 6.75rem;font:var(--tui-font-text-m)}:host[data-size=m]._has-counter{--tui-textarea-height: 6.625rem}:host[data-size=l]._has-counter{--tui-textarea-height: 7.875rem}.t-outline{min-height:inherit}.t-content{display:block;margin-top:0;margin-bottom:0;min-height:inherit;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .t-content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .t-content{position:absolute;top:0;left:0;bottom:1px;right:0;min-height:auto}:host._has-counter:not(._expandable) .t-content{bottom:1.6875rem}:host._label-outside._has-counter:not(._expandable) .t-content{bottom:1rem}.t-wrapper{position:relative;width:100%;height:100%;min-height:inherit;box-sizing:border-box;padding:calc((var(--tui-height) - 1.25rem) / 2) 0}:host[data-size=l]._label-outside .t-wrapper{padding:calc((var(--tui-height) - 1.5rem) / 2) 0}:host[data-size=m]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.25rem) / 2) 0}:host[data-size=l]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.625rem) / 2) 0}:host-context(table)[data-size=m]._label-outside .t-wrapper{padding-bottom:.75rem}:host-context(table)[data-size=l]._label-outside .t-wrapper{padding-bottom:1rem}.t-input-wrapper{min-height:inherit;width:100%;flex:1}.t-relative{position:relative;min-height:inherit}.t-box{display:flex;min-height:calc(100% - 1rem);width:100%}:host:not(._expandable) .t-box{height:calc(100% - 1rem)}:host:not(._expandable)._label-outside .t-box{height:100%}:host._has-counter._expandable .t-box{margin-bottom:1.25rem}:host[data-size=m]:not(._label-outside) .t-box{border-top:1rem solid transparent}:host[data-size=l]:not(._label-outside) .t-box{border-top:1.25rem solid transparent}.t-pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:solid transparent;border-top:0;border-bottom:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}:host[data-size=s] .t-pseudo-content,:host[data-size=m] .t-pseudo-content{padding:0 .75rem}:host[data-size=l] .t-pseudo-content{padding:0 1rem}.t-pseudo-content__extra{background-color:var(--tui-error-bg-night)}.t-input{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;-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%;box-sizing:border-box;resize:none;overflow:hidden;outline:none;border-style:solid;border-color:transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0)}.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:not(:last-of-type){display:none}.t-input::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-input::placeholder{color:var(--tui-text-03-night)}:host._focused .t-input:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-input:not(:read-only)::placeholder{opacity:1}:host[data-size=s] .t-input,:host[data-size=m] .t-input{padding:0 .75rem}:host[data-size=l] .t-input{padding:0 1rem}:host[data-mode=onDark]._disabled .t-input{color:var(--tui-text-03-night)}@supports (-webkit-marquee-repetition: infinite) and (object-fit: fill){:host._ios .t-input{padding-left:.8125rem}}.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);position:absolute;top:calc(var(--tui-height) / 2 - .625rem);left:0;max-width:100%;border:solid transparent;border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);box-sizing:border-box}@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)}:host[data-size=s] .t-placeholder{padding:0 .75rem}:host[data-size=m] .t-placeholder{padding:0 .75rem}:host[data-size=l] .t-placeholder{padding:0 1rem}:host._label-outside .t-placeholder{overflow:initial;height:auto;white-space:initial}.t-icons{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;justify-content:flex-end;pointer-events:none;padding:calc((var(--tui-height) - 1.5rem) / 2) 1rem}:host[data-size=m] .t-icons{padding:calc((var(--tui-height) - 1.5rem) / 2) .625rem}.t-icons>:not(:first-child){-webkit-margin-start:.25rem;margin-inline-start:.25rem}.t-icon{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}.t-icon_left{-webkit-margin-end:auto;margin-inline-end:auto}.t-cleaner{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-cleaner,:host._disabled .t-cleaner{pointer-events:none}.t-caret{display:inline-block;height:1rem;width:0}.t-counter{position:absolute;right:.75rem;bottom:.5rem;font:var(--tui-font-text-s);pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .t-counter{color:var(--tui-text-03-night)}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId", "context"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
248
248
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTextAreaComponent, decorators: [{
|
|
249
249
|
type: Component,
|
|
250
250
|
args: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-constants.js","sources":["../../../projects/kit/constants/date-mode-maskito-adapter.ts","../../../projects/kit/constants/date-time-separator.ts","../../../projects/kit/constants/empty-mask.ts","../../../projects/kit/constants/group-class-names.ts","../../../projects/kit/constants/mask-after-code-regexp.ts","../../../projects/kit/constants/masks.ts","../../../projects/kit/constants/math.ts","../../../projects/kit/constants/max-day-range-length-mapper.ts","../../../projects/kit/constants/max-time-values.ts","../../../projects/kit/constants/router-link-options.ts","../../../projects/kit/constants/taiga-ui-kit-constants.ts"],"sourcesContent":["import {MaskitoDateMode} from '@maskito/kit';\nimport {TuiDateMode} from '@taiga-ui/cdk';\n\nexport const TUI_DATE_MODE_MASKITO_ADAPTER: Record<TuiDateMode, MaskitoDateMode> = {\n DMY: `dd/mm/yyyy`,\n MDY: `mm/dd/yyyy`,\n YMD: `yyyy/mm/dd`,\n};\n","export const DATE_TIME_SEPARATOR = `, `;\n","import {TuiTextMaskOptions} from '@taiga-ui/core';\n\n/**\n * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const EMPTY_MASK: TuiTextMaskOptions = {\n mask(): false {\n return false;\n },\n};\n","/**\n * @deprecated unused constant\n * TODO: delete in v4.0\n */\nexport const GROUP_CLASS_NAMES = [\n `_active`,\n `_disabled`,\n `_focused`,\n `_focus-visible`,\n `_hosted_dropdown_focused`,\n `ng-invalid`,\n `ng-touched`,\n `_pressed`,\n `_readonly`,\n];\n","export const MASK_AFTER_CODE_REGEXP = /\\([#]+\\)|[#\\- ]/g;\n","import {CHAR_HYPHEN, CHAR_PLUS} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nexport const TUI_PHONE_MASK: TuiTextMaskList = [\n CHAR_PLUS,\n `7`,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const TUI_TIME_MASK: TuiTextMaskList = [\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n `:`,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n","/**\n * Used as a limit for eliminating JS issues with floating point math\n */\nexport const TUI_FLOATING_PRECISION = 7;\n","import {\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-constants.js","sources":["../../../projects/kit/constants/date-mode-maskito-adapter.ts","../../../projects/kit/constants/date-time-separator.ts","../../../projects/kit/constants/empty-mask.ts","../../../projects/kit/constants/group-class-names.ts","../../../projects/kit/constants/mask-after-code-regexp.ts","../../../projects/kit/constants/masks.ts","../../../projects/kit/constants/math.ts","../../../projects/kit/constants/max-day-range-length-mapper.ts","../../../projects/kit/constants/max-time-values.ts","../../../projects/kit/constants/router-link-options.ts","../../../projects/kit/constants/taiga-ui-kit-constants.ts"],"sourcesContent":["import {MaskitoDateMode} from '@maskito/kit';\nimport {TuiDateMode} from '@taiga-ui/cdk';\n\nexport const TUI_DATE_MODE_MASKITO_ADAPTER: Record<TuiDateMode, MaskitoDateMode> = {\n DMY: `dd/mm/yyyy`,\n MDY: `mm/dd/yyyy`,\n YMD: `yyyy/mm/dd`,\n};\n","export const DATE_TIME_SEPARATOR = `, `;\n","import {TuiTextMaskOptions} from '@taiga-ui/core';\n\n/**\n * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const EMPTY_MASK: TuiTextMaskOptions = {\n mask(): false {\n return false;\n },\n};\n","/**\n * @deprecated unused constant\n * TODO: delete in v4.0\n */\nexport const GROUP_CLASS_NAMES = [\n `_active`,\n `_disabled`,\n `_focused`,\n `_focus-visible`,\n `_hosted_dropdown_focused`,\n `ng-invalid`,\n `ng-touched`,\n `_pressed`,\n `_readonly`,\n];\n","export const MASK_AFTER_CODE_REGEXP = /\\([#]+\\)|[#\\- ]/g;\n","import {CHAR_HYPHEN, CHAR_PLUS} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nexport const TUI_PHONE_MASK: TuiTextMaskList = [\n CHAR_PLUS,\n `7`,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const TUI_TIME_MASK: TuiTextMaskList = [\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n `:`,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n","/**\n * Used as a limit for eliminating JS issues with floating point math\n */\nexport const TUI_FLOATING_PRECISION = 7;\n","import {\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n tuiObjectFromEntries,\n TuiTypedMapper,\n} from '@taiga-ui/cdk';\n\nexport const MAX_DAY_RANGE_LENGTH_MAPPER: TuiTypedMapper<\n [TuiDay, TuiDayRange | null, TuiDayLike | null, boolean],\n TuiDay\n> = (min, value, maxLength, backwards) => {\n if (!value?.isSingleDay || !maxLength) {\n return min;\n }\n\n const negativeMaxLength = tuiObjectFromEntries(\n Object.entries(maxLength).map(([key, value]) => [key, -value]),\n );\n\n const dateShift = value.from\n .append(backwards ? negativeMaxLength : maxLength)\n .append({day: !backwards ? -1 : 1});\n\n if (backwards) {\n return dateShift.dayBefore(min) ? min : dateShift;\n }\n\n if (!min) {\n return dateShift;\n }\n\n return dateShift.dayAfter(min) ? min : dateShift;\n};\n","import {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\nexport const MAX_TIME_VALUES: Record<TuiTimeFormatParts, number> = {\n HH: 23,\n MM: 59,\n SS: 59,\n MS: 999,\n};\n","export const DEFAULT_ROUTER_LINK_OPTIONS = {\n fragment: ``,\n preserveFragment: true,\n replaceUrl: false,\n skipLocationChange: false,\n queryParams: null,\n useHref: false,\n target: null,\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-internal-primitive-calendar-range.js","sources":["../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.component.ts","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.template.html","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.module.ts","../../../projects/kit/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnInit,\n Optional,\n Output,\n Self,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n TuiDayRange,\n TuiDestroyService,\n TuiMapper,\n TuiMonth,\n tuiWatch,\n} from '@taiga-ui/cdk';\nimport {TUI_DEFAULT_MARKER_HANDLER, TuiMarkerHandler} from '@taiga-ui/core';\nimport {TUI_CALENDAR_DATE_STREAM} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n/**\n * @internal\n */\n@Component({\n selector: 'tui-primitive-calendar-range',\n templateUrl: './primitive-calendar-range.template.html',\n styleUrls: ['./primitive-calendar-range.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiPrimitiveCalendarRangeComponent implements OnInit {\n @Input()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n defaultViewedMonthFirst = TuiMonth.currentLocal();\n\n @Input()\n defaultViewedMonthSecond = TuiMonth.currentLocal().append({month: 1});\n\n @Input()\n min = TUI_FIRST_DAY;\n\n @Input()\n max = TUI_LAST_DAY;\n\n @Input()\n value: TuiDayRange | null = null;\n\n @Output()\n readonly dayClick = new EventEmitter<TuiDay>();\n\n hoveredItem: TuiDay | null = null;\n\n userViewedMonthFirst: TuiMonth = this.defaultViewedMonthFirst;\n userViewedMonthSecond: TuiMonth = this.defaultViewedMonthSecond;\n\n constructor(\n @Inject(TUI_CALENDAR_DATE_STREAM)\n @Optional()\n valueChanges: Observable<TuiDayRange | null> | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n if (!valueChanges) {\n return;\n }\n\n valueChanges.pipe(tuiWatch(cdr), takeUntil(destroy$)).subscribe(value => {\n this.value = value;\n this.updateViewedMonths();\n });\n }\n\n get cappedUserViewedMonthSecond(): TuiMonth {\n return this.userViewedMonthSecond.monthBefore(this.max)\n ? this.userViewedMonthSecond\n : this.max;\n }\n\n get cappedUserViewedMonthFirst(): TuiMonth {\n return this.userViewedMonthFirst.monthSameOrBefore(this.userViewedMonthSecond)\n ? this.userViewedMonthFirst\n : this.userViewedMonthSecond;\n }\n\n monthOffset: TuiMapper<TuiMonth, TuiMonth> = (value, offset: number) =>\n value.append({month: offset});\n\n ngOnInit(): void {\n this.setInitialMonths();\n }\n\n onSectionFirstViewedMonth(month: TuiMonth): void {\n this.userViewedMonthFirst = month;\n\n this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\n }\n\n onSectionSecondViewedMonth(month: TuiMonth): void {\n this.userViewedMonthSecond = month;\n\n this.userViewedMonthFirst = this.userViewedMonthSecond.append({\n month: -1,\n });\n }\n\n onDayClick(day: TuiDay): void {\n this.dayClick.emit(day);\n }\n\n private setInitialMonths(): void {\n if (!this.value) {\n this.userViewedMonthSecond = this.updatedViewedMonthSecond(\n this.defaultViewedMonthSecond,\n );\n\n this.userViewedMonthFirst = this.updatedViewedMonthFirst(\n this.defaultViewedMonthFirst,\n );\n }\n }\n\n private updatedViewedMonthSecond(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.max)) {\n return this.max;\n }\n\n if (month.monthBefore(this.min)) {\n return this.min.append({month: 1});\n }\n\n return month;\n }\n\n private updatedViewedMonthFirst(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.userViewedMonthSecond)) {\n return this.userViewedMonthSecond.append({month: -1});\n }\n\n if (month.monthSameOrBefore(this.min)) {\n return this.min;\n }\n\n return month;\n }\n\n private updateViewedMonths(): void {\n this.userViewedMonthFirst =\n this.value === null ? this.defaultViewedMonthFirst : this.value.from;\n\n this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\n }\n}\n","<tui-calendar\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"max\"\n [maxViewedMonth]=\"cappedUserViewedMonthSecond | tuiMapper: monthOffset : -1\"\n [min]=\"min\"\n [month]=\"userViewedMonthFirst\"\n [showAdjacent]=\"false\"\n [value]=\"value\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionFirstViewedMonth($event)\"\n></tui-calendar>\n<tui-calendar\n class=\"t-border\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"max\"\n [min]=\"min\"\n [minViewedMonth]=\"cappedUserViewedMonthFirst | tuiMapper: monthOffset : 1\"\n [month]=\"userViewedMonthSecond.monthSameOrBefore(min) ? (min | tuiMapper: monthOffset : 1) : userViewedMonthSecond\"\n [showAdjacent]=\"false\"\n [value]=\"value\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionSecondViewedMonth($event)\"\n></tui-calendar>\n","import {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {TuiCalendarModule, TuiScrollbarModule} from '@taiga-ui/core';\n\nimport {TuiPrimitiveCalendarRangeComponent} from './primitive-calendar-range.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [TuiMapperPipeModule, TuiScrollbarModule, TuiCalendarModule],\n declarations: [TuiPrimitiveCalendarRangeComponent],\n exports: [TuiPrimitiveCalendarRangeComponent],\n})\nexport class TuiPrimitiveCalendarRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-internal-primitive-calendar-range.js","sources":["../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.component.ts","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.template.html","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.module.ts","../../../projects/kit/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnInit,\n Optional,\n Output,\n Self,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n TuiDayRange,\n TuiDestroyService,\n TuiMonth,\n TuiTypedMapper,\n tuiWatch,\n} from '@taiga-ui/cdk';\nimport {TUI_DEFAULT_MARKER_HANDLER, TuiMarkerHandler} from '@taiga-ui/core';\nimport {TUI_CALENDAR_DATE_STREAM} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n/**\n * @internal\n */\n@Component({\n selector: 'tui-primitive-calendar-range',\n templateUrl: './primitive-calendar-range.template.html',\n styleUrls: ['./primitive-calendar-range.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiPrimitiveCalendarRangeComponent implements OnInit {\n @Input()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n defaultViewedMonthFirst = TuiMonth.currentLocal();\n\n @Input()\n defaultViewedMonthSecond = TuiMonth.currentLocal().append({month: 1});\n\n @Input()\n min = TUI_FIRST_DAY;\n\n @Input()\n max = TUI_LAST_DAY;\n\n @Input()\n value: TuiDayRange | null = null;\n\n @Output()\n readonly dayClick = new EventEmitter<TuiDay>();\n\n hoveredItem: TuiDay | null = null;\n\n userViewedMonthFirst: TuiMonth = this.defaultViewedMonthFirst;\n userViewedMonthSecond: TuiMonth = this.defaultViewedMonthSecond;\n\n constructor(\n @Inject(TUI_CALENDAR_DATE_STREAM)\n @Optional()\n valueChanges: Observable<TuiDayRange | null> | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n if (!valueChanges) {\n return;\n }\n\n valueChanges.pipe(tuiWatch(cdr), takeUntil(destroy$)).subscribe(value => {\n this.value = value;\n this.updateViewedMonths();\n });\n }\n\n get cappedUserViewedMonthSecond(): TuiMonth {\n return this.userViewedMonthSecond.monthBefore(this.max)\n ? this.userViewedMonthSecond\n : this.max;\n }\n\n get cappedUserViewedMonthFirst(): TuiMonth {\n return this.userViewedMonthFirst.monthSameOrBefore(this.userViewedMonthSecond)\n ? this.userViewedMonthFirst\n : this.userViewedMonthSecond;\n }\n\n monthOffset: TuiTypedMapper<[TuiMonth, number], TuiMonth> = (value, offset) =>\n value.append({month: offset});\n\n ngOnInit(): void {\n this.setInitialMonths();\n }\n\n onSectionFirstViewedMonth(month: TuiMonth): void {\n this.userViewedMonthFirst = month;\n\n this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\n }\n\n onSectionSecondViewedMonth(month: TuiMonth): void {\n this.userViewedMonthSecond = month;\n\n this.userViewedMonthFirst = this.userViewedMonthSecond.append({\n month: -1,\n });\n }\n\n onDayClick(day: TuiDay): void {\n this.dayClick.emit(day);\n }\n\n private setInitialMonths(): void {\n if (!this.value) {\n this.userViewedMonthSecond = this.updatedViewedMonthSecond(\n this.defaultViewedMonthSecond,\n );\n\n this.userViewedMonthFirst = this.updatedViewedMonthFirst(\n this.defaultViewedMonthFirst,\n );\n }\n }\n\n private updatedViewedMonthSecond(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.max)) {\n return this.max;\n }\n\n if (month.monthBefore(this.min)) {\n return this.min.append({month: 1});\n }\n\n return month;\n }\n\n private updatedViewedMonthFirst(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.userViewedMonthSecond)) {\n return this.userViewedMonthSecond.append({month: -1});\n }\n\n if (month.monthSameOrBefore(this.min)) {\n return this.min;\n }\n\n return month;\n }\n\n private updateViewedMonths(): void {\n this.userViewedMonthFirst =\n this.value === null ? this.defaultViewedMonthFirst : this.value.from;\n\n this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\n }\n}\n","<tui-calendar\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"max\"\n [maxViewedMonth]=\"cappedUserViewedMonthSecond | tuiMapper: monthOffset : -1\"\n [min]=\"min\"\n [month]=\"userViewedMonthFirst\"\n [showAdjacent]=\"false\"\n [value]=\"value\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionFirstViewedMonth($event)\"\n></tui-calendar>\n<tui-calendar\n class=\"t-border\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"max\"\n [min]=\"min\"\n [minViewedMonth]=\"cappedUserViewedMonthFirst | tuiMapper: monthOffset : 1\"\n [month]=\"userViewedMonthSecond.monthSameOrBefore(min) ? (min | tuiMapper: monthOffset : 1) : userViewedMonthSecond\"\n [showAdjacent]=\"false\"\n [value]=\"value\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionSecondViewedMonth($event)\"\n></tui-calendar>\n","import {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {TuiCalendarModule, TuiScrollbarModule} from '@taiga-ui/core';\n\nimport {TuiPrimitiveCalendarRangeComponent} from './primitive-calendar-range.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [TuiMapperPipeModule, TuiScrollbarModule, TuiCalendarModule],\n declarations: [TuiPrimitiveCalendarRangeComponent],\n exports: [TuiPrimitiveCalendarRangeComponent],\n})\nexport class TuiPrimitiveCalendarRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,9 @@ import { __decorate } from 'tslib';
|
|
|
2
2
|
import { tuiIsPresent, tuiPure, TUI_DEFAULT_STRINGIFY, TUI_DEFAULT_MATCHER, TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk';
|
|
3
3
|
import { tuiIsFlat } from '@taiga-ui/kit/utils';
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
|
-
import { Pipe, Inject, NgModule } from '@angular/core';
|
|
5
|
+
import { Pipe, Inject, Optional, NgModule } from '@angular/core';
|
|
6
6
|
import { TUI_DATA_LIST_HOST } from '@taiga-ui/core';
|
|
7
|
+
import { TuiMultiSelectDirective } from '@taiga-ui/kit/components/multi-select';
|
|
7
8
|
|
|
8
9
|
class AbstractTuiFilterByInput {
|
|
9
10
|
get query() {
|
|
@@ -21,13 +22,13 @@ class AbstractTuiFilterByInput {
|
|
|
21
22
|
}
|
|
22
23
|
filterFlat(items, matcher, stringify, query) {
|
|
23
24
|
const match = this.getMatch(items, stringify, query);
|
|
24
|
-
return tuiIsPresent(match)
|
|
25
|
+
return tuiIsPresent(match) && !this.multiSelect
|
|
25
26
|
? items
|
|
26
27
|
: items.filter(item => matcher(item, query, stringify));
|
|
27
28
|
}
|
|
28
29
|
filter2d(items, matcher, stringify, query) {
|
|
29
30
|
const match = items.find(item => tuiIsPresent(this.getMatch(item, stringify, query)));
|
|
30
|
-
return tuiIsPresent(match)
|
|
31
|
+
return tuiIsPresent(match) && !this.multiSelect
|
|
31
32
|
? items
|
|
32
33
|
: items.map(inner => this.filterFlat(inner, matcher, stringify, query));
|
|
33
34
|
}
|
|
@@ -40,16 +41,17 @@ __decorate([
|
|
|
40
41
|
], AbstractTuiFilterByInput.prototype, "filter", null);
|
|
41
42
|
|
|
42
43
|
class TuiFilterByInputPipe extends AbstractTuiFilterByInput {
|
|
43
|
-
constructor(accessor, host) {
|
|
44
|
+
constructor(accessor, host, multiSelect) {
|
|
44
45
|
super();
|
|
45
46
|
this.accessor = accessor;
|
|
46
47
|
this.host = host;
|
|
48
|
+
this.multiSelect = multiSelect;
|
|
47
49
|
}
|
|
48
50
|
transform(items, matcher = TUI_DEFAULT_MATCHER) {
|
|
49
51
|
return this.filter(items, matcher, this.host.stringify || TUI_DEFAULT_STRINGIFY, this.query);
|
|
50
52
|
}
|
|
51
53
|
}
|
|
52
|
-
TuiFilterByInputPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, deps: [{ token: TUI_FOCUSABLE_ITEM_ACCESSOR }, { token: TUI_DATA_LIST_HOST }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
54
|
+
TuiFilterByInputPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, deps: [{ token: TUI_FOCUSABLE_ITEM_ACCESSOR }, { token: TUI_DATA_LIST_HOST }, { token: TuiMultiSelectDirective, optional: true }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
53
55
|
TuiFilterByInputPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, name: "tuiFilterByInput", pure: false });
|
|
54
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, decorators: [{
|
|
55
57
|
type: Pipe,
|
|
@@ -63,21 +65,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
63
65
|
}] }, { type: undefined, decorators: [{
|
|
64
66
|
type: Inject,
|
|
65
67
|
args: [TUI_DATA_LIST_HOST]
|
|
68
|
+
}] }, { type: undefined, decorators: [{
|
|
69
|
+
type: Optional
|
|
70
|
+
}, {
|
|
71
|
+
type: Inject,
|
|
72
|
+
args: [TuiMultiSelectDirective]
|
|
66
73
|
}] }]; } });
|
|
67
74
|
|
|
68
75
|
/**
|
|
69
76
|
* @deprecated Use {@link TuiFilterByInputPipe} instead
|
|
70
77
|
*/
|
|
71
78
|
class TuiFilterByInputWithPipe extends AbstractTuiFilterByInput {
|
|
72
|
-
constructor(accessor) {
|
|
79
|
+
constructor(accessor, multiSelect) {
|
|
73
80
|
super();
|
|
74
81
|
this.accessor = accessor;
|
|
82
|
+
this.multiSelect = multiSelect;
|
|
75
83
|
}
|
|
76
84
|
transform(items, stringify) {
|
|
77
85
|
return this.filter(items, TUI_DEFAULT_MATCHER, stringify, this.query);
|
|
78
86
|
}
|
|
79
87
|
}
|
|
80
|
-
TuiFilterByInputWithPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputWithPipe, deps: [{ token: TUI_FOCUSABLE_ITEM_ACCESSOR }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
88
|
+
TuiFilterByInputWithPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputWithPipe, deps: [{ token: TUI_FOCUSABLE_ITEM_ACCESSOR }, { token: TuiMultiSelectDirective, optional: true }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
81
89
|
TuiFilterByInputWithPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputWithPipe, name: "tuiFilterByInputWith", pure: false });
|
|
82
90
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputWithPipe, decorators: [{
|
|
83
91
|
type: Pipe,
|
|
@@ -88,6 +96,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
88
96
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
89
97
|
type: Inject,
|
|
90
98
|
args: [TUI_FOCUSABLE_ITEM_ACCESSOR]
|
|
99
|
+
}] }, { type: undefined, decorators: [{
|
|
100
|
+
type: Optional
|
|
101
|
+
}, {
|
|
102
|
+
type: Inject,
|
|
103
|
+
args: [TuiMultiSelectDirective]
|
|
91
104
|
}] }]; } });
|
|
92
105
|
|
|
93
106
|
class TuiFilterByInputPipeModule {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-pipes-filter-by-input.js","sources":["../../../projects/kit/pipes/filter-by-input/filter-by-input.base.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input-with.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.module.ts","../../../projects/kit/pipes/filter-by-input/taiga-ui-kit-pipes-filter-by-input.ts"],"sourcesContent":["import {\n TuiFocusableElementAccessor,\n tuiIsPresent,\n tuiPure,\n TuiStringHandler,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {tuiIsFlat} from '@taiga-ui/kit/utils';\n\nexport type ArrayElement<A> = A extends ReadonlyArray<infer T>\n ? A extends ReadonlyArray<ReadonlyArray<infer G>>\n ? G\n : T\n : never;\n\nexport abstract class AbstractTuiFilterByInput {\n protected abstract readonly accessor: TuiFocusableElementAccessor;\n\n protected get query(): string {\n return this.accessor.nativeFocusableElement\n ? (this.accessor.nativeFocusableElement as HTMLInputElement).value || ``\n : ``;\n }\n\n @tuiPure\n protected filter<T>(\n items: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> | readonly T[] | null {\n if (!items) {\n return null;\n }\n\n return tuiIsFlat(items)\n ? this.filterFlat(items, matcher, stringify, query)\n : this.filter2d(items, matcher, stringify, query);\n }\n\n private filterFlat<T>(\n items: readonly T[],\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): readonly T[] {\n const match = this.getMatch(items, stringify, query);\n\n return tuiIsPresent(match)\n ? items\n : items.filter(item => matcher(item, query, stringify));\n }\n\n private filter2d<T>(\n items: ReadonlyArray<readonly T[]>,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> {\n const match = items.find(item =>\n tuiIsPresent(this.getMatch(item, stringify, query)),\n );\n\n return tuiIsPresent(match)\n ? items\n : items.map(inner => this.filterFlat(inner, matcher, stringify, query));\n }\n\n private getMatch<T>(\n items: readonly T[],\n stringify: TuiStringHandler<T>,\n query: string,\n ): T | undefined {\n return items.find(\n item => stringify(item).toLocaleLowerCase() === query.toLocaleLowerCase(),\n );\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {TUI_DATA_LIST_HOST, TuiDataListHost} from '@taiga-ui/core';\n\nimport {AbstractTuiFilterByInput, ArrayElement} from './filter-by-input.base';\n\n@Pipe({\n name: `tuiFilterByInput`,\n pure: false,\n})\nexport class TuiFilterByInputPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<unknown>,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringMatcher<ArrayElement<T>>): T;\n transform<T>(\n items: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T> = TUI_DEFAULT_MATCHER,\n ): ReadonlyArray<readonly T[]> | readonly T[] | null {\n return this.filter(\n items,\n matcher,\n this.host.stringify || TUI_DEFAULT_STRINGIFY,\n this.query,\n );\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\n\nimport {AbstractTuiFilterByInput, ArrayElement} from './filter-by-input.base';\n\n/**\n * @deprecated Use {@link TuiFilterByInputPipe} instead\n */\n@Pipe({\n name: `tuiFilterByInputWith`,\n pure: false,\n})\nexport class TuiFilterByInputWithPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringHandler<ArrayElement<T>>): T;\n transform<T>(\n items: ReadonlyArray<readonly T[]> | readonly T[] | null,\n stringify: TuiStringHandler<T>,\n ): ReadonlyArray<readonly T[]> | readonly T[] | null {\n return this.filter(items, TUI_DEFAULT_MATCHER, stringify, this.query);\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiFilterByInputPipe} from './filter-by-input.pipe';\nimport {TuiFilterByInputWithPipe} from './filter-by-input-with.pipe';\n\n@NgModule({\n declarations: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n exports: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n})\nexport class TuiFilterByInputPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-pipes-filter-by-input.js","sources":["../../../projects/kit/pipes/filter-by-input/filter-by-input.base.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input-with.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.module.ts","../../../projects/kit/pipes/filter-by-input/taiga-ui-kit-pipes-filter-by-input.ts"],"sourcesContent":["import {\n TuiFocusableElementAccessor,\n tuiIsPresent,\n tuiPure,\n TuiStringHandler,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {tuiIsFlat} from '@taiga-ui/kit/utils';\n\nexport type TuiArrayElement<A> = A extends ReadonlyArray<infer T>\n ? A extends ReadonlyArray<ReadonlyArray<infer G>>\n ? G\n : T\n : never;\n\n/**\n * @deprecated: use {@link TuiArrayElement}\n * TODO: remove in v4.0\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport type ArrayElement<A> = TuiArrayElement<A>;\n\nexport abstract class AbstractTuiFilterByInput {\n protected abstract readonly accessor: TuiFocusableElementAccessor;\n protected abstract readonly multiSelect: unknown;\n\n protected get query(): string {\n return this.accessor.nativeFocusableElement\n ? (this.accessor.nativeFocusableElement as HTMLInputElement).value || ``\n : ``;\n }\n\n @tuiPure\n protected filter<T>(\n items: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> | readonly T[] | null {\n if (!items) {\n return null;\n }\n\n return tuiIsFlat(items)\n ? this.filterFlat(items, matcher, stringify, query)\n : this.filter2d(items, matcher, stringify, query);\n }\n\n private filterFlat<T>(\n items: readonly T[],\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): readonly T[] {\n const match = this.getMatch(items, stringify, query);\n\n return tuiIsPresent(match) && !this.multiSelect\n ? items\n : items.filter(item => matcher(item, query, stringify));\n }\n\n private filter2d<T>(\n items: ReadonlyArray<readonly T[]>,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> {\n const match = items.find(item =>\n tuiIsPresent(this.getMatch(item, stringify, query)),\n );\n\n return tuiIsPresent(match) && !this.multiSelect\n ? items\n : items.map(inner => this.filterFlat(inner, matcher, stringify, query));\n }\n\n private getMatch<T>(\n items: readonly T[],\n stringify: TuiStringHandler<T>,\n query: string,\n ): T | undefined {\n return items.find(\n item => stringify(item).toLocaleLowerCase() === query.toLocaleLowerCase(),\n );\n }\n}\n","import {Inject, Optional, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {TUI_DATA_LIST_HOST, TuiDataListHost} from '@taiga-ui/core';\nimport {TuiMultiSelectDirective} from '@taiga-ui/kit/components/multi-select';\n\nimport {AbstractTuiFilterByInput, TuiArrayElement} from './filter-by-input.base';\n\n@Pipe({\n name: `tuiFilterByInput`,\n pure: false,\n})\nexport class TuiFilterByInputPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<unknown>,\n @Optional()\n @Inject(TuiMultiSelectDirective)\n protected readonly multiSelect: unknown,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringMatcher<TuiArrayElement<T>>): T;\n transform<T>(\n items: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T> = TUI_DEFAULT_MATCHER,\n ): ReadonlyArray<readonly T[]> | readonly T[] | null {\n return this.filter(\n items,\n matcher,\n this.host.stringify || TUI_DEFAULT_STRINGIFY,\n this.query,\n );\n }\n}\n","import {Inject, Optional, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {TuiMultiSelectDirective} from '@taiga-ui/kit/components/multi-select';\n\nimport {AbstractTuiFilterByInput, TuiArrayElement} from './filter-by-input.base';\n\n/**\n * @deprecated Use {@link TuiFilterByInputPipe} instead\n */\n@Pipe({\n name: `tuiFilterByInputWith`,\n pure: false,\n})\nexport class TuiFilterByInputWithPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n @Optional()\n @Inject(TuiMultiSelectDirective)\n protected readonly multiSelect: unknown,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringHandler<TuiArrayElement<T>>): T;\n transform<T>(\n items: ReadonlyArray<readonly T[]> | readonly T[] | null,\n stringify: TuiStringHandler<T>,\n ): ReadonlyArray<readonly T[]> | readonly T[] | null {\n return this.filter(items, TUI_DEFAULT_MATCHER, stringify, this.query);\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiFilterByInputPipe} from './filter-by-input.pipe';\nimport {TuiFilterByInputWithPipe} from './filter-by-input-with.pipe';\n\n@NgModule({\n declarations: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n exports: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n})\nexport class TuiFilterByInputPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChangeDetectorRef, EventEmitter, OnInit } from '@angular/core';
|
|
2
|
-
import { TuiBooleanHandler, TuiDay, TuiDayRange, TuiDestroyService,
|
|
2
|
+
import { TuiBooleanHandler, TuiDay, TuiDayRange, TuiDestroyService, TuiMonth, TuiTypedMapper } from '@taiga-ui/cdk';
|
|
3
3
|
import { TuiMarkerHandler } from '@taiga-ui/core';
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -21,7 +21,7 @@ export declare class TuiPrimitiveCalendarRangeComponent implements OnInit {
|
|
|
21
21
|
constructor(valueChanges: Observable<TuiDayRange | null> | null, cdr: ChangeDetectorRef, destroy$: TuiDestroyService);
|
|
22
22
|
get cappedUserViewedMonthSecond(): TuiMonth;
|
|
23
23
|
get cappedUserViewedMonthFirst(): TuiMonth;
|
|
24
|
-
monthOffset:
|
|
24
|
+
monthOffset: TuiTypedMapper<[TuiMonth, number], TuiMonth>;
|
|
25
25
|
ngOnInit(): void;
|
|
26
26
|
onSectionFirstViewedMonth(month: TuiMonth): void;
|
|
27
27
|
onSectionSecondViewedMonth(month: TuiMonth): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ui/kit",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.48.0-canary.0e61adf",
|
|
4
4
|
"description": "Taiga UI Angular main components kit",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
"@ng-web-apis/common": ">=3.0.0",
|
|
29
29
|
"@ng-web-apis/mutation-observer": ">=3.0.0",
|
|
30
30
|
"@ng-web-apis/resize-observer": ">=3.0.0",
|
|
31
|
-
"@taiga-ui/cdk": ">=3.
|
|
32
|
-
"@taiga-ui/core": ">=3.
|
|
33
|
-
"@taiga-ui/i18n": ">=3.
|
|
31
|
+
"@taiga-ui/cdk": ">=3.48.0",
|
|
32
|
+
"@taiga-ui/core": ">=3.48.0",
|
|
33
|
+
"@taiga-ui/i18n": ">=3.48.0",
|
|
34
34
|
"@tinkoff/ng-polymorpheus": ">=4.0.0",
|
|
35
35
|
"rxjs": ">=6.0.0"
|
|
36
36
|
},
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import { TuiFocusableElementAccessor, TuiStringHandler } from '@taiga-ui/cdk';
|
|
3
|
-
import { AbstractTuiFilterByInput,
|
|
3
|
+
import { AbstractTuiFilterByInput, TuiArrayElement } from './filter-by-input.base';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
/**
|
|
6
6
|
* @deprecated Use {@link TuiFilterByInputPipe} instead
|
|
7
7
|
*/
|
|
8
8
|
export declare class TuiFilterByInputWithPipe extends AbstractTuiFilterByInput implements PipeTransform {
|
|
9
9
|
protected readonly accessor: TuiFocusableElementAccessor;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
protected readonly multiSelect: unknown;
|
|
11
|
+
constructor(accessor: TuiFocusableElementAccessor, multiSelect: unknown);
|
|
12
|
+
transform<T>(items: T, matcher?: TuiStringHandler<TuiArrayElement<T>>): T;
|
|
13
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiFilterByInputWithPipe, [null, { optional: true; }]>;
|
|
13
14
|
static ɵpipe: i0.ɵɵPipeDeclaration<TuiFilterByInputWithPipe, "tuiFilterByInputWith">;
|
|
14
15
|
}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { TuiFocusableElementAccessor, TuiStringHandler, TuiStringMatcher } from '@taiga-ui/cdk';
|
|
2
|
-
export declare type
|
|
2
|
+
export declare type TuiArrayElement<A> = A extends ReadonlyArray<infer T> ? A extends ReadonlyArray<ReadonlyArray<infer G>> ? G : T : never;
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated: use {@link TuiArrayElement}
|
|
5
|
+
* TODO: remove in v4.0
|
|
6
|
+
*/
|
|
7
|
+
export declare type ArrayElement<A> = TuiArrayElement<A>;
|
|
3
8
|
export declare abstract class AbstractTuiFilterByInput {
|
|
4
9
|
protected abstract readonly accessor: TuiFocusableElementAccessor;
|
|
10
|
+
protected abstract readonly multiSelect: unknown;
|
|
5
11
|
protected get query(): string;
|
|
6
12
|
protected filter<T>(items: ReadonlyArray<readonly T[]> | readonly T[] | null, matcher: TuiStringMatcher<T>, stringify: TuiStringHandler<T>, query: string): ReadonlyArray<readonly T[]> | readonly T[] | null;
|
|
7
13
|
private filterFlat;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import { TuiFocusableElementAccessor, TuiStringMatcher } from '@taiga-ui/cdk';
|
|
3
3
|
import { TuiDataListHost } from '@taiga-ui/core';
|
|
4
|
-
import { AbstractTuiFilterByInput,
|
|
4
|
+
import { AbstractTuiFilterByInput, TuiArrayElement } from './filter-by-input.base';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class TuiFilterByInputPipe extends AbstractTuiFilterByInput implements PipeTransform {
|
|
7
7
|
protected readonly accessor: TuiFocusableElementAccessor;
|
|
8
8
|
private readonly host;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
protected readonly multiSelect: unknown;
|
|
10
|
+
constructor(accessor: TuiFocusableElementAccessor, host: TuiDataListHost<unknown>, multiSelect: unknown);
|
|
11
|
+
transform<T>(items: T, matcher?: TuiStringMatcher<TuiArrayElement<T>>): T;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiFilterByInputPipe, [null, null, { optional: true; }]>;
|
|
12
13
|
static ɵpipe: i0.ɵɵPipeDeclaration<TuiFilterByInputPipe, "tuiFilterByInput">;
|
|
13
14
|
}
|