mis-crystal-design-system 18.0.14 → 18.0.16-test-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 (33) hide show
  1. package/esm2022/loader/loader.component.mjs +2 -2
  2. package/esm2022/radio-button/radio-button.component.mjs +102 -23
  3. package/esm2022/table/actions-cell/actions-cell.component.mjs +284 -0
  4. package/esm2022/table/public_api.mjs +2 -1
  5. package/esm2022/table/table.component.mjs +195 -109
  6. package/esm2022/table/table.module.mjs +17 -5
  7. package/esm2022/toast/public_api.mjs +3 -1
  8. package/esm2022/toast/toast.component.mjs +73 -16
  9. package/esm2022/toast/toast.constants.mjs +7 -0
  10. package/esm2022/toast/toast.data.service.mjs +1 -1
  11. package/esm2022/toast/toast.interface.mjs +2 -0
  12. package/esm2022/toast/toast.service.mjs +14 -7
  13. package/fesm2022/mis-crystal-design-system-loader.mjs +2 -2
  14. package/fesm2022/mis-crystal-design-system-loader.mjs.map +1 -1
  15. package/fesm2022/mis-crystal-design-system-radio-button.mjs +101 -22
  16. package/fesm2022/mis-crystal-design-system-radio-button.mjs.map +1 -1
  17. package/fesm2022/mis-crystal-design-system-table.mjs +845 -465
  18. package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -1
  19. package/fesm2022/mis-crystal-design-system-toast.mjs +93 -22
  20. package/fesm2022/mis-crystal-design-system-toast.mjs.map +1 -1
  21. package/package.json +7 -7
  22. package/radio-button/radio-button.component.d.ts +18 -17
  23. package/styles/mis-old-icon-styles.scss +498 -498
  24. package/table/actions-cell/actions-cell.component.d.ts +32 -0
  25. package/table/public_api.d.ts +1 -0
  26. package/table/table.component.d.ts +37 -10
  27. package/table/table.module.d.ts +5 -4
  28. package/toast/public_api.d.ts +2 -0
  29. package/toast/toast.component.d.ts +13 -1
  30. package/toast/toast.constants.d.ts +5 -0
  31. package/toast/toast.data.service.d.ts +3 -2
  32. package/toast/toast.interface.d.ts +6 -0
  33. package/toast/toast.service.d.ts +2 -1
@@ -13,11 +13,11 @@ export class LoaderComponent {
13
13
  i0.ɵɵelement(0, "div", 0);
14
14
  } if (rf & 2) {
15
15
  i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(1, _c0, ctx.mobileView));
16
- } }, dependencies: [i1.NgClass], styles: ["#spinner[_ngcontent-%COMP%]{-webkit-animation:_ngcontent-%COMP%_frames 1s infinite linear;animation:_ngcontent-%COMP%_frames 1s infinite linear;background:transparent;border:4px solid #e0e0e0;border-radius:100%;border-top-color:#6200ee;width:40px;height:40px;padding:0;position:absolute}@keyframes _ngcontent-%COMP%_frames{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.mobile[_ngcontent-%COMP%]{height:20px!important;width:20px!important;border:2px solid #e0e0e0!important;border-top-color:#6200ee!important}"] }); }
16
+ } }, dependencies: [i1.NgClass], styles: ["[_ngcontent-%COMP%]:root{--pmry-200: #99BAF7;--pmry-100: #CBDDFB;--pmry-500: #0937B2;--pmry-400: #3C68D0;--pmry-600: #062A99;--pmry-700: #041F80;--pmry-300: #638FE7;--pmry-800: #021567;--pmry-900: #010F55;--sec-d-purple: #40447F;--sec-maroon: #6B034E;--sec-mud-red: #B23600;--sec-orange: #ED711C;--sec-purple: #815FD5;--sec-teal: #10ADAE;--sec-yellow: #D4900C;--sec-green: #547F40;--sec-bright-green: #27D22E;--sec-dark-teal: #035F6B;--sec-chocolate: #7C2F33;--sec-rube-pink: #C13D6D;--sec-cerulean: #0087B2;--sem-error: #B00020;--sem-info: #0091FF;--sem-warning: #FF9D00;--sem-success: #38AF49;--grey-bg-1: #FAFAFA;--grey-bg: #F5F5F5;--grey-seperators: #E0E0E0;--grey-disabled: #C8CDD3;--grey-hover: #F5F7FC;--grey-pressed: #E6EBF7;--grey-row: #F5F7FC;--dec-light-yellow: #F4E7C3;--dec-light-purple: #DACFF9;--dec-light-green: #E4F5E9;--dec-light-green2: #F1FFF3;--dec-light-pink: #FAE1EA;--dec-: #F4CBC1;--dec-lt-orange: #FAEFED;--dec-light-blue: #CFECF9;--dec-row-selection: #F1FDF8;--dec-row-selection2: #F2FBFF;--dec-row-lines: #D3E1E9;--text-white: #FFFFFF;--text-disabled: #929DAB;--text-muted: #6A737D;--text-black: #181F33;--MR-solid-blue2:#C8D5F6;--MR-solid-purple:#C9C3FB;--MR-solid-orange:#EEAC9F;--MR-solid-green:#ACDADA;--MR-solid-brown:#E8C8AF;--MR-solid-yellow:#FFEFC7;--MR-solid-blue:#BBE6FF;--MR-solid-pink:#FFC6F2;--tr-hover:#F0F3FA;--tr-pressed:#DAE1F3}#spinner[_ngcontent-%COMP%]{-webkit-animation:_ngcontent-%COMP%_frames 1s infinite linear;animation:_ngcontent-%COMP%_frames 1s infinite linear;background:transparent;border:4px solid #e0e0e0;border-radius:100%;border-top-color:#0937b2;width:40px;height:40px;padding:0;position:absolute}@keyframes _ngcontent-%COMP%_frames{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.mobile[_ngcontent-%COMP%]{height:20px!important;width:20px!important;border:2px solid #e0e0e0!important;border-top-color:#0937b2!important}"] }); }
17
17
  }
18
18
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LoaderComponent, [{
19
19
  type: Component,
20
- args: [{ selector: "mis-loader", template: "<div\n id=\"spinner\"\n [ngClass]=\"{\n mobile: mobileView\n }\"\n></div>\n", styles: ["#spinner{-webkit-animation:frames 1s infinite linear;animation:frames 1s infinite linear;background:transparent;border:4px solid #e0e0e0;border-radius:100%;border-top-color:#6200ee;width:40px;height:40px;padding:0;position:absolute}@keyframes frames{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.mobile{height:20px!important;width:20px!important;border:2px solid #e0e0e0!important;border-top-color:#6200ee!important}\n"] }]
20
+ args: [{ selector: "mis-loader", template: "<div\n id=\"spinner\"\n [ngClass]=\"{\n mobile: mobileView\n }\"\n></div>\n", styles: [":root{--pmry-200: #99BAF7;--pmry-100: #CBDDFB;--pmry-500: #0937B2;--pmry-400: #3C68D0;--pmry-600: #062A99;--pmry-700: #041F80;--pmry-300: #638FE7;--pmry-800: #021567;--pmry-900: #010F55;--sec-d-purple: #40447F;--sec-maroon: #6B034E;--sec-mud-red: #B23600;--sec-orange: #ED711C;--sec-purple: #815FD5;--sec-teal: #10ADAE;--sec-yellow: #D4900C;--sec-green: #547F40;--sec-bright-green: #27D22E;--sec-dark-teal: #035F6B;--sec-chocolate: #7C2F33;--sec-rube-pink: #C13D6D;--sec-cerulean: #0087B2;--sem-error: #B00020;--sem-info: #0091FF;--sem-warning: #FF9D00;--sem-success: #38AF49;--grey-bg-1: #FAFAFA;--grey-bg: #F5F5F5;--grey-seperators: #E0E0E0;--grey-disabled: #C8CDD3;--grey-hover: #F5F7FC;--grey-pressed: #E6EBF7;--grey-row: #F5F7FC;--dec-light-yellow: #F4E7C3;--dec-light-purple: #DACFF9;--dec-light-green: #E4F5E9;--dec-light-green2: #F1FFF3;--dec-light-pink: #FAE1EA;--dec-: #F4CBC1;--dec-lt-orange: #FAEFED;--dec-light-blue: #CFECF9;--dec-row-selection: #F1FDF8;--dec-row-selection2: #F2FBFF;--dec-row-lines: #D3E1E9;--text-white: #FFFFFF;--text-disabled: #929DAB;--text-muted: #6A737D;--text-black: #181F33;--MR-solid-blue2:#C8D5F6;--MR-solid-purple:#C9C3FB;--MR-solid-orange:#EEAC9F;--MR-solid-green:#ACDADA;--MR-solid-brown:#E8C8AF;--MR-solid-yellow:#FFEFC7;--MR-solid-blue:#BBE6FF;--MR-solid-pink:#FFC6F2;--tr-hover:#F0F3FA;--tr-pressed:#DAE1F3}#spinner{-webkit-animation:frames 1s infinite linear;animation:frames 1s infinite linear;background:transparent;border:4px solid #e0e0e0;border-radius:100%;border-top-color:#0937b2;width:40px;height:40px;padding:0;position:absolute}@keyframes frames{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.mobile{height:20px!important;width:20px!important;border:2px solid #e0e0e0!important;border-top-color:#0937b2!important}\n"] }]
21
21
  }], () => [], { mobileView: [{
22
22
  type: Input
23
23
  }] }); })();
