@resolveio/client-lib-core 15.1.19 → 15.2.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 (216) hide show
  1. package/index.d.ts +0 -3
  2. package/package.json +1 -1
  3. package/esm2020/lib/account-manager.service.mjs +0 -222
  4. package/esm2020/lib/auth/auth-guard.service.mjs +0 -165
  5. package/esm2020/lib/auth/auth-permissions.service.mjs +0 -24
  6. package/esm2020/lib/auth/auth.service.mjs +0 -244
  7. package/esm2020/lib/auth/auth365.component.mjs +0 -44
  8. package/esm2020/lib/auth/can-deactivate-guard.service.mjs +0 -13
  9. package/esm2020/lib/auth/enroll.component.mjs +0 -81
  10. package/esm2020/lib/auth/forgot-password.component.mjs +0 -82
  11. package/esm2020/lib/core.component.mjs +0 -400
  12. package/esm2020/lib/core.module.mjs +0 -184
  13. package/esm2020/lib/core.service.mjs +0 -89
  14. package/esm2020/lib/directive/focus.mjs +0 -22
  15. package/esm2020/lib/directive/scroll.mjs +0 -55
  16. package/esm2020/lib/home/home.component.mjs +0 -77
  17. package/esm2020/lib/logger/logger.component.mjs +0 -220
  18. package/esm2020/lib/models/app-status.model.mjs +0 -2
  19. package/esm2020/lib/models/collection-document.model.mjs +0 -2
  20. package/esm2020/lib/models/cron-job.model.mjs +0 -2
  21. package/esm2020/lib/models/dialog.model.mjs +0 -2
  22. package/esm2020/lib/models/file.model.mjs +0 -2
  23. package/esm2020/lib/models/log-method-latency.model.mjs +0 -2
  24. package/esm2020/lib/models/navbar-main-tab.model.mjs +0 -2
  25. package/esm2020/lib/models/pagination.model.mjs +0 -2
  26. package/esm2020/lib/models/permission.model.mjs +0 -2
  27. package/esm2020/lib/models/select-data-label.model.mjs +0 -2
  28. package/esm2020/lib/models/subscription.model.mjs +0 -2
  29. package/esm2020/lib/models/support-ticket.model.mjs +0 -2
  30. package/esm2020/lib/models/user-group.model.mjs +0 -2
  31. package/esm2020/lib/models/user.model.mjs +0 -2
  32. package/esm2020/lib/offline-db.mjs +0 -519
  33. package/esm2020/lib/offline-manager.service.mjs +0 -107
  34. package/esm2020/lib/pipes/domsanitizor.pipe.mjs +0 -28
  35. package/esm2020/lib/pipes/filter.pipe.mjs +0 -36
  36. package/esm2020/lib/pipes/json-parse.pipe.mjs +0 -29
  37. package/esm2020/lib/pipes/minus-currency.pipe.mjs +0 -16
  38. package/esm2020/lib/pipes/phone.pipe.mjs +0 -47
  39. package/esm2020/lib/pipes/pipe.module.mjs +0 -54
  40. package/esm2020/lib/pipes/reverse-list.pipe.mjs +0 -17
  41. package/esm2020/lib/pipes/titlecase.pipe.mjs +0 -22
  42. package/esm2020/lib/report-builder.permission.mjs +0 -13
  43. package/esm2020/lib/resolveio-class.mjs +0 -41
  44. package/esm2020/lib/shared/shared.module.mjs +0 -96
  45. package/esm2020/lib/socket-manager.service.mjs +0 -339
  46. package/esm2020/lib/socket.service.mjs +0 -215
  47. package/esm2020/lib/super-admin.permission.mjs +0 -9
  48. package/esm2020/lib/support-ticket/detail/support-ticket-detail.component.mjs +0 -204
  49. package/esm2020/lib/support-ticket/edit/support-ticket-edit.component.mjs +0 -122
  50. package/esm2020/lib/support-ticket/list/support-ticket-list.component.mjs +0 -137
  51. package/esm2020/lib/support-ticket/new/support-ticket-new.component.mjs +0 -115
  52. package/esm2020/lib/support-ticket/support-ticket.component.mjs +0 -63
  53. package/esm2020/lib/support-ticket/support-ticket.module.mjs +0 -50
  54. package/esm2020/lib/support-ticket/support-ticket.routing.mjs +0 -20
  55. package/esm2020/lib/support-ticket/support-ticket.service.mjs +0 -17
  56. package/esm2020/lib/token-manager.service.mjs +0 -26
  57. package/esm2020/lib/user-settings/settings/users-settings.component.mjs +0 -296
  58. package/esm2020/lib/user-settings/user-settings.component.mjs +0 -57
  59. package/esm2020/lib/user-settings/user-settings.module.mjs +0 -41
  60. package/esm2020/lib/user-settings/user-settings.permission.mjs +0 -10
  61. package/esm2020/lib/user-settings/user-settings.routing.mjs +0 -14
  62. package/esm2020/lib/user-settings/user-settings.service.mjs +0 -17
  63. package/esm2020/lib/util/action-name.helper.mjs +0 -9
  64. package/esm2020/lib/util/aws.service.mjs +0 -79
  65. package/esm2020/lib/util/common.helper.mjs +0 -161
  66. package/esm2020/lib/util/validation.service.mjs +0 -185
  67. package/esm2020/lib/util/window-resize.service.mjs +0 -24
  68. package/esm2020/lib/util/window.service.mjs +0 -16
  69. package/esm2020/lib/widgets/alert/alert.model.mjs +0 -2
  70. package/esm2020/lib/widgets/alert/alert.service.mjs +0 -78
  71. package/esm2020/lib/widgets/collapse-table/collapse-table.component.mjs +0 -79
  72. package/esm2020/lib/widgets/collapse-table/collapse-table.module.mjs +0 -34
  73. package/esm2020/lib/widgets/data-table/data-table.component.mjs +0 -77
  74. package/esm2020/lib/widgets/data-table/data-table.model.mjs +0 -2
  75. package/esm2020/lib/widgets/data-table/data-table.module.mjs +0 -41
  76. package/esm2020/lib/widgets/date-shortcut/date-shortcut.component.mjs +0 -295
  77. package/esm2020/lib/widgets/date-shortcut/date-shortcut.module.mjs +0 -32
  78. package/esm2020/lib/widgets/dialog/dialog.confirm.content.mjs +0 -63
  79. package/esm2020/lib/widgets/dialog/dialog.error.content.mjs +0 -57
  80. package/esm2020/lib/widgets/dialog/dialog.input.content.mjs +0 -271
  81. package/esm2020/lib/widgets/dialog/dialog.login.content.mjs +0 -517
  82. package/esm2020/lib/widgets/dialog/dialog.notify.content.mjs +0 -57
  83. package/esm2020/lib/widgets/dialog/dialog.register.content.mjs +0 -328
  84. package/esm2020/lib/widgets/dialog/dialog.select-array-objs.content.mjs +0 -200
  85. package/esm2020/lib/widgets/dialog/dialog.select-array.content.mjs +0 -305
  86. package/esm2020/lib/widgets/dialog/dialog.select-data-labels.content.mjs +0 -191
  87. package/esm2020/lib/widgets/dialog/dialog.select-datetime.content.mjs +0 -185
  88. package/esm2020/lib/widgets/dialog/dialog.select-with-buttons-url.content.mjs +0 -162
  89. package/esm2020/lib/widgets/dialog/dialog.service.mjs +0 -97
  90. package/esm2020/lib/widgets/file/file-upload.component.mjs +0 -426
  91. package/esm2020/lib/widgets/file/file-upload.module.mjs +0 -48
  92. package/esm2020/lib/widgets/form-button/form-button.component.mjs +0 -94
  93. package/esm2020/lib/widgets/form-button/form-button.module.mjs +0 -28
  94. package/esm2020/lib/widgets/navbar-main/navbar-main.component.mjs +0 -220
  95. package/esm2020/lib/widgets/navbar-module/navbar-module.component.mjs +0 -104
  96. package/esm2020/lib/widgets/navbar-module/navbar-module.model.mjs +0 -2
  97. package/esm2020/lib/widgets/responsive-button-group/responsive-button-group.component.mjs +0 -38
  98. package/esm2020/lib/widgets/responsive-button-group/responsive-button-group.module.mjs +0 -24
  99. package/esm2020/lib/widgets/scheduler/scheduler.component.mjs +0 -184
  100. package/esm2020/lib/widgets/scheduler/scheduler.module.mjs +0 -37
  101. package/esm2020/lib/widgets/sort-table/sort-table-header.component.mjs +0 -67
  102. package/esm2020/lib/widgets/sort-table/sort-table-ngfor.component.mjs +0 -48
  103. package/esm2020/lib/widgets/sort-table/sort-table.directive.mjs +0 -174
  104. package/esm2020/lib/widgets/sort-table/sort-table.module.mjs +0 -38
  105. package/esm2020/lib/widgets/user-role/user-role.component.mjs +0 -27
  106. package/esm2020/lib/widgets/user-role/user-role.module.mjs +0 -24
  107. package/esm2020/public_api.mjs +0 -91
  108. package/esm2020/resolveio-client-lib-core.mjs +0 -5
  109. package/fesm2015/resolveio-client-lib-core.mjs +0 -9191
  110. package/fesm2015/resolveio-client-lib-core.mjs.map +0 -1
  111. package/fesm2020/resolveio-client-lib-core.mjs +0 -9184
  112. package/fesm2020/resolveio-client-lib-core.mjs.map +0 -1
  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 -11
  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 -64
  122. package/lib/core.module.d.ts +0 -35
  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 -20
  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 -38
  156. package/lib/socket.service.d.ts +0 -44
  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 -17
  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 -12
  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 -24
  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 -53
  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
