@taiga-ui/cdk 4.52.0-canary.eb5ffe3 → 4.52.0-canary.ec0802b
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/README.md +1 -1
- package/classes/control.d.ts +4 -6
- package/constants/used-icons.d.ts +1 -1
- package/constants/version.d.ts +1 -1
- package/constants/version.js +1 -1
- package/directives/auto-focus/autofocus.directive.d.ts +2 -3
- package/directives/click-outside/click-outside.directive.d.ts +2 -2
- package/directives/copy-processor/copy-processor.directive.d.ts +2 -2
- package/directives/droppable/droppable.directive.d.ts +4 -2
- package/directives/hovered/hovered.directive.d.ts +1 -2
- package/directives/index.d.ts +0 -1
- package/directives/media/media.directive.d.ts +8 -12
- package/directives/native-validator/native-validator.directive.d.ts +2 -2
- package/directives/obscured/obscured.directive.d.ts +4 -4
- package/directives/pan/pan.directive.d.ts +1 -2
- package/directives/platform/platform.directive.d.ts +2 -2
- package/directives/repeat-times/repeat-times.directive.d.ts +3 -2
- package/directives/resizer/resizer.directive.d.ts +3 -4
- package/directives/swipe/swipe.directive.d.ts +1 -2
- package/directives/value-changes/value-changes.directive.d.ts +2 -2
- package/fesm2022/taiga-ui-cdk-classes.mjs +5 -17
- package/fesm2022/taiga-ui-cdk-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-constants.mjs +12 -3
- package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-date-time.mjs +1 -1
- package/fesm2022/taiga-ui-cdk-date-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-animated.mjs +0 -2
- package/fesm2022/taiga-ui-cdk-directives-animated.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs +8 -11
- package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs +5 -6
- package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-control.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-control.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs +5 -8
- package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-droppable.mjs +7 -9
- package/fesm2022/taiga-ui-cdk-directives-droppable.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-element.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-element.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-font-size.mjs +1 -4
- package/fesm2022/taiga-ui-cdk-directives-font-size.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-hovered.mjs +4 -7
- package/fesm2022/taiga-ui-cdk-directives-hovered.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-item.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-item.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-let.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-let.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-media.mjs +30 -55
- package/fesm2022/taiga-ui-cdk-directives-media.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs +5 -8
- package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-obscured.mjs +8 -14
- package/fesm2022/taiga-ui-cdk-directives-obscured.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-pan.mjs +4 -6
- package/fesm2022/taiga-ui-cdk-directives-pan.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-platform.mjs +7 -10
- package/fesm2022/taiga-ui-cdk-directives-platform.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs +15 -16
- package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-resizer.mjs +14 -18
- package/fesm2022/taiga-ui-cdk-directives-resizer.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-swipe.mjs +4 -6
- package/fesm2022/taiga-ui-cdk-directives-swipe.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-validator.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-validator.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs +5 -6
- package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-zoom.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives-zoom.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-directives.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-observables.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-animation.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-animation.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-filter.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-filter.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-keys.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-keys.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-replace.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-replace.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-portals.mjs +2 -1
- package/fesm2022/taiga-ui-cdk-portals.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-services.mjs +3 -43
- package/fesm2022/taiga-ui-cdk-services.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-browser.mjs +1 -23
- package/fesm2022/taiga-ui-cdk-utils-browser.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-color.mjs +2 -1
- package/fesm2022/taiga-ui-cdk-utils-color.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-dom.mjs +1 -0
- package/fesm2022/taiga-ui-cdk-utils-dom.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs +6 -2
- package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs.map +1 -1
- package/package.json +13 -14
- package/pipes/obfuscate/obfuscate.options.d.ts +1 -1
- package/portals/portal.d.ts +1 -1
- package/schematics/collection.json +2 -1
- package/schematics/migrate-tui-let/index.js +2 -1
- package/schematics/migrate-tui-let/index.js.map +1 -1
- package/schematics/migrate-tui-let/schema.json +7 -0
- package/schematics/ng-add/constants/versions.d.ts +1 -1
- package/schematics/ng-update/interfaces/html-comment.d.ts +1 -1
- package/schematics/ng-update/interfaces/removable-input.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-attribute-to-directive.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-attribute-value.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-attribute.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-tag.d.ts +1 -1
- package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.js +1 -1
- package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-templates.d.ts +2 -2
- package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.js +1 -1
- package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.js.map +1 -1
- package/schematics/ng-update/v5/index.js +3 -0
- package/schematics/ng-update/v5/index.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.d.ts +2 -0
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js +22 -0
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js.map +1 -0
- package/schematics/ng-update/v5/steps/constants/functions.js +36 -0
- package/schematics/ng-update/v5/steps/constants/functions.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.d.ts +2 -0
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js +22 -0
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js.map +1 -0
- package/schematics/ng-update/v5/steps/migrate-templates.d.ts +2 -2
- package/schematics/ng-update/v5/steps/migrate-templates.js +4 -0
- package/schematics/ng-update/v5/steps/migrate-templates.js.map +1 -1
- package/schematics/ng-update/v5/steps/templates/migrate-input-year.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-input-year.js +52 -0
- package/schematics/ng-update/v5/steps/templates/migrate-input-year.js.map +1 -0
- package/schematics/utils/angular-json-manipulations.js +0 -2
- package/schematics/utils/angular-json-manipulations.js.map +1 -1
- package/schematics/utils/run-migration.d.ts +14 -0
- package/schematics/utils/run-migration.js +26 -0
- package/schematics/utils/run-migration.js.map +1 -0
- package/schematics/utils/templates/elements.js +4 -12
- package/schematics/utils/templates/elements.js.map +1 -1
- package/schematics/utils/templates/ng-component-input-manipulations.d.ts +3 -3
- package/schematics/utils/templates/ng-component-input-manipulations.js +1 -3
- package/schematics/utils/templates/ng-component-input-manipulations.js.map +1 -1
- package/services/index.d.ts +0 -1
- package/utils/browser/index.d.ts +0 -2
- package/utils/miscellaneous/index.d.ts +1 -0
- package/utils/miscellaneous/object-shallow-equals.d.ts +1 -0
- package/directives/popover/index.d.ts +0 -1
- package/directives/popover/popover.directive.d.ts +0 -14
- package/fesm2022/taiga-ui-cdk-directives-popover.mjs +0 -32
- package/fesm2022/taiga-ui-cdk-directives-popover.mjs.map +0 -1
- package/services/popover.service.d.ts +0 -25
- package/utils/browser/is-apple.d.ts +0 -11
- package/utils/browser/is-ios.d.ts +0 -6
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, Injectable,
|
|
2
|
+
import { inject, Injectable, input, Directive } from '@angular/core';
|
|
3
|
+
import { toObservable, outputFromObservable } from '@angular/core/rxjs-interop';
|
|
3
4
|
import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
|
|
4
5
|
import { tuiZonefreeScheduler, tuiZoneOptimized, tuiIfMap } from '@taiga-ui/cdk/observables';
|
|
5
|
-
import { Observable, throttleTime, map, startWith, distinctUntilChanged
|
|
6
|
+
import { Observable, throttleTime, map, startWith, distinctUntilChanged } from 'rxjs';
|
|
6
7
|
import { WA_ANIMATION_FRAME } from '@ng-web-apis/common';
|
|
7
8
|
import { tuiInjectElement, tuiGetElementObscures } from '@taiga-ui/cdk/utils/dom';
|
|
8
9
|
|
|
@@ -29,28 +30,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
29
30
|
class TuiObscured {
|
|
30
31
|
constructor() {
|
|
31
32
|
this.activeZone = inject(TuiActiveZone, { optional: true });
|
|
32
|
-
this.enabled$ = new BehaviorSubject(false);
|
|
33
33
|
this.obscured$ = inject(TuiObscuredService, { self: true }).pipe(map((by) => !!by?.every((el) => check(el) || !this.activeZone?.contains(el))));
|
|
34
|
-
this.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
this.enabled$.next(enabled);
|
|
34
|
+
this.tuiObscuredEnabled = input();
|
|
35
|
+
this.tuiObscured$ = toObservable(this.tuiObscuredEnabled).pipe(tuiIfMap(() => this.obscured$));
|
|
36
|
+
this.tuiObscured = outputFromObservable(this.tuiObscured$);
|
|
38
37
|
}
|
|
39
38
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiObscured, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
40
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
39
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiObscured, isStandalone: true, selector: "[tuiObscured]", inputs: { tuiObscuredEnabled: { classPropertyName: "tuiObscuredEnabled", publicName: "tuiObscuredEnabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tuiObscured: "tuiObscured" }, providers: [TuiObscuredService], ngImport: i0 }); }
|
|
41
40
|
}
|
|
42
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiObscured, decorators: [{
|
|
43
42
|
type: Directive,
|
|
44
43
|
args: [{
|
|
45
|
-
standalone: true,
|
|
46
44
|
selector: '[tuiObscured]',
|
|
47
45
|
providers: [TuiObscuredService],
|
|
48
46
|
}]
|
|
49
|
-
}]
|
|
50
|
-
type: Output
|
|
51
|
-
}], tuiObscuredEnabled: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}] } });
|
|
47
|
+
}] });
|
|
54
48
|
// TODO: Refactor so that dropdowns and dialogs work properly without hacks
|
|
55
49
|
function check(el) {
|
|
56
50
|
return (!!el.closest('tui-dialogs') &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-obscured.mjs","sources":["../../../projects/cdk/directives/obscured/obscured.service.ts","../../../projects/cdk/directives/obscured/obscured.directive.ts","../../../projects/cdk/directives/obscured/taiga-ui-cdk-directives-obscured.ts"],"sourcesContent":["import {inject, Injectable} from '@angular/core';\nimport {WA_ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZonefreeScheduler, tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {tuiGetElementObscures, tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {distinctUntilChanged, map, Observable, startWith, throttleTime} from 'rxjs';\n\n/**\n * Service that monitors element visibility by polling and returning\n * either null or an array of elements that overlap given element edges\n */\n@Injectable()\nexport class TuiObscuredService extends Observable<readonly Element[] | null> {\n private readonly el = tuiInjectElement();\n private readonly obscured$ = inject(WA_ANIMATION_FRAME).pipe(\n throttleTime(100, tuiZonefreeScheduler()),\n map(() => tuiGetElementObscures(this.el)),\n startWith(null),\n distinctUntilChanged(),\n tuiZoneOptimized(),\n );\n\n constructor() {\n super((subscriber) => this.obscured$.subscribe(subscriber));\n }\n}\n","import {Directive, inject,
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-obscured.mjs","sources":["../../../projects/cdk/directives/obscured/obscured.service.ts","../../../projects/cdk/directives/obscured/obscured.directive.ts","../../../projects/cdk/directives/obscured/taiga-ui-cdk-directives-obscured.ts"],"sourcesContent":["import {inject, Injectable} from '@angular/core';\nimport {WA_ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZonefreeScheduler, tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {tuiGetElementObscures, tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {distinctUntilChanged, map, Observable, startWith, throttleTime} from 'rxjs';\n\n/**\n * Service that monitors element visibility by polling and returning\n * either null or an array of elements that overlap given element edges\n */\n@Injectable()\nexport class TuiObscuredService extends Observable<readonly Element[] | null> {\n private readonly el = tuiInjectElement();\n private readonly obscured$ = inject(WA_ANIMATION_FRAME).pipe(\n throttleTime(100, tuiZonefreeScheduler()),\n map(() => tuiGetElementObscures(this.el)),\n startWith(null),\n distinctUntilChanged(),\n tuiZoneOptimized(),\n );\n\n constructor() {\n super((subscriber) => this.obscured$.subscribe(subscriber));\n }\n}\n","import {Directive, inject, input} from '@angular/core';\nimport {outputFromObservable, toObservable} from '@angular/core/rxjs-interop';\nimport {TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {tuiIfMap} from '@taiga-ui/cdk/observables';\nimport {map} from 'rxjs';\n\nimport {TuiObscuredService} from './obscured.service';\n\n/**\n * Directive that monitors element visibility\n */\n@Directive({\n selector: '[tuiObscured]',\n providers: [TuiObscuredService],\n})\nexport class TuiObscured {\n private readonly activeZone = inject(TuiActiveZone, {optional: true});\n private readonly obscured$ = inject(TuiObscuredService, {self: true}).pipe(\n map((by) => !!by?.every((el) => check(el) || !this.activeZone?.contains(el))),\n );\n\n public readonly tuiObscuredEnabled = input<boolean>();\n\n public readonly tuiObscured$ = toObservable(this.tuiObscuredEnabled).pipe(\n tuiIfMap(() => this.obscured$),\n );\n\n public readonly tuiObscured = outputFromObservable(this.tuiObscured$);\n}\n\n// TODO: Refactor so that dropdowns and dialogs work properly without hacks\nfunction check(el: Element): boolean {\n return (\n !!el.closest('tui-dialogs') &&\n // eslint-disable-next-line unicorn/prefer-query-selector\n !!el.ownerDocument.documentElement.getElementsByTagName('tui-dropdown').length\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAMA;;;AAGG;AAEG,MAAO,kBAAmB,SAAQ,UAAqC,CAAA;AAUzE,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAV9C,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AACvB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CACxD,YAAY,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,EACzC,GAAG,CAAC,MAAM,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EACzC,SAAS,CAAC,IAAI,CAAC,EACf,oBAAoB,EAAE,EACtB,gBAAgB,EAAE,CACrB;;+GARQ,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAlB,kBAAkB,EAAA,CAAA,CAAA;;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B;;;ACFD;;AAEG;MAKU,WAAW,CAAA;AAJxB,IAAA,WAAA,GAAA;QAKqB,IAAU,CAAA,UAAA,GAAG,MAAM,CAAC,aAAa,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;QACpD,IAAS,CAAA,SAAA,GAAG,MAAM,CAAC,kBAAkB,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC,IAAI,CACtE,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAChF;QAEe,IAAkB,CAAA,kBAAA,GAAG,KAAK,EAAW;QAErC,IAAY,CAAA,YAAA,GAAG,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CACrE,QAAQ,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,CACjC;AAEe,QAAA,IAAA,CAAA,WAAW,GAAG,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC;AACxE;+GAbY,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAFT,CAAC,kBAAkB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEtB,WAAW,EAAA,UAAA,EAAA,CAAA;kBAJvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,eAAe;oBACzB,SAAS,EAAE,CAAC,kBAAkB,CAAC;AAClC,iBAAA;;AAgBD;AACA,SAAS,KAAK,CAAC,EAAW,EAAA;IACtB,QACI,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;;AAE3B,QAAA,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC,MAAM;AAEtF;;ACrCA;;AAEG;;;;"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, Injectable,
|
|
2
|
+
import { inject, Injectable, Directive } from '@angular/core';
|
|
3
|
+
import { outputFromObservable } from '@angular/core/rxjs-interop';
|
|
3
4
|
import { DOCUMENT } from '@angular/common';
|
|
4
5
|
import { tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
|
|
5
6
|
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
|
@@ -28,7 +29,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
28
29
|
|
|
29
30
|
class TuiPan {
|
|
30
31
|
constructor() {
|
|
31
|
-
this.tuiPan = inject(TuiPanService);
|
|
32
|
+
this.tuiPan = outputFromObservable(inject(TuiPanService));
|
|
32
33
|
}
|
|
33
34
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPan, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
34
35
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiPan, isStandalone: true, selector: "[tuiPan]", outputs: { tuiPan: "tuiPan" }, providers: [TuiPanService], ngImport: i0 }); }
|
|
@@ -36,13 +37,10 @@ class TuiPan {
|
|
|
36
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPan, decorators: [{
|
|
37
38
|
type: Directive,
|
|
38
39
|
args: [{
|
|
39
|
-
standalone: true,
|
|
40
40
|
selector: '[tuiPan]',
|
|
41
41
|
providers: [TuiPanService],
|
|
42
42
|
}]
|
|
43
|
-
}]
|
|
44
|
-
type: Output
|
|
45
|
-
}] } });
|
|
43
|
+
}] });
|
|
46
44
|
|
|
47
45
|
/**
|
|
48
46
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-pan.mjs","sources":["../../../projects/cdk/directives/pan/pan.service.ts","../../../projects/cdk/directives/pan/pan.directive.ts","../../../projects/cdk/directives/pan/taiga-ui-cdk-directives-pan.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {\n filter,\n map,\n merge,\n Observable,\n pairwise,\n repeat,\n switchMap,\n takeUntil,\n} from 'rxjs';\n\n@Injectable()\nexport class TuiPanService extends Observable<readonly [number, number]> {\n constructor() {\n const el = tuiInjectElement();\n const doc = inject(DOCUMENT);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}),\n tuiTypedFromEvent(el, 'mousedown'),\n )\n .pipe(\n switchMap(() =>\n merge(\n tuiTypedFromEvent(doc, 'touchmove', {\n passive: true,\n }).pipe(\n filter(({touches}) => touches.length < 2),\n map(({touches}) => touches[0]),\n ),\n tuiTypedFromEvent(doc, 'mousemove'),\n ),\n ),\n pairwise(),\n map(([first, second]) => {\n const deltaX = (second?.clientX ?? 0) - (first?.clientX ?? 0);\n const deltaY = (second?.clientY ?? 0) - (first?.clientY ?? 0);\n\n return [deltaX, deltaY] as [number, number];\n }),\n takeUntil(\n merge(\n tuiTypedFromEvent(doc, 'touchend'),\n tuiTypedFromEvent(doc, 'mouseup'),\n ),\n ),\n repeat(),\n )\n .subscribe(subscriber),\n );\n }\n}\n","import {Directive, inject
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-pan.mjs","sources":["../../../projects/cdk/directives/pan/pan.service.ts","../../../projects/cdk/directives/pan/pan.directive.ts","../../../projects/cdk/directives/pan/taiga-ui-cdk-directives-pan.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {\n filter,\n map,\n merge,\n Observable,\n pairwise,\n repeat,\n switchMap,\n takeUntil,\n} from 'rxjs';\n\n@Injectable()\nexport class TuiPanService extends Observable<readonly [number, number]> {\n constructor() {\n const el = tuiInjectElement();\n const doc = inject(DOCUMENT);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}),\n tuiTypedFromEvent(el, 'mousedown'),\n )\n .pipe(\n switchMap(() =>\n merge(\n tuiTypedFromEvent(doc, 'touchmove', {\n passive: true,\n }).pipe(\n filter(({touches}) => touches.length < 2),\n map(({touches}) => touches[0]),\n ),\n tuiTypedFromEvent(doc, 'mousemove'),\n ),\n ),\n pairwise(),\n map(([first, second]) => {\n const deltaX = (second?.clientX ?? 0) - (first?.clientX ?? 0);\n const deltaY = (second?.clientY ?? 0) - (first?.clientY ?? 0);\n\n return [deltaX, deltaY] as [number, number];\n }),\n takeUntil(\n merge(\n tuiTypedFromEvent(doc, 'touchend'),\n tuiTypedFromEvent(doc, 'mouseup'),\n ),\n ),\n repeat(),\n )\n .subscribe(subscriber),\n );\n }\n}\n","import {Directive, inject} from '@angular/core';\nimport {outputFromObservable} from '@angular/core/rxjs-interop';\n\nimport {TuiPanService} from './pan.service';\n\n@Directive({\n selector: '[tuiPan]',\n providers: [TuiPanService],\n})\nexport class TuiPan {\n public readonly tuiPan = outputFromObservable(inject(TuiPanService));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAgBM,MAAO,aAAc,SAAQ,UAAqC,CAAA;AACpE,IAAA,WAAA,GAAA;AACI,QAAA,MAAM,EAAE,GAAG,gBAAgB,EAAE;AAC7B,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;QAE5B,KAAK,CAAC,CAAC,UAAU,KACb,KAAK,CACD,iBAAiB,CAAC,EAAE,EAAE,YAAY,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,EACpD,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC;AAEjC,aAAA,IAAI,CACD,SAAS,CAAC,MACN,KAAK,CACD,iBAAiB,CAAC,GAAG,EAAE,WAAW,EAAE;AAChC,YAAA,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC,IAAI,CACH,MAAM,CAAC,CAAC,EAAC,OAAO,EAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EACzC,GAAG,CAAC,CAAC,EAAC,OAAO,EAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CACjC,EACD,iBAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CACtC,CACJ,EACD,QAAQ,EAAE,EACV,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,KAAI;AACpB,YAAA,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC;AAC7D,YAAA,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC;AAE7D,YAAA,OAAO,CAAC,MAAM,EAAE,MAAM,CAAqB;SAC9C,CAAC,EACF,SAAS,CACL,KAAK,CACD,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC,EAClC,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,CACpC,CACJ,EACD,MAAM,EAAE;AAEX,aAAA,SAAS,CAAC,UAAU,CAAC,CAC7B;;+GAtCI,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAb,aAAa,EAAA,CAAA,CAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB;;;MCNY,MAAM,CAAA;AAJnB,IAAA,WAAA,GAAA;QAKoB,IAAM,CAAA,MAAA,GAAG,oBAAoB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AACvE;+GAFY,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAN,MAAM,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,SAAA,EAFJ,CAAC,aAAa,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEjB,MAAM,EAAA,UAAA,EAAA,CAAA;kBAJlB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,UAAU;oBACpB,SAAS,EAAE,CAAC,aAAa,CAAC;AAC7B,iBAAA;;;ACRD;;AAEG;;;;"}
|
|
@@ -1,37 +1,34 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { input, inject, Directive } from '@angular/core';
|
|
3
3
|
import { TUI_PLATFORM } from '@taiga-ui/cdk/tokens';
|
|
4
4
|
|
|
5
5
|
class TuiPlatform {
|
|
6
6
|
constructor() {
|
|
7
|
-
this.tuiPlatform = inject(TUI_PLATFORM, { skipSelf: true });
|
|
7
|
+
this.tuiPlatform = input(inject(TUI_PLATFORM, { skipSelf: true }));
|
|
8
8
|
}
|
|
9
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPlatform, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
10
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
10
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiPlatform, isStandalone: true, selector: "[tuiPlatform]", inputs: { tuiPlatform: { classPropertyName: "tuiPlatform", publicName: "tuiPlatform", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-platform": "tuiPlatform()" } }, providers: [
|
|
11
11
|
{
|
|
12
12
|
provide: TUI_PLATFORM,
|
|
13
|
-
useFactory: () => inject(TuiPlatform).tuiPlatform,
|
|
13
|
+
useFactory: () => inject(TuiPlatform).tuiPlatform(),
|
|
14
14
|
},
|
|
15
15
|
], ngImport: i0 }); }
|
|
16
16
|
}
|
|
17
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPlatform, decorators: [{
|
|
18
18
|
type: Directive,
|
|
19
19
|
args: [{
|
|
20
|
-
standalone: true,
|
|
21
20
|
selector: '[tuiPlatform]',
|
|
22
21
|
providers: [
|
|
23
22
|
{
|
|
24
23
|
provide: TUI_PLATFORM,
|
|
25
|
-
useFactory: () => inject(TuiPlatform).tuiPlatform,
|
|
24
|
+
useFactory: () => inject(TuiPlatform).tuiPlatform(),
|
|
26
25
|
},
|
|
27
26
|
],
|
|
28
27
|
host: {
|
|
29
|
-
'[attr.data-platform]': 'tuiPlatform',
|
|
28
|
+
'[attr.data-platform]': 'tuiPlatform()',
|
|
30
29
|
},
|
|
31
30
|
}]
|
|
32
|
-
}]
|
|
33
|
-
type: Input
|
|
34
|
-
}] } });
|
|
31
|
+
}] });
|
|
35
32
|
|
|
36
33
|
/**
|
|
37
34
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-platform.mjs","sources":["../../../projects/cdk/directives/platform/platform.directive.ts","../../../projects/cdk/directives/platform/taiga-ui-cdk-directives-platform.ts"],"sourcesContent":["import {Directive, inject,
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-platform.mjs","sources":["../../../projects/cdk/directives/platform/platform.directive.ts","../../../projects/cdk/directives/platform/taiga-ui-cdk-directives-platform.ts"],"sourcesContent":["import {Directive, inject, input} from '@angular/core';\nimport {TUI_PLATFORM} from '@taiga-ui/cdk/tokens';\n\n@Directive({\n selector: '[tuiPlatform]',\n providers: [\n {\n provide: TUI_PLATFORM,\n useFactory: () => inject(TuiPlatform).tuiPlatform(),\n },\n ],\n host: {\n '[attr.data-platform]': 'tuiPlatform()',\n },\n})\nexport class TuiPlatform {\n public readonly tuiPlatform = input(inject(TUI_PLATFORM, {skipSelf: true}));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAea,WAAW,CAAA;AAZxB,IAAA,WAAA,GAAA;AAaoB,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;AAC9E;+GAFY,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAX,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,WAAW,EAVT,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,YAAY;gBACrB,UAAU,EAAE,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE;AACtD,aAAA;AACJ,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAKQ,WAAW,EAAA,UAAA,EAAA,CAAA;kBAZvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,YAAY;4BACrB,UAAU,EAAE,MAAM,MAAM,CAAa,WAAA,CAAA,CAAC,WAAW,EAAE;AACtD,yBAAA;AACJ,qBAAA;AACD,oBAAA,IAAI,EAAE;AACF,wBAAA,sBAAsB,EAAE,eAAe;AAC1C,qBAAA;AACJ,iBAAA;;;ACdD;;AAEG;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, ViewContainerRef, TemplateRef,
|
|
2
|
+
import { inject, ViewContainerRef, TemplateRef, input, effect, Directive } from '@angular/core';
|
|
3
3
|
import { tuiClamp } from '@taiga-ui/cdk/utils/math';
|
|
4
4
|
|
|
5
5
|
const MAX_VALUE = 0x10000;
|
|
@@ -19,16 +19,18 @@ class TuiRepeatTimes {
|
|
|
19
19
|
constructor() {
|
|
20
20
|
this.vcr = inject(ViewContainerRef);
|
|
21
21
|
this.template = inject((TemplateRef));
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
22
|
+
this.tuiRepeatTimesOf = input.required();
|
|
23
|
+
this.setCount = effect(() => {
|
|
24
|
+
const count = this.tuiRepeatTimesOf();
|
|
25
|
+
const safeCount = Math.floor(tuiClamp(count, 0, MAX_VALUE));
|
|
26
|
+
const { length } = this.vcr;
|
|
27
|
+
if (count < length) {
|
|
28
|
+
this.removeContainers(length - count);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
this.addContainers(safeCount);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
32
34
|
}
|
|
33
35
|
addContainers(count) {
|
|
34
36
|
for (let index = this.vcr.length; index < count; index++) {
|
|
@@ -41,17 +43,14 @@ class TuiRepeatTimes {
|
|
|
41
43
|
}
|
|
42
44
|
}
|
|
43
45
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiRepeatTimes, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
44
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
46
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiRepeatTimes, isStandalone: true, selector: "[tuiRepeatTimes][tuiRepeatTimesOf]", inputs: { tuiRepeatTimesOf: { classPropertyName: "tuiRepeatTimesOf", publicName: "tuiRepeatTimesOf", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
|
|
45
47
|
}
|
|
46
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiRepeatTimes, decorators: [{
|
|
47
49
|
type: Directive,
|
|
48
50
|
args: [{
|
|
49
|
-
standalone: true,
|
|
50
51
|
selector: '[tuiRepeatTimes][tuiRepeatTimesOf]',
|
|
51
52
|
}]
|
|
52
|
-
}]
|
|
53
|
-
type: Input
|
|
54
|
-
}] } });
|
|
53
|
+
}] });
|
|
55
54
|
|
|
56
55
|
/**
|
|
57
56
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-repeat-times.mjs","sources":["../../../projects/cdk/directives/repeat-times/repeat-times.directive.ts","../../../projects/cdk/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.ts"],"sourcesContent":["import {Directive
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-repeat-times.mjs","sources":["../../../projects/cdk/directives/repeat-times/repeat-times.directive.ts","../../../projects/cdk/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.ts"],"sourcesContent":["import {\n Directive,\n effect,\n inject,\n input,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiClamp} from '@taiga-ui/cdk/utils/math';\n\nconst MAX_VALUE = 0x10000;\n\nexport class TuiRepeatTimesContext implements TuiContext<number> {\n constructor(public readonly $implicit: number) {}\n}\n\n/**\n * Directive similar to ngFor but using a number of repetitions rather than an array\n *\n * {@link TuiRepeatTimes.tuiRepeatTimesOf requested number of times}.\n * {@link TuiRepeatTimesContext context} for every instance of the template inherits outer context and stores\n * {@link TuiRepeatTimesContext.$implicit index} of a template instance.\n */\n@Directive({\n selector: '[tuiRepeatTimes][tuiRepeatTimesOf]',\n})\nexport class TuiRepeatTimes {\n private readonly vcr = inject(ViewContainerRef);\n private readonly template = inject(TemplateRef<TuiRepeatTimesContext>);\n\n public readonly tuiRepeatTimesOf = input.required<number>();\n\n protected readonly setCount = effect(() => {\n const count = this.tuiRepeatTimesOf();\n\n const safeCount = Math.floor(tuiClamp(count, 0, MAX_VALUE));\n\n const {length} = this.vcr;\n\n if (count < length) {\n this.removeContainers(length - count);\n } else {\n this.addContainers(safeCount);\n }\n });\n\n private addContainers(count: number): void {\n for (let index = this.vcr.length; index < count; index++) {\n this.vcr.createEmbeddedView<TuiRepeatTimesContext>(\n this.template,\n new TuiRepeatTimesContext(index),\n );\n }\n }\n\n private removeContainers(amount: number): void {\n for (let index = 0; index < amount; index++) {\n this.vcr.remove();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAWA,MAAM,SAAS,GAAG,OAAO;MAEZ,qBAAqB,CAAA;AAC9B,IAAA,WAAA,CAA4B,SAAiB,EAAA;QAAjB,IAAS,CAAA,SAAA,GAAT,SAAS;;AACxC;AAED;;;;;;AAMG;MAIU,cAAc,CAAA;AAH3B,IAAA,WAAA,GAAA;AAIqB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC9B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,EAAC,WAAkC,EAAC;AAEtD,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAC,QAAQ,EAAU;AAExC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,MAAK;AACtC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,EAAE;AAErC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;AAE3D,YAAA,MAAM,EAAC,MAAM,EAAC,GAAG,IAAI,CAAC,GAAG;AAEzB,YAAA,IAAI,KAAK,GAAG,MAAM,EAAE;AAChB,gBAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,KAAK,CAAC;;iBAClC;AACH,gBAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;;AAErC,SAAC,CAAC;AAgBL;AAdW,IAAA,aAAa,CAAC,KAAa,EAAA;AAC/B,QAAA,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE;AACtD,YAAA,IAAI,CAAC,GAAG,CAAC,kBAAkB,CACvB,IAAI,CAAC,QAAQ,EACb,IAAI,qBAAqB,CAAC,KAAK,CAAC,CACnC;;;AAID,IAAA,gBAAgB,CAAC,MAAc,EAAA;AACnC,QAAA,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE;AACzC,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;;;+GA/BhB,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,oCAAoC;AACjD,iBAAA;;;AC1BD;;AAEG;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, inject,
|
|
2
|
+
import { Directive, inject, input, output } from '@angular/core';
|
|
3
3
|
import { TuiElement } from '@taiga-ui/cdk/directives/element';
|
|
4
4
|
import { tuiPx } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
5
5
|
|
|
@@ -10,7 +10,6 @@ class TuiResizable extends TuiElement {
|
|
|
10
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiResizable, decorators: [{
|
|
11
11
|
type: Directive,
|
|
12
12
|
args: [{
|
|
13
|
-
standalone: true,
|
|
14
13
|
selector: '[tuiResizable]',
|
|
15
14
|
}]
|
|
16
15
|
}] });
|
|
@@ -22,17 +21,18 @@ class TuiResizer {
|
|
|
22
21
|
this.y = NaN;
|
|
23
22
|
this.width = 0;
|
|
24
23
|
this.height = 0;
|
|
25
|
-
this.tuiResizer = [0, 0];
|
|
26
|
-
this.tuiSizeChange =
|
|
24
|
+
this.tuiResizer = input([0, 0]);
|
|
25
|
+
this.tuiSizeChange = output();
|
|
27
26
|
}
|
|
28
27
|
get cursor() {
|
|
29
|
-
|
|
28
|
+
const tuiResizer = this.tuiResizer();
|
|
29
|
+
if (!tuiResizer[0]) {
|
|
30
30
|
return 'ns-resize';
|
|
31
31
|
}
|
|
32
|
-
if (!
|
|
32
|
+
if (!tuiResizer[1]) {
|
|
33
33
|
return 'ew-resize';
|
|
34
34
|
}
|
|
35
|
-
if (
|
|
35
|
+
if (tuiResizer[0] * tuiResizer[1] > 0) {
|
|
36
36
|
return 'nwse-resize';
|
|
37
37
|
}
|
|
38
38
|
return 'nesw-resize';
|
|
@@ -55,29 +55,29 @@ class TuiResizer {
|
|
|
55
55
|
this.x = NaN;
|
|
56
56
|
}
|
|
57
57
|
onMove(x, y) {
|
|
58
|
+
const tuiResizer = this.tuiResizer();
|
|
58
59
|
if (Number.isNaN(this.x)) {
|
|
59
60
|
return;
|
|
60
61
|
}
|
|
61
62
|
const { style } = this.resizable.nativeElement;
|
|
62
63
|
const size = [
|
|
63
|
-
this.width +
|
|
64
|
-
this.height +
|
|
64
|
+
this.width + tuiResizer[0] * (x - this.x),
|
|
65
|
+
this.height + tuiResizer[1] * (y - this.y),
|
|
65
66
|
];
|
|
66
|
-
if (
|
|
67
|
+
if (tuiResizer[0]) {
|
|
67
68
|
style.width = tuiPx(size[0]);
|
|
68
69
|
}
|
|
69
|
-
if (
|
|
70
|
+
if (tuiResizer[1]) {
|
|
70
71
|
style.height = tuiPx(size[1]);
|
|
71
72
|
}
|
|
72
73
|
this.tuiSizeChange.emit(size);
|
|
73
74
|
}
|
|
74
75
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiResizer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
75
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
76
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiResizer, isStandalone: true, selector: "[tuiResizer]", inputs: { tuiResizer: { classPropertyName: "tuiResizer", publicName: "tuiResizer", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tuiSizeChange: "tuiSizeChange" }, host: { listeners: { "pointerdown.zoneless.prevent": "onPointerDown($event.x, $event.y)", "document:pointermove.zoneless": "onPointerMove($event)", "document:pointerup.zoneless": "onPointerUp()" }, properties: { "style.cursor": "cursor", "style.touchAction": "\"none\"" } }, ngImport: i0 }); }
|
|
76
77
|
}
|
|
77
78
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiResizer, decorators: [{
|
|
78
79
|
type: Directive,
|
|
79
80
|
args: [{
|
|
80
|
-
standalone: true,
|
|
81
81
|
selector: '[tuiResizer]',
|
|
82
82
|
host: {
|
|
83
83
|
'[style.cursor]': 'cursor',
|
|
@@ -87,11 +87,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
87
87
|
'(document:pointerup.zoneless)': 'onPointerUp()',
|
|
88
88
|
},
|
|
89
89
|
}]
|
|
90
|
-
}]
|
|
91
|
-
type: Input
|
|
92
|
-
}], tuiSizeChange: [{
|
|
93
|
-
type: Output
|
|
94
|
-
}] } });
|
|
90
|
+
}] });
|
|
95
91
|
|
|
96
92
|
/**
|
|
97
93
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-resizer.mjs","sources":["../../../projects/cdk/directives/resizer/resizable.directive.ts","../../../projects/cdk/directives/resizer/resizer.directive.ts","../../../projects/cdk/directives/resizer/taiga-ui-cdk-directives-resizer.ts"],"sourcesContent":["import {Directive} from '@angular/core';\nimport {TuiElement} from '@taiga-ui/cdk/directives/element';\n\n@Directive({\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-resizer.mjs","sources":["../../../projects/cdk/directives/resizer/resizable.directive.ts","../../../projects/cdk/directives/resizer/resizer.directive.ts","../../../projects/cdk/directives/resizer/taiga-ui-cdk-directives-resizer.ts"],"sourcesContent":["import {Directive} from '@angular/core';\nimport {TuiElement} from '@taiga-ui/cdk/directives/element';\n\n@Directive({\n selector: '[tuiResizable]',\n})\nexport class TuiResizable extends TuiElement {}\n","import {Directive, type ElementRef, inject, input, output} from '@angular/core';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\n\nimport {TuiResizable} from './resizable.directive';\n\n@Directive({\n selector: '[tuiResizer]',\n host: {\n '[style.cursor]': 'cursor',\n '[style.touchAction]': '\"none\"',\n '(pointerdown.zoneless.prevent)': 'onPointerDown($event.x, $event.y)',\n '(document:pointermove.zoneless)': 'onPointerMove($event)',\n '(document:pointerup.zoneless)': 'onPointerUp()',\n },\n})\nexport class TuiResizer {\n private readonly resizable: ElementRef<HTMLElement> = inject(TuiResizable);\n\n protected x = NaN;\n protected y = NaN;\n protected width = 0;\n protected height = 0;\n\n public readonly tuiResizer = input<readonly [x: number, y: number]>([0, 0]);\n\n public readonly tuiSizeChange = output<readonly [x: number, y: number]>();\n\n protected get cursor(): string {\n const tuiResizer = this.tuiResizer();\n\n if (!tuiResizer[0]) {\n return 'ns-resize';\n }\n\n if (!tuiResizer[1]) {\n return 'ew-resize';\n }\n\n if (tuiResizer[0] * tuiResizer[1] > 0) {\n return 'nwse-resize';\n }\n\n return 'nesw-resize';\n }\n\n protected onPointerDown(x: number, y: number): void {\n this.x = x;\n this.y = y;\n this.width = this.resizable.nativeElement.clientWidth;\n this.height = this.resizable.nativeElement.clientHeight;\n }\n\n protected onPointerMove({x, y, buttons}: PointerEvent): void {\n if (!buttons) {\n this.onPointerUp();\n } else {\n this.onMove(x, y);\n }\n }\n\n protected onPointerUp(): void {\n this.x = NaN;\n }\n\n protected onMove(x: number, y: number): void {\n const tuiResizer = this.tuiResizer();\n\n if (Number.isNaN(this.x)) {\n return;\n }\n\n const {style} = this.resizable.nativeElement;\n const size = [\n this.width + tuiResizer[0] * (x - this.x),\n this.height + tuiResizer[1] * (y - this.y),\n ] as const;\n\n if (tuiResizer[0]) {\n style.width = tuiPx(size[0]);\n }\n\n if (tuiResizer[1]) {\n style.height = tuiPx(size[1]);\n }\n\n this.tuiSizeChange.emit(size);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, inject, Injectable,
|
|
2
|
+
import { InjectionToken, inject, Injectable, Directive } from '@angular/core';
|
|
3
|
+
import { outputFromObservable } from '@angular/core/rxjs-interop';
|
|
3
4
|
import { DOCUMENT } from '@angular/common';
|
|
4
5
|
import { tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
|
|
5
6
|
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
|
@@ -56,7 +57,7 @@ function tuiGetSwipeDirection(deltaX, deltaY) {
|
|
|
56
57
|
|
|
57
58
|
class TuiSwipe {
|
|
58
59
|
constructor() {
|
|
59
|
-
this.tuiSwipe = inject(TuiSwipeService);
|
|
60
|
+
this.tuiSwipe = outputFromObservable(inject(TuiSwipeService));
|
|
60
61
|
}
|
|
61
62
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSwipe, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
62
63
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiSwipe, isStandalone: true, selector: "[tuiSwipe]", outputs: { tuiSwipe: "tuiSwipe" }, providers: [TuiSwipeService], ngImport: i0 }); }
|
|
@@ -64,13 +65,10 @@ class TuiSwipe {
|
|
|
64
65
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSwipe, decorators: [{
|
|
65
66
|
type: Directive,
|
|
66
67
|
args: [{
|
|
67
|
-
standalone: true,
|
|
68
68
|
selector: '[tuiSwipe]',
|
|
69
69
|
providers: [TuiSwipeService],
|
|
70
70
|
}]
|
|
71
|
-
}]
|
|
72
|
-
type: Output
|
|
73
|
-
}] } });
|
|
71
|
+
}] });
|
|
74
72
|
|
|
75
73
|
/**
|
|
76
74
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-swipe.mjs","sources":["../../../projects/cdk/directives/swipe/swipe.options.ts","../../../projects/cdk/directives/swipe/swipe.service.ts","../../../projects/cdk/directives/swipe/swipe.directive.ts","../../../projects/cdk/directives/swipe/taiga-ui-cdk-directives-swipe.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {type TuiSwipeOptions} from './swipe.types';\n\nexport const TUI_SWIPE_OPTIONS = new InjectionToken<TuiSwipeOptions>(\n ngDevMode ? 'TUI_SWIPE_OPTIONS' : '',\n {\n factory: () => ({\n timeout: 500,\n threshold: 30,\n }),\n },\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {filter, map, merge, Observable, pairwise} from 'rxjs';\n\nimport {TUI_SWIPE_OPTIONS} from './swipe.options';\nimport {type TuiSwipeDirection, type TuiSwipeEvent} from './swipe.types';\n\n@Injectable()\nexport class TuiSwipeService extends Observable<TuiSwipeEvent> {\n constructor() {\n const doc = inject(DOCUMENT);\n const el = tuiInjectElement();\n const {timeout, threshold} = inject(TUI_SWIPE_OPTIONS);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}),\n tuiTypedFromEvent(doc, 'touchend'),\n )\n .pipe(\n pairwise(),\n filter(\n ([first, second]) =>\n !!first.touches.length &&\n first.touches[0]?.identifier ===\n second.changedTouches[0]?.identifier,\n ),\n map(([start, end]) => {\n const startX = start.touches[0]?.clientX ?? 0;\n const startY = start.touches[0]?.clientY ?? 0;\n const endX = end.changedTouches[0]?.clientX ?? 0;\n const endY = end.changedTouches[0]?.clientY ?? 0;\n\n const distanceX = startX - endX;\n const distanceY = startY - endY;\n const duration = end.timeStamp - start.timeStamp;\n\n if (\n (Math.abs(distanceX) > threshold ||\n Math.abs(distanceY) > threshold) &&\n duration < timeout\n ) {\n return {\n direction: tuiGetSwipeDirection(distanceX, distanceY),\n events: [start, end] as [TouchEvent, TouchEvent],\n };\n }\n\n return null;\n }),\n filter(tuiIsPresent),\n )\n .subscribe(subscriber),\n );\n }\n}\n\nfunction tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? 'top' : 'bottom';\n }\n\n return deltaX > 0 ? 'left' : 'right';\n}\n","import {Directive, inject
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-swipe.mjs","sources":["../../../projects/cdk/directives/swipe/swipe.options.ts","../../../projects/cdk/directives/swipe/swipe.service.ts","../../../projects/cdk/directives/swipe/swipe.directive.ts","../../../projects/cdk/directives/swipe/taiga-ui-cdk-directives-swipe.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {type TuiSwipeOptions} from './swipe.types';\n\nexport const TUI_SWIPE_OPTIONS = new InjectionToken<TuiSwipeOptions>(\n ngDevMode ? 'TUI_SWIPE_OPTIONS' : '',\n {\n factory: () => ({\n timeout: 500,\n threshold: 30,\n }),\n },\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {filter, map, merge, Observable, pairwise} from 'rxjs';\n\nimport {TUI_SWIPE_OPTIONS} from './swipe.options';\nimport {type TuiSwipeDirection, type TuiSwipeEvent} from './swipe.types';\n\n@Injectable()\nexport class TuiSwipeService extends Observable<TuiSwipeEvent> {\n constructor() {\n const doc = inject(DOCUMENT);\n const el = tuiInjectElement();\n const {timeout, threshold} = inject(TUI_SWIPE_OPTIONS);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}),\n tuiTypedFromEvent(doc, 'touchend'),\n )\n .pipe(\n pairwise(),\n filter(\n ([first, second]) =>\n !!first.touches.length &&\n first.touches[0]?.identifier ===\n second.changedTouches[0]?.identifier,\n ),\n map(([start, end]) => {\n const startX = start.touches[0]?.clientX ?? 0;\n const startY = start.touches[0]?.clientY ?? 0;\n const endX = end.changedTouches[0]?.clientX ?? 0;\n const endY = end.changedTouches[0]?.clientY ?? 0;\n\n const distanceX = startX - endX;\n const distanceY = startY - endY;\n const duration = end.timeStamp - start.timeStamp;\n\n if (\n (Math.abs(distanceX) > threshold ||\n Math.abs(distanceY) > threshold) &&\n duration < timeout\n ) {\n return {\n direction: tuiGetSwipeDirection(distanceX, distanceY),\n events: [start, end] as [TouchEvent, TouchEvent],\n };\n }\n\n return null;\n }),\n filter(tuiIsPresent),\n )\n .subscribe(subscriber),\n );\n }\n}\n\nfunction tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? 'top' : 'bottom';\n }\n\n return deltaX > 0 ? 'left' : 'right';\n}\n","import {Directive, inject} from '@angular/core';\nimport {outputFromObservable} from '@angular/core/rxjs-interop';\n\nimport {TuiSwipeService} from './swipe.service';\n\n@Directive({\n selector: '[tuiSwipe]',\n providers: [TuiSwipeService],\n})\nexport class TuiSwipe {\n public readonly tuiSwipe = outputFromObservable(inject(TuiSwipeService));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,6 @@ class TuiTransitioned {
|
|
|
17
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTransitioned, decorators: [{
|
|
18
18
|
type: Directive,
|
|
19
19
|
args: [{
|
|
20
|
-
standalone: true,
|
|
21
20
|
selector: '[tuiTransitioned]',
|
|
22
21
|
host: {
|
|
23
22
|
'[style.transition]': '"none"',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-transitioned.mjs","sources":["../../../projects/cdk/directives/transitioned/transitioned.directive.ts","../../../projects/cdk/directives/transitioned/taiga-ui-cdk-directives-transitioned.ts"],"sourcesContent":["import {Directive, inject, NgZone} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils';\n\n@Directive({\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-transitioned.mjs","sources":["../../../projects/cdk/directives/transitioned/transitioned.directive.ts","../../../projects/cdk/directives/transitioned/taiga-ui-cdk-directives-transitioned.ts"],"sourcesContent":["import {Directive, inject, NgZone} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils';\n\n@Directive({\n selector: '[tuiTransitioned]',\n host: {\n '[style.transition]': '\"none\"',\n },\n})\nexport class TuiTransitioned {\n constructor() {\n const el = tuiInjectElement();\n\n inject(NgZone).runOutsideAngular(() => {\n setTimeout(() => {\n el.style.transition = '';\n });\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MASa,eAAe,CAAA;AACxB,IAAA,WAAA,GAAA;AACI,QAAA,MAAM,EAAE,GAAG,gBAAgB,EAAE;AAE7B,QAAA,MAAM,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,MAAK;YAClC,UAAU,CAAC,MAAK;AACZ,gBAAA,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE;AAC5B,aAAC,CAAC;AACN,SAAC,CAAC;;+GARG,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,IAAI,EAAE;AACF,wBAAA,oBAAoB,EAAE,QAAQ;AACjC,qBAAA;AACJ,iBAAA;;;ACRD;;AAEG;;;;"}
|
|
@@ -21,7 +21,6 @@ class TuiValidator {
|
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiValidator, decorators: [{
|
|
22
22
|
type: Directive,
|
|
23
23
|
args: [{
|
|
24
|
-
standalone: true,
|
|
25
24
|
selector: '[tuiValidator]',
|
|
26
25
|
inputs: ['validate: tuiValidator'],
|
|
27
26
|
providers: [tuiProvide(NG_VALIDATORS, TuiValidator, true)],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-validator.mjs","sources":["../../../projects/cdk/directives/validator/validator.directive.ts","../../../projects/cdk/directives/validator/taiga-ui-cdk-directives-validator.ts"],"sourcesContent":["import {Directive, type OnChanges} from '@angular/core';\nimport {NG_VALIDATORS, type Validator, Validators} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiProvide} from '@taiga-ui/cdk/utils';\n\n@Directive({\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-validator.mjs","sources":["../../../projects/cdk/directives/validator/validator.directive.ts","../../../projects/cdk/directives/validator/taiga-ui-cdk-directives-validator.ts"],"sourcesContent":["import {Directive, type OnChanges} from '@angular/core';\nimport {NG_VALIDATORS, type Validator, Validators} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiProvide} from '@taiga-ui/cdk/utils';\n\n@Directive({\n selector: '[tuiValidator]',\n inputs: ['validate: tuiValidator'],\n providers: [tuiProvide(NG_VALIDATORS, TuiValidator, true)],\n})\nexport class TuiValidator implements Validator, OnChanges {\n protected onChange = EMPTY_FUNCTION;\n\n public validate = Validators.nullValidator;\n\n public registerOnValidatorChange(onChange: (...args: any[]) => void): void {\n this.onChange = onChange;\n }\n\n public ngOnChanges(): void {\n this.onChange();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAUa,YAAY,CAAA;AALzB,IAAA,WAAA,GAAA;QAMc,IAAQ,CAAA,QAAA,GAAG,cAAc;AAE5B,QAAA,IAAA,CAAA,QAAQ,GAAG,UAAU,CAAC,aAAa;AAS7C;AAPU,IAAA,yBAAyB,CAAC,QAAkC,EAAA;AAC/D,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;;IAGrB,WAAW,GAAA;QACd,IAAI,CAAC,QAAQ,EAAE;;+GAVV,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,cAAA,EAAA,UAAA,CAAA,EAAA,EAAA,SAAA,EAFV,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEjD,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,MAAM,EAAE,CAAC,wBAAwB,CAAC;oBAClC,SAAS,EAAE,CAAC,UAAU,CAAC,aAAa,EAAgB,YAAA,EAAA,IAAI,CAAC,CAAC;AAC7D,iBAAA;;;ACTD;;AAEG;;;;"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject,
|
|
2
|
+
import { inject, Directive } from '@angular/core';
|
|
3
|
+
import { outputFromObservable } from '@angular/core/rxjs-interop';
|
|
3
4
|
import { ControlContainer, NgControl } from '@angular/forms';
|
|
4
5
|
import { Subject, distinctUntilChanged, switchAll, EMPTY } from 'rxjs';
|
|
5
6
|
|
|
@@ -8,7 +9,8 @@ class TuiValueChanges {
|
|
|
8
9
|
this.container = inject(ControlContainer, { optional: true });
|
|
9
10
|
this.control = inject(NgControl, { optional: true });
|
|
10
11
|
this.refresh$ = new Subject();
|
|
11
|
-
this.tuiValueChanges = this.refresh$.pipe(distinctUntilChanged(), switchAll(), distinctUntilChanged());
|
|
12
|
+
this.tuiValueChanges$ = this.refresh$.pipe(distinctUntilChanged(), switchAll(), distinctUntilChanged());
|
|
13
|
+
this.tuiValueChanges = outputFromObservable(this.tuiValueChanges$);
|
|
12
14
|
}
|
|
13
15
|
ngDoCheck() {
|
|
14
16
|
this.refresh$.next(this.control?.valueChanges || this.container?.valueChanges || EMPTY);
|
|
@@ -19,12 +21,9 @@ class TuiValueChanges {
|
|
|
19
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiValueChanges, decorators: [{
|
|
20
22
|
type: Directive,
|
|
21
23
|
args: [{
|
|
22
|
-
standalone: true,
|
|
23
24
|
selector: '[tuiValueChanges]',
|
|
24
25
|
}]
|
|
25
|
-
}]
|
|
26
|
-
type: Output
|
|
27
|
-
}] } });
|
|
26
|
+
}] });
|
|
28
27
|
|
|
29
28
|
/**
|
|
30
29
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-value-changes.mjs","sources":["../../../projects/cdk/directives/value-changes/value-changes.directive.ts","../../../projects/cdk/directives/value-changes/taiga-ui-cdk-directives-value-changes.ts"],"sourcesContent":["import {Directive, type DoCheck, inject
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-value-changes.mjs","sources":["../../../projects/cdk/directives/value-changes/value-changes.directive.ts","../../../projects/cdk/directives/value-changes/taiga-ui-cdk-directives-value-changes.ts"],"sourcesContent":["import {Directive, type DoCheck, inject} from '@angular/core';\nimport {outputFromObservable} from '@angular/core/rxjs-interop';\nimport {ControlContainer, NgControl} from '@angular/forms';\nimport {distinctUntilChanged, EMPTY, type Observable, Subject, switchAll} from 'rxjs';\n\n@Directive({\n selector: '[tuiValueChanges]',\n})\nexport class TuiValueChanges<T> implements DoCheck {\n private readonly container = inject(ControlContainer, {optional: true});\n private readonly control = inject(NgControl, {optional: true});\n private readonly refresh$ = new Subject<Observable<T>>();\n\n private readonly tuiValueChanges$ = this.refresh$.pipe(\n distinctUntilChanged(),\n switchAll(),\n distinctUntilChanged(),\n );\n\n public readonly tuiValueChanges = outputFromObservable(this.tuiValueChanges$);\n\n public ngDoCheck(): void {\n this.refresh$.next(\n this.control?.valueChanges || this.container?.valueChanges || EMPTY,\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAQa,eAAe,CAAA;AAH5B,IAAA,WAAA,GAAA;QAIqB,IAAS,CAAA,SAAA,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;QACtD,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,SAAS,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AAC7C,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,OAAO,EAAiB;AAEvC,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAClD,oBAAoB,EAAE,EACtB,SAAS,EAAE,EACX,oBAAoB,EAAE,CACzB;AAEe,QAAA,IAAA,CAAA,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC;AAOhF;IALU,SAAS,GAAA;AACZ,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE,YAAY,IAAI,KAAK,CACtE;;+GAhBI,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;AAChC,iBAAA;;;ACPD;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-visual-viewport.mjs","sources":["../../../projects/cdk/directives/visual-viewport/visual-viewport.directive.ts","../../../projects/cdk/directives/visual-viewport/taiga-ui-cdk-directives-visual-viewport.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {ViewportService} from '@ng-web-apis/screen-orientation';\nimport {tuiInjectElement, tuiPx} from '@taiga-ui/cdk/utils';\n\n@Directive({\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-visual-viewport.mjs","sources":["../../../projects/cdk/directives/visual-viewport/visual-viewport.directive.ts","../../../projects/cdk/directives/visual-viewport/taiga-ui-cdk-directives-visual-viewport.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {ViewportService} from '@ng-web-apis/screen-orientation';\nimport {tuiInjectElement, tuiPx} from '@taiga-ui/cdk/utils';\n\n@Directive({\n selector: '[tuiVisualViewport]',\n})\nexport class TuiVisualViewport {\n private readonly w = inject(WA_WINDOW);\n private readonly style = tuiInjectElement().style;\n\n protected readonly $ = inject(ViewportService)\n .pipe(takeUntilDestroyed())\n .subscribe(({offsetLeft, offsetTop, height, width, scale}) => {\n this.style.setProperty('--tui-viewport-x', tuiPx(offsetLeft));\n this.style.setProperty('--tui-viewport-y', tuiPx(offsetTop));\n this.style.setProperty('--tui-viewport-height', tuiPx(height));\n this.style.setProperty('--tui-viewport-width', tuiPx(width));\n this.style.setProperty('--tui-viewport-scale', String(scale));\n this.style.setProperty('--tui-viewport-vh', tuiPx(this.w.innerHeight / 100));\n this.style.setProperty('--tui-viewport-vw', tuiPx(this.w.innerWidth / 100));\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MASa,iBAAiB,CAAA;AAH9B,IAAA,WAAA,GAAA;AAIqB,QAAA,IAAA,CAAA,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;AACrB,QAAA,IAAA,CAAA,KAAK,GAAG,gBAAgB,EAAE,CAAC,KAAK;AAE9B,QAAA,IAAA,CAAA,CAAC,GAAG,MAAM,CAAC,eAAe;aACxC,IAAI,CAAC,kBAAkB,EAAE;AACzB,aAAA,SAAS,CAAC,CAAC,EAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAC,KAAI;AACzD,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;AAC7D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,uBAAuB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;AAC9D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;AAC5E,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;AAC/E,SAAC,CAAC;AACT;+GAfY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,qBAAqB;AAClC,iBAAA;;;ACRD;;AAEG;;;;"}
|
|
@@ -62,7 +62,6 @@ class TuiZoom {
|
|
|
62
62
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiZoom, decorators: [{
|
|
63
63
|
type: Directive,
|
|
64
64
|
args: [{
|
|
65
|
-
standalone: true,
|
|
66
65
|
selector: '[tuiZoom]',
|
|
67
66
|
outputs: ['tuiZoom'],
|
|
68
67
|
providers: [TuiZoomService],
|