coer-elements 0.0.22 → 0.0.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. package/esm2022/coer-elements.mjs +2 -2
  2. package/esm2022/index.mjs +2 -0
  3. package/fesm2022/coer-elements.mjs +0 -4081
  4. package/fesm2022/coer-elements.mjs.map +1 -1
  5. package/index.d.ts +1 -5
  6. package/package.json +1 -1
  7. package/styles/angular-material.scss +8 -11
  8. package/styles/bootstrap.scss +3 -3
  9. package/components/index.d.ts +0 -16
  10. package/components/lib/coer-alert/coer-alert.component.d.ts +0 -23
  11. package/components/lib/coer-button/coer-button.component.d.ts +0 -44
  12. package/components/lib/coer-checkbox/coer-checkbox.component.d.ts +0 -28
  13. package/components/lib/coer-filebox/coer-filebox.component.d.ts +0 -33
  14. package/components/lib/coer-form/coer-form.component.d.ts +0 -33
  15. package/components/lib/coer-grid/coer-grid.component.d.ts +0 -53
  16. package/components/lib/coer-grid/coer-grid.extension.d.ts +0 -105
  17. package/components/lib/coer-grid/coer-grid.templates.d.ts +0 -9
  18. package/components/lib/coer-modal/coer-modal.component.d.ts +0 -38
  19. package/components/lib/coer-numberbox/coer-numberbox.component.d.ts +0 -56
  20. package/components/lib/coer-page-title/coer-page-title.component.d.ts +0 -12
  21. package/components/lib/coer-selectbox/coer-selectbox.component.d.ts +0 -75
  22. package/components/lib/coer-switch/coer-switch.component.d.ts +0 -31
  23. package/components/lib/coer-tab/coer-tab.component.d.ts +0 -35
  24. package/components/lib/coer-textarea/coer-textarea.component.d.ts +0 -51
  25. package/components/lib/coer-textbox/coer-textbox.component.d.ts +0 -57
  26. package/components/lib/components.module.d.ts +0 -31
  27. package/directives/index.d.ts +0 -3
  28. package/directives/lib/coer-ref.directive.d.ts +0 -14
  29. package/directives/lib/directives.module.d.ts +0 -8
  30. package/directives/lib/life-cycle.directive.d.ts +0 -16
  31. package/esm2022/components/index.mjs +0 -17
  32. package/esm2022/components/lib/coer-alert/coer-alert.component.mjs +0 -227
  33. package/esm2022/components/lib/coer-button/coer-button.component.mjs +0 -133
  34. package/esm2022/components/lib/coer-checkbox/coer-checkbox.component.mjs +0 -84
  35. package/esm2022/components/lib/coer-filebox/coer-filebox.component.mjs +0 -104
  36. package/esm2022/components/lib/coer-form/coer-form.component.mjs +0 -102
  37. package/esm2022/components/lib/coer-grid/coer-grid.component.mjs +0 -515
  38. package/esm2022/components/lib/coer-grid/coer-grid.extension.mjs +0 -412
  39. package/esm2022/components/lib/coer-grid/coer-grid.templates.mjs +0 -30
  40. package/esm2022/components/lib/coer-modal/coer-modal.component.mjs +0 -108
  41. package/esm2022/components/lib/coer-numberbox/coer-numberbox.component.mjs +0 -260
  42. package/esm2022/components/lib/coer-page-title/coer-page-title.component.mjs +0 -44
  43. package/esm2022/components/lib/coer-selectbox/coer-selectbox.component.mjs +0 -339
  44. package/esm2022/components/lib/coer-switch/coer-switch.component.mjs +0 -94
  45. package/esm2022/components/lib/coer-tab/coer-tab.component.mjs +0 -116
  46. package/esm2022/components/lib/coer-textarea/coer-textarea.component.mjs +0 -157
  47. package/esm2022/components/lib/coer-textbox/coer-textbox.component.mjs +0 -196
  48. package/esm2022/components/lib/components.module.mjs +0 -134
  49. package/esm2022/directives/index.mjs +0 -4
  50. package/esm2022/directives/lib/coer-ref.directive.mjs +0 -23
  51. package/esm2022/directives/lib/directives.module.mjs +0 -25
  52. package/esm2022/directives/lib/life-cycle.directive.mjs +0 -33
  53. package/esm2022/interfaces/index.mjs +0 -39
  54. package/esm2022/interfaces/lib/app-source.interface.mjs +0 -2
  55. package/esm2022/interfaces/lib/coer-filebox/file-image.interface.mjs +0 -2
  56. package/esm2022/interfaces/lib/coer-filebox/file.interface.mjs +0 -2
  57. package/esm2022/interfaces/lib/coer-grid/grid-button-by-row.interface.mjs +0 -2
  58. package/esm2022/interfaces/lib/coer-grid/grid-checkbox.interface.mjs +0 -2
  59. package/esm2022/interfaces/lib/coer-grid/grid-coer-numberbox.interface.mjs +0 -2
  60. package/esm2022/interfaces/lib/coer-grid/grid-coer-selectbox.interface.mjs +0 -2
  61. package/esm2022/interfaces/lib/coer-grid/grid-coer-switch.interface.mjs +0 -2
  62. package/esm2022/interfaces/lib/coer-grid/grid-coer-textbox.interface.mjs +0 -2
  63. package/esm2022/interfaces/lib/coer-grid/grid-column.interface.mjs +0 -2
  64. package/esm2022/interfaces/lib/coer-grid/grid-data-source.interface.mjs +0 -2
  65. package/esm2022/interfaces/lib/coer-grid/grid-header-button.interface.mjs +0 -2
  66. package/esm2022/interfaces/lib/coer-grid/grid-header-export-button.interface.mjs +0 -2
  67. package/esm2022/interfaces/lib/coer-grid/grid-header.interface.mjs +0 -2
  68. package/esm2022/interfaces/lib/coer-grid/grid-import.interface.mjs +0 -2
  69. package/esm2022/interfaces/lib/coer-grid/grid-input-checkbox.interface.mjs +0 -2
  70. package/esm2022/interfaces/lib/coer-grid/grid-input-switch-change.interface.mjs +0 -2
  71. package/esm2022/interfaces/lib/coer-grid/grid-input-textbox.interface.mjs +0 -2
  72. package/esm2022/interfaces/lib/coer-grid/grid-item.interface.mjs +0 -2
  73. package/esm2022/interfaces/lib/coer-grid/grid-keyup-enter.interface.mjs +0 -2
  74. package/esm2022/interfaces/lib/coer-grid/grid-length.interface.mjs +0 -2
  75. package/esm2022/interfaces/lib/coer-grid/grid-search.interface.mjs +0 -2
  76. package/esm2022/interfaces/lib/coer-grid/grid-sort.interface.mjs +0 -2
  77. package/esm2022/interfaces/lib/coer-menu/menu-option-selected.interface.mjs +0 -2
  78. package/esm2022/interfaces/lib/coer-menu/menu-selected.interface.mjs +0 -2
  79. package/esm2022/interfaces/lib/coer-menu/menu.interface.mjs +0 -2
  80. package/esm2022/interfaces/lib/coer-ref.interface.mjs +0 -2
  81. package/esm2022/interfaces/lib/page-title/breadcrumb.interface.mjs +0 -2
  82. package/esm2022/interfaces/lib/page-title/go-back.interface.mjs +0 -2
  83. package/esm2022/interfaces/lib/screen-size.interface.mjs +0 -2
  84. package/esm2022/interfaces/lib/service/http-request.interface.mjs +0 -2
  85. package/esm2022/interfaces/lib/service/http-response.interface.mjs +0 -2
  86. package/esm2022/interfaces/lib/service/patch.interface.mjs +0 -2
  87. package/esm2022/pipes/index.mjs +0 -5
  88. package/esm2022/pipes/lib/html.pipe.mjs +0 -18
  89. package/esm2022/pipes/lib/no-image.pipe.mjs +0 -23
  90. package/esm2022/pipes/lib/numeric-format.pipe.mjs +0 -15
  91. package/esm2022/pipes/lib/pipes.module.mjs +0 -31
  92. package/esm2022/public_api.mjs +0 -6
  93. package/esm2022/signals/index.mjs +0 -6
  94. package/esm2022/signals/lib/breakpoint.signal.mjs +0 -4
  95. package/esm2022/signals/lib/is-loading.signal.mjs +0 -3
  96. package/esm2022/signals/lib/is-menu-open.signal.mjs +0 -3
  97. package/esm2022/signals/lib/is-modal-open.signal.mjs +0 -3
  98. package/esm2022/signals/lib/menu.signal.mjs +0 -3
  99. package/esm2022/tools/index.mjs +0 -11
  100. package/esm2022/tools/lib/breadcrumbs.class.mjs +0 -63
  101. package/esm2022/tools/lib/control-value.class.mjs +0 -46
  102. package/esm2022/tools/lib/date-time.class.mjs +0 -29
  103. package/esm2022/tools/lib/files.class.mjs +0 -91
  104. package/esm2022/tools/lib/menu.class.mjs +0 -23
  105. package/esm2022/tools/lib/page.class.mjs +0 -156
  106. package/esm2022/tools/lib/screen.class.mjs +0 -51
  107. package/esm2022/tools/lib/service.class.mjs +0 -248
  108. package/esm2022/tools/lib/source.class.mjs +0 -80
  109. package/esm2022/tools/lib/tools.mjs +0 -220
  110. package/interfaces/index.d.ts +0 -33
  111. package/interfaces/lib/app-source.interface.d.ts +0 -4
  112. package/interfaces/lib/coer-filebox/file-image.interface.d.ts +0 -14
  113. package/interfaces/lib/coer-filebox/file.interface.d.ts +0 -5
  114. package/interfaces/lib/coer-grid/grid-button-by-row.interface.d.ts +0 -6
  115. package/interfaces/lib/coer-grid/grid-checkbox.interface.d.ts +0 -5
  116. package/interfaces/lib/coer-grid/grid-coer-numberbox.interface.d.ts +0 -12
  117. package/interfaces/lib/coer-grid/grid-coer-selectbox.interface.d.ts +0 -9
  118. package/interfaces/lib/coer-grid/grid-coer-switch.interface.d.ts +0 -6
  119. package/interfaces/lib/coer-grid/grid-coer-textbox.interface.d.ts +0 -11
  120. package/interfaces/lib/coer-grid/grid-column.interface.d.ts +0 -22
  121. package/interfaces/lib/coer-grid/grid-data-source.interface.d.ts +0 -6
  122. package/interfaces/lib/coer-grid/grid-header-button.interface.d.ts +0 -8
  123. package/interfaces/lib/coer-grid/grid-header-export-button.interface.d.ts +0 -10
  124. package/interfaces/lib/coer-grid/grid-header.interface.d.ts +0 -5
  125. package/interfaces/lib/coer-grid/grid-import.interface.d.ts +0 -4
  126. package/interfaces/lib/coer-grid/grid-input-checkbox.interface.d.ts +0 -5
  127. package/interfaces/lib/coer-grid/grid-input-switch-change.interface.d.ts +0 -5
  128. package/interfaces/lib/coer-grid/grid-input-textbox.interface.d.ts +0 -5
  129. package/interfaces/lib/coer-grid/grid-item.interface.d.ts +0 -5
  130. package/interfaces/lib/coer-grid/grid-keyup-enter.interface.d.ts +0 -6
  131. package/interfaces/lib/coer-grid/grid-length.interface.d.ts +0 -5
  132. package/interfaces/lib/coer-grid/grid-search.interface.d.ts +0 -4
  133. package/interfaces/lib/coer-grid/grid-sort.interface.d.ts +0 -5
  134. package/interfaces/lib/coer-menu/menu-option-selected.interface.d.ts +0 -9
  135. package/interfaces/lib/coer-menu/menu-selected.interface.d.ts +0 -10
  136. package/interfaces/lib/coer-menu/menu.interface.d.ts +0 -6
  137. package/interfaces/lib/coer-ref.interface.d.ts +0 -10
  138. package/interfaces/lib/page-title/breadcrumb.interface.d.ts +0 -6
  139. package/interfaces/lib/page-title/go-back.interface.d.ts +0 -6
  140. package/interfaces/lib/screen-size.interface.d.ts +0 -5
  141. package/interfaces/lib/service/http-request.interface.d.ts +0 -10
  142. package/interfaces/lib/service/http-response.interface.d.ts +0 -6
  143. package/interfaces/lib/service/patch.interface.d.ts +0 -5
  144. package/pipes/index.d.ts +0 -4
  145. package/pipes/lib/html.pipe.d.ts +0 -10
  146. package/pipes/lib/no-image.pipe.d.ts +0 -7
  147. package/pipes/lib/numeric-format.pipe.d.ts +0 -7
  148. package/pipes/lib/pipes.module.d.ts +0 -9
  149. package/public_api.d.ts +0 -5
  150. package/signals/index.d.ts +0 -5
  151. package/signals/lib/breakpoint.signal.d.ts +0 -1
  152. package/signals/lib/is-loading.signal.d.ts +0 -1
  153. package/signals/lib/is-menu-open.signal.d.ts +0 -1
  154. package/signals/lib/is-modal-open.signal.d.ts +0 -1
  155. package/signals/lib/menu.signal.d.ts +0 -2
  156. package/tools/index.d.ts +0 -10
  157. package/tools/lib/breadcrumbs.class.d.ts +0 -18
  158. package/tools/lib/control-value.class.d.ts +0 -25
  159. package/tools/lib/date-time.class.d.ts +0 -13
  160. package/tools/lib/files.class.d.ts +0 -16
  161. package/tools/lib/menu.class.d.ts +0 -8
  162. package/tools/lib/page.class.d.ts +0 -60
  163. package/tools/lib/screen.class.d.ts +0 -13
  164. package/tools/lib/service.class.d.ts +0 -39
  165. package/tools/lib/source.class.d.ts +0 -20
  166. package/tools/lib/tools.d.ts +0 -34