@@ -1,328 +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
- constructor(_activeModal, _fb) {
13
- this._activeModal = _activeModal;
14
- this._fb = _fb;
15
- }
16
- ngOnInit() {
17
- this.form = this._fb.group({
18
- username: ['', [Validators.required]],
19
- name: ['', [Validators.required]],
20
- phone: ['', [Validators.required]],
21
- company: ['', [Validators.required]],
22
- email: ['', [Validators.required]]
23
- });
24
- }
25
- }
26
- DialogRegisterContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DialogRegisterContent, deps: [{ token: i1.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
27
- DialogRegisterContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DialogRegisterContent, selector: "ng-component", ngImport: i0, template: `
28
- <style>
29
- collapse-table {
30
- width: 100%;
31
- }
32
-
33
- .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 {
34
- color: #0b4499;
35
- }
36
- .navbar-light .navbar-nav .nav-link {
37
- color:#333;
38
- }
39
- a.nav-link.loginreg {
40
- background-color: #0b4499;
41
- color: #fff !important;
42
- border-radius: 40px;
43
- }
44
- a.nav-link.loginreg:hover {
45
- background: #1668e2;
46
- }
47
- .nav-link {
48
- color: #333333;
49
- font-size: 150%
50
- }
51
- .nav-item a.nav-link.active {
52
- color: #0b4499;
53
- }
54
- .contactimg>img{
55
- width: 100%;
56
- }
57
-
58
- .log-box {
59
- padding-top: 26px;
60
- padding-bottom: 26px;
61
- }
62
- .loginform .form-control, .register-form .form-control {
63
- color: #000;
64
- height: 52px;
65
- }
66
- .loginform {
67
- margin-top: 35px;
68
- }
69
- .loginform label {
70
- font-size: 18px;
71
- font-weight: 600;
72
- }
73
-
74
- .loginbtn {
75
- background: #0b4499;
76
- width: 100%;
77
- margin-top: 44px;
78
- height: 52px;
79
- font-size: 22px;
80
- border-radius: 2px;
81
- color: #fff !important;
82
- }
83
-
84
- .contactimg {
85
- position: relative;
86
- }
87
- .login-logo {
88
- margin-bottom: 20px;
89
- }
90
-
91
- .textbox {
92
- position: absolute;
93
- top: 50%;
94
- color: #fff;
95
- padding: 40px;
96
- transform: translate(0%, -50%);
97
- text-align: center;
98
- }
99
- .sign-btn {
100
- background: #0b4499;
101
- width: 100%;
102
- margin-top: 14px;
103
- height: 52px;
104
- font-size: 22px;
105
- border-radius: 2px;
106
- color: #fff !important;
107
- }
108
-
109
- button.btn.sign-btn:hover {
110
- background: #1668e2;
111
- }
112
- </style>
113
- <form [formGroup]="form" novalidate (ngSubmit)="_activeModal.close(form)">
114
- <div class="modal-header">
115
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> Register</h4>
116
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()">
117
- <span aria-hidden="true">&times;</span>
118
- </button>
119
- </div>
120
- <div class="modal-body" *ngIf="form">
121
- <div class="row justify-content-md-center">
122
- <div class="col-lg-12">
123
- <div class="row bg-white">
124
- <div class="col-lg-6">
125
- <div class="contactimg">
126
- <img src="/assets/images/loginsignup/formimg.jpg" alt="images" class="img-fluid">
127
- <div class="textbox">
128
- <div class="login-logo"><img src="/assets/images/loginsignup/login-logo.png" alt="images"></div>
129
- </div>
130
- </div>
131
- </div>
132
- <div class="col-lg-6">
133
- <div class="log-box">
134
- <div class="register-form">
135
- <div class="form-group">
136
- <label>User Name</label>
137
- <em *ngIf="form.controls.username.hasError('required')">- Required</em>
138
- <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">
139
- </div>
140
- <div class="form-group">
141
- <label>Full Name</label>
142
- <em *ngIf="form.controls.name.hasError('required')">- Required</em>
143
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.name.valid ? 'is-valid' : 'is-invalid']" formControlName="name" aria-describedby="emailHelp" placeholder="Name">
144
- </div>
145
- <div class="form-group">
146
- <label>Phone Number</label>
147
- <em *ngIf="form.controls.phone.hasError('required')">- Required</em>
148
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.phone.valid ? 'is-valid' : 'is-invalid']" formControlName="phone" placeholder="Phone Number">
149
- </div>
150
- <div class="form-group">
151
- <label>Company</label>
152
- <em *ngIf="form.controls.company.hasError('required')">- Required</em>
153
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.company.valid ? 'is-valid' : 'is-invalid']" formControlName="company" placeholder="Company Name">
154
- </div>
155
- <div class="form-group">
156
- <label>Email</label>
157
- <em *ngIf="form.controls.email.hasError('required')">- Required</em>
158
- <input type="email" class="form-control" [ngClass]="['form-control', form.controls.email.valid ? 'is-valid' : 'is-invalid']" formControlName="email" placeholder="Email">
159
- </div>
160
- <button type="submit" class="btn sign-btn">Signup</button>
161
- </div>
162
- </div>
163
- </div>
164
- </div>
165
- </div>
166
- </div>
167
- </div>
168
- <div class="modal-footer">
169
- <responsive-button-group>
170
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
171
- </responsive-button-group>
172
- </div>
173
- </form>
174
- `, 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"] }] });
175
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DialogRegisterContent, decorators: [{
176
- type: Component,
177
- args: [{
178
- template: `
179
- <style>
180
- collapse-table {
181
- width: 100%;
182
- }
183
-
184
- .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 {
185
- color: #0b4499;
186
- }
187
- .navbar-light .navbar-nav .nav-link {
188
- color:#333;
189
- }
190
- a.nav-link.loginreg {
191
- background-color: #0b4499;
192
- color: #fff !important;
193
- border-radius: 40px;
194
- }
195
- a.nav-link.loginreg:hover {
196
- background: #1668e2;
197
- }
198
- .nav-link {
199
- color: #333333;
200
- font-size: 150%
201
- }
202
- .nav-item a.nav-link.active {
203
- color: #0b4499;
204
- }
205
- .contactimg>img{
206
- width: 100%;
207
- }
208
-
209
- .log-box {
210
- padding-top: 26px;
211
- padding-bottom: 26px;
212
- }
213
- .loginform .form-control, .register-form .form-control {
214
- color: #000;
215
- height: 52px;
216
- }
217
- .loginform {
218
- margin-top: 35px;
219
- }
220
- .loginform label {
221
- font-size: 18px;
222
- font-weight: 600;
223
- }
224
-
225
- .loginbtn {
226
- background: #0b4499;
227
- width: 100%;
228
- margin-top: 44px;
229
- height: 52px;
230
- font-size: 22px;
231
- border-radius: 2px;
232
- color: #fff !important;
233
- }
234
-
235
- .contactimg {
236
- position: relative;
237
- }
238
- .login-logo {
239
- margin-bottom: 20px;
240
- }
241
-
242
- .textbox {
243
- position: absolute;
244
- top: 50%;
245
- color: #fff;
246
- padding: 40px;
247
- transform: translate(0%, -50%);
248
- text-align: center;
249
- }
250
- .sign-btn {
251
- background: #0b4499;
252
- width: 100%;
253
- margin-top: 14px;
254
- height: 52px;
255
- font-size: 22px;
256
- border-radius: 2px;
257
- color: #fff !important;
258
- }
259
-
260
- button.btn.sign-btn:hover {
261
- background: #1668e2;
262
- }
263
- </style>
264
- <form [formGroup]="form" novalidate (ngSubmit)="_activeModal.close(form)">
265
- <div class="modal-header">
266
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> Register</h4>
267
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()">
268
- <span aria-hidden="true">&times;</span>
269
- </button>
270
- </div>
271
- <div class="modal-body" *ngIf="form">
272
- <div class="row justify-content-md-center">
273
- <div class="col-lg-12">
274
- <div class="row bg-white">
275
- <div class="col-lg-6">
276
- <div class="contactimg">
277
- <img src="/assets/images/loginsignup/formimg.jpg" alt="images" class="img-fluid">
278
- <div class="textbox">
279
- <div class="login-logo"><img src="/assets/images/loginsignup/login-logo.png" alt="images"></div>
280
- </div>
281
- </div>
282
- </div>
283
- <div class="col-lg-6">
284
- <div class="log-box">
285
- <div class="register-form">
286
- <div class="form-group">
287
- <label>User Name</label>
288
- <em *ngIf="form.controls.username.hasError('required')">- Required</em>
289
- <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">
290
- </div>
291
- <div class="form-group">
292
- <label>Full Name</label>
293
- <em *ngIf="form.controls.name.hasError('required')">- Required</em>
294
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.name.valid ? 'is-valid' : 'is-invalid']" formControlName="name" aria-describedby="emailHelp" placeholder="Name">
295
- </div>
296
- <div class="form-group">
297
- <label>Phone Number</label>
298
- <em *ngIf="form.controls.phone.hasError('required')">- Required</em>
299
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.phone.valid ? 'is-valid' : 'is-invalid']" formControlName="phone" placeholder="Phone Number">
300
- </div>
301
- <div class="form-group">
302
- <label>Company</label>
303
- <em *ngIf="form.controls.company.hasError('required')">- Required</em>
304
- <input type="text" class="form-control" [ngClass]="['form-control', form.controls.company.valid ? 'is-valid' : 'is-invalid']" formControlName="company" placeholder="Company Name">
305
- </div>
306
- <div class="form-group">
307
- <label>Email</label>
308
- <em *ngIf="form.controls.email.hasError('required')">- Required</em>
309
- <input type="email" class="form-control" [ngClass]="['form-control', form.controls.email.valid ? 'is-valid' : 'is-invalid']" formControlName="email" placeholder="Email">
310
- </div>
311
- <button type="submit" class="btn sign-btn">Signup</button>
312
- </div>
313
- </div>
314
- </div>
315
- </div>
316
- </div>
317
- </div>
318
- </div>
319
- <div class="modal-footer">
320
- <responsive-button-group>
321
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
322
- </responsive-button-group>
323
- </div>
324
- </form>
325
- `
326
- }]
327
- }], ctorParameters: function () { return [{ type: i1.NgbActiveModal }, { type: i2.FormBuilder }]; } });
328
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnJlZ2lzdGVyLmNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvd2lkZ2V0cy9kaWFsb2cvZGlhbG9nLnJlZ2lzdGVyLmNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBYSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUF3SnBFLGtEQUFrRDtBQUNsRCxNQUFNLE9BQU8scUJBQXFCO0lBSWpDLFlBQW1CLFlBQTRCLEVBQVUsR0FBZ0I7UUFBdEQsaUJBQVksR0FBWixZQUFZLENBQWdCO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUFHLENBQUM7SUFFN0UsUUFBUTtRQUNQLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDMUIsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNqQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3BDLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUNsQyxDQUFDLENBQUM7SUFDSixDQUFDOzttSEFkVyxxQkFBcUI7dUdBQXJCLHFCQUFxQixvREF0SnZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtSlQ7NEZBR1cscUJBQXFCO2tCQXZKakMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1KVDtpQkFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcblx0dGVtcGxhdGU6IGBcblx0XHQ8c3R5bGU+XG5cdFx0XHRjb2xsYXBzZS10YWJsZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXG5cdFx0XHQubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5hY3RpdmU+Lm5hdi1saW5rLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3c+Lm5hdi1saW5rIHtcblx0XHRcdFx0Y29sb3I6ICMwYjQ0OTk7XG5cdFx0XHR9XG5cdFx0XHQubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG5cdFx0XHRcdGNvbG9yOiMzMzM7XG5cdFx0XHR9XG5cdFx0XHRhLm5hdi1saW5rLmxvZ2lucmVnIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzBiNDQ5OTtcblx0XHRcdFx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNDBweDtcblx0XHRcdH1cblx0XHRcdGEubmF2LWxpbmsubG9naW5yZWc6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMTY2OGUyO1xuXHRcdFx0fVxuXHRcdFx0Lm5hdi1saW5rIHtcblx0XHRcdFx0Y29sb3I6ICMzMzMzMzM7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTUwJVxuXHRcdFx0fVxuXHRcdFx0Lm5hdi1pdGVtIGEubmF2LWxpbmsuYWN0aXZlIHtcblx0XHRcdFx0Y29sb3I6ICMwYjQ0OTk7XG5cdFx0XHR9XG5cdFx0XHQuY29udGFjdGltZz5pbWd7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXG5cdFx0XHQubG9nLWJveCB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAyNnB4O1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMjZweDtcblx0XHRcdH1cblx0XHRcdC5sb2dpbmZvcm0gLmZvcm0tY29udHJvbCwgLnJlZ2lzdGVyLWZvcm0gLmZvcm0tY29udHJvbCB7XG5cdFx0XHRcdGNvbG9yOiAjMDAwO1xuXHRcdFx0XHRoZWlnaHQ6IDUycHg7XG5cdFx0XHR9XG5cdFx0XHQubG9naW5mb3JtIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMzVweDtcblx0XHRcdH1cblx0XHRcdC5sb2dpbmZvcm0gbGFiZWwge1xuXHRcdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHR9XG5cblx0XHRcdC5sb2dpbmJ0biB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMwYjQ0OTk7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA0NHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDUycHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjJweDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRcdFx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHQuY29udGFjdGltZyB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdH1cblx0XHRcdC5sb2dpbi1sb2dvIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdH1cblxuXHRcdFx0LnRleHRib3gge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdFx0cGFkZGluZzogNDBweDtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0XHQuc2lnbi1idG4ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMGI0NDk5O1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWFyZ2luLXRvcDogMTRweDtcblx0XHRcdFx0aGVpZ2h0OiA1MnB4O1xuXHRcdFx0XHRmb250LXNpemU6IDIycHg7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDJweDtcblx0XHRcdFx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcblx0XHRcdH1cblxuXHRcdFx0YnV0dG9uLmJ0bi5zaWduLWJ0bjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMxNjY4ZTI7XG5cdFx0XHR9XG5cdFx0PC9zdHlsZT5cblx0XHQ8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiBub3ZhbGlkYXRlIChuZ1N1Ym1pdCk9XCJfYWN0aXZlTW9kYWwuY2xvc2UoZm9ybSlcIj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cblx0XHRcdFx0PGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj48aSBjbGFzcz1cImZhIGZhLXF1ZXN0aW9uLWNpcmNsZVwiIHN0eWxlPVwiY29sb3I6IGJsdWU7IGZvbnQtc2l6ZTogMC44NWVtXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPiBSZWdpc3RlcjwvaDQ+XG5cdFx0XHRcdDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiY2xvc2VcIiBhcmlhLWxhYmVsPVwiQ2xvc2VcIiAoY2xpY2spPVwiX2FjdGl2ZU1vZGFsLmRpc21pc3MoKVwiPlxuXHRcdFx0XHRcdDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiZ0aW1lczs8L3NwYW4+XG5cdFx0XHRcdDwvYnV0dG9uPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiICpuZ0lmPVwiZm9ybVwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1tZC1jZW50ZXJcIj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY29sLWxnLTEyXCI+XG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwicm93IGJnLXdoaXRlXCI+XG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctNlwiPlxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb250YWN0aW1nXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aW1nIHNyYz1cIi9hc3NldHMvaW1hZ2VzL2xvZ2luc2lnbnVwL2Zvcm1pbWcuanBnXCIgYWx0PVwiaW1hZ2VzXCIgY2xhc3M9XCJpbWctZmx1aWRcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJ0ZXh0Ym94XCI+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsb2dpbi1sb2dvXCI+PGltZyBzcmM9XCIvYXNzZXRzL2ltYWdlcy9sb2dpbnNpZ251cC9sb2dpbi1sb2dvLnBuZ1wiIGFsdD1cImltYWdlc1wiPjwvZGl2PlxuXHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY29sLWxnLTZcIj5cblx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibG9nLWJveFwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cInJlZ2lzdGVyLWZvcm1cIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8bGFiZWw+VXNlciBOYW1lPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZW0gKm5nSWY9XCJmb3JtLmNvbnRyb2xzLnVzZXJuYW1lLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+LSBSZXF1aXJlZDwvZW0+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbbmdDbGFzc109XCJbJ2Zvcm0tY29udHJvbCcsIGZvcm0uY29udHJvbHMudXNlcm5hbWUudmFsaWQgPyAnaXMtdmFsaWQnIDogJ2lzLWludmFsaWQnXVwiIGZvcm1Db250cm9sTmFtZT1cInVzZXJuYW1lXCIgW2F1dG9mb2N1c109XCJ0cnVlXCIgW2ZvY3VzXT1cInRydWVcIiBhcmlhLWRlc2NyaWJlZGJ5PVwiZW1haWxIZWxwXCIgcGxhY2Vob2xkZXI9XCJVc2VyIE5hbWVcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGxhYmVsPkZ1bGwgTmFtZTwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGVtICpuZ0lmPVwiZm9ybS5jb250cm9scy5uYW1lLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+LSBSZXF1aXJlZDwvZW0+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbbmdDbGFzc109XCJbJ2Zvcm0tY29udHJvbCcsIGZvcm0uY29udHJvbHMubmFtZS52YWxpZCA/ICdpcy12YWxpZCcgOiAnaXMtaW52YWxpZCddXCIgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiIGFyaWEtZGVzY3JpYmVkYnk9XCJlbWFpbEhlbHBcIiBwbGFjZWhvbGRlcj1cIk5hbWVcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGxhYmVsPlBob25lIE51bWJlcjwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGVtICpuZ0lmPVwiZm9ybS5jb250cm9scy5waG9uZS5oYXNFcnJvcigncmVxdWlyZWQnKVwiPi0gUmVxdWlyZWQ8L2VtPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW25nQ2xhc3NdPVwiWydmb3JtLWNvbnRyb2wnLCBmb3JtLmNvbnRyb2xzLnBob25lLnZhbGlkID8gJ2lzLXZhbGlkJyA6ICdpcy1pbnZhbGlkJ11cIiBmb3JtQ29udHJvbE5hbWU9XCJwaG9uZVwiIHBsYWNlaG9sZGVyPVwiUGhvbmUgTnVtYmVyXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxsYWJlbD5Db21wYW55PC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZW0gKm5nSWY9XCJmb3JtLmNvbnRyb2xzLmNvbXBhbnkuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4tIFJlcXVpcmVkPC9lbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFtuZ0NsYXNzXT1cIlsnZm9ybS1jb250cm9sJywgZm9ybS5jb250cm9scy5jb21wYW55LnZhbGlkID8gJ2lzLXZhbGlkJyA6ICdpcy1pbnZhbGlkJ11cIiBmb3JtQ29udHJvbE5hbWU9XCJjb21wYW55XCIgcGxhY2Vob2xkZXI9XCJDb21wYW55IE5hbWVcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZW0gKm5nSWY9XCJmb3JtLmNvbnRyb2xzLmVtYWlsLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+LSBSZXF1aXJlZDwvZW0+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJlbWFpbFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW25nQ2xhc3NdPVwiWydmb3JtLWNvbnRyb2wnLCBmb3JtLmNvbnRyb2xzLmVtYWlsLnZhbGlkID8gJ2lzLXZhbGlkJyA6ICdpcy1pbnZhbGlkJ11cIiBmb3JtQ29udHJvbE5hbWU9XCJlbWFpbFwiIHBsYWNlaG9sZGVyPVwiRW1haWxcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIHNpZ24tYnRuXCI+U2lnbnVwPC9idXR0b24+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cblx0XHRcdFx0PHJlc3BvbnNpdmUtYnV0dG9uLWdyb3VwPlxuXHRcdFx0XHRcdDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiAoY2xpY2spPVwiX2FjdGl2ZU1vZGFsLmRpc21pc3MoKVwiPkNhbmNlbDwvYnV0dG9uPlxuXHRcdFx0XHQ8L3Jlc3BvbnNpdmUtYnV0dG9uLWdyb3VwPlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9mb3JtPlxuXHRgXG59KVxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBEaWFsb2dSZWdpc3RlckNvbnRlbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG5cdGZvcm06IEZvcm1Hcm91cDtcblxuXHRjb25zdHJ1Y3RvcihwdWJsaWMgX2FjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCwgcHJpdmF0ZSBfZmI6IEZvcm1CdWlsZGVyKSB7fVxuXG5cdG5nT25Jbml0KCkge1x0XHRcdFxuXHRcdHRoaXMuZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcblx0XHRcdHVzZXJuYW1lOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG5cdFx0XHRuYW1lOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG5cdFx0XHRwaG9uZTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuXHRcdFx0Y29tcGFueTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuXHRcdFx0ZW1haWw6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXVxuXHRcdH0pO1xuXHR9XG59XG4iXX0=
@@ -1,200 +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
- constructor(_activeModal) {
10
- this._activeModal = _activeModal;
11
- this.title = '';
12
- this.objects = [];
13
- this.multiple = false;
14
- this.allowNone = false;
15
- this.selectedIndex = null;
16
- this.selectedItem = null;
17
- this.selectedIndexes = [];
18
- this.selectedItems = [];
19
- }
20
- ngAfterViewInit() {
21
- setTimeout(() => {
22
- let foundElement = this.recursiveFindFirstElement(this.allElements.nativeElement);
23
- if (foundElement) {
24
- foundElement.focus();
25
- }
26
- else {
27
- this.close.nativeElement.focus();
28
- this.close.nativeElement.blur();
29
- }
30
- }, 100);
31
- this.objects.forEach((obj, objIdx) => {
32
- if (obj.selected) {
33
- this.selectedIndexes.push(objIdx);
34
- this.selectedItems.push(obj);
35
- }
36
- });
37
- }
38
- recursiveFindFirstElement(element) {
39
- let foundElement = null;
40
- let htmlCol = element.children;
41
- for (let i = 0; i < Object.keys(htmlCol).length; i++) {
42
- let key = Object.keys(htmlCol)[i];
43
- let htmlElem = htmlCol[key];
44
- if (htmlElem.children && htmlElem.children.length) {
45
- foundElement = this.recursiveFindFirstElement(htmlElem);
46
- }
47
- else if (htmlElem.tagName === 'BUTTON' && htmlElem.classList.contains('close')) {
48
- return null;
49
- }
50
- else if ((htmlElem.tagName === 'BUTTON' || htmlElem.tagName === 'INPUT' || htmlElem.tagName === 'SELECT' || htmlElem.tagName === 'TEXTAREA') && !htmlElem.hidden && !htmlElem.disabled) {
51
- return htmlElem;
52
- }
53
- if (foundElement) {
54
- break;
55
- }
56
- }
57
- return foundElement;
58
- }
59
- onSelectItem(index) {
60
- if (!this.multiple) {
61
- if (this.objects[index] === this.selectedItem) {
62
- this.selectedItem = null;
63
- this.selectedIndex = null;
64
- }
65
- else {
66
- this.selectedItem = this.objects[index];
67
- this.selectedIndex = index;
68
- }
69
- }
70
- else {
71
- if (this.selectedItems.some(a => a.value === this.objects[index].value)) {
72
- this.selectedIndexes.splice(this.selectedIndexes.indexOf(index), 1);
73
- this.selectedItems.splice(this.selectedItems.map(a => a.value).indexOf(this.objects[index].value), 1);
74
- }
75
- else {
76
- this.selectedIndexes.push(index);
77
- this.selectedItems.push(this.objects[index]);
78
- }
79
- }
80
- }
81
- }
82
- DialogSelectArrayObjsContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DialogSelectArrayObjsContent, deps: [{ token: i1.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
83
- DialogSelectArrayObjsContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: `
84
- <style>
85
- collapse-table tr:hover {
86
- background-color: lightblue;
87
- cursor: pointer;
88
- }
89
-
90
- .selected {
91
- background-color: lightblue;
92
- }
93
-
94
- collapse-table {
95
- width: 100%;
96
- }
97
- </style>
98
- <div #allElements>
99
- <div class="modal-header">
100
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
101
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()" #close>
102
- <span aria-hidden="true">&times;</span>
103
- </button>
104
- </div>
105
- <div class="modal-body">
106
- <div style="height: 60vh; overflow-y: auto">
107
- <collapse-table collapseSize="900">
108
- <thead>
109
- <tr>
110
- <th>List</th>
111
- </tr>
112
- </thead>
113
- <tbody>
114
- <tr *ngFor="let object of objects; let i = index" (click)="onSelectItem(i)" [ngClass]="{'selected' : i === selectedIndex || selectedIndexes.includes(i)}">
115
- <td>{{object.text}}</td>
116
- </tr>
117
- </tbody>
118
- </collapse-table>
119
- </div>
120
- </div>
121
- <div class="modal-footer">
122
- <ng-container *ngIf="!allowNone">
123
- <button type="button" [ngClass]="['btn', (selectedItem || selectedItems.length) ? 'btn-success' : 'btn-danger']" [disabled]="!selectedItem && !selectedItems.length" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
124
- </ng-container>
125
- <ng-container *ngIf="allowNone">
126
- <button type="button" class="btn btn-success" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
127
- </ng-container>
128
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
129
- </div>
130
- </div>
131
- `, 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"] }] });
132
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DialogSelectArrayObjsContent, decorators: [{
133
- type: Component,
134
- args: [{
135
- template: `
136
- <style>
137
- collapse-table tr:hover {
138
- background-color: lightblue;
139
- cursor: pointer;
140
- }
141
-
142
- .selected {
143
- background-color: lightblue;
144
- }
145
-
146
- collapse-table {
147
- width: 100%;
148
- }
149
- </style>
150
- <div #allElements>
151
- <div class="modal-header">
152
- <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
153
- <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()" #close>
154
- <span aria-hidden="true">&times;</span>
155
- </button>
156
- </div>
157
- <div class="modal-body">
158
- <div style="height: 60vh; overflow-y: auto">
159
- <collapse-table collapseSize="900">
160
- <thead>
161
- <tr>
162
- <th>List</th>
163
- </tr>
164
- </thead>
165
- <tbody>
166
- <tr *ngFor="let object of objects; let i = index" (click)="onSelectItem(i)" [ngClass]="{'selected' : i === selectedIndex || selectedIndexes.includes(i)}">
167
- <td>{{object.text}}</td>
168
- </tr>
169
- </tbody>
170
- </collapse-table>
171
- </div>
172
- </div>
173
- <div class="modal-footer">
174
- <ng-container *ngIf="!allowNone">
175
- <button type="button" [ngClass]="['btn', (selectedItem || selectedItems.length) ? 'btn-success' : 'btn-danger']" [disabled]="!selectedItem && !selectedItems.length" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
176
- </ng-container>
177
- <ng-container *ngIf="allowNone">
178
- <button type="button" class="btn btn-success" (click)="_activeModal.close(selectedItem || selectedItems)">Submit</button>
179
- </ng-container>
180
- <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
181
- </div>
182
- </div>
183
- `
184
- }]
185
- }], ctorParameters: function () { return [{ type: i1.NgbActiveModal }]; }, propDecorators: { title: [{
186
- type: Input
187
- }], objects: [{
188
- type: Input
189
- }], multiple: [{
190
- type: Input
191
- }], allowNone: [{
192
- type: Input
193
- }], close: [{
194
- type: ViewChild,
195
- args: ['close', { static: false }]
196
- }], allElements: [{
197
- type: ViewChild,
198
- args: ['allElements', { static: false }]
199
- }] } });
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlbGVjdC1hcnJheS1vYmpzLmNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvd2lkZ2V0cy9kaWFsb2cvZGlhbG9nLnNlbGVjdC1hcnJheS1vYmpzLmNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUcsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7O0FBc0Q3RCxrREFBa0Q7QUFDbEQsTUFBTSxPQUFPLDRCQUE0QjtJQWV4QyxZQUFtQixZQUE0QjtRQUE1QixpQkFBWSxHQUFaLFlBQVksQ0FBZ0I7UUFkdEMsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFlBQU8sR0FBeUMsRUFBRSxDQUFDO1FBQ25ELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUszQixrQkFBYSxHQUFXLElBQUksQ0FBQztRQUM3QixpQkFBWSxHQUF1QyxJQUFJLENBQUM7UUFFeEQsb0JBQWUsR0FBYSxFQUFFLENBQUM7UUFDL0Isa0JBQWEsR0FBeUMsRUFBRSxDQUFDO0lBRVAsQ0FBQztJQUVuRCxlQUFlO1FBQ2QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNmLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2xGLElBQUksWUFBWSxFQUFFO2dCQUNqQixZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDckI7aUJBQ0k7Z0JBQ0osSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO2FB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Q0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN0RztpQkFDSTtnQkFDSixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQzdDO1NBQ0Q7SUFDRixDQUFDOzswSEFuRlcsNEJBQTRCOzhHQUE1Qiw0QkFBNEIsK1VBbkQ5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBZ0RUOzRGQUdXLDRCQUE0QjtrQkFwRHhDLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnRFQ7aUJBQ0Q7cUdBR1MsS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRXVDLEtBQUs7c0JBQWpELFNBQVM7dUJBQUUsT0FBTyxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztnQkFDYyxXQUFXO3NCQUE1RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgQWZ0ZXJWaWV3SW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyAgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBEaWFsb2dTZWxlY3RXaXRoQnV0dG9uc09wdGlvbk1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RpYWxvZy5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuXHR0ZW1wbGF0ZTogYFxuXHRcdDxzdHlsZT5cblx0XHRcdGNvbGxhcHNlLXRhYmxlIHRyOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVlO1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHR9XG5cblx0XHRcdC5zZWxlY3RlZCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTtcblx0XHRcdH1cblxuXHRcdFx0Y29sbGFwc2UtdGFibGUge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHQ8L3N0eWxlPlxuXHRcdDxkaXYgI2FsbEVsZW1lbnRzPlxuXHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxuXHRcdFx0XHQ8aDQgY2xhc3M9XCJtb2RhbC10aXRsZVwiPjxpIGNsYXNzPVwiZmEgZmEtcXVlc3Rpb24tY2lyY2xlXCIgc3R5bGU9XCJjb2xvcjogYmx1ZTsgZm9udC1zaXplOiAwLjg1ZW1cIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+IHt7IHRpdGxlIH19PC9oND5cblx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJjbG9zZVwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiIChjbGljayk9XCJfYWN0aXZlTW9kYWwuZGlzbWlzcygpXCIgI2Nsb3NlPlxuXHRcdFx0XHRcdDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiZ0aW1lczs8L3NwYW4+XG5cdFx0XHRcdDwvYnV0dG9uPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuXHRcdFx0XHQ8ZGl2IHN0eWxlPVwiaGVpZ2h0OiA2MHZoOyBvdmVyZmxvdy15OiBhdXRvXCI+XG5cdFx0XHRcdFx0PGNvbGxhcHNlLXRhYmxlIGNvbGxhcHNlU2l6ZT1cIjkwMFwiPlxuXHRcdFx0XHRcdFx0PHRoZWFkPlxuXHRcdFx0XHRcdFx0XHQ8dHI+XG5cdFx0XHRcdFx0XHRcdFx0PHRoPkxpc3Q8L3RoPlxuXHRcdFx0XHRcdFx0XHQ8L3RyPlxuXHRcdFx0XHRcdFx0PC90aGVhZD5cblx0XHRcdFx0XHRcdDx0Ym9keT5cblx0XHRcdFx0XHRcdFx0PHRyICpuZ0Zvcj1cImxldCBvYmplY3Qgb2Ygb2JqZWN0czsgbGV0IGkgPSBpbmRleFwiIChjbGljayk9XCJvblNlbGVjdEl0ZW0oaSlcIiBbbmdDbGFzc109XCJ7J3NlbGVjdGVkJyA6IGkgPT09IHNlbGVjdGVkSW5kZXggfHwgc2VsZWN0ZWRJbmRleGVzLmluY2x1ZGVzKGkpfVwiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZD57e29iamVjdC50ZXh0fX08L3RkPlxuXHRcdFx0XHRcdFx0XHQ8L3RyPlxuXHRcdFx0XHRcdFx0PC90Ym9keT5cblx0XHRcdFx0XHQ8L2NvbGxhcHNlLXRhYmxlPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxuXHRcdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiIWFsbG93Tm9uZVwiPlxuXHRcdFx0XHRcdDxidXR0b24gdHlwZT1cImJ1dHRvblwiIFtuZ0NsYXNzXT1cIlsnYnRuJywgKHNlbGVjdGVkSXRlbSB8fCBzZWxlY3RlZEl0ZW1zLmxlbmd0aCkgPyAnYnRuLXN1Y2Nlc3MnIDogJ2J0bi1kYW5nZXInXVwiIFtkaXNhYmxlZF09XCIhc2VsZWN0ZWRJdGVtICYmICFzZWxlY3RlZEl0ZW1zLmxlbmd0aFwiIChjbGljayk9XCJfYWN0aXZlTW9kYWwuY2xvc2Uoc2VsZWN0ZWRJdGVtIHx8IHNlbGVjdGVkSXRlbXMpXCI+U3VibWl0PC9idXR0b24+XG5cdFx0XHRcdDwvbmctY29udGFpbmVyPlxuXHRcdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiYWxsb3dOb25lXCI+XG5cdFx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXN1Y2Nlc3NcIiAoY2xpY2spPVwiX2FjdGl2ZU1vZGFsLmNsb3NlKHNlbGVjdGVkSXRlbSB8fCBzZWxlY3RlZEl0ZW1zKVwiPlN1Ym1pdDwvYnV0dG9uPlxuXHRcdFx0XHQ8L25nLWNvbnRhaW5lcj5cblx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJfYWN0aXZlTW9kYWwuZGlzbWlzcygpXCI+Q2FuY2VsPC9idXR0b24+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0YFxufSlcbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtY2xhc3Mtc3VmZml4XG5leHBvcnQgY2xhc3MgRGlhbG9nU2VsZWN0QXJyYXlPYmpzQ29udGVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXR7XG5cdEBJbnB1dCgpIHRpdGxlID0gJyc7XG5cdEBJbnB1dCgpIG9iamVjdHM6IERpYWxvZ1NlbGVjdFdpdGhCdXR0b25zT3B0aW9uTW9kZWxbXSA9IFtdO1xuXHRASW5wdXQoKSBtdWx0aXBsZSA9IGZhbHNlO1xuXHRASW5wdXQoKSBhbGxvd05vbmUgPSBmYWxzZTtcblxuXHRAVmlld0NoaWxkICgnY2xvc2UnLCB7c3RhdGljOiBmYWxzZX0pIHB1YmxpYyBjbG9zZTtcblx0QFZpZXdDaGlsZCgnYWxsRWxlbWVudHMnLCB7c3RhdGljOiBmYWxzZX0pIHB1YmxpYyBhbGxFbGVtZW50cztcblxuXHRzZWxlY3RlZEluZGV4OiBudW1iZXIgPSBudWxsO1xuXHRzZWxlY3RlZEl0ZW06IERpYWxvZ1NlbGVjdFdpdGhCdXR0b25zT3B0aW9uTW9kZWwgPSBudWxsO1xuXG5cdHNlbGVjdGVkSW5kZXhlczogbnVtYmVyW10gPSBbXTtcblx0c2VsZWN0ZWRJdGVtczogRGlhbG9nU2VsZWN0V2l0aEJ1dHRvbnNPcHRpb25Nb2RlbFtdID0gW107XG5cblx0Y29uc3RydWN0b3IocHVibGljIF9hY3RpdmVNb2RhbDogTmdiQWN0aXZlTW9kYWwpIHt9XG5cblx0bmdBZnRlclZpZXdJbml0KCkge1xuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0bGV0IGZvdW5kRWxlbWVudCA9IHRoaXMucmVjdXJzaXZlRmluZEZpcnN0RWxlbWVudCh0aGlzLmFsbEVsZW1lbnRzLm5hdGl2ZUVsZW1lbnQpO1xuXHRcdFx0aWYgKGZvdW5kRWxlbWVudCkge1xuXHRcdFx0XHRmb3VuZEVsZW1lbnQuZm9jdXMoKTtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHR0aGlzLmNsb3NlLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcblx0XHRcdFx0dGhpcy5jbG9zZS5uYXRpdmVFbGVtZW50LmJsdXIoKTtcblx0XHRcdH1cblx0XHR9LCAxMDApO1xuXG5cdFx0dGhpcy5vYmplY3RzLmZvckVhY2goKG9iaiwgb2JqSWR4KSA9PiB7XG5cdFx0XHRpZiAob2JqLnNlbGVjdGVkKSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleGVzLnB1c2gob2JqSWR4KTtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW1zLnB1c2gob2JqKTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHJlY3Vyc2l2ZUZpbmRGaXJzdEVsZW1lbnQoZWxlbWVudCkge1xuXHRcdGxldCBmb3VuZEVsZW1lbnQgPSBudWxsO1xuXHRcdGxldCBodG1sQ29sOiBIVE1MQ29sbGVjdGlvbiA9IGVsZW1lbnQuY2hpbGRyZW47XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBPYmplY3Qua2V5cyhodG1sQ29sKS5sZW5ndGg7IGkrKykge1xuXHRcdFx0bGV0IGtleSA9IE9iamVjdC5rZXlzKGh0bWxDb2wpW2ldO1xuXG5cdFx0XHRsZXQgaHRtbEVsZW0gPSBodG1sQ29sW2tleV07XG5cdFx0XHRpZiAoaHRtbEVsZW0uY2hpbGRyZW4gJiYgaHRtbEVsZW0uY2hpbGRyZW4ubGVuZ3RoKSB7XG5cdFx0XHRcdGZvdW5kRWxlbWVudCA9IHRoaXMucmVjdXJzaXZlRmluZEZpcnN0RWxlbWVudChodG1sRWxlbSk7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIGlmIChodG1sRWxlbS50YWdOYW1lID09PSAnQlVUVE9OJyAmJiBodG1sRWxlbS5jbGFzc0xpc3QuY29udGFpbnMoJ2Nsb3NlJykpIHtcblx0XHRcdFx0cmV0dXJuIG51bGw7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIGlmICgoaHRtbEVsZW0udGFnTmFtZSA9PT0gJ0JVVFRPTicgfHwgaHRtbEVsZW0udGFnTmFtZSA9PT0gJ0lOUFVUJyB8fCBodG1sRWxlbS50YWdOYW1lID09PSAnU0VMRUNUJyB8fCBodG1sRWxlbS50YWdOYW1lID09PSAnVEVYVEFSRUEnKSAmJiAhaHRtbEVsZW0uaGlkZGVuICYmICFodG1sRWxlbS5kaXNhYmxlZCkge1xuXHRcdFx0XHRyZXR1cm4gaHRtbEVsZW07XG5cdFx0XHR9XG5cblx0XHRcdGlmIChmb3VuZEVsZW1lbnQpIHtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGZvdW5kRWxlbWVudDtcblx0fVxuXG5cdG9uU2VsZWN0SXRlbShpbmRleDogbnVtYmVyKSB7XG5cdFx0aWYgKCF0aGlzLm11bHRpcGxlKSB7XG5cdFx0XHRpZiAodGhpcy5vYmplY3RzW2luZGV4XSA9PT0gdGhpcy5zZWxlY3RlZEl0ZW0pIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW0gPSBudWxsO1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSBudWxsO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtID0gdGhpcy5vYmplY3RzW2luZGV4XTtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ID0gaW5kZXg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRJdGVtcy5zb21lKGEgPT4gYS52YWx1ZSA9PT0gdGhpcy5vYmplY3RzW2luZGV4XS52YWx1ZSkpIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ZXMuc3BsaWNlKHRoaXMuc2VsZWN0ZWRJbmRleGVzLmluZGV4T2YoaW5kZXgpLCAxKTtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW1zLnNwbGljZSh0aGlzLnNlbGVjdGVkSXRlbXMubWFwKGEgPT4gYS52YWx1ZSkuaW5kZXhPZih0aGlzLm9iamVjdHNbaW5kZXhdLnZhbHVlKSwgMSk7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ZXMucHVzaChpbmRleCk7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtcy5wdXNoKHRoaXMub2JqZWN0c1tpbmRleF0pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl19