tin-spa 14.3.11 → 14.4.2

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 (154) hide show
  1. package/esm2020/lib/classes/Classes.mjs +1 -179
  2. package/esm2020/lib/classes/LibClasses.mjs +179 -0
  3. package/esm2020/lib/classes/TinCore.mjs +10 -1
  4. package/esm2020/lib/components/alert/alert.component.mjs +3 -3
  5. package/esm2020/lib/components/date/date.component.mjs +3 -3
  6. package/esm2020/lib/components/datetime/datetime.component.mjs +6 -3
  7. package/esm2020/lib/components/email/email.component.mjs +131 -0
  8. package/esm2020/lib/components/filter/filter.component.mjs +7 -3
  9. package/esm2020/lib/components/form/form.component.mjs +27 -10
  10. package/esm2020/lib/components/money/money.component.mjs +3 -3
  11. package/esm2020/lib/components/nav-menu/nav-menu.component.mjs +2 -2
  12. package/esm2020/lib/components/number/number.component.mjs +3 -3
  13. package/esm2020/lib/components/option/option.component.mjs +6 -3
  14. package/esm2020/lib/components/search/search.component.mjs +3 -3
  15. package/esm2020/lib/components/select/select.component.mjs +13 -3
  16. package/esm2020/lib/components/table/detailsDialog.component.mjs +14 -4
  17. package/esm2020/lib/components/table/table.component.mjs +13 -4
  18. package/esm2020/lib/components/table-header/table-header.component.mjs +82 -14
  19. package/esm2020/lib/components/table-internal/detailsDialog-internal.component.mjs +16 -2
  20. package/esm2020/lib/components/table-internal/table-internal.component.mjs +13 -4
  21. package/esm2020/lib/components/table-row/table-row.component.mjs +21 -5
  22. package/esm2020/lib/components/text/text.component.mjs +25 -15
  23. package/esm2020/lib/components/tiles/tiles.component.mjs +15 -9
  24. package/esm2020/lib/modules/admin/admin-routing.module.mjs +22 -22
  25. package/esm2020/lib/modules/index/index-routing.module.mjs +4 -4
  26. package/esm2020/lib/modules/spa-admin.module.mjs +7 -7
  27. package/esm2020/lib/modules/spa-index.module.mjs +4 -4
  28. package/esm2020/lib/modules/spa-user.module.mjs +3 -3
  29. package/esm2020/lib/modules/user/user-routing.module.mjs +3 -3
  30. package/esm2020/lib/pages/accounts/accountDialog.component.mjs +56 -0
  31. package/esm2020/lib/pages/accounts/accounts.component.mjs +70 -0
  32. package/esm2020/lib/{components → pages}/bug/bug.component.mjs +1 -1
  33. package/esm2020/lib/pages/change-password/change-password.component.mjs +92 -0
  34. package/esm2020/lib/pages/create-account/create-account.component.mjs +110 -0
  35. package/esm2020/lib/pages/customers/customers.component.mjs +60 -0
  36. package/esm2020/lib/{components → pages}/departments/departments.component.mjs +2 -2
  37. package/esm2020/lib/{components → pages}/employees/employees.component.mjs +2 -2
  38. package/esm2020/lib/{components → pages}/grades/grades.component.mjs +1 -1
  39. package/esm2020/lib/pages/inventory/inventory.component.mjs +99 -0
  40. package/esm2020/lib/pages/inventory/quantityDialog.component.mjs +53 -0
  41. package/esm2020/lib/{components → pages}/invitations/invitations.component.mjs +1 -1
  42. package/esm2020/lib/pages/invitations-table/invitations-table.component.mjs +70 -0
  43. package/esm2020/lib/{components → pages}/login/login.component.mjs +6 -5
  44. package/esm2020/lib/{components → pages}/logs/logs.component.mjs +2 -2
  45. package/esm2020/lib/pages/membership/membership.component.mjs +48 -0
  46. package/esm2020/lib/{components → pages}/notifications/notifications.component.mjs +1 -1
  47. package/esm2020/lib/pages/plans/plans.component.mjs +47 -0
  48. package/esm2020/lib/{components → pages}/positions/positions.component.mjs +2 -2
  49. package/esm2020/lib/pages/profile/profile.component.mjs +93 -0
  50. package/esm2020/lib/pages/recover-account/recover-account.component.mjs +46 -0
  51. package/esm2020/lib/{components → pages}/roles/addRoleDialog.component.mjs +2 -2
  52. package/esm2020/lib/{components → pages}/roles/roles.component.mjs +1 -1
  53. package/esm2020/lib/{components → pages}/settings/settings.component.mjs +1 -1
  54. package/esm2020/lib/pages/signup/signup.component.mjs +50 -0
  55. package/esm2020/lib/pages/suppliers/suppliers.component.mjs +50 -0
  56. package/esm2020/lib/pages/tasks/tasks.component.mjs +86 -0
  57. package/esm2020/lib/pages/tenant-settings/inviteDialog.component.mjs +60 -0
  58. package/esm2020/lib/pages/tenant-settings/tenant-settings.component.mjs +155 -0
  59. package/esm2020/lib/pages/tenants/tenants.component.mjs +47 -0
  60. package/esm2020/lib/pages/transactions/transactDialog.component.mjs +80 -0
  61. package/esm2020/lib/pages/transactions/transactions.component.mjs +101 -0
  62. package/esm2020/lib/pages/users/users.component.mjs +118 -0
  63. package/esm2020/lib/pages/welcome/welcome.component.mjs +86 -0
  64. package/esm2020/lib/services/auth.service.mjs +3 -2
  65. package/esm2020/lib/services/csv.service.mjs +49 -0
  66. package/esm2020/lib/services/datalib.service.mjs +1 -1
  67. package/esm2020/lib/services/log.service.mjs +2 -2
  68. package/esm2020/lib/tin-spa.module.mjs +33 -28
  69. package/esm2020/public-api.mjs +26 -25
  70. package/fesm2015/tin-spa.mjs +520 -171
  71. package/fesm2015/tin-spa.mjs.map +1 -1
  72. package/fesm2020/tin-spa.mjs +518 -171
  73. package/fesm2020/tin-spa.mjs.map +1 -1
  74. package/lib/classes/Classes.d.ts +19 -173
  75. package/lib/classes/LibClasses.d.ts +172 -0
  76. package/lib/classes/TinCore.d.ts +3 -1
  77. package/lib/components/datetime/datetime.component.d.ts +2 -1
  78. package/lib/components/email/email.component.d.ts +39 -0
  79. package/lib/components/filter/filter.component.d.ts +1 -0
  80. package/lib/components/form/form.component.d.ts +2 -0
  81. package/lib/components/option/option.component.d.ts +2 -1
  82. package/lib/components/select/select.component.d.ts +3 -1
  83. package/lib/components/table/table.component.d.ts +3 -0
  84. package/lib/components/table-header/table-header.component.d.ts +17 -4
  85. package/lib/components/table-internal/table-internal.component.d.ts +3 -0
  86. package/lib/components/table-row/table-row.component.d.ts +1 -1
  87. package/lib/components/text/text.component.d.ts +6 -2
  88. package/lib/components/tiles/tiles.component.d.ts +4 -2
  89. package/lib/modules/spa-admin.module.d.ts +6 -6
  90. package/lib/modules/spa-index.module.d.ts +3 -3
  91. package/lib/modules/spa-user.module.d.ts +2 -2
  92. package/lib/{components → pages}/change-password/change-password.component.d.ts +1 -1
  93. package/lib/{components → pages}/create-account/create-account.component.d.ts +2 -1
  94. package/lib/{components → pages}/login/login.component.d.ts +3 -2
  95. package/lib/{components → pages}/profile/profile.component.d.ts +2 -1
  96. package/lib/{components → pages}/roles/addRoleDialog.component.d.ts +1 -1
  97. package/lib/{components → pages}/roles/roles.component.d.ts +1 -1
  98. package/lib/{components → pages}/signup/signup.component.d.ts +1 -1
  99. package/lib/{components → pages}/users/users.component.d.ts +1 -1
  100. package/lib/services/auth.service.d.ts +1 -1
  101. package/lib/services/csv.service.d.ts +10 -0
  102. package/lib/services/datalib.service.d.ts +2 -1
  103. package/lib/services/log.service.d.ts +1 -1
  104. package/lib/tin-spa.module.d.ts +29 -28
  105. package/package.json +1 -1
  106. package/public-api.d.ts +24 -23
  107. package/esm2020/lib/components/accounts/accountDialog.component.mjs +0 -56
  108. package/esm2020/lib/components/accounts/accounts.component.mjs +0 -70
  109. package/esm2020/lib/components/change-password/change-password.component.mjs +0 -92
  110. package/esm2020/lib/components/create-account/create-account.component.mjs +0 -109
  111. package/esm2020/lib/components/customers/customers.component.mjs +0 -60
  112. package/esm2020/lib/components/inventory/inventory.component.mjs +0 -99
  113. package/esm2020/lib/components/inventory/quantityDialog.component.mjs +0 -53
  114. package/esm2020/lib/components/invitations-table/invitations-table.component.mjs +0 -70
  115. package/esm2020/lib/components/membership/membership.component.mjs +0 -48
  116. package/esm2020/lib/components/plans/plans.component.mjs +0 -47
  117. package/esm2020/lib/components/profile/profile.component.mjs +0 -92
  118. package/esm2020/lib/components/recover-account/recover-account.component.mjs +0 -46
  119. package/esm2020/lib/components/signup/signup.component.mjs +0 -50
  120. package/esm2020/lib/components/suppliers/suppliers.component.mjs +0 -50
  121. package/esm2020/lib/components/tasks/tasks.component.mjs +0 -86
  122. package/esm2020/lib/components/tenant-settings/inviteDialog.component.mjs +0 -60
  123. package/esm2020/lib/components/tenant-settings/tenant-settings.component.mjs +0 -155
  124. package/esm2020/lib/components/tenants/tenants.component.mjs +0 -47
  125. package/esm2020/lib/components/transactions/transactDialog.component.mjs +0 -80
  126. package/esm2020/lib/components/transactions/transactions.component.mjs +0 -101
  127. package/esm2020/lib/components/users/users.component.mjs +0 -118
  128. package/esm2020/lib/components/welcome/welcome.component.mjs +0 -86
  129. /package/lib/{components → pages}/accounts/accountDialog.component.d.ts +0 -0
  130. /package/lib/{components → pages}/accounts/accounts.component.d.ts +0 -0
  131. /package/lib/{components → pages}/bug/bug.component.d.ts +0 -0
  132. /package/lib/{components → pages}/customers/customers.component.d.ts +0 -0
  133. /package/lib/{components → pages}/departments/departments.component.d.ts +0 -0
  134. /package/lib/{components → pages}/employees/employees.component.d.ts +0 -0
  135. /package/lib/{components → pages}/grades/grades.component.d.ts +0 -0
  136. /package/lib/{components → pages}/inventory/inventory.component.d.ts +0 -0
  137. /package/lib/{components → pages}/inventory/quantityDialog.component.d.ts +0 -0
  138. /package/lib/{components → pages}/invitations/invitations.component.d.ts +0 -0
  139. /package/lib/{components → pages}/invitations-table/invitations-table.component.d.ts +0 -0
  140. /package/lib/{components → pages}/logs/logs.component.d.ts +0 -0
  141. /package/lib/{components → pages}/membership/membership.component.d.ts +0 -0
  142. /package/lib/{components → pages}/notifications/notifications.component.d.ts +0 -0
  143. /package/lib/{components → pages}/plans/plans.component.d.ts +0 -0
  144. /package/lib/{components → pages}/positions/positions.component.d.ts +0 -0
  145. /package/lib/{components → pages}/recover-account/recover-account.component.d.ts +0 -0
  146. /package/lib/{components → pages}/settings/settings.component.d.ts +0 -0
  147. /package/lib/{components → pages}/suppliers/suppliers.component.d.ts +0 -0
  148. /package/lib/{components → pages}/tasks/tasks.component.d.ts +0 -0
  149. /package/lib/{components → pages}/tenant-settings/inviteDialog.component.d.ts +0 -0
  150. /package/lib/{components → pages}/tenant-settings/tenant-settings.component.d.ts +0 -0
  151. /package/lib/{components → pages}/tenants/tenants.component.d.ts +0 -0
  152. /package/lib/{components → pages}/transactions/transactDialog.component.d.ts +0 -0
  153. /package/lib/{components → pages}/transactions/transactions.component.d.ts +0 -0
  154. /package/lib/{components → pages}/welcome/welcome.component.d.ts +0 -0
