@resolveio/client-lib-core 16.0.0 → 21.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/fesm2022/resolveio-client-lib-core.min.mjs +1 -0
  2. package/package.json +10 -8
  3. package/types/resolveio-client-lib-core.d.ts +1904 -0
  4. package/esm2022/lib/account-manager.service.mjs +0 -229
  5. package/esm2022/lib/auth/auth-guard.service.mjs +0 -174
  6. package/esm2022/lib/auth/auth-permissions.service.mjs +0 -23
  7. package/esm2022/lib/auth/auth.service.mjs +0 -251
  8. package/esm2022/lib/auth/auth365.component.mjs +0 -51
  9. package/esm2022/lib/auth/can-deactivate-guard.service.mjs +0 -13
  10. package/esm2022/lib/auth/enroll.component.mjs +0 -88
  11. package/esm2022/lib/auth/forgot-password.component.mjs +0 -89
  12. package/esm2022/lib/core.component.mjs +0 -404
  13. package/esm2022/lib/core.module.mjs +0 -176
  14. package/esm2022/lib/core.service.mjs +0 -88
  15. package/esm2022/lib/directive/focus.mjs +0 -24
  16. package/esm2022/lib/directive/scroll.mjs +0 -54
  17. package/esm2022/lib/home/home.component.mjs +0 -84
  18. package/esm2022/lib/logger/logger.component.mjs +0 -229
  19. package/esm2022/lib/models/app-status.model.mjs +0 -2
  20. package/esm2022/lib/models/collection-document.model.mjs +0 -2
  21. package/esm2022/lib/models/cron-job.model.mjs +0 -2
  22. package/esm2022/lib/models/dialog.model.mjs +0 -2
  23. package/esm2022/lib/models/file.model.mjs +0 -2
  24. package/esm2022/lib/models/log-method-latency.model.mjs +0 -2
  25. package/esm2022/lib/models/navbar-main-tab.model.mjs +0 -2
  26. package/esm2022/lib/models/pagination.model.mjs +0 -2
  27. package/esm2022/lib/models/permission.model.mjs +0 -2
  28. package/esm2022/lib/models/select-data-label.model.mjs +0 -2
  29. package/esm2022/lib/models/subscription.model.mjs +0 -2
  30. package/esm2022/lib/models/support-ticket.model.mjs +0 -2
  31. package/esm2022/lib/models/user-group.model.mjs +0 -2
  32. package/esm2022/lib/models/user.model.mjs +0 -2
  33. package/esm2022/lib/offline-db.mjs +0 -519
  34. package/esm2022/lib/offline-manager.service.mjs +0 -109
  35. package/esm2022/lib/pipes/domsanitizor.pipe.mjs +0 -29
  36. package/esm2022/lib/pipes/filter.pipe.mjs +0 -36
  37. package/esm2022/lib/pipes/json-parse.pipe.mjs +0 -29
  38. package/esm2022/lib/pipes/minus-currency.pipe.mjs +0 -16
  39. package/esm2022/lib/pipes/phone.pipe.mjs +0 -47
  40. package/esm2022/lib/pipes/pipe.module.mjs +0 -54
  41. package/esm2022/lib/pipes/reverse-list.pipe.mjs +0 -17
  42. package/esm2022/lib/pipes/titlecase.pipe.mjs +0 -22
  43. package/esm2022/lib/report-builder.permission.mjs +0 -13
  44. package/esm2022/lib/resolveio-class.mjs +0 -50
  45. package/esm2022/lib/shared/shared.module.mjs +0 -96
  46. package/esm2022/lib/socket-manager.service.mjs +0 -340
  47. package/esm2022/lib/socket.service.mjs +0 -200
  48. package/esm2022/lib/super-admin.permission.mjs +0 -9
  49. package/esm2022/lib/support-ticket/detail/support-ticket-detail.component.mjs +0 -211
  50. package/esm2022/lib/support-ticket/edit/support-ticket-edit.component.mjs +0 -131
  51. package/esm2022/lib/support-ticket/list/support-ticket-list.component.mjs +0 -142
  52. package/esm2022/lib/support-ticket/new/support-ticket-new.component.mjs +0 -121
  53. package/esm2022/lib/support-ticket/support-ticket.component.mjs +0 -67
  54. package/esm2022/lib/support-ticket/support-ticket.module.mjs +0 -50
  55. package/esm2022/lib/support-ticket/support-ticket.routing.mjs +0 -20
  56. package/esm2022/lib/support-ticket/support-ticket.service.mjs +0 -16
  57. package/esm2022/lib/token-manager.service.mjs +0 -25
  58. package/esm2022/lib/user-settings/settings/users-settings.component.mjs +0 -302
  59. package/esm2022/lib/user-settings/user-settings.component.mjs +0 -61
  60. package/esm2022/lib/user-settings/user-settings.module.mjs +0 -41
  61. package/esm2022/lib/user-settings/user-settings.permission.mjs +0 -10
  62. package/esm2022/lib/user-settings/user-settings.routing.mjs +0 -14
  63. package/esm2022/lib/user-settings/user-settings.service.mjs +0 -16
  64. package/esm2022/lib/util/action-name.helper.mjs +0 -9
  65. package/esm2022/lib/util/aws.service.mjs +0 -80
  66. package/esm2022/lib/util/common.helper.mjs +0 -133
  67. package/esm2022/lib/util/validation.service.mjs +0 -185
  68. package/esm2022/lib/util/window-resize.service.mjs +0 -38
  69. package/esm2022/lib/util/window.service.mjs +0 -16
  70. package/esm2022/lib/widgets/alert/alert.model.mjs +0 -2
  71. package/esm2022/lib/widgets/alert/alert.service.mjs +0 -79
  72. package/esm2022/lib/widgets/collapse-table/collapse-table.component.mjs +0 -83
  73. package/esm2022/lib/widgets/collapse-table/collapse-table.module.mjs +0 -34
  74. package/esm2022/lib/widgets/data-table/data-table.component.mjs +0 -84
  75. package/esm2022/lib/widgets/data-table/data-table.model.mjs +0 -2
  76. package/esm2022/lib/widgets/data-table/data-table.module.mjs +0 -41
  77. package/esm2022/lib/widgets/date-shortcut/date-shortcut.component.mjs +0 -198
  78. package/esm2022/lib/widgets/date-shortcut/date-shortcut.module.mjs +0 -32
  79. package/esm2022/lib/widgets/dialog/dialog.confirm.content.mjs +0 -67
  80. package/esm2022/lib/widgets/dialog/dialog.error.content.mjs +0 -60
  81. package/esm2022/lib/widgets/dialog/dialog.input.content.mjs +0 -200
  82. package/esm2022/lib/widgets/dialog/dialog.login.content.mjs +0 -354
  83. package/esm2022/lib/widgets/dialog/dialog.notify.content.mjs +0 -60
  84. package/esm2022/lib/widgets/dialog/dialog.register.content.mjs +0 -333
  85. package/esm2022/lib/widgets/dialog/dialog.select-array-objs.content.mjs +0 -203
  86. package/esm2022/lib/widgets/dialog/dialog.select-array.content.mjs +0 -310
  87. package/esm2022/lib/widgets/dialog/dialog.select-data-labels.content.mjs +0 -196
  88. package/esm2022/lib/widgets/dialog/dialog.select-datetime.content.mjs +0 -191
  89. package/esm2022/lib/widgets/dialog/dialog.select-with-buttons-url.content.mjs +0 -166
  90. package/esm2022/lib/widgets/dialog/dialog.service.mjs +0 -98
  91. package/esm2022/lib/widgets/file/file-upload.component.mjs +0 -433
  92. package/esm2022/lib/widgets/file/file-upload.module.mjs +0 -48
  93. package/esm2022/lib/widgets/form-button/form-button.component.mjs +0 -97
  94. package/esm2022/lib/widgets/form-button/form-button.module.mjs +0 -28
  95. package/esm2022/lib/widgets/navbar-main/navbar-main.component.mjs +0 -222
  96. package/esm2022/lib/widgets/navbar-module/navbar-module.component.mjs +0 -108
  97. package/esm2022/lib/widgets/navbar-module/navbar-module.model.mjs +0 -2
  98. package/esm2022/lib/widgets/responsive-button-group/responsive-button-group.component.mjs +0 -41
  99. package/esm2022/lib/widgets/responsive-button-group/responsive-button-group.module.mjs +0 -24
  100. package/esm2022/lib/widgets/scheduler/scheduler.component.mjs +0 -186
  101. package/esm2022/lib/widgets/scheduler/scheduler.module.mjs +0 -37
  102. package/esm2022/lib/widgets/sort-table/sort-table-header.component.mjs +0 -72
  103. package/esm2022/lib/widgets/sort-table/sort-table-ngfor.component.mjs +0 -49
  104. package/esm2022/lib/widgets/sort-table/sort-table.directive.mjs +0 -177
  105. package/esm2022/lib/widgets/sort-table/sort-table.module.mjs +0 -38
  106. package/esm2022/lib/widgets/user-role/user-role.component.mjs +0 -29
  107. package/esm2022/lib/widgets/user-role/user-role.module.mjs +0 -24
  108. package/esm2022/public_api.mjs +0 -91
  109. package/esm2022/resolveio-client-lib-core.mjs +0 -5
  110. package/fesm2022/resolveio-client-lib-core.mjs +0 -9019
  111. package/fesm2022/resolveio-client-lib-core.mjs.map +0 -1
  112. package/index.d.ts +0 -5
  113. package/lib/account-manager.service.d.ts +0 -41
  114. package/lib/auth/auth-guard.service.d.ts +0 -26
  115. package/lib/auth/auth-permissions.service.d.ts +0 -10
  116. package/lib/auth/auth.service.d.ts +0 -30
  117. package/lib/auth/auth365.component.d.ts +0 -20
  118. package/lib/auth/can-deactivate-guard.service.d.ts +0 -10
  119. package/lib/auth/enroll.component.d.ts +0 -28
  120. package/lib/auth/forgot-password.component.d.ts +0 -28
  121. package/lib/core.component.d.ts +0 -63
  122. package/lib/core.module.d.ts +0 -34
  123. package/lib/core.service.d.ts +0 -49
  124. package/lib/directive/focus.d.ts +0 -10
  125. package/lib/directive/scroll.d.ts +0 -20
  126. package/lib/home/home.component.d.ts +0 -28
  127. package/lib/logger/logger.component.d.ts +0 -37
  128. package/lib/models/app-status.model.d.ts +0 -4
  129. package/lib/models/collection-document.model.d.ts +0 -6
  130. package/lib/models/cron-job.model.d.ts +0 -13
  131. package/lib/models/dialog.model.d.ts +0 -23
  132. package/lib/models/file.model.d.ts +0 -9
  133. package/lib/models/log-method-latency.model.d.ts +0 -7
  134. package/lib/models/navbar-main-tab.model.d.ts +0 -14
  135. package/lib/models/pagination.model.d.ts +0 -17
  136. package/lib/models/permission.model.d.ts +0 -14
  137. package/lib/models/select-data-label.model.d.ts +0 -9
  138. package/lib/models/subscription.model.d.ts +0 -19
  139. package/lib/models/support-ticket.model.d.ts +0 -71
  140. package/lib/models/user-group.model.d.ts +0 -19
  141. package/lib/models/user.model.d.ts +0 -70
  142. package/lib/offline-db.d.ts +0 -28
  143. package/lib/offline-manager.service.d.ts +0 -23
  144. package/lib/pipes/domsanitizor.pipe.d.ts +0 -10
  145. package/lib/pipes/filter.pipe.d.ts +0 -12
  146. package/lib/pipes/json-parse.pipe.d.ts +0 -7
  147. package/lib/pipes/minus-currency.pipe.d.ts +0 -7
  148. package/lib/pipes/phone.pipe.d.ts +0 -7
  149. package/lib/pipes/pipe.module.d.ts +0 -13
  150. package/lib/pipes/reverse-list.pipe.d.ts +0 -6
  151. package/lib/pipes/titlecase.pipe.d.ts +0 -7
  152. package/lib/report-builder.permission.d.ts +0 -2
  153. package/lib/resolveio-class.d.ts +0 -26
  154. package/lib/shared/shared.module.d.ts +0 -17
  155. package/lib/socket-manager.service.d.ts +0 -36
  156. package/lib/socket.service.d.ts +0 -38
  157. package/lib/super-admin.permission.d.ts +0 -2
  158. package/lib/support-ticket/detail/support-ticket-detail.component.d.ts +0 -32
  159. package/lib/support-ticket/edit/support-ticket-edit.component.d.ts +0 -30
  160. package/lib/support-ticket/list/support-ticket-list.component.d.ts +0 -26
  161. package/lib/support-ticket/new/support-ticket-new.component.d.ts +0 -26
  162. package/lib/support-ticket/support-ticket.component.d.ts +0 -20
  163. package/lib/support-ticket/support-ticket.module.d.ts +0 -15
  164. package/lib/support-ticket/support-ticket.routing.d.ts +0 -3
  165. package/lib/support-ticket/support-ticket.service.d.ts +0 -9
  166. package/lib/token-manager.service.d.ts +0 -11
  167. package/lib/user-settings/settings/users-settings.component.d.ts +0 -54
  168. package/lib/user-settings/user-settings.component.d.ts +0 -20
  169. package/lib/user-settings/user-settings.module.d.ts +0 -12
  170. package/lib/user-settings/user-settings.permission.d.ts +0 -2
  171. package/lib/user-settings/user-settings.routing.d.ts +0 -3
  172. package/lib/user-settings/user-settings.service.d.ts +0 -9
  173. package/lib/util/action-name.helper.d.ts +0 -1
  174. package/lib/util/aws.service.d.ts +0 -16
  175. package/lib/util/common.helper.d.ts +0 -12
  176. package/lib/util/validation.service.d.ts +0 -88
  177. package/lib/util/window-resize.service.d.ts +0 -13
  178. package/lib/util/window.service.d.ts +0 -6
  179. package/lib/widgets/alert/alert.model.d.ts +0 -1
  180. package/lib/widgets/alert/alert.service.d.ts +0 -11
  181. package/lib/widgets/collapse-table/collapse-table.component.d.ts +0 -23
  182. package/lib/widgets/collapse-table/collapse-table.module.d.ts +0 -9
  183. package/lib/widgets/data-table/data-table.component.d.ts +0 -23
  184. package/lib/widgets/data-table/data-table.model.d.ts +0 -13
  185. package/lib/widgets/data-table/data-table.module.d.ts +0 -12
  186. package/lib/widgets/date-shortcut/date-shortcut.component.d.ts +0 -20
  187. package/lib/widgets/date-shortcut/date-shortcut.module.d.ts +0 -10
  188. package/lib/widgets/dialog/dialog.confirm.content.d.ts +0 -12
  189. package/lib/widgets/dialog/dialog.error.content.d.ts +0 -11
  190. package/lib/widgets/dialog/dialog.input.content.d.ts +0 -18
  191. package/lib/widgets/dialog/dialog.login.content.d.ts +0 -17
  192. package/lib/widgets/dialog/dialog.notify.content.d.ts +0 -11
  193. package/lib/widgets/dialog/dialog.register.content.d.ts +0 -13
  194. package/lib/widgets/dialog/dialog.select-array-objs.content.d.ts +0 -23
  195. package/lib/widgets/dialog/dialog.select-array.content.d.ts +0 -31
  196. package/lib/widgets/dialog/dialog.select-data-labels.content.d.ts +0 -22
  197. package/lib/widgets/dialog/dialog.select-datetime.content.d.ts +0 -21
  198. package/lib/widgets/dialog/dialog.select-with-buttons-url.content.d.ts +0 -25
  199. package/lib/widgets/dialog/dialog.service.d.ts +0 -21
  200. package/lib/widgets/file/file-upload.component.d.ts +0 -49
  201. package/lib/widgets/file/file-upload.module.d.ts +0 -14
  202. package/lib/widgets/form-button/form-button.component.d.ts +0 -15
  203. package/lib/widgets/form-button/form-button.module.d.ts +0 -9
  204. package/lib/widgets/navbar-main/navbar-main.component.d.ts +0 -52
  205. package/lib/widgets/navbar-module/navbar-module.component.d.ts +0 -24
  206. package/lib/widgets/navbar-module/navbar-module.model.d.ts +0 -13
  207. package/lib/widgets/responsive-button-group/responsive-button-group.component.d.ts +0 -17
  208. package/lib/widgets/responsive-button-group/responsive-button-group.module.d.ts +0 -8
  209. package/lib/widgets/scheduler/scheduler.component.d.ts +0 -50
  210. package/lib/widgets/scheduler/scheduler.module.d.ts +0 -11
  211. package/lib/widgets/sort-table/sort-table-header.component.d.ts +0 -23
  212. package/lib/widgets/sort-table/sort-table-ngfor.component.d.ts +0 -17
  213. package/lib/widgets/sort-table/sort-table.directive.d.ts +0 -48
  214. package/lib/widgets/sort-table/sort-table.module.d.ts +0 -11
  215. package/lib/widgets/user-role/user-role.component.d.ts +0 -10
  216. package/lib/widgets/user-role/user-role.module.d.ts +0 -8
  217. package/public_api.d.ts +0 -87
