@taiga-ui/cdk 4.37.0-canary.e7da31c → 4.38.0-canary.30f044e
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/constants/version.d.ts +1 -1
- package/constants/version.js +1 -1
- package/directives/animated/animated-parent.directive.d.ts +10 -0
- package/directives/animated/animated.directive.d.ts +14 -0
- package/directives/animated/index.d.ts +2 -0
- package/directives/index.d.ts +1 -0
- package/esm2022/constants/version.mjs +2 -2
- package/esm2022/directives/animated/animated-parent.directive.mjs +39 -0
- package/esm2022/directives/animated/animated.directive.mjs +81 -0
- package/esm2022/directives/animated/index.mjs +3 -0
- package/esm2022/directives/animated/taiga-ui-cdk-directives-animated.mjs +5 -0
- package/esm2022/directives/index.mjs +2 -1
- package/esm2022/pipes/index.mjs +2 -1
- package/esm2022/pipes/obfuscate/index.mjs +3 -0
- package/esm2022/pipes/obfuscate/obfuscate.options.mjs +10 -0
- package/esm2022/pipes/obfuscate/obfuscate.pipe.mjs +44 -0
- package/esm2022/pipes/obfuscate/taiga-ui-cdk-pipes-obfuscate.mjs +5 -0
- package/esm2022/utils/miscellaneous/index.mjs +2 -1
- package/esm2022/utils/miscellaneous/obfuscate.mjs +53 -0
- package/fesm2022/taiga-ui-cdk-constants.mjs +1 -1
- package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-animated.mjs +120 -0
- package/fesm2022/taiga-ui-cdk-directives-animated.mjs.map +1 -0
- package/fesm2022/taiga-ui-cdk-directives.mjs +1 -0
- package/fesm2022/taiga-ui-cdk-directives.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs +59 -0
- package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs.map +1 -0
- package/fesm2022/taiga-ui-cdk-pipes.mjs +1 -0
- package/fesm2022/taiga-ui-cdk-pipes.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs +54 -1
- package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs.map +1 -1
- package/package.json +29 -17
- package/pipes/index.d.ts +1 -0
- package/pipes/obfuscate/index.d.ts +2 -0
- package/pipes/obfuscate/obfuscate.options.d.ts +19 -0
- package/pipes/obfuscate/obfuscate.pipe.d.ts +16 -0
- package/schematics/collection.json +5 -0
- package/schematics/migrate-tui-let/index.d.ts +3 -0
- package/schematics/migrate-tui-let/index.js +71 -0
- package/schematics/ng-update/steps/index.d.ts +1 -1
- package/schematics/ng-update/steps/index.js +1 -1
- package/schematics/ng-update/v4/migrate-addon-doc/index.js +1 -1
- package/schematics/ng-update/v4/migrate-css-vars/palette.d.ts +1 -1
- package/schematics/ng-update/v4/migrate-css-vars/palette.js +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-badge.js +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-badged-content.js +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-button-appearance.js +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-expandable.js +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-overscroll.js +1 -1
- package/schematics/utils/create-angular-json.d.ts +3 -2
- package/schematics/utils/create-angular-json.js +2 -2
- package/schematics/utils/get-projects.d.ts +1 -1
- package/schematics/{ng-update/steps → utils}/remove-module.d.ts +2 -2
- package/schematics/{ng-update/steps → utils}/remove-module.js +2 -2
- package/utils/miscellaneous/index.d.ts +1 -0
- package/utils/miscellaneous/obfuscate.d.ts +14 -0
package/constants/version.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export declare const TUI_VERSION = "4.
|
1
|
+
export declare const TUI_VERSION = "4.38.0-canary.30f044e";
|
package/constants/version.js
CHANGED
@@ -0,0 +1,10 @@
|
|
1
|
+
import * as i0 from "@angular/core";
|
2
|
+
import * as i1 from "./animated.directive";
|
3
|
+
import * as i2 from "@ng-web-apis/mutation-observer";
|
4
|
+
export declare class TuiAnimatedParent {
|
5
|
+
private readonly el;
|
6
|
+
private readonly renderer;
|
7
|
+
protected handle(): void;
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiAnimatedParent, never>;
|
9
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiAnimatedParent, "[tuiAnimatedParent]", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiAnimated; inputs: {}; outputs: {}; }, { directive: typeof i2.WaMutationObserver; inputs: {}; outputs: { "waMutationObserver": "waMutationObserver"; }; }]>;
|
10
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import type { OnDestroy } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export declare const TUI_ENTER = "tui-enter";
|
4
|
+
export declare const TUI_LEAVE = "tui-leave";
|
5
|
+
export declare class TuiAnimated implements OnDestroy {
|
6
|
+
private readonly el;
|
7
|
+
private readonly app;
|
8
|
+
private readonly renderer;
|
9
|
+
constructor();
|
10
|
+
ngOnDestroy(): void;
|
11
|
+
protected remove(): void;
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiAnimated, never>;
|
13
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiAnimated, "[tuiAnimated]", never, {}, {}, never, never, true, never>;
|
14
|
+
}
|
package/directives/index.d.ts
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export const TUI_VERSION = '4.
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
1
|
+
export const TUI_VERSION = '4.38.0-canary.30f044e';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgVFVJX1ZFUlNJT04gPSAnNC4zOC4wLWNhbmFyeS4zMGYwNDRlJztcbiJdfQ==
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import { Directive, inject, Renderer2 } from '@angular/core';
|
2
|
+
import { provideMutationObserverInit, WaMutationObserver, } from '@ng-web-apis/mutation-observer';
|
3
|
+
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
4
|
+
import { TUI_ENTER, TUI_LEAVE, TuiAnimated } from './animated.directive';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
import * as i1 from "./animated.directive";
|
7
|
+
import * as i2 from "@ng-web-apis/mutation-observer";
|
8
|
+
class TuiAnimatedParent {
|
9
|
+
constructor() {
|
10
|
+
this.el = tuiInjectElement();
|
11
|
+
this.renderer = inject(Renderer2);
|
12
|
+
}
|
13
|
+
handle() {
|
14
|
+
this.el.classList.remove(TUI_ENTER);
|
15
|
+
this.renderer.data[TUI_LEAVE] = Array.from(this.el.children);
|
16
|
+
}
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimatedParent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
18
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAnimatedParent, isStandalone: true, selector: "[tuiAnimatedParent]", host: { listeners: { "waMutationObserver": "handle()" } }, providers: [provideMutationObserverInit({ childList: true })], hostDirectives: [{ directive: i1.TuiAnimated }, { directive: i2.WaMutationObserver, outputs: ["waMutationObserver", "waMutationObserver"] }], ngImport: i0 }); }
|
19
|
+
}
|
20
|
+
export { TuiAnimatedParent };
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimatedParent, decorators: [{
|
22
|
+
type: Directive,
|
23
|
+
args: [{
|
24
|
+
standalone: true,
|
25
|
+
selector: '[tuiAnimatedParent]',
|
26
|
+
providers: [provideMutationObserverInit({ childList: true })],
|
27
|
+
hostDirectives: [
|
28
|
+
TuiAnimated,
|
29
|
+
{
|
30
|
+
directive: WaMutationObserver,
|
31
|
+
outputs: ['waMutationObserver'],
|
32
|
+
},
|
33
|
+
],
|
34
|
+
host: {
|
35
|
+
'(waMutationObserver)': 'handle()',
|
36
|
+
},
|
37
|
+
}]
|
38
|
+
}] });
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0ZWQtcGFyZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kaXJlY3RpdmVzL2FuaW1hdGVkL2FuaW1hdGVkLXBhcmVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFDSCwyQkFBMkIsRUFDM0Isa0JBQWtCLEdBQ3JCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFekQsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFFdkUsTUFlYSxpQkFBaUI7SUFmOUI7UUFnQnFCLE9BQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLGFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7S0FNakQ7SUFKYSxNQUFNO1FBQ1osSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqRSxDQUFDOytHQVBRLGlCQUFpQjttR0FBakIsaUJBQWlCLDZIQVpmLENBQUMsMkJBQTJCLENBQUMsRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQzs7U0FZbEQsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBZjdCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFNBQVMsRUFBRSxDQUFDLDJCQUEyQixDQUFDLEVBQUMsU0FBUyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7b0JBQzNELGNBQWMsRUFBRTt3QkFDWixXQUFXO3dCQUNYOzRCQUNJLFNBQVMsRUFBRSxrQkFBa0I7NEJBQzdCLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO3lCQUNsQztxQkFDSjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0Ysc0JBQXNCLEVBQUUsVUFBVTtxQkFDckM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgaW5qZWN0LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBwcm92aWRlTXV0YXRpb25PYnNlcnZlckluaXQsXG4gICAgV2FNdXRhdGlvbk9ic2VydmVyLFxufSBmcm9tICdAbmctd2ViLWFwaXMvbXV0YXRpb24tb2JzZXJ2ZXInO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5cbmltcG9ydCB7VFVJX0VOVEVSLCBUVUlfTEVBVkUsIFR1aUFuaW1hdGVkfSBmcm9tICcuL2FuaW1hdGVkLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdbdHVpQW5pbWF0ZWRQYXJlbnRdJyxcbiAgICBwcm92aWRlcnM6IFtwcm92aWRlTXV0YXRpb25PYnNlcnZlckluaXQoe2NoaWxkTGlzdDogdHJ1ZX0pXSxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICBUdWlBbmltYXRlZCxcbiAgICAgICAge1xuICAgICAgICAgICAgZGlyZWN0aXZlOiBXYU11dGF0aW9uT2JzZXJ2ZXIsXG4gICAgICAgICAgICBvdXRwdXRzOiBbJ3dhTXV0YXRpb25PYnNlcnZlciddLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICAnKHdhTXV0YXRpb25PYnNlcnZlciknOiAnaGFuZGxlKCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUFuaW1hdGVkUGFyZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuICAgIHByb3RlY3RlZCBoYW5kbGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWwuY2xhc3NMaXN0LnJlbW92ZShUVUlfRU5URVIpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmRhdGFbVFVJX0xFQVZFXSA9IEFycmF5LmZyb20odGhpcy5lbC5jaGlsZHJlbik7XG4gICAgfVxufVxuIl19
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import { afterNextRender, ApplicationRef, Directive, inject, ViewContainerRef, } from '@angular/core';
|
2
|
+
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export const TUI_ENTER = 'tui-enter';
|
5
|
+
export const TUI_LEAVE = 'tui-leave';
|
6
|
+
class TuiAnimated {
|
7
|
+
constructor() {
|
8
|
+
this.el = tuiInjectElement();
|
9
|
+
this.app = inject(ApplicationRef);
|
10
|
+
// @ts-ignore https://github.com/angular/angular/blob/main/packages/core/src/render3/interfaces/view.ts#L56
|
11
|
+
this.renderer = inject(ViewContainerRef)._hostLView?.[11];
|
12
|
+
if (!this.renderer) {
|
13
|
+
return;
|
14
|
+
}
|
15
|
+
// delegate is used in Angular Animations renderer
|
16
|
+
const renderer = this.renderer.delegate || this.renderer;
|
17
|
+
const { removeChild, data } = renderer;
|
18
|
+
if (data[TUI_LEAVE]) {
|
19
|
+
data[TUI_LEAVE].push(this.el);
|
20
|
+
return;
|
21
|
+
}
|
22
|
+
data[TUI_LEAVE] = [this.el];
|
23
|
+
afterNextRender(() => {
|
24
|
+
this.remove();
|
25
|
+
renderer.removeChild = (parent, el, host) => {
|
26
|
+
const remove = () => removeChild.call(renderer, parent, el, host);
|
27
|
+
const elements = data[TUI_LEAVE];
|
28
|
+
const element = elements.find((leave) => el.contains(leave));
|
29
|
+
const { length } = element?.getAnimations() || [];
|
30
|
+
if (!element) {
|
31
|
+
remove();
|
32
|
+
return;
|
33
|
+
}
|
34
|
+
elements.splice(elements.indexOf(element), 1);
|
35
|
+
element.classList.add(TUI_LEAVE);
|
36
|
+
const animations = element.getAnimations();
|
37
|
+
const last = animations[animations.length - 1];
|
38
|
+
const finish = () => {
|
39
|
+
if (parent.contains(el)) {
|
40
|
+
remove();
|
41
|
+
this.app.tick();
|
42
|
+
}
|
43
|
+
};
|
44
|
+
if (animations.length > length && last) {
|
45
|
+
last.onfinish = finish;
|
46
|
+
last.oncancel = finish;
|
47
|
+
}
|
48
|
+
else {
|
49
|
+
remove();
|
50
|
+
}
|
51
|
+
};
|
52
|
+
});
|
53
|
+
}
|
54
|
+
ngOnDestroy() {
|
55
|
+
const data = this.renderer?.data || { [TUI_LEAVE]: [] };
|
56
|
+
setTimeout(() => {
|
57
|
+
data[TUI_LEAVE] = data[TUI_LEAVE].filter((e) => e !== this.el);
|
58
|
+
});
|
59
|
+
}
|
60
|
+
remove() {
|
61
|
+
if (this.el.isConnected && !this.el.getAnimations().length) {
|
62
|
+
this.el.classList.remove(TUI_ENTER);
|
63
|
+
}
|
64
|
+
}
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimated, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
66
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAnimated, isStandalone: true, selector: "[tuiAnimated]", host: { listeners: { "animationend.self": "remove()", "animationcancel.self": "remove()" }, classAttribute: "tui-enter" }, ngImport: i0 }); }
|
67
|
+
}
|
68
|
+
export { TuiAnimated };
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimated, decorators: [{
|
70
|
+
type: Directive,
|
71
|
+
args: [{
|
72
|
+
standalone: true,
|
73
|
+
selector: '[tuiAnimated]',
|
74
|
+
host: {
|
75
|
+
class: TUI_ENTER,
|
76
|
+
'(animationend.self)': 'remove()',
|
77
|
+
'(animationcancel.self)': 'remove()',
|
78
|
+
},
|
79
|
+
}]
|
80
|
+
}], ctorParameters: function () { return []; } });
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0ZWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RpcmVjdGl2ZXMvYW5pbWF0ZWQvYW5pbWF0ZWQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCxlQUFlLEVBQ2YsY0FBYyxFQUNkLFNBQVMsRUFDVCxNQUFNLEVBQ04sZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDOztBQUV6RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDO0FBQ3JDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUM7QUFFckMsTUFTYSxXQUFXO0lBT3BCO1FBTmlCLE9BQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLFFBQUcsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFOUMsMkdBQTJHO1FBQzFGLGFBQVEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUdsRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixPQUFPO1NBQ1Y7UUFFRCxrREFBa0Q7UUFDbEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN6RCxNQUFNLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxHQUFHLFFBQVEsQ0FBQztRQUVyQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUU5QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJ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VTtxQkFDdkM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7T25EZXN0cm95fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgYWZ0ZXJOZXh0UmVuZGVyLFxuICAgIEFwcGxpY2F0aW9uUmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBpbmplY3QsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcblxuZXhwb3J0IGNvbnN0IFRVSV9FTlRFUiA9ICd0dWktZW50ZXInO1xuZXhwb3J0IGNvbnN0IFRVSV9MRUFWRSA9ICd0dWktbGVhdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW3R1aUFuaW1hdGVkXScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogVFVJX0VOVEVSLFxuICAgICAgICAnKGFuaW1hdGlvbmVuZC5zZWxmKSc6ICdyZW1vdmUoKScsXG4gICAgICAgICcoYW5pbWF0aW9uY2FuY2VsLnNlbGYpJzogJ3JlbW92ZSgpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlBbmltYXRlZCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFwcCA9IGluamVjdChBcHBsaWNhdGlvblJlZik7XG5cbiAgICAvLyBAdHMtaWdub3JlIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvYmxvYi9tYWluL3BhY2thZ2VzL2NvcmUvc3JjL3JlbmRlcjMvaW50ZXJmYWNlcy92aWV3LnRzI0w1NlxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXIgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZikuX2hvc3RMVmlldz8uWzExXTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBpZiAoIXRoaXMucmVuZGVyZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGRlbGVnYXRlIGlzIHVzZWQgaW4gQW5ndWxhciBBbmltYXRpb25zIHJlbmRlcmVyXG4gICAgICAgIGNvbnN0IHJlbmRlcmVyID0gdGhpcy5yZW5kZXJlci5kZWxlZ2F0ZSB8fCB0aGlzLnJlbmRlcmVyO1xuICAgICAgICBjb25zdCB7cmVtb3ZlQ2hpbGQsIGRhdGF9ID0gcmVuZGVyZXI7XG5cbiAgICAgICAgaWYgKGRhdGFbVFVJX0xFQVZFXSkge1xuICAgICAgICAgICAgZGF0YVtUVUlfTEVBVkVdLnB1c2godGhpcy5lbCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGRhdGFbVFVJX0xFQVZFXSA9IFt0aGlzLmVsXTtcblxuICAgICAgICBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmUoKTtcblxuICAgICAgICAgICAgcmVuZGVyZXIucmVtb3ZlQ2hpbGQgPSAocGFyZW50OiBOb2RlLCBlbDogTm9kZSwgaG9zdD86IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZW1vdmUgPSAoKTogdm9pZCA9PiByZW1vdmVDaGlsZC5jYWxsKHJlbmRlcmVyLCBwYXJlbnQsIGVsLCBob3N0KTtcbiAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50czogRWxlbWVudFtdID0gZGF0YVtUVUlfTEVBVkVdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSBlbGVtZW50cy5maW5kKChsZWF2ZSkgPT4gZWwuY29udGFpbnMobGVhdmUpKTtcbiAgICAgICAgICAgICAgICBjb25zdCB7bGVuZ3RofSA9IGVsZW1lbnQ/LmdldEFuaW1hdGlvbnMoKSB8fCBbXTtcblxuICAgICAgICAgICAgICAgIGlmICghZWxlbWVudCkge1xuICAgICAgICAgICAgICAgICAgICByZW1vdmUoKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZWxlbWVudHMuc3BsaWNlKGVsZW1lbnRzLmluZGV4T2YoZWxlbWVudCksIDEpO1xuICAgICAgICAgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChUVUlfTEVBVkUpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgYW5pbWF0aW9ucyA9IGVsZW1lbnQuZ2V0QW5pbWF0aW9ucygpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhc3QgPSBhbmltYXRpb25zW2FuaW1hdGlvbnMubGVuZ3RoIC0gMV07XG4gICAgICAgICAgICAgICAgY29uc3QgZmluaXNoID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocGFyZW50LmNvbnRhaW5zKGVsKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcC50aWNrKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgaWYgKGFuaW1hdGlvbnMubGVuZ3RoID4gbGVuZ3RoICYmIGxhc3QpIHtcbiAgICAgICAgICAgICAgICAgICAgbGFzdC5vbmZpbmlzaCA9IGZpbmlzaDtcbiAgICAgICAgICAgICAgICAgICAgbGFzdC5vbmNhbmNlbCA9IGZpbmlzaDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLnJlbmRlcmVyPy5kYXRhIHx8IHtbVFVJX0xFQVZFXTogW119O1xuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgZGF0YVtUVUlfTEVBVkVdID0gZGF0YVtUVUlfTEVBVkVdLmZpbHRlcigoZTogRWxlbWVudCkgPT4gZSAhPT0gdGhpcy5lbCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCByZW1vdmUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVsLmlzQ29ubmVjdGVkICYmICF0aGlzLmVsLmdldEFuaW1hdGlvbnMoKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZWwuY2xhc3NMaXN0LnJlbW92ZShUVUlfRU5URVIpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
@@ -0,0 +1,3 @@
|
|
1
|
+
export * from './animated.directive';
|
2
|
+
export * from './animated-parent.directive';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hbmltYXRlZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FuaW1hdGVkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2FuaW1hdGVkLXBhcmVudC5kaXJlY3RpdmUnO1xuIl19
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
4
|
+
export * from './index';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLWRpcmVjdGl2ZXMtYW5pbWF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hbmltYXRlZC90YWlnYS11aS1jZGstZGlyZWN0aXZlcy1hbmltYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -1,4 +1,5 @@
|
|
1
1
|
export * from '@taiga-ui/cdk/directives/active-zone';
|
2
|
+
export * from '@taiga-ui/cdk/directives/animated';
|
2
3
|
export * from '@taiga-ui/cdk/directives/auto-focus';
|
3
4
|
export * from '@taiga-ui/cdk/directives/click-outside';
|
4
5
|
export * from '@taiga-ui/cdk/directives/control';
|
@@ -25,4 +26,4 @@ export * from '@taiga-ui/cdk/directives/validator';
|
|
25
26
|
export * from '@taiga-ui/cdk/directives/value-changes';
|
26
27
|
export * from '@taiga-ui/cdk/directives/visual-viewport';
|
27
28
|
export * from '@taiga-ui/cdk/directives/zoom';
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2FjdGl2ZS16b25lJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9hbmltYXRlZCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvY29udHJvbCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvY29weS1wcm9jZXNzb3InO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2Ryb3BwYWJsZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvZWxlbWVudCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvZm9jdXMtdHJhcCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvZm9udC1zaXplJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9mb3InO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2hpZ2gtZHBpJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9ob3ZlcmVkJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9pdGVtJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9sZXQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL21lZGlhJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9uYXRpdmUtdmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9vYnNjdXJlZCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvcGFuJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9wbGF0Zm9ybSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvcG9wb3Zlcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvcmVwZWF0LXRpbWVzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9yZXNpemVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9zd2lwZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvdmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy92YWx1ZS1jaGFuZ2VzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy92aXN1YWwtdmlld3BvcnQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3pvb20nO1xuIl19
|
package/esm2022/pipes/index.mjs
CHANGED
@@ -3,7 +3,8 @@ export * from '@taiga-ui/cdk/pipes/filter';
|
|
3
3
|
export * from '@taiga-ui/cdk/pipes/is-present';
|
4
4
|
export * from '@taiga-ui/cdk/pipes/keys';
|
5
5
|
export * from '@taiga-ui/cdk/pipes/mapper';
|
6
|
+
export * from '@taiga-ui/cdk/pipes/obfuscate';
|
6
7
|
export * from '@taiga-ui/cdk/pipes/repeat-times';
|
7
8
|
export * from '@taiga-ui/cdk/pipes/replace';
|
8
9
|
export * from '@taiga-ui/cdk/pipes/to-array';
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvcGlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL3BpcGVzL2FuaW1hdGlvbic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL3BpcGVzL2ZpbHRlcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL3BpcGVzL2lzLXByZXNlbnQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2Nkay9waXBlcy9rZXlzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvcGlwZXMvbWFwcGVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvcGlwZXMvb2JmdXNjYXRlJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvcGlwZXMvcmVwZWF0LXRpbWVzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jZGsvcGlwZXMvcmVwbGFjZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY2RrL3BpcGVzL3RvLWFycmF5JztcbiJdfQ==
|
@@ -0,0 +1,3 @@
|
|
1
|
+
export * from './obfuscate.options';
|
2
|
+
export * from './obfuscate.pipe';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvcGlwZXMvb2JmdXNjYXRlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb2JmdXNjYXRlLm9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9vYmZ1c2NhdGUucGlwZSc7XG4iXX0=
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { tuiCreateOptions, tuiObfuscate } from '@taiga-ui/cdk/utils';
|
2
|
+
export const TUI_OBFUSCATE_DEFAULT_OPTIONS = {
|
3
|
+
default: (value, symbol = '*') => tuiObfuscate(value, symbol),
|
4
|
+
recipes: {},
|
5
|
+
};
|
6
|
+
/**
|
7
|
+
* Injection token for obfuscation options.
|
8
|
+
*/
|
9
|
+
export const [TUI_OBFUSCATE_OPTIONS, tuiObfuscateOptionsProvider] = tuiCreateOptions(TUI_OBFUSCATE_DEFAULT_OPTIONS);
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JmdXNjYXRlLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvcGlwZXMvb2JmdXNjYXRlL29iZnVzY2F0ZS5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxZQUFZLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQWtCbkUsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQXdCO0lBQzlELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEdBQUcsR0FBRyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQztJQUM3RCxPQUFPLEVBQUUsRUFBRTtDQUNkLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMscUJBQXFCLEVBQUUsMkJBQTJCLENBQUMsR0FBRyxnQkFBZ0IsQ0FDaEYsNkJBQTZCLENBQ2hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUNyZWF0ZU9wdGlvbnMsIHR1aU9iZnVzY2F0ZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3Igb2JmdXNjYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHVpT2JmdXNjYXRlT3B0aW9ucyB7XG4gICAgLyoqXG4gICAgICogRGVmYXVsdCBmdW5jdGlvbiB1c2VkIHRvIG9iZnVzY2F0ZSBhIHN0cmluZ1xuICAgICAqIGlmIG5vIHJlY2lwZSB3YXMgZm91bmQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGVmYXVsdDogKHZhbHVlOiBzdHJpbmcsIHN5bWJvbD86IHN0cmluZykgPT4gc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQ29sbGVjdGlvbiBvZiBuYW1lZCByZWNpcGVzIGZvciBkaWZmZXJlbnQgb2JmdXNjYXRpb24gc2NlbmFyaW9zLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHJlY2lwZXM6IFJlY29yZDxzdHJpbmcsICh2YWx1ZTogc3RyaW5nKSA9PiBzdHJpbmc+O1xufVxuXG5leHBvcnQgY29uc3QgVFVJX09CRlVTQ0FURV9ERUZBVUxUX09QVElPTlM6IFR1aU9iZnVzY2F0ZU9wdGlvbnMgPSB7XG4gICAgZGVmYXVsdDogKHZhbHVlLCBzeW1ib2wgPSAnKicpID0+IHR1aU9iZnVzY2F0ZSh2YWx1ZSwgc3ltYm9sKSxcbiAgICByZWNpcGVzOiB7fSxcbn07XG5cbi8qKlxuICogSW5qZWN0aW9uIHRva2VuIGZvciBvYmZ1c2NhdGlvbiBvcHRpb25zLlxuICovXG5leHBvcnQgY29uc3QgW1RVSV9PQkZVU0NBVEVfT1BUSU9OUywgdHVpT2JmdXNjYXRlT3B0aW9uc1Byb3ZpZGVyXSA9IHR1aUNyZWF0ZU9wdGlvbnMoXG4gICAgVFVJX09CRlVTQ0FURV9ERUZBVUxUX09QVElPTlMsXG4pO1xuIl19
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import { inject, Pipe } from '@angular/core';
|
2
|
+
import { TUI_OBFUSCATE_OPTIONS } from './obfuscate.options';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
class TuiObfuscatePipe {
|
5
|
+
constructor() {
|
6
|
+
this.option = inject(TUI_OBFUSCATE_OPTIONS);
|
7
|
+
}
|
8
|
+
/**
|
9
|
+
* Transforms the input value by obfuscating it according to the specified recipe or symbol.
|
10
|
+
*
|
11
|
+
* @param value The value to be obfuscated should be a string.
|
12
|
+
* @param recipe The name of the recipe to use for obfuscation or a single character symbol for custom obfuscation.
|
13
|
+
* @returns The obfuscated string.
|
14
|
+
* @throws Will throw an error if the specified recipe is not found.
|
15
|
+
*/
|
16
|
+
transform(value, recipe = '') {
|
17
|
+
if (!value) {
|
18
|
+
return value;
|
19
|
+
}
|
20
|
+
if (!recipe) {
|
21
|
+
return this.option.default(value);
|
22
|
+
}
|
23
|
+
const obfuscate = this.option.recipes[recipe];
|
24
|
+
if (obfuscate) {
|
25
|
+
return obfuscate(value);
|
26
|
+
}
|
27
|
+
if (recipe.length === 1) {
|
28
|
+
return this.option.default(value, recipe[0]);
|
29
|
+
}
|
30
|
+
const availableRecipes = Object.keys(this.option.recipes).sort();
|
31
|
+
throw new Error(`Obfuscate recipe "${recipe}" not found. Available recipes: [${availableRecipes}]`);
|
32
|
+
}
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiObfuscatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
34
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TuiObfuscatePipe, isStandalone: true, name: "tuiObfuscate" }); }
|
35
|
+
}
|
36
|
+
export { TuiObfuscatePipe };
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiObfuscatePipe, decorators: [{
|
38
|
+
type: Pipe,
|
39
|
+
args: [{
|
40
|
+
standalone: true,
|
41
|
+
name: 'tuiObfuscate',
|
42
|
+
}]
|
43
|
+
}] });
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JmdXNjYXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvcGlwZXMvb2JmdXNjYXRlL29iZnVzY2F0ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHFCQUFxQixDQUFDOztBQUUxRCxNQUlhLGdCQUFnQjtJQUo3QjtRQUtxQixXQUFNLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7S0FtQzNEO0lBakNHOzs7Ozs7O09BT0c7SUFDSSxTQUFTLENBQUMsS0FBYSxFQUFFLE1BQU0sR0FBRyxFQUFFO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDUixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFOUMsSUFBSSxTQUFTLEVBQUU7WUFDWCxPQUFPLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMzQjtRQUVELElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDckIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDaEQ7UUFFRCxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVqRSxNQUFNLElBQUksS0FBSyxDQUNYLHFCQUFxQixNQUFNLG9DQUFvQyxnQkFBZ0IsR0FBRyxDQUNyRixDQUFDO0lBQ04sQ0FBQzsrR0FuQ1EsZ0JBQWdCOzZHQUFoQixnQkFBZ0I7O1NBQWhCLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQUo1QixJQUFJO21CQUFDO29CQUNGLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUUsY0FBYztpQkFDdkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7UGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2luamVjdCwgUGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7VFVJX09CRlVTQ0FURV9PUFRJT05TfSBmcm9tICcuL29iZnVzY2F0ZS5vcHRpb25zJztcblxuQFBpcGUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgbmFtZTogJ3R1aU9iZnVzY2F0ZScsXG59KVxuZXhwb3J0IGNsYXNzIFR1aU9iZnVzY2F0ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbiA9IGluamVjdChUVUlfT0JGVVNDQVRFX09QVElPTlMpO1xuXG4gICAgLyoqXG4gICAgICogVHJhbnNmb3JtcyB0aGUgaW5wdXQgdmFsdWUgYnkgb2JmdXNjYXRpbmcgaXQgYWNjb3JkaW5nIHRvIHRoZSBzcGVjaWZpZWQgcmVjaXBlIG9yIHN5bWJvbC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gYmUgb2JmdXNjYXRlZCBzaG91bGQgYmUgYSBzdHJpbmcuXG4gICAgICogQHBhcmFtIHJlY2lwZSBUaGUgbmFtZSBvZiB0aGUgcmVjaXBlIHRvIHVzZSBmb3Igb2JmdXNjYXRpb24gb3IgYSBzaW5nbGUgY2hhcmFjdGVyIHN5bWJvbCBmb3IgY3VzdG9tIG9iZnVzY2F0aW9uLlxuICAgICAqIEByZXR1cm5zIFRoZSBvYmZ1c2NhdGVkIHN0cmluZy5cbiAgICAgKiBAdGhyb3dzIFdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIHNwZWNpZmllZCByZWNpcGUgaXMgbm90IGZvdW5kLlxuICAgICAqL1xuICAgIHB1YmxpYyB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgcmVjaXBlID0gJycpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXJlY2lwZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9uLmRlZmF1bHQodmFsdWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb2JmdXNjYXRlID0gdGhpcy5vcHRpb24ucmVjaXBlc1tyZWNpcGVdO1xuXG4gICAgICAgIGlmIChvYmZ1c2NhdGUpIHtcbiAgICAgICAgICAgIHJldHVybiBvYmZ1c2NhdGUodmFsdWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJlY2lwZS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm9wdGlvbi5kZWZhdWx0KHZhbHVlLCByZWNpcGVbMF0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYXZhaWxhYmxlUmVjaXBlcyA9IE9iamVjdC5rZXlzKHRoaXMub3B0aW9uLnJlY2lwZXMpLnNvcnQoKTtcblxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICBgT2JmdXNjYXRlIHJlY2lwZSBcIiR7cmVjaXBlfVwiIG5vdCBmb3VuZC4gQXZhaWxhYmxlIHJlY2lwZXM6IFske2F2YWlsYWJsZVJlY2lwZXN9XWAsXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
4
|
+
export * from './index';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLXBpcGVzLW9iZnVzY2F0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9waXBlcy9vYmZ1c2NhdGUvdGFpZ2EtdWktY2RrLXBpcGVzLW9iZnVzY2F0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -21,10 +21,11 @@ export * from './is-string';
|
|
21
21
|
export * from './is-valid-url';
|
22
22
|
export * from './mark-control-as-touched-and-validate';
|
23
23
|
export * from './nullable-same';
|
24
|
+
export * from './obfuscate';
|
24
25
|
export * from './provide';
|
25
26
|
export * from './provide-options';
|
26
27
|
export * from './pure';
|
27
28
|
export * from './px';
|
28
29
|
export * from './uniq-by';
|
29
30
|
export * from './with-styles';
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLE1BQU0sQ0FBQztBQUNyQixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXJyYXktcmVtb3ZlJztcbmV4cG9ydCAqIGZyb20gJy4vYXJyYXktc2hhbGxvdy1lcXVhbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcnJheS10b2dnbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFuZ2UtZGF0ZS1zZXBhcmF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9jb3VudC1maWxsZWQtY29udHJvbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9jcmVhdGUtdG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9kZWZhdWx0LXNvcnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmUtYmluZGluZyc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS1saXN0ZW5lcic7XG5leHBvcnQgKiBmcm9tICcuL2Rpc3RhbmNlLWJldHdlZW4tdG91Y2hlcyc7XG5leHBvcnQgKiBmcm9tICcuL2Vhc2UtaW4tb3V0LXF1YWQnO1xuZXhwb3J0ICogZnJvbSAnLi9mbGF0LWxlbmd0aCc7XG5leHBvcnQgKiBmcm9tICcuL2ZvbnQtc2l6ZS13YXRjaGVyJztcbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW9yaWdpbmFsLWFycmF5LWZyb20tcXVlcnktbGlzdCc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWNvbnRyb2wtZW1wdHknO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1mYWxzeSc7XG5leHBvcnQgKiBmcm9tICcuL2lzLW51bWJlcic7XG5leHBvcnQgKiBmcm9tICcuL2lzLW9iamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2lzLXByZXNlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1zdHJpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy12YWxpZC11cmwnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXJrLWNvbnRyb2wtYXMtdG91Y2hlZC1hbmQtdmFsaWRhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9udWxsYWJsZS1zYW1lJztcbmV4cG9ydCAqIGZyb20gJy4vb2JmdXNjYXRlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZSc7XG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGUtb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3B1cmUnO1xuZXhwb3J0ICogZnJvbSAnLi9weCc7XG5leHBvcnQgKiBmcm9tICcuL3VuaXEtYnknO1xuZXhwb3J0ICogZnJvbSAnLi93aXRoLXN0eWxlcyc7XG4iXX0=
|
@@ -0,0 +1,53 @@
|
|
1
|
+
/**
|
2
|
+
* Obfuscates a string by replacing certain characters with a symbol.
|
3
|
+
*
|
4
|
+
* @param value the input string to obfuscate
|
5
|
+
* @param symbol the symbol for obfuscation
|
6
|
+
* @return the obfuscated string
|
7
|
+
*
|
8
|
+
* The function determines which characters to obfuscate using a regular expression and the string's length:
|
9
|
+
* - 8 or more: show first 2 and last 2 characters
|
10
|
+
* - 4 to 7: show first and last character
|
11
|
+
* - less than 4: obfuscate all characters
|
12
|
+
* - obfuscates only alphanumeric characters
|
13
|
+
*/
|
14
|
+
export function tuiObfuscate(value, symbol) {
|
15
|
+
if (!value) {
|
16
|
+
return value;
|
17
|
+
}
|
18
|
+
const match = /[\p{L}\p{N}]/gu;
|
19
|
+
let visible = 0;
|
20
|
+
let obfuscateIndexes = getObfuscateIndexes(value, match);
|
21
|
+
if (obfuscateIndexes.length >= 8) {
|
22
|
+
visible = 2;
|
23
|
+
}
|
24
|
+
else if (obfuscateIndexes.length >= 4) {
|
25
|
+
visible = 1;
|
26
|
+
}
|
27
|
+
obfuscateIndexes = obfuscateIndexes.slice(visible, obfuscateIndexes.length);
|
28
|
+
const lastIndex = Number(obfuscateIndexes.length) - visible;
|
29
|
+
obfuscateIndexes = obfuscateIndexes.slice(0, lastIndex < 0 ? 0 : lastIndex);
|
30
|
+
const result = value.split('');
|
31
|
+
obfuscateIndexes.forEach((index) => {
|
32
|
+
result[index] = symbol;
|
33
|
+
});
|
34
|
+
return result.join('');
|
35
|
+
}
|
36
|
+
function getObfuscateIndexes(value, match) {
|
37
|
+
if (!match) {
|
38
|
+
return Array.from({ length: value.length }).map((_, index) => index);
|
39
|
+
}
|
40
|
+
const obfuscateIndexes = [];
|
41
|
+
let matchResult;
|
42
|
+
let count = 0;
|
43
|
+
while ((matchResult = match.exec(value)) !== null && count < value.length) {
|
44
|
+
const start = matchResult.index;
|
45
|
+
const end = match.lastIndex - 1;
|
46
|
+
for (let i = start; i <= end; i++) {
|
47
|
+
obfuscateIndexes.push(i);
|
48
|
+
}
|
49
|
+
count++;
|
50
|
+
}
|
51
|
+
return obfuscateIndexes;
|
52
|
+
}
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JmdXNjYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMvb2JmdXNjYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQUMsS0FBYSxFQUFFLE1BQWM7SUFDdEQsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNSLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0lBRUQsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUM7SUFFL0IsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLElBQUksZ0JBQWdCLEdBQWEsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRW5FLElBQUksZ0JBQWdCLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtRQUM5QixPQUFPLEdBQUcsQ0FBQyxDQUFDO0tBQ2Y7U0FBTSxJQUFJLGdCQUFnQixDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7UUFDckMsT0FBTyxHQUFHLENBQUMsQ0FBQztLQUNmO0lBRUQsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU1RSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDO0lBRTVELGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUU1RSxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRS9CLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQy9CLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUM7SUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDM0IsQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQUMsS0FBYSxFQUFFLEtBQWM7SUFDdEQsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNSLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUN0RTtJQUVELE1BQU0sZ0JBQWdCLEdBQWEsRUFBRSxDQUFDO0lBQ3RDLElBQUksV0FBVyxDQUFDO0lBQ2hCLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztJQUVkLE9BQU8sQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRTtRQUN2RSxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDO1FBQ2hDLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1FBRWhDLEtBQUssSUFBSSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDL0IsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzVCO1FBRUQsS0FBSyxFQUFFLENBQUM7S0FDWDtJQUVELE9BQU8sZ0JBQWdCLENBQUM7QUFDNUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogT2JmdXNjYXRlcyBhIHN0cmluZyBieSByZXBsYWNpbmcgY2VydGFpbiBjaGFyYWN0ZXJzIHdpdGggYSBzeW1ib2wuXG4gKlxuICogQHBhcmFtIHZhbHVlIHRoZSBpbnB1dCBzdHJpbmcgdG8gb2JmdXNjYXRlXG4gKiBAcGFyYW0gc3ltYm9sIHRoZSBzeW1ib2wgZm9yIG9iZnVzY2F0aW9uXG4gKiBAcmV0dXJuIHRoZSBvYmZ1c2NhdGVkIHN0cmluZ1xuICpcbiAqIFRoZSBmdW5jdGlvbiBkZXRlcm1pbmVzIHdoaWNoIGNoYXJhY3RlcnMgdG8gb2JmdXNjYXRlIHVzaW5nIGEgcmVndWxhciBleHByZXNzaW9uIGFuZCB0aGUgc3RyaW5nJ3MgbGVuZ3RoOlxuICogLSA4IG9yIG1vcmU6IHNob3cgZmlyc3QgMiBhbmQgbGFzdCAyIGNoYXJhY3RlcnNcbiAqIC0gNCB0byA3OiBzaG93IGZpcnN0IGFuZCBsYXN0IGNoYXJhY3RlclxuICogLSBsZXNzIHRoYW4gNDogb2JmdXNjYXRlIGFsbCBjaGFyYWN0ZXJzXG4gKiAtIG9iZnVzY2F0ZXMgb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpT2JmdXNjYXRlKHZhbHVlOiBzdHJpbmcsIHN5bWJvbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBtYXRjaCA9IC9bXFxwe0x9XFxwe059XS9ndTtcblxuICAgIGxldCB2aXNpYmxlID0gMDtcbiAgICBsZXQgb2JmdXNjYXRlSW5kZXhlczogbnVtYmVyW10gPSBnZXRPYmZ1c2NhdGVJbmRleGVzKHZhbHVlLCBtYXRjaCk7XG5cbiAgICBpZiAob2JmdXNjYXRlSW5kZXhlcy5sZW5ndGggPj0gOCkge1xuICAgICAgICB2aXNpYmxlID0gMjtcbiAgICB9IGVsc2UgaWYgKG9iZnVzY2F0ZUluZGV4ZXMubGVuZ3RoID49IDQpIHtcbiAgICAgICAgdmlzaWJsZSA9IDE7XG4gICAgfVxuXG4gICAgb2JmdXNjYXRlSW5kZXhlcyA9IG9iZnVzY2F0ZUluZGV4ZXMuc2xpY2UodmlzaWJsZSwgb2JmdXNjYXRlSW5kZXhlcy5sZW5ndGgpO1xuXG4gICAgY29uc3QgbGFzdEluZGV4ID0gTnVtYmVyKG9iZnVzY2F0ZUluZGV4ZXMubGVuZ3RoKSAtIHZpc2libGU7XG5cbiAgICBvYmZ1c2NhdGVJbmRleGVzID0gb2JmdXNjYXRlSW5kZXhlcy5zbGljZSgwLCBsYXN0SW5kZXggPCAwID8gMCA6IGxhc3RJbmRleCk7XG5cbiAgICBjb25zdCByZXN1bHQgPSB2YWx1ZS5zcGxpdCgnJyk7XG5cbiAgICBvYmZ1c2NhdGVJbmRleGVzLmZvckVhY2goKGluZGV4KSA9PiB7XG4gICAgICAgIHJlc3VsdFtpbmRleF0gPSBzeW1ib2w7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0LmpvaW4oJycpO1xufVxuXG5mdW5jdGlvbiBnZXRPYmZ1c2NhdGVJbmRleGVzKHZhbHVlOiBzdHJpbmcsIG1hdGNoPzogUmVnRXhwKTogbnVtYmVyW10ge1xuICAgIGlmICghbWF0Y2gpIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oe2xlbmd0aDogdmFsdWUubGVuZ3RofSkubWFwKChfLCBpbmRleCkgPT4gaW5kZXgpO1xuICAgIH1cblxuICAgIGNvbnN0IG9iZnVzY2F0ZUluZGV4ZXM6IG51bWJlcltdID0gW107XG4gICAgbGV0IG1hdGNoUmVzdWx0O1xuICAgIGxldCBjb3VudCA9IDA7XG5cbiAgICB3aGlsZSAoKG1hdGNoUmVzdWx0ID0gbWF0Y2guZXhlYyh2YWx1ZSkpICE9PSBudWxsICYmIGNvdW50IDwgdmFsdWUubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gbWF0Y2hSZXN1bHQuaW5kZXg7XG4gICAgICAgIGNvbnN0IGVuZCA9IG1hdGNoLmxhc3RJbmRleCAtIDE7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDw9IGVuZDsgaSsrKSB7XG4gICAgICAgICAgICBvYmZ1c2NhdGVJbmRleGVzLnB1c2goaSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb3VudCsrO1xuICAgIH1cblxuICAgIHJldHVybiBvYmZ1c2NhdGVJbmRleGVzO1xufVxuIl19
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-constants.mjs","sources":["../../../projects/cdk/constants/allow-signal-writes.ts","../../../projects/cdk/constants/empty.ts","../../../projects/cdk/constants/handlers.ts","../../../projects/cdk/constants/matchers.ts","../../../projects/cdk/constants/regexp.ts","../../../projects/cdk/constants/svg-node-filter.ts","../../../projects/cdk/constants/unicode-chars.ts","../../../projects/cdk/constants/used-icons.ts","../../../projects/cdk/constants/version.ts","../../../projects/cdk/constants/taiga-ui-cdk-constants.ts"],"sourcesContent":["import type {CreateEffectOptions} from '@angular/core';\nimport {VERSION} from '@angular/core';\n\nexport const TUI_ALLOW_SIGNAL_WRITES: CreateEffectOptions =\n parseInt(VERSION.major, 10) >= 19 ? {} : {allowSignalWrites: true};\n","import {QueryList} from '@angular/core';\n\nconst rect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n x: 0,\n y: 0,\n} as const;\n\n/**\n * For type safety when using @ContentChildren and @ViewChildren\n *\n * NOTE: Be careful subscribing to 'changes'\n */\nexport const EMPTY_QUERY = new QueryList<any>();\nexport const EMPTY_ARRAY: [] = [];\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\nexport const EMPTY_CLIENT_RECT: DOMRect = {\n ...rect,\n toJSON: () => rect,\n};\n","/**\n * Handler that always returns `false`.\n */\n// eslint-disable-next-line no-restricted-syntax\nexport const TUI_FALSE_HANDLER = (): false => false;\n\n/**\n * Handler that always returns `true`.\n */\n// eslint-disable-next-line no-restricted-syntax\nexport const TUI_TRUE_HANDLER = (): true => true;\n","import type {TuiHandler, TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\n","export const svgNodeFilter: Exclude<NodeFilter, (node: Node) => number> = {\n acceptNode(node: Node): number {\n return 'ownerSVGElement' in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT;\n },\n};\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = '\\u00A0';\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = '\\u2013';\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = '\\u2014';\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = '\\u00AB';\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = '\\u00BB';\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = '\\u002D';\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `−`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = '\\u2212';\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = '\\u002B';\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = '\\u2022';\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = '\\u2026';\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = '\\u00A4';\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = '\\u200B';\n","/**\n * @description:\n * AUTOGENERATED\n *\n * Array of icons used in taiga-ui components\n */\nexport const TUI_USED_ICONS = [\n '@tui.mir',\n '@tui.visa',\n '@tui.electron',\n '@tui.mastercard',\n '@tui.maestro',\n '@tui.amex',\n '@tui.diners-club',\n '@tui.discover',\n '@tui.humo',\n '@tui.jcb',\n '@tui.ru-pay',\n '@tui.union-pay',\n '@tui.uzcard',\n '@tui.verve',\n '@tui.external-link',\n '@tui.search',\n '@tui.sun',\n '@tui.moon',\n '@tui.code',\n '@tui.menu',\n '@tui.copy',\n '@tui.check',\n '@tui.link',\n '@tui.languages',\n '@tui.shrink',\n '@tui.expand',\n '@tui.eye-off',\n '@tui.eye',\n '@tui.grip-vertical',\n '@tui.chevron-up',\n '@tui.chevron-down',\n '@tui.chevrons-up-down',\n '@tui.info',\n '@tui.circle-check',\n '@tui.circle-x',\n '@tui.circle-alert',\n '@tui.circle-help',\n '@tui.x',\n '@tui.chevron-right',\n '@tui.ellipsis',\n '@tui.chevron-left',\n '@tui.clock',\n '@tui.trash',\n '@tui.minus',\n '@tui.file',\n '@tui.calendar',\n '@tui.plus',\n '@tui.phone',\n '@tui.heart',\n '@tui.heart-filled',\n '@tui.star',\n '@tui.rotate-ccw-square',\n '@tui.arrow-left',\n '@tui.arrow-right',\n '@tui.minimize',\n '@tui.filter',\n '@tui.layout-grid',\n '@tui.move-up-right',\n '@tui.move-right',\n '@tui.move-down-right',\n '@tui.move-down',\n '@tui.move-down-left',\n '@tui.move-left',\n '@tui.move-up-left',\n '@tui.move-up',\n] as const;\n","export const TUI_VERSION = '4.
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-constants.mjs","sources":["../../../projects/cdk/constants/allow-signal-writes.ts","../../../projects/cdk/constants/empty.ts","../../../projects/cdk/constants/handlers.ts","../../../projects/cdk/constants/matchers.ts","../../../projects/cdk/constants/regexp.ts","../../../projects/cdk/constants/svg-node-filter.ts","../../../projects/cdk/constants/unicode-chars.ts","../../../projects/cdk/constants/used-icons.ts","../../../projects/cdk/constants/version.ts","../../../projects/cdk/constants/taiga-ui-cdk-constants.ts"],"sourcesContent":["import type {CreateEffectOptions} from '@angular/core';\nimport {VERSION} from '@angular/core';\n\nexport const TUI_ALLOW_SIGNAL_WRITES: CreateEffectOptions =\n parseInt(VERSION.major, 10) >= 19 ? {} : {allowSignalWrites: true};\n","import {QueryList} from '@angular/core';\n\nconst rect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n x: 0,\n y: 0,\n} as const;\n\n/**\n * For type safety when using @ContentChildren and @ViewChildren\n *\n * NOTE: Be careful subscribing to 'changes'\n */\nexport const EMPTY_QUERY = new QueryList<any>();\nexport const EMPTY_ARRAY: [] = [];\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\nexport const EMPTY_CLIENT_RECT: DOMRect = {\n ...rect,\n toJSON: () => rect,\n};\n","/**\n * Handler that always returns `false`.\n */\n// eslint-disable-next-line no-restricted-syntax\nexport const TUI_FALSE_HANDLER = (): false => false;\n\n/**\n * Handler that always returns `true`.\n */\n// eslint-disable-next-line no-restricted-syntax\nexport const TUI_TRUE_HANDLER = (): true => true;\n","import type {TuiHandler, TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\n","export const svgNodeFilter: Exclude<NodeFilter, (node: Node) => number> = {\n acceptNode(node: Node): number {\n return 'ownerSVGElement' in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT;\n },\n};\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = '\\u00A0';\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = '\\u2013';\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = '\\u2014';\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = '\\u00AB';\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = '\\u00BB';\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = '\\u002D';\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `−`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = '\\u2212';\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = '\\u002B';\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = '\\u2022';\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = '\\u2026';\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = '\\u00A4';\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = '\\u200B';\n","/**\n * @description:\n * AUTOGENERATED\n *\n * Array of icons used in taiga-ui components\n */\nexport const TUI_USED_ICONS = [\n '@tui.mir',\n '@tui.visa',\n '@tui.electron',\n '@tui.mastercard',\n '@tui.maestro',\n '@tui.amex',\n '@tui.diners-club',\n '@tui.discover',\n '@tui.humo',\n '@tui.jcb',\n '@tui.ru-pay',\n '@tui.union-pay',\n '@tui.uzcard',\n '@tui.verve',\n '@tui.external-link',\n '@tui.search',\n '@tui.sun',\n '@tui.moon',\n '@tui.code',\n '@tui.menu',\n '@tui.copy',\n '@tui.check',\n '@tui.link',\n '@tui.languages',\n '@tui.shrink',\n '@tui.expand',\n '@tui.eye-off',\n '@tui.eye',\n '@tui.grip-vertical',\n '@tui.chevron-up',\n '@tui.chevron-down',\n '@tui.chevrons-up-down',\n '@tui.info',\n '@tui.circle-check',\n '@tui.circle-x',\n '@tui.circle-alert',\n '@tui.circle-help',\n '@tui.x',\n '@tui.chevron-right',\n '@tui.ellipsis',\n '@tui.chevron-left',\n '@tui.clock',\n '@tui.trash',\n '@tui.minus',\n '@tui.file',\n '@tui.calendar',\n '@tui.plus',\n '@tui.phone',\n '@tui.heart',\n '@tui.heart-filled',\n '@tui.star',\n '@tui.rotate-ccw-square',\n '@tui.arrow-left',\n '@tui.arrow-right',\n '@tui.minimize',\n '@tui.filter',\n '@tui.layout-grid',\n '@tui.move-up-right',\n '@tui.move-right',\n '@tui.move-down-right',\n '@tui.move-down',\n '@tui.move-down-left',\n '@tui.move-left',\n '@tui.move-up-left',\n '@tui.move-up',\n] as const;\n","export const TUI_VERSION = '4.38.0-canary.30f044e';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,120 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { inject, ApplicationRef, ViewContainerRef, afterNextRender, Directive, Renderer2 } from '@angular/core';
|
3
|
+
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
4
|
+
import * as i2 from '@ng-web-apis/mutation-observer';
|
5
|
+
import { provideMutationObserverInit, WaMutationObserver } from '@ng-web-apis/mutation-observer';
|
6
|
+
|
7
|
+
const TUI_ENTER = 'tui-enter';
|
8
|
+
const TUI_LEAVE = 'tui-leave';
|
9
|
+
class TuiAnimated {
|
10
|
+
constructor() {
|
11
|
+
this.el = tuiInjectElement();
|
12
|
+
this.app = inject(ApplicationRef);
|
13
|
+
// @ts-ignore https://github.com/angular/angular/blob/main/packages/core/src/render3/interfaces/view.ts#L56
|
14
|
+
this.renderer = inject(ViewContainerRef)._hostLView?.[11];
|
15
|
+
if (!this.renderer) {
|
16
|
+
return;
|
17
|
+
}
|
18
|
+
// delegate is used in Angular Animations renderer
|
19
|
+
const renderer = this.renderer.delegate || this.renderer;
|
20
|
+
const { removeChild, data } = renderer;
|
21
|
+
if (data[TUI_LEAVE]) {
|
22
|
+
data[TUI_LEAVE].push(this.el);
|
23
|
+
return;
|
24
|
+
}
|
25
|
+
data[TUI_LEAVE] = [this.el];
|
26
|
+
afterNextRender(() => {
|
27
|
+
this.remove();
|
28
|
+
renderer.removeChild = (parent, el, host) => {
|
29
|
+
const remove = () => removeChild.call(renderer, parent, el, host);
|
30
|
+
const elements = data[TUI_LEAVE];
|
31
|
+
const element = elements.find((leave) => el.contains(leave));
|
32
|
+
const { length } = element?.getAnimations() || [];
|
33
|
+
if (!element) {
|
34
|
+
remove();
|
35
|
+
return;
|
36
|
+
}
|
37
|
+
elements.splice(elements.indexOf(element), 1);
|
38
|
+
element.classList.add(TUI_LEAVE);
|
39
|
+
const animations = element.getAnimations();
|
40
|
+
const last = animations[animations.length - 1];
|
41
|
+
const finish = () => {
|
42
|
+
if (parent.contains(el)) {
|
43
|
+
remove();
|
44
|
+
this.app.tick();
|
45
|
+
}
|
46
|
+
};
|
47
|
+
if (animations.length > length && last) {
|
48
|
+
last.onfinish = finish;
|
49
|
+
last.oncancel = finish;
|
50
|
+
}
|
51
|
+
else {
|
52
|
+
remove();
|
53
|
+
}
|
54
|
+
};
|
55
|
+
});
|
56
|
+
}
|
57
|
+
ngOnDestroy() {
|
58
|
+
const data = this.renderer?.data || { [TUI_LEAVE]: [] };
|
59
|
+
setTimeout(() => {
|
60
|
+
data[TUI_LEAVE] = data[TUI_LEAVE].filter((e) => e !== this.el);
|
61
|
+
});
|
62
|
+
}
|
63
|
+
remove() {
|
64
|
+
if (this.el.isConnected && !this.el.getAnimations().length) {
|
65
|
+
this.el.classList.remove(TUI_ENTER);
|
66
|
+
}
|
67
|
+
}
|
68
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimated, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
69
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAnimated, isStandalone: true, selector: "[tuiAnimated]", host: { listeners: { "animationend.self": "remove()", "animationcancel.self": "remove()" }, classAttribute: "tui-enter" }, ngImport: i0 }); }
|
70
|
+
}
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimated, decorators: [{
|
72
|
+
type: Directive,
|
73
|
+
args: [{
|
74
|
+
standalone: true,
|
75
|
+
selector: '[tuiAnimated]',
|
76
|
+
host: {
|
77
|
+
class: TUI_ENTER,
|
78
|
+
'(animationend.self)': 'remove()',
|
79
|
+
'(animationcancel.self)': 'remove()',
|
80
|
+
},
|
81
|
+
}]
|
82
|
+
}], ctorParameters: function () { return []; } });
|
83
|
+
|
84
|
+
class TuiAnimatedParent {
|
85
|
+
constructor() {
|
86
|
+
this.el = tuiInjectElement();
|
87
|
+
this.renderer = inject(Renderer2);
|
88
|
+
}
|
89
|
+
handle() {
|
90
|
+
this.el.classList.remove(TUI_ENTER);
|
91
|
+
this.renderer.data[TUI_LEAVE] = Array.from(this.el.children);
|
92
|
+
}
|
93
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimatedParent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
94
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAnimatedParent, isStandalone: true, selector: "[tuiAnimatedParent]", host: { listeners: { "waMutationObserver": "handle()" } }, providers: [provideMutationObserverInit({ childList: true })], hostDirectives: [{ directive: TuiAnimated }, { directive: i2.WaMutationObserver, outputs: ["waMutationObserver", "waMutationObserver"] }], ngImport: i0 }); }
|
95
|
+
}
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAnimatedParent, decorators: [{
|
97
|
+
type: Directive,
|
98
|
+
args: [{
|
99
|
+
standalone: true,
|
100
|
+
selector: '[tuiAnimatedParent]',
|
101
|
+
providers: [provideMutationObserverInit({ childList: true })],
|
102
|
+
hostDirectives: [
|
103
|
+
TuiAnimated,
|
104
|
+
{
|
105
|
+
directive: WaMutationObserver,
|
106
|
+
outputs: ['waMutationObserver'],
|
107
|
+
},
|
108
|
+
],
|
109
|
+
host: {
|
110
|
+
'(waMutationObserver)': 'handle()',
|
111
|
+
},
|
112
|
+
}]
|
113
|
+
}] });
|
114
|
+
|
115
|
+
/**
|
116
|
+
* Generated bundle index. Do not edit.
|
117
|
+
*/
|
118
|
+
|
119
|
+
export { TUI_ENTER, TUI_LEAVE, TuiAnimated, TuiAnimatedParent };
|
120
|
+
//# sourceMappingURL=taiga-ui-cdk-directives-animated.mjs.map
|