@@ -1,80 +0,0 @@
1
- import { inject } from "@angular/core";
2
- import { Router } from '@angular/router';
3
- import { Breadcrumbs } from "../lib/breadcrumbs.class";
4
- import { Tools } from "../lib/tools";
5
- export class Source {
6
- static { this.storage = 'COER-System'; }
7
- /** */
8
- static Set(page) {
9
- const ROUTER = inject(Router);
10
- let path = ROUTER.url;
11
- if (path.includes('?'))
12
- path = path.split('?')[0];
13
- Breadcrumbs.Add(page, path);
14
- const breadcrumbs = Breadcrumbs.Get();
15
- if (breadcrumbs.length >= 2) {
16
- breadcrumbs.pop();
17
- const breadcrumb = breadcrumbs.pop();
18
- this.Save({ page: breadcrumb.page, path: breadcrumb.path });
19
- }
20
- else
21
- this.Save(null);
22
- }
23
- /** */
24
- static Save(source) {
25
- let storage = sessionStorage.getItem(this.storage);
26
- if (storage)
27
- storage = JSON.parse(storage);
28
- storage = Object.assign({}, storage, { source });
29
- sessionStorage.setItem(this.storage, JSON.stringify(storage));
30
- }
31
- /** */
32
- static Get() {
33
- let storage = sessionStorage.getItem(this.storage);
34
- if (storage) {
35
- storage = JSON.parse(storage);
36
- if (storage.hasOwnProperty('source')) {
37
- return storage.source;
38
- }
39
- }
40
- return null;
41
- }
42
- /** */
43
- static GetRoot() {
44
- const breadcrumbs = Breadcrumbs.Get();
45
- return (breadcrumbs.length > 0) ? breadcrumbs.shift() : null;
46
- }
47
- /** */
48
- static SetPageResponse(pageResponse) {
49
- let storage = sessionStorage.getItem(this.storage);
50
- storage = JSON.parse(storage);
51
- storage = Object.assign({}, storage, { pageResponse });
52
- sessionStorage.setItem(this.storage, JSON.stringify(storage));
53
- }
54
- /** */
55
- static GetPageResponse() {
56
- let storage = sessionStorage.getItem(this.storage);
57
- if (storage) {
58
- storage = JSON.parse(storage);
59
- if (storage.hasOwnProperty('pageResponse')) {
60
- return Tools.BreakReference(storage.pageResponse);
61
- }
62
- }
63
- return null;
64
- }
65
- /** */
66
- static ClearPageResponse() {
67
- let storage = sessionStorage.getItem(this.storage);
68
- storage = JSON.parse(storage);
69
- if (storage.hasOwnProperty('pageResponse')) {
70
- delete storage.pageResponse;
71
- }
72
- storage = Object.assign({}, storage);
73
- sessionStorage.setItem(this.storage, JSON.stringify(storage));
74
- }
75
- /** */
76
- static Reset() {
77
- sessionStorage.removeItem(this.storage);
78
- }
79
- }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29lci1lbGVtZW50cy9zcmMvdG9vbHMvbGliL3NvdXJjZS5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVyQyxNQUFNLE9BQU8sTUFBTTthQUVTLFlBQU8sR0FBRyxhQUFhLENBQUM7SUFFaEQsTUFBTTtJQUNDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWTtRQUMxQixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFOUIsSUFBSSxJQUFJLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUN0QixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO1lBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFbEQsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFNUIsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRXRDLElBQUcsV0FBVyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN6QixXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDbEIsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsVUFB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RSxDQUFDO1lBQ3pDLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQztRQUNoQyxDQUFDO1FBRUQsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUdELE1BQU07SUFDQyxNQUFNLENBQUMsS0FBSztRQUNmLGNBQWMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBJQXBwU291cmNlIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcclxuaW1wb3J0IHsgQnJlYWRjcnVtYnMgfSBmcm9tIFwiLi4vbGliL2JyZWFkY3J1bWJzLmNsYXNzXCI7XHJcbmltcG9ydCB7IFRvb2xzIH0gZnJvbSBcIi4uL2xpYi90b29sc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNvdXJjZSB7XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgc3RvcmFnZSA9ICdDT0VSLVN5c3RlbSc7XHJcblxyXG4gICAgLyoqICovXHJcbiAgICBwdWJsaWMgc3RhdGljIFNldChwYWdlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBST1VURVIgPSBpbmplY3QoUm91dGVyKTtcclxuXHJcbiAgICAgICAgbGV0IHBhdGggPSBST1VURVIudXJsO1xyXG4gICAgICAgIGlmIChwYXRoLmluY2x1ZGVzKCc/JykpIHBhdGggPSBwYXRoLnNwbGl0KCc/JylbMF07XHJcblxyXG4gICAgICAgIEJyZWFkY3J1bWJzLkFkZChwYWdlLCBwYXRoKTtcclxuXHJcbiAgICAgICAgY29uc3QgYnJlYWRjcnVtYnMgPSBCcmVhZGNydW1icy5HZXQoKTtcclxuXHJcbiAgICAgICAgaWYoYnJlYWRjcnVtYnMubGVuZ3RoID49IDIpIHtcclxuICAgICAgICAgICAgYnJlYWRjcnVtYnMucG9wKCk7XHJcbiAgICAgICAgICAgIGNvbnN0IGJyZWFkY3J1bWIgPSBicmVhZGNydW1icy5wb3AoKSE7XHJcbiAgICAgICAgICAgIHRoaXMuU2F2ZSh7IHBhZ2U6IGJyZWFkY3J1bWIucGFnZSwgcGF0aDogYnJlYWRjcnVtYi5wYXRoIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZWxzZSB0aGlzLlNhdmUobnVsbCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiAqL1xyXG4gICAgcHJpdmF0ZSBzdGF0aWMgU2F2ZShzb3VyY2U6IElBcHBTb3VyY2UgfCBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgbGV0IHN0b3JhZ2UgPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMuc3RvcmFnZSkgYXMgYW55O1xyXG4gICAgICAgIGlmIChzdG9yYWdlKSBzdG9yYWdlID0gSlNPTi5wYXJzZShzdG9yYWdlKTtcclxuICAgICAgICBzdG9yYWdlID0gT2JqZWN0LmFzc2lnbih7fSwgc3RvcmFnZSwgeyBzb3VyY2UgfSk7XHJcbiAgICAgICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSh0aGlzLnN0b3JhZ2UsIEpTT04uc3RyaW5naWZ5KHN0b3JhZ2UpKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqICovXHJcbiAgICBwdWJsaWMgc3RhdGljIEdldCgpOiBJQXBwU291cmNlIHwgbnVsbCB7XHJcbiAgICAgICAgbGV0IHN0b3JhZ2UgPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMuc3RvcmFnZSkgYXMgYW55O1xyXG5cclxuICAgICAgICBpZiAoc3RvcmFnZSkge1xyXG4gICAgICAgICAgICBzdG9yYWdlID0gSlNPTi5wYXJzZShzdG9yYWdlKTtcclxuXHJcbiAgICAgICAgICAgIGlmIChzdG9yYWdlLmhhc093blByb3BlcnR5KCdzb3VyY2UnKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0b3JhZ2Uuc291cmNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqICovXHJcbiAgICBwdWJsaWMgc3RhdGljIEdldFJvb3QoKTogSUFwcFNvdXJjZSB8IG51bGwge1xyXG4gICAgICAgIGNvbnN0IGJyZWFkY3J1bWJzID0gQnJlYWRjcnVtYnMuR2V0KCk7XHJcbiAgICAgICAgcmV0dXJuIChicmVhZGNydW1icy5sZW5ndGggPiAwKSA/IGJyZWFkY3J1bWJzLnNoaWZ0KCkhIDogbnVsbDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqICovXHJcbiAgICBwdWJsaWMgc3RhdGljIFNldFBhZ2VSZXNwb25zZTxUPihwYWdlUmVzcG9uc2U6IFQpOiB2b2lkIHtcclxuICAgICAgICBsZXQgc3RvcmFnZSA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0odGhpcy5zdG9yYWdlKSBhcyBhbnk7XHJcbiAgICAgICAgc3RvcmFnZSA9IEpTT04ucGFyc2Uoc3RvcmFnZSk7XHJcbiAgICAgICAgc3RvcmFnZSA9IE9iamVjdC5hc3NpZ24oe30sIHN0b3JhZ2UsIHsgcGFnZVJlc3BvbnNlIH0pO1xyXG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0odGhpcy5zdG9yYWdlLCBKU09OLnN0cmluZ2lmeShzdG9yYWdlKSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBHZXRQYWdlUmVzcG9uc2U8VD4oKTogVCB8IG51bGwge1xyXG4gICAgICAgIGxldCBzdG9yYWdlID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnN0b3JhZ2UpIGFzIGFueTtcclxuXHJcbiAgICAgICAgaWYgKHN0b3JhZ2UpIHtcclxuICAgICAgICAgICAgc3RvcmFnZSA9IEpTT04ucGFyc2Uoc3RvcmFnZSk7XHJcblxyXG4gICAgICAgICAgICBpZiAoc3RvcmFnZS5oYXNPd25Qcm9wZXJ0eSgncGFnZVJlc3BvbnNlJykpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBUb29scy5CcmVha1JlZmVyZW5jZShzdG9yYWdlLnBhZ2VSZXNwb25zZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKiogKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgQ2xlYXJQYWdlUmVzcG9uc2UoKTogdm9pZCB7XHJcbiAgICAgICAgbGV0IHN0b3JhZ2UgPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMuc3RvcmFnZSkgYXMgYW55O1xyXG4gICAgICAgIHN0b3JhZ2UgPSBKU09OLnBhcnNlKHN0b3JhZ2UpO1xyXG5cclxuICAgICAgICBpZiAoc3RvcmFnZS5oYXNPd25Qcm9wZXJ0eSgncGFnZVJlc3BvbnNlJykpIHtcclxuICAgICAgICAgICAgZGVsZXRlIHN0b3JhZ2UucGFnZVJlc3BvbnNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3RvcmFnZSA9IE9iamVjdC5hc3NpZ24oe30sIHN0b3JhZ2UpO1xyXG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0odGhpcy5zdG9yYWdlLCBKU09OLnN0cmluZ2lmeShzdG9yYWdlKSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBSZXNldCgpOiB2b2lkIHtcclxuICAgICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKHRoaXMuc3RvcmFnZSk7XHJcbiAgICB9XHJcbn0iXX0=
@@ -1,220 +0,0 @@
1
- import { signal } from "@angular/core";
2
- const reference_signal = signal({});
3
- export const Tools = {
4
- /** Generate a Guid */
5
- GetGuid: (seed = 'coer-system') => {
6
- let time = new Date().getTime();
7
- seed = seed.toString().trim();
8
- return seed + `-xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g, (c) => {
9
- const random = (time + Math.random() * 16) % 16 | 0;
10
- time = Math.floor(time / 16);
11
- return (c == 'x' ? random : (random & 0x3 | 0x8)).toString(16);
12
- });
13
- },
14
- /** Returns true if the value is null or undefined, false otherwise */
15
- IsNull: (value) => {
16
- if (value === undefined)
17
- return true;
18
- if (value === null)
19
- return true;
20
- return false;
21
- },
22
- /** Returns true if the value is not null or undefined, false otherwise */
23
- IsNotNull: (value) => {
24
- if (value === undefined)
25
- return false;
26
- if (value === null)
27
- return false;
28
- return true;
29
- },
30
- /** Returns true if the value is null or undefined or contains only whitespace, false otherwise */
31
- IsOnlyWhiteSpace: (value) => {
32
- if (value === undefined)
33
- return true;
34
- if (value === null)
35
- return true;
36
- if (typeof value === 'string' && value.trim() === '')
37
- return true;
38
- return false;
39
- },
40
- /** Returns true if has string value and is not only whitespace, false otherwise */
41
- IsNotOnlyWhiteSpace: (value) => {
42
- if (value === undefined)
43
- return false;
44
- if (value === null)
45
- return false;
46
- if (typeof value === 'string' && value.trim() === '')
47
- return false;
48
- return true;
49
- },
50
- /** Break reference of a object or array */
51
- BreakReference: (object) => {
52
- if (object === null)
53
- return object;
54
- if (typeof object === 'undefined')
55
- return object;
56
- if (typeof object === 'string')
57
- return object;
58
- if (typeof object === 'number')
59
- return object;
60
- if (typeof object === 'boolean')
61
- return object;
62
- const OBJECT = JSON.parse(JSON.stringify(object));
63
- return (Array.isArray(OBJECT)) ? [...OBJECT] : { ...OBJECT };
64
- },
65
- /** Clean extra whitespaces */
66
- CleanUpBlanks: (text) => {
67
- if (Tools.IsNull(text))
68
- return '';
69
- let worlds = String(text).split(' ');
70
- worlds = worlds.filter(x => x.length > 0);
71
- return worlds.join(' ');
72
- },
73
- /** Get properties of an object */
74
- GetObjectProperties: (obj) => {
75
- const properties = [];
76
- if (obj === null)
77
- return properties;
78
- if (typeof obj === 'undefined')
79
- return properties;
80
- if (typeof obj === 'string')
81
- return properties;
82
- if (typeof obj === 'number')
83
- return properties;
84
- if (typeof obj === 'boolean')
85
- return properties;
86
- for (const property in obj)
87
- properties.push(String(property));
88
- return properties;
89
- },
90
- /**
91
- * Set an index and merge more arrays of the same type
92
- * */
93
- SetIndex: (array, ...args) => {
94
- let index = 0;
95
- for (const arg of args) {
96
- array = Tools.BreakReference(array).concat(Tools.BreakReference(arg));
97
- }
98
- return Tools.BreakReference(array).map(item => Object.assign({ index: index++ }, item));
99
- },
100
- /** Set First Char To Lower */
101
- FirstCharToLower: (text) => {
102
- if (Tools.IsOnlyWhiteSpace(text))
103
- return '';
104
- const textArray = [];
105
- for (let i = 0; i < text.length; i++) {
106
- if (i === 0)
107
- textArray.push(text[i].toLowerCase());
108
- else
109
- textArray.push(text[i]);
110
- }
111
- return textArray.join('');
112
- },
113
- /** Set First Char To Upper */
114
- FirstCharToUpper: (text) => {
115
- if (Tools.IsOnlyWhiteSpace(text))
116
- return '';
117
- const textArray = [];
118
- for (let i = 0; i < text.length; i++) {
119
- if (i === 0)
120
- textArray.push(text[i].toUpperCase());
121
- else
122
- textArray.push(text[i]);
123
- }
124
- return textArray.join('');
125
- },
126
- /** Sort an array in ascending order by property */
127
- SortBy: (array, property, propertyType = 'string') => {
128
- switch (propertyType) {
129
- case 'string': {
130
- return array.sort((x, y) => {
131
- if (String(x[property]).toUpperCase().trim() < String(y[property]).toUpperCase().trim())
132
- return -1;
133
- else if (String(x[property]).toUpperCase().trim() > String(y[property]).toUpperCase().trim())
134
- return 1;
135
- else
136
- return 0;
137
- });
138
- }
139
- case 'number': {
140
- return array.sort((x, y) => Number(x[property] - Number(y[property])));
141
- }
142
- }
143
- },
144
- /** Sort an array in descending order by property */
145
- SortByDesc: (array, property, propertyType = 'string') => {
146
- switch (propertyType) {
147
- case 'string': {
148
- return array.sort((x, y) => {
149
- if (String(x[property]).toUpperCase().trim() < String(y[property]).toUpperCase().trim())
150
- return 1;
151
- else if (String(x[property]).toUpperCase().trim() > String(y[property]).toUpperCase().trim())
152
- return -1;
153
- else
154
- return 0;
155
- });
156
- }
157
- case 'number': {
158
- return array.sort((x, y) => Number(Number(y[property])) - x[property]);
159
- }
160
- }
161
- },
162
- /** Return a string with forman numeric */
163
- GetNumericFormat: (value, decimals = 0) => {
164
- if (Tools.IsOnlyWhiteSpace(value) || isNaN(Number(value))) {
165
- return '0';
166
- }
167
- let valueInteger = '';
168
- let valueDecimal = '';
169
- value = value.toString().replaceAll(' ', '');
170
- if (value.includes('.') || (decimals > 0)) {
171
- valueInteger = value.includes('.') ? value.split('.')[0] : value;
172
- if (decimals > 0) {
173
- const PADDING = decimals - valueDecimal.length;
174
- valueDecimal = value.includes('.') ? value.split('.')[1] : '';
175
- for (let i = 0; i < PADDING; i++)
176
- valueDecimal += '0';
177
- valueDecimal = valueDecimal.substring(0, decimals);
178
- valueDecimal = `.${valueDecimal}`;
179
- }
180
- }
181
- else {
182
- valueInteger = value;
183
- }
184
- let counter = 0;
185
- const VALUE_INTEGER_ARRAY = [];
186
- for (const char of valueInteger.split('').reverse()) {
187
- if (counter == 3) {
188
- VALUE_INTEGER_ARRAY.push(',');
189
- counter = 0;
190
- }
191
- VALUE_INTEGER_ARRAY.push(char);
192
- ++counter;
193
- }
194
- valueInteger = VALUE_INTEGER_ARRAY.reverse().join('');
195
- return `${valueInteger}${valueDecimal}`;
196
- },
197
- /** Wait the time indicated */
198
- Sleep: (milliseconds = 0, reference = null) => {
199
- if (Tools.IsNull(reference)) {
200
- return new Promise(Resolve => setTimeout(Resolve, milliseconds));
201
- }
202
- else
203
- return new Promise(Resolve => {
204
- reference = reference.replaceAll(' ', '_').toLowerCase();
205
- if (reference_signal().hasOwnProperty(reference)) {
206
- clearInterval(reference_signal()[reference]);
207
- }
208
- reference_signal.set(Object.assign(reference_signal(), {
209
- [reference]: setTimeout(() => {
210
- Resolve();
211
- clearInterval(reference_signal()[reference]);
212
- const _reference = { ...reference_signal() };
213
- delete _reference[reference];
214
- reference_signal.set({ ..._reference });
215
- }, milliseconds)
216
- }));
217
- });
218
- }
219
- };
220
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2VyLWVsZW1lbnRzL3NyYy90b29scy9saWIvdG9vbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztBQUV6QyxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUc7SUFDakIsc0JBQXNCO0lBQ3RCLE9BQU8sRUFBRSxDQUFDLE9BQWUsYUFBYSxFQUFFLEVBQUU7UUFDdEMsSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFBO1FBQzdCLE9BQU8sSUFBSSxHQUFHLHVDQUF1QyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN6RSxNQUFNLE1BQU0sR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUNuRCxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUE7WUFDNUIsT0FBTyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ2xFLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUdELHNFQUFzRTtJQUN0RSxNQUFNLEVBQUUsQ0FBSSxLQUEyQixFQUFXLEVBQUU7UUFDaEQsSUFBSSxLQUFLLEtBQUssU0FB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QVUsQ0FBQyxDQUFDO3dCQUM5QixnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLFVBQVUsRUFBRSxDQUFDLENBQUM7b0JBQzVDLENBQUMsRUFBRSxZQUFZLENBQUM7aUJBQ25CLENBQUMsQ0FBQyxDQUFDO1lBQ1IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNpZ25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmNvbnN0IHJlZmVyZW5jZV9zaWduYWwgPSBzaWduYWw8YW55Pih7fSk7XHJcblxyXG5leHBvcnQgY29uc3QgVG9vbHMgPSB7XHJcbiAgICAvKiogR2VuZXJhdGUgYSBHdWlkICovXHJcbiAgICBHZXRHdWlkOiAoc2VlZDogc3RyaW5nID0gJ2NvZXItc3lzdGVtJykgPT4ge1xyXG4gICAgICAgIGxldCB0aW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgc2VlZCA9IHNlZWQudG9TdHJpbmcoKS50cmltKClcclxuICAgICAgICByZXR1cm4gc2VlZCArIGAteHh4eHh4eHgteHh4eC00eHh4LXl4eHgteHh4eHh4eHh4eHh4YC5yZXBsYWNlKC9beHldL2csIChjKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJhbmRvbSA9ICh0aW1lICsgTWF0aC5yYW5kb20oKSAqIDE2KSAlIDE2IHwgMFxyXG4gICAgICAgICAgICB0aW1lID0gTWF0aC5mbG9vcih0aW1lIC8gMTYpXHJcbiAgICAgICAgICAgIHJldHVybiAoYyA9PSAneCcgPyByYW5kb20gOiAocmFuZG9tICYgMHgzIHwgMHg4KSkudG9TdHJpbmcoMTYpXHJcbiAgICAgICAgfSlcclxuICAgIH0sXHJcblxyXG5cclxuICAgIC8qKiBSZXR1cm5zIHRydWUgaWYgdGhlIHZhbHVlIGlzIG51bGwgb3IgdW5kZWZpbmVkLCBmYWxzZSBvdGhlcndpc2UgKi9cclxuICAgIElzTnVsbDogPFQ+KHZhbHVlOiBUIHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4gPT4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICBpZiAodmFsdWUgPT09IG51bGwpIHJldHVybiB0cnVlO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0sXHJcblxyXG5cclxuICAgIC8qKiBSZXR1cm5zIHRydWUgaWYgdGhlIHZhbHVlIGlzIG5vdCBudWxsIG9yIHVuZGVmaW5lZCwgZmFsc2Ugb3RoZXJ3aXNlICovXHJcbiAgICBJc05vdE51bGw6IDxUPih2YWx1ZTogVCB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuID0+IHtcclxuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSxcclxuXHJcblxyXG4gICAgLyoqIFJldHVybnMgdHJ1ZSBpZiB0aGUgdmFsdWUgaXMgbnVsbCBvciB1bmRlZmluZWQgb3IgY29udGFpbnMgb25seSB3aGl0ZXNwYWNlLCBmYWxzZSBvdGhlcndpc2UgKi9cclxuICAgIElzT25seVdoaXRlU3BhY2U6IDxUPih2YWx1ZTogVCB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuID0+IHtcclxuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyAmJiB2YWx1ZS50cmltKCkgPT09ICcnKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICAvKiogUmV0dXJucyB0cnVlIGlmIGhhcyBzdHJpbmcgdmFsdWUgYW5kIGlzIG5vdCBvbmx5IHdoaXRlc3BhY2UsIGZhbHNlIG90aGVyd2lzZSAqL1xyXG4gICAgSXNOb3RPbmx5V2hpdGVTcGFjZTogPFQ+KHZhbHVlOiBUIHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4gPT4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsKSByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgdmFsdWUudHJpbSgpID09PSAnJykgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSxcclxuXHJcblxyXG4gICAgLyoqIEJyZWFrIHJlZmVyZW5jZSBvZiBhIG9iamVjdCBvciBhcnJheSAqL1xyXG4gICAgQnJlYWtSZWZlcmVuY2U6IDxUPihvYmplY3Q6IFQpOiBUID0+IHtcclxuICAgICAgICBpZiAob2JqZWN0ID09PSBudWxsKSByZXR1cm4gb2JqZWN0O1xyXG4gICAgICAgIGlmICh0eXBlb2Ygb2JqZWN0ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIG9iamVjdDtcclxuICAgICAgICBpZiAodHlwZW9mIG9iamVjdCA9PT0gJ3N0cmluZycpIHJldHVybiBvYmplY3Q7XHJcbiAgICAgICAgaWYgKHR5cGVvZiBvYmplY3QgPT09ICdudW1iZXInKSByZXR1cm4gb2JqZWN0O1xyXG4gICAgICAgIGlmICh0eXBlb2Ygb2JqZWN0ID09PSAnYm9vbGVhbicpIHJldHVybiBvYmplY3Q7XHJcbiAgICAgICAgY29uc3QgT0JKRUNUID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShvYmplY3QpKVxyXG4gICAgICAgIHJldHVybiAoQXJyYXkuaXNBcnJheShPQkpFQ1QpKSA/IFsuLi5PQkpFQ1RdIDogeyAuLi5PQkpFQ1QgfVxyXG4gICAgfSxcclxuXHJcblxyXG4gICAgLyoqIENsZWFuIGV4dHJhIHdoaXRlc3BhY2VzICovXHJcbiAgICBDbGVhblVwQmxhbmtzOiAodGV4dDogc3RyaW5nIHwgbnVtYmVyKTogc3RyaW5nID0+IHtcclxuICAgICAgICBpZihUb29scy5Jc051bGwodGV4dCkpIHJldHVybiAnJztcclxuICAgICAgICBsZXQgd29ybGRzOiBzdHJpbmdbXSA9IFN0cmluZyh0ZXh0KS5zcGxpdCgnICcpO1xyXG4gICAgICAgIHdvcmxkcyA9IHdvcmxkcy5maWx0ZXIoeCA9PiB4Lmxlbmd0aCA+IDApO1xyXG4gICAgICAgIHJldHVybiB3b3JsZHMuam9pbignICcpO1xyXG4gICAgfSxcclxuXHJcblxyXG4gICAgLyoqIEdldCBwcm9wZXJ0aWVzIG9mIGFuIG9iamVjdCAqL1xyXG4gICAgR2V0T2JqZWN0UHJvcGVydGllczogPFQ+KG9iajogVCB8IG51bGwgfCB1bmRlZmluZWQpOiBzdHJpbmdbXSA9PiB7XHJcbiAgICAgICAgY29uc3QgcHJvcGVydGllczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgICBpZiAob2JqID09PSBudWxsKSByZXR1cm4gcHJvcGVydGllcztcclxuICAgICAgICBpZiAodHlwZW9mIG9iaiA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiBwcm9wZXJ0aWVzO1xyXG4gICAgICAgIGlmICh0eXBlb2Ygb2JqID09PSAnc3RyaW5nJykgcmV0dXJuIHByb3BlcnRpZXM7XHJcbiAgICAgICAgaWYgKHR5cGVvZiBvYmogPT09ICdudW1iZXInKSByZXR1cm4gcHJvcGVydGllcztcclxuICAgICAgICBpZiAodHlwZW9mIG9iaiA9PT0gJ2Jvb2xlYW4nKSByZXR1cm4gcHJvcGVydGllcztcclxuICAgICAgICBmb3IoY29uc3QgcHJvcGVydHkgaW4gb2JqKSBwcm9wZXJ0aWVzLnB1c2goU3RyaW5nKHByb3BlcnR5KSk7XHJcbiAgICAgICAgcmV0dXJuIHByb3BlcnRpZXM7XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFNldCBhbiBpbmRleCBhbmQgbWVyZ2UgbW9yZSBhcnJheXMgb2YgdGhlIHNhbWUgdHlwZVxyXG4gICAgICogKi9cclxuICAgIFNldEluZGV4OiA8VD4oYXJyYXk6IFRbXSwgLi4uYXJnczogVFtdW10pOiBUW10gPT4ge1xyXG4gICAgICAgIGxldCBpbmRleCA9IDA7XHJcbiAgICAgICAgZm9yIChjb25zdCBhcmcgb2YgYXJncykge1xyXG4gICAgICAgICAgICBhcnJheSA9IFRvb2xzLkJyZWFrUmVmZXJlbmNlKGFycmF5KS5jb25jYXQoVG9vbHMuQnJlYWtSZWZlcmVuY2UoYXJnKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gVG9vbHMuQnJlYWtSZWZlcmVuY2UoYXJyYXkpLm1hcChpdGVtID0+IE9iamVjdC5hc3NpZ24oeyBpbmRleDogaW5kZXgrKyB9LCBpdGVtKSk7XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICAvKiogU2V0IEZpcnN0IENoYXIgVG8gTG93ZXIgKi9cclxuICAgIEZpcnN0Q2hhclRvTG93ZXI6ICh0ZXh0OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nID0+IHtcclxuICAgICAgICBpZiAoVG9vbHMuSXNPbmx5V2hpdGVTcGFjZSh0ZXh0KSkgcmV0dXJuICcnO1xyXG5cclxuICAgICAgICBjb25zdCB0ZXh0QXJyYXk6IHN0cmluZ1tdID0gW107XHJcbiAgICAgICAgZm9yKGxldCBpID0gMDsgaSA8IHRleHQhLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmKGkgPT09IDApIHRleHRBcnJheS5wdXNoKHRleHQhW2ldLnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgICAgICAgICBlbHNlIHRleHRBcnJheS5wdXNoKHRleHQhW2ldKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0ZXh0QXJyYXkuam9pbignJyk7XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICAvKiogU2V0IEZpcnN0IENoYXIgVG8gVXBwZXIgKi9cclxuICAgIEZpcnN0Q2hhclRvVXBwZXI6ICh0ZXh0OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nID0+IHtcclxuICAgICAgICBpZiAoVG9vbHMuSXNPbmx5V2hpdGVTcGFjZSh0ZXh0KSkgcmV0dXJuICcnO1xyXG5cclxuICAgICAgICBjb25zdCB0ZXh0QXJyYXk6IHN0cmluZ1tdID0gW107XHJcbiAgICAgICAgZm9yKGxldCBpID0gMDsgaSA8IHRleHQhLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmKGkgPT09IDApIHRleHRBcnJheS5wdXNoKHRleHQhW2ldLnRvVXBwZXJDYXNlKCkpO1xyXG4gICAgICAgICAgICBlbHNlIHRleHRBcnJheS5wdXNoKHRleHQhW2ldKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0ZXh0QXJyYXkuam9pbignJyk7XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICAvKiogU29ydCBhbiBhcnJheSBpbiBhc2NlbmRpbmcgb3JkZXIgYnkgcHJvcGVydHkgKi9cclxuICAgIFNvcnRCeTogPFQ+KGFycmF5OiBUW10sIHByb3BlcnR5OiBzdHJpbmcsIHByb3BlcnR5VHlwZTogJ3N0cmluZycgfCAnbnVtYmVyJyA9ICdzdHJpbmcnKTogVFtdID0+IHtcclxuICAgICAgICBzd2l0Y2ggKHByb3BlcnR5VHlwZSkge1xyXG4gICAgICAgICAgICBjYXNlICdzdHJpbmcnOiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYXJyYXkuc29ydCgoeDogYW55LCB5OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoU3RyaW5nKHhbcHJvcGVydHldKS50b1VwcGVyQ2FzZSgpLnRyaW0oKSA8IFN0cmluZyh5W3Byb3BlcnR5XSkudG9VcHBlckNhc2UoKS50cmltKCkpIHJldHVybiAtMTtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChTdHJpbmcoeFtwcm9wZXJ0eV0pLnRvVXBwZXJDYXNlKCkudHJpbSgpID4gU3RyaW5nKHlbcHJvcGVydHldKS50b1VwcGVyQ2FzZSgpLnRyaW0oKSkgcmV0dXJuIDE7XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSByZXR1cm4gMDtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBjYXNlICdudW1iZXInOiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYXJyYXkuc29ydCgoeDogYW55LCB5OiBhbnkpID0+IE51bWJlcih4W3Byb3BlcnR5XSAtIE51bWJlcih5W3Byb3BlcnR5XSkpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0sXHJcblxyXG5cclxuICAgIC8qKiBTb3J0IGFuIGFycmF5IGluIGRlc2NlbmRpbmcgb3JkZXIgYnkgcHJvcGVydHkgKi9cclxuICAgIFNvcnRCeURlc2M6IDxUPihhcnJheTogVFtdLCBwcm9wZXJ0eTogc3RyaW5nLCBwcm9wZXJ0eVR5cGU6ICdzdHJpbmcnIHwgJ251bWJlcicgPSAnc3RyaW5nJyk6IFRbXSA9PiB7XHJcbiAgICAgICAgc3dpdGNoIChwcm9wZXJ0eVR5cGUpIHtcclxuICAgICAgICAgICAgY2FzZSAnc3RyaW5nJzoge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFycmF5LnNvcnQoKHg6IGFueSwgeTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKFN0cmluZyh4W3Byb3BlcnR5XSkudG9VcHBlckNhc2UoKS50cmltKCkgPCBTdHJpbmcoeVtwcm9wZXJ0eV0pLnRvVXBwZXJDYXNlKCkudHJpbSgpKSByZXR1cm4gMTtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChTdHJpbmcoeFtwcm9wZXJ0eV0pLnRvVXBwZXJDYXNlKCkudHJpbSgpID4gU3RyaW5nKHlbcHJvcGVydHldKS50b1VwcGVyQ2FzZSgpLnRyaW0oKSkgcmV0dXJuIC0xO1xyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgcmV0dXJuIDA7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY2FzZSAnbnVtYmVyJzoge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFycmF5LnNvcnQoKHg6IGFueSwgeTogYW55KSA9PiBOdW1iZXIoTnVtYmVyKHlbcHJvcGVydHldKSkgLSB4W3Byb3BlcnR5XSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICAvKiogUmV0dXJuIGEgc3RyaW5nIHdpdGggZm9ybWFuIG51bWVyaWMgKi9cclxuICAgIEdldE51bWVyaWNGb3JtYXQ6ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCwgZGVjaW1hbHM6IG51bWJlciA9IDApOiBzdHJpbmcgPT4ge1xyXG4gICAgICAgIGlmIChUb29scy5Jc09ubHlXaGl0ZVNwYWNlKHZhbHVlKSB8fCBpc05hTihOdW1iZXIodmFsdWUpKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gJzAnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IHZhbHVlSW50ZWdlciA9ICcnO1xyXG4gICAgICAgIGxldCB2YWx1ZURlY2ltYWwgPSAnJztcclxuICAgICAgICB2YWx1ZSA9IHZhbHVlIS50b1N0cmluZygpLnJlcGxhY2VBbGwoJyAnLCAnJyk7XHJcblxyXG4gICAgICAgIGlmICh2YWx1ZS5pbmNsdWRlcygnLicpIHx8IChkZWNpbWFscyA+IDApKSB7XHJcbiAgICAgICAgICAgIHZhbHVlSW50ZWdlciA9IHZhbHVlLmluY2x1ZGVzKCcuJykgPyB2YWx1ZS5zcGxpdCgnLicpWzBdIDogdmFsdWU7XHJcblxyXG4gICAgICAgICAgICBpZiAoZGVjaW1hbHMgPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBQQURESU5HID0gZGVjaW1hbHMgLSB2YWx1ZURlY2ltYWwubGVuZ3RoO1xyXG4gICAgICAgICAgICAgICAgdmFsdWVEZWNpbWFsID0gdmFsdWUuaW5jbHVkZXMoJy4nKSA/IHZhbHVlLnNwbGl0KCcuJylbMV0gOiAnJztcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9IDA7IGkgPCBQQURESU5HOyBpKyspIHZhbHVlRGVjaW1hbCArPSAnMCc7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZURlY2ltYWwgPSB2YWx1ZURlY2ltYWwuc3Vic3RyaW5nKDAsIGRlY2ltYWxzKTtcclxuICAgICAgICAgICAgICAgIHZhbHVlRGVjaW1hbCA9IGAuJHt2YWx1ZURlY2ltYWx9YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHZhbHVlSW50ZWdlciA9IHZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IGNvdW50ZXIgPSAwO1xyXG4gICAgICAgIGNvbnN0IFZBTFVFX0lOVEVHRVJfQVJSQVk6IHN0cmluZ1tdID0gW107XHJcbiAgICAgICAgZm9yKGNvbnN0IGNoYXIgb2YgdmFsdWVJbnRlZ2VyLnNwbGl0KCcnKS5yZXZlcnNlKCkpIHtcclxuICAgICAgICAgICAgaWYgKGNvdW50ZXIgPT0gMykge1xyXG4gICAgICAgICAgICAgICAgVkFMVUVfSU5URUdFUl9BUlJBWS5wdXNoKCcsJyk7XHJcbiAgICAgICAgICAgICAgICBjb3VudGVyID0gMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgVkFMVUVfSU5URUdFUl9BUlJBWS5wdXNoKGNoYXIpO1xyXG4gICAgICAgICAgICArK2NvdW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB2YWx1ZUludGVnZXIgPSBWQUxVRV9JTlRFR0VSX0FSUkFZLnJldmVyc2UoKS5qb2luKCcnKTtcclxuICAgICAgICByZXR1cm4gYCR7dmFsdWVJbnRlZ2VyfSR7dmFsdWVEZWNpbWFsfWA7XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICAvKiogV2FpdCB0aGUgdGltZSBpbmRpY2F0ZWQgKi9cclxuICAgIFNsZWVwOiAobWlsbGlzZWNvbmRzOiBudW1iZXIgPSAwLCByZWZlcmVuY2U6IHN0cmluZyB8IG51bGwgPSBudWxsKSA9PiB7XHJcbiAgICAgICAgaWYgKFRvb2xzLklzTnVsbChyZWZlcmVuY2UpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShSZXNvbHZlID0+IHNldFRpbWVvdXQoUmVzb2x2ZSwgbWlsbGlzZWNvbmRzKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBlbHNlIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPihSZXNvbHZlID0+IHtcclxuICAgICAgICAgICAgcmVmZXJlbmNlID0gcmVmZXJlbmNlIS5yZXBsYWNlQWxsKCcgJywgJ18nKS50b0xvd2VyQ2FzZSgpO1xyXG5cclxuICAgICAgICAgICAgaWYgKHJlZmVyZW5jZV9zaWduYWwoKS5oYXNPd25Qcm9wZXJ0eShyZWZlcmVuY2UpKSB7XHJcbiAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHJlZmVyZW5jZV9zaWduYWwoKVtyZWZlcmVuY2UhXSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJlZmVyZW5jZV9zaWduYWwuc2V0KE9iamVjdC5hc3NpZ24ocmVmZXJlbmNlX3NpZ25hbCgpLCB7XHJcbiAgICAgICAgICAgICAgICBbcmVmZXJlbmNlIV06IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIFJlc29sdmUoKTtcclxuICAgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHJlZmVyZW5jZV9zaWduYWwoKVtyZWZlcmVuY2UhXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgX3JlZmVyZW5jZSA9IHsgLi4ucmVmZXJlbmNlX3NpZ25hbCgpIH07XHJcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlIF9yZWZlcmVuY2VbcmVmZXJlbmNlIV07XHJcbiAgICAgICAgICAgICAgICAgICAgcmVmZXJlbmNlX3NpZ25hbC5zZXQoeyAuLi5fcmVmZXJlbmNlIH0pO1xyXG4gICAgICAgICAgICAgICAgfSwgbWlsbGlzZWNvbmRzKVxyXG4gICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn07Il19
@@ -1,33 +0,0 @@
1
- export * from './lib/coer-filebox/file-image.interface';
2
- export * from './lib/coer-filebox/file.interface';
3
- export * from './lib/coer-grid/grid-button-by-row.interface';
4
- export * from './lib/coer-grid/grid-checkbox.interface';
5
- export * from './lib/coer-grid/grid-coer-numberbox.interface';
6
- export * from './lib/coer-grid/grid-coer-selectbox.interface';
7
- export * from './lib/coer-grid/grid-coer-switch.interface';
8
- export * from './lib/coer-grid/grid-coer-textbox.interface';
9
- export * from './lib/coer-grid/grid-column.interface';
10
- export * from './lib/coer-grid/grid-data-source.interface';
11
- export * from './lib/coer-grid/grid-header-button.interface';
12
- export * from './lib/coer-grid/grid-header-export-button.interface';
13
- export * from './lib/coer-grid/grid-header.interface';
14
- export * from './lib/coer-grid/grid-import.interface';
15
- export * from './lib/coer-grid/grid-input-checkbox.interface';
16
- export * from './lib/coer-grid/grid-input-switch-change.interface';
17
- export * from './lib/coer-grid/grid-input-textbox.interface';
18
- export * from './lib/coer-grid/grid-item.interface';
19
- export * from './lib/coer-grid/grid-keyup-enter.interface';
20
- export * from './lib/coer-grid/grid-length.interface';
21
- export * from './lib/coer-grid/grid-search.interface';
22
- export * from './lib/coer-grid/grid-sort.interface';
23
- export * from './lib/coer-menu/menu-option-selected.interface';
24
- export * from './lib/coer-menu/menu-selected.interface';
25
- export * from './lib/coer-menu/menu.interface';
26
- export * from './lib/page-title/breadcrumb.interface';
27
- export * from './lib/page-title/go-back.interface';
28
- export * from './lib/service/http-request.interface';
29
- export * from './lib/service/http-response.interface';
30
- export * from './lib/service/patch.interface';
31
- export * from './lib/app-source.interface';
32
- export * from './lib/coer-ref.interface';
33
- export * from './lib/screen-size.interface';
@@ -1,4 +0,0 @@
1
- export interface IAppSource {
2
- page: string;
3
- path: string;
4
- }
@@ -1,14 +0,0 @@
1
- export interface IFileImage {
2
- value: string | File | null | undefined;
3
- name?: string;
4
- width?: string;
5
- maxWidth?: string;
6
- height?: string;
7
- maxHeight?: string;
8
- marginTop?: string;
9
- marginRight?: string;
10
- marginBottom?: string;
11
- marginLeft?: string;
12
- allowDelete?: boolean;
13
- allowExpand?: boolean;
14
- }
@@ -1,5 +0,0 @@
1
- export interface IFile {
2
- file: File;
3
- extension: string;
4
- base64: string | null;
5
- }
@@ -1,6 +0,0 @@
1
- import { IGridItem } from "./grid-item.interface";
2
- export interface IGridButtonByRow<T> {
3
- showEditButton?: boolean | ((item: IGridItem<T>) => boolean);
4
- showDeleteButton?: boolean | ((item: IGridItem<T>) => boolean);
5
- showGoButton?: boolean | ((item: IGridItem<T>) => boolean);
6
- }
@@ -1,5 +0,0 @@
1
- export interface IGridCheckbox {
2
- show: boolean;
3
- onlyOneCheck?: boolean;
4
- checkOnRow?: boolean;
5
- }
@@ -1,12 +0,0 @@
1
- export interface IGridCoerNumberBox {
2
- isInput: boolean;
3
- isDisabled?: boolean;
4
- isValid?: boolean;
5
- isInvalid?: boolean;
6
- selectOnFocus?: boolean;
7
- placeholder?: string;
8
- textPosition?: 'left' | 'center' | 'right';
9
- min?: number;
10
- max?: number;
11
- decimals?: number;
12
- }
@@ -1,9 +0,0 @@
1
- export interface IGridCoerSelectBox {
2
- isInput: boolean;
3
- isDisabled?: boolean;
4
- isValid?: boolean;
5
- isInvalid?: boolean;
6
- placeholder?: string;
7
- propDisplay?: string;
8
- dataSource?: any[];
9
- }
@@ -1,6 +0,0 @@
1
- export interface IGridCoerSwitch {
2
- isInput: boolean;
3
- isDisabled?: boolean;
4
- tooltip?: string;
5
- tooltipPosition?: 'top' | 'right' | 'bottom' | 'left';
6
- }
@@ -1,11 +0,0 @@
1
- export interface IGridCoerTextBox {
2
- isInput: boolean;
3
- isDisabled?: boolean;
4
- isValid?: boolean;
5
- isInvalid?: boolean;
6
- selectOnFocus?: boolean;
7
- placeholder?: string;
8
- textPosition?: 'left' | 'center' | 'right';
9
- minLength?: number;
10
- maxLength?: number;
11
- }
@@ -1,22 +0,0 @@
1
- import { IGridCoerNumberBox } from "./grid-coer-numberbox.interface";
2
- import { IGridCoerSelectBox } from "./grid-coer-selectbox.interface";
3
- import { IGridCoerSwitch } from "./grid-coer-switch.interface";
4
- import { IGridCoerTextBox } from "./grid-coer-textbox.interface";
5
- import { IGridItem } from "./grid-item.interface";
6
- export interface IGridColumn<T> {
7
- property: string;
8
- alias?: string;
9
- width?: string;
10
- textAlign?: 'left' | 'center' | 'right';
11
- colorBlue?: boolean | ((item: IGridItem<T>) => boolean);
12
- colorGreen?: boolean | ((item: IGridItem<T>) => boolean);
13
- colorYellow?: boolean | ((item: IGridItem<T>) => boolean);
14
- colorRed?: boolean | ((item: IGridItem<T>) => boolean);
15
- typeNumber?: boolean | ((item: IGridItem<T>) => boolean);
16
- typeDate?: boolean | ((item: IGridItem<T>) => boolean);
17
- template?: string | ((item: IGridItem<T>) => string);
18
- coerSwitch?: ((item: IGridItem<T>) => IGridCoerSwitch);
19
- coerTextbox?: ((item: IGridItem<T>) => IGridCoerTextBox);
20
- coerNumberbox?: ((item: IGridItem<T>) => IGridCoerNumberBox);
21
- coerSelectbox?: ((item: IGridItem<T>) => IGridCoerSelectBox);
22
- }
@@ -1,6 +0,0 @@
1
- export interface IGridDataSource {
2
- groupBy: string;
3
- indexGroup: number;
4
- length: number;
5
- rows: any[];
6
- }
@@ -1,8 +0,0 @@
1
- export interface IGridHeaderButton {
2
- show: boolean;
3
- path?: string | (string | number)[];
4
- tooltip?: string;
5
- isDisabled?: boolean;
6
- preventDefault?: boolean;
7
- Autofill?: boolean;
8
- }
@@ -1,10 +0,0 @@
1
- export interface IGridHeaderExportButton {
2
- show: boolean;
3
- path?: string | (string | number)[];
4
- tooltip?: string;
5
- isDisabled?: boolean;
6
- fileName?: string;
7
- onlyColumnFiltered?: boolean;
8
- onlyRowFiltered?: boolean;
9
- preventDefault?: boolean;
10
- }
@@ -1,5 +0,0 @@
1
- export interface IGridHeader {
2
- indexColumn: number;
3
- columnName: string;
4
- width: string;
5
- }
@@ -1,4 +0,0 @@
1
- export interface IGridImport<T> {
2
- data: T[];
3
- file: File | null;
4
- }
@@ -1,5 +0,0 @@
1
- export interface IGridInputCheckbox<T> {
2
- all: boolean;
3
- checked: boolean;
4
- rows: T[];
5
- }
@@ -1,5 +0,0 @@
1
- export interface IGridInputSwitchChange<T> {
2
- property: string;
3
- row: T;
4
- value: any;
5
- }
@@ -1,5 +0,0 @@
1
- export interface IGridInputTextbox<T> {
2
- property: string;
3
- row: T;
4
- value: any;
5
- }
@@ -1,5 +0,0 @@
1
- export interface IGridItem<T> {
2
- property: string;
3
- row: T;
4
- value: any;
5
- }
@@ -1,6 +0,0 @@
1
- export interface IGridKeyupEnter {
2
- id: string;
3
- input: 'coer-textbox-search' | 'coer-textbox' | 'coer-numberbox' | 'coer-selectbox';
4
- row: any;
5
- value: any;
6
- }
@@ -1,5 +0,0 @@
1
- export interface IGridLength {
2
- dataSource: number;
3
- dataSourceFiltered: number;
4
- dataSourceSelected: number;
5
- }
@@ -1,4 +0,0 @@
1
- export interface IGridSearch {
2
- show: boolean;
3
- ignore?: boolean;
4
- }
@@ -1,5 +0,0 @@
1
- export interface IGridSort {
2
- columnName: string;
3
- direction: 'ascendant' | 'descendant' | 'none';
4
- icon: 'fa-solid fa-arrow-up-wide-short' | 'fa-solid fa-arrow-down-short-wide' | '';
5
- }
@@ -1,9 +0,0 @@
1
- import { IMenu } from "./menu.interface";
2
- export interface IMenuOptionSelected {
3
- level: number;
4
- label: string;
5
- icon: string;
6
- path: string;
7
- queryParams: string;
8
- tree: IMenu[];
9
- }
@@ -1,10 +0,0 @@
1
- import { IMenu } from "./menu.interface";
2
- export interface IMenuSelected {
3
- level: number;
4
- label: string;
5
- icon: string;
6
- isExpanded: boolean;
7
- isCollapsed: boolean;
8
- items?: IMenu[];
9
- tree: IMenu[];
10
- }
@@ -1,6 +0,0 @@
1
- export interface IMenu {
2
- label: string;
3
- icon?: string;
4
- path?: string;
5
- items?: IMenu[];
6
- }
@@ -1,10 +0,0 @@
1
- import { TemplateRef, WritableSignal } from '@angular/core';
2
- export interface ICoerRef {
3
- coerRef: WritableSignal<string>;
4
- title: WritableSignal<string>;
5
- icon: WritableSignal<string>;
6
- isDisabled: WritableSignal<boolean>;
7
- show: WritableSignal<boolean>;
8
- tooltip: WritableSignal<string>;
9
- template: TemplateRef<any>;
10
- }