@@ -1,45 +1,124 @@
1
- import { Component, Input, Output, EventEmitter } from "@angular/core";
2
- import { UntypedFormControl } from "@angular/forms";
1
+ import { Component, Input, Output, EventEmitter, forwardRef } from "@angular/core";
2
+ import { AbstractControl, UntypedFormControl, NG_VALUE_ACCESSOR } from "@angular/forms";
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/forms";
5
5
  export class RadioButtonComponent {
6
+ set disabled(value) {
7
+ if (this._disabled !== value) {
8
+ this._disabled = value;
9
+ if (this._formControl && this._formControl.disabled !== value) {
10
+ if (value) {
11
+ this._formControl.disable({ emitEvent: false });
12
+ }
13
+ else {
14
+ this._formControl.enable({ emitEvent: false });
15
+ }
16
+ }
17
+ }
18
+ }
19
+ get disabled() {
20
+ return this._formControl ? this._formControl.disabled : this._disabled;
21
+ }
22
+ set formControl(control) {
23
+ if (control instanceof AbstractControl) {
24
+ this._formControl = control;
25
+ if (control.value !== null && control.value !== undefined) {
26
+ this._value = control.value;
27
+ }
28
+ if (this._disabled !== undefined && this._disabled !== control.disabled) {
29
+ if (this._disabled) {
30
+ control.disable({ emitEvent: false });
31
+ }
32
+ else {
33
+ control.enable({ emitEvent: false });
34
+ }
35
+ }
36
+ }
37
+ else {
38
+ this._formControl = new UntypedFormControl(control);
39
+ }
40
+ }
41
+ get formControl() {
42
+ return this._formControl;
43
+ }
6
44
  constructor() {
7
- /** When multiple radio input fields are used
8
- * an "id" can be given to keep track of them */
9
45
  this.id = "";
10
- /** Name of the attribute for which the radio
11
- * selection is provided */
12
46
  this.name = "";
13
- /** Value of the attribute which is to be emitted
14
- * when selected */
15
47
  this.value = "";
16
- /** Controls the state of the radio button */
17
- this.disabled = false;
18
- /** Can be used to attach the radio input field
19
- * to a reactive form by passing in a
20
- * “FormControl“ Object. It can also be
21
- * used to set the default attribute value */
22
- this.formControl = new UntypedFormControl(null);
23
- /** Emits "value" of the radio button on selection */
48
+ this._formControl = new UntypedFormControl(null);
24
49
  this.valueChange = new EventEmitter();
50
+ // ControlValueAccessor properties
51
+ this._value = null;
52
+ this._disabled = false;
53
+ this.onChange = (value) => { };
54
+ this.onTouched = () => { };
25
55
  }
26
56
  ngOnInit() { }
27
- onChange(event) {
28
- this.valueChange.emit(this.formControl.value);
57
+ // ControlValueAccessor implementation
58
+ writeValue(value) {
59
+ if (this._value !== value) {
60
+ this._value = value;
61
+ }
62
+ }
63
+ registerOnChange(fn) {
64
+ this.onChange = fn;
65
+ }
66
+ registerOnTouched(fn) {
67
+ this.onTouched = fn;
68
+ }
69
+ setDisabledState(isDisabled) {
70
+ if (this._disabled !== isDisabled) {
71
+ this._disabled = isDisabled;
72
+ }
73
+ }
74
+ // Legacy onChange method - maintains backward compatibility
75
+ onInputChange(event) {
76
+ const newValue = event.target.checked ? this.value : this._value;
77
+ if (this._value !== newValue) {
78
+ this._value = newValue;
79
+ this.onChange(newValue);
80
+ this.onTouched();
81
+ if (this._formControl && this._formControl.value !== newValue) {
82
+ this._formControl.setValue(newValue, { emitEvent: false });
83
+ }
84
+ this.valueChange.emit(newValue);
85
+ }
86
+ }
87
+ get currentValue() {
88
+ return this._formControl ? this._formControl.value : this._value;
89
+ }
90
+ markAsTouched() {
91
+ this.onTouched();
92
+ if (this._formControl) {
93
+ this._formControl.markAsTouched();
94
+ this._formControl.updateValueAndValidity();
95
+ }
29
96
  }
30
97
  static { this.ɵfac = function RadioButtonComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RadioButtonComponent)(); }; }
31
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RadioButtonComponent, selectors: [["mis-radio"]], inputs: { id: "id", name: "name", value: "value", disabled: "disabled", formControl: "formControl" }, outputs: { valueChange: "valueChange" }, decls: 1, vars: 5, consts: [["tabindex", "-1", "type", "radio", 3, "change", "keup.enter", "id", "name", "disabled", "value", "formControl"]], template: function RadioButtonComponent_Template(rf, ctx) { if (rf & 1) {
98
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RadioButtonComponent, selectors: [["mis-radio"]], inputs: { id: "id", name: "name", value: "value", disabled: "disabled", formControl: "formControl" }, outputs: { valueChange: "valueChange" }, features: [i0.ɵɵProvidersFeature([
99
+ {
100
+ provide: NG_VALUE_ACCESSOR,
101
+ useExisting: forwardRef(() => RadioButtonComponent),
102
+ multi: true
103
+ }
104
+ ])], decls: 1, vars: 5, consts: [["tabindex", "-1", "type", "radio", 3, "change", "keyup.enter", "blur", "id", "name", "value", "formControl", "checked"]], template: function RadioButtonComponent_Template(rf, ctx) { if (rf & 1) {
32
105
  i0.ɵɵelementStart(0, "input", 0);
33
- i0.ɵɵlistener("change", function RadioButtonComponent_Template_input_change_0_listener($event) { return ctx.onChange($event); })("keup.enter", function RadioButtonComponent_Template_input_keup_enter_0_listener($event) { return ctx.onChange($event); });
106
+ i0.ɵɵlistener("change", function RadioButtonComponent_Template_input_change_0_listener($event) { return ctx.onInputChange($event); })("keyup.enter", function RadioButtonComponent_Template_input_keyup_enter_0_listener($event) { return ctx.onInputChange($event); })("blur", function RadioButtonComponent_Template_input_blur_0_listener() { return ctx.markAsTouched(); });
34
107
  i0.ɵɵelementEnd();
35
108
  } if (rf & 2) {
36
109
  i0.ɵɵpropertyInterpolate("id", ctx.id);
37
- i0.ɵɵproperty("name", ctx.name)("disabled", ctx.disabled)("value", ctx.value)("formControl", ctx.formControl);
110
+ i0.ɵɵproperty("name", ctx.name)("value", ctx.value)("formControl", ctx.formControl)("checked", ctx.currentValue === ctx.value);
38
111
  } }, dependencies: [i1.DefaultValueAccessor, i1.RadioControlValueAccessor, i1.NgControlStatus, i1.FormControlDirective], styles: ["input[type=radio][_ngcontent-%COMP%]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;margin:0;padding:3px;background-clip:content-box;border:2px solid #6a737d;background-color:#fff;border-radius:50%;cursor:pointer}input[type=radio][_ngcontent-%COMP%]:checked{background-color:#0937b2;border:2px solid #0937b2}input[type=radio][_ngcontent-%COMP%]:hover{border:2px solid #929dab}input[type=radio][_ngcontent-%COMP%]:checked:hover{border:2px solid #0937b2}input[type=radio][_ngcontent-%COMP%]:disabled{border:2px solid #c8cdd3}input[type=radio][_ngcontent-%COMP%]:checked:disabled{border:2px solid #c8cdd3;background-color:#c8cdd3}"] }); }
39
112
  }
40
113
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RadioButtonComponent, [{
41
114
  type: Component,
42
- args: [{ selector: "mis-radio", template: "<input \n (change)=\"onChange($event)\" \n (keup.enter)=\"onChange($event)\"\n tabindex=\"-1\"\n id=\"{{ id }}\" type=\"radio\" \n [name]=\"name\" [disabled]=\"disabled\" \n [value]=\"value\"\n [formControl]=\"formControl\" \n/>\n", styles: ["input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;margin:0;padding:3px;background-clip:content-box;border:2px solid #6a737d;background-color:#fff;border-radius:50%;cursor:pointer}input[type=radio]:checked{background-color:#0937b2;border:2px solid #0937b2}input[type=radio]:hover{border:2px solid #929dab}input[type=radio]:checked:hover{border:2px solid #0937b2}input[type=radio]:disabled{border:2px solid #c8cdd3}input[type=radio]:checked:disabled{border:2px solid #c8cdd3;background-color:#c8cdd3}\n"] }]
115
+ args: [{ selector: "mis-radio", providers: [
116
+ {
117
+ provide: NG_VALUE_ACCESSOR,
118
+ useExisting: forwardRef(() => RadioButtonComponent),
119
+ multi: true
120
+ }
121
+ ], template: "<input \n (change)=\"onInputChange($event)\" \n (keyup.enter)=\"onInputChange($event)\"\n (blur)=\"markAsTouched()\"\n tabindex=\"-1\"\n id=\"{{ id }}\" type=\"radio\" \n [name]=\"name\"\n [value]=\"value\"\n [formControl]=\"formControl\" \n [checked]=\"currentValue === value\"\n/>", styles: ["input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;margin:0;padding:3px;background-clip:content-box;border:2px solid #6a737d;background-color:#fff;border-radius:50%;cursor:pointer}input[type=radio]:checked{background-color:#0937b2;border:2px solid #0937b2}input[type=radio]:hover{border:2px solid #929dab}input[type=radio]:checked:hover{border:2px solid #0937b2}input[type=radio]:disabled{border:2px solid #c8cdd3}input[type=radio]:checked:disabled{border:2px solid #c8cdd3;background-color:#c8cdd3}\n"] }]
43
122
  }], () => [], { id: [{
44
123
  type: Input
45
124
  }], name: [{
@@ -54,4 +133,4 @@ export class RadioButtonComponent {
54
133
  type: Output
55
134
  }] }); })();
