monkey-style-guide-v2 0.0.5 → 0.0.7

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 (164) hide show
  1. package/assets/scss/directives/_index.scss +7 -0
  2. package/assets/scss/directives/_styles.scss +100 -0
  3. package/assets/scss/input/_index.scss +7 -0
  4. package/assets/scss/input/_styles.scss +43 -0
  5. package/assets/scss/partials/_index.scss +7 -0
  6. package/assets/scss/partials/_style-reset.scss +189 -0
  7. package/assets/scss/partials/_variables.scss +178 -0
  8. package/assets/scss/table/_index.scss +7 -0
  9. package/assets/scss/table/_styles.scss +45 -0
  10. package/assets/scss/theme.scss +11 -0
  11. package/assets/scss/typography/_function.scss +23 -0
  12. package/assets/scss/typography/_index.scss +9 -0
  13. package/assets/scss/typography/_mixins.scss +111 -0
  14. package/assets/scss/typography/_styles.scss +186 -0
  15. package/esm2022/lib/components/index.mjs +13 -1
  16. package/esm2022/lib/components/monkey-accordion/index.mjs +2 -0
  17. package/esm2022/lib/components/monkey-accordion/monkey-accordion.component.mjs +102 -0
  18. package/esm2022/lib/components/monkey-alert/index.mjs +2 -0
  19. package/esm2022/lib/components/monkey-alert/monkey-alert.component.mjs +50 -0
  20. package/esm2022/lib/components/monkey-breadcrumb/index.mjs +2 -0
  21. package/esm2022/lib/components/monkey-breadcrumb/monkey-breadcrumb.component.mjs +56 -0
  22. package/esm2022/lib/components/monkey-button/monkey-button.component.mjs +27 -12
  23. package/esm2022/lib/components/monkey-checkbox/index.mjs +2 -0
  24. package/esm2022/lib/components/monkey-checkbox/monkey-checkbox.component.mjs +216 -0
  25. package/esm2022/lib/components/monkey-divider/index.mjs +2 -0
  26. package/esm2022/lib/components/monkey-divider/monkey-divider.component.mjs +44 -0
  27. package/esm2022/lib/components/monkey-form-field/form-field-control.mjs +15 -0
  28. package/esm2022/lib/components/monkey-form-field/form-field.mjs +250 -0
  29. package/esm2022/lib/components/monkey-form-field/index.mjs +5 -0
  30. package/esm2022/lib/components/monkey-form-field/module.mjs +21 -0
  31. package/esm2022/lib/components/monkey-form-field/utils.mjs +16 -0
  32. package/esm2022/lib/components/monkey-icon/monkey-icon.component.mjs +31 -15
  33. package/esm2022/lib/components/monkey-icon-button/monkey-icon-button.component.mjs +25 -9
  34. package/esm2022/lib/components/monkey-input/index.mjs +5 -0
  35. package/esm2022/lib/components/monkey-input/monkey-input-currency.directive.mjs +187 -0
  36. package/esm2022/lib/components/monkey-input/monkey-input.directive.mjs +166 -0
  37. package/esm2022/lib/components/monkey-input/monkey-input.module.mjs +24 -0
  38. package/esm2022/lib/components/monkey-input/validators.mjs +17 -0
  39. package/esm2022/lib/components/monkey-option/index.mjs +2 -0
  40. package/esm2022/lib/components/monkey-option/monkey-option.component.mjs +54 -0
  41. package/esm2022/lib/components/monkey-security-level/monkey-security-level.component.mjs +30 -14
  42. package/esm2022/lib/components/monkey-select/index.mjs +2 -0
  43. package/esm2022/lib/components/monkey-select/monkey-select.component.mjs +352 -0
  44. package/esm2022/lib/components/monkey-status/monkey-status.component.mjs +28 -12
  45. package/esm2022/lib/components/monkey-table/components/pagination-action/pagination-action.mjs +53 -0
  46. package/esm2022/lib/components/monkey-table/components/pagination-label/pagination-label.mjs +34 -0
  47. package/esm2022/lib/components/monkey-table/components/pagination-size/pagination-size.mjs +57 -0
  48. package/esm2022/lib/components/monkey-table/directives/column-checked.mjs +109 -0
  49. package/esm2022/lib/components/monkey-table/directives/column-expansible.mjs +134 -0
  50. package/esm2022/lib/components/monkey-table/directives/column-sortable.mjs +97 -0
  51. package/esm2022/lib/components/monkey-table/directives/column-stick.mjs +28 -0
  52. package/esm2022/lib/components/monkey-table/index.mjs +10 -0
  53. package/esm2022/lib/components/monkey-table/table.mjs +132 -0
  54. package/esm2022/lib/components/monkey-table/table.module.mjs +60 -0
  55. package/esm2022/lib/components/monkey-toast/index.mjs +2 -0
  56. package/esm2022/lib/components/monkey-toast/monkey-toast.component.mjs +74 -0
  57. package/esm2022/lib/components/monkey-toggle/monkey-toggle.component.mjs +28 -14
  58. package/esm2022/lib/components/monkey-toggle-line/index.mjs +3 -0
  59. package/esm2022/lib/components/monkey-toggle-line/monkey-toggle-line-button/index.mjs +2 -0
  60. package/esm2022/lib/components/monkey-toggle-line/monkey-toggle-line-button/monkey-toggle-line-button.component.mjs +24 -0
  61. package/esm2022/lib/components/monkey-toggle-line/monkey-toggle-line.component.mjs +85 -0
  62. package/esm2022/lib/components/monkey-tooltip/monkey-tooltip.directive.mjs +4 -4
  63. package/esm2022/lib/components/monkey-tooltip/tooltip/tooltip.component.mjs +20 -7
  64. package/esm2022/lib/directives/error.mjs +18 -0
  65. package/esm2022/lib/directives/helper.mjs +18 -0
  66. package/esm2022/lib/directives/index.mjs +8 -0
  67. package/esm2022/lib/directives/info.mjs +18 -0
  68. package/esm2022/lib/directives/label.mjs +18 -0
  69. package/esm2022/lib/directives/module.mjs +26 -0
  70. package/esm2022/lib/directives/prefix.mjs +18 -0
  71. package/esm2022/lib/directives/suffix.mjs +43 -0
  72. package/esm2022/lib/interfaces/alert.mjs +2 -0
  73. package/esm2022/lib/interfaces/breadcrumb.mjs +2 -0
  74. package/esm2022/lib/interfaces/button.mjs +2 -0
  75. package/esm2022/lib/interfaces/index.mjs +7 -0
  76. package/esm2022/lib/interfaces/sizes.mjs +2 -0
  77. package/esm2022/lib/interfaces/table.mjs +2 -0
  78. package/esm2022/lib/interfaces/toast.mjs +10 -0
  79. package/esm2022/lib/services/index.mjs +4 -0
  80. package/esm2022/lib/services/monkey-destroy.service.mjs +15 -0
  81. package/esm2022/lib/services/monkey-icons.service.mjs +45 -0
  82. package/esm2022/lib/services/monkey-toast.service.mjs +72 -0
  83. package/esm2022/public-api.mjs +6 -3
  84. package/esm2022/utils/id-generator.mjs +20 -0
  85. package/esm2022/utils/index.mjs +4 -0
  86. package/esm2022/utils/tests-utils.mjs +4 -0
  87. package/esm2022/utils/utils.mjs +10 -0
  88. package/fesm2022/monkey-style-guide-v2.mjs +2849 -129
  89. package/fesm2022/monkey-style-guide-v2.mjs.map +1 -1
  90. package/lib/components/index.d.ts +12 -0
  91. package/lib/components/monkey-accordion/index.d.ts +1 -0
  92. package/lib/components/monkey-accordion/monkey-accordion.component.d.ts +22 -0
  93. package/lib/components/monkey-alert/index.d.ts +1 -0
  94. package/lib/components/monkey-alert/monkey-alert.component.d.ts +23 -0
  95. package/lib/components/monkey-breadcrumb/index.d.ts +1 -0
  96. package/lib/components/monkey-breadcrumb/monkey-breadcrumb.component.d.ts +18 -0
  97. package/lib/components/monkey-button/monkey-button.component.d.ts +11 -4
  98. package/lib/components/monkey-checkbox/index.d.ts +1 -0
  99. package/lib/components/monkey-checkbox/monkey-checkbox.component.d.ts +50 -0
  100. package/lib/components/monkey-divider/index.d.ts +1 -0
  101. package/lib/components/monkey-divider/monkey-divider.component.d.ts +20 -0
  102. package/lib/components/monkey-form-field/form-field-control.d.ts +18 -0
  103. package/lib/components/monkey-form-field/form-field.d.ts +74 -0
  104. package/lib/components/monkey-form-field/index.d.ts +4 -0
  105. package/lib/components/monkey-form-field/module.d.ts +7 -0
  106. package/lib/components/monkey-form-field/utils.d.ts +6 -0
  107. package/lib/components/monkey-icon/monkey-icon.component.d.ts +6 -1
  108. package/lib/components/monkey-icon-button/monkey-icon-button.component.d.ts +6 -1
  109. package/lib/components/monkey-input/index.d.ts +4 -0
  110. package/lib/components/monkey-input/monkey-input-currency.directive.d.ts +57 -0
  111. package/lib/components/monkey-input/monkey-input.directive.d.ts +46 -0
  112. package/lib/components/monkey-input/monkey-input.module.d.ts +8 -0
  113. package/lib/components/monkey-input/validators.d.ts +1 -0
  114. package/lib/components/monkey-option/index.d.ts +1 -0
  115. package/lib/components/monkey-option/monkey-option.component.d.ts +22 -0
  116. package/lib/components/monkey-security-level/monkey-security-level.component.d.ts +7 -2
  117. package/lib/components/monkey-select/index.d.ts +1 -0
  118. package/lib/components/monkey-select/monkey-select.component.d.ts +74 -0
  119. package/lib/components/monkey-status/monkey-status.component.d.ts +8 -3
  120. package/lib/components/monkey-table/components/pagination-action/pagination-action.d.ts +17 -0
  121. package/lib/components/monkey-table/components/pagination-label/pagination-label.d.ts +10 -0
  122. package/lib/components/monkey-table/components/pagination-size/pagination-size.d.ts +15 -0
  123. package/lib/components/monkey-table/directives/column-checked.d.ts +32 -0
  124. package/lib/components/monkey-table/directives/column-expansible.d.ts +25 -0
  125. package/lib/components/monkey-table/directives/column-sortable.d.ts +24 -0
  126. package/lib/components/monkey-table/directives/column-stick.d.ts +6 -0
  127. package/lib/components/monkey-table/index.d.ts +9 -0
  128. package/lib/components/monkey-table/table.d.ts +32 -0
  129. package/lib/components/monkey-table/table.module.d.ts +15 -0
  130. package/lib/components/monkey-toast/index.d.ts +1 -0
  131. package/lib/components/monkey-toast/monkey-toast.component.d.ts +26 -0
  132. package/lib/components/monkey-toggle/monkey-toggle.component.d.ts +6 -1
  133. package/lib/components/monkey-toggle-line/index.d.ts +2 -0
  134. package/lib/components/monkey-toggle-line/monkey-toggle-line-button/index.d.ts +1 -0
  135. package/lib/components/monkey-toggle-line/monkey-toggle-line-button/monkey-toggle-line-button.component.d.ts +16 -0
  136. package/lib/components/monkey-toggle-line/monkey-toggle-line.component.d.ts +24 -0
  137. package/lib/components/monkey-tooltip/tooltip/tooltip.component.d.ts +5 -1
  138. package/lib/directives/error.d.ts +5 -0
  139. package/lib/directives/helper.d.ts +5 -0
  140. package/lib/directives/index.d.ts +7 -0
  141. package/lib/directives/info.d.ts +5 -0
  142. package/lib/directives/label.d.ts +5 -0
  143. package/lib/directives/module.d.ts +12 -0
  144. package/lib/directives/prefix.d.ts +5 -0
  145. package/lib/directives/suffix.d.ts +9 -0
  146. package/lib/interfaces/alert.d.ts +1 -0
  147. package/lib/interfaces/breadcrumb.d.ts +5 -0
  148. package/lib/interfaces/button.d.ts +1 -0
  149. package/lib/interfaces/index.d.ts +6 -0
  150. package/lib/interfaces/sizes.d.ts +1 -0
  151. package/lib/interfaces/table.d.ts +4 -0
  152. package/lib/interfaces/toast.d.ts +22 -0
  153. package/lib/services/index.d.ts +3 -0
  154. package/lib/services/monkey-destroy.service.d.ts +8 -0
  155. package/lib/services/monkey-icons.service.d.ts +14 -0
  156. package/lib/services/monkey-toast.service.d.ts +13 -0
  157. package/monkey-style-guide-v2-0.0.7.tgz +0 -0
  158. package/package.json +10 -3
  159. package/public-api.d.ts +5 -2
  160. package/utils/id-generator.d.ts +6 -0
  161. package/utils/index.d.ts +3 -0
  162. package/utils/tests-utils.d.ts +1 -0
  163. package/utils/utils.d.ts +1 -0
  164. package/monkey-style-guide-v2-0.0.5.tgz +0 -0
