@alauda-fe/common 1.3.1 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/api/auth-api.service.d.ts +14 -0
  2. package/api/platform-ui.service.d.ts +1 -0
  3. package/api/public-api.d.ts +1 -0
  4. package/array-form-table/form/component.d.ts +6 -2
  5. package/assets/icons/icon-refresh-drag.svg +1 -0
  6. package/authorization/interceptor.service.d.ts +2 -1
  7. package/authorization/public-api.d.ts +1 -0
  8. package/authorization/session-manage.service.d.ts +2 -4
  9. package/authorization/state.service.d.ts +19 -18
  10. package/authorization/storage-token.d.ts +4 -10
  11. package/core/constants/patterns.d.ts +4 -0
  12. package/core/directives/feature-gate.directive.d.ts +2 -1
  13. package/core/module.d.ts +21 -21
  14. package/core/pipes/minimum-format.pipe.d.ts +1 -1
  15. package/core/pipes/time.pipe.d.ts +1 -1
  16. package/core/services/context.service.d.ts +3 -4
  17. package/core/services/feature-gate.service.d.ts +1 -0
  18. package/core/services/workspace-helper.service.d.ts +3 -1
  19. package/core/types/commons.d.ts +2 -0
  20. package/core/types/k8s/crd.d.ts +64 -0
  21. package/core/types/resource-definitions.d.ts +3 -3
  22. package/core/utils/cache-store.d.ts +15 -13
  23. package/core/utils/common.d.ts +1 -2
  24. package/core/utils/public-api.d.ts +1 -0
  25. package/core/utils/router.d.ts +3 -0
  26. package/editable/editable.component.d.ts +23 -0
  27. package/editable/editable.directive.d.ts +9 -0
  28. package/editable/editable.type.d.ts +5 -0
  29. package/editable/public-api.d.ts +2 -0
  30. package/effect-directive/event.directive.d.ts +36 -0
  31. package/esm2022/api/auth-api.service.mjs +34 -0
  32. package/esm2022/api/platform-ui.service.mjs +2 -1
  33. package/esm2022/api/public-api.mjs +2 -1
  34. package/esm2022/array-form-table/form/component.mjs +30 -15
  35. package/esm2022/authorization/guard.service.mjs +2 -2
  36. package/esm2022/authorization/interceptor.service.mjs +31 -24
  37. package/esm2022/authorization/public-api.mjs +2 -1
  38. package/esm2022/authorization/session-manage.service.mjs +11 -24
  39. package/esm2022/authorization/state.service.mjs +94 -100
  40. package/esm2022/authorization/storage-token.mjs +12 -88
  41. package/esm2022/core/constants/patterns.mjs +6 -4
  42. package/esm2022/core/directives/feature-gate.directive.mjs +7 -4
  43. package/esm2022/core/guards/feature.guard.mjs +3 -2
  44. package/esm2022/core/module.mjs +7 -12
  45. package/esm2022/core/pipes/minimum-format.pipe.mjs +4 -3
  46. package/esm2022/core/pipes/time.pipe.mjs +3 -3
  47. package/esm2022/core/services/context.service.mjs +9 -12
  48. package/esm2022/core/services/feature-gate.service.mjs +4 -3
  49. package/esm2022/core/services/workspace-helper.service.mjs +7 -1
  50. package/esm2022/core/types/commons.mjs +1 -1
  51. package/esm2022/core/types/k8s/crd.mjs +8 -1
  52. package/esm2022/core/types/resource-definitions.mjs +2 -2
  53. package/esm2022/core/utils/cache-store.mjs +51 -29
  54. package/esm2022/core/utils/common.mjs +8 -10
  55. package/esm2022/core/utils/public-api.mjs +2 -1
  56. package/esm2022/core/utils/router.mjs +20 -0
  57. package/esm2022/editable/editable.component.mjs +136 -0
  58. package/esm2022/editable/editable.directive.mjs +25 -0
  59. package/esm2022/editable/editable.type.mjs +6 -0
  60. package/esm2022/editable/public-api.mjs +3 -0
  61. package/esm2022/effect-directive/event.directive.mjs +79 -4
  62. package/esm2022/exec/terminal/component.mjs +12 -19
  63. package/esm2022/k8s-resource-list/footer/component.mjs +63 -25
  64. package/esm2022/k8s-resource-list/k8s-resource-list.module.mjs +18 -6
  65. package/esm2022/k8s-resource-list/utils.mjs +7 -3
  66. package/esm2022/multi-search/multi-search-tags/component.mjs +2 -2
  67. package/esm2022/multi-search/types.mjs +1 -1
  68. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +55 -53
  69. package/esm2022/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.mjs +4 -4
  70. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +3 -8
  71. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +6 -10
  72. package/esm2022/pie-derivative-chart/pie-derivative-chart.module.mjs +6 -6
  73. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +51 -40
  74. package/esm2022/pie-derivative-chart/units.mjs +14 -0
  75. package/esm2022/pod-status/component.mjs +34 -55
  76. package/esm2022/public-api.mjs +2 -1
  77. package/esm2022/searchable-selector/component.mjs +2 -2
  78. package/esm2022/table/component.mjs +47 -30
  79. package/esm2022/table/module.mjs +1 -1
  80. package/esm2022/view-chart/view-chart.component.mjs +5 -8
  81. package/esm2022/widget/public-api.mjs +2 -1
  82. package/esm2022/widget/resource-label/component.mjs +131 -0
  83. package/esm2022/widget/zero-state/zero-state.component.mjs +36 -21
  84. package/exec/terminal/component.d.ts +1 -3
  85. package/k8s-resource-list/footer/component.d.ts +8 -1
  86. package/k8s-resource-list/k8s-resource-list.module.d.ts +1 -1
  87. package/multi-search/types.d.ts +1 -0
  88. package/package.json +1 -1
  89. package/page-scaffold/page-header/common-layout/product-select/component.d.ts +1 -3
  90. package/pie-derivative-chart/radial-bar/radial-bar-chart.component.d.ts +4 -0
  91. package/pie-derivative-chart/units.d.ts +2 -0
  92. package/pod-status/component.d.ts +1 -3
  93. package/public-api.d.ts +1 -0
  94. package/styles/global.scss +1 -0
  95. package/styles/tailwind-preset.scss +1 -1
  96. package/table/component.d.ts +4 -3
  97. package/widget/public-api.d.ts +1 -0
  98. package/widget/resource-label/component.d.ts +25 -0
  99. package/widget/zero-state/zero-state.component.d.ts +4 -1