@@ -0,0 +1,60 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../services/datalib.service";
4
+ import * as i2 from "../../services/message.service";
5
+ import * as i3 from "../../services/auth.service";
6
+ import * as i4 from "../../components/table/table.component";
7
+ export class CustomersComponent {
8
+ constructor(dataService, messageService, authService) {
9
+ this.dataService = dataService;
10
+ this.messageService = messageService;
11
+ this.authService = authService;
12
+ this.formConfig = {
13
+ fields: [
14
+ { name: 'name', type: 'text' },
15
+ { name: 'phone', type: 'text' },
16
+ { name: 'contactPerson', type: 'text' },
17
+ { name: 'email', type: 'text' },
18
+ { name: 'address', type: 'text', rows: 2, span: true },
19
+ { name: 'customerTenantID', alias: 'Customer Tenant', type: 'select', optionDisplay: 'name', optionValue: 'tenantID', options: [], nullable: true },
20
+ ],
21
+ reset: true,
22
+ };
23
+ this.config = {
24
+ showFilter: true,
25
+ minColumns: ['name'],
26
+ flatButtons: true,
27
+ columns: [
28
+ { name: 'name', type: 'text' },
29
+ { name: 'phone', type: 'text' },
30
+ { name: 'contactPerson', type: 'text' },
31
+ { name: 'isLinked', type: 'checkbox', alias: 'Linked' },
32
+ ],
33
+ buttons: [
34
+ { name: 'create', display: 'Create', dialog: true, action: { url: 'general/customers?action=create', method: 'post' } },
35
+ { name: 'view', dialog: true },
36
+ { name: 'edit', dialog: true, action: { url: 'general/customers?action=edit', method: 'post' } },
37
+ { name: 'delete', dialog: true, action: { url: 'general/customers?action=delete', method: 'post' } },
38
+ ],
39
+ loadAction: { url: 'general/customers/x' },
40
+ formConfig: this.formConfig
41
+ };
42
+ }
43
+ ngOnInit() {
44
+ this.loadTenants();
45
+ }
46
+ loadTenants() {
47
+ this.dataService.CallApi({ url: 'tenant/available_tenants/x' }).subscribe((apiResponse) => {
48
+ if (apiResponse.success) {
49
+ this.formConfig.fields.find(x => x.name == 'customerTenantID').options = apiResponse.data;
50
+ }
51
+ });
52
+ }
53
+ }
54
+ CustomersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CustomersComponent, deps: [{ token: i1.DataServiceLib }, { token: i2.MessageService }, { token: i3.AuthService }], target: i0.ɵɵFactoryTarget.Component });
55
+ CustomersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CustomersComponent, selector: "spa-customers", ngImport: i0, template: "<h4>Customers</h4>\n<hr>\n\n\n<div class=\"mt-3\" style=\" font-size: 14px;\">\n <spa-table [config]=\"config\"></spa-table>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i4.TableComponent, selector: "spa-table", inputs: ["hideTitle", "data", "config", "reload"], outputs: ["dataLoad", "refreshClick", "searchClick", "createClick", "actionClick", "inputChange"] }] });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CustomersComponent, decorators: [{
57
+ type: Component,
58
+ args: [{ selector: 'spa-customers', template: "<h4>Customers</h4>\n<hr>\n\n\n<div class=\"mt-3\" style=\" font-size: 14px;\">\n <spa-table [config]=\"config\"></spa-table>\n</div>\n" }]
59
+ }], ctorParameters: function () { return [{ type: i1.DataServiceLib }, { type: i2.MessageService }, { type: i3.AuthService }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9jdXN0b21lcnMvY3VzdG9tZXJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9jdXN0b21lcnMvY3VzdG9tZXJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVdsRCxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLFlBQW9CLFdBQTJCLEVBQVUsY0FBOEIsRUFBUyxXQUF3QjtRQUFwRyxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBUyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQWN4SCxlQUFVLEdBQWU7WUFFdkIsTUFBTSxFQUFFO2dCQUNOLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO2dCQUM5QixFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRTtnQkFDL0IsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7Z0JBQ3ZDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO2dCQUMvQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUcsQ0FBQyxFQUFFLElBQUksRUFBRyxJQUFJLEVBQUU7Z0JBQ3hELEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRyxJQUFJLEVBQUU7YUFDcko7WUFFRCxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUE7UUFFRCxXQUFNLEdBQWdCO1lBQ3BCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFVBQVUsRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUNwQixXQUFXLEVBQUUsSUFBSTtZQUVqQixPQUFPLEVBQUU7Z0JBRVAsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7Z0JBQzlCLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO2dCQUMvQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRTtnQkFDdkMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTthQUV4RDtZQUVELE9BQU8sRUFBRTtnQkFDUCxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUU7Z0JBQ3ZILEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUM5QixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxFQUFFO2dCQUNoRyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxFQUFFO2FBQ3JHO1lBRUQsVUFBVSxFQUFFLEVBQUUsR0FBRyxFQUFFLHFCQUFxQixFQUFFO1lBRTFDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUU1QixDQUFBO0lBckQySCxDQUFDO0lBRTdILFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSw0QkFBNEIsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFO1lBQ3JHLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRTtnQkFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxrQkFBa0IsQ0FBQyxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO2FBQzNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzsrR0FkVSxrQkFBa0I7bUdBQWxCLGtCQUFrQixxRENYL0IseUlBT0E7MkZESWEsa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEYXRhU2VydmljZUxpYiB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwaVJlc3BvbnNlLCBGb3JtQ29uZmlnLCBUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWVzc2FnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtY3VzdG9tZXJzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tZXJzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jdXN0b21lcnMuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdXN0b21lcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZUxpYiwgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsIHB1YmxpYyBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZFRlbmFudHMoKTtcclxuICB9XHJcblxyXG4gIGxvYWRUZW5hbnRzKCkge1xyXG4gICAgdGhpcy5kYXRhU2VydmljZS5DYWxsQXBpKHsgdXJsOiAndGVuYW50L2F2YWlsYWJsZV90ZW5hbnRzL3gnIH0pLnN1YnNjcmliZSgoYXBpUmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIGlmIChhcGlSZXNwb25zZS5zdWNjZXNzKSB7XHJcbiAgICAgICAgdGhpcy5mb3JtQ29uZmlnLmZpZWxkcy5maW5kKHggPT4geC5uYW1lID09ICdjdXN0b21lclRlbmFudElEJykub3B0aW9ucyA9IGFwaVJlc3BvbnNlLmRhdGE7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0UGVyc29uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtYWlsJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2FkZHJlc3MnLCB0eXBlOiAndGV4dCcsIHJvd3MgOiAyLCBzcGFuIDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdjdXN0b21lclRlbmFudElEJywgYWxpYXM6ICdDdXN0b21lciBUZW5hbnQnLCB0eXBlOiAnc2VsZWN0Jywgb3B0aW9uRGlzcGxheTogJ25hbWUnLCBvcHRpb25WYWx1ZTogJ3RlbmFudElEJywgb3B0aW9uczogW10sIG51bGxhYmxlIDogdHJ1ZSB9LFxyXG4gICAgXSxcclxuXHJcbiAgICByZXNldDogdHJ1ZSxcclxuICB9XHJcblxyXG4gIGNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgbWluQ29sdW1uczogWyduYW1lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuXHJcbiAgICBjb2x1bW5zOiBbXHJcblxyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bob25lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbnRhY3RQZXJzb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnaXNMaW5rZWQnLCB0eXBlOiAnY2hlY2tib3gnLCBhbGlhczogJ0xpbmtlZCcgfSxcclxuXHJcbiAgICBdLFxyXG5cclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlJywgZGlzcGxheTogJ0NyZWF0ZScsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2dlbmVyYWwvY3VzdG9tZXJzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2dlbmVyYWwvY3VzdG9tZXJzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdnZW5lcmFsL2N1c3RvbWVycz9hY3Rpb249ZGVsZXRlJywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgXSxcclxuXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2dlbmVyYWwvY3VzdG9tZXJzL3gnIH0sXHJcblxyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5mb3JtQ29uZmlnXHJcblxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGg0PkN1c3RvbWVyczwvaDQ+XG48aHI+XG5cblxuPGRpdiBjbGFzcz1cIm10LTNcIiBzdHlsZT1cIiBmb250LXNpemU6IDE0cHg7XCI+XG4gIDxzcGEtdGFibGUgW2NvbmZpZ109XCJjb25maWdcIj48L3NwYS10YWJsZT5cbjwvZGl2PlxuIl19
@@ -3,7 +3,7 @@ import * as i0 from "@angular/core";
3
3
  import * as i1 from "../../services/datalib.service";
4
4
  import * as i2 from "../../services/message.service";
5
5
  import * as i3 from "../../services/auth.service";
6
- import * as i4 from "../table/table.component";
6
+ import * as i4 from "../../components/table/table.component";
7
7
  export class DepartmentsComponent {
8
8
  constructor(dataService, messageService, authService) {
9
9
  this.dataService = dataService;
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
21
21
  type: Component,
22
22
  args: [{ selector: 'spa-departments', template: "<h4>Departments</h4>\r\n<hr>\r\n\r\n<div class=\"mt-3\" style=\" font-size: 14px;\">\r\n <spa-table [config]=\"dataService.departmentTableConfig\"></spa-table>\r\n</div>\r\n" }]
23
23
  }], ctorParameters: function () { return [{ type: i1.DataServiceLib }, { type: i2.MessageService }, { type: i3.AuthService }]; } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwYXJ0bWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvZGVwYXJ0bWVudHMvZGVwYXJ0bWVudHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvZGVwYXJ0bWVudHMvZGVwYXJ0bWVudHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBV2xELE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsWUFBbUIsV0FBMkIsRUFBVSxjQUE4QixFQUFTLFdBQXdCO1FBQXBHLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFTLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUksQ0FBQztJQUU1SCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUN2QyxDQUFDOztpSEFQVSxvQkFBb0I7cUdBQXBCLG9CQUFvQix1RENYakMsZ0xBTUE7MkZES2Esb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlTGliIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGF0YWxpYi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRm9ybUNvbmZpZywgVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi9jbGFzc2VzL0NsYXNzZXMnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLWRlcGFydG1lbnRzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGVwYXJ0bWVudHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2RlcGFydG1lbnRzLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVwYXJ0bWVudHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlTGliLCBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSwgcHVibGljIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXRhU2VydmljZS5sb2FkUG9zaXRpb25NZXRhKCk7XHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLmxvYWRFbXBsb3llZXNNZXRhKCk7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIiwiPGg0PkRlcGFydG1lbnRzPC9oND5cclxuPGhyPlxyXG5cclxuPGRpdiBjbGFzcz1cIm10LTNcIiBzdHlsZT1cIiBmb250LXNpemU6IDE0cHg7XCI+XHJcbiAgPHNwYS10YWJsZSBbY29uZmlnXT1cImRhdGFTZXJ2aWNlLmRlcGFydG1lbnRUYWJsZUNvbmZpZ1wiPjwvc3BhLXRhYmxlPlxyXG48L2Rpdj5cclxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwYXJ0bWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3BhZ2VzL2RlcGFydG1lbnRzL2RlcGFydG1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9kZXBhcnRtZW50cy9kZXBhcnRtZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFXbEQsTUFBTSxPQUFPLG9CQUFvQjtJQUUvQixZQUFtQixXQUEyQixFQUFVLGNBQThCLEVBQVMsV0FBd0I7UUFBcEcsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFBSSxDQUFDO0lBRTVILFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7O2lIQVBVLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHVEQ1hqQyxnTEFNQTsyRkRLYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0YVNlcnZpY2VMaWIgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kYXRhbGliLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGb3JtQ29uZmlnLCBUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWVzc2FnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtZGVwYXJ0bWVudHMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kZXBhcnRtZW50cy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGVwYXJ0bWVudHMuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZXBhcnRtZW50c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBkYXRhU2VydmljZTogRGF0YVNlcnZpY2VMaWIsIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLCBwdWJsaWMgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLmxvYWRQb3NpdGlvbk1ldGEoKTtcclxuICAgIHRoaXMuZGF0YVNlcnZpY2UubG9hZEVtcGxveWVlc01ldGEoKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8aDQ+RGVwYXJ0bWVudHM8L2g0PlxyXG48aHI+XHJcblxyXG48ZGl2IGNsYXNzPVwibXQtM1wiIHN0eWxlPVwiIGZvbnQtc2l6ZTogMTRweDtcIj5cclxuICA8c3BhLXRhYmxlIFtjb25maWddPVwiZGF0YVNlcnZpY2UuZGVwYXJ0bWVudFRhYmxlQ29uZmlnXCI+PC9zcGEtdGFibGU+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -2,7 +2,7 @@ import { Component } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "../../services/datalib.service";
4
4
  import * as i2 from "../../services/auth.service";
5
- import * as i3 from "../table/table.component";
5
+ import * as i3 from "../../components/table/table.component";
6
6
  export class EmployeesComponent {
7
7
  constructor(dataService, authService) {
8
8
  this.dataService = dataService;
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
18
18
  type: Component,
19
19
  args: [{ selector: 'spa-employees', template: "<h4>Employees</h4>\r\n<hr>\r\n\r\n<div class=\"mt-3\" style=\" font-size: 14px;\">\r\n <spa-table [config]=\"dataService.employeeTableConfig\"></spa-table>\r\n</div>\r\n" }]
20
20
  }], ctorParameters: function () { return [{ type: i1.DataServiceLib }, { type: i2.AuthService }]; } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9jb21wb25lbnRzL2VtcGxveWVlcy9lbXBsb3llZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvZW1wbG95ZWVzL2VtcGxveWVlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7OztBQVdsRCxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLFlBQW1CLFdBQTJCLEVBQVMsV0FBd0I7UUFBNUQsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQVMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFBSSxDQUFDO0lBRXBGLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDdkMsQ0FBQzs7K0dBTlUsa0JBQWtCO21HQUFsQixrQkFBa0IscURDWC9CLDRLQU1BOzJGREthLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0YVNlcnZpY2VMaWIgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kYXRhbGliLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGb3JtQ29uZmlnLCBUYWJsZUNvbmZpZywgQXBpUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9jbGFzc2VzL0NsYXNzZXMnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLWVtcGxveWVlcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VtcGxveWVlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZW1wbG95ZWVzLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRW1wbG95ZWVzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZUxpYiwgcHVibGljIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXRhU2VydmljZS5sb2FkRW1wbG95ZWVzTWV0YSgpO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGg0PkVtcGxveWVlczwvaDQ+XHJcbjxocj5cclxuXHJcbjxkaXYgY2xhc3M9XCJtdC0zXCIgc3R5bGU9XCIgZm9udC1zaXplOiAxNHB4O1wiPlxyXG4gIDxzcGEtdGFibGUgW2NvbmZpZ109XCJkYXRhU2VydmljZS5lbXBsb3llZVRhYmxlQ29uZmlnXCI+PC9zcGEtdGFibGU+XHJcbjwvZGl2PlxyXG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9lbXBsb3llZXMvZW1wbG95ZWVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9lbXBsb3llZXMvZW1wbG95ZWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBV2xELE1BQU0sT0FBTyxrQkFBa0I7SUFFN0IsWUFBbUIsV0FBMkIsRUFBUyxXQUF3QjtRQUE1RCxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBUyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUFJLENBQUM7SUFFcEYsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUN2QyxDQUFDOzsrR0FOVSxrQkFBa0I7bUdBQWxCLGtCQUFrQixxRENYL0IsNEtBTUE7MkZES2Esa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEYXRhU2VydmljZUxpYiB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZSc7XHJcbmltcG9ydCB7IEZvcm1Db25maWcsIFRhYmxlQ29uZmlnLCBBcGlSZXNwb25zZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWVzc2FnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtZW1wbG95ZWVzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZW1wbG95ZWVzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lbXBsb3llZXMuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbXBsb3llZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlTGliLCBwdWJsaWMgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLmxvYWRFbXBsb3llZXNNZXRhKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8aDQ+RW1wbG95ZWVzPC9oND5cclxuPGhyPlxyXG5cclxuPGRpdiBjbGFzcz1cIm10LTNcIiBzdHlsZT1cIiBmb250LXNpemU6IDE0cHg7XCI+XHJcbiAgPHNwYS10YWJsZSBbY29uZmlnXT1cImRhdGFTZXJ2aWNlLmVtcGxveWVlVGFibGVDb25maWdcIj48L3NwYS10YWJsZT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -11,4 +11,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
11
11
  type: Component,
12
12
  args: [{ selector: 'spa-grades', template: "<h4>Grades</h4>\n<hr>\n" }]
13
13
  }], ctorParameters: function () { return []; } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhZGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9jb21wb25lbnRzL2dyYWRlcy9ncmFkZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvZ3JhZGVzL2dyYWRlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQU9sRCxNQUFNLE9BQU8sZUFBZTtJQUUxQixnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7NEdBTFUsZUFBZTtnR0FBZixlQUFlLGtEQ1A1Qix5QkFFQTsyRkRLYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcGEtZ3JhZGVzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyYWRlcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyYWRlcy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR3JhZGVzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbn1cbiIsIjxoND5HcmFkZXM8L2g0PlxuPGhyPlxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhZGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9ncmFkZXMvZ3JhZGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9ncmFkZXMvZ3JhZGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBT2xELE1BQU0sT0FBTyxlQUFlO0lBRTFCLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOzs0R0FMVSxlQUFlO2dHQUFmLGVBQWUsa0RDUDVCLHlCQUVBOzJGREthLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NwYS1ncmFkZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JhZGVzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3JhZGVzLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHcmFkZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxufVxuIiwiPGg0PkdyYWRlczwvaDQ+XG48aHI+XG4iXX0=