@@ -1,60 +0,0 @@
1
- import { Component, Input, HostListener } from '@angular/core';
2
- import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@ng-bootstrap/ng-bootstrap";
5
- // tslint:disable-next-line:component-class-suffix
6
- export class DialogNotifyContent {
7
- activeModal;
8
- title;
9
- body;
10
- handleKeyboardEvent(event) {
11
- if (event.keyCode === 13) {
12
- this.activeModal.close();
13
- }
14
- }
15
- constructor(activeModal) {
16
- this.activeModal = activeModal;
17
- }
18
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogNotifyContent, deps: [{ token: i1.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
19
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DialogNotifyContent, selector: "ng-component", inputs: { title: "title", body: "body" }, host: { listeners: { "document:keypress": "handleKeyboardEvent($event)" } }, ngImport: i0, template: `
20
- <div class="modal-header">
21
- <h4 class="modal-title"><i class="fa fa-info-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
22
- <button type="button" class="close" aria-label="Close" (click)="activeModal.dismiss('Cross click')">
23
- <span aria-hidden="true">&times;</span>
24
- </button>
25
- </div>
26
- <div class="modal-body">
27
- <p>{{ body }}</p>
28
- </div>
29
- <div class="modal-footer">
30
- <button type="button" class="btn btn-secondary" (click)="activeModal.close('Close click')">Ok</button>
31
- </div>
32
- `, isInline: true });
33
- }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogNotifyContent, decorators: [{
35
- type: Component,
36
- args: [{
37
- template: `
38
- <div class="modal-header">
39
- <h4 class="modal-title"><i class="fa fa-info-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
40
- <button type="button" class="close" aria-label="Close" (click)="activeModal.dismiss('Cross click')">
41
- <span aria-hidden="true">&times;</span>
42
- </button>
43
- </div>
44
- <div class="modal-body">
45
- <p>{{ body }}</p>
46
- </div>
47
- <div class="modal-footer">
48
- <button type="button" class="btn btn-secondary" (click)="activeModal.close('Close click')">Ok</button>
49
- </div>
50
- `
51
- }]
52
- }], ctorParameters: function () { return [{ type: i1.NgbActiveModal }]; }, propDecorators: { title: [{
53
- type: Input
54
- }], body: [{
55
- type: Input
56
- }], handleKeyboardEvent: [{
57
- type: HostListener,
58
- args: ['document:keypress', ['$event']]
59
- }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm5vdGlmeS5jb250ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL3dpZGdldHMvZGlhbG9nL2RpYWxvZy5ub3RpZnkuY29udGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFrQjVELGtEQUFrRDtBQUNsRCxNQUFNLE9BQU8sbUJBQW1CO0lBV1o7SUFWVixLQUFLLENBQVM7SUFDZCxJQUFJLENBQVM7SUFHckIsbUJBQW1CLENBQUMsS0FBb0I7UUFDdkMsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3pCO0lBQ0YsQ0FBQztJQUVGLFlBQW1CLFdBQTJCO1FBQTNCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtJQUFHLENBQUM7d0dBWHRDLG1CQUFtQjs0RkFBbkIsbUJBQW1CLDJLQWhCckI7Ozs7Ozs7Ozs7Ozs7R0FhUjs7NEZBR1UsbUJBQW1CO2tCQWpCL0IsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7R0FhUjtpQkFDRjtxR0FHUyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdMLG1CQUFtQjtzQkFEbkIsWUFBWTt1QkFBQyxtQkFBbUIsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5cbkBDb21wb25lbnQoe1xuXHR0ZW1wbGF0ZTogYFxuXHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cblx0XHRcdDxoNCBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+PGkgY2xhc3M9XCJmYSBmYS1pbmZvLWNpcmNsZVwiIHN0eWxlPVwiY29sb3I6IGJsdWU7IGZvbnQtc2l6ZTogMC44NWVtXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPiB7eyB0aXRsZSB9fTwvaDQ+XG5cdCAgXHRcdDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiY2xvc2VcIiBhcmlhLWxhYmVsPVwiQ2xvc2VcIiAoY2xpY2spPVwiYWN0aXZlTW9kYWwuZGlzbWlzcygnQ3Jvc3MgY2xpY2snKVwiPlxuXHRcdFx0XHQ8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mdGltZXM7PC9zcGFuPlxuXHQgIFx0XHQ8L2J1dHRvbj5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuXHQgXHQgXHQ8cD57eyBib2R5IH19PC9wPlxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cblx0ICBcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJhY3RpdmVNb2RhbC5jbG9zZSgnQ2xvc2UgY2xpY2snKVwiPk9rPC9idXR0b24+XG5cdFx0PC9kaXY+XG4gIGBcbn0pXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LWNsYXNzLXN1ZmZpeFxuZXhwb3J0IGNsYXNzIERpYWxvZ05vdGlmeUNvbnRlbnQge1xuXHRASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuXHRASW5wdXQoKSBib2R5OiBzdHJpbmc7XG5cblx0QEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5cHJlc3MnLCBbJyRldmVudCddKVxuXHRcdGhhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHsgXG5cdFx0XHRpZiAoZXZlbnQua2V5Q29kZSA9PT0gMTMpIHtcblx0XHRcdFx0dGhpcy5hY3RpdmVNb2RhbC5jbG9zZSgpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRjb25zdHJ1Y3RvcihwdWJsaWMgYWN0aXZlTW9kYWw6IE5nYkFjdGl2ZU1vZGFsKSB7fVxufSJdfQ==
@@ -1,333 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
3
- import { FormBuilder, Validators } from '@angular/forms';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@ng-bootstrap/ng-bootstrap";
6
- import * as i2 from "@angular/forms";
7
- import * as i3 from "../responsive-button-group/responsive-button-group.component";
8
- import * as i4 from "@angular/common";
9
- import * as i5 from "../../directive/focus";
10
- // tslint:disable-next-line:component-class-suffix
11
- export class DialogRegisterContent {
12
- _activeModal;
13
- _fb;
14
- form;
15
- constructor(_activeModal, _fb) {
16
- this._activeModal = _activeModal;
17
- this._fb = _fb;
18
- }
19
- ngOnInit() {
20
- this.form = this._fb.group({
21
- username: ['', [Validators.required]],
22
- name: ['', [Validators.required]],
23
- phone: ['', [Validators.required]],
24
- company: ['', [Validators.required]],
25
- email: ['', [Validators.required]]
26
- });
27
- }
28
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogRegisterContent, deps: [{ token: i1.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
29
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DialogRegisterContent, selector: "ng-component", ngImport: i0, template: `
30
- <style>
31
- collapse-table {
32
- width: 100%;
33
- }
34
-
35
- .navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {
36
- color: #0b4499;
37
- }
38
- .navbar-light .navbar-nav .nav-link {
39
- color:#333;
40
- }
41
- a.nav-link.loginreg {
42
- background-color: #0b4499;
43
- color: #fff !important;
44
- border-radius: 40px;
45
- }
46
- a.nav-link.loginreg:hover {
47
- background: #1668e2;
48
- }
49
- .nav-link {
50
- color: #333333;
51
- font-size: 150%
52
- }
53
- .nav-item a.nav-link.active {
54
- color: #0b4499;
55
- }
56
- .contactimg>img{
57
- width: 100%;
58
- }
59
-
60
- .log-box {
61
- padding-top: 26px;
62
- padding-bottom: 26px;
63
- }
64
- .loginform .form-control, .register-form .form-control {
65
- color: #000;
66
- height: 52px;
67
- }
68
- .loginform {
69
- margin-top: 35px;
70
- }
71
- .loginform label {
72
- font-size: 18px;
73
- font-weight: 600;
74
- }
75
-
76
- .loginbtn {
77
- background: #0b4499;
78
- width: 100%;
79
- margin-top: 44px;
80
- height: 52px;
81
- font-size: 22px;
82
- border-radius: 2px;
83
- color: #fff !important;
84
- }
85
-
86
- .contactimg {
87
- position: relative;
88
- }
89
- .login-logo {
90
- margin-bottom: 20px;
91
- }
92
-
93
- .textbox {
94
- position: absolute;
95
- top: 50%;
96
- color: #fff;
97
- padding: 40px;
98
- transform: translate(0%, -50%);
99
- text-align: center;
100
- }
101
- .sign-btn {
102
- background: #0b4499;
103
- width: 100%;
104
- margin-top: 14px;
105
- height: 52px;
106
- font-size: 22px;
107
- border-radius: 2px;
108
- color: #fff !important;
109
- }
110
-
111
- button.btn.sign-btn:hover {
112
- background: #1668e2;
113
- }
114
- </style>
115
- <form [formGroup]="form" novalidate (ngSubmit)="_activeModal.close(form)">
116
- <div class="modal-header">
117
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> Register</h4>
118
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()">
119
- <span aria-hidden="true">&times;</span>
120
- </button>
121
- </div>
122
- <div class="modal-body" *ngIf="form">
123
- <div class="row justify-content-md-center">
124
- <div class="col-lg-12">
125
- <div class="row bg-white">
126
- <div class="col-lg-6">
127
- <div class="contactimg">
128
- <img src="/assets/images/loginsignup/formimg.jpg" alt="images" class="img-fluid">
129
- <div class="textbox">
130
- <div class="login-logo"><img src="/assets/images/loginsignup/login-logo.png" alt="images"></div>
131
- The All-in-One Solution for Tracking Inventory, Ordering, POs, Management, and Much More!
132
- </div>
133
- </div>
134
- </div>
135
- <div class="col-lg-6">
136
- <div class="log-box">
137
- <div class="register-form">
138
- <div class="form-group">
139
- <label>User Name</label>
140
- <em *ngIf="form.controls.username.hasError('required')">- Required</em>
141
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.username.valid ? 'is-valid' : 'is-invalid']" formControlName="username" [autofocus]="true" [focus]="true" aria-describedby="emailHelp" placeholder="User Name">
142
- </div>
143
- <div class="form-group">
144
- <label>Full Name</label>
145
- <em *ngIf="form.controls.name.hasError('required')">- Required</em>
146
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.name.valid ? 'is-valid' : 'is-invalid']" formControlName="name" aria-describedby="emailHelp" placeholder="Name">
147
- </div>
148
- <div class="form-group">
149
- <label>Phone Number</label>
150
- <em *ngIf="form.controls.phone.hasError('required')">- Required</em>
151
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.phone.valid ? 'is-valid' : 'is-invalid']" formControlName="phone" placeholder="Phone Number">
152
- </div>
153
- <div class="form-group">
154
- <label>Company</label>
155
- <em *ngIf="form.controls.company.hasError('required')">- Required</em>
156
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.company.valid ? 'is-valid' : 'is-invalid']" formControlName="company" placeholder="Company Name">
157
- </div>
158
- <div class="form-group">
159
- <label>Email</label>
160
- <em *ngIf="form.controls.email.hasError('required')">- Required</em>
161
- <input type="email" class="form-control" [ngClass]="['form-control', form.controls.email.valid ? 'is-valid' : 'is-invalid']" formControlName="email" placeholder="Email">
162
- </div>
163
- <button type="submit" class="btn sign-btn">Signup</button>
164
- </div>
165
- </div>
166
- </div>
167
- </div>
168
- </div>
169
- </div>
170
- </div>
171
- <div class="modal-footer">
172
- <responsive-button-group>
173
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
174
- </responsive-button-group>
175
- </div>
176
- </form>
177
- `, isInline: true, styles: ["\n\t\t\tcollapse-table {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {\n\t\t\t\tcolor: #0b4499;\n\t\t\t}\n\t\t\t.navbar-light .navbar-nav .nav-link {\n\t\t\t\tcolor:#333;\n\t\t\t}\n\t\t\ta.nav-link.loginreg {\n\t\t\t\tbackground-color: #0b4499;\n\t\t\t\tcolor: #fff !important;\n\t\t\t\tborder-radius: 40px;\n\t\t\t}\n\t\t\ta.nav-link.loginreg:hover {\n\t\t\t\tbackground: #1668e2;\n\t\t\t}\n\t\t\t.nav-link {\n\t\t\t\tcolor: #333333;\n\t\t\t\tfont-size: 150%\n\t\t\t}\n\t\t\t.nav-item a.nav-link.active {\n\t\t\t\tcolor: #0b4499;\n\t\t\t}\n\t\t\t.contactimg>img{\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t.log-box {\n\t\t\t\tpadding-top: 26px;\n\t\t\t\tpadding-bottom: 26px;\n\t\t\t}\n\t\t\t.loginform .form-control, .register-form .form-control {\n\t\t\t\tcolor: #000;\n\t\t\t\theight: 52px;\n\t\t\t}\n\t\t\t.loginform {\n\t\t\t\tmargin-top: 35px;\n\t\t\t}\n\t\t\t.loginform label {\n\t\t\t\tfont-size: 18px;\n\t\t\t\tfont-weight: 600;\n\t\t\t}\n\n\t\t\t.loginbtn {\n\t\t\t\tbackground: #0b4499;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-top: 44px;\n\t\t\t\theight: 52px;\n\t\t\t\tfont-size: 22px;\n\t\t\t\tborder-radius: 2px;\n\t\t\t\tcolor: #fff !important;\n\t\t\t}\n\n\t\t\t.contactimg {\n\t\t\t\tposition: relative;\n\t\t\t}\n\t\t\t.login-logo {\n\t\t\t\tmargin-bottom: 20px;\n\t\t\t}\n\n\t\t\t.textbox {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 50%;\n\t\t\t\tcolor: #fff;\n\t\t\t\tpadding: 40px;\n\t\t\t\ttransform: translate(0%, -50%);\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t\t.sign-btn {\n\t\t\t\tbackground: #0b4499;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-top: 14px;\n\t\t\t\theight: 52px;\n\t\t\t\tfont-size: 22px;\n\t\t\t\tborder-radius: 2px;\n\t\t\t\tcolor: #fff !important;\n\t\t\t}\n\n\t\t\tbutton.btn.sign-btn:hover {\n\t\t\t\tbackground: #1668e2;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.FocusDirective, selector: "[focus]", inputs: ["focus"] }] });
178
- }
179
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogRegisterContent, decorators: [{
180
- type: Component,
181
- args: [{
182
- template: `
183
- <style>
184
- collapse-table {
185
- width: 100%;
186
- }
187
-
188
- .navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {
189
- color: #0b4499;
190
- }
191
- .navbar-light .navbar-nav .nav-link {
192
- color:#333;
193
- }
194
- a.nav-link.loginreg {
195
- background-color: #0b4499;
196
- color: #fff !important;
197
- border-radius: 40px;
198
- }
199
- a.nav-link.loginreg:hover {
200
- background: #1668e2;
201
- }
202
- .nav-link {
203
- color: #333333;
204
- font-size: 150%
205
- }
206
- .nav-item a.nav-link.active {
207
- color: #0b4499;
208
- }
209
- .contactimg>img{
210
- width: 100%;
211
- }
212
-
213
- .log-box {
214
- padding-top: 26px;
215
- padding-bottom: 26px;
216
- }
217
- .loginform .form-control, .register-form .form-control {
218
- color: #000;
219
- height: 52px;
220
- }
221
- .loginform {
222
- margin-top: 35px;
223
- }
224
- .loginform label {
225
- font-size: 18px;
226
- font-weight: 600;
227
- }
228
-
229
- .loginbtn {
230
- background: #0b4499;
231
- width: 100%;
232
- margin-top: 44px;
233
- height: 52px;
234
- font-size: 22px;
235
- border-radius: 2px;
236
- color: #fff !important;
237
- }
238
-
239
- .contactimg {
240
- position: relative;
241
- }
242
- .login-logo {
243
- margin-bottom: 20px;
244
- }
245
-
246
- .textbox {
247
- position: absolute;
248
- top: 50%;
249
- color: #fff;
250
- padding: 40px;
251
- transform: translate(0%, -50%);
252
- text-align: center;
253
- }
254
- .sign-btn {
255
- background: #0b4499;
256
- width: 100%;
257
- margin-top: 14px;
258
- height: 52px;
259
- font-size: 22px;
260
- border-radius: 2px;
261
- color: #fff !important;
262
- }
263
-
264
- button.btn.sign-btn:hover {
265
- background: #1668e2;
266
- }
267
- </style>
268
- <form [formGroup]="form" novalidate (ngSubmit)="_activeModal.close(form)">
269
- <div class="modal-header">
270
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> Register</h4>
271
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()">
272
- <span aria-hidden="true">&times;</span>
273
- </button>
274
- </div>
275
- <div class="modal-body" *ngIf="form">
276
- <div class="row justify-content-md-center">
277
- <div class="col-lg-12">
278
- <div class="row bg-white">
279
- <div class="col-lg-6">
280
- <div class="contactimg">
281
- <img src="/assets/images/loginsignup/formimg.jpg" alt="images" class="img-fluid">
282
- <div class="textbox">
283
- <div class="login-logo"><img src="/assets/images/loginsignup/login-logo.png" alt="images"></div>
284
- The All-in-One Solution for Tracking Inventory, Ordering, POs, Management, and Much More!
285
- </div>
286
- </div>
287
- </div>
288
- <div class="col-lg-6">
289
- <div class="log-box">
290
- <div class="register-form">
291
- <div class="form-group">
292
- <label>User Name</label>
293
- <em *ngIf="form.controls.username.hasError('required')">- Required</em>
294
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.username.valid ? 'is-valid' : 'is-invalid']" formControlName="username" [autofocus]="true" [focus]="true" aria-describedby="emailHelp" placeholder="User Name">
295
- </div>
296
- <div class="form-group">
297
- <label>Full Name</label>
298
- <em *ngIf="form.controls.name.hasError('required')">- Required</em>
299
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.name.valid ? 'is-valid' : 'is-invalid']" formControlName="name" aria-describedby="emailHelp" placeholder="Name">
300
- </div>
301
- <div class="form-group">
302
- <label>Phone Number</label>
303
- <em *ngIf="form.controls.phone.hasError('required')">- Required</em>
304
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.phone.valid ? 'is-valid' : 'is-invalid']" formControlName="phone" placeholder="Phone Number">
305
- </div>
306
- <div class="form-group">
307
- <label>Company</label>
308
- <em *ngIf="form.controls.company.hasError('required')">- Required</em>
309
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.company.valid ? 'is-valid' : 'is-invalid']" formControlName="company" placeholder="Company Name">
310
- </div>
311
- <div class="form-group">
312
- <label>Email</label>
313
- <em *ngIf="form.controls.email.hasError('required')">- Required</em>
314
- <input type="email" class="form-control" [ngClass]="['form-control', form.controls.email.valid ? 'is-valid' : 'is-invalid']" formControlName="email" placeholder="Email">
315
- </div>
316
- <button type="submit" class="btn sign-btn">Signup</button>
317
- </div>
318
- </div>
319
- </div>
320
- </div>
321
- </div>
322
- </div>
323
- </div>
324
- <div class="modal-footer">
325
- <responsive-button-group>
326
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
327
- </responsive-button-group>
328
- </div>
329
- </form>
330
- `
331
- }]
332
- }], ctorParameters: function () { return [{ type: i1.NgbActiveModal }, { type: i2.FormBuilder }]; } });
333
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnJlZ2lzdGVyLmNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvd2lkZ2V0cy9kaWFsb2cvZGlhbG9nLnJlZ2lzdGVyLmNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBYSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUF5SnBFLGtEQUFrRDtBQUNsRCxNQUFNLE9BQU8scUJBQXFCO0lBSWQ7SUFBc0M7SUFGekQsSUFBSSxDQUFZO0lBRWhCLFlBQW1CLFlBQTRCLEVBQVUsR0FBZ0I7UUFBdEQsaUJBQVksR0FBWixZQUFZLENBQWdCO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUFHLENBQUM7SUFFN0UsUUFBUTtRQUNQLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDMUIsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNqQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3BDLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUNsQyxDQUFDLENBQUM7SUFDSixDQUFDO3dHQWRXLHFCQUFxQjs0RkFBckIscUJBQXFCLG9EQXZKdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFvSlQ7OzRGQUdXLHFCQUFxQjtrQkF4SmpDLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBb0pUO2lCQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JBY3RpdmVNb2RhbCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuXHR0ZW1wbGF0ZTogYFxuXHRcdDxzdHlsZT5cblx0XHRcdGNvbGxhcHNlLXRhYmxlIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLmFjdGl2ZT4ubmF2LWxpbmssIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSwgLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuc2hvdywgLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuc2hvdz4ubmF2LWxpbmsge1xuXHRcdFx0XHRjb2xvcjogIzBiNDQ5OTtcblx0XHRcdH1cblx0XHRcdC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcblx0XHRcdFx0Y29sb3I6IzMzMztcblx0XHRcdH1cblx0XHRcdGEubmF2LWxpbmsubG9naW5yZWcge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMGI0NDk5O1xuXHRcdFx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA0MHB4O1xuXHRcdFx0fVxuXHRcdFx0YS5uYXYtbGluay5sb2dpbnJlZzpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMxNjY4ZTI7XG5cdFx0XHR9XG5cdFx0XHQubmF2LWxpbmsge1xuXHRcdFx0XHRjb2xvcjogIzMzMzMzMztcblx0XHRcdFx0Zm9udC1zaXplOiAxNTAlXG5cdFx0XHR9XG5cdFx0XHQubmF2LWl0ZW0gYS5uYXYtbGluay5hY3RpdmUge1xuXHRcdFx0XHRjb2xvcjogIzBiNDQ5OTtcblx0XHRcdH1cblx0XHRcdC5jb250YWN0aW1nPmltZ3tcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdC5sb2ctYm94IHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDI2cHg7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyNnB4O1xuXHRcdFx0fVxuXHRcdFx0LmxvZ2luZm9ybSAuZm9ybS1jb250cm9sLCAucmVnaXN0ZXItZm9ybSAuZm9ybS1jb250cm9sIHtcblx0XHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHRcdGhlaWdodDogNTJweDtcblx0XHRcdH1cblx0XHRcdC5sb2dpbmZvcm0ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAzNXB4O1xuXHRcdFx0fVxuXHRcdFx0LmxvZ2luZm9ybSBsYWJlbCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdH1cblxuXHRcdFx0LmxvZ2luYnRuIHtcblx0XHRcdFx0YmFja2dyb3VuZDogIzBiNDQ5OTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDQ0cHg7XG5cdFx0XHRcdGhlaWdodDogNTJweDtcblx0XHRcdFx0Zm9udC1zaXplOiAyMnB4O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XG5cdFx0XHRcdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdC5jb250YWN0aW1nIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fVxuXHRcdFx0LmxvZ2luLWxvZ28ge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQudGV4dGJveCB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0XHRwYWRkaW5nOiA0MHB4O1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblx0XHRcdC5zaWduLWJ0biB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMwYjQ0OTk7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxNHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDUycHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjJweDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRcdFx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHRidXR0b24uYnRuLnNpZ24tYnRuOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogIzE2NjhlMjtcblx0XHRcdH1cblx0XHQ8L3N0eWxlPlxuXHRcdDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIG5vdmFsaWRhdGUgKG5nU3VibWl0KT1cIl9hY3RpdmVNb2RhbC5jbG9zZShmb3JtKVwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxuXHRcdFx0XHQ8aDQgY2xhc3M9XCJtb2RhbC10aXRsZVwiPjxpIGNsYXNzPVwiZmEgZmEtcXVlc3Rpb24tY2lyY2xlXCIgc3R5bGU9XCJjb2xvcjogYmx1ZTsgZm9udC1zaXplOiAwLjg1ZW1cIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+IFJlZ2lzdGVyPC9oND5cblx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJjbG9zZVwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiIChjbGljayk9XCJfYWN0aXZlTW9kYWwuZGlzbWlzcygpXCI+XG5cdFx0XHRcdFx0PHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cblx0XHRcdFx0PC9idXR0b24+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCIgKm5nSWY9XCJmb3JtXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJyb3cganVzdGlmeS1jb250ZW50LW1kLWNlbnRlclwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctMTJcIj5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJyb3cgYmctd2hpdGVcIj5cblx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImNvbC1sZy02XCI+XG5cdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImNvbnRhY3RpbWdcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDxpbWcgc3JjPVwiL2Fzc2V0cy9pbWFnZXMvbG9naW5zaWdudXAvZm9ybWltZy5qcGdcIiBhbHQ9XCJpbWFnZXNcIiBjbGFzcz1cImltZy1mbHVpZFwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cInRleHRib3hcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImxvZ2luLWxvZ29cIj48aW1nIHNyYz1cIi9hc3NldHMvaW1hZ2VzL2xvZ2luc2lnbnVwL2xvZ2luLWxvZ28ucG5nXCIgYWx0PVwiaW1hZ2VzXCI+PC9kaXY+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFRoZSBBbGwtaW4tT25lIFNvbHV0aW9uIGZvciBUcmFja2luZyBJbnZlbnRvcnksIE9yZGVyaW5nLCBQT3MsIE1hbmFnZW1lbnQsIGFuZCBNdWNoIE1vcmUhXG5cdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctNlwiPlxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsb2ctYm94XCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwicmVnaXN0ZXItZm9ybVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxsYWJlbD5Vc2VyIE5hbWU8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxlbSAqbmdJZj1cImZvcm0uY29udHJvbHMudXNlcm5hbWUuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4tIFJlcXVpcmVkPC9lbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFtuZ0NsYXNzXT1cIlsnZm9ybS1jb250cm9sJywgZm9ybS5jb250cm9scy51c2VybmFtZS52YWxpZCA/ICdpcy12YWxpZCcgOiAnaXMtaW52YWxpZCddXCIgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIiBbYXV0b2ZvY3VzXT1cInRydWVcIiBbZm9jdXNdPVwidHJ1ZVwiIGFyaWEtZGVzY3JpYmVkYnk9XCJlbWFpbEhlbHBcIiBwbGFjZWhvbGRlcj1cIlVzZXIgTmFtZVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8bGFiZWw+RnVsbCBOYW1lPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZW0gKm5nSWY9XCJmb3JtLmNvbnRyb2xzLm5hbWUuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4tIFJlcXVpcmVkPC9lbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFtuZ0NsYXNzXT1cIlsnZm9ybS1jb250cm9sJywgZm9ybS5jb250cm9scy5uYW1lLnZhbGlkID8gJ2lzLXZhbGlkJyA6ICdpcy1pbnZhbGlkJ11cIiBmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCIgYXJpYS1kZXNjcmliZWRieT1cImVtYWlsSGVscFwiIHBsYWNlaG9sZGVyPVwiTmFtZVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8bGFiZWw+UGhvbmUgTnVtYmVyPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZW0gKm5nSWY9XCJmb3JtLmNvbnRyb2xzLnBob25lLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+LSBSZXF1aXJlZDwvZW0+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbbmdDbGFzc109XCJbJ2Zvcm0tY29udHJvbCcsIGZvcm0uY29udHJvbHMucGhvbmUudmFsaWQgPyAnaXMtdmFsaWQnIDogJ2lzLWludmFsaWQnXVwiIGZvcm1Db250cm9sTmFtZT1cInBob25lXCIgcGxhY2Vob2xkZXI9XCJQaG9uZSBOdW1iZXJcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGxhYmVsPkNvbXBhbnk8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxlbSAqbmdJZj1cImZvcm0uY29udHJvbHMuY29tcGFueS5oYXNFcnJvcigncmVxdWlyZWQnKVwiPi0gUmVxdWlyZWQ8L2VtPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW25nQ2xhc3NdPVwiWydmb3JtLWNvbnRyb2wnLCBmb3JtLmNvbnRyb2xzLmNvbXBhbnkudmFsaWQgPyAnaXMtdmFsaWQnIDogJ2lzLWludmFsaWQnXVwiIGZvcm1Db250cm9sTmFtZT1cImNvbXBhbnlcIiBwbGFjZWhvbGRlcj1cIkNvbXBhbnkgTmFtZVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8bGFiZWw+RW1haWw8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxlbSAqbmdJZj1cImZvcm0uY29udHJvbHMuZW1haWwuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4tIFJlcXVpcmVkPC9lbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cImVtYWlsXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbbmdDbGFzc109XCJbJ2Zvcm0tY29udHJvbCcsIGZvcm0uY29udHJvbHMuZW1haWwudmFsaWQgPyAnaXMtdmFsaWQnIDogJ2lzLWludmFsaWQnXVwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCIgcGxhY2Vob2xkZXI9XCJFbWFpbFwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4gc2lnbi1idG5cIj5TaWdudXA8L2J1dHRvbj5cblx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxuXHRcdFx0XHQ8cmVzcG9uc2l2ZS1idXR0b24tZ3JvdXA+XG5cdFx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJfYWN0aXZlTW9kYWwuZGlzbWlzcygpXCI+Q2FuY2VsPC9idXR0b24+XG5cdFx0XHRcdDwvcmVzcG9uc2l2ZS1idXR0b24tZ3JvdXA+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Zvcm0+XG5cdGBcbn0pXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LWNsYXNzLXN1ZmZpeFxuZXhwb3J0IGNsYXNzIERpYWxvZ1JlZ2lzdGVyQ29udGVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cblx0Zm9ybTogRm9ybUdyb3VwO1xuXG5cdGNvbnN0cnVjdG9yKHB1YmxpYyBfYWN0aXZlTW9kYWw6IE5nYkFjdGl2ZU1vZGFsLCBwcml2YXRlIF9mYjogRm9ybUJ1aWxkZXIpIHt9XG5cblx0bmdPbkluaXQoKSB7XHRcdFx0XG5cdFx0dGhpcy5mb3JtID0gdGhpcy5fZmIuZ3JvdXAoe1xuXHRcdFx0dXNlcm5hbWU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcblx0XHRcdG5hbWU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcblx0XHRcdHBob25lOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG5cdFx0XHRjb21wYW55OiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG5cdFx0XHRlbWFpbDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dXG5cdFx0fSk7XG5cdH1cbn1cbiJdfQ==
@@ -1,203 +0,0 @@
1
- import { Component, Input, ViewChild } from '@angular/core';
2
- import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@ng-bootstrap/ng-bootstrap";
5
- import * as i2 from "../collapse-table/collapse-table.component";
6
- import * as i3 from "@angular/common";
7
- // tslint:disable-next-line:component-class-suffix
8
- export class DialogSelectArrayObjsContent {
9
- _activeModal;
10
- title = '';
11
- objects = [];
12
- multiple = false;
13
- allowNone = false;
14
- close;
15
- allElements;
16
- selectedIndex = null;
17
- selectedItem = null;
18
- selectedIndexes = [];
19
- selectedItems = [];
20
- constructor(_activeModal) {
21
- this._activeModal = _activeModal;
22
- }
23
- ngAfterViewInit() {
24
- setTimeout(() => {
25
- let foundElement = this.recursiveFindFirstElement(this.allElements.nativeElement);
26
- if (foundElement) {
27
- foundElement.focus();
28
- }
29
- else {
30
- this.close.nativeElement.focus();
31
- this.close.nativeElement.blur();
32
- }
33
- }, 100);
34
- this.objects.forEach((obj, objIdx) => {
35
- if (obj.selected) {
36
- this.selectedIndexes.push(objIdx);
37
- this.selectedItems.push(obj);
38
- }
39
- });
40
- }
41
- recursiveFindFirstElement(element) {
42
- let foundElement = null;
43
- let htmlCol = element.children;
44
- for (let i = 0; i < Object.keys(htmlCol).length; i++) {
45
- let key = Object.keys(htmlCol)[i];
46
- let htmlElem = htmlCol[key];
47
- if (htmlElem.children && htmlElem.children.length) {
48
- foundElement = this.recursiveFindFirstElement(htmlElem);
49
- }
50
- else if (htmlElem.tagName === 'BUTTON' && htmlElem.classList.contains('close')) {
51
- return null;
52
- }
53
- else if ((htmlElem.tagName === 'BUTTON' || htmlElem.tagName === 'INPUT' || htmlElem.tagName === 'SELECT' || htmlElem.tagName === 'TEXTAREA') && !htmlElem.hidden && !htmlElem.disabled) {
54
- return htmlElem;
55
- }
56
- if (foundElement) {
57
- break;
58
- }
59
- }
60
- return foundElement;
61
- }
62
- onSelectItem(index) {
63
- if (!this.multiple) {
64
- if (this.objects[index] === this.selectedItem) {
65
- this.selectedItem = null;
66
- this.selectedIndex = null;
67
- }
68
- else {
69
- this.selectedItem = this.objects[index];
70
- this.selectedIndex = index;
71
- }
72
- }
73
- else {
74
- if (this.selectedItems.some(a => a.value === this.objects[index].value)) {
75
- this.selectedIndexes.splice(this.selectedIndexes.indexOf(index), 1);
76
- this.selectedItems.splice(this.selectedItems.map(a => a.value).indexOf(this.objects[index].value), 1);
77
- }
78
- else {
79
- this.selectedIndexes.push(index);
80
- this.selectedItems.push(this.objects[index]);
81
- }
82
- }
83
- }
84
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogSelectArrayObjsContent, deps: [{ token: i1.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
85
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DialogSelectArrayObjsContent, selector: "ng-component", inputs: { title: "title", objects: "objects", multiple: "multiple", allowNone: "allowNone" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
86
- <style>
87
- collapse-table tr:hover {
88
- background-color: lightblue;
89
- cursor: pointer;
90
- }
91
-
92
- .selected {
93
- background-color: lightblue;
94
- }
95
-
96
- collapse-table {
97
- width: 100%;
98
- }
99
- </style>
100
- <div #allElements>
101
- <div class="modal-header">
102
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
103
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()" #close>
104
- <span aria-hidden="true">&times;</span>
105
- </button>
106
- </div>
107
- <div class="modal-body">
108
- <div style="height: 60vh; overflow-y: auto">
109
- <collapse-table collapseSize="900">
110
- <thead>
111
- <tr>
112
- <th>List</th>
113
- </tr>
114
- </thead>
115
- <tbody>
116
- <tr *ngFor="let object of objects; let i = index" (click)="onSelectItem(i)" [ngClass]="{'selected' : i === selectedIndex || selectedIndexes.includes(i)}">
117
- <td>{{object.text}}</td>
118
- </tr>
119
- </tbody>
120
- </collapse-table>
121
- </div>
122
- </div>
123
- <div class="modal-footer">
124
- <ng-container *ngIf="!allowNone">
125
- <button type="button" [ngClass]="['btn', (selectedItem || selectedItems.length) ? 'btn-success' : 'btn-danger']" [disabled]="!selectedItem && !selectedItems.length" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
126
- </ng-container>
127
- <ng-container *ngIf="allowNone">
128
- <button type="button" class="btn btn-success" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
129
- </ng-container>
130
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
131
- </div>
132
- </div>
133
- `, isInline: true, styles: ["\n\t\t\tcollapse-table tr:hover {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t.selected {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t}\n\n\t\t\tcollapse-table {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "component", type: i2.CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
134
- }
135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogSelectArrayObjsContent, decorators: [{
136
- type: Component,
137
- args: [{
138
- template: `
139
- <style>
140
- collapse-table tr:hover {
141
- background-color: lightblue;
142
- cursor: pointer;
143
- }
144
-
145
- .selected {
146
- background-color: lightblue;
147
- }
148
-
149
- collapse-table {
150
- width: 100%;
151
- }
152
- </style>
153
- <div #allElements>
154
- <div class="modal-header">
155
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
156
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()" #close>
157
- <span aria-hidden="true">&times;</span>
158
- </button>
159
- </div>
160
- <div class="modal-body">
161
- <div style="height: 60vh; overflow-y: auto">
162
- <collapse-table collapseSize="900">
163
- <thead>
164
- <tr>
165
- <th>List</th>
166
- </tr>
167
- </thead>
168
- <tbody>
169
- <tr *ngFor="let object of objects; let i = index" (click)="onSelectItem(i)" [ngClass]="{'selected' : i === selectedIndex || selectedIndexes.includes(i)}">
170
- <td>{{object.text}}</td>
171
- </tr>
172
- </tbody>
173
- </collapse-table>
174
- </div>
175
- </div>
176
- <div class="modal-footer">
177
- <ng-container *ngIf="!allowNone">
178
- <button type="button" [ngClass]="['btn', (selectedItem || selectedItems.length) ? 'btn-success' : 'btn-danger']" [disabled]="!selectedItem && !selectedItems.length" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
179
- </ng-container>
180
- <ng-container *ngIf="allowNone">
181
- <button type="button" class="btn btn-success" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
182
- </ng-container>
183
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
184
- </div>
185
- </div>
186
- `
187
- }]
188
- }], ctorParameters: function () { return [{ type: i1.NgbActiveModal }]; }, propDecorators: { title: [{
189
- type: Input
190
- }], objects: [{
191
- type: Input
192
- }], multiple: [{
193
- type: Input
194
- }], allowNone: [{
195
- type: Input
196
- }], close: [{
197
- type: ViewChild,
198
- args: ['close', { static: false }]
199
- }], allElements: [{
200
- type: ViewChild,
201
- args: ['allElements', { static: false }]
202
- }] } });
203
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlbGVjdC1hcnJheS1vYmpzLmNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvd2lkZ2V0cy9kaWFsb2cvZGlhbG9nLnNlbGVjdC1hcnJheS1vYmpzLmNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUcsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7O0FBc0Q3RCxrREFBa0Q7QUFDbEQsTUFBTSxPQUFPLDRCQUE0QjtJQWVyQjtJQWRWLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDWCxPQUFPLEdBQXlDLEVBQUUsQ0FBQztJQUNuRCxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFFa0IsS0FBSyxDQUFDO0lBQ0QsV0FBVyxDQUFDO0lBRTlELGFBQWEsR0FBVyxJQUFJLENBQUM7SUFDN0IsWUFBWSxHQUF1QyxJQUFJLENBQUM7SUFFeEQsZUFBZSxHQUFhLEVBQUUsQ0FBQztJQUMvQixhQUFhLEdBQXlDLEVBQUUsQ0FBQztJQUV6RCxZQUFtQixZQUE0QjtRQUE1QixpQkFBWSxHQUFaLFlBQVksQ0FBZ0I7SUFBRyxDQUFDO0lBRW5ELGVBQWU7UUFDZCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDbEYsSUFBSSxZQUFZLEVBQUU7Z0JBQ2pCLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNyQjtpQkFDSTtnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDaEM7UUFDRixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFUixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNwQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUM3QjtRQUNGLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELHlCQUF5QixDQUFDLE9BQU87UUFDaEMsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksT0FBTyxHQUFtQixPQUFPLENBQUMsUUFBUSxDQUFDO1FBQy9DLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNyRCxJQUFJLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRWxDLElBQUksUUFBUSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1QixJQUFJLFFBQVEsQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2xELFlBQVksR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDeEQ7aUJBQ0ksSUFBSSxRQUFRLENBQUMsT0FBTyxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDL0UsT0FBTyxJQUFJLENBQUM7YUFDWjtpQkFDSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sS0FBSyxRQUFRLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxPQUFPLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxRQUFRLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFO2dCQUN2TCxPQUFPLFFBQVEsQ0FBQzthQUNoQjtZQUVELElBQUksWUFBWSxFQUFFO2dCQUNqQixNQUFNO2FBQ047U0FDRDtRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNuQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDOUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO2FBQzFCO2lCQUNJO2dCQUNKLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7YUFDM0I7U0FDRDthQUNJO1lBQ0osSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDeEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BFLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQ3RHO2lCQUNJO2dCQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNqQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDN0M7U0FDRDtJQUNGLENBQUM7d0dBbkZXLDRCQUE0Qjs0RkFBNUIsNEJBQTRCLCtVQW5EOUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWdEVDs7NEZBR1csNEJBQTRCO2tCQXBEeEMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWdEVDtpQkFDRDtxR0FHUyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFFdUMsS0FBSztzQkFBakQsU0FBUzt1QkFBRSxPQUFPLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO2dCQUNjLFdBQVc7c0JBQTVELFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkLCBBZnRlclZpZXdJbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7ICBOZ2JBY3RpdmVNb2RhbCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IERpYWxvZ1NlbGVjdFdpdGhCdXR0b25zT3B0aW9uTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZGlhbG9nLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG5cdHRlbXBsYXRlOiBgXG5cdFx0PHN0eWxlPlxuXHRcdFx0Y29sbGFwc2UtdGFibGUgdHI6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdH1cblxuXHRcdFx0LnNlbGVjdGVkIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVlO1xuXHRcdFx0fVxuXG5cdFx0XHRjb2xsYXBzZS10YWJsZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdDwvc3R5bGU+XG5cdFx0PGRpdiAjYWxsRWxlbWVudHM+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG5cdFx0XHRcdDxoNCBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+PGkgY2xhc3M9XCJmYSBmYS1xdWVzdGlvbi1jaXJjbGVcIiBzdHlsZT1cImNvbG9yOiBibHVlOyBmb250LXNpemU6IDAuODVlbVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT4ge3sgdGl0bGUgfX08L2g0PlxuXHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImNsb3NlXCIgYXJpYS1sYWJlbD1cIkNsb3NlXCIgKGNsaWNrKT1cIl9hY3RpdmVNb2RhbC5kaXNtaXNzKClcIiAjY2xvc2U+XG5cdFx0XHRcdFx0PHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cblx0XHRcdFx0PC9idXR0b24+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XG5cdFx0XHRcdDxkaXYgc3R5bGU9XCJoZWlnaHQ6IDYwdmg7IG92ZXJmbG93LXk6IGF1dG9cIj5cblx0XHRcdFx0XHQ8Y29sbGFwc2UtdGFibGUgY29sbGFwc2VTaXplPVwiOTAwXCI+XG5cdFx0XHRcdFx0XHQ8dGhlYWQ+XG5cdFx0XHRcdFx0XHRcdDx0cj5cblx0XHRcdFx0XHRcdFx0XHQ8dGg+TGlzdDwvdGg+XG5cdFx0XHRcdFx0XHRcdDwvdHI+XG5cdFx0XHRcdFx0XHQ8L3RoZWFkPlxuXHRcdFx0XHRcdFx0PHRib2R5PlxuXHRcdFx0XHRcdFx0XHQ8dHIgKm5nRm9yPVwibGV0IG9iamVjdCBvZiBvYmplY3RzOyBsZXQgaSA9IGluZGV4XCIgKGNsaWNrKT1cIm9uU2VsZWN0SXRlbShpKVwiIFtuZ0NsYXNzXT1cInsnc2VsZWN0ZWQnIDogaSA9PT0gc2VsZWN0ZWRJbmRleCB8fCBzZWxlY3RlZEluZGV4ZXMuaW5jbHVkZXMoaSl9XCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRkPnt7b2JqZWN0LnRleHR9fTwvdGQ+XG5cdFx0XHRcdFx0XHRcdDwvdHI+XG5cdFx0XHRcdFx0XHQ8L3Rib2R5PlxuXHRcdFx0XHRcdDwvY29sbGFwc2UtdGFibGU+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyXCI+XG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCIhYWxsb3dOb25lXCI+XG5cdFx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW25nQ2xhc3NdPVwiWydidG4nLCAoc2VsZWN0ZWRJdGVtIHx8IHNlbGVjdGVkSXRlbXMubGVuZ3RoKSA/ICdidG4tc3VjY2VzcycgOiAnYnRuLWRhbmdlciddXCIgW2Rpc2FibGVkXT1cIiFzZWxlY3RlZEl0ZW0gJiYgIXNlbGVjdGVkSXRlbXMubGVuZ3RoXCIgKGNsaWNrKT1cIl9hY3RpdmVNb2RhbC5jbG9zZShzZWxlY3RlZEl0ZW0gfHwgc2VsZWN0ZWRJdGVtcylcIj5TdWJtaXQ8L2J1dHRvbj5cblx0XHRcdFx0PC9uZy1jb250YWluZXI+XG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJhbGxvd05vbmVcIj5cblx0XHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc3VjY2Vzc1wiIChjbGljayk9XCJfYWN0aXZlTW9kYWwuY2xvc2Uoc2VsZWN0ZWRJdGVtIHx8IHNlbGVjdGVkSXRlbXMpXCI+U3VibWl0PC9idXR0b24+XG5cdFx0XHRcdDwvbmctY29udGFpbmVyPlxuXHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cIl9hY3RpdmVNb2RhbC5kaXNtaXNzKClcIj5DYW5jZWw8L2J1dHRvbj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRgXG59KVxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBEaWFsb2dTZWxlY3RBcnJheU9ianNDb250ZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdHtcblx0QElucHV0KCkgdGl0bGUgPSAnJztcblx0QElucHV0KCkgb2JqZWN0czogRGlhbG9nU2VsZWN0V2l0aEJ1dHRvbnNPcHRpb25Nb2RlbFtdID0gW107XG5cdEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XG5cdEBJbnB1dCgpIGFsbG93Tm9uZSA9IGZhbHNlO1xuXG5cdEBWaWV3Q2hpbGQgKCdjbG9zZScsIHtzdGF0aWM6IGZhbHNlfSkgcHVibGljIGNsb3NlO1xuXHRAVmlld0NoaWxkKCdhbGxFbGVtZW50cycsIHtzdGF0aWM6IGZhbHNlfSkgcHVibGljIGFsbEVsZW1lbnRzO1xuXG5cdHNlbGVjdGVkSW5kZXg6IG51bWJlciA9IG51bGw7XG5cdHNlbGVjdGVkSXRlbTogRGlhbG9nU2VsZWN0V2l0aEJ1dHRvbnNPcHRpb25Nb2RlbCA9IG51bGw7XG5cblx0c2VsZWN0ZWRJbmRleGVzOiBudW1iZXJbXSA9IFtdO1xuXHRzZWxlY3RlZEl0ZW1zOiBEaWFsb2dTZWxlY3RXaXRoQnV0dG9uc09wdGlvbk1vZGVsW10gPSBbXTtcblxuXHRjb25zdHJ1Y3RvcihwdWJsaWMgX2FjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCkge31cblxuXHRuZ0FmdGVyVmlld0luaXQoKSB7XG5cdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRsZXQgZm91bmRFbGVtZW50ID0gdGhpcy5yZWN1cnNpdmVGaW5kRmlyc3RFbGVtZW50KHRoaXMuYWxsRWxlbWVudHMubmF0aXZlRWxlbWVudCk7XG5cdFx0XHRpZiAoZm91bmRFbGVtZW50KSB7XG5cdFx0XHRcdGZvdW5kRWxlbWVudC5mb2N1cygpO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHRoaXMuY2xvc2UubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuXHRcdFx0XHR0aGlzLmNsb3NlLm5hdGl2ZUVsZW1lbnQuYmx1cigpO1xuXHRcdFx0fVxuXHRcdH0sIDEwMCk7XG5cblx0XHR0aGlzLm9iamVjdHMuZm9yRWFjaCgob2JqLCBvYmpJZHgpID0+IHtcblx0XHRcdGlmIChvYmouc2VsZWN0ZWQpIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ZXMucHVzaChvYmpJZHgpO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChvYmopO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0cmVjdXJzaXZlRmluZEZpcnN0RWxlbWVudChlbGVtZW50KSB7XG5cdFx0bGV0IGZvdW5kRWxlbWVudCA9IG51bGw7XG5cdFx0bGV0IGh0bWxDb2w6IEhUTUxDb2xsZWN0aW9uID0gZWxlbWVudC5jaGlsZHJlbjtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IE9iamVjdC5rZXlzKGh0bWxDb2wpLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRsZXQga2V5ID0gT2JqZWN0LmtleXMoaHRtbENvbClbaV07XG5cblx0XHRcdGxldCBodG1sRWxlbSA9IGh0bWxDb2xba2V5XTtcblx0XHRcdGlmIChodG1sRWxlbS5jaGlsZHJlbiAmJiBodG1sRWxlbS5jaGlsZHJlbi5sZW5ndGgpIHtcblx0XHRcdFx0Zm91bmRFbGVtZW50ID0gdGhpcy5yZWN1cnNpdmVGaW5kRmlyc3RFbGVtZW50KGh0bWxFbGVtKTtcblx0XHRcdH1cblx0XHRcdGVsc2UgaWYgKGh0bWxFbGVtLnRhZ05hbWUgPT09ICdCVVRUT04nICYmIGh0bWxFbGVtLmNsYXNzTGlzdC5jb250YWlucygnY2xvc2UnKSkge1xuXHRcdFx0XHRyZXR1cm4gbnVsbDtcblx0XHRcdH1cblx0XHRcdGVsc2UgaWYgKChodG1sRWxlbS50YWdOYW1lID09PSAnQlVUVE9OJyB8fCBodG1sRWxlbS50YWdOYW1lID09PSAnSU5QVVQnIHx8IGh0bWxFbGVtLnRhZ05hbWUgPT09ICdTRUxFQ1QnIHx8IGh0bWxFbGVtLnRhZ05hbWUgPT09ICdURVhUQVJFQScpICYmICFodG1sRWxlbS5oaWRkZW4gJiYgIWh0bWxFbGVtLmRpc2FibGVkKSB7XG5cdFx0XHRcdHJldHVybiBodG1sRWxlbTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKGZvdW5kRWxlbWVudCkge1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4gZm91bmRFbGVtZW50O1xuXHR9XG5cblx0b25TZWxlY3RJdGVtKGluZGV4OiBudW1iZXIpIHtcblx0XHRpZiAoIXRoaXMubXVsdGlwbGUpIHtcblx0XHRcdGlmICh0aGlzLm9iamVjdHNbaW5kZXhdID09PSB0aGlzLnNlbGVjdGVkSXRlbSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSXRlbSA9IG51bGw7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IG51bGw7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW0gPSB0aGlzLm9iamVjdHNbaW5kZXhdO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSBpbmRleDtcblx0XHRcdH1cblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZEl0ZW1zLnNvbWUoYSA9PiBhLnZhbHVlID09PSB0aGlzLm9iamVjdHNbaW5kZXhdLnZhbHVlKSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXhlcy5zcGxpY2UodGhpcy5zZWxlY3RlZEluZGV4ZXMuaW5kZXhPZihpbmRleCksIDEpO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSXRlbXMuc3BsaWNlKHRoaXMuc2VsZWN0ZWRJdGVtcy5tYXAoYSA9PiBhLnZhbHVlKS5pbmRleE9mKHRoaXMub2JqZWN0c1tpbmRleF0udmFsdWUpLCAxKTtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXhlcy5wdXNoKGluZGV4KTtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW1zLnB1c2godGhpcy5vYmplY3RzW2luZGV4XSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iXX0=