56
135
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RadioButtonComponent, { className: "RadioButtonComponent" }); })();
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBbUIsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBT3JFLE1BQU0sT0FBTyxvQkFBb0I7SUFzQi9CO1FBckJBO3dEQUNnRDtRQUN2QyxPQUFFLEdBQW9CLEVBQUUsQ0FBQztRQUNsQzttQ0FDMkI7UUFDbEIsU0FBSSxHQUFvQixFQUFFLENBQUM7UUFDcEM7MkJBQ21CO1FBQ1YsVUFBSyxHQUFvQixFQUFFLENBQUM7UUFDckMsNkNBQTZDO1FBQ3BDLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFbkM7OztxREFHNkM7UUFDcEMsZ0JBQVcsR0FBb0IsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVyRSxxREFBcUQ7UUFDM0MsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBRWpDLENBQUM7SUFDaEIsUUFBUSxLQUFJLENBQUM7SUFDYixRQUFRLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztxSEExQlUsb0JBQW9CO29FQUFwQixvQkFBb0I7WUNSakMsZ0NBUUU7WUFORSxBQURBLHdHQUFVLG9CQUFnQixJQUFDLG1HQUNiLG9CQUFnQixJQUFDO1lBRm5DLGlCQVFFOztZQUpFLHNDQUFhO1lBR2IsQUFEQSxBQURjLEFBQWQsK0JBQWEsMEJBQXNCLG9CQUNwQixnQ0FDWTs7O2lGRENsQixvQkFBb0I7Y0FMaEMsU0FBUzsyQkFDRSxXQUFXO29CQU9aLEVBQUU7a0JBQVYsS0FBSztZQUdHLElBQUk7a0JBQVosS0FBSztZQUdHLEtBQUs7a0JBQWIsS0FBSztZQUVHLFFBQVE7a0JBQWhCLEtBQUs7WUFNRyxXQUFXO2tCQUFuQixLQUFLO1lBR0ksV0FBVztrQkFBcEIsTUFBTTs7a0ZBcEJJLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBVbnR5cGVkRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1pcy1yYWRpb1wiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5zY3NzXCJdXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqIFdoZW4gbXVsdGlwbGUgcmFkaW8gaW5wdXQgZmllbGRzIGFyZSB1c2VkXG4gICAqIGFuIFwiaWRcIiBjYW4gYmUgZ2l2ZW4gdG8ga2VlcCB0cmFjayBvZiB0aGVtICovXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmcgfCBudW1iZXIgPSBcIlwiO1xuICAvKiogTmFtZSBvZiB0aGUgYXR0cmlidXRlIGZvciB3aGljaCB0aGUgcmFkaW9cbiAgICogc2VsZWN0aW9uIGlzIHByb3ZpZGVkICovXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IG51bWJlciA9IFwiXCI7XG4gIC8qKiBWYWx1ZSBvZiB0aGUgYXR0cmlidXRlIHdoaWNoIGlzIHRvIGJlIGVtaXR0ZWRcbiAgICogd2hlbiBzZWxlY3RlZCAqL1xuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyID0gXCJcIjtcbiAgLyoqIENvbnRyb2xzIHRoZSBzdGF0ZSBvZiB0aGUgcmFkaW8gYnV0dG9uICovXG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIENhbiBiZSB1c2VkIHRvIGF0dGFjaCB0aGUgcmFkaW8gaW5wdXQgZmllbGRcbiAgICogdG8gYSByZWFjdGl2ZSBmb3JtIGJ5IHBhc3NpbmcgaW4gYVxuICAgKiDigJxGb3JtQ29udHJvbOKAnCBPYmplY3QuIEl0IGNhbiBhbHNvIGJlXG4gICAqIHVzZWQgdG8gc2V0IHRoZSBkZWZhdWx0IGF0dHJpYnV0ZSB2YWx1ZSAqL1xuICBASW5wdXQoKSBmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsKTtcblxuICAvKiogRW1pdHMgXCJ2YWx1ZVwiIG9mIHRoZSByYWRpbyBidXR0b24gb24gc2VsZWN0aW9uICovXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cbiAgbmdPbkluaXQoKSB7fVxuICBvbkNoYW5nZShldmVudCkge1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLmZvcm1Db250cm9sLnZhbHVlKTtcbiAgfVxufVxuIiwiPGlucHV0IFxuICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiIFxuICAgIChrZXVwLmVudGVyKT1cIm9uQ2hhbmdlKCRldmVudClcIlxuICAgIHRhYmluZGV4PVwiLTFcIlxuICAgIGlkPVwie3sgaWQgfX1cIiB0eXBlPVwicmFkaW9cIiBcbiAgICBbbmFtZV09XCJuYW1lXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgXG4gICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIiBcbi8+XG4iXX0=
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFjOUcsTUFBTSxPQUFPLG9CQUFvQjtJQUsvQixJQUFhLFFBQVEsQ0FBQyxLQUFjO1FBQ2xDLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQzlELElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1YsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDbEQsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQ2pELENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFD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QkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQzt3QkFDbkQsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7b0JBR1EsRUFBRTtrQkFBVixLQUFLO1lBQ0csSUFBSTtrQkFBWixLQUFLO1lBQ0csS0FBSztrQkFBYixLQUFLO1lBRU8sUUFBUTtrQkFBcEIsS0FBSztZQWdCTyxXQUFXO2tCQUF2QixLQUFLO1lBc0JJLFdBQVc7a0JBQXBCLE1BQU07O2tGQTNDSSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVW50eXBlZEZvcm1Db250cm9sLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1pcy1yYWRpb1wiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5zY3NzXCJdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFJhZGlvQnV0dG9uQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBJbnB1dCgpIGlkOiBzdHJpbmcgfCBudW1iZXIgPSBcIlwiO1xuICBASW5wdXQoKSBuYW1lOiBzdHJpbmcgfCBudW1iZXIgPSBcIlwiO1xuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyID0gXCJcIjtcbiAgXG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9kaXNhYmxlZCAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsdWU7XG4gICAgICBpZiAodGhpcy5fZm9ybUNvbnRyb2wgJiYgdGhpcy5fZm9ybUNvbnRyb2wuZGlzYWJsZWQgIT09IHZhbHVlKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgIHRoaXMuX2Zvcm1Db250cm9sLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuX2Zvcm1Db250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mb3JtQ29udHJvbCA/IHRoaXMuX2Zvcm1Db250cm9sLmRpc2FibGVkIDogdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBASW5wdXQoKSBzZXQgZm9ybUNvbnRyb2woY29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgbnVsbCkge1xuICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgQWJzdHJhY3RDb250cm9sKSB7XG4gICAgICB0aGlzLl9mb3JtQ29udHJvbCA9IGNvbnRyb2w7XG4gICAgICBpZiAoY29udHJvbC52YWx1ZSAhPT0gbnVsbCAmJiBjb250cm9sLnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSBjb250cm9sLnZhbHVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuX2Rpc2FibGVkICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fZGlzYWJsZWQgIT09IGNvbnRyb2wuZGlzYWJsZWQpIHtcbiAgICAgICAgaWYgKHRoaXMuX2Rpc2FibGVkKSB7XG4gICAgICAgICAgY29udHJvbC5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZm9ybUNvbnRyb2wgPSBuZXcgVW50eXBlZEZvcm1Db250cm9sKGNvbnRyb2wpO1xuICAgIH1cbiAgfVxuICBnZXQgZm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybUNvbnRyb2w7XG4gIH1cbiAgcHJpdmF0ZSBfZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCk7XG5cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLy8gQ29udHJvbFZhbHVlQWNjZXNzb3IgcHJvcGVydGllc1xuICBwcml2YXRlIF92YWx1ZTogYW55ID0gbnVsbDtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBvbkNoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7fTtcbiAgcHVibGljIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gIGNvbnN0cnVjdG9yKCkge31cbiAgXG4gIG5nT25Jbml0KCkge31cblxuICAvLyBDb250cm9sVmFsdWVBY2Nlc3NvciBpbXBsZW1lbnRhdGlvblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fdmFsdWUgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkICE9PSBpc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gTGVnYWN5IG9uQ2hhbmdlIG1ldGhvZCAtIG1haW50YWlucyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5XG4gIG9uSW5wdXRDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gZXZlbnQudGFyZ2V0LmNoZWNrZWQgPyB0aGlzLnZhbHVlIDogdGhpcy5fdmFsdWU7XG4gICAgXG4gICAgaWYgKHRoaXMuX3ZhbHVlICE9PSBuZXdWYWx1ZSkge1xuICAgICAgdGhpcy5fdmFsdWUgPSBuZXdWYWx1ZTtcbiAgICAgIFxuICAgICAgdGhpcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgXG4gICAgICBpZiAodGhpcy5fZm9ybUNvbnRyb2wgJiYgdGhpcy5fZm9ybUNvbnRyb2wudmFsdWUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2Zvcm1Db250cm9sLnNldFZhbHVlKG5ld1ZhbHVlLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChuZXdWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGN1cnJlbnRWYWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9mb3JtQ29udHJvbCA/IHRoaXMuX2Zvcm1Db250cm9sLnZhbHVlIDogdGhpcy5fdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgbWFya0FzVG91Y2hlZCgpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIGlmICh0aGlzLl9mb3JtQ29udHJvbCkge1xuICAgICAgdGhpcy5fZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgICAgdGhpcy5fZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgIH1cbiAgfVxufSIsIjxpbnB1dCBcbiAgICAoY2hhbmdlKT1cIm9uSW5wdXRDaGFuZ2UoJGV2ZW50KVwiIFxuICAgIChrZXl1cC5lbnRlcik9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxuICAgIChibHVyKT1cIm1hcmtBc1RvdWNoZWQoKVwiXG4gICAgdGFiaW5kZXg9XCItMVwiXG4gICAgaWQ9XCJ7eyBpZCB9fVwiIHR5cGU9XCJyYWRpb1wiIFxuICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCIgXG4gICAgW2NoZWNrZWRdPVwiY3VycmVudFZhbHVlID09PSB2YWx1ZVwiXG4vPiJdfQ==
@@ -0,0 +1,284 @@
1
+ import { Component, EventEmitter, Input, Output, HostListener } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "mis-crystal-design-system/checkbox";
5
+ const _c0 = a0 => ({ disabled: a0 });
6
+ function ActionsCellComponent_div_1_div_1_Template(rf, ctx) { if (rf & 1) {
7
+ const _r1 = i0.ɵɵgetCurrentView();
8
+ i0.ɵɵelementStart(0, "div", 7);
9
+ i0.ɵɵlistener("click", function ActionsCellComponent_div_1_div_1_Template_div_click_0_listener($event) { const item_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onActionClick(item_r2, $event)); });
10
+ i0.ɵɵelement(1, "img", 8);
11
+ i0.ɵɵelementEnd();
12
+ } if (rf & 2) {
13
+ const item_r2 = ctx.$implicit;
14
+ const ctx_r2 = i0.ɵɵnextContext(2);
15
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c0, ctx_r2.isDisabled(item_r2)));
16
+ i0.ɵɵadvance();
17
+ i0.ɵɵproperty("src", item_r2.icon, i0.ɵɵsanitizeUrl)("alt", item_r2.label);
18
+ } }
19
+ function ActionsCellComponent_div_1_Template(rf, ctx) { if (rf & 1) {
20
+ i0.ɵɵelementStart(0, "div", 5);
21
+ i0.ɵɵtemplate(1, ActionsCellComponent_div_1_div_1_Template, 2, 5, "div", 6);
22
+ i0.ɵɵelementEnd();
23
+ } if (rf & 2) {
24
+ const ctx_r2 = i0.ɵɵnextContext();
25
+ i0.ɵɵadvance();
26
+ i0.ɵɵproperty("ngForOf", ctx_r2.actionItems)("ngForTrackBy", ctx_r2.trackByAction);
27
+ } }
28
+ function ActionsCellComponent_div_2_div_6_div_1_ng_container_1_span_1_Template(rf, ctx) { if (rf & 1) {
29
+ i0.ɵɵelementStart(0, "span", 26);
30
+ i0.ɵɵelement(1, "img", 27);
31
+ i0.ɵɵelementEnd();
32
+ } if (rf & 2) {
33
+ const item_r6 = i0.ɵɵnextContext(2).$implicit;
34
+ i0.ɵɵadvance();
35
+ i0.ɵɵproperty("src", item_r6.icon, i0.ɵɵsanitizeUrl);
36
+ } }
37
+ function ActionsCellComponent_div_2_div_6_div_1_ng_container_1_div_7_div_1_span_1_Template(rf, ctx) { if (rf & 1) {
38
+ i0.ɵɵelementStart(0, "span", 26);
39
+ i0.ɵɵelement(1, "img", 27);
40
+ i0.ɵɵelementEnd();
41
+ } if (rf & 2) {
42
+ const child_r8 = i0.ɵɵnextContext().$implicit;
43
+ i0.ɵɵadvance();
44
+ i0.ɵɵproperty("src", child_r8.icon, i0.ɵɵsanitizeUrl);
45
+ } }
46
+ function ActionsCellComponent_div_2_div_6_div_1_ng_container_1_div_7_div_1_Template(rf, ctx) { if (rf & 1) {
47
+ const _r7 = i0.ɵɵgetCurrentView();
48
+ i0.ɵɵelementStart(0, "div", 18);
49
+ i0.ɵɵlistener("click", function ActionsCellComponent_div_2_div_6_div_1_ng_container_1_div_7_div_1_Template_div_click_0_listener($event) { const child_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r2 = i0.ɵɵnextContext(6); return i0.ɵɵresetView(ctx_r2.onDropdownItemClick(child_r8, $event)); });
50
+ i0.ɵɵtemplate(1, ActionsCellComponent_div_2_div_6_div_1_ng_container_1_div_7_div_1_span_1_Template, 2, 1, "span", 20);
51
+ i0.ɵɵelementStart(2, "span", 21);
52
+ i0.ɵɵtext(3);
53
+ i0.ɵɵelementEnd()();
54
+ } if (rf & 2) {
55
+ const child_r8 = ctx.$implicit;
56
+ const ctx_r2 = i0.ɵɵnextContext(6);
57
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c0, ctx_r2.isDisabled(child_r8)));
58
+ i0.ɵɵadvance();
59
+ i0.ɵɵproperty("ngIf", child_r8.icon);
60
+ i0.ɵɵadvance(2);
61
+ i0.ɵɵtextInterpolate(child_r8.label);
62
+ } }
63
+ function ActionsCellComponent_div_2_div_6_div_1_ng_container_1_div_7_Template(rf, ctx) { if (rf & 1) {
64
+ i0.ɵɵelementStart(0, "div", 28);
65
+ i0.ɵɵtemplate(1, ActionsCellComponent_div_2_div_6_div_1_ng_container_1_div_7_div_1_Template, 4, 5, "div", 17);
66
+ i0.ɵɵelementEnd();
67
+ } if (rf & 2) {
68
+ const item_r6 = i0.ɵɵnextContext(2).$implicit;
69
+ i0.ɵɵproperty("ngClass", item_r6.submenuAlign);
70
+ i0.ɵɵadvance();
71
+ i0.ɵɵproperty("ngForOf", item_r6.children);
72
+ } }
73
+ function ActionsCellComponent_div_2_div_6_div_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
74
+ i0.ɵɵelementContainerStart(0);
75
+ i0.ɵɵtemplate(1, ActionsCellComponent_div_2_div_6_div_1_ng_container_1_span_1_Template, 2, 1, "span", 20);
76
+ i0.ɵɵelementStart(2, "span", 21);
77
+ i0.ɵɵtext(3);
78
+ i0.ɵɵelementEnd();
79
+ i0.ɵɵelementStart(4, "span", 22);
80
+ i0.ɵɵnamespaceSVG();
81
+ i0.ɵɵelementStart(5, "svg", 23);
82
+ i0.ɵɵelement(6, "path", 24);
83
+ i0.ɵɵelementEnd()();
84
+ i0.ɵɵtemplate(7, ActionsCellComponent_div_2_div_6_div_1_ng_container_1_div_7_Template, 2, 2, "div", 25);
85
+ i0.ɵɵelementContainerEnd();
86
+ } if (rf & 2) {
87
+ const item_r6 = i0.ɵɵnextContext().$implicit;
88
+ i0.ɵɵadvance();
89
+ i0.ɵɵproperty("ngIf", item_r6.icon);
90
+ i0.ɵɵadvance(2);
91
+ i0.ɵɵtextInterpolate(item_r6.label);
92
+ i0.ɵɵadvance(4);
93
+ i0.ɵɵproperty("ngIf", item_r6.showSubmenu);
94
+ } }
95
+ function ActionsCellComponent_div_2_div_6_div_1_ng_template_2_span_0_Template(rf, ctx) { if (rf & 1) {
96
+ i0.ɵɵelementStart(0, "span", 26);
97
+ i0.ɵɵelement(1, "img", 27);
98
+ i0.ɵɵelementEnd();
99
+ } if (rf & 2) {
100
+ const item_r6 = i0.ɵɵnextContext(2).$implicit;
101
+ i0.ɵɵadvance();
102
+ i0.ɵɵproperty("src", item_r6.icon, i0.ɵɵsanitizeUrl);
103
+ } }
104
+ function ActionsCellComponent_div_2_div_6_div_1_ng_template_2_Template(rf, ctx) { if (rf & 1) {
105
+ i0.ɵɵtemplate(0, ActionsCellComponent_div_2_div_6_div_1_ng_template_2_span_0_Template, 2, 1, "span", 20);
106
+ i0.ɵɵelementStart(1, "span", 21);
107
+ i0.ɵɵtext(2);
108
+ i0.ɵɵelementEnd();
109
+ } if (rf & 2) {
110
+ const item_r6 = i0.ɵɵnextContext().$implicit;
111
+ i0.ɵɵproperty("ngIf", item_r6.icon);
112
+ i0.ɵɵadvance(2);
113
+ i0.ɵɵtextInterpolate(item_r6.label);
114
+ } }
115
+ function ActionsCellComponent_div_2_div_6_div_1_Template(rf, ctx) { if (rf & 1) {
116
+ const _r5 = i0.ɵɵgetCurrentView();
117
+ i0.ɵɵelementStart(0, "div", 18);
118
+ i0.ɵɵlistener("click", function ActionsCellComponent_div_2_div_6_div_1_Template_div_click_0_listener($event) { const item_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.onDropdownItemClick(item_r6, $event)); });
119
+ i0.ɵɵtemplate(1, ActionsCellComponent_div_2_div_6_div_1_ng_container_1_Template, 8, 3, "ng-container", 19)(2, ActionsCellComponent_div_2_div_6_div_1_ng_template_2_Template, 3, 2, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
120
+ i0.ɵɵelementEnd();
121
+ } if (rf & 2) {
122
+ const item_r6 = ctx.$implicit;
123
+ const noChildren_r9 = i0.ɵɵreference(3);
124
+ const ctx_r2 = i0.ɵɵnextContext(3);
125
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c0, ctx_r2.isDisabled(item_r6)));
126
+ i0.ɵɵadvance();
127
+ i0.ɵɵproperty("ngIf", item_r6.children == null ? null : item_r6.children.length)("ngIfElse", noChildren_r9);
128
+ } }
129
+ function ActionsCellComponent_div_2_div_6_Template(rf, ctx) { if (rf & 1) {
130
+ i0.ɵɵelementStart(0, "div", 16);
131
+ i0.ɵɵtemplate(1, ActionsCellComponent_div_2_div_6_div_1_Template, 4, 5, "div", 17);
132
+ i0.ɵɵelementEnd();
133
+ } if (rf & 2) {
134
+ const ctx_r2 = i0.ɵɵnextContext(2);
135
+ i0.ɵɵproperty("ngClass", ctx_r2.menuAlign);
136
+ i0.ɵɵadvance();
137
+ i0.ɵɵproperty("ngForOf", ctx_r2.actionItems);
138
+ } }
139
+ function ActionsCellComponent_div_2_Template(rf, ctx) { if (rf & 1) {
140
+ const _r4 = i0.ɵɵgetCurrentView();
141
+ i0.ɵɵelementStart(0, "div", 9)(1, "div", 10);
142
+ i0.ɵɵlistener("click", function ActionsCellComponent_div_2_Template_div_click_1_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.toggleDropdown($event)); });
143
+ i0.ɵɵnamespaceSVG();
144
+ i0.ɵɵelementStart(2, "svg", 11);
145
+ i0.ɵɵelement(3, "circle", 12)(4, "circle", 13)(5, "circle", 14);
146
+ i0.ɵɵelementEnd()();
147
+ i0.ɵɵtemplate(6, ActionsCellComponent_div_2_div_6_Template, 2, 2, "div", 15);
148
+ i0.ɵɵelementEnd();
149
+ } if (rf & 2) {
150
+ const ctx_r2 = i0.ɵɵnextContext();
151
+ i0.ɵɵadvance(6);
152
+ i0.ɵɵproperty("ngIf", ctx_r2.isDropdownOpen);
153
+ } }
154
+ function ActionsCellComponent_div_3_Template(rf, ctx) { if (rf & 1) {
155
+ const _r10 = i0.ɵɵgetCurrentView();
156
+ i0.ɵɵelementStart(0, "div", 29)(1, "mis-checkbox", 30);
157
+ i0.ɵɵlistener("valueChange", function ActionsCellComponent_div_3_Template_mis_checkbox_valueChange_1_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onCheckboxChange($event)); });
158
+ i0.ɵɵelementEnd()();
159
+ } if (rf & 2) {
160
+ const ctx_r2 = i0.ɵɵnextContext();
161
+ i0.ɵɵadvance();
162
+ i0.ɵɵproperty("checked", ctx_r2.isChecked);
163
+ } }
164
+ export class ActionsCellComponent {
165
+ constructor() {
166
+ this.isChecked = false;
167
+ this.actionItems = [];
168
+ this.actionType = "inline";
169
+ this.submenuAlign = "right";
170
+ this.menuAlign = "left";
171
+ this.actionClick = new EventEmitter();
172
+ this.isDropdownOpen = false;
173
+ this._style = {};
174
+ this.containerStyle = {};
175
+ }
176
+ set config(config) {
177
+ this.actionItems = config?.actionItems,
178
+ this.actionType = config.actionType,
179
+ this.submenuAlign = config.submenuAlign,
180
+ this.menuAlign = config.menuAlign;
181
+ this._style = config.style;
182
+ this.processStyle();
183
+ }
184
+ ngOnInit() { }
185
+ processStyle() {
186
+ // Remove width from style to avoid conflicts with table column width
187
+ const { width, ...restStyle } = this._style;
188
+ this.containerStyle = restStyle;
189
+ }
190
+ onActionClick(item, event) {
191
+ event.stopPropagation();
192
+ // Check permissions before executing action
193
+ if (this.isDisabled(item))
194
+ return;
195
+ // Execute action only if permitted
196
+ if (item.action) {
197
+ item.action(this.data);
198
+ }
199
+ this.actionClick.emit({ item, data: this.data });
200
+ }
201
+ trackByAction(index, item) {
202
+ return item.value;
203
+ }
204
+ isSvgFile(iconPath) {
205
+ if (!iconPath)
206
+ return false;
207
+ return iconPath.toLowerCase().includes(".svg") || iconPath.toLowerCase().includes("assets/icons/");
208
+ }
209
+ onDocumentClick() {
210
+ if (this.isDropdownOpen) {
211
+ this.isDropdownOpen = false;
212
+ }
213
+ }
214
+ toggleDropdown(event) {
215
+ event.stopPropagation();
216
+ this.isDropdownOpen = !this.isDropdownOpen;
217
+ // Close all submenus when opening/closing main menu
218
+ this.actionItems.forEach((item) => (item.showSubmenu = false));
219
+ }
220
+ onDropdownItemClick(item, event) {
221
+ event.stopPropagation();
222
+ if (this.isDisabled(item))
223
+ return;
224
+ if (item?.children?.length) {
225
+ // Toggle submenu
226
+ item.showSubmenu = !item.showSubmenu;
227
+ // Optionally close other submenus
228
+ this.actionItems.forEach((i) => {
229
+ if (i !== item)
230
+ i.showSubmenu = false;
231
+ });
232
+ }
233
+ else {
234
+ // Handle action
235
+ if (item.action)
236
+ item.action(this.data);
237
+ this.actionClick.emit({ item, data: this.data });
238
+ this.isDropdownOpen = false; // Only close if action was executed
239
+ }
240
+ }
241
+ onCheckboxChange(event) {
242
+ this.isChecked = event.value;
243
+ this.actionClick.emit({ isChecked: this.isChecked, data: this.data });
244
+ }
245
+ isDisabled(item) {
246
+ if (typeof item.disable === "function") {
247
+ return item.disable(this.data);
248
+ }
249
+ return false;
250
+ }
251
+ static { this.ɵfac = function ActionsCellComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ActionsCellComponent)(); }; }
252
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionsCellComponent, selectors: [["mis-actions-cell"]], hostBindings: function ActionsCellComponent_HostBindings(rf, ctx) { if (rf & 1) {
253
+ i0.ɵɵlistener("click", function ActionsCellComponent_click_HostBindingHandler() { return ctx.onDocumentClick(); }, false, i0.ɵɵresolveDocument);
254
+ } }, inputs: { data: "data", isChecked: "isChecked", config: "config" }, outputs: { actionClick: "actionClick" }, decls: 4, vars: 4, consts: [["noChildren", ""], [1, "actions-cell-container", 3, "ngStyle"], ["class", "inline-actions", 4, "ngIf"], ["class", "dropdown-actions", 4, "ngIf"], ["class", "checkbox-actions", 4, "ngIf"], [1, "inline-actions"], ["class", "action-item", 3, "ngClass", "click", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "action-item", 3, "click", "ngClass"], [1, "action-icon-svg", 3, "src", "alt"], [1, "dropdown-actions"], ["title", "More actions", 1, "dropdown-trigger", 3, "click"], ["width", "20", "height", "20", "viewBox", "0 0 20 20", "fill", "none"], ["cx", "10", "cy", "4", "r", "2", "fill", "#333"], ["cx", "10", "cy", "10", "r", "2", "fill", "#333"], ["cx", "10", "cy", "16", "r", "2", "fill", "#333"], ["class", "dropdown-menu", 3, "ngClass", 4, "ngIf"], [1, "dropdown-menu", 3, "ngClass"], ["class", "dropdown-menu-item", 3, "ngClass", "click", 4, "ngFor", "ngForOf"], [1, "dropdown-menu-item", 3, "click", "ngClass"], [4, "ngIf", "ngIfElse"], ["class", "dropdown-icon", 4, "ngIf"], [1, "dropdown-label"], [1, "submenu-arrow"], ["width", "20", "height", "20", "viewBox", "0 0 24 24", "fill", "none"], ["d", "M9 6L15 12L9 18", "stroke", "#0D1321", "stroke-width", "2", "stroke-linecap", "round", "stroke-linejoin", "round"], ["class", "dropdown-submenu", 3, "ngClass", 4, "ngIf"], [1, "dropdown-icon"], [3, "src"], [1, "dropdown-submenu", 3, "ngClass"], [1, "checkbox-actions"], [3, "valueChange", "checked"]], template: function ActionsCellComponent_Template(rf, ctx) { if (rf & 1) {
255
+ i0.ɵɵelementStart(0, "div", 1);
256
+ i0.ɵɵtemplate(1, ActionsCellComponent_div_1_Template, 2, 2, "div", 2)(2, ActionsCellComponent_div_2_Template, 7, 1, "div", 3)(3, ActionsCellComponent_div_3_Template, 2, 1, "div", 4);
257
+ i0.ɵɵelementEnd();
258
+ } if (rf & 2) {
259
+ i0.ɵɵproperty("ngStyle", ctx.containerStyle);
260
+ i0.ɵɵadvance();
261
+ i0.ɵɵproperty("ngIf", ctx.actionType === "inline");
262
+ i0.ɵɵadvance();
263
+ i0.ɵɵproperty("ngIf", ctx.actionType === "dropdown");
264
+ i0.ɵɵadvance();
265
+ i0.ɵɵproperty("ngIf", ctx.actionType === "checkbox");
266
+ } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i1.NgStyle, i2.CheckboxComponent], styles: [".actions-cell-container[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;box-sizing:border-box}.inline-actions[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:100%;flex-wrap:nowrap;padding:4px 0;flex-direction:row}.action-item[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:20px;border-radius:4px;cursor:pointer;transition:all .2s ease;background-color:transparent;border:none;outline:none;flex-shrink:0;min-height:20px}.action-item[_ngcontent-%COMP%]:hover:not(.disabled){background-color:#0000000a;transform:scale(1.05)}.action-item[_ngcontent-%COMP%]:active:not(.disabled){transform:scale(.95)}.action-item.disabled[_ngcontent-%COMP%]{opacity:.5;cursor:not-allowed}.action-item.disabled[_ngcontent-%COMP%]:hover{background-color:transparent;transform:none}.action-icon[_ngcontent-%COMP%]{font-size:16px;color:#666;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.action-icon-svg[_ngcontent-%COMP%]{width:18px;height:18px;object-fit:contain;filter:brightness(0) saturate(100%) invert(40%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(.6) contrast(1);flex-shrink:0}.action-icon-svg[_ngcontent-%COMP%]:hover{filter:brightness(0) saturate(100%) invert(0%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(0) contrast(1)}.dropdown-trigger[_ngcontent-%COMP%]{cursor:pointer}.dropdown-actions[_ngcontent-%COMP%]{position:relative}.dropdown-trigger[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;justify-content:center}.dropdown-menu[_ngcontent-%COMP%]{position:absolute;top:100%;width:232px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f;z-index:1000;padding:8px 0}.dropdown-menu.left[_ngcontent-%COMP%]{right:0!important;left:auto!important}.dropdown-menu.right[_ngcontent-%COMP%]{left:0!important;right:auto!important}.dropdown-menu-item.disabled[_ngcontent-%COMP%]{color:#aaa;cursor:not-allowed}.dropdown-menu-item[_ngcontent-%COMP%]:hover:not(.disabled), .dropdown-menu-item.has-submenu[_ngcontent-%COMP%]:hover{background:#f5f5f5}.dropdown-menu-item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:10px 18px;cursor:pointer;font-size:14px;position:relative}.dropdown-menu-item[_ngcontent-%COMP%] .dropdown-label[_ngcontent-%COMP%]{flex:1;margin-left:8px}.dropdown-menu-item[_ngcontent-%COMP%] .submenu-arrow[_ngcontent-%COMP%]{margin-left:auto;width:16px;height:16px}.submenu-container[_ngcontent-%COMP%]{position:absolute;top:0;left:100%;margin-left:4px;background:#fff;box-shadow:0 4px 8px #0000001a;border-radius:8px;z-index:1000;white-space:nowrap}.dropdown-submenu[_ngcontent-%COMP%]{position:absolute;top:0;min-width:132px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f;padding:8px 0;z-index:1001}.dropdown-submenu.right[_ngcontent-%COMP%]{left:100%;margin-left:4px}.dropdown-submenu.left[_ngcontent-%COMP%]{left:auto;right:100%;background-color:#fff;border:1px solid #ddd;z-index:9999;position:absolute;margin-right:4px}.submenu-arrow[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:auto;z-index:9999}.dropdown-icon[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}.dropdown-menu-item.disabled[_ngcontent-%COMP%]{color:#181f33;filter:grayscale(100%) opacity(.3);cursor:not-allowed}"] }); }
267
+ }
268
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionsCellComponent, [{
269
+ type: Component,
270
+ args: [{ selector: "mis-actions-cell", template: "<div class=\"actions-cell-container\" [ngStyle]=\"containerStyle\">\n <!-- Inline Actions -->\n <div *ngIf=\"actionType === 'inline'\" class=\"inline-actions\">\n <div\n *ngFor=\"let item of actionItems; trackBy: trackByAction\"\n class=\"action-item\"\n [ngClass]=\"{ disabled: isDisabled(item) }\"\n (click)=\"onActionClick(item, $event)\"\n >\n <img [src]=\"item.icon\" [alt]=\"item.label\" class=\"action-icon-svg\" />\n </div>\n </div>\n\n <!-- Dropdown Actions -->\n <div *ngIf=\"actionType === 'dropdown'\" class=\"dropdown-actions\">\n <div class=\"dropdown-trigger\" (click)=\"toggleDropdown($event)\" title=\"More actions\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <circle cx=\"10\" cy=\"4\" r=\"2\" fill=\"#333\" />\n <circle cx=\"10\" cy=\"10\" r=\"2\" fill=\"#333\" />\n <circle cx=\"10\" cy=\"16\" r=\"2\" fill=\"#333\" />\n </svg>\n </div>\n\n <div class=\"dropdown-menu\" *ngIf=\"isDropdownOpen\" [ngClass]=\"menuAlign\">\n <div\n class=\"dropdown-menu-item\"\n *ngFor=\"let item of actionItems\"\n (click)=\"onDropdownItemClick(item, $event)\"\n [ngClass]=\"{ disabled: isDisabled(item) }\"\n >\n <ng-container *ngIf=\"item.children?.length; else noChildren\">\n <span class=\"dropdown-icon\" *ngIf=\"item.icon\">\n <img [src]=\"item.icon\" />\n </span>\n <span class=\"dropdown-label\">{{ item.label }}</span>\n <span class=\"submenu-arrow\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\">\n <path d=\"M9 6L15 12L9 18\" stroke=\"#0D1321\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n </svg>\n </span>\n\n <!-- DYNAMIC SUBMENU -->\n <div class=\"dropdown-submenu\" [ngClass]=\"item.submenuAlign\" *ngIf=\"item.showSubmenu\">\n <div\n class=\"dropdown-menu-item\"\n *ngFor=\"let child of item.children\"\n [ngClass]=\"{ disabled: isDisabled(child) }\"\n (click)=\"onDropdownItemClick(child, $event)\"\n >\n <span class=\"dropdown-icon\" *ngIf=\"child.icon\">\n <img [src]=\"child.icon\" />\n </span>\n <span class=\"dropdown-label\">{{ child.label }}</span>\n </div>\n </div>\n </ng-container>\n\n <ng-template #noChildren>\n <span class=\"dropdown-icon\" *ngIf=\"item.icon\">\n <img [src]=\"item.icon\" />\n </span>\n <span class=\"dropdown-label\">{{ item.label }}</span>\n </ng-template>\n </div>\n </div>\n </div>\n\n <!-- Checkbox Actions -->\n <div *ngIf=\"actionType === 'checkbox'\" class=\"checkbox-actions\">\n <mis-checkbox [checked]=\"isChecked\" (valueChange)=\"onCheckboxChange($event)\"> </mis-checkbox>\n </div>\n</div>\n", styles: [".actions-cell-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;box-sizing:border-box}.inline-actions{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:100%;flex-wrap:nowrap;padding:4px 0;flex-direction:row}.action-item{display:flex;align-items:center;justify-content:center;height:20px;border-radius:4px;cursor:pointer;transition:all .2s ease;background-color:transparent;border:none;outline:none;flex-shrink:0;min-height:20px}.action-item:hover:not(.disabled){background-color:#0000000a;transform:scale(1.05)}.action-item:active:not(.disabled){transform:scale(.95)}.action-item.disabled{opacity:.5;cursor:not-allowed}.action-item.disabled:hover{background-color:transparent;transform:none}.action-icon{font-size:16px;color:#666;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.action-icon-svg{width:18px;height:18px;object-fit:contain;filter:brightness(0) saturate(100%) invert(40%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(.6) contrast(1);flex-shrink:0}.action-icon-svg:hover{filter:brightness(0) saturate(100%) invert(0%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(0) contrast(1)}.dropdown-trigger{cursor:pointer}.dropdown-actions{position:relative}.dropdown-trigger{cursor:pointer;display:flex;align-items:center;justify-content:center}.dropdown-menu{position:absolute;top:100%;width:232px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f;z-index:1000;padding:8px 0}.dropdown-menu.left{right:0!important;left:auto!important}.dropdown-menu.right{left:0!important;right:auto!important}.dropdown-menu-item.disabled{color:#aaa;cursor:not-allowed}.dropdown-menu-item:hover:not(.disabled),.dropdown-menu-item.has-submenu:hover{background:#f5f5f5}.dropdown-menu-item{display:flex;align-items:center;padding:10px 18px;cursor:pointer;font-size:14px;position:relative}.dropdown-menu-item .dropdown-label{flex:1;margin-left:8px}.dropdown-menu-item .submenu-arrow{margin-left:auto;width:16px;height:16px}.submenu-container{position:absolute;top:0;left:100%;margin-left:4px;background:#fff;box-shadow:0 4px 8px #0000001a;border-radius:8px;z-index:1000;white-space:nowrap}.dropdown-submenu{position:absolute;top:0;min-width:132px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f;padding:8px 0;z-index:1001}.dropdown-submenu.right{left:100%;margin-left:4px}.dropdown-submenu.left{left:auto;right:100%;background-color:#fff;border:1px solid #ddd;z-index:9999;position:absolute;margin-right:4px}.submenu-arrow{display:flex;align-items:center;margin-left:auto;z-index:9999}.dropdown-icon{display:flex;justify-content:center;align-items:center}.dropdown-menu-item.disabled{color:#181f33;filter:grayscale(100%) opacity(.3);cursor:not-allowed}\n"] }]
271
+ }], null, { data: [{
272
+ type: Input
273
+ }], isChecked: [{
274
+ type: Input
275
+ }], config: [{
276
+ type: Input
277
+ }], actionClick: [{
278
+ type: Output
279
+ }], onDocumentClick: [{
280
+ type: HostListener,
281
+ args: ["document:click"]
282
+ }] }); })();
283
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ActionsCellComponent, { className: "ActionsCellComponent" }); })();
284
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1jZWxsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3RhYmxlL2FjdGlvbnMtY2VsbC9hY3Rpb25zLWNlbGwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdGFibGUvYWN0aW9ucy1jZWxsL2FjdGlvbnMtY2VsbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztJQ0d6Riw4QkFLQztJQURDLG9OQUFTLHFDQUEyQixLQUFDO0lBRXJDLHlCQUFvRTtJQUN0RSxpQkFBTTs7OztJQUpKLGdGQUEwQztJQUdyQyxjQUFpQjtJQUFDLEFBQWxCLG9EQUFpQixzQkFBbUI7OztJQVA3Qyw4QkFBNEQ7SUFDMUQsMkVBS0M7SUFHSCxpQkFBTTs7O0lBUGUsY0FBZ0I7SUFBQSxBQUFoQiw0Q0FBZ0Isc0NBQXNCOzs7SUEyQm5ELGdDQUE4QztJQUM1QywwQkFBeUI7SUFDM0IsaUJBQU87OztJQURBLGNBQWlCO0lBQWpCLG9EQUFpQjs7O0lBaUJwQixnQ0FBK0M7SUFDN0MsMEJBQTBCO0lBQzVCLGlCQUFPOzs7SUFEQSxjQUFrQjtJQUFsQixxREFBa0I7Ozs7SUFQM0IsK0JBS0M7SUFEQyxzUEFBUyw0Q0FBa0MsS0FBQztJQUU1QyxxSEFBK0M7SUFHL0MsZ0NBQTZCO0lBQUEsWUFBaUI7SUFDaEQsQUFEZ0QsaUJBQU8sRUFDakQ7Ozs7SUFQSixpRkFBMkM7SUFHZCxjQUFnQjtJQUFoQixvQ0FBZ0I7SUFHaEIsZUFBaUI7SUFBakIsb0NBQWlCOzs7SUFWbEQsK0JBQXFGO0lBQ25GLDZHQUtDO0lBTUgsaUJBQU07OztJQVp3Qiw4Q0FBNkI7SUFH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QUErRDtZQW9FN0QsQUF0REEsQUFaQSxxRUFBNEQsd0RBWUksd0RBc0RBO1lBR2xFLGlCQUFNOztZQXZFOEIsNENBQTBCO1lBRXRELGNBQTZCO1lBQTdCLGtEQUE2QjtZQVk3QixjQUErQjtZQUEvQixvREFBK0I7WUFzRC9CLGNBQStCO1lBQS9CLG9EQUErQjs7O2lGRDVEMUIsb0JBQW9CO2NBTGhDLFNBQVM7MkJBQ0Usa0JBQWtCO2dCQUtuQixJQUFJO2tCQUFaLEtBQUs7WUFDRyxTQUFTO2tCQUFqQixLQUFLO1lBQ08sTUFBTTtrQkFBbEIsS0FBSztZQWNJLFdBQVc7a0JBQXBCLE1BQU07WUFzQ1AsZUFBZTtrQkFEZCxZQUFZO21CQUFDLGdCQUFnQjs7a0ZBdERuQixvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBIb3N0TGlzdGVuZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQWN0aW9uSXRlbSB9IGZyb20gXCIuLi90YWJsZS5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1pcy1hY3Rpb25zLWNlbGxcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9hY3Rpb25zLWNlbGwuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmw6IFwiLi9hY3Rpb25zLWNlbGwuY29tcG9uZW50LmNzc1wiXG59KVxuZXhwb3J0IGNsYXNzIEFjdGlvbnNDZWxsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGF0YTogYW55O1xuICBASW5wdXQoKSBpc0NoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2V0IGNvbmZpZyhjb25maWc6IGFueSl7XG4gICAgdGhpcy5hY3Rpb25JdGVtcyA9IGNvbmZpZz8uYWN0aW9uSXRlbXMsXG4gICAgdGhpcy5hY3Rpb25UeXBlID0gY29uZmlnLmFjdGlvblR5cGUsXG4gICAgdGhpcy5zdWJtZW51QWxpZ24gPSBjb25maWcuc3VibWVudUFsaWduLFxuICAgIHRoaXMubWVudUFsaWduID0gY29uZmlnLm1lbnVBbGlnblxuICAgIHRoaXMuX3N0eWxlID0gY29uZmlnLnN0eWxlO1xuICAgIHRoaXMucHJvY2Vzc1N0eWxlKCk7XG4gIH1cblxuICBhY3Rpb25JdGVtczogQWN0aW9uSXRlbVtdID0gW107XG4gIGFjdGlvblR5cGU6IFwiaW5saW5lXCIgfCBcImRyb3Bkb3duXCIgfCBcImNoZWNrYm94XCIgPSBcImlubGluZVwiO1xuICBzdWJtZW51QWxpZ246IFwibGVmdFwiIHwgXCJyaWdodFwiID0gXCJyaWdodFwiO1xuICBtZW51QWxpZ246IFwibGVmdFwiIHwgXCJyaWdodFwiID0gXCJsZWZ0XCI7XG5cbiAgQE91dHB1dCgpIGFjdGlvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx7IGl0ZW0/OiBBY3Rpb25JdGVtOyBkYXRhOiBhbnk7IGlzQ2hlY2tlZD86IGJvb2xlYW4gfT4oKTtcblxuICBpc0Ryb3Bkb3duT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9zdHlsZTogYW55ID0ge307XG4gIGNvbnRhaW5lclN0eWxlOiBhbnkgPSB7fTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzU3R5bGUoKTogdm9pZCB7XG4gICAgLy8gUmVtb3ZlIHdpZHRoIGZyb20gc3R5bGUgdG8gYXZvaWQgY29uZmxpY3RzIHdpdGggdGFibGUgY29sdW1uIHdpZHRoXG4gICAgY29uc3QgeyB3aWR0aCwgLi4ucmVzdFN0eWxlIH0gPSB0aGlzLl9zdHlsZTtcbiAgICB0aGlzLmNvbnRhaW5lclN0eWxlID0gcmVzdFN0eWxlO1xuICB9XG5cbiAgb25BY3Rpb25DbGljayhpdGVtOiBBY3Rpb25JdGVtLCBldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIC8vIENoZWNrIHBlcm1pc3Npb25zIGJlZm9yZSBleGVjdXRpbmcgYWN0aW9uXG4gICAgaWYgKHRoaXMuaXNEaXNhYmxlZChpdGVtKSkgcmV0dXJuO1xuXG4gICAgLy8gRXhlY3V0ZSBhY3Rpb24gb25seSBpZiBwZXJtaXR0ZWRcbiAgICBpZiAoaXRlbS5hY3Rpb24pIHtcbiAgICAgIGl0ZW0uYWN0aW9uKHRoaXMuZGF0YSk7XG4gICAgfVxuXG4gICAgdGhpcy5hY3Rpb25DbGljay5lbWl0KHsgaXRlbSwgZGF0YTogdGhpcy5kYXRhIH0pO1xuICB9XG5cbiAgdHJhY2tCeUFjdGlvbihpbmRleDogbnVtYmVyLCBpdGVtOiBBY3Rpb25JdGVtKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaXRlbS52YWx1ZTtcbiAgfVxuXG4gIGlzU3ZnRmlsZShpY29uUGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCFpY29uUGF0aCkgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiBpY29uUGF0aC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKFwiLnN2Z1wiKSB8fCBpY29uUGF0aC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKFwiYXNzZXRzL2ljb25zL1wiKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoXCJkb2N1bWVudDpjbGlja1wiKVxuICBvbkRvY3VtZW50Q2xpY2soKSB7XG4gICAgaWYgKHRoaXMuaXNEcm9wZG93bk9wZW4pIHtcbiAgICAgIHRoaXMuaXNEcm9wZG93bk9wZW4gPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVEcm9wZG93bihldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmlzRHJvcGRvd25PcGVuID0gIXRoaXMuaXNEcm9wZG93bk9wZW47XG4gICAgLy8gQ2xvc2UgYWxsIHN1Ym1lbnVzIHdoZW4gb3BlbmluZy9jbG9zaW5nIG1haW4gbWVudVxuICAgIHRoaXMuYWN0aW9uSXRlbXMuZm9yRWFjaCgoaXRlbTogYW55KSA9PiAoaXRlbS5zaG93U3VibWVudSA9IGZhbHNlKSk7XG4gIH1cblxuICBvbkRyb3Bkb3duSXRlbUNsaWNrKGl0ZW06IGFueSwgZXZlbnQ6IEV2ZW50KSB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICBpZiAodGhpcy5pc0Rpc2FibGVkKGl0ZW0pKSByZXR1cm47XG5cbiAgICBpZiAoaXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCkge1xuICAgICAgLy8gVG9nZ2xlIHN1Ym1lbnVcbiAgICAgIGl0ZW0uc2hvd1N1Ym1lbnUgPSAhaXRlbS5zaG93U3VibWVudTtcbiAgICAgIC8vIE9wdGlvbmFsbHkgY2xvc2Ugb3RoZXIgc3VibWVudXNcbiAgICAgIHRoaXMuYWN0aW9uSXRlbXMuZm9yRWFjaCgoaTogYW55KSA9PiB7XG4gICAgICAgIGlmIChpICE9PSBpdGVtKSBpLnNob3dTdWJtZW51ID0gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSGFuZGxlIGFjdGlvblxuICAgICAgaWYgKGl0ZW0uYWN0aW9uKSBpdGVtLmFjdGlvbih0aGlzLmRhdGEpO1xuICAgICAgdGhpcy5hY3Rpb25DbGljay5lbWl0KHsgaXRlbSwgZGF0YTogdGhpcy5kYXRhIH0pO1xuICAgICAgdGhpcy5pc0Ryb3Bkb3duT3BlbiA9IGZhbHNlOyAvLyBPbmx5IGNsb3NlIGlmIGFjdGlvbiB3YXMgZXhlY3V0ZWRcbiAgICB9XG4gIH1cblxuICBvbkNoZWNrYm94Q2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLmlzQ2hlY2tlZCA9IGV2ZW50LnZhbHVlO1xuICAgIHRoaXMuYWN0aW9uQ2xpY2suZW1pdCh7IGlzQ2hlY2tlZDogdGhpcy5pc0NoZWNrZWQsIGRhdGE6IHRoaXMuZGF0YSB9KTtcbiAgfVxuXG4gIGlzRGlzYWJsZWQoaXRlbTogQWN0aW9uSXRlbSk6IGJvb2xlYW4ge1xuICAgIGlmICh0eXBlb2YgaXRlbS5kaXNhYmxlID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIHJldHVybiBpdGVtLmRpc2FibGUodGhpcy5kYXRhKTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYWN0aW9ucy1jZWxsLWNvbnRhaW5lclwiIFtuZ1N0eWxlXT1cImNvbnRhaW5lclN0eWxlXCI+XG4gIDwhLS0gSW5saW5lIEFjdGlvbnMgLS0+XG4gIDxkaXYgKm5nSWY9XCJhY3Rpb25UeXBlID09PSAnaW5saW5lJ1wiIGNsYXNzPVwiaW5saW5lLWFjdGlvbnNcIj5cbiAgICA8ZGl2XG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBhY3Rpb25JdGVtczsgdHJhY2tCeTogdHJhY2tCeUFjdGlvblwiXG4gICAgICBjbGFzcz1cImFjdGlvbi1pdGVtXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSkgfVwiXG4gICAgICAoY2xpY2spPVwib25BY3Rpb25DbGljayhpdGVtLCAkZXZlbnQpXCJcbiAgICA+XG4gICAgICA8aW1nIFtzcmNdPVwiaXRlbS5pY29uXCIgW2FsdF09XCJpdGVtLmxhYmVsXCIgY2xhc3M9XCJhY3Rpb24taWNvbi1zdmdcIiAvPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIERyb3Bkb3duIEFjdGlvbnMgLS0+XG4gIDxkaXYgKm5nSWY9XCJhY3Rpb25UeXBlID09PSAnZHJvcGRvd24nXCIgY2xhc3M9XCJkcm9wZG93bi1hY3Rpb25zXCI+XG4gICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLXRyaWdnZXJcIiAoY2xpY2spPVwidG9nZ2xlRHJvcGRvd24oJGV2ZW50KVwiIHRpdGxlPVwiTW9yZSBhY3Rpb25zXCI+XG4gICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiMTBcIiBjeT1cIjRcIiByPVwiMlwiIGZpbGw9XCIjMzMzXCIgLz5cbiAgICAgICAgPGNpcmNsZSBjeD1cIjEwXCIgY3k9XCIxMFwiIHI9XCIyXCIgZmlsbD1cIiMzMzNcIiAvPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiMTBcIiBjeT1cIjE2XCIgcj1cIjJcIiBmaWxsPVwiIzMzM1wiIC8+XG4gICAgICA8L3N2Zz5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgKm5nSWY9XCJpc0Ryb3Bkb3duT3BlblwiIFtuZ0NsYXNzXT1cIm1lbnVBbGlnblwiPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImRyb3Bkb3duLW1lbnUtaXRlbVwiXG4gICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGFjdGlvbkl0ZW1zXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uRHJvcGRvd25JdGVtQ2xpY2soaXRlbSwgJGV2ZW50KVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSkgfVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLmNoaWxkcmVuPy5sZW5ndGg7IGVsc2Ugbm9DaGlsZHJlblwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHJvcGRvd24taWNvblwiICpuZ0lmPVwiaXRlbS5pY29uXCI+XG4gICAgICAgICAgICA8aW1nIFtzcmNdPVwiaXRlbS5pY29uXCIgLz5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcm9wZG93bi1sYWJlbFwiPnt7IGl0ZW0ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWJtZW51LWFycm93XCI+XG4gICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxuICAgICAgICAgICAgICA8cGF0aCBkPVwiTTkgNkwxNSAxMkw5IDE4XCIgc3Ryb2tlPVwiIzBEMTMyMVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgPCEtLSBEWU5BTUlDIFNVQk1FTlUgLS0+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLXN1Ym1lbnVcIiBbbmdDbGFzc109XCJpdGVtLnN1Ym1lbnVBbGlnblwiICpuZ0lmPVwiaXRlbS5zaG93U3VibWVudVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImRyb3Bkb3duLW1lbnUtaXRlbVwiXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjaGlsZCBvZiBpdGVtLmNoaWxkcmVuXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyBkaXNhYmxlZDogaXNEaXNhYmxlZChjaGlsZCkgfVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkRyb3Bkb3duSXRlbUNsaWNrKGNoaWxkLCAkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcm9wZG93bi1pY29uXCIgKm5nSWY9XCJjaGlsZC5pY29uXCI+XG4gICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cImNoaWxkLmljb25cIiAvPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHJvcGRvd24tbGFiZWxcIj57eyBjaGlsZC5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI25vQ2hpbGRyZW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcm9wZG93bi1pY29uXCIgKm5nSWY9XCJpdGVtLmljb25cIj5cbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtLmljb25cIiAvPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImRyb3Bkb3duLWxhYmVsXCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIENoZWNrYm94IEFjdGlvbnMgLS0+XG4gIDxkaXYgKm5nSWY9XCJhY3Rpb25UeXBlID09PSAnY2hlY2tib3gnXCIgY2xhc3M9XCJjaGVja2JveC1hY3Rpb25zXCI+XG4gICAgPG1pcy1jaGVja2JveCBbY2hlY2tlZF09XCJpc0NoZWNrZWRcIiAodmFsdWVDaGFuZ2UpPVwib25DaGVja2JveENoYW5nZSgkZXZlbnQpXCI+IDwvbWlzLWNoZWNrYm94PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -4,4 +4,5 @@ export * from './sort-icons.directive';
4
4
  export { SubTableComponent } from "./sub-table/sub-table.component";