@@ -0,0 +1,99 @@
1
+ import { Component } from '@angular/core';
2
+ import { quantityDialog } from './quantityDialog.component';
3
+ import { Subject } from 'rxjs';
4
+ import { ListDialogComponent } from '../../components/list-dialog/list-dialog.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../services/datalib.service";
7
+ import * as i2 from "../../services/message.service";
8
+ import * as i3 from "../../services/auth.service";
9
+ import * as i4 from "@angular/material/dialog";
10
+ import * as i5 from "@angular/material/button";
11
+ import * as i6 from "@angular/material/icon";
12
+ import * as i7 from "@angular/material/tooltip";
13
+ import * as i8 from "../../components/table/table.component";
14
+ export class InventoryComponent {
15
+ constructor(dataService, messageService, authService, dialog) {
16
+ this.dataService = dataService;
17
+ this.messageService = messageService;
18
+ this.authService = authService;
19
+ this.dialog = dialog;
20
+ this.reload = new Subject();
21
+ this.formConfig = {
22
+ fields: [
23
+ { name: 'name', type: 'text' },
24
+ { name: 'description', type: 'text' },
25
+ { name: 'serial', type: 'text', hidden: true },
26
+ { name: 'price', type: 'money', },
27
+ { name: 'minQuantity', alias: 'Minimum Quantity', type: 'number' },
28
+ { name: 'categoryID', alias: 'Category', type: 'select', optionDisplay: 'name', optionValue: 'listItemID', defaultFirstValue: true },
29
+ ],
30
+ reset: true,
31
+ };
32
+ this.config = {
33
+ showFilter: true,
34
+ minColumns: ['name', 'quantity'],
35
+ minButtons: ['increase', 'decrease', 'edit'],
36
+ flatButtons: true,
37
+ columns: [
38
+ { name: 'name', type: 'text' },
39
+ { name: 'description', type: 'text' },
40
+ { name: 'categoryName', alias: 'Category', type: 'text' },
41
+ { name: 'quantity', type: 'number', icon: { name: 'warning', color: 'red', tip: 'Stock up', condition: x => x.quantity <= x.minQuantity } },
42
+ { name: 'price', alias: 'Unit Price', type: 'money', },
43
+ ],
44
+ buttons: [
45
+ { name: 'increase', icon: { name: 'add' }, color: 'green', },
46
+ { name: 'decrease', icon: { name: 'remove' }, color: 'red', },
47
+ { name: 'create', display: 'Create', dialog: true, action: { url: 'general/inventory?action=create', method: 'post' } },
48
+ { name: 'edit', dialog: true, action: { url: 'general/inventory?action=edit', method: 'post' } },
49
+ { name: 'delete', dialog: true, action: { url: 'general/inventory?action=delete', method: 'post' } },
50
+ ],
51
+ loadAction: { url: 'general/inventory/x' },
52
+ formConfig: this.formConfig
53
+ };
54
+ }
55
+ ngOnInit() {
56
+ this.loadData();
57
+ }
58
+ loadData() {
59
+ this.dataService.CallApi({ url: 'general/lists/InventoryCategories' }).subscribe((apiResponse) => {
60
+ this.formConfig.fields.find(x => x.name == 'categoryID').options = apiResponse.data;
61
+ });
62
+ }
63
+ clicked(x) {
64
+ if (x.name == "increase" || x.name == "decrease") {
65
+ this.comment(x);
66
+ }
67
+ }
68
+ comment(x) {
69
+ const dialogRef = this.dialog.open(quantityDialog, {
70
+ width: "900px",
71
+ data: x,
72
+ });
73
+ dialogRef.afterClosed().subscribe((result) => {
74
+ if (result == 'success') {
75
+ this.reload.next(true);
76
+ this.messageService.toast("Updated");
77
+ }
78
+ });
79
+ }
80
+ cats() {
81
+ let conf = { title: "Inventory Categories", name: 'Category', listName: 'InventoryCategories' };
82
+ const dialogRef = this.dialog.open(ListDialogComponent, {
83
+ width: "900px",
84
+ data: conf,
85
+ });
86
+ dialogRef.afterClosed().subscribe((result) => {
87
+ if (result == 'success') {
88
+ this.loadData();
89
+ }
90
+ });
91
+ }
92
+ }
93
+ InventoryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InventoryComponent, deps: [{ token: i1.DataServiceLib }, { token: i2.MessageService }, { token: i3.AuthService }, { token: i4.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
94
+ InventoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: InventoryComponent, selector: "spa-inventory", ngImport: i0, template: "<div class=\"d-flex align-items-center justify-content-between mt-0\" style=\"margin-left: 10px\">\n\n <label style=\"font-size: 16px;\">Inventory</label>\n\n <div >\n <button mat-mini-fab color=\"primary\" style=\"margin-right:1em;\" (click)=\"cats()\" matTooltip=\"Categories\" matTooltipPosition=\"above\"><mat-icon >category</mat-icon></button>\n </div>\n\n</div>\n<hr>\n\n\n<div class=\"mt-3\" style=\" font-size: 14px;\">\n <spa-table [config]=\"config\" (actionClick)=\"clicked($event)\" [reload]=\"reload\"></spa-table>\n</div>\n", styles: [".mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.refreshIcon{font-size:22px!important;margin-top:-7px!important}\n"], dependencies: [{ kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i8.TableComponent, selector: "spa-table", inputs: ["hideTitle", "data", "config", "reload"], outputs: ["dataLoad", "refreshClick", "searchClick", "createClick", "actionClick", "inputChange"] }] });
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InventoryComponent, decorators: [{
96
+ type: Component,
97
+ args: [{ selector: 'spa-inventory', template: "<div class=\"d-flex align-items-center justify-content-between mt-0\" style=\"margin-left: 10px\">\n\n <label style=\"font-size: 16px;\">Inventory</label>\n\n <div >\n <button mat-mini-fab color=\"primary\" style=\"margin-right:1em;\" (click)=\"cats()\" matTooltip=\"Categories\" matTooltipPosition=\"above\"><mat-icon >category</mat-icon></button>\n </div>\n\n</div>\n<hr>\n\n\n<div class=\"mt-3\" style=\" font-size: 14px;\">\n <spa-table [config]=\"config\" (actionClick)=\"clicked($event)\" [reload]=\"reload\"></spa-table>\n</div>\n", styles: [".mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.refreshIcon{font-size:22px!important;margin-top:-7px!important}\n"] }]
98
+ }], ctorParameters: function () { return [{ type: i1.DataServiceLib }, { type: i2.MessageService }, { type: i3.AuthService }, { type: i4.MatDialog }]; } });
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52ZW50b3J5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9pbnZlbnRvcnkvaW52ZW50b3J5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9pbnZlbnRvcnkvaW52ZW50b3J5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7Ozs7Ozs7Ozs7QUFRekYsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixZQUFvQixXQUEyQixFQUFVLGNBQThCLEVBQVMsV0FBd0IsRUFBUyxNQUFpQjtRQUE5SCxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBUyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFTLFdBQU0sR0FBTixNQUFNLENBQVc7UUFZbEosV0FBTSxHQUFxQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBNEN6QyxlQUFVLEdBQWU7WUFFdkIsTUFBTSxFQUFFO2dCQUNOLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO2dCQUM5QixFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRTtnQkFDckMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFHLElBQUksRUFBRTtnQkFDL0MsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFF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QUFFO2dCQUN2QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7YUFDaEI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUVMLENBQUM7OytHQXZEVSxrQkFBa0I7bUdBQWxCLGtCQUFrQixxRENoQi9CLG1pQkFlQTsyRkRDYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlTGliIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGF0YWxpYi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRm9ybUNvbmZpZywgTGlzdERpYWxvZ0NvbmZpZywgVGFibGVDb25maWcsIEFwaVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tZXNzYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IHF1YW50aXR5RGlhbG9nIH0gZnJvbSAnLi9xdWFudGl0eURpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IExpc3REaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2xpc3QtZGlhbG9nL2xpc3QtZGlhbG9nLmNvbXBvbmVudCc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtaW52ZW50b3J5JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW52ZW50b3J5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnZlbnRvcnkuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnZlbnRvcnlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZUxpYiwgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsIHB1YmxpYyBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkRGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgbG9hZERhdGEoKXtcclxuICAgIHRoaXMuZGF0YVNlcnZpY2UuQ2FsbEFwaSh7dXJsIDonZ2VuZXJhbC9saXN0cy9JbnZlbnRvcnlDYXRlZ29yaWVzJ30pLnN1YnNjcmliZSgoYXBpUmVzcG9uc2UgOiBBcGlSZXNwb25zZSkgPT4ge1xyXG4gICAgICB0aGlzLmZvcm1Db25maWcuZmllbGRzLmZpbmQoeCA9PiB4Lm5hbWUgPT0gJ2NhdGVnb3J5SUQnKS5vcHRpb25zID0gYXBpUmVzcG9uc2UuZGF0YTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICByZWxvYWQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBjbGlja2VkKHgpe1xyXG5cclxuICAgIGlmICh4Lm5hbWUgPT0gXCJpbmNyZWFzZVwiIHx8IHgubmFtZSA9PSBcImRlY3JlYXNlXCIpe1xyXG4gICAgICB0aGlzLmNvbW1lbnQoeClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbW1lbnQoeCkge1xyXG5cclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4ocXVhbnRpdHlEaWFsb2csIHtcclxuICAgICAgd2lkdGg6IFwiOTAwcHhcIixcclxuICAgICAgZGF0YTogeCxcclxuICAgIH0pO1xyXG5cclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcblxyXG4gICAgICBpZiAocmVzdWx0ID09ICdzdWNjZXNzJykge1xyXG4gICAgICAgIHRoaXMucmVsb2FkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdChcIlVwZGF0ZWRcIilcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjYXRzKCkge1xyXG5cclxuICAgIGxldCBjb25mOiBMaXN0RGlhbG9nQ29uZmlnID0geyB0aXRsZTogXCJJbnZlbnRvcnkgQ2F0ZWdvcmllc1wiLCBuYW1lIDogJ0NhdGVnb3J5JywgbGlzdE5hbWUgOiAnSW52ZW50b3J5Q2F0ZWdvcmllcyd9XHJcblxyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihMaXN0RGlhbG9nQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBcIjkwMHB4XCIsXHJcbiAgICAgIGRhdGE6IGNvbmYgLFxyXG4gICAgfSk7XHJcblxyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuXHJcbiAgICAgIGlmIChyZXN1bHQgPT0gJ3N1Y2Nlc3MnKSB7XHJcbiAgICAgICAgdGhpcy5sb2FkRGF0YSgpXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG5cclxuICBmb3JtQ29uZmlnOiBGb3JtQ29uZmlnID0ge1xyXG5cclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2Rlc2NyaXB0aW9uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ3NlcmlhbCcsIHR5cGU6ICd0ZXh0JywgaGlkZGVuIDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdwcmljZScsIHR5cGU6ICdtb25leScsIH0sXHJcbiAgICAgIHsgbmFtZTogJ21pblF1YW50aXR5JywgYWxpYXMgOiAnTWluaW11bSBRdWFudGl0eScsIHR5cGU6ICdudW1iZXInIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NhdGVnb3J5SUQnLCBhbGlhcyA6ICdDYXRlZ29yeScsIHR5cGU6ICdzZWxlY3QnLCBvcHRpb25EaXNwbGF5IDogJ25hbWUnLCBvcHRpb25WYWx1ZSA6ICdsaXN0SXRlbUlEJywgZGVmYXVsdEZpcnN0VmFsdWUgOiB0cnVlIH0sXHJcblxyXG4gICAgXSxcclxuXHJcbiAgICByZXNldDogdHJ1ZSxcclxuICB9XHJcblxyXG4gIGNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgbWluQ29sdW1uczogWyduYW1lJywgJ3F1YW50aXR5J10sXHJcbiAgICBtaW5CdXR0b25zOiBbJ2luY3JlYXNlJywgJ2RlY3JlYXNlJywgJ2VkaXQnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG5cclxuICAgIGNvbHVtbnM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdkZXNjcmlwdGlvbicsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjYXRlZ29yeU5hbWUnLCBhbGlhcyA6ICdDYXRlZ29yeScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdxdWFudGl0eScsIHR5cGU6ICdudW1iZXInLCBpY29uIDp7bmFtZSA6ICd3YXJuaW5nJywgY29sb3IgOiAncmVkJywgdGlwIDogJ1N0b2NrIHVwJywgY29uZGl0aW9uIDogeCA9PiB4LnF1YW50aXR5IDw9IHgubWluUXVhbnRpdHl9IH0sXHJcbiAgICAgIHsgbmFtZTogJ3ByaWNlJywgYWxpYXMgOiAnVW5pdCBQcmljZScsIHR5cGU6ICdtb25leScsIH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgeyBuYW1lOiAnaW5jcmVhc2UnLCBpY29uOiB7IG5hbWU6ICdhZGQnIH0sIGNvbG9yOiAnZ3JlZW4nLCB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWNyZWFzZScsIGljb246IHsgbmFtZTogJ3JlbW92ZScgfSwgY29sb3I6ICdyZWQnLCAgfSxcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlJywgZGlzcGxheTogJ0NyZWF0ZScsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2dlbmVyYWwvaW52ZW50b3J5P2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcblxyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZ2VuZXJhbC9pbnZlbnRvcnk/YWN0aW9uPWVkaXQnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlbGV0ZScsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2dlbmVyYWwvaW52ZW50b3J5P2FjdGlvbj1kZWxldGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZ2VuZXJhbC9pbnZlbnRvcnkveCcgfSxcclxuXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmZvcm1Db25maWdcclxuXHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtMFwiIHN0eWxlPVwibWFyZ2luLWxlZnQ6IDEwcHhcIj5cblxuICA8bGFiZWwgc3R5bGU9XCJmb250LXNpemU6IDE2cHg7XCI+SW52ZW50b3J5PC9sYWJlbD5cblxuICA8ZGl2ID5cbiAgICA8YnV0dG9uIG1hdC1taW5pLWZhYiBjb2xvcj1cInByaW1hcnlcIiAgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6MWVtO1wiIChjbGljayk9XCJjYXRzKClcIiBtYXRUb29sdGlwPVwiQ2F0ZWdvcmllc1wiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+PG1hdC1pY29uID5jYXRlZ29yeTwvbWF0LWljb24+PC9idXR0b24+XG4gIDwvZGl2PlxuXG48L2Rpdj5cbjxocj5cblxuXG48ZGl2IGNsYXNzPVwibXQtM1wiIHN0eWxlPVwiIGZvbnQtc2l6ZTogMTRweDtcIj5cbiAgPHNwYS10YWJsZSBbY29uZmlnXT1cImNvbmZpZ1wiIChhY3Rpb25DbGljayk9XCJjbGlja2VkKCRldmVudClcIiBbcmVsb2FkXT1cInJlbG9hZFwiPjwvc3BhLXRhYmxlPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,53 @@
1
+ //-------------------------------------------VIEW
2
+ import { Component, Inject } from '@angular/core';
3
+ import { MAT_DIALOG_DATA } from '@angular/material/dialog';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../services/loader.service";
6
+ import * as i2 from "../../services/message.service";
7
+ import * as i3 from "../../services/datalib.service";
8
+ import * as i4 from "@angular/material/dialog";
9
+ import * as i5 from "@angular/material/button";
10
+ import * as i6 from "../../components/text/text.component";
11
+ import * as i7 from "../../components/number/number.component";
12
+ import * as i8 from "@angular/common";
13
+ // import { ApiResponse, DataServiceLib, MessageService } from 'projects/tin-spa/src/public-api';
14
+ export class quantityDialog {
15
+ constructor(loaderService, messageService, dataService, dialogRef, data) {
16
+ this.loaderService = loaderService;
17
+ this.messageService = messageService;
18
+ this.dataService = dataService;
19
+ this.dialogRef = dialogRef;
20
+ this.data = data;
21
+ this.quantity = 0;
22
+ this.isLoadComplete = false;
23
+ this.isProcessing = false;
24
+ }
25
+ ngOnInit() {
26
+ this.action = this.data.name;
27
+ this.inv = this.data.data;
28
+ this.isLoadComplete = true;
29
+ this.loaderService.isLoading.subscribe(x => this.isProcessing = x);
30
+ }
31
+ submit() {
32
+ this.inv.quantity = this.quantity;
33
+ this.dataService.CallApi({ url: `general/inventory?action=${this.action}`, method: 'post' }, this.inv).subscribe((x) => {
34
+ if (x.success) {
35
+ this.dialogRef.close('success');
36
+ }
37
+ else {
38
+ this.messageService.toast(x.message);
39
+ }
40
+ });
41
+ }
42
+ }
43
+ quantityDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: quantityDialog, deps: [{ token: i1.LoaderService }, { token: i2.MessageService }, { token: i3.DataServiceLib }, { token: i4.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
44
+ quantityDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: quantityDialog, selector: "app-quanityDiag", ngImport: i0, template: "\r\n<h2 mat-dialog-title>{{data.name | titlecase}} {{inv.name}}</h2>\r\n<mat-dialog-content class=\"mat-typography\">\r\n\r\n<div class=\"tin-grid\" style=\"font-size:14px\">\r\n\r\n <spa-text display=\"Name\" [value]=\"inv.name\" [readonly]=\"true\"></spa-text>\r\n <spa-text display=\"Description\" [value]=\"inv.description\" [readonly]=\"true\"></spa-text>\r\n <spa-number display=\"Quantity\" [(value)]=\"quantity\" [hint]=\"'Quantity to ' + data.name\" ></spa-number>\r\n\r\n</div>\r\n\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions>\r\n<button mat-button [disabled]=\"isProcessing\" (click)=\"submit()\" cdkFocusInitial>Submit</button>\r\n<button mat-button cdkFocusInitial mat-dialog-close>Cancel</button>\r\n</mat-dialog-actions>\r\n\r\n\r\n\r\n", styles: [".mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.refreshIcon{font-size:22px!important;margin-top:-7px!important}\n"], dependencies: [{ kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i6.TextComponent, selector: "spa-text", inputs: ["readonly", "hint", "display", "placeholder", "value", "format", "type", "rows", "width", "copyContent", "options", "optionValue", "required", "min", "max", "regex", "suffix", "infoMessage"], outputs: ["valueChange", "leave", "enterPress", "infoClick"] }, { kind: "component", type: i7.NumberComponent, selector: "spa-number", inputs: ["readonly", "hint", "display", "placeholder", "value", "width", "required", "min", "max", "step", "suffix", "infoMessage"], outputs: ["valueChange", "leave", "enterPress", "infoClick"] }, { kind: "pipe", type: i8.TitleCasePipe, name: "titlecase" }] });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: quantityDialog, decorators: [{
46
+ type: Component,
47
+ args: [{ selector: 'app-quanityDiag', template: "\r\n<h2 mat-dialog-title>{{data.name | titlecase}} {{inv.name}}</h2>\r\n<mat-dialog-content class=\"mat-typography\">\r\n\r\n<div class=\"tin-grid\" style=\"font-size:14px\">\r\n\r\n <spa-text display=\"Name\" [value]=\"inv.name\" [readonly]=\"true\"></spa-text>\r\n <spa-text display=\"Description\" [value]=\"inv.description\" [readonly]=\"true\"></spa-text>\r\n <spa-number display=\"Quantity\" [(value)]=\"quantity\" [hint]=\"'Quantity to ' + data.name\" ></spa-number>\r\n\r\n</div>\r\n\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions>\r\n<button mat-button [disabled]=\"isProcessing\" (click)=\"submit()\" cdkFocusInitial>Submit</button>\r\n<button mat-button cdkFocusInitial mat-dialog-close>Cancel</button>\r\n</mat-dialog-actions>\r\n\r\n\r\n\r\n", styles: [".mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.refreshIcon{font-size:22px!important;margin-top:-7px!important}\n"] }]
48
+ }], ctorParameters: function () { return [{ type: i1.LoaderService }, { type: i2.MessageService }, { type: i3.DataServiceLib }, { type: i4.MatDialogRef }, { type: undefined, decorators: [{
49
+ type: Inject,
50
+ args: [MAT_DIALOG_DATA]
51
+ }] }]; } });
52
+ ;
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVhbnRpdHlEaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3BhZ2VzL2ludmVudG9yeS9xdWFudGl0eURpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90aW4tc3BhL3NyYy9saWIvcGFnZXMvaW52ZW50b3J5L3F1YW50aXR5RGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlEQUFpRDtBQUVqRCxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7O0FBTXpFLGlHQUFpRztBQU9qRyxNQUFNLE9BQU8sY0FBYztJQUV6QixZQUFvQixhQUE0QixFQUFTLGNBQThCLEVBQVUsV0FBNEIsRUFBVSxTQUF1QyxFQUFrQyxJQUFJO1FBQWhNLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBOEI7UUFBa0MsU0FBSSxHQUFKLElBQUksQ0FBQTtRQVdwTixhQUFRLEdBQUcsQ0FBQyxDQUFBO1FBR1osbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsaUJBQVksR0FBWSxLQUFLLENBQUM7SUFmMEwsQ0FBQztJQUV6TixRQUFRO1FBRU4sSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFBO1FBQ3pCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFckUsQ0FBQztJQVFELE1BQU07UUFDSixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFBO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLDRCQUE0QixJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFlLEVBQUUsRUFBRTtZQUVuSSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUM7Z0JBQ1osSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDakM7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBO2FBQ3JDO1FBRUgsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOzsyR0E5QlUsY0FBYyx1SUFFK0osZUFBZTsrRkFGNUwsY0FBYyx1RENoQjNCLDR2QkFxQkE7MkZETGEsY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxpQkFBaUI7OzBCQU1zSixNQUFNOzJCQUFDLGVBQWU7O0FBNkJ4TSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tVklFV1xyXG5cclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlTGliIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGF0YWxpYi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tZXNzYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9hZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcGlSZXNwb25zZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcblxyXG4vLyBpbXBvcnQgeyBBcGlSZXNwb25zZSwgRGF0YVNlcnZpY2VMaWIsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJvamVjdHMvdGluLXNwYS9zcmMvcHVibGljLWFwaSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1xdWFuaXR5RGlhZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3F1YW50aXR5RGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnZlbnRvcnkuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBxdWFudGl0eURpYWxvZyBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9hZGVyU2VydmljZTogTG9hZGVyU2VydmljZSxwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSwgcHJpdmF0ZSBkYXRhU2VydmljZSA6IERhdGFTZXJ2aWNlTGliLCBwcml2YXRlIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPHF1YW50aXR5RGlhbG9nPiwgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcblxyXG4gICAgdGhpcy5hY3Rpb24gPSB0aGlzLmRhdGEubmFtZTtcclxuICAgIHRoaXMuaW52ID0gdGhpcy5kYXRhLmRhdGFcclxuICAgIHRoaXMuaXNMb2FkQ29tcGxldGUgPSB0cnVlO1xyXG4gICAgdGhpcy5sb2FkZXJTZXJ2aWNlLmlzTG9hZGluZy5zdWJzY3JpYmUoeCA9PiB0aGlzLmlzUHJvY2Vzc2luZyA9IHgpO1xyXG5cclxuICB9XHJcblxyXG4gIHF1YW50aXR5ID0gMFxyXG4gIGFjdGlvbjtcclxuICBpbnZcclxuICBpc0xvYWRDb21wbGV0ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzUHJvY2Vzc2luZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBzdWJtaXQoKSB7XHJcbiAgICB0aGlzLmludi5xdWFudGl0eSA9IHRoaXMucXVhbnRpdHlcclxuICAgIHRoaXMuZGF0YVNlcnZpY2UuQ2FsbEFwaSh7IHVybDogYGdlbmVyYWwvaW52ZW50b3J5P2FjdGlvbj0ke3RoaXMuYWN0aW9ufWAsIG1ldGhvZDogJ3Bvc3QnIH0sIHRoaXMuaW52KS5zdWJzY3JpYmUoKHggOiBBcGlSZXNwb25zZSkgPT4ge1xyXG5cclxuICAgICAgaWYgKHguc3VjY2Vzcyl7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoJ3N1Y2Nlc3MnKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KHgubWVzc2FnZSlcclxuICAgICAgfVxyXG5cclxuICAgIH0pXHJcbiAgfVxyXG59O1xyXG5cclxuXHJcblxyXG4iLCJcclxuPGgyIG1hdC1kaWFsb2ctdGl0bGU+e3tkYXRhLm5hbWUgfCB0aXRsZWNhc2V9fSB7e2ludi5uYW1lfX08L2gyPlxyXG48bWF0LWRpYWxvZy1jb250ZW50IGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj5cclxuXHJcbjxkaXYgY2xhc3M9XCJ0aW4tZ3JpZFwiIHN0eWxlPVwiZm9udC1zaXplOjE0cHhcIj5cclxuXHJcbiAgPHNwYS10ZXh0IGRpc3BsYXk9XCJOYW1lXCIgW3ZhbHVlXT1cImludi5uYW1lXCIgW3JlYWRvbmx5XT1cInRydWVcIj48L3NwYS10ZXh0PlxyXG4gIDxzcGEtdGV4dCBkaXNwbGF5PVwiRGVzY3JpcHRpb25cIiBbdmFsdWVdPVwiaW52LmRlc2NyaXB0aW9uXCIgW3JlYWRvbmx5XT1cInRydWVcIj48L3NwYS10ZXh0PlxyXG4gIDxzcGEtbnVtYmVyIGRpc3BsYXk9XCJRdWFudGl0eVwiIFsodmFsdWUpXT1cInF1YW50aXR5XCIgW2hpbnRdPVwiJ1F1YW50aXR5IHRvICcgKyBkYXRhLm5hbWVcIiA+PC9zcGEtbnVtYmVyPlxyXG5cclxuPC9kaXY+XHJcblxyXG48L21hdC1kaWFsb2ctY29udGVudD5cclxuXHJcbjxtYXQtZGlhbG9nLWFjdGlvbnM+XHJcbjxidXR0b24gbWF0LWJ1dHRvbiBbZGlzYWJsZWRdPVwiaXNQcm9jZXNzaW5nXCIgKGNsaWNrKT1cInN1Ym1pdCgpXCIgY2RrRm9jdXNJbml0aWFsPlN1Ym1pdDwvYnV0dG9uPlxyXG48YnV0dG9uIG1hdC1idXR0b24gY2RrRm9jdXNJbml0aWFsIG1hdC1kaWFsb2ctY2xvc2U+Q2FuY2VsPC9idXR0b24+XHJcbjwvbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG5cclxuXHJcblxyXG4iXX0=
@@ -11,4 +11,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
11
11
  type: Component,