@@ -0,0 +1,57 @@
1
+ /** ************************
2
+ * Copyright Monkey Exchange. All Rights Reserved
3
+ * This style guide was developed by Monkey Exchange Team
4
+ * MIT Licence
5
+ ************************* */
6
+ import { CommonModule } from '@angular/common';
7
+ import { Component, EventEmitter, inject, Input, Output, ViewEncapsulation } from '@angular/core';
8
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
9
+ import { IdGenerator } from '../../../../../utils';
10
+ import { MonkeyFormFieldModule } from '../../../monkey-form-field/module';
11
+ import { MonkeyOptionComponent } from '../../../monkey-option/monkey-option.component';
12
+ import { MonkeySelectComponent } from '../../../monkey-select/monkey-select.component';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "@angular/forms";
15
+ import * as i2 from "../../../monkey-form-field/form-field";
16
+ export class MonkeyPaginationSizeComponent {
17
+ get id() {
18
+ return this._id;
19
+ }
20
+ set id(value) {
21
+ this._id = value || this._uid;
22
+ }
23
+ constructor() {
24
+ this.onChange = new EventEmitter();
25
+ this._uid = inject(IdGenerator).getId('monkey-pagination-size-');
26
+ this.sizes = [10, 20, 50, 100];
27
+ // eslint-disable-next-line no-self-assign
28
+ this.id = this.id;
29
+ }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyPaginationSizeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MonkeyPaginationSizeComponent, isStandalone: true, selector: "monkey-pagination-size", inputs: { size: "size", disabled: "disabled", id: "id" }, outputs: { onChange: "onChange" }, host: { attributes: { "data-testid": "monkey-pagination-size" }, properties: { "attr.id": "id", "id": "id" } }, exportAs: ["monkeyPaginationSize"], ngImport: i0, template: "<ng-content></ng-content>\n<monkey-form-field hideClear>\n <monkey-select placeholder=\"''\" [ngModel]=\"size\" (onChange)=\"onChange.next($event)\">\n @for (item of sizes; track item) {\n <monkey-option [value]=\"item\">{{ item }}</monkey-option>\n }\n </monkey-select>\n</monkey-form-field>\n", styles: ["monkey-pagination-size{display:flex;align-items:center;gap:8px}monkey-pagination-size .mecx-form-field-body{height:32px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: MonkeySelectComponent, selector: "monkey-select", inputs: ["tabIndex", "placeholder", "loading", "disabled", "required", "value"], outputs: ["onChange"] }, { kind: "component", type: MonkeyOptionComponent, selector: "monkey-option", inputs: ["value", "disabled"] }, { kind: "ngmodule", type: MonkeyFormFieldModule }, { kind: "component", type: i2.MonkeyFormFieldComponent, selector: "monkey-form-field", inputs: ["id", "hideClear"], exportAs: ["monkeyFormField"] }], encapsulation: i0.ViewEncapsulation.None }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyPaginationSizeComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ standalone: true, imports: [
36
+ CommonModule,
37
+ FormsModule,
38
+ ReactiveFormsModule,
39
+ MonkeySelectComponent,
40
+ MonkeyOptionComponent,
41
+ MonkeyFormFieldModule
42
+ ], encapsulation: ViewEncapsulation.None, selector: 'monkey-pagination-size', exportAs: 'monkeyPaginationSize', host: {
43
+ 'data-testid': 'monkey-pagination-size',
44
+ '[attr.id]': 'id',
45
+ '[id]': 'id'
46
+ }, template: "<ng-content></ng-content>\n<monkey-form-field hideClear>\n <monkey-select placeholder=\"''\" [ngModel]=\"size\" (onChange)=\"onChange.next($event)\">\n @for (item of sizes; track item) {\n <monkey-option [value]=\"item\">{{ item }}</monkey-option>\n }\n </monkey-select>\n</monkey-form-field>\n", styles: ["monkey-pagination-size{display:flex;align-items:center;gap:8px}monkey-pagination-size .mecx-form-field-body{height:32px}\n"] }]
47
+ }], ctorParameters: () => [], propDecorators: { size: [{
48
+ type: Input,
49
+ args: [{ required: true }]
50
+ }], disabled: [{
51
+ type: Input
52
+ }], onChange: [{
53
+ type: Output
54
+ }], id: [{
55
+ type: Input
56
+ }] } });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1zaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlLXYyL3NyYy9saWIvY29tcG9uZW50cy9tb25rZXktdGFibGUvY29tcG9uZW50cy9wYWdpbmF0aW9uLXNpemUvcGFnaW5hdGlvbi1zaXplLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlLXYyL3NyYy9saWIvY29tcG9uZW50cy9tb25rZXktdGFibGUvY29tcG9uZW50cy9wYWdpbmF0aW9uLXNpemUvcGFnaW5hdGlvbi1zaXplLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NkJBSTZCO0FBRTdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7O0FBdUJ2RixNQUFNLE9BQU8sNkJBQTZCO0lBYXhDLElBQ0ksRUFBRTtRQUNKLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxFQUFFLENBQUMsS0FBYTtRQUNsQixJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRDtRQWpCVSxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU5QixTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBSXRFLFVBQUssR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBWXhCLDBDQUEwQztRQUMxQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDcEIsQ0FBQzsrR0F6QlUsNkJBQTZCO21HQUE3Qiw2QkFBNkIsbVVDbkMxQyxxVEFRQSxtTERTSSxZQUFZLDhCQUNaLFdBQVcsOFZBQ1gsbUJBQW1CLCtCQUNuQixxQkFBcUIsa0tBQ3JCLHFCQUFxQix3RkFDckIscUJBQXFCOzs0RkFhWiw2QkFBNkI7a0JBckJ6QyxTQUFTO2lDQUNJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIscUJBQXFCO3FCQUN0QixpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJLFlBQzNCLHdCQUF3QixZQUN4QixzQkFBc0IsUUFHMUI7d0JBQ0osYUFBYSxFQUFFLHdCQUF3Qjt3QkFDdkMsV0FBVyxFQUFFLElBQUk7d0JBQ2pCLE1BQU0sRUFBRSxJQUFJO3FCQUNiO3dEQUcwQixJQUFJO3NCQUE5QixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFFaEIsUUFBUTtzQkFBaEIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNO2dCQVNILEVBQUU7c0JBREwsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKiAqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENvcHlyaWdodCBNb25rZXkgRXhjaGFuZ2UuIEFsbCBSaWdodHMgUmVzZXJ2ZWRcbiAqIFRoaXMgc3R5bGUgZ3VpZGUgd2FzIGRldmVsb3BlZCBieSBNb25rZXkgRXhjaGFuZ2UgVGVhbVxuICogTUlUIExpY2VuY2VcbiAqKioqKioqKioqKioqKioqKioqKioqKioqICovXG5cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IE1vbmtleUZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL21vbmtleS1mb3JtLWZpZWxkL21vZHVsZSc7XG5pbXBvcnQgeyBNb25rZXlPcHRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9tb25rZXktb3B0aW9uL21vbmtleS1vcHRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IE1vbmtleVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL21vbmtleS1zZWxlY3QvbW9ua2V5LXNlbGVjdC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1vbmtleVNlbGVjdENvbXBvbmVudCxcbiAgICBNb25rZXlPcHRpb25Db21wb25lbnQsXG4gICAgTW9ua2V5Rm9ybUZpZWxkTW9kdWxlXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHNlbGVjdG9yOiAnbW9ua2V5LXBhZ2luYXRpb24tc2l6ZScsXG4gIGV4cG9ydEFzOiAnbW9ua2V5UGFnaW5hdGlvblNpemUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdGlvbi1zaXplLmh0bWwnLFxuICBzdHlsZVVybDogJy4vcGFnaW5hdGlvbi1zaXplLnNjc3MnLFxuICBob3N0OiB7XG4gICAgJ2RhdGEtdGVzdGlkJzogJ21vbmtleS1wYWdpbmF0aW9uLXNpemUnLFxuICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICdbaWRdJzogJ2lkJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE1vbmtleVBhZ2luYXRpb25TaXplQ29tcG9uZW50IHtcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgc2l6ZSE6IDEwIHwgMjAgfCA1MCB8IDEwMDtcblxuICBASW5wdXQoKSBkaXNhYmxlZCE6IGJvb2xlYW47XG5cbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByb3RlY3RlZCBfdWlkID0gaW5qZWN0KElkR2VuZXJhdG9yKS5nZXRJZCgnbW9ua2V5LXBhZ2luYXRpb24tc2l6ZS0nKTtcblxuICBwcm90ZWN0ZWQgX2lkITogc3RyaW5nO1xuXG4gIHNpemVzID0gWzEwLCAyMCwgNTAsIDEwMF07XG5cbiAgQElucHV0KClcbiAgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgc2V0IGlkKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZCA9IHZhbHVlIHx8IHRoaXMuX3VpZDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWFzc2lnblxuICAgIHRoaXMuaWQgPSB0aGlzLmlkO1xuICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48bW9ua2V5LWZvcm0tZmllbGQgaGlkZUNsZWFyPlxuICA8bW9ua2V5LXNlbGVjdCBwbGFjZWhvbGRlcj1cIicnXCIgW25nTW9kZWxdPVwic2l6ZVwiIChvbkNoYW5nZSk9XCJvbkNoYW5nZS5uZXh0KCRldmVudClcIj5cbiAgICBAZm9yIChpdGVtIG9mIHNpemVzOyB0cmFjayBpdGVtKSB7XG4gICAgICA8bW9ua2V5LW9wdGlvbiBbdmFsdWVdPVwiaXRlbVwiPnt7IGl0ZW0gfX08L21vbmtleS1vcHRpb24+XG4gICAgfVxuICA8L21vbmtleS1zZWxlY3Q+XG48L21vbmtleS1mb3JtLWZpZWxkPlxuIl19
@@ -0,0 +1,109 @@
1
+ /* eslint-disable dot-notation */
2
+ /** ************************
3
+ * Copyright Monkey Exchange. All Rights Reserved
4
+ * This style guide was developed by Monkey Exchange Team
5
+ * MIT Licence
6
+ ************************* */
7
+ import { ChangeDetectorRef, Directive, EventEmitter, HostBinding, Inject, inject, Injector, Input, Optional, Output } from '@angular/core';
8
+ import { Subscription } from 'rxjs';
9
+ import { MonkeyCheckboxComponent } from '../../monkey-checkbox';
10
+ import { MonkeyTableComponent } from '../table';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "../table";
13
+ export class MonkeyColumnChecked {
14
+ constructor(el, renderer, viewContainerRef, table) {
15
+ this.el = el;
16
+ this.renderer = renderer;
17
+ this.viewContainerRef = viewContainerRef;
18
+ this.table = table;
19
+ this.checkedChange = new EventEmitter();
20
+ this._cdr = inject(ChangeDetectorRef);
21
+ this._injector = inject(Injector);
22
+ this._subscriptions = new Subscription();
23
+ // not to do
24
+ }
25
+ renderCheckbox() {
26
+ this.checkboxRef = this.viewContainerRef.createComponent(MonkeyCheckboxComponent, {
27
+ injector: this._injector
28
+ });
29
+ this.checkboxRef.instance.value = this.checked;
30
+ this.checkboxRef.instance.setDisabledState(this.disabled);
31
+ this.checkboxRef.instance.onChange.subscribe((isChecked) => {
32
+ this.checkboxRef.instance.writeValue(isChecked);
33
+ this.checkedChange.emit(isChecked);
34
+ });
35
+ this.renderer.appendChild(this.el.nativeElement, this.checkboxRef.location.nativeElement);
36
+ }
37
+ handleDisableFromStateChanges(disabled) {
38
+ if (disabled) {
39
+ this.el.nativeElement.style.pointerEvents = 'none';
40
+ }
41
+ else {
42
+ this.el.nativeElement.style.pointerEvents = 'all';
43
+ }
44
+ }
45
+ ngOnInit() {
46
+ this.el.nativeElement.style.pointerEvents = 'none';
47
+ this._subscriptions.add(this.table?.stateChanges?.subscribe(() => {
48
+ this.handleDisableFromStateChanges(this.table.loading);
49
+ }));
50
+ }
51
+ ngAfterViewInit() {
52
+ this.renderCheckbox();
53
+ }
54
+ ngOnChanges(changes) {
55
+ let hasChanges = false;
56
+ let checked = false;
57
+ let disabled = false;
58
+ const changesChecked = changes?.['checked'];
59
+ const changesDisabled = changes?.['disabled'];
60
+ if (changesChecked?.currentValue !== changesChecked?.previousValue) {
61
+ checked = changesChecked.currentValue || false;
62
+ hasChanges = true;
63
+ }
64
+ if (changesDisabled?.currentValue !== changesDisabled?.previousValue) {
65
+ disabled = changesDisabled.currentValue;
66
+ hasChanges = true;
67
+ }
68
+ if (hasChanges) {
69
+ this.initializeComponent(checked, disabled);
70
+ }
71
+ }
72
+ initializeComponent(checked, disabled) {
73
+ if (!this.checkboxRef || this.disabled)
74
+ return;
75
+ this.checkboxRef.instance.writeValue(checked);
76
+ this.checkboxRef.instance.setDisabledState(disabled);
77
+ this._cdr.detectChanges();
78
+ }
79
+ ngOnDestroy() {
80
+ this._subscriptions.unsubscribe();
81
+ }
82
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnChecked, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: MonkeyTableComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
83
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: MonkeyColumnChecked, selector: "[mkChecked]", inputs: { checked: ["mkChecked", "checked"], disabled: "disabled" }, outputs: { checkedChange: "checkedChange" }, host: { properties: { "class.mecx-column-checked-disabled": "this.disabled" }, classAttribute: "mecx-column-checked" }, usesOnChanges: true, ngImport: i0 }); }
84
+ }
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnChecked, decorators: [{
86
+ type: Directive,
87
+ args: [{
88
+ selector: '[mkChecked]',
89
+ host: {
90
+ class: 'mecx-column-checked'
91
+ }
92
+ }]
93
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i1.MonkeyTableComponent, decorators: [{
94
+ type: Optional
95
+ }, {
96
+ type: Inject,
97
+ args: [MonkeyTableComponent]
98
+ }] }], propDecorators: { checked: [{
99
+ type: Input,
100
+ args: [{ alias: 'mkChecked', required: true }]
101
+ }], disabled: [{
102
+ type: HostBinding,
103
+ args: ['class.mecx-column-checked-disabled']
104
+ }, {
105
+ type: Input
106
+ }], checkedChange: [{
107
+ type: Output
108
+ }] } });
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWNoZWNrZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL21vbmtleS10YWJsZS9kaXJlY3RpdmVzL2NvbHVtbi1jaGVja2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlDQUFpQztBQUNqQzs7Ozs2QkFJNkI7QUFFN0IsT0FBTyxFQUVMLGlCQUFpQixFQUVqQixTQUFTLEVBRVQsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFJUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBUWhELE1BQU0sT0FBTyxtQkFBbUI7SUFpQjlCLFlBQ1UsRUFBYyxFQUNkLFFBQW1CLEVBQ25CLGdCQUFrQyxFQUNPLEtBQTJCO1FBSHBFLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDTyxVQUFLLEdBQUwsS0FBSyxDQUFzQjtRQWRwRSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFckMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRWpDLGNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFN0IsbUJBQWMsR0FBaUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVV4RCxZQUFZO0lBQ2QsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJ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QUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDOytHQTVGVSxtQkFBbUIscUdBcUJSLG9CQUFvQjttR0FyQi9CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFOL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSxxQkFBcUI7cUJBQzdCO2lCQUNGOzswQkFzQkksUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQkFBb0I7eUNBcEJLLE9BQU87c0JBQXJELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBSTdDLFFBQVE7c0JBRlAsV0FBVzt1QkFBQyxvQ0FBb0M7O3NCQUNoRCxLQUFLO2dCQUdJLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBkb3Qtbm90YXRpb24gKi9cbi8qKiAqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENvcHlyaWdodCBNb25rZXkgRXhjaGFuZ2UuIEFsbCBSaWdodHMgUmVzZXJ2ZWRcbiAqIFRoaXMgc3R5bGUgZ3VpZGUgd2FzIGRldmVsb3BlZCBieSBNb25rZXkgRXhjaGFuZ2UgVGVhbVxuICogTUlUIExpY2VuY2VcbiAqKioqKioqKioqKioqKioqKioqKioqKioqICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5qZWN0LFxuICBpbmplY3QsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNb25rZXlDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbmtleS1jaGVja2JveCc7XG5pbXBvcnQgeyBNb25rZXlUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYmxlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21rQ2hlY2tlZF0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdtZWN4LWNvbHVtbi1jaGVja2VkJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE1vbmtleUNvbHVtbkNoZWNrZWQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQElucHV0KHsgYWxpYXM6ICdta0NoZWNrZWQnLCByZXF1aXJlZDogdHJ1ZSB9KSBjaGVja2VkITogYm9vbGVhbjtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1lY3gtY29sdW1uLWNoZWNrZWQtZGlzYWJsZWQnKVxuICBASW5wdXQoKVxuICBkaXNhYmxlZCE6IGJvb2xlYW47XG5cbiAgQE91dHB1dCgpIGNoZWNrZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHJpdmF0ZSBfY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBwcml2YXRlIF9pbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIGNoZWNrYm94UmVmITogQ29tcG9uZW50UmVmPE1vbmtleUNoZWNrYm94Q29tcG9uZW50PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNb25rZXlUYWJsZUNvbXBvbmVudCkgcHVibGljIHRhYmxlOiBNb25rZXlUYWJsZUNvbXBvbmVudFxuICApIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHByaXZhdGUgcmVuZGVyQ2hlY2tib3goKSB7XG4gICAgdGhpcy5jaGVja2JveFJlZiA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoTW9ua2V5Q2hlY2tib3hDb21wb25lbnQsIHtcbiAgICAgIGluamVjdG9yOiB0aGlzLl9pbmplY3RvclxuICAgIH0pO1xuXG4gICAgdGhpcy5jaGVja2JveFJlZi5pbnN0YW5jZS52YWx1ZSA9IHRoaXMuY2hlY2tlZDtcbiAgICB0aGlzLmNoZWNrYm94UmVmLmluc3RhbmNlLnNldERpc2FibGVkU3RhdGUodGhpcy5kaXNhYmxlZCk7XG5cbiAgICB0aGlzLmNoZWNrYm94UmVmLmluc3RhbmNlLm9uQ2hhbmdlLnN1YnNjcmliZSgoaXNDaGVja2VkOiBib29sZWFuKSA9PiB7XG4gICAgICB0aGlzLmNoZWNrYm94UmVmLmluc3RhbmNlLndyaXRlVmFsdWUoaXNDaGVja2VkKTtcbiAgICAgIHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KGlzQ2hlY2tlZCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgdGhpcy5jaGVja2JveFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlRGlzYWJsZUZyb21TdGF0ZUNoYW5nZXMoZGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUucG9pbnRlckV2ZW50cyA9ICdhbGwnO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgdGhpcy50YWJsZT8uc3RhdGVDaGFuZ2VzPy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmhhbmRsZURpc2FibGVGcm9tU3RhdGVDaGFuZ2VzKHRoaXMudGFibGUubG9hZGluZyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5yZW5kZXJDaGVja2JveCgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGxldCBoYXNDaGFuZ2VzID0gZmFsc2U7XG4gICAgbGV0IGNoZWNrZWQgPSBmYWxzZTtcbiAgICBsZXQgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBjb25zdCBjaGFuZ2VzQ2hlY2tlZCA9IGNoYW5nZXM/LlsnY2hlY2tlZCddO1xuICAgIGNvbnN0IGNoYW5nZXNEaXNhYmxlZCA9IGNoYW5nZXM/LlsnZGlzYWJsZWQnXTtcbiAgICBpZiAoY2hhbmdlc0NoZWNrZWQ/LmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlc0NoZWNrZWQ/LnByZXZpb3VzVmFsdWUpIHtcbiAgICAgIGNoZWNrZWQgPSBjaGFuZ2VzQ2hlY2tlZC5jdXJyZW50VmFsdWUgfHwgZmFsc2U7XG4gICAgICBoYXNDaGFuZ2VzID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXNEaXNhYmxlZD8uY3VycmVudFZhbHVlICE9PSBjaGFuZ2VzRGlzYWJsZWQ/LnByZXZpb3VzVmFsdWUpIHtcbiAgICAgIGRpc2FibGVkID0gY2hhbmdlc0Rpc2FibGVkLmN1cnJlbnRWYWx1ZTtcbiAgICAgIGhhc0NoYW5nZXMgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmIChoYXNDaGFuZ2VzKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVDb21wb25lbnQoY2hlY2tlZCwgZGlzYWJsZWQpO1xuICAgIH1cbiAgfVxuXG4gIGluaXRpYWxpemVDb21wb25lbnQoY2hlY2tlZDogYm9vbGVhbiwgZGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuY2hlY2tib3hSZWYgfHwgdGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuICAgIHRoaXMuY2hlY2tib3hSZWYuaW5zdGFuY2Uud3JpdGVWYWx1ZShjaGVja2VkKTtcbiAgICB0aGlzLmNoZWNrYm94UmVmLmluc3RhbmNlLnNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQpO1xuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,134 @@
1
+ /** ************************
2
+ * Copyright Monkey Exchange. All Rights Reserved
3
+ * This style guide was developed by Monkey Exchange Team
4
+ * MIT Licence
5
+ ************************* */
6
+ import { Directive, EventEmitter, HostBinding, HostListener, Inject, Optional, Output } from '@angular/core';
7
+ import { Subscription } from 'rxjs';
8
+ import { MonkeyTableComponent } from '../table';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../table";
11
+ export class MonkeyColumnExpansible {
12
+ constructor(el, renderer, table) {
13
+ this.el = el;
14
+ this.renderer = renderer;
15
+ this.table = table;
16
+ this.expansionChange = new EventEmitter();
17
+ this._opened = false;
18
+ this._subscriptions = new Subscription();
19
+ this._enableAnimation = false;
20
+ this.disabled = false;
21
+ // not to do
22
+ }
23
+ createSvgElement(opened) {
24
+ const oldIcon = this.el.nativeElement.querySelector('#expansible-icon');
25
+ if (oldIcon)
26
+ this.renderer.removeChild(this.el.nativeElement, oldIcon);
27
+ this.el.nativeElement.style.cursor = 'pointer';
28
+ const svg = this.renderer.createElement('svg', 'svg');
29
+ this.renderer.setAttribute(svg, 'id', 'expansible-icon');
30
+ this.renderer.setAttribute(svg, 'width', '24');
31
+ this.renderer.setAttribute(svg, 'height', '24');
32
+ this.renderer.setAttribute(svg, 'viewBox', '0 0 24 24');
33
+ this.renderer.setAttribute(svg, 'fill', 'none');
34
+ this.renderer.setAttribute(svg, 'xmlns', 'http://www.w3.org/2000/svg');
35
+ this.renderer.setStyle(svg, 'vertical-align', 'middle');
36
+ this.renderer.setStyle(svg, 'cursor', 'pointer');
37
+ if (opened) {
38
+ const path1 = this.renderer.createElement('path', 'svg');
39
+ const path2 = this.renderer.createElement('path', 'svg');
40
+ this.renderer.setAttribute(path1, 'stroke', 'var(--mecx-color-gray-600)');
41
+ this.renderer.setAttribute(path1, 'stroke-width', '1.5');
42
+ this.renderer.setAttribute(path1, 'stroke-linecap', 'round');
43
+ this.renderer.setAttribute(path1, 'stroke-linejoin', 'round');
44
+ this.renderer.setAttribute(path1, 'd', 'M16 12H8');
45
+ this.renderer.setAttribute(path2, 'fill-rule', 'evenodd');
46
+ this.renderer.setAttribute(path2, 'clip-rule', 'evenodd');
47
+ this.renderer.setAttribute(path2, 'stroke', 'var(--mecx-color-gray-400)');
48
+ this.renderer.setAttribute(path2, 'stroke-width', '1.5');
49
+ this.renderer.setAttribute(path2, 'stroke-linecap', 'round');
50
+ this.renderer.setAttribute(path2, 'stroke-linejoin', 'round');
51
+ this.renderer.setAttribute(path2, 'd', 'M12 21V21C7.029 21 3 16.971 3 12V12C3 7.029 7.029 3 12 3V3C16.971 3 21 7.029 21 12V12C21 16.971 16.971 21 12 21Z');
52
+ this.renderer.appendChild(svg, path1);
53
+ this.renderer.appendChild(svg, path2);
54
+ if (this._enableAnimation) {
55
+ this.renderer.addClass(svg, 'rotate-animation-left');
56
+ }
57
+ }
58
+ else {
59
+ const path1 = this.renderer.createElement('path', 'svg');
60
+ const path2 = this.renderer.createElement('path', 'svg');
61
+ const path3 = this.renderer.createElement('path', 'svg');
62
+ this.renderer.setAttribute(path1, 'stroke', 'var(--mecx-color-gray-600)');
63
+ this.renderer.setAttribute(path1, 'stroke-width', '1.5');
64
+ this.renderer.setAttribute(path1, 'stroke-linecap', 'round');
65
+ this.renderer.setAttribute(path1, 'stroke-linejoin', 'round');
66
+ this.renderer.setAttribute(path1, 'd', 'M12 8V16');
67
+ this.renderer.setAttribute(path2, 'stroke', 'var(--mecx-color-gray-600)');
68
+ this.renderer.setAttribute(path2, 'stroke-width', '1.5');
69
+ this.renderer.setAttribute(path2, 'stroke-linecap', 'round');
70
+ this.renderer.setAttribute(path2, 'stroke-linejoin', 'round');
71
+ this.renderer.setAttribute(path2, 'd', 'M16 12H8');
72
+ this.renderer.setAttribute(path3, 'fill-rule', 'evenodd');
73
+ this.renderer.setAttribute(path3, 'clip-rule', 'evenodd');
74
+ this.renderer.setAttribute(path3, 'stroke', 'var(--mecx-color-gray-400)');
75
+ this.renderer.setAttribute(path3, 'stroke-width', '2');
76
+ this.renderer.setAttribute(path3, 'stroke-linecap', 'round');
77
+ this.renderer.setAttribute(path3, 'stroke-linejoin', 'round');
78
+ this.renderer.setAttribute(path3, 'd', 'M12 21V21C7.029 21 3 16.971 3 12V12C3 7.029 7.029 3 12 3V3C16.971 3 21 7.029 21 12V12C21 16.971 16.971 21 12 21Z');
79
+ this.renderer.appendChild(svg, path1);
80
+ this.renderer.appendChild(svg, path2);
81
+ this.renderer.appendChild(svg, path3);
82
+ if (this._enableAnimation) {
83
+ this.renderer.addClass(svg, 'rotate-animation-right');
84
+ }
85
+ }
86
+ this.renderer.appendChild(this.el.nativeElement, svg);
87
+ }
88
+ ngOnInit() {
89
+ this.disabled = this.table.loading;
90
+ this._subscriptions.add(this.table?.stateChanges?.subscribe(() => {
91
+ this.disabled = this.table.loading;
92
+ }));
93
+ this.createSvgElement(this._opened);
94
+ }
95
+ onClick() {
96
+ this._enableAnimation = true;
97
+ if (this._opened) {
98
+ this._opened = false;
99
+ }
100
+ else {
101
+ this._opened = true;
102
+ }
103
+ this.createSvgElement(this._opened);
104
+ this.expansionChange.emit(this._opened);
105
+ }
106
+ ngOnDestroy() {
107
+ this._subscriptions.unsubscribe();
108
+ }
109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnExpansible, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: MonkeyTableComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
110
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: MonkeyColumnExpansible, selector: "[mkExpansible]", outputs: { expansionChange: "expansionChange" }, host: { listeners: { "click": "onClick()" }, properties: { "class.mecx-column-expansible-disabled": "this.disabled" }, classAttribute: "mecx-column-expansible" }, ngImport: i0 }); }
111
+ }
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnExpansible, decorators: [{
113
+ type: Directive,
114
+ args: [{
115
+ selector: '[mkExpansible]',
116
+ host: {
117
+ class: 'mecx-column-expansible'
118
+ }
119
+ }]
120
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.MonkeyTableComponent, decorators: [{
121
+ type: Optional
122
+ }, {
123
+ type: Inject,
124
+ args: [MonkeyTableComponent]
125
+ }] }], propDecorators: { expansionChange: [{
126
+ type: Output
127
+ }], disabled: [{
128
+ type: HostBinding,
129
+ args: ['class.mecx-column-expansible-disabled']
130
+ }], onClick: [{
131
+ type: HostListener,
132
+ args: ['click']
133
+ }] } });
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWV4cGFuc2libGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL21vbmtleS10YWJsZS9kaXJlY3RpdmVzL2NvbHVtbi1leHBhbnNpYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OzZCQUk2QjtBQUU3QixPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFHTixRQUFRLEVBQ1IsTUFBTSxFQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDOzs7QUFRaEQsTUFBTSxPQUFPLHNCQUFzQjtJQVlqQyxZQUNVLEVBQWMsRUFDZCxRQUFtQixFQUNzQixLQUEyQjtRQUZwRSxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNzQixVQUFLLEdBQUwsS0FBSyxDQUFzQjtRQWRwRSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFdkMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVoQixtQkFBYyxHQUFpQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWxELHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUdqQyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBT2YsWUFBWTtJQUNkLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxNQUFlO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3hFLElBQUksT0FBTztZQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMs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QUVELFdBQVc7UUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7K0dBaklVLHNCQUFzQixxRUFlWCxvQkFBb0I7bUdBZi9CLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFObEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLHdCQUF3QjtxQkFDaEM7aUJBQ0Y7OzBCQWdCSSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLG9CQUFvQjt5Q0FkaEMsZUFBZTtzQkFBeEIsTUFBTTtnQkFTUCxRQUFRO3NCQURQLFdBQVc7dUJBQUMsdUNBQXVDO2dCQTBHcEQsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKiogKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBDb3B5cmlnaHQgTW9ua2V5IEV4Y2hhbmdlLiBBbGwgUmlnaHRzIFJlc2VydmVkXG4gKiBUaGlzIHN0eWxlIGd1aWRlIHdhcyBkZXZlbG9wZWQgYnkgTW9ua2V5IEV4Y2hhbmdlIFRlYW1cbiAqIE1JVCBMaWNlbmNlXG4gKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuXG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNb25rZXlUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYmxlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21rRXhwYW5zaWJsZV0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdtZWN4LWNvbHVtbi1leHBhbnNpYmxlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE1vbmtleUNvbHVtbkV4cGFuc2libGUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBPdXRwdXQoKSBleHBhbnNpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHJpdmF0ZSBfb3BlbmVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIHByaXZhdGUgX2VuYWJsZUFuaW1hdGlvbiA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MubWVjeC1jb2x1bW4tZXhwYW5zaWJsZS1kaXNhYmxlZCcpXG4gIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNb25rZXlUYWJsZUNvbXBvbmVudCkgcHVibGljIHRhYmxlOiBNb25rZXlUYWJsZUNvbXBvbmVudFxuICApIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlU3ZnRWxlbWVudChvcGVuZWQ6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBvbGRJY29uID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyNleHBhbnNpYmxlLWljb24nKTtcbiAgICBpZiAob2xkSWNvbikgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIG9sZEljb24pO1xuXG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLmN1cnNvciA9ICdwb2ludGVyJztcbiAgICBjb25zdCBzdmcgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3N2ZycsICdzdmcnKTtcblxuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHN2ZywgJ2lkJywgJ2V4cGFuc2libGUtaWNvbicpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHN2ZywgJ3dpZHRoJywgJzI0Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc3ZnLCAnaGVpZ2h0JywgJzI0Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc3ZnLCAndmlld0JveCcsICcwIDAgMjQgMjQnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShzdmcsICdmaWxsJywgJ25vbmUnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShzdmcsICd4bWxucycsICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoc3ZnLCAndmVydGljYWwtYWxpZ24nLCAnbWlkZGxlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzdmcsICdjdXJzb3InLCAncG9pbnRlcicpO1xuXG4gICAgaWYgKG9wZW5lZCkge1xuICAgICAgY29uc3QgcGF0aDEgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3BhdGgnLCAnc3ZnJyk7XG4gICAgICBjb25zdCBwYXRoMiA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgncGF0aCcsICdzdmcnKTtcblxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDEsICdzdHJva2UnLCAndmFyKC0tbWVjeC1jb2xvci1ncmF5LTYwMCknKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhdGgxLCAnc3Ryb2tlLXdpZHRoJywgJzEuNScpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDEsICdzdHJva2UtbGluZWNhcCcsICdyb3VuZCcpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDEsICdzdHJva2UtbGluZWpvaW4nLCAncm91bmQnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhdGgxLCAnZCcsICdNMTYgMTJIOCcpO1xuXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ2ZpbGwtcnVsZScsICdldmVub2RkJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ2NsaXAtcnVsZScsICdldmVub2RkJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ3N0cm9rZScsICd2YXIoLS1tZWN4LWNvbG9yLWdyYXktNDAwKScpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDIsICdzdHJva2Utd2lkdGgnLCAnMS41Jyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ3N0cm9rZS1saW5lY2FwJywgJ3JvdW5kJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ3N0cm9rZS1saW5lam9pbicsICdyb3VuZCcpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoXG4gICAgICAgIHBhdGgyLFxuICAgICAgICAnZCcsXG4gICAgICAgICdNMTIgMjFWMjFDNy4wMjkgMjEgMyAxNi45NzEgMyAxMlYxMkMzIDcuMDI5IDcuMDI5IDMgMTIgM1YzQzE2Ljk3MSAzIDIxIDcuMDI5IDIxIDEyVjEyQzIxIDE2Ljk3MSAxNi45NzEgMjEgMTIgMjFaJ1xuICAgICAgKTtcblxuICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChzdmcsIHBhdGgxKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoc3ZnLCBwYXRoMik7XG4gICAgICBpZiAodGhpcy5fZW5hYmxlQW5pbWF0aW9uKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3Moc3ZnLCAncm90YXRlLWFuaW1hdGlvbi1sZWZ0Jyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHBhdGgxID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdwYXRoJywgJ3N2ZycpO1xuICAgICAgY29uc3QgcGF0aDIgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3BhdGgnLCAnc3ZnJyk7XG4gICAgICBjb25zdCBwYXRoMyA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgncGF0aCcsICdzdmcnKTtcblxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDEsICdzdHJva2UnLCAndmFyKC0tbWVjeC1jb2xvci1ncmF5LTYwMCknKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhdGgxLCAnc3Ryb2tlLXdpZHRoJywgJzEuNScpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDEsICdzdHJva2UtbGluZWNhcCcsICdyb3VuZCcpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDEsICdzdHJva2UtbGluZWpvaW4nLCAncm91bmQnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhdGgxLCAnZCcsICdNMTIgOFYxNicpO1xuXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ3N0cm9rZScsICd2YXIoLS1tZWN4LWNvbG9yLWdyYXktNjAwKScpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDIsICdzdHJva2Utd2lkdGgnLCAnMS41Jyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ3N0cm9rZS1saW5lY2FwJywgJ3JvdW5kJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMiwgJ3N0cm9rZS1saW5lam9pbicsICdyb3VuZCcpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aDIsICdkJywgJ00xNiAxMkg4Jyk7XG5cbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhdGgzLCAnZmlsbC1ydWxlJywgJ2V2ZW5vZGQnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhdGgzLCAnY2xpcC1ydWxlJywgJ2V2ZW5vZGQnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhdGgzLCAnc3Ryb2tlJywgJ3ZhcigtLW1lY3gtY29sb3ItZ3JheS00MDApJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMywgJ3N0cm9rZS13aWR0aCcsICcyJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMywgJ3N0cm9rZS1saW5lY2FwJywgJ3JvdW5kJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoMywgJ3N0cm9rZS1saW5lam9pbicsICdyb3VuZCcpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoXG4gICAgICAgIHBhdGgzLFxuICAgICAgICAnZCcsXG4gICAgICAgICdNMTIgMjFWMjFDNy4wMjkgMjEgMyAxNi45NzEgMyAxMlYxMkMzIDcuMDI5IDcuMDI5IDMgMTIgM1YzQzE2Ljk3MSAzIDIxIDcuMDI5IDIxIDEyVjEyQzIxIDE2Ljk3MSAxNi45NzEgMjEgMTIgMjFaJ1xuICAgICAgKTtcblxuICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChzdmcsIHBhdGgxKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoc3ZnLCBwYXRoMik7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHN2ZywgcGF0aDMpO1xuICAgICAgaWYgKHRoaXMuX2VuYWJsZUFuaW1hdGlvbikge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHN2ZywgJ3JvdGF0ZS1hbmltYXRpb24tcmlnaHQnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgc3ZnKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZGlzYWJsZWQgPSB0aGlzLnRhYmxlLmxvYWRpbmc7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnRhYmxlPy5zdGF0ZUNoYW5nZXM/LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0aGlzLnRhYmxlLmxvYWRpbmc7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLmNyZWF0ZVN2Z0VsZW1lbnQodGhpcy5fb3BlbmVkKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgb25DbGljaygpIHtcbiAgICB0aGlzLl9lbmFibGVBbmltYXRpb24gPSB0cnVlO1xuICAgIGlmICh0aGlzLl9vcGVuZWQpIHtcbiAgICAgIHRoaXMuX29wZW5lZCA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9vcGVuZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlU3ZnRWxlbWVudCh0aGlzLl9vcGVuZWQpO1xuICAgIHRoaXMuZXhwYW5zaW9uQ2hhbmdlLmVtaXQodGhpcy5fb3BlbmVkKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,97 @@
1
+ /** ************************
2
+ * Copyright Monkey Exchange. All Rights Reserved
3
+ * This style guide was developed by Monkey Exchange Team
4
+ * MIT Licence
5
+ ************************* */
6
+ import { Directive, HostBinding, HostListener, Inject, Input, Optional } from '@angular/core';
7
+ import { Subscription } from 'rxjs';
8
+ import { MonkeyTableComponent } from '../table';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../table";
11
+ export class MonkeyColumnSortable {
12
+ constructor(el, renderer, table) {
13
+ this.el = el;
14
+ this.renderer = renderer;
15
+ this.table = table;
16
+ this._sortableDirection = null;
17
+ this.subscriptions = new Subscription();
18
+ this.disabled = false;
19
+ // not to do
20
+ }
21
+ createSvgElement(direction) {
22
+ const dPath = direction === 'desc' ? 'M16 14L12 10L8 14' : 'M8.75 10L12.75 14L16.75 10';
23
+ const oldIcon = this.el.nativeElement.querySelector('#sortable-icon');
24
+ if (oldIcon)
25
+ this.renderer.removeChild(this.el.nativeElement, oldIcon);
26
+ this.el.nativeElement.style.cursor = 'pointer';
27
+ const svg = this.renderer.createElement('svg', 'svg');
28
+ this.renderer.setAttribute(svg, 'id', 'sortable-icon');
29
+ this.renderer.setAttribute(svg, 'width', '25');
30
+ this.renderer.setAttribute(svg, 'height', '24');
31
+ this.renderer.setAttribute(svg, 'viewBox', '0 0 25 24');
32
+ this.renderer.setAttribute(svg, 'fill', 'none');
33
+ this.renderer.setAttribute(svg, 'xmlns', 'http://www.w3.org/2000/svg');
34
+ this.renderer.setStyle(svg, 'margin-left', '1px');
35
+ this.renderer.setStyle(svg, 'vertical-align', 'middle');
36
+ this.renderer.setStyle(svg, 'cursor', 'pointer');
37
+ const g = this.renderer.createElement('g', 'svg');
38
+ const path = this.renderer.createElement('path', 'svg');
39
+ this.renderer.setAttribute(path, 'stroke', '#000');
40
+ this.renderer.setAttribute(path, 'stroke-width', '1.5');
41
+ this.renderer.setAttribute(path, 'stroke-linecap', 'round');
42
+ this.renderer.setAttribute(path, 'stroke-linejoin', 'round');
43
+ this.renderer.setAttribute(path, 'd', dPath);
44
+ this.renderer.appendChild(g, path);
45
+ this.renderer.appendChild(svg, g);
46
+ this.renderer.appendChild(this.el.nativeElement, svg);
47
+ }
48
+ ngOnInit() {
49
+ this.disabled = this.table.loading;
50
+ this.subscriptions.add(this.table?.stateChanges?.subscribe(() => {
51
+ this.disabled = this.table.loading;
52
+ }));
53
+ this.createSvgElement(this._sortableDirection);
54
+ }
55
+ onClick() {
56
+ if (this._sortableDirection === null) {
57
+ this._sortableDirection = 'asc';
58
+ }
59
+ else if (this._sortableDirection === 'asc') {
60
+ this._sortableDirection = 'desc';
61
+ }
62
+ else {
63
+ this._sortableDirection = null;
64
+ }
65
+ this.createSvgElement(this._sortableDirection);
66
+ this.table?.updateSortableOptions(this.name, this._sortableDirection || '');
67
+ }
68
+ ngOnDestroy() {
69
+ this.subscriptions.unsubscribe();
70
+ }
71
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnSortable, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: MonkeyTableComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
72
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: MonkeyColumnSortable, selector: "[mkSortable]", inputs: { name: ["mkSortable", "name"] }, host: { listeners: { "click": "onClick()" }, properties: { "class.mecx-column-sortable-disabled": "this.disabled" }, classAttribute: "mecx-column-sortable" }, ngImport: i0 }); }
73
+ }
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnSortable, decorators: [{
75
+ type: Directive,
76
+ args: [{
77
+ selector: '[mkSortable]',
78
+ host: {
79
+ class: 'mecx-column-sortable'
80
+ }
81
+ }]
82
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.MonkeyTableComponent, decorators: [{
83
+ type: Optional
84
+ }, {
85
+ type: Inject,
86
+ args: [MonkeyTableComponent]
87
+ }] }], propDecorators: { name: [{
88
+ type: Input,
89
+ args: [{ alias: 'mkSortable', required: true }]
90
+ }], disabled: [{
91
+ type: HostBinding,
92
+ args: ['class.mecx-column-sortable-disabled']
93
+ }], onClick: [{
94
+ type: HostListener,
95
+ args: ['click']
96
+ }] } });
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXNvcnRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlLXYyL3NyYy9saWIvY29tcG9uZW50cy9tb25rZXktdGFibGUvZGlyZWN0aXZlcy9jb2x1bW4tc29ydGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NkJBSTZCO0FBRTdCLE9BQU8sRUFDTCxTQUFTLEVBRVQsV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBUWhELE1BQU0sT0FBTyxvQkFBb0I7SUFVL0IsWUFDVSxFQUFjLEVBQ2QsUUFBbUIsRUFDc0IsS0FBMkI7UUFGcEUsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDc0IsVUFBSyxHQUFMLEtBQUssQ0FBc0I7UUFWdEUsdUJBQWtCLEdBQTBCLElBQUksQ0FBQztRQUVqRCxrQkFBYSxHQUFpQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3pELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFPZixZQUFZO0lBQ2QsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFNBQWdDO1FBQ3ZELE1BQU0sS0FBSyxHQUFHLFNBQVMsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQztRQUV4RixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN0RSxJQUFJLE9BQU87WUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMs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KioqXG4gKiBDb3B5cmlnaHQgTW9ua2V5IEV4Y2hhbmdlLiBBbGwgUmlnaHRzIFJlc2VydmVkXG4gKiBUaGlzIHN0eWxlIGd1aWRlIHdhcyBkZXZlbG9wZWQgYnkgTW9ua2V5IEV4Y2hhbmdlIFRlYW1cbiAqIE1JVCBMaWNlbmNlXG4gKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuXG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgUmVuZGVyZXIyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNb25rZXlUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYmxlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21rU29ydGFibGVdJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnbWVjeC1jb2x1bW4tc29ydGFibGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgTW9ua2V5Q29sdW1uU29ydGFibGUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCh7IGFsaWFzOiAnbWtTb3J0YWJsZScsIHJlcXVpcmVkOiB0cnVlIH0pIG5hbWUhOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfc29ydGFibGVEaXJlY3Rpb246ICdhc2MnIHwgJ2Rlc2MnIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tZWN4LWNvbHVtbi1zb3J0YWJsZS1kaXNhYmxlZCcpXG4gIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNb25rZXlUYWJsZUNvbXBvbmVudCkgcHVibGljIHRhYmxlOiBNb25rZXlUYWJsZUNvbXBvbmVudFxuICApIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlU3ZnRWxlbWVudChkaXJlY3Rpb246ICdhc2MnIHwgJ2Rlc2MnIHwgbnVsbCkge1xuICAgIGNvbnN0IGRQYXRoID0gZGlyZWN0aW9uID09PSAnZGVzYycgPyAnTTE2IDE0TDEyIDEwTDggMTQnIDogJ004Ljc1IDEwTDEyLjc1IDE0TDE2Ljc1IDEwJztcblxuICAgIGNvbnN0IG9sZEljb24gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignI3NvcnRhYmxlLWljb24nKTtcbiAgICBpZiAob2xkSWNvbikgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIG9sZEljb24pO1xuXG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLmN1cnNvciA9ICdwb2ludGVyJztcbiAgICBjb25zdCBzdmcgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3N2ZycsICdzdmcnKTtcblxuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHN2ZywgJ2lkJywgJ3NvcnRhYmxlLWljb24nKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShzdmcsICd3aWR0aCcsICcyNScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHN2ZywgJ2hlaWdodCcsICcyNCcpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHN2ZywgJ3ZpZXdCb3gnLCAnMCAwIDI1IDI0Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc3ZnLCAnZmlsbCcsICdub25lJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc3ZnLCAneG1sbnMnLCAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHN2ZywgJ21hcmdpbi1sZWZ0JywgJzFweCcpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoc3ZnLCAndmVydGljYWwtYWxpZ24nLCAnbWlkZGxlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzdmcsICdjdXJzb3InLCAncG9pbnRlcicpO1xuXG4gICAgY29uc3QgZyA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZycsICdzdmcnKTtcbiAgICBjb25zdCBwYXRoID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdwYXRoJywgJ3N2ZycpO1xuXG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aCwgJ3N0cm9rZScsICcjMDAwJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aCwgJ3N0cm9rZS13aWR0aCcsICcxLjUnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoLCAnc3Ryb2tlLWxpbmVjYXAnLCAncm91bmQnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXRoLCAnc3Ryb2tlLWxpbmVqb2luJywgJ3JvdW5kJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGF0aCwgJ2QnLCBkUGF0aCk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGcsIHBhdGgpO1xuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoc3ZnLCBnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgc3ZnKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZGlzYWJsZWQgPSB0aGlzLnRhYmxlLmxvYWRpbmc7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMudGFibGU/LnN0YXRlQ2hhbmdlcz8uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRoaXMudGFibGUubG9hZGluZztcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuY3JlYXRlU3ZnRWxlbWVudCh0aGlzLl9zb3J0YWJsZURpcmVjdGlvbik7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gIG9uQ2xpY2soKSB7XG4gICAgaWYgKHRoaXMuX3NvcnRhYmxlRGlyZWN0aW9uID09PSBudWxsKSB7XG4gICAgICB0aGlzLl9zb3J0YWJsZURpcmVjdGlvbiA9ICdhc2MnO1xuICAgIH0gZWxzZSBpZiAodGhpcy5fc29ydGFibGVEaXJlY3Rpb24gPT09ICdhc2MnKSB7XG4gICAgICB0aGlzLl9zb3J0YWJsZURpcmVjdGlvbiA9ICdkZXNjJztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fc29ydGFibGVEaXJlY3Rpb24gPSBudWxsO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlU3ZnRWxlbWVudCh0aGlzLl9zb3J0YWJsZURpcmVjdGlvbik7XG4gICAgdGhpcy50YWJsZT8udXBkYXRlU29ydGFibGVPcHRpb25zKHRoaXMubmFtZSwgdGhpcy5fc29ydGFibGVEaXJlY3Rpb24gfHwgJycpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,28 @@
1
+ /** ************************
2
+ * Copyright Monkey Exchange. All Rights Reserved
3
+ * This style guide was developed by Monkey Exchange Team
4
+ * MIT Licence
5
+ ************************* */
6
+ import { Directive, Input } from '@angular/core';
7
+ import * as i0 from "@angular/core";
8
+ export class MonkeyColumnStick {
9
+ constructor() {
10
+ this.position = 'right';
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnStick, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: MonkeyColumnStick, selector: "[mkStick]", inputs: { position: ["mkStick", "position"] }, host: { properties: { "class": "\"mecx-column-stick-\"+position" }, classAttribute: "mecx-column-stick" }, ngImport: i0 }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MonkeyColumnStick, decorators: [{
16
+ type: Directive,
17
+ args: [{
18
+ selector: '[mkStick]',
19
+ host: {
20
+ class: 'mecx-column-stick',
21
+ '[class]': '"mecx-column-stick-"+position'
22
+ }
23
+ }]
24
+ }], propDecorators: { position: [{
25
+ type: Input,
26
+ args: [{ alias: 'mkStick', required: true }]
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXN0aWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlLXYyL3NyYy9saWIvY29tcG9uZW50cy9tb25rZXktdGFibGUvZGlyZWN0aXZlcy9jb2x1bW4tc3RpY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NkJBSTZCO0FBRTdCLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVNqRCxNQUFNLE9BQU8saUJBQWlCO0lBUDlCO1FBUStDLGFBQVEsR0FBcUIsT0FBTyxDQUFDO0tBQ25GOytHQUZZLGlCQUFpQjttR0FBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQVA3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLG1CQUFtQjt3QkFDMUIsU0FBUyxFQUFFLCtCQUErQjtxQkFDM0M7aUJBQ0Y7OEJBRThDLFFBQVE7c0JBQXBELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBDb3B5cmlnaHQgTW9ua2V5IEV4Y2hhbmdlLiBBbGwgUmlnaHRzIFJlc2VydmVkXG4gKiBUaGlzIHN0eWxlIGd1aWRlIHdhcyBkZXZlbG9wZWQgYnkgTW9ua2V5IEV4Y2hhbmdlIFRlYW1cbiAqIE1JVCBMaWNlbmNlXG4gKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuXG5pbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tta1N0aWNrXScsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ21lY3gtY29sdW1uLXN0aWNrJyxcbiAgICAnW2NsYXNzXSc6ICdcIm1lY3gtY29sdW1uLXN0aWNrLVwiK3Bvc2l0aW9uJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE1vbmtleUNvbHVtblN0aWNrIHtcbiAgQElucHV0KHsgYWxpYXM6ICdta1N0aWNrJywgcmVxdWlyZWQ6IHRydWUgfSkgcG9zaXRpb246ICdsZWZ0JyB8ICdyaWdodCcgPSAncmlnaHQnO1xufVxuIl19
@@ -0,0 +1,10 @@
1
+ export * from './components/pagination-action/pagination-action';
2
+ export * from './components/pagination-label/pagination-label';
3
+ export * from './components/pagination-size/pagination-size';
4
+ export * from './directives/column-checked';
5
+ export * from './directives/column-expansible';
6
+ export * from './directives/column-sortable';
7
+ export * from './directives/column-stick';
8
+ export * from './table';
9
+ export * from './table.module';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktc3R5bGUtZ3VpZGUtdjIvc3JjL2xpYi9jb21wb25lbnRzL21vbmtleS10YWJsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvcGFnaW5hdGlvbi1hY3Rpb24vcGFnaW5hdGlvbi1hY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24tbGFiZWwvcGFnaW5hdGlvbi1sYWJlbCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvcGFnaW5hdGlvbi1zaXplL3BhZ2luYXRpb24tc2l6ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvY29sdW1uLWNoZWNrZWQnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2NvbHVtbi1leHBhbnNpYmxlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9jb2x1bW4tc29ydGFibGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2NvbHVtbi1zdGljayc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxlJztcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUubW9kdWxlJztcbiJdfQ==