@@ -0,0 +1,136 @@
1
+ import { buildBem, ButtonModule, IconComponent, } from '@alauda/ui';
2
+ import { AsyncPipe, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, Output, TemplateRef, computed, effect, input, signal, } from '@angular/core';
4
+ import { finalize, first, from } from 'rxjs';
5
+ import { DisabledContainerComponent } from '../disabled-container/public-api';
6
+ import { EditableEditorDirective, EditableViewerDirective, } from './editable.directive';
7
+ import { EditableMode } from './editable.type';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@alauda/ui";
10
+ function EditableComponent_div_1_Template(rf, ctx) { if (rf & 1) {
11
+ const _r1 = i0.ɵɵgetCurrentView();
12
+ i0.ɵɵelementStart(0, "div");
13
+ i0.ɵɵelementContainer(1, 2);
14
+ i0.ɵɵelementStart(2, "button", 3);
15
+ i0.ɵɵlistener("click", function EditableComponent_div_1_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.mode.set(ctx_r1.EditableMode.Edit)); });
16
+ i0.ɵɵelement(3, "aui-icon", 4);
17
+ i0.ɵɵelementEnd()();
18
+ } if (rf & 2) {
19
+ const ctx_r1 = i0.ɵɵnextContext();
20
+ i0.ɵɵclassMap(ctx_r1.bem.element("viewer-container"));
21
+ i0.ɵɵadvance();
22
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.viewer);
23
+ i0.ɵɵadvance();
24
+ i0.ɵɵproperty("square", true);
25
+ } }
26
+ function EditableComponent_ng_container_2_Template(rf, ctx) { if (rf & 1) {
27
+ const _r3 = i0.ɵɵgetCurrentView();
28
+ i0.ɵɵelementContainerStart(0);
29
+ i0.ɵɵelementStart(1, "div");
30
+ i0.ɵɵelementContainer(2, 2);
31
+ i0.ɵɵelementStart(3, "button", 5);
32
+ i0.ɵɵlistener("click", function EditableComponent_ng_container_2_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.saveEdit()); });
33
+ i0.ɵɵelement(4, "aui-icon", 6);
34
+ i0.ɵɵelementEnd();
35
+ i0.ɵɵelementStart(5, "button", 3);
36
+ i0.ɵɵlistener("click", function EditableComponent_ng_container_2_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.cancelEdit()); });
37
+ i0.ɵɵelement(6, "aui-icon", 7);
38
+ i0.ɵɵelementEnd()();
39
+ i0.ɵɵelementContainerEnd();
40
+ } if (rf & 2) {
41
+ const ctx_r1 = i0.ɵɵnextContext();
42
+ i0.ɵɵadvance();
43
+ i0.ɵɵclassMap(ctx_r1.bem.element("editor-container"));
44
+ i0.ɵɵadvance();
45
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.editor);
46
+ i0.ɵɵadvance();
47
+ i0.ɵɵproperty("square", true)("disabled", ctx_r1.loading);
48
+ i0.ɵɵadvance();
49
+ i0.ɵɵproperty("icon", ctx_r1.loading ? "spinner" : "check");
50
+ i0.ɵɵadvance();
51
+ i0.ɵɵproperty("square", true);
52
+ } }
53
+ const bem = buildBem('acl-editable');
54
+ export class EditableComponent {
55
+ constructor() {
56
+ this.beforeSave = input();
57
+ this.position = input('top');
58
+ this.save = new EventEmitter();
59
+ this.cancel = new EventEmitter();
60
+ this.modeChange = new EventEmitter();
61
+ this.EditableMode = EditableMode;
62
+ this.bem = bem;
63
+ this.loading = false;
64
+ this.mode = signal(EditableMode.View);
65
+ this.hostClass = computed(() => {
66
+ return `${bem.block()} ${bem.modifier(this.position())}`;
67
+ });
68
+ effect(() => {
69
+ this.modeChange.emit(this.mode());
70
+ });
71
+ }
72
+ saveEdit() {
73
+ this.loading = true;
74
+ from(this.beforeSave()?.() || Promise.resolve())
75
+ .pipe(first(), finalize(() => (this.loading = false)))
76
+ .subscribe(isContinue => {
77
+ if (isContinue === false) {
78
+ return;
79
+ }
80
+ this.mode.set(EditableMode.View);
81
+ this.save.emit();
82
+ });
83
+ }
84
+ cancelEdit() {
85
+ this.mode.set(EditableMode.View);
86
+ this.cancel.emit();
87
+ }
88
+ static { this.ɵfac = function EditableComponent_Factory(t) { return new (t || EditableComponent)(); }; }
89
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EditableComponent, selectors: [["acl-editable"]], contentQueries: function EditableComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
90
+ i0.ɵɵcontentQuery(dirIndex, EditableViewerDirective, 5, TemplateRef);
91
+ i0.ɵɵcontentQuery(dirIndex, EditableEditorDirective, 5, TemplateRef);
92
+ } if (rf & 2) {
93
+ let _t;
94
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.viewer = _t.first);
95
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.editor = _t.first);
96
+ } }, inputs: { beforeSave: [1, "beforeSave"], position: [1, "position"] }, outputs: { save: "save", cancel: "cancel", modeChange: "modeChange" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 3, vars: 4, consts: [[3, "class", 4, "ngIf"], [4, "ngIf"], [3, "ngTemplateOutlet"], ["aui-button", "text", 3, "click", "square"], ["icon", "pencil"], ["aui-button", "text", 3, "click", "square", "disabled"], [3, "icon"], ["icon", "xmark"]], template: function EditableComponent_Template(rf, ctx) { if (rf & 1) {
97
+ i0.ɵɵelementStart(0, "div");
98
+ i0.ɵɵtemplate(1, EditableComponent_div_1_Template, 4, 4, "div", 0)(2, EditableComponent_ng_container_2_Template, 7, 7, "ng-container", 1);
99
+ i0.ɵɵelementEnd();
100
+ } if (rf & 2) {
101
+ i0.ɵɵclassMap(ctx.hostClass());
102
+ i0.ɵɵadvance();
103
+ i0.ɵɵproperty("ngIf", ctx.mode() === ctx.EditableMode.View);
104
+ i0.ɵɵadvance();
105
+ i0.ɵɵproperty("ngIf", ctx.mode() === ctx.EditableMode.Edit);
106
+ } }, dependencies: [NgIf,
107
+ NgTemplateOutlet,
108
+ IconComponent,
109
+ ButtonModule, i1.ButtonComponent], styles: [".acl-editable[_ngcontent-%COMP%] .aui-button--text[_ngcontent-%COMP%]{color:rgb(var(--aui-color-main-text))}.acl-editable[_ngcontent-%COMP%] .aui-button--text[_ngcontent-%COMP%]:first-of-type{margin-left:8px}.acl-editable[_ngcontent-%COMP%] .aui-button--text[_ngcontent-%COMP%]:hover{color:rgb(var(--aui-color-primary))}.acl-editable[_ngcontent-%COMP%] .aui-button--text[disabled][_ngcontent-%COMP%]{color:rgb(var(--aui-color-main-text))!important}.acl-editable--center[_ngcontent-%COMP%] .acl-editable__view-container[_ngcontent-%COMP%], .acl-editable--center[_ngcontent-%COMP%] .acl-editable__editor-container[_ngcontent-%COMP%]{display:flex;align-items:center}.acl-editable--top[_ngcontent-%COMP%] .acl-editable__view-container[_ngcontent-%COMP%], .acl-editable--top[_ngcontent-%COMP%] .acl-editable__editor-container[_ngcontent-%COMP%]{display:flex;align-items:flex-start}.acl-editable--bottom[_ngcontent-%COMP%] .acl-editable__view-container[_ngcontent-%COMP%], .acl-editable--bottom[_ngcontent-%COMP%] .acl-editable__editor-container[_ngcontent-%COMP%]{display:flex;align-items:flex-end}"], changeDetection: 0 }); }
110
+ }
111
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditableComponent, [{
112
+ type: Component,
113
+ args: [{ selector: 'acl-editable', standalone: true, imports: [
114
+ NgIf,
115
+ NgFor,
116
+ AsyncPipe,
117
+ NgTemplateOutlet,
118
+ IconComponent,
119
+ ButtonModule,
120
+ DisabledContainerComponent,
121
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"hostClass()\">\n <div\n [class]=\"bem.element('viewer-container')\"\n *ngIf=\"mode() === EditableMode.View\"\n >\n <ng-container [ngTemplateOutlet]=\"viewer\"> </ng-container>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n (click)=\"mode.set(EditableMode.Edit)\"\n >\n <aui-icon icon=\"pencil\"></aui-icon>\n </button>\n </div>\n <ng-container *ngIf=\"mode() === EditableMode.Edit\">\n <div [class]=\"bem.element('editor-container')\">\n <ng-container [ngTemplateOutlet]=\"editor\"> </ng-container>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [disabled]=\"loading\"\n (click)=\"saveEdit()\"\n >\n <aui-icon [icon]=\"loading ? 'spinner' : 'check'\"></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n (click)=\"cancelEdit()\"\n >\n <aui-icon icon=\"xmark\"></aui-icon>\n </button>\n </div>\n </ng-container>\n</div>\n", styles: [".acl-editable .aui-button--text{color:rgb(var(--aui-color-main-text))}.acl-editable .aui-button--text:first-of-type{margin-left:8px}.acl-editable .aui-button--text:hover{color:rgb(var(--aui-color-primary))}.acl-editable .aui-button--text[disabled]{color:rgb(var(--aui-color-main-text))!important}.acl-editable--center .acl-editable__view-container,.acl-editable--center .acl-editable__editor-container{display:flex;align-items:center}.acl-editable--top .acl-editable__view-container,.acl-editable--top .acl-editable__editor-container{display:flex;align-items:flex-start}.acl-editable--bottom .acl-editable__view-container,.acl-editable--bottom .acl-editable__editor-container{display:flex;align-items:flex-end}\n"] }]
122
+ }], () => [], { save: [{
123
+ type: Output
124
+ }], cancel: [{
125
+ type: Output
126
+ }], modeChange: [{
127
+ type: Output
128
+ }], viewer: [{
129
+ type: ContentChild,
130
+ args: [EditableViewerDirective, { read: TemplateRef }]
131
+ }], editor: [{
132
+ type: ContentChild,
133
+ args: [EditableEditorDirective, { read: TemplateRef }]
134
+ }] }); })();
135
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EditableComponent, { className: "EditableComponent" }); })();
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2VkaXRhYmxlL2VkaXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9lZGl0YWJsZS9lZGl0YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUNSLFlBQVksRUFFWixhQUFhLEdBQ2QsTUFBTSxZQUFZLENBQUM7QUFDcEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0UsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sV0FBVyxFQUNYLFFBQVEsRUFDUixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFN0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFOUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qix1QkFBdUIsR0FDeEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQWtCLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztJQzFCN0QsMkJBR0M7SUFDQywyQkFBMEQ7SUFDMUQsaUNBSUM7SUFEQyw2S0FBUyx5Q0FBMkIsS0FBQztJQUVyQyw4QkFBbUM7SUFFdkMsQUFERSxpQkFBUyxFQUNMOzs7SUFYSixxREFBeUM7SUFHM0IsY0FBMkI7SUFBM0IsZ0RBQTJCO0lBR3ZDLGNBQWU7SUFBZiw2QkFBZTs7OztJQU1uQiw2QkFBbUQ7SUFDakQsMkJBQStDO0lBQzdDLDJC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b0JBQ0osS0FBSztvQkFDTCxTQUFTO29CQUNULGdCQUFnQjtvQkFDaEIsYUFBYTtvQkFDYixZQUFZO29CQUNaLDBCQUEwQjtpQkFDM0IsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU07b0JBT3JDLElBQUk7a0JBQWIsTUFBTTtZQUNHLE1BQU07a0JBQWYsTUFBTTtZQUNHLFVBQVU7a0JBQW5CLE1BQU07WUFJUCxNQUFNO2tCQURMLFlBQVk7bUJBQUMsdUJBQXVCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO1lBSTVELE1BQU07a0JBREwsWUFBWTttQkFBQyx1QkFBdUIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7O2tGQWJqRCxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBidWlsZEJlbSxcbiAgQnV0dG9uTW9kdWxlLFxuICBDdXN0b21CZWZvcmVBY3Rpb24sXG4gIEljb25Db21wb25lbnQsXG59IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0ZvciwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgaW5wdXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaW5hbGl6ZSwgZmlyc3QsIGZyb20gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRGlzYWJsZWRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9kaXNhYmxlZC1jb250YWluZXIvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7XG4gIEVkaXRhYmxlRWRpdG9yRGlyZWN0aXZlLFxuICBFZGl0YWJsZVZpZXdlckRpcmVjdGl2ZSxcbn0gZnJvbSAnLi9lZGl0YWJsZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnV0dG9uUG9zaXRpb24sIEVkaXRhYmxlTW9kZSB9IGZyb20gJy4vZWRpdGFibGUudHlwZSc7XG5cbmNvbnN0IGJlbSA9IGJ1aWxkQmVtKCdhY2wtZWRpdGFibGUnKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLWVkaXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICdlZGl0YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydlZGl0YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBOZ0ZvcixcbiAgICBBc3luY1BpcGUsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBJY29uQ29tcG9uZW50LFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBEaXNhYmxlZENvbnRhaW5lckNvbXBvbmVudCxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRhYmxlQ29tcG9uZW50IHtcbiAgYmVmb3JlU2F2ZSA9IGlucHV0PEN1c3RvbUJlZm9yZUFjdGlvbjx1bmtub3duPj4oKTtcblxuICBwb3NpdGlvbiA9IGlucHV0PEJ1dHRvblBvc2l0aW9uPigndG9wJyk7XG5cbiAgQE91dHB1dCgpIHNhdmU6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGNhbmNlbDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgbW9kZUNoYW5nZTogRXZlbnRFbWl0dGVyPEVkaXRhYmxlTW9kZT4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8RWRpdGFibGVNb2RlPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoRWRpdGFibGVWaWV3ZXJEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgdmlld2VyOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBAQ29udGVudENoaWxkKEVkaXRhYmxlRWRpdG9yRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIGVkaXRvcjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgRWRpdGFibGVNb2RlID0gRWRpdGFibGVNb2RlO1xuICBiZW0gPSBiZW07XG4gIGxvYWRpbmcgPSBmYWxzZTtcblxuICBtb2RlID0gc2lnbmFsKEVkaXRhYmxlTW9kZS5WaWV3KTtcblxuICBob3N0Q2xhc3MgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIGAke2JlbS5ibG9jaygpfSAke2JlbS5tb2RpZmllcih0aGlzLnBvc2l0aW9uKCkpfWA7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICB0aGlzLm1vZGVDaGFuZ2UuZW1pdCh0aGlzLm1vZGUoKSk7XG4gICAgfSk7XG4gIH1cblxuICBzYXZlRWRpdCgpIHtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIGZyb20odGhpcy5iZWZvcmVTYXZlKCk/LigpIHx8IFByb21pc2UucmVzb2x2ZSgpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmxvYWRpbmcgPSBmYWxzZSkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShpc0NvbnRpbnVlID0+IHtcbiAgICAgICAgaWYgKGlzQ29udGludWUgPT09IGZhbHNlKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubW9kZS5zZXQoRWRpdGFibGVNb2RlLlZpZXcpO1xuICAgICAgICB0aGlzLnNhdmUuZW1pdCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBjYW5jZWxFZGl0KCkge1xuICAgIHRoaXMubW9kZS5zZXQoRWRpdGFibGVNb2RlLlZpZXcpO1xuICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcbiAgfVxufVxuIiwiPGRpdiBbY2xhc3NdPVwiaG9zdENsYXNzKClcIj5cbiAgPGRpdlxuICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgndmlld2VyLWNvbnRhaW5lcicpXCJcbiAgICAqbmdJZj1cIm1vZGUoKSA9PT0gRWRpdGFibGVNb2RlLlZpZXdcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ2aWV3ZXJcIj4gPC9uZy1jb250YWluZXI+XG4gICAgPGJ1dHRvblxuICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICAgIChjbGljayk9XCJtb2RlLnNldChFZGl0YWJsZU1vZGUuRWRpdClcIlxuICAgID5cbiAgICAgIDxhdWktaWNvbiBpY29uPVwicGVuY2lsXCI+PC9hdWktaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlKCkgPT09IEVkaXRhYmxlTW9kZS5FZGl0XCI+XG4gICAgPGRpdiBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2VkaXRvci1jb250YWluZXInKVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJlZGl0b3JcIj4gPC9uZy1jb250YWluZXI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImxvYWRpbmdcIlxuICAgICAgICAoY2xpY2spPVwic2F2ZUVkaXQoKVwiXG4gICAgICA+XG4gICAgICAgIDxhdWktaWNvbiBbaWNvbl09XCJsb2FkaW5nID8gJ3NwaW5uZXInIDogJ2NoZWNrJ1wiPjwvYXVpLWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICAoY2xpY2spPVwiY2FuY2VsRWRpdCgpXCJcbiAgICAgID5cbiAgICAgICAgPGF1aS1pY29uIGljb249XCJ4bWFya1wiPjwvYXVpLWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,25 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class EditableViewerDirective {
4
+ static { this.ɵfac = function EditableViewerDirective_Factory(t) { return new (t || EditableViewerDirective)(); }; }
5
+ static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: EditableViewerDirective, selectors: [["", "aclEditableViewer", ""]], standalone: true }); }
6
+ }
7
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditableViewerDirective, [{
8
+ type: Directive,
9
+ args: [{
10
+ selector: '*[aclEditableViewer]',
11
+ standalone: true,
12
+ }]
13
+ }], null, null); })();
14
+ export class EditableEditorDirective {
15
+ static { this.ɵfac = function EditableEditorDirective_Factory(t) { return new (t || EditableEditorDirective)(); }; }
16
+ static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: EditableEditorDirective, selectors: [["", "aclEditableEditor", ""]], standalone: true }); }
17
+ }
18
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditableEditorDirective, [{
19
+ type: Directive,
20
+ args: [{
21
+ selector: '*[aclEditableEditor]',
22
+ standalone: true,
23
+ }]
24
+ }], null, null); })();
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGFibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2VkaXRhYmxlL2VkaXRhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0xQyxNQUFNLE9BQU8sdUJBQXVCO3dGQUF2Qix1QkFBdUI7b0VBQXZCLHVCQUF1Qjs7aUZBQXZCLHVCQUF1QjtjQUpuQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsVUFBVSxFQUFFLElBQUk7YUFDakI7O0FBT0QsTUFBTSxPQUFPLHVCQUF1Qjt3RkFBdkIsdUJBQXVCO29FQUF2Qix1QkFBdUI7O2lGQUF2Qix1QkFBdUI7Y0FKbkMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLFVBQVUsRUFBRSxJQUFJO2FBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJypbYWNsRWRpdGFibGVWaWV3ZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdGFibGVWaWV3ZXJEaXJlY3RpdmUge31cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnKlthY2xFZGl0YWJsZUVkaXRvcl0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBFZGl0YWJsZUVkaXRvckRpcmVjdGl2ZSB7fVxuIl19
@@ -0,0 +1,6 @@
1
+ export var EditableMode;
2
+ (function (EditableMode) {
3
+ EditableMode["View"] = "view";
4
+ EditableMode["Edit"] = "edit";
5
+ })(EditableMode || (EditableMode = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGFibGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9lZGl0YWJsZS9lZGl0YWJsZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFlBR1g7QUFIRCxXQUFZLFlBQVk7SUFDdEIsNkJBQWEsQ0FBQTtJQUNiLDZCQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsWUFBWSxLQUFaLFlBQVksUUFHdkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFZGl0YWJsZU1vZGUge1xuICBWaWV3ID0gJ3ZpZXcnLFxuICBFZGl0ID0gJ2VkaXQnLFxufVxuXG5leHBvcnQgdHlwZSBCdXR0b25Qb3NpdGlvbiA9ICd0b3AnIHwgJ2NlbnRlcicgfCAnYm90dG9tJztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './editable.component';
2
+ export * from './editable.directive';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9lZGl0YWJsZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZWRpdGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdGFibGUuZGlyZWN0aXZlJztcbiJdfQ==
@@ -1,8 +1,19 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
- import { Directive, Input } from '@angular/core';
2
+ import { booleanAttribute, Directive, HostListener, Input, } from '@angular/core';
3
3
  import { isBoolean } from 'lodash-es';
4
4
  import { ValueHook } from '../core/utils/public-api';
5
5
  import * as i0 from "@angular/core";
6
+ export var PreventHandler;
7
+ (function (PreventHandler) {
8
+ PreventHandler["Contextmenu"] = "contextmenu";
9
+ PreventHandler["Paste"] = "paste";
10
+ PreventHandler["Cut"] = "cut";
11
+ PreventHandler["Copy"] = "copy";
12
+ })(PreventHandler || (PreventHandler = {}));
13
+ const handleEvent = (event, enable) => enable && event.preventDefault();
14
+ /**
15
+ * 阻止点击事件
16
+ */
6
17
  export class PreventDirective {
7
18
  constructor() {
8
19
  this.prevent = true;
@@ -19,7 +30,6 @@ __decorate([
19
30
  args: [{
20
31
  // eslint-disable-next-line @angular-eslint/directive-selector
21
32
  selector: '[prevent]',
22
- // eslint-disable-next-line @angular-eslint/no-host-metadata-property
23
33
  host: {
24
34
  click: 'prevent && $event.preventDefault()',
25
35
  },
@@ -28,6 +38,9 @@ __decorate([
28
38
  }], null, { prevent: [{
29
39
  type: Input
30
40
  }] }); })();
41
+ /**
42
+ * 阻止冒泡事件
43
+ */
31
44
  export class StopDirective {
32
45
  constructor() {
33
46
  this.stop = true;
@@ -44,7 +57,6 @@ __decorate([
44
57
  args: [{
45
58
  // eslint-disable-next-line @angular-eslint/directive-selector
46
59
  selector: '[stop]',
47
- // eslint-disable-next-line @angular-eslint/no-host-metadata-property
48
60
  host: {
49
61
  click: 'stop && $event.stopPropagation()',
50
62
  },
@@ -53,4 +65,67 @@ __decorate([
53
65
  }], null, { stop: [{
54
66
  type: Input
55
67
  }] }); })();
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2VmZmVjdC1kaXJlY3RpdmUvZXZlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXRDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFXckQsTUFBTSxPQUFPLGdCQUFnQjtJQVQ3QjtRQVlFLFlBQU8sR0FBRyxJQUFJLENBQUM7S0FDaEI7aUZBSlksZ0JBQWdCO29FQUFoQixnQkFBZ0I7O0FBRzNCO0lBRkMsU0FBUyxDQUFDLFNBQVMsQ0FBQzs7aURBRU47aUZBSEosZ0JBQWdCO2NBVDVCLFNBQVM7ZUFBQztnQkFDVCw4REFBOEQ7Z0JBQzlELFFBQVEsRUFBRSxXQUFXO2dCQUNyQixxRUFBcUU7Z0JBQ3JFLElBQUksRUFBRTtvQkFDSixLQUFLLEVBQUUsb0NBQW9DO2lCQUM1QztnQkFDRCxVQUFVLEVBQUUsSUFBSTthQUNqQjtnQkFJQyxPQUFPO2tCQUROLEtBQUs7O0FBYVIsTUFBTSxPQUFPLGFBQWE7SUFUMUI7UUFZRSxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBQ2I7OEVBSlksYUFBYTtvRUFBYixhQUFhOztBQUd4QjtJQUZDLFNBQVMsQ0FBQyxTQUFTLENBQUM7OzJDQUVUO2lGQUhELGFBQWE7Y0FUekIsU0FBUztlQUFDO2dCQUNULDhEQUE4RDtnQkFDOUQsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLHFFQUFxRTtnQkFDckUsSUFBSSxFQUFFO29CQUNKLEtBQUssRUFBRSxrQ0FBa0M7aUJBQzFDO2dCQUNELFVBQVUsRUFBRSxJQUFJO2FBQ2pCO2dCQUlDLElBQUk7a0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzQm9vbGVhbiB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IFZhbHVlSG9vayB9IGZyb20gJy4uL2NvcmUvdXRpbHMvcHVibGljLWFwaSc7XG5cbkBEaXJlY3RpdmUoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICBzZWxlY3RvcjogJ1twcmV2ZW50XScsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxuICBob3N0OiB7XG4gICAgY2xpY2s6ICdwcmV2ZW50ICYmICRldmVudC5wcmV2ZW50RGVmYXVsdCgpJyxcbiAgfSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgUHJldmVudERpcmVjdGl2ZSB7XG4gIEBWYWx1ZUhvb2soaXNCb29sZWFuKVxuICBASW5wdXQoKVxuICBwcmV2ZW50ID0gdHJ1ZTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnW3N0b3BdJyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1ob3N0LW1ldGFkYXRhLXByb3BlcnR5XG4gIGhvc3Q6IHtcbiAgICBjbGljazogJ3N0b3AgJiYgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpJyxcbiAgfSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU3RvcERpcmVjdGl2ZSB7XG4gIEBWYWx1ZUhvb2soaXNCb29sZWFuKVxuICBASW5wdXQoKVxuICBzdG9wID0gdHJ1ZTtcbn1cbiJdfQ==
68
+ /**
69
+ * 阻止剪切板(拷贝、粘贴、剪切、右键菜单)等事件
70
+ *
71
+ * @example
72
+ *
73
+ * 阻止全部:
74
+ * ```
75
+ * <input aui-input aclPreventEvent>
76
+ * ```
77
+ * 自定义:
78
+ * ```
79
+ * <input aui-input [aclPreventEvent]="{copy: true, paste: true}">
80
+ * ```
81
+ */
82
+ export class PreventClipboardDirective {
83
+ constructor() {
84
+ this.preventClipboardEvent = true;
85
+ }
86
+ isPreventEvent(action) {
87
+ if (typeof this.preventClipboardEvent === 'object') {
88
+ return !!this.preventClipboardEvent[action];
89
+ }
90
+ return booleanAttribute(this.preventClipboardEvent);
91
+ }
92
+ onContextmenu(event) {
93
+ handleEvent(event, this.isPreventEvent(PreventHandler.Contextmenu));
94
+ }
95
+ onCut(event) {
96
+ handleEvent(event, this.isPreventEvent(PreventHandler.Cut));
97
+ }
98
+ onPaste(event) {
99
+ handleEvent(event, this.isPreventEvent(PreventHandler.Paste));
100
+ }
101
+ onCopy(event) {
102
+ handleEvent(event, this.isPreventEvent(PreventHandler.Copy));
103
+ }
104
+ static { this.ɵfac = function PreventClipboardDirective_Factory(t) { return new (t || PreventClipboardDirective)(); }; }
105
+ static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PreventClipboardDirective, selectors: [["input", "aclPreventClipboardEvent", ""]], hostBindings: function PreventClipboardDirective_HostBindings(rf, ctx) { if (rf & 1) {
106
+ i0.ɵɵlistener("contextmenu", function PreventClipboardDirective_contextmenu_HostBindingHandler($event) { return ctx.onContextmenu($event); })("cut", function PreventClipboardDirective_cut_HostBindingHandler($event) { return ctx.onCut($event); })("paste", function PreventClipboardDirective_paste_HostBindingHandler($event) { return ctx.onPaste($event); })("copy", function PreventClipboardDirective_copy_HostBindingHandler($event) { return ctx.onCopy($event); });
107
+ } }, inputs: { preventClipboardEvent: [0, "aclPreventClipboardEvent", "preventClipboardEvent"] }, standalone: true }); }
108
+ }
109
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PreventClipboardDirective, [{
110
+ type: Directive,
111
+ args: [{
112
+ selector: 'input[aclPreventClipboardEvent]',
113
+ standalone: true,
114
+ }]
115
+ }], null, { preventClipboardEvent: [{
116
+ type: Input,
117
+ args: ['aclPreventClipboardEvent']
118
+ }], onContextmenu: [{
119
+ type: HostListener,
120
+ args: ['contextmenu', ['$event']]
121
+ }], onCut: [{
122
+ type: HostListener,
123
+ args: ['cut', ['$event']]
124
+ }], onPaste: [{
125
+ type: HostListener,
126
+ args: ['paste', ['$event']]
127
+ }], onCopy: [{
128
+ type: HostListener,
129
+ args: ['copy', ['$event']]
130
+ }] }); })();
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2VmZmVjdC1kaXJlY3RpdmUvZXZlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUVyRCxNQUFNLENBQU4sSUFBWSxjQUtYO0FBTEQsV0FBWSxjQUFjO0lBQ3hCLDZDQUEyQixDQUFBO0lBQzNCLGlDQUFlLENBQUE7SUFDZiw2QkFBVyxDQUFBO0lBQ1gsK0JBQWEsQ0FBQTtBQUNmLENBQUMsRUFMVyxjQUFjLEtBQWQsY0FBYyxRQUt6QjtBQUVELE1BQU0sV0FBVyxHQUFHLENBQUMsS0FBWSxFQUFFLE1BQWUsRUFBRSxFQUFFLENBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7QUFFbkM7O0dBRUc7QUFTSCxNQUFNLE9BQU8sZ0JBQWdCO0lBUjdCO1FBV0UsWUFBTyxHQUFHLElBQUksQ0FBQztLQUNoQjtpRkFKWSxnQkFBZ0I7b0VBQWhCLGdCQUFnQjs7QUFHM0I7SUFGQyxTQUFTLENBQUMsU0FBUyxDQUFDOztpREFFTjtpRkFISixnQkFBZ0I7Y0FSNUIsU0FBUztlQUFDO2dCQUNULDhEQUE4RDtnQkFDOUQsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLElBQUksRUFBRTtvQkFDSixLQUFLLEVBQUUsb0NBQW9DO2lCQUM1QztnQkFDRCxVQUFVLEVBQUUsSUFBSTthQUNqQjtnQkFJQyxPQUFPO2tCQUROLEtBQUs7O0FBSVI7O0dBRUc7QUFTSCxNQUFNLE9BQU8sYUFBYTtJQVIxQjtRQVdFLFNBQUksR0FBRyxJQUFJLENBQUM7S0FDYjs4RUFKWSxhQUFhO29FQUFiLGFBQWE7O0FBR3hCO0lBRkMsU0FBUyxDQUFDLFNBQVMsQ0FBQzs7MkNBRVQ7aUZBSEQsYUFBYTtjQVJ6QixTQUFTO2VBQUM7Z0JBQ1QsOERBQThEO2dCQUM5RCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsSUFBSSxFQUFFO29CQUNKLEtBQUssRUFBRSxrQ0FBa0M7aUJBQzFDO2dCQUNELFVBQVUsRUFBRSxJQUFJO2FBQ2pCO2dCQUlDLElBQUk7a0JBREgsS0FBSzs7QUFJUjs7Ozs7Ozs7Ozs7OztHQWFHO0FBS0gsTUFBTSxPQUFPLHlCQUF5QjtJQUp0QztRQU1FLDBCQUFxQixHQUcwQixJQUFJLENBQUM7S0E2QnJEO0lBM0JTLGNBQWMsQ0FBQyxNQUFzQjtRQUMzQyxJQUFJLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ25ELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBRUQsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBR0QsYUFBYSxDQUFDLEtBQVk7UUFDeEIsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFHRCxLQUFLLENBQUMsS0FBWTtRQUNoQixXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUdELE9BQU8sQ0FBQyxLQUFZO1FBQ2xCLFdBQVcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBR0QsTUFBTSxDQUFDLEtBQVk7UUFDakIsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7MEZBakNVLHlCQUF5QjtvRUFBekIseUJBQXlCO1lBQXpCLGdIQUFBLHlCQUFxQixJQUFJLG1GQUF6QixpQkFBYSxJQUFZLHVGQUF6QixtQkFBZSxJQUFVLHFGQUF6QixrQkFBYyxJQUFXOzs7aUZBQXpCLHlCQUF5QjtjQUpyQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlDQUFpQztnQkFDM0MsVUFBVSxFQUFFLElBQUk7YUFDakI7Z0JBR0MscUJBQXFCO2tCQURwQixLQUFLO21CQUFDLDBCQUEwQjtZQWVqQyxhQUFhO2tCQURaLFlBQVk7bUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBTXZDLEtBQUs7a0JBREosWUFBWTttQkFBQyxLQUFLLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFNL0IsT0FBTztrQkFETixZQUFZO21CQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztZQU1qQyxNQUFNO2tCQURMLFlBQVk7bUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgRGlyZWN0aXZlLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzQm9vbGVhbiB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IFZhbHVlSG9vayB9IGZyb20gJy4uL2NvcmUvdXRpbHMvcHVibGljLWFwaSc7XG5cbmV4cG9ydCBlbnVtIFByZXZlbnRIYW5kbGVyIHtcbiAgQ29udGV4dG1lbnUgPSAnY29udGV4dG1lbnUnLFxuICBQYXN0ZSA9ICdwYXN0ZScsXG4gIEN1dCA9ICdjdXQnLFxuICBDb3B5ID0gJ2NvcHknLFxufVxuXG5jb25zdCBoYW5kbGVFdmVudCA9IChldmVudDogRXZlbnQsIGVuYWJsZTogYm9vbGVhbikgPT5cbiAgZW5hYmxlICYmIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbi8qKlxuICog6Zi75q2i54K55Ye75LqL5Lu2XG4gKi9cbkBEaXJlY3RpdmUoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICBzZWxlY3RvcjogJ1twcmV2ZW50XScsXG4gIGhvc3Q6IHtcbiAgICBjbGljazogJ3ByZXZlbnQgJiYgJGV2ZW50LnByZXZlbnREZWZhdWx0KCknLFxuICB9LFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBQcmV2ZW50RGlyZWN0aXZlIHtcbiAgQFZhbHVlSG9vayhpc0Jvb2xlYW4pXG4gIEBJbnB1dCgpXG4gIHByZXZlbnQgPSB0cnVlO1xufVxuXG4vKipcbiAqIOmYu+atouWGkuazoeS6i+S7tlxuICovXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbc3RvcF0nLFxuICBob3N0OiB7XG4gICAgY2xpY2s6ICdzdG9wICYmICRldmVudC5zdG9wUHJvcGFnYXRpb24oKScsXG4gIH0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFN0b3BEaXJlY3RpdmUge1xuICBAVmFsdWVIb29rKGlzQm9vbGVhbilcbiAgQElucHV0KClcbiAgc3RvcCA9IHRydWU7XG59XG5cbi8qKlxuICog6Zi75q2i5Ymq5YiH5p2/77yI5ou36LSd44CB57KY6LS044CB5Ymq5YiH44CB5Y+z6ZSu6I+c5Y2V77yJ562J5LqL5Lu2XG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiDpmLvmraLlhajpg6g6XG4gKiBgYGBcbiAqIDxpbnB1dCBhdWktaW5wdXQgYWNsUHJldmVudEV2ZW50PlxuICogYGBgXG4gKiDoh6rlrprkuYk6XG4gKiBgYGBcbiAqIDxpbnB1dCBhdWktaW5wdXQgW2FjbFByZXZlbnRFdmVudF09XCJ7Y29weTogdHJ1ZSwgcGFzdGU6IHRydWV9XCI+XG4gKiBgYGBcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnaW5wdXRbYWNsUHJldmVudENsaXBib2FyZEV2ZW50XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFByZXZlbnRDbGlwYm9hcmREaXJlY3RpdmUge1xuICBASW5wdXQoJ2FjbFByZXZlbnRDbGlwYm9hcmRFdmVudCcpXG4gIHByZXZlbnRDbGlwYm9hcmRFdmVudDpcbiAgICB8IGJvb2xlYW5cbiAgICB8ICcnXG4gICAgfCBQYXJ0aWFsPFJlY29yZDxQcmV2ZW50SGFuZGxlciwgYm9vbGVhbj4+ID0gdHJ1ZTtcblxuICBwcml2YXRlIGlzUHJldmVudEV2ZW50KGFjdGlvbjogUHJldmVudEhhbmRsZXIpOiBib29sZWFuIHtcbiAgICBpZiAodHlwZW9mIHRoaXMucHJldmVudENsaXBib2FyZEV2ZW50ID09PSAnb2JqZWN0Jykge1xuICAgICAgcmV0dXJuICEhdGhpcy5wcmV2ZW50Q2xpcGJvYXJkRXZlbnRbYWN0aW9uXTtcbiAgICB9XG5cbiAgICByZXR1cm4gYm9vbGVhbkF0dHJpYnV0ZSh0aGlzLnByZXZlbnRDbGlwYm9hcmRFdmVudCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjb250ZXh0bWVudScsIFsnJGV2ZW50J10pXG4gIG9uQ29udGV4dG1lbnUoZXZlbnQ6IEV2ZW50KSB7XG4gICAgaGFuZGxlRXZlbnQoZXZlbnQsIHRoaXMuaXNQcmV2ZW50RXZlbnQoUHJldmVudEhhbmRsZXIuQ29udGV4dG1lbnUpKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2N1dCcsIFsnJGV2ZW50J10pXG4gIG9uQ3V0KGV2ZW50OiBFdmVudCkge1xuICAgIGhhbmRsZUV2ZW50KGV2ZW50LCB0aGlzLmlzUHJldmVudEV2ZW50KFByZXZlbnRIYW5kbGVyLkN1dCkpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKVxuICBvblBhc3RlKGV2ZW50OiBFdmVudCkge1xuICAgIGhhbmRsZUV2ZW50KGV2ZW50LCB0aGlzLmlzUHJldmVudEV2ZW50KFByZXZlbnRIYW5kbGVyLlBhc3RlKSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjb3B5JywgWyckZXZlbnQnXSlcbiAgb25Db3B5KGV2ZW50OiBFdmVudCkge1xuICAgIGhhbmRsZUV2ZW50KGV2ZW50LCB0aGlzLmlzUHJldmVudEV2ZW50KFByZXZlbnRIYW5kbGVyLkNvcHkpKTtcbiAgfVxufVxuIl19