12
12
  args: [{ selector: 'spa-invitations', template: "<p>invitations works!</p>\n" }]
13
13
  }], ctorParameters: function () { return []; } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52aXRhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvaW52aXRhdGlvbnMvaW52aXRhdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvaW52aXRhdGlvbnMvaW52aXRhdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFPbEQsTUFBTSxPQUFPLG9CQUFvQjtJQUUvQixnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7aUhBTFUsb0JBQW9CO3FHQUFwQixvQkFBb0IsdURDUGpDLDZCQUNBOzJGRE1hLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcGEtaW52aXRhdGlvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW52aXRhdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnZpdGF0aW9ucy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW52aXRhdGlvbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxufVxuIiwiPHA+aW52aXRhdGlvbnMgd29ya3MhPC9wPlxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52aXRhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3BhZ2VzL2ludml0YXRpb25zL2ludml0YXRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9pbnZpdGF0aW9ucy9pbnZpdGF0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQU9sRCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOztpSEFMVSxvQkFBb0I7cUdBQXBCLG9CQUFvQix1RENQakMsNkJBQ0E7MkZETWEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NwYS1pbnZpdGF0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnZpdGF0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ludml0YXRpb25zLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJbnZpdGF0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG59XG4iLCI8cD5pbnZpdGF0aW9ucyB3b3JrcyE8L3A+XG4iXX0=
