@taiga-ui/kit 4.58.0 → 4.59.0
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.
|
@@ -2,6 +2,7 @@ import { type TuiSizeL } from '@taiga-ui/core/types';
|
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare class TuiCopyComponent {
|
|
5
|
+
private readonly processor;
|
|
5
6
|
protected readonly notification: import("@taiga-ui/core/components/notification").TuiNotificationOptions;
|
|
6
7
|
protected readonly options: import("./copy.options").TuiCopyOptions;
|
|
7
8
|
protected readonly copied$: BehaviorSubject<boolean>;
|
|
@@ -10,6 +11,7 @@ export declare class TuiCopyComponent {
|
|
|
10
11
|
size: TuiSizeL;
|
|
11
12
|
protected get icon(): string;
|
|
12
13
|
protected get check(): string;
|
|
14
|
+
protected process(value: string | null | undefined): string;
|
|
13
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiCopyComponent, never>;
|
|
14
16
|
static ɵcmp: i0.ɵɵComponentDeclaration<TuiCopyComponent, "tui-copy", never, { "size": { "alias": "size"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
15
17
|
}
|
|
@@ -2,6 +2,7 @@ import { ClipboardModule } from '@angular/cdk/clipboard';
|
|
|
2
2
|
import { ChangeDetectionStrategy, Component, inject, Input } from '@angular/core';
|
|
3
3
|
import { toSignal } from '@angular/core/rxjs-interop';
|
|
4
4
|
import { TUI_FALSE_HANDLER } from '@taiga-ui/cdk/constants';
|
|
5
|
+
import { TuiCopyProcessor } from '@taiga-ui/cdk/directives/copy-processor';
|
|
5
6
|
import { tuiIsString } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
6
7
|
import { TuiButton } from '@taiga-ui/core/components/button';
|
|
7
8
|
import { TuiIcon } from '@taiga-ui/core/components/icon';
|
|
@@ -15,6 +16,7 @@ import * as i1 from "@angular/cdk/clipboard";
|
|
|
15
16
|
import * as i2 from "@taiga-ui/core/directives/hint";
|
|
16
17
|
class TuiCopyComponent {
|
|
17
18
|
constructor() {
|
|
19
|
+
this.processor = inject(TuiCopyProcessor, { optional: true });
|
|
18
20
|
this.notification = inject(TUI_NOTIFICATION_OPTIONS);
|
|
19
21
|
this.options = inject(TUI_COPY_OPTIONS);
|
|
20
22
|
this.copied$ = new BehaviorSubject(false);
|
|
@@ -32,8 +34,12 @@ class TuiCopyComponent {
|
|
|
32
34
|
? this.notification.icon
|
|
33
35
|
: this.notification.icon('positive');
|
|
34
36
|
}
|
|
37
|
+
process(value) {
|
|
38
|
+
const source = value ?? '';
|
|
39
|
+
return this.processor?.tuiCopyProcessor(source) ?? source.trim();
|
|
40
|
+
}
|
|
35
41
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCopyComponent, isStandalone: true, selector: "tui-copy", inputs: { size: "size" }, host: { listeners: { "pointerdown": "copied$.next(false)" }, properties: { "attr.data-size": "size" } }, ngImport: i0, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"content.textContent
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCopyComponent, isStandalone: true, selector: "tui-copy", inputs: { size: "size" }, host: { listeners: { "pointerdown": "copied$.next(false)" }, properties: { "attr.data-size": "size" } }, ngImport: i0, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [tuiHint]=\"template\"\n [tuiHintManual]=\"!!hint()\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n>\n <ng-content />\n</span>\n<button\n appearance=\"icon\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [attr.aria-label]=\"texts()?.[0]\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [iconStart]=\"icon\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n></button>\n<ng-template #template>\n <tui-icon\n class=\"t-icon\"\n [icon]=\"check\"\n />\n {{ texts()?.[1] }}\n</ng-template>\n", styles: [":host{cursor:pointer}:host[data-size=m]{--t-size: min( calc(1em + 1px) , 1rem)}:host[data-size=l]{--t-size: max(calc(1em / 1.57), min(max(calc(1em / 1.18), 1.25rem), 1.5rem))}@media (hover: hover) and (pointer: fine){:host:hover .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}:host:hover .t-button{opacity:1}}:host:has(.t-button:focus-visible) .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}.t-content{transition-property:opacity,-webkit-mask;transition-property:opacity,mask;transition-property:opacity,mask,-webkit-mask;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;-webkit-mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0;mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0}.t-button{opacity:0;border-radius:0;font-size:inherit!important;margin-inline-start:calc(-1 * var(--t-size));--t-size: inherit}.t-button:before{font-size:var(--t-size)}.t-button:focus-visible{opacity:1}.t-icon{font-size:1rem;margin-inline-end:.25rem;vertical-align:sub;color:var(--tui-text-positive)}\n"], dependencies: [{ kind: "ngmodule", type: ClipboardModule }, { kind: "directive", type: i1.CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i2.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintContext", "tuiHintAppearance", "tuiHint"], outputs: ["tuiHintVisible"] }, { kind: "directive", type: i2.TuiHintManual, selector: "[tuiHint][tuiHintManual]", inputs: ["tuiHintManual"] }, { kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
37
43
|
}
|
|
38
44
|
export { TuiCopyComponent };
|
|
39
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopyComponent, decorators: [{
|
|
@@ -41,8 +47,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
41
47
|
args: [{ standalone: true, selector: 'tui-copy', imports: [ClipboardModule, TuiButton, TuiHint, TuiIcon], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
42
48
|
'[attr.data-size]': 'size',
|
|
43
49
|
'(pointerdown)': 'copied$.next(false)',
|
|
44
|
-
}, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"content.textContent
|
|
50
|
+
}, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [tuiHint]=\"template\"\n [tuiHintManual]=\"!!hint()\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n>\n <ng-content />\n</span>\n<button\n appearance=\"icon\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [attr.aria-label]=\"texts()?.[0]\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [iconStart]=\"icon\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n></button>\n<ng-template #template>\n <tui-icon\n class=\"t-icon\"\n [icon]=\"check\"\n />\n {{ texts()?.[1] }}\n</ng-template>\n", styles: [":host{cursor:pointer}:host[data-size=m]{--t-size: min( calc(1em + 1px) , 1rem)}:host[data-size=l]{--t-size: max(calc(1em / 1.57), min(max(calc(1em / 1.18), 1.25rem), 1.5rem))}@media (hover: hover) and (pointer: fine){:host:hover .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}:host:hover .t-button{opacity:1}}:host:has(.t-button:focus-visible) .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}.t-content{transition-property:opacity,-webkit-mask;transition-property:opacity,mask;transition-property:opacity,mask,-webkit-mask;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;-webkit-mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0;mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0}.t-button{opacity:0;border-radius:0;font-size:inherit!important;margin-inline-start:calc(-1 * var(--t-size));--t-size: inherit}.t-button:before{font-size:var(--t-size)}.t-button:focus-visible{opacity:1}.t-icon{font-size:1rem;margin-inline-end:.25rem;vertical-align:sub;color:var(--tui-text-positive)}\n"] }]
|
|
45
51
|
}], propDecorators: { size: [{
|
|
46
52
|
type: Input
|
|
47
53
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9jb3B5L2NvcHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2RpcmVjdGl2ZXMvY29weS9jb3B5LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDekUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzlELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDaEYsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBRXZELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsZUFBZSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUV2RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUVoRCxNQVlhLGdCQUFnQjtJQVo3QjtRQWFxQixjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFFckQsaUJBQVksR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUNoRCxZQUFPLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDbkMsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzlDLFVBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDekMsU0FBSSxHQUFHLFFBQVEsQ0FDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQ2IsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDakIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDOUQsQ0FDSixDQUNKLENBQUM7UUFHSyxTQUFJLEdBQWEsR0FBRyxDQUFDO0tBbUIvQjtJQWpCRyxJQUFjLElBQUk7UUFDZCxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUNqQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJO1lBQ25CLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQWMsS0FBSztRQUNmLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUk7WUFDeEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFUyxPQUFPLENBQUMsS0FBZ0M7UUFDOUMsTUFBTSxNQUFNLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUUzQixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JFLENBQUM7K0dBbENRLGdCQUFnQjttR0FBaEIsZ0JBQWdCLHVNQzVCN0IsaXdCQThCQSxxcEREWGMsZUFBZSwwTkFBRSxTQUFTLHliQUFXLE9BQU87O1NBUzdDLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQVo1QixTQUFTO2lDQUNNLElBQUksWUFDTixVQUFVLFdBQ1gsQ0FBQyxlQUFlLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsbUJBR3RDLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0Ysa0JBQWtCLEVBQUUsTUFBTTt3QkFDMUIsZUFBZSxFQUFFLHFCQUFxQjtxQkFDekM7OEJBa0JNLElBQUk7c0JBRFYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xpcGJvYXJkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvY2xpcGJvYXJkJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3RvU2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1RVSV9GQUxTRV9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUNvcHlQcm9jZXNzb3J9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9jb3B5LXByb2Nlc3Nvcic7XG5pbXBvcnQge3R1aUlzU3RyaW5nfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlCdXR0b259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7VHVpSWNvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7VFVJX05PVElGSUNBVElPTl9PUFRJT05TfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL25vdGlmaWNhdGlvbic7XG5pbXBvcnQge1R1aUhpbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvaGludCc7XG5pbXBvcnQge3R5cGUgVHVpU2l6ZUx9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7VFVJX0NPUFlfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0aW1lcn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX0NPUFlfT1BUSU9OU30gZnJvbSAnLi9jb3B5Lm9wdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWNvcHknLFxuICAgIGltcG9ydHM6IFtDbGlwYm9hcmRNb2R1bGUsIFR1aUJ1dHRvbiwgVHVpSGludCwgVHVpSWNvbl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvcHkudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY29weS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zaXplXSc6ICdzaXplJyxcbiAgICAgICAgJyhwb2ludGVyZG93biknOiAnY29waWVkJC5uZXh0KGZhbHNlKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQ29weUNvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwcm9jZXNzb3IgPSBpbmplY3QoVHVpQ29weVByb2Nlc3Nvciwge29wdGlvbmFsOiB0cnVlfSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbm90aWZpY2F0aW9uID0gaW5qZWN0KFRVSV9OT1RJRklDQVRJT05fT1BUSU9OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0NPUFlfT1BUSU9OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvcGllZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGV4dHMgPSB0b1NpZ25hbChpbmplY3QoVFVJX0NPUFlfVEVYVFMpKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGludCA9IHRvU2lnbmFsKFxuICAgICAgICB0aGlzLmNvcGllZCQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoY29waWVkKSA9PlxuICAgICAgICAgICAgICAgIHRpbWVyKDIwMDApLnBpcGUobWFwKFRVSV9GQUxTRV9IQU5ETEVSKSwgc3RhcnRXaXRoKGNvcGllZCkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICApO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2l6ZTogVHVpU2l6ZUwgPSAnbSc7XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGljb24oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKHRoaXMub3B0aW9ucy5pY29uKVxuICAgICAgICAgICAgPyB0aGlzLm9wdGlvbnMuaWNvblxuICAgICAgICAgICAgOiB0aGlzLm9wdGlvbnMuaWNvbih0aGlzLnNpemUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgY2hlY2soKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKHRoaXMubm90aWZpY2F0aW9uLmljb24pXG4gICAgICAgICAgICA/IHRoaXMubm90aWZpY2F0aW9uLmljb25cbiAgICAgICAgICAgIDogdGhpcy5ub3RpZmljYXRpb24uaWNvbigncG9zaXRpdmUnKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcHJvY2Vzcyh2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHNvdXJjZSA9IHZhbHVlID8/ICcnO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3Nvcj8udHVpQ29weVByb2Nlc3Nvcihzb3VyY2UpID8/IHNvdXJjZS50cmltKCk7XG4gICAgfVxufVxuIiwiPHNwYW5cbiAgICAjY29udGVudFxuICAgIHR1aUhpbnRBcHBlYXJhbmNlPVwiZGFya1wiXG4gICAgdHVpSGludERpcmVjdGlvbj1cInRvcFwiXG4gICAgY2xhc3M9XCJ0LWNvbnRlbnRcIlxuICAgIFtjZGtDb3B5VG9DbGlwYm9hcmRdPVwicHJvY2Vzcyhjb250ZW50LnRleHRDb250ZW50KVwiXG4gICAgW3R1aUhpbnRdPVwidGVtcGxhdGVcIlxuICAgIFt0dWlIaW50TWFudWFsXT1cIiEhaGludCgpXCJcbiAgICAoY2RrQ29weVRvQ2xpcGJvYXJkQ29waWVkKT1cImNvcGllZCQubmV4dCgkZXZlbnQpXCJcbj5cbiAgICA8bmctY29udGVudCAvPlxuPC9zcGFuPlxuPGJ1dHRvblxuICAgIGFwcGVhcmFuY2U9XCJpY29uXCJcbiAgICBzaXplPVwieHNcIlxuICAgIHR1aUljb25CdXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cInQtYnV0dG9uXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRleHRzKCk/LlswXVwiXG4gICAgW2Nka0NvcHlUb0NsaXBib2FyZF09XCJwcm9jZXNzKGNvbnRlbnQudGV4dENvbnRlbnQpXCJcbiAgICBbaWNvblN0YXJ0XT1cImljb25cIlxuICAgIChjZGtDb3B5VG9DbGlwYm9hcmRDb3BpZWQpPVwiY29waWVkJC5uZXh0KCRldmVudClcIlxuPjwvYnV0dG9uPlxuPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgICA8dHVpLWljb25cbiAgICAgICAgY2xhc3M9XCJ0LWljb25cIlxuICAgICAgICBbaWNvbl09XCJjaGVja1wiXG4gICAgLz5cbiAgICB7eyB0ZXh0cygpPy5bMV0gfX1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -4,6 +4,7 @@ import * as i0 from '@angular/core';
|
|
|
4
4
|
import { inject, Component, ChangeDetectionStrategy, Input, computed, Directive } from '@angular/core';
|
|
5
5
|
import { toSignal } from '@angular/core/rxjs-interop';
|
|
6
6
|
import { TUI_FALSE_HANDLER } from '@taiga-ui/cdk/constants';
|
|
7
|
+
import { TuiCopyProcessor } from '@taiga-ui/cdk/directives/copy-processor';
|
|
7
8
|
import { tuiIsString, tuiDirectiveBinding } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
8
9
|
import { TuiButton } from '@taiga-ui/core/components/button';
|
|
9
10
|
import { TuiIcon } from '@taiga-ui/core/components/icon';
|
|
@@ -22,6 +23,7 @@ const [TUI_COPY_OPTIONS, tuiCopyOptionsProvider] = tuiCreateOptions({ icon: '@tu
|
|
|
22
23
|
|
|
23
24
|
class TuiCopyComponent {
|
|
24
25
|
constructor() {
|
|
26
|
+
this.processor = inject(TuiCopyProcessor, { optional: true });
|
|
25
27
|
this.notification = inject(TUI_NOTIFICATION_OPTIONS);
|
|
26
28
|
this.options = inject(TUI_COPY_OPTIONS);
|
|
27
29
|
this.copied$ = new BehaviorSubject(false);
|
|
@@ -39,15 +41,19 @@ class TuiCopyComponent {
|
|
|
39
41
|
? this.notification.icon
|
|
40
42
|
: this.notification.icon('positive');
|
|
41
43
|
}
|
|
44
|
+
process(value) {
|
|
45
|
+
const source = value ?? '';
|
|
46
|
+
return this.processor?.tuiCopyProcessor(source) ?? source.trim();
|
|
47
|
+
}
|
|
42
48
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCopyComponent, isStandalone: true, selector: "tui-copy", inputs: { size: "size" }, host: { listeners: { "pointerdown": "copied$.next(false)" }, properties: { "attr.data-size": "size" } }, ngImport: i0, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"content.textContent
|
|
49
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiCopyComponent, isStandalone: true, selector: "tui-copy", inputs: { size: "size" }, host: { listeners: { "pointerdown": "copied$.next(false)" }, properties: { "attr.data-size": "size" } }, ngImport: i0, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [tuiHint]=\"template\"\n [tuiHintManual]=\"!!hint()\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n>\n <ng-content />\n</span>\n<button\n appearance=\"icon\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [attr.aria-label]=\"texts()?.[0]\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [iconStart]=\"icon\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n></button>\n<ng-template #template>\n <tui-icon\n class=\"t-icon\"\n [icon]=\"check\"\n />\n {{ texts()?.[1] }}\n</ng-template>\n", styles: [":host{cursor:pointer}:host[data-size=m]{--t-size: min( calc(1em + 1px) , 1rem)}:host[data-size=l]{--t-size: max(calc(1em / 1.57), min(max(calc(1em / 1.18), 1.25rem), 1.5rem))}@media (hover: hover) and (pointer: fine){:host:hover .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}:host:hover .t-button{opacity:1}}:host:has(.t-button:focus-visible) .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}.t-content{transition-property:opacity,-webkit-mask;transition-property:opacity,mask;transition-property:opacity,mask,-webkit-mask;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;-webkit-mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0;mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0}.t-button{opacity:0;border-radius:0;font-size:inherit!important;margin-inline-start:calc(-1 * var(--t-size));--t-size: inherit}.t-button:before{font-size:var(--t-size)}.t-button:focus-visible{opacity:1}.t-icon{font-size:1rem;margin-inline-end:.25rem;vertical-align:sub;color:var(--tui-text-positive)}\n"], dependencies: [{ kind: "ngmodule", type: ClipboardModule }, { kind: "directive", type: i1.CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i2.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintContext", "tuiHintAppearance", "tuiHint"], outputs: ["tuiHintVisible"] }, { kind: "directive", type: i2.TuiHintManual, selector: "[tuiHint][tuiHintManual]", inputs: ["tuiHintManual"] }, { kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
44
50
|
}
|
|
45
51
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopyComponent, decorators: [{
|
|
46
52
|
type: Component,
|
|
47
53
|
args: [{ standalone: true, selector: 'tui-copy', imports: [ClipboardModule, TuiButton, TuiHint, TuiIcon], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
48
54
|
'[attr.data-size]': 'size',
|
|
49
55
|
'(pointerdown)': 'copied$.next(false)',
|
|
50
|
-
}, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"content.textContent
|
|
56
|
+
}, template: "<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [tuiHint]=\"template\"\n [tuiHintManual]=\"!!hint()\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n>\n <ng-content />\n</span>\n<button\n appearance=\"icon\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [attr.aria-label]=\"texts()?.[0]\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [iconStart]=\"icon\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n></button>\n<ng-template #template>\n <tui-icon\n class=\"t-icon\"\n [icon]=\"check\"\n />\n {{ texts()?.[1] }}\n</ng-template>\n", styles: [":host{cursor:pointer}:host[data-size=m]{--t-size: min( calc(1em + 1px) , 1rem)}:host[data-size=l]{--t-size: max(calc(1em / 1.57), min(max(calc(1em / 1.18), 1.25rem), 1.5rem))}@media (hover: hover) and (pointer: fine){:host:hover .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}:host:hover .t-button{opacity:1}}:host:has(.t-button:focus-visible) .t-content{opacity:var(--tui-disabled-opacity);-webkit-mask-position:0;mask-position:0}.t-content{transition-property:opacity,-webkit-mask;transition-property:opacity,mask;transition-property:opacity,mask,-webkit-mask;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;mask:linear-gradient(to var(--tui-inline-start),transparent calc(1.25 * var(--t-size)),black calc(2 * var(--t-size))) no-repeat,linear-gradient(to var(--tui-inline-end),black,black calc(2 * var(--t-size)),transparent calc(2 * var(--t-size))) no-repeat;-webkit-mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0;mask-position:calc(var(--tui-inline) * 2 * var(--t-size)),0}.t-button{opacity:0;border-radius:0;font-size:inherit!important;margin-inline-start:calc(-1 * var(--t-size));--t-size: inherit}.t-button:before{font-size:var(--t-size)}.t-button:focus-visible{opacity:1}.t-icon{font-size:1rem;margin-inline-end:.25rem;vertical-align:sub;color:var(--tui-text-positive)}\n"] }]
|
|
51
57
|
}], propDecorators: { size: [{
|
|
52
58
|
type: Input
|
|
53
59
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-directives-copy.mjs","sources":["../../../projects/kit/directives/copy/copy.options.ts","../../../projects/kit/directives/copy/copy.component.ts","../../../projects/kit/directives/copy/copy.template.html","../../../projects/kit/directives/copy/copy.directive.ts","../../../projects/kit/directives/copy/copy.ts","../../../projects/kit/directives/copy/index.ts","../../../projects/kit/directives/copy/taiga-ui-kit-directives-copy.ts"],"sourcesContent":["import {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nexport interface TuiCopyOptions {\n readonly icon: TuiStringHandler<TuiSizeL | TuiSizeS> | string;\n}\n\nexport const [TUI_COPY_OPTIONS, tuiCopyOptionsProvider] =\n tuiCreateOptions<TuiCopyOptions>({icon: '@tui.copy'});\n","import {ClipboardModule} from '@angular/cdk/clipboard';\nimport {ChangeDetectionStrategy, Component, inject, Input} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/components/notification';\nimport {TuiHint} from '@taiga-ui/core/directives/hint';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\nimport {TUI_COPY_TEXTS} from '@taiga-ui/kit/tokens';\nimport {BehaviorSubject, map, startWith, switchMap, timer} from 'rxjs';\n\nimport {TUI_COPY_OPTIONS} from './copy.options';\n\n@Component({\n standalone: true,\n selector: 'tui-copy',\n imports: [ClipboardModule, TuiButton, TuiHint, TuiIcon],\n templateUrl: './copy.template.html',\n styleUrls: ['./copy.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.data-size]': 'size',\n '(pointerdown)': 'copied$.next(false)',\n },\n})\nexport class TuiCopyComponent {\n protected readonly notification = inject(TUI_NOTIFICATION_OPTIONS);\n protected readonly options = inject(TUI_COPY_OPTIONS);\n protected readonly copied$ = new BehaviorSubject<boolean>(false);\n protected readonly texts = toSignal(inject(TUI_COPY_TEXTS));\n protected readonly hint = toSignal(\n this.copied$.pipe(\n switchMap((copied) =>\n timer(2000).pipe(map(TUI_FALSE_HANDLER), startWith(copied)),\n ),\n ),\n );\n\n @Input()\n public size: TuiSizeL = 'm';\n\n protected get icon(): string {\n return tuiIsString(this.options.icon)\n ? this.options.icon\n : this.options.icon(this.size);\n }\n\n protected get check(): string {\n return tuiIsString(this.notification.icon)\n ? this.notification.icon\n : this.notification.icon('positive');\n }\n}\n","<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"content.textContent ?? ''\"\n [tuiHint]=\"template\"\n [tuiHintManual]=\"!!hint()\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n>\n <ng-content />\n</span>\n<button\n appearance=\"icon\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [attr.aria-label]=\"texts()?.[0]\"\n [cdkCopyToClipboard]=\"content.textContent ?? ''\"\n [iconStart]=\"icon\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n></button>\n<ng-template #template>\n <tui-icon\n class=\"t-icon\"\n [icon]=\"check\"\n />\n {{ texts()?.[1] }}\n</ng-template>\n","import {DOCUMENT} from '@angular/common';\nimport {computed, Directive, inject, Input} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {tuiDirectiveBinding, tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiTextfieldComponent} from '@taiga-ui/core/components/textfield';\nimport {\n TUI_APPEARANCE_OPTIONS,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TUI_COPY_TEXTS} from '@taiga-ui/kit/tokens';\nimport {map, startWith, Subject, switchMap, timer} from 'rxjs';\n\nimport {TUI_COPY_OPTIONS} from './copy.options';\n\n@Directive({\n standalone: true,\n selector: 'tui-icon[tuiCopy]',\n providers: [\n {\n provide: TUI_APPEARANCE_OPTIONS,\n useValue: {appearance: 'icon'},\n },\n ],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiHintDirective,\n inputs: ['tuiHintAppearance', 'tuiHintContext'],\n },\n ],\n host: {\n style: 'cursor: pointer',\n '(click)': 'copy()',\n '[style.pointer-events]': 'disabled ? \"none\" : null',\n '[style.opacity]': 'disabled ? \"var(--tui-disabled-opacity)\" : null',\n '[style.border-width.rem]': 'textfield.options.size() === \"l\" ? null : 0.25',\n },\n})\nexport class TuiCopyDirective {\n private readonly options = inject(TUI_COPY_OPTIONS);\n private readonly copied$ = new Subject<void>();\n private readonly doc = inject(DOCUMENT);\n\n protected readonly textfield = inject(TuiTextfieldComponent);\n protected readonly hint = tuiDirectiveBinding(\n TuiHintDirective,\n 'tuiHint',\n toSignal(\n inject(TUI_COPY_TEXTS).pipe(\n switchMap(([copy, copied]) =>\n this.copied$.pipe(\n switchMap(() =>\n timer(3000).pipe(\n map(() => copy),\n startWith(copied),\n ),\n ),\n startWith(copy),\n ),\n ),\n ),\n {initialValue: ''},\n ),\n );\n\n protected readonly icons = tuiDirectiveBinding(\n TuiIcon,\n 'icon',\n computed((size = this.textfield.options.size()) =>\n tuiIsString(this.options.icon) ? this.options.icon : this.options.icon(size),\n ),\n );\n\n @Input()\n public tuiCopy = '';\n\n protected get disabled(): boolean {\n return !this.textfield.input?.nativeElement.value;\n }\n\n protected copy(): void {\n this.textfield.input?.nativeElement.select();\n this.doc.execCommand('copy');\n this.copied$.next();\n }\n}\n","import {TuiCopyComponent} from './copy.component';\nimport {TuiCopyDirective} from './copy.directive';\n\nexport const TuiCopy = [TuiCopyComponent, TuiCopyDirective] as const;\n","// TODO: Move to components in v5\nexport * from './copy';\nexport * from './copy.component';\nexport * from './copy.directive';\nexport * from './copy.options';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;;;;;;;;;;;;;AAQa,MAAA,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,GACnD,gBAAgB,CAAiB,EAAC,IAAI,EAAE,WAAW,EAAC;;ACMxD,MAYa,gBAAgB,CAAA;AAZ7B,IAAA,WAAA,GAAA;AAauB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAChD,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACnC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;QAC9C,IAAK,CAAA,KAAA,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;AACzC,QAAA,IAAA,CAAA,IAAI,GAAG,QAAQ,CAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,SAAS,CAAC,CAAC,MAAM,KACb,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAC9D,CACJ,CACJ,CAAC;QAGK,IAAI,CAAA,IAAA,GAAa,GAAG,CAAC;AAa/B,KAAA;AAXG,IAAA,IAAc,IAAI,GAAA;AACd,QAAA,OAAO,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AACjC,cAAE,IAAI,CAAC,OAAO,CAAC,IAAI;cACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;AAED,IAAA,IAAc,KAAK,GAAA;AACf,QAAA,OAAO,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AACtC,cAAE,IAAI,CAAC,YAAY,CAAC,IAAI;cACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC5C;+GA1BQ,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,uMC3B7B,2vBA8BA,EAAA,MAAA,EAAA,CAAA,8lDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDZc,eAAe,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,4BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,SAAS,ybAAW,OAAO,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAS7C,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAZ5B,SAAS;AACM,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,YACN,UAAU,EAAA,OAAA,EACX,CAAC,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAA,eAAA,EAGtC,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,kBAAkB,EAAE,MAAM;AAC1B,wBAAA,eAAe,EAAE,qBAAqB;AACzC,qBAAA,EAAA,QAAA,EAAA,2vBAAA,EAAA,MAAA,EAAA,CAAA,8lDAAA,CAAA,EAAA,CAAA;8BAgBM,IAAI,EAAA,CAAA;sBADV,KAAK;;;AExBV,MAwBa,gBAAgB,CAAA;AAxB7B,IAAA,WAAA,GAAA;AAyBqB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACnC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,OAAO,EAAQ,CAAC;AAC9B,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAErB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAC1C,QAAA,IAAA,CAAA,IAAI,GAAG,mBAAmB,CACzC,gBAAgB,EAChB,SAAS,EACT,QAAQ,CACJ,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CACvB,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,KACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,SAAS,CAAC,MACN,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CACZ,GAAG,CAAC,MAAM,IAAI,CAAC,EACf,SAAS,CAAC,MAAM,CAAC,CACpB,CACJ,EACD,SAAS,CAAC,IAAI,CAAC,CAClB,CACJ,CACJ,EACD,EAAC,YAAY,EAAE,EAAE,EAAC,CACrB,CACJ,CAAC;QAEiB,IAAK,CAAA,KAAA,GAAG,mBAAmB,CAC1C,OAAO,EACP,MAAM,EACN,QAAQ,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,KAC1C,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/E,CACJ,CAAC;QAGK,IAAO,CAAA,OAAA,GAAG,EAAE,CAAC;AAWvB,KAAA;AATG,IAAA,IAAc,QAAQ,GAAA;QAClB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC;KACrD;IAES,IAAI,GAAA;QACV,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC;AAC7C,QAAA,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACvB;+GA9CQ,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EArBd,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,QAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,4BAAA,EAAA,eAAA,EAAA,mDAAA,EAAA,wBAAA,EAAA,kDAAA,EAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,sBAAsB;AAC/B,gBAAA,QAAQ,EAAE,EAAC,UAAU,EAAE,MAAM,EAAC;AACjC,aAAA;AACJ,SAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAAA,IAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAgBQ,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAxB5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,sBAAsB;AAC/B,4BAAA,QAAQ,EAAE,EAAC,UAAU,EAAE,MAAM,EAAC;AACjC,yBAAA;AACJ,qBAAA;AACD,oBAAA,cAAc,EAAE;wBACZ,iBAAiB;AACjB,wBAAA;AACI,4BAAA,SAAS,EAAE,gBAAgB;AAC3B,4BAAA,MAAM,EAAE,CAAC,mBAAmB,EAAE,gBAAgB,CAAC;AAClD,yBAAA;AACJ,qBAAA;AACD,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,iBAAiB;AACxB,wBAAA,SAAS,EAAE,QAAQ;AACnB,wBAAA,wBAAwB,EAAE,0BAA0B;AACpD,wBAAA,iBAAiB,EAAE,iDAAiD;AACpE,wBAAA,0BAA0B,EAAE,gDAAgD;AAC/E,qBAAA;AACJ,iBAAA,CAAA;8BAqCU,OAAO,EAAA,CAAA;sBADb,KAAK;;;MCxEG,OAAO,GAAG,CAAC,gBAAgB,EAAE,gBAAgB;;ACH1D;;ACAA;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-directives-copy.mjs","sources":["../../../projects/kit/directives/copy/copy.options.ts","../../../projects/kit/directives/copy/copy.component.ts","../../../projects/kit/directives/copy/copy.template.html","../../../projects/kit/directives/copy/copy.directive.ts","../../../projects/kit/directives/copy/copy.ts","../../../projects/kit/directives/copy/index.ts","../../../projects/kit/directives/copy/taiga-ui-kit-directives-copy.ts"],"sourcesContent":["import {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nexport interface TuiCopyOptions {\n readonly icon: TuiStringHandler<TuiSizeL | TuiSizeS> | string;\n}\n\nexport const [TUI_COPY_OPTIONS, tuiCopyOptionsProvider] =\n tuiCreateOptions<TuiCopyOptions>({icon: '@tui.copy'});\n","import {ClipboardModule} from '@angular/cdk/clipboard';\nimport {ChangeDetectionStrategy, Component, inject, Input} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {TuiCopyProcessor} from '@taiga-ui/cdk/directives/copy-processor';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/components/notification';\nimport {TuiHint} from '@taiga-ui/core/directives/hint';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\nimport {TUI_COPY_TEXTS} from '@taiga-ui/kit/tokens';\nimport {BehaviorSubject, map, startWith, switchMap, timer} from 'rxjs';\n\nimport {TUI_COPY_OPTIONS} from './copy.options';\n\n@Component({\n standalone: true,\n selector: 'tui-copy',\n imports: [ClipboardModule, TuiButton, TuiHint, TuiIcon],\n templateUrl: './copy.template.html',\n styleUrls: ['./copy.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.data-size]': 'size',\n '(pointerdown)': 'copied$.next(false)',\n },\n})\nexport class TuiCopyComponent {\n private readonly processor = inject(TuiCopyProcessor, {optional: true});\n\n protected readonly notification = inject(TUI_NOTIFICATION_OPTIONS);\n protected readonly options = inject(TUI_COPY_OPTIONS);\n protected readonly copied$ = new BehaviorSubject<boolean>(false);\n protected readonly texts = toSignal(inject(TUI_COPY_TEXTS));\n protected readonly hint = toSignal(\n this.copied$.pipe(\n switchMap((copied) =>\n timer(2000).pipe(map(TUI_FALSE_HANDLER), startWith(copied)),\n ),\n ),\n );\n\n @Input()\n public size: TuiSizeL = 'm';\n\n protected get icon(): string {\n return tuiIsString(this.options.icon)\n ? this.options.icon\n : this.options.icon(this.size);\n }\n\n protected get check(): string {\n return tuiIsString(this.notification.icon)\n ? this.notification.icon\n : this.notification.icon('positive');\n }\n\n protected process(value: string | null | undefined): string {\n const source = value ?? '';\n\n return this.processor?.tuiCopyProcessor(source) ?? source.trim();\n }\n}\n","<span\n #content\n tuiHintAppearance=\"dark\"\n tuiHintDirection=\"top\"\n class=\"t-content\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [tuiHint]=\"template\"\n [tuiHintManual]=\"!!hint()\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n>\n <ng-content />\n</span>\n<button\n appearance=\"icon\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [attr.aria-label]=\"texts()?.[0]\"\n [cdkCopyToClipboard]=\"process(content.textContent)\"\n [iconStart]=\"icon\"\n (cdkCopyToClipboardCopied)=\"copied$.next($event)\"\n></button>\n<ng-template #template>\n <tui-icon\n class=\"t-icon\"\n [icon]=\"check\"\n />\n {{ texts()?.[1] }}\n</ng-template>\n","import {DOCUMENT} from '@angular/common';\nimport {computed, Directive, inject, Input} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {tuiDirectiveBinding, tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiTextfieldComponent} from '@taiga-ui/core/components/textfield';\nimport {\n TUI_APPEARANCE_OPTIONS,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiHintDirective} from '@taiga-ui/core/directives/hint';\nimport {TUI_COPY_TEXTS} from '@taiga-ui/kit/tokens';\nimport {map, startWith, Subject, switchMap, timer} from 'rxjs';\n\nimport {TUI_COPY_OPTIONS} from './copy.options';\n\n@Directive({\n standalone: true,\n selector: 'tui-icon[tuiCopy]',\n providers: [\n {\n provide: TUI_APPEARANCE_OPTIONS,\n useValue: {appearance: 'icon'},\n },\n ],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiHintDirective,\n inputs: ['tuiHintAppearance', 'tuiHintContext'],\n },\n ],\n host: {\n style: 'cursor: pointer',\n '(click)': 'copy()',\n '[style.pointer-events]': 'disabled ? \"none\" : null',\n '[style.opacity]': 'disabled ? \"var(--tui-disabled-opacity)\" : null',\n '[style.border-width.rem]': 'textfield.options.size() === \"l\" ? null : 0.25',\n },\n})\nexport class TuiCopyDirective {\n private readonly options = inject(TUI_COPY_OPTIONS);\n private readonly copied$ = new Subject<void>();\n private readonly doc = inject(DOCUMENT);\n\n protected readonly textfield = inject(TuiTextfieldComponent);\n protected readonly hint = tuiDirectiveBinding(\n TuiHintDirective,\n 'tuiHint',\n toSignal(\n inject(TUI_COPY_TEXTS).pipe(\n switchMap(([copy, copied]) =>\n this.copied$.pipe(\n switchMap(() =>\n timer(3000).pipe(\n map(() => copy),\n startWith(copied),\n ),\n ),\n startWith(copy),\n ),\n ),\n ),\n {initialValue: ''},\n ),\n );\n\n protected readonly icons = tuiDirectiveBinding(\n TuiIcon,\n 'icon',\n computed((size = this.textfield.options.size()) =>\n tuiIsString(this.options.icon) ? this.options.icon : this.options.icon(size),\n ),\n );\n\n @Input()\n public tuiCopy = '';\n\n protected get disabled(): boolean {\n return !this.textfield.input?.nativeElement.value;\n }\n\n protected copy(): void {\n this.textfield.input?.nativeElement.select();\n this.doc.execCommand('copy');\n this.copied$.next();\n }\n}\n","import {TuiCopyComponent} from './copy.component';\nimport {TuiCopyDirective} from './copy.directive';\n\nexport const TuiCopy = [TuiCopyComponent, TuiCopyDirective] as const;\n","// TODO: Move to components in v5\nexport * from './copy';\nexport * from './copy.component';\nexport * from './copy.directive';\nexport * from './copy.options';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ui/kit",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.59.0",
|
|
4
4
|
"description": "Taiga UI Angular main components kit",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
@@ -371,18 +371,18 @@
|
|
|
371
371
|
"esm": "./esm2022/components/preview/taiga-ui-kit-components-preview.mjs",
|
|
372
372
|
"default": "./fesm2022/taiga-ui-kit-components-preview.mjs"
|
|
373
373
|
},
|
|
374
|
-
"./components/progress": {
|
|
375
|
-
"types": "./components/progress/index.d.ts",
|
|
376
|
-
"esm2022": "./esm2022/components/progress/taiga-ui-kit-components-progress.mjs",
|
|
377
|
-
"esm": "./esm2022/components/progress/taiga-ui-kit-components-progress.mjs",
|
|
378
|
-
"default": "./fesm2022/taiga-ui-kit-components-progress.mjs"
|
|
379
|
-
},
|
|
380
374
|
"./components/pulse": {
|
|
381
375
|
"types": "./components/pulse/index.d.ts",
|
|
382
376
|
"esm2022": "./esm2022/components/pulse/taiga-ui-kit-components-pulse.mjs",
|
|
383
377
|
"esm": "./esm2022/components/pulse/taiga-ui-kit-components-pulse.mjs",
|
|
384
378
|
"default": "./fesm2022/taiga-ui-kit-components-pulse.mjs"
|
|
385
379
|
},
|
|
380
|
+
"./components/progress": {
|
|
381
|
+
"types": "./components/progress/index.d.ts",
|
|
382
|
+
"esm2022": "./esm2022/components/progress/taiga-ui-kit-components-progress.mjs",
|
|
383
|
+
"esm": "./esm2022/components/progress/taiga-ui-kit-components-progress.mjs",
|
|
384
|
+
"default": "./fesm2022/taiga-ui-kit-components-progress.mjs"
|
|
385
|
+
},
|
|
386
386
|
"./components/push": {
|
|
387
387
|
"types": "./components/push/index.d.ts",
|
|
388
388
|
"esm2022": "./esm2022/components/push/taiga-ui-kit-components-push.mjs",
|
|
@@ -673,9 +673,9 @@
|
|
|
673
673
|
"@ng-web-apis/intersection-observer": "^4.12.0",
|
|
674
674
|
"@ng-web-apis/mutation-observer": "^4.12.0",
|
|
675
675
|
"@ng-web-apis/resize-observer": "^4.12.0",
|
|
676
|
-
"@taiga-ui/cdk": "^4.
|
|
677
|
-
"@taiga-ui/core": "^4.
|
|
678
|
-
"@taiga-ui/i18n": "^4.
|
|
676
|
+
"@taiga-ui/cdk": "^4.59.0",
|
|
677
|
+
"@taiga-ui/core": "^4.59.0",
|
|
678
|
+
"@taiga-ui/i18n": "^4.59.0",
|
|
679
679
|
"@taiga-ui/polymorpheus": "^4.9.0",
|
|
680
680
|
"rxjs": ">=7.0.0"
|
|
681
681
|
},
|