5
5
  export { CustomTableCellDirective } from "./custom-table-cell.directive";
6
6
  export { TableFilterComponent } from "./filter/filter.component";
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3RhYmxlL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NvcnQtaWNvbnMuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFN1YlRhYmxlQ29tcG9uZW50IH0gZnJvbSBcIi4vc3ViLXRhYmxlL3N1Yi10YWJsZS5jb21wb25lbnRcIjtcbmV4cG9ydCB7IEN1c3RvbVRhYmxlQ2VsbERpcmVjdGl2ZSB9IGZyb20gXCIuL2N1c3RvbS10YWJsZS1jZWxsLmRpcmVjdGl2ZVwiO1xuZXhwb3J0IHsgVGFibGVDb25maWcsIFBhZ2luYXRpb25Db25maWcsIFJvd0NvbmZpZywgQ29sSGVhZGVyQ29uZmlnLCBDb2xDb25maWcgfSBmcm9tIFwiLi90YWJsZS5jb21wb25lbnRcIjtcbmV4cG9ydCB7IFN1YlRhYmxlQ29uZmlnLCBTdWJUYWJsZUNvbENvbmZpZywgU3ViVGFibGVDb2xIZWFkZXJDb25maWcsIFN1YlRhYmxlUm93Q29uZmlnIH0gZnJvbSBcIi4vc3ViLXRhYmxlL3N1Yi10YWJsZS5jb21wb25lbnRcIjtcbmV4cG9ydCB7IFRhYmxlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vZmlsdGVyL2ZpbHRlci5jb21wb25lbnRcIjtcbmV4cG9ydCB7IEZpbHRlciB9IGZyb20gXCIuL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50XCI7XG4iXX0=
7
+ export { ActionsCellComponent } from "./actions-cell/actions-cell.component";
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3RhYmxlL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NvcnQtaWNvbnMuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFN1YlRhYmxlQ29tcG9uZW50IH0gZnJvbSBcIi4vc3ViLXRhYmxlL3N1Yi10YWJsZS5jb21wb25lbnRcIjtcbmV4cG9ydCB7IEN1c3RvbVRhYmxlQ2VsbERpcmVjdGl2ZSB9IGZyb20gXCIuL2N1c3RvbS10YWJsZS1jZWxsLmRpcmVjdGl2ZVwiO1xuZXhwb3J0IHsgVGFibGVDb25maWcsIFBhZ2luYXRpb25Db25maWcsIFJvd0NvbmZpZywgQ29sSGVhZGVyQ29uZmlnLCBDb2xDb25maWcgfSBmcm9tIFwiLi90YWJsZS5jb21wb25lbnRcIjtcbmV4cG9ydCB7IFN1YlRhYmxlQ29uZmlnLCBTdWJUYWJsZUNvbENvbmZpZywgU3ViVGFibGVDb2xIZWFkZXJDb25maWcsIFN1YlRhYmxlUm93Q29uZmlnIH0gZnJvbSBcIi4vc3ViLXRhYmxlL3N1Yi10YWJsZS5jb21wb25lbnRcIjtcbmV4cG9ydCB7IFRhYmxlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vZmlsdGVyL2ZpbHRlci5jb21wb25lbnRcIjtcbmV4cG9ydCB7IEZpbHRlciB9IGZyb20gXCIuL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50XCI7XG5leHBvcnQgeyBBY3Rpb25zQ2VsbENvbXBvbmVudCB9IGZyb20gXCIuL2FjdGlvbnMtY2VsbC9hY3Rpb25zLWNlbGwuY29tcG9uZW50XCI7Il19