@@ -0,0 +1,70 @@
1
+ import { Component } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/datalib.service";
5
+ import * as i2 from "../../services/message.service";
6
+ import * as i3 from "../../services/auth.service";
7
+ import * as i4 from "../../components/table/table.component";
8
+ export class InvitationsTableComponent {
9
+ constructor(dataService, messageService, authService) {
10
+ this.dataService = dataService;
11
+ this.messageService = messageService;
12
+ this.authService = authService;
13
+ this.tableReload = new Subject();
14
+ this.invTableConfig = {
15
+ greyOut: (value) => value.accepted == false,
16
+ elevation: 'low',
17
+ minColumns: ['tenantName'],
18
+ minButtons: ['accept', 'decline'],
19
+ flatButtons: true,
20
+ columns: [
21
+ { name: 'tenantName', alias: 'Organisation', type: 'text' },
22
+ { name: 'owner', type: 'text', },
23
+ ],
24
+ buttons: [
25
+ { name: 'accept', icon: { 'name': 'done', }, color: 'green', confirm: { message: 'Accept ?' }, disabled: (x) => x.accepted },
26
+ { name: 'decline', icon: { 'name': 'close', }, color: 'red', confirm: { message: 'Decline ?' }, disabled: (x) => x.accepted },
27
+ ],
28
+ loadAction: { url: 'tenant/invitations/x' },
29
+ };
30
+ }
31
+ ngOnInit() {
32
+ }
33
+ invActionClicked(x) {
34
+ let message = "Accept";
35
+ let action = "accept";
36
+ if (x.name == "decline") {
37
+ action = "remove";
38
+ message = "Decline";
39
+ }
40
+ //accept / decline
41
+ this.messageService.confirm(`${message} ${x.data.tenantName} ?`).subscribe((result) => {
42
+ if (result == "yes") {
43
+ this.dataService.CallApi({ url: 'tenant/members?action=' + action, method: 'post', }, x.data).subscribe((apiResponse) => {
44
+ if (apiResponse.success) {
45
+ this.tableReload.next(true);
46
+ // switch
47
+ this.messageService.confirm(`Switch to ${x.data.tenantName} now ?`).subscribe((result) => {
48
+ if (result == "yes") {
49
+ let tenant = { tenantID: x.data.tenantID };
50
+ this.dataService.CallApi({ url: 'tenant/tenants?action=switch', method: 'post' }, tenant).subscribe((apiResponse) => {
51
+ if (apiResponse.success) {
52
+ this.messageService.toast("Switched Successfully, please login again");
53
+ this.authService.logoff();
54
+ }
55
+ });
56
+ }
57
+ });
58
+ }
59
+ });
60
+ }
61
+ });
62
+ }
63
+ }
64
+ InvitationsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InvitationsTableComponent, deps: [{ token: i1.DataServiceLib }, { token: i2.MessageService }, { token: i3.AuthService }], target: i0.ɵɵFactoryTarget.Component });
65
+ InvitationsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: InvitationsTableComponent, selector: "spa-invitations-table", ngImport: i0, template: "<spa-table [config]=\"invTableConfig\" (actionClick)=\"invActionClicked($event)\" [reload]=\"tableReload\"></spa-table>\n", styles: [""], dependencies: [{ kind: "component", type: i4.TableComponent, selector: "spa-table", inputs: ["hideTitle", "data", "config", "reload"], outputs: ["dataLoad", "refreshClick", "searchClick", "createClick", "actionClick", "inputChange"] }] });
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InvitationsTableComponent, decorators: [{
67
+ type: Component,
68
+ args: [{ selector: 'spa-invitations-table', template: "<spa-table [config]=\"invTableConfig\" (actionClick)=\"invActionClicked($event)\" [reload]=\"tableReload\"></spa-table>\n" }]
69
+ }], ctorParameters: function () { return [{ type: i1.DataServiceLib }, { type: i2.MessageService }, { type: i3.AuthService }]; } });
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52aXRhdGlvbnMtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3BhZ2VzL2ludml0YXRpb25zLXRhYmxlL2ludml0YXRpb25zLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9pbnZpdGF0aW9ucy10YWJsZS9pbnZpdGF0aW9ucy10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBS2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7OztBQU8vQixNQUFNLE9BQU8seUJBQXlCO0lBRXBDLFlBQW1CLFdBQTJCLEVBQVUsY0FBOEIsRUFBUyxXQUF3QjtRQUFwRyxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBUyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQWlEdkgsZ0JBQVcsR0FBcUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM5QyxtQkFBYyxHQUFnQjtZQUU1QixPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSztZQUMzQyxTQUFTLEVBQUUsS0FBSztZQUNoQixVQUFVLEVBQUUsQ0FBQyxZQUFZLENBQUM7WUFDMUIsVUFBVSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQztZQUNqQyxXQUFXLEVBQUcsSUFBSTtZQUVsQixPQUFPLEVBQUU7Z0JBQ1AsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRTtnQkFDM0QsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFB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Q29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXBpUmVzcG9uc2UsIFRhYmxlQ29uZmlnIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgRGF0YVNlcnZpY2VMaWIgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kYXRhbGliLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtaW52aXRhdGlvbnMtdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnZpdGF0aW9ucy10YWJsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW52aXRhdGlvbnMtdGFibGUuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnZpdGF0aW9uc1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZUxpYiwgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsIHB1YmxpYyBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIGludkFjdGlvbkNsaWNrZWQoeCkge1xyXG5cclxuICAgIGxldCBtZXNzYWdlID0gXCJBY2NlcHRcIlxyXG4gICAgbGV0IGFjdGlvbiA9IFwiYWNjZXB0XCJcclxuICAgIGlmICh4Lm5hbWUgPT0gXCJkZWNsaW5lXCIpIHtcclxuICAgICAgYWN0aW9uID0gXCJyZW1vdmVcIjtcclxuICAgICAgbWVzc2FnZSA9IFwiRGVjbGluZVwiXHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICAvL2FjY2VwdCAvIGRlY2xpbmVcclxuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuY29uZmlybShgJHttZXNzYWdlfSAke3guZGF0YS50ZW5hbnROYW1lfSA/YCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuXHJcbiAgICAgIGlmIChyZXN1bHQgPT0gXCJ5ZXNcIikge1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuQ2FsbEFwaSh7IHVybDogJ3RlbmFudC9tZW1iZXJzP2FjdGlvbj0nICsgYWN0aW9uLCBtZXRob2Q6ICdwb3N0JywgfSwgeC5kYXRhKS5zdWJzY3JpYmUoKGFwaVJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG5cclxuICAgICAgICAgIGlmIChhcGlSZXNwb25zZS5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGVSZWxvYWQubmV4dCh0cnVlKVxyXG5cclxuICAgICAgICAgICAgLy8gc3dpdGNoXHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuY29uZmlybShgU3dpdGNoIHRvICR7eC5kYXRhLnRlbmFudE5hbWV9IG5vdyA/YCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICBpZiAocmVzdWx0ID09IFwieWVzXCIpIHtcclxuXHJcbiAgICAgICAgICAgICAgICBsZXQgdGVuYW50ID0ge3RlbmFudElEIDogeC5kYXRhLnRlbmFudElEfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuQ2FsbEFwaSh7IHVybDogJ3RlbmFudC90ZW5hbnRzP2FjdGlvbj1zd2l0Y2gnLCBtZXRob2Q6ICdwb3N0JyB9LCB0ZW5hbnQpLnN1YnNjcmliZSgoYXBpUmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICBpZiAoYXBpUmVzcG9uc2Uuc3VjY2Vzcykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJTd2l0Y2hlZCBTdWNjZXNzZnVsbHksIHBsZWFzZSBsb2dpbiBhZ2FpblwiKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ29mZigpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHRhYmxlUmVsb2FkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3QoKTtcclxuICBpbnZUYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcblxyXG4gICAgZ3JleU91dDogKHZhbHVlKSA9PiB2YWx1ZS5hY2NlcHRlZCA9PSBmYWxzZSxcclxuICAgIGVsZXZhdGlvbjogJ2xvdycsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ3RlbmFudE5hbWUnXSxcclxuICAgIG1pbkJ1dHRvbnM6IFsnYWNjZXB0JywgJ2RlY2xpbmUnXSxcclxuICAgIGZsYXRCdXR0b25zIDogdHJ1ZSxcclxuXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ3RlbmFudE5hbWUnLCBhbGlhczogJ09yZ2FuaXNhdGlvbicsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdvd25lcicsIHR5cGU6ICd0ZXh0JywgfSxcclxuICAgIF0sXHJcblxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdhY2NlcHQnLCBpY29uOiB7ICduYW1lJzogJ2RvbmUnLCB9LCBjb2xvcjogJ2dyZWVuJywgY29uZmlybTogeyBtZXNzYWdlOiAnQWNjZXB0ID8nIH0sIGRpc2FibGVkOiAoeCkgPT4geC5hY2NlcHRlZCB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWNsaW5lJywgaWNvbjogeyAnbmFtZSc6ICdjbG9zZScsIH0sIGNvbG9yOiAncmVkJywgY29uZmlybTogeyBtZXNzYWdlOiAnRGVjbGluZSA/JyB9LCBkaXNhYmxlZDogKHgpID0+IHguYWNjZXB0ZWQgfSxcclxuICAgIF0sXHJcblxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICd0ZW5hbnQvaW52aXRhdGlvbnMveCcgfSxcclxuXHJcbiAgfVxyXG59XHJcbiIsIjxzcGEtdGFibGUgW2NvbmZpZ109XCJpbnZUYWJsZUNvbmZpZ1wiIChhY3Rpb25DbGljayk9XCJpbnZBY3Rpb25DbGlja2VkKCRldmVudClcIiBbcmVsb2FkXT1cInRhYmxlUmVsb2FkXCI+PC9zcGEtdGFibGU+XG4iXX0=