@devopmaat/badaboom 1.2.3 → 1.3.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 (193) hide show
  1. package/fesm2022/devopmaat-badaboom.mjs +591 -271
  2. package/fesm2022/devopmaat-badaboom.mjs.map +1 -1
  3. package/lib/application/common/full-table/bdb-full-table.component.d.ts +2 -1
  4. package/lib/application/common/table/_bdb-table-theme.scss +71 -0
  5. package/lib/application/common/table/bdb-table.component.d.ts +4 -3
  6. package/lib/application/media/media-display/media-display.component.d.ts +23 -0
  7. package/lib/application/media/media-full-table/media-full-table.component.d.ts +24 -0
  8. package/lib/application/media/media-table/media-table.component.d.ts +21 -0
  9. package/lib/application/media/media-type.pipe.d.ts +8 -0
  10. package/lib/application/media/media-upload/media-drop.directive.d.ts +27 -0
  11. package/lib/application/media/media-upload/media-upload.component.d.ts +15 -0
  12. package/lib/application/task-log/task-log-outcome.pipe.d.ts +1 -1
  13. package/lib/application/task-log/task-log-status.pipe.d.ts +1 -1
  14. package/lib/bdb-options.d.ts +3 -0
  15. package/lib/common/alert/_bdb-alert-theme.scss +39 -0
  16. package/lib/common/alert/bdb-alert.component.d.ts +3 -13
  17. package/lib/common/alert-error-response/bdb-alert-error-response.component.d.ts +0 -2
  18. package/lib/common/collapse-row/{_collapse-row-theme.scss → _bdb-collapse-row-theme.scss} +6 -5
  19. package/lib/common/field/_bdb-field-theme.scss +39 -0
  20. package/lib/common/file-size.pipe.d.ts +7 -0
  21. package/lib/common/youtube-player/youtube-player.component.d.ts +14 -0
  22. package/lib/domain/enums/media-type.d.ts +1 -0
  23. package/lib/domain/enums/task-log-outcome.d.ts +1 -0
  24. package/lib/domain/enums/task-log-status.d.ts +1 -0
  25. package/lib/styles/_core-theme.scss +48 -10
  26. package/lib/styles/_theme.scss +57 -140
  27. package/lib/styles/material/_badge-theme.scss +46 -0
  28. package/lib/styles/material/_button-theme.scss +66 -0
  29. package/lib/styles/material/_card-theme.scss +41 -0
  30. package/lib/styles/material/_checkbox-theme.scss +35 -0
  31. package/lib/styles/material/_chips-theme.scss +37 -0
  32. package/lib/styles/material/_datepicker-theme.scss +36 -0
  33. package/lib/styles/material/_fab-theme.scss +50 -0
  34. package/lib/styles/material/_form-field-theme.scss +48 -0
  35. package/lib/styles/material/_icon-button-theme.scss +52 -0
  36. package/lib/styles/material/{_progress-spinner-m3-theme.scss → _icon-theme.scss} +12 -4
  37. package/lib/styles/material/_option-theme.scss +45 -0
  38. package/lib/styles/material/_progress-bar-theme.scss +39 -0
  39. package/lib/styles/material/_progress-spinner-theme.scss +35 -0
  40. package/lib/styles/material/_radio-theme.scss +47 -0
  41. package/lib/styles/material/_slide-toggle-theme.scss +39 -0
  42. package/lib/styles/material/_slider-theme.scss +59 -0
  43. package/lib/styles/material/_stepper-theme.scss +45 -0
  44. package/lib/styles/material/_tabs-theme.scss +32 -0
  45. package/lib/styles/material/_toolbar-theme.scss +41 -0
  46. package/package.json +5 -6
  47. package/public-api.d.ts +9 -2
  48. package/esm2022/devopmaat-badaboom.mjs +0 -5
  49. package/esm2022/lib/application/common/bdb-data-source.mjs +0 -42
  50. package/esm2022/lib/application/common/full-table/bdb-full-table.component.mjs +0 -57
  51. package/esm2022/lib/application/common/paginator/bdb-paginator.component.mjs +0 -37
  52. package/esm2022/lib/application/common/query-input/bdb-query-input.component.mjs +0 -44
  53. package/esm2022/lib/application/common/search/bdb-search-wrapper.component.mjs +0 -33
  54. package/esm2022/lib/application/common/search/bdb-search.component.mjs +0 -163
  55. package/esm2022/lib/application/common/table/bdb-cell.directive.mjs +0 -20
  56. package/esm2022/lib/application/common/table/bdb-column-builder.mjs +0 -100
  57. package/esm2022/lib/application/common/table/bdb-column-options.mjs +0 -2
  58. package/esm2022/lib/application/common/table/bdb-column-type.mjs +0 -12
  59. package/esm2022/lib/application/common/table/bdb-column.mjs +0 -2
  60. package/esm2022/lib/application/common/table/bdb-context-action.mjs +0 -2
  61. package/esm2022/lib/application/common/table/bdb-table.component.mjs +0 -192
  62. package/esm2022/lib/application/common/table/dynamic.pipe.mjs +0 -26
  63. package/esm2022/lib/application/exception-log/exception-log-table/exception-log-table.component.mjs +0 -49
  64. package/esm2022/lib/application/task-log/task-log-outcome.pipe.mjs +0 -31
  65. package/esm2022/lib/application/task-log/task-log-status.pipe.mjs +0 -29
  66. package/esm2022/lib/application/task-log-parameter/task-log-parameter-value.pipe.mjs +0 -49
  67. package/esm2022/lib/application/user/user-table/user-table.component.mjs +0 -68
  68. package/esm2022/lib/bdb-auth-options.mjs +0 -39
  69. package/esm2022/lib/bdb-options.mjs +0 -25
  70. package/esm2022/lib/common/alert/bdb-alert.component.mjs +0 -40
  71. package/esm2022/lib/common/alert-error-response/bdb-alert-error-response.component.mjs +0 -108
  72. package/esm2022/lib/common/bdb-flex-child.directive.mjs +0 -24
  73. package/esm2022/lib/common/bdb-flex.directive.mjs +0 -112
  74. package/esm2022/lib/common/bdb-form-error.directive.mjs +0 -74
  75. package/esm2022/lib/common/bdb-grid-child.directive.mjs +0 -81
  76. package/esm2022/lib/common/bdb-grid.directive.mjs +0 -107
  77. package/esm2022/lib/common/bdb-palette.mjs +0 -2
  78. package/esm2022/lib/common/boolean-display/bdb-boolean-display.component.mjs +0 -23
  79. package/esm2022/lib/common/collapse-row/collapse-row.component.mjs +0 -31
  80. package/esm2022/lib/common/color.mjs +0 -26
  81. package/esm2022/lib/common/constructor.mjs +0 -2
  82. package/esm2022/lib/common/field/bdb-field.component.mjs +0 -20
  83. package/esm2022/lib/common/function.pipe.mjs +0 -20
  84. package/esm2022/lib/common/layout-error.mjs +0 -6
  85. package/esm2022/lib/common/linked-list.mjs +0 -53
  86. package/esm2022/lib/common/plain-number-pipe.mjs +0 -20
  87. package/esm2022/lib/domain/auth/account-info.mjs +0 -2
  88. package/esm2022/lib/domain/auth/account.service.mjs +0 -32
  89. package/esm2022/lib/domain/auth/auth.service.mjs +0 -119
  90. package/esm2022/lib/domain/auth/reset-password-token.mjs +0 -2
  91. package/esm2022/lib/domain/auth/token-expired.interceptor.mjs +0 -21
  92. package/esm2022/lib/domain/auth/token-reponse.mjs +0 -2
  93. package/esm2022/lib/domain/auth/token.interceptor.mjs +0 -17
  94. package/esm2022/lib/domain/common/bdb-filter.mjs +0 -2
  95. package/esm2022/lib/domain/common/bdb-request.mjs +0 -2
  96. package/esm2022/lib/domain/common/bdb-response.mjs +0 -2
  97. package/esm2022/lib/domain/common/entities/bdb-entity-read.mjs +0 -2
  98. package/esm2022/lib/domain/common/entities/bdb-entity-update.mjs +0 -2
  99. package/esm2022/lib/domain/common/entities/bdb-entity.mjs +0 -2
  100. package/esm2022/lib/domain/common/services/bdb-service-cr.mjs +0 -7
  101. package/esm2022/lib/domain/common/services/bdb-service-crd.mjs +0 -7
  102. package/esm2022/lib/domain/common/services/bdb-service-cru.mjs +0 -7
  103. package/esm2022/lib/domain/common/services/bdb-service-crud.mjs +0 -7
  104. package/esm2022/lib/domain/common/services/bdb-service-r.mjs +0 -10
  105. package/esm2022/lib/domain/common/services/bdb-service-rd.mjs +0 -7
  106. package/esm2022/lib/domain/common/services/bdb-service-ru.mjs +0 -7
  107. package/esm2022/lib/domain/common/services/bdb-service-rud.mjs +0 -7
  108. package/esm2022/lib/domain/common/services/bdb-service.mjs +0 -11
  109. package/esm2022/lib/domain/entities/exception-log/exception-log-read.mjs +0 -2
  110. package/esm2022/lib/domain/entities/exception-log/exception-log.mjs +0 -2
  111. package/esm2022/lib/domain/entities/exception-log/exception-log.service.mjs +0 -17
  112. package/esm2022/lib/domain/entities/media/media-read.mjs +0 -2
  113. package/esm2022/lib/domain/entities/media/media.mjs +0 -2
  114. package/esm2022/lib/domain/entities/media/media.service.mjs +0 -27
  115. package/esm2022/lib/domain/entities/role/role-read.mjs +0 -2
  116. package/esm2022/lib/domain/entities/role/role.mjs +0 -2
  117. package/esm2022/lib/domain/entities/role/role.service.mjs +0 -17
  118. package/esm2022/lib/domain/entities/task-log/task-log-create.mjs +0 -2
  119. package/esm2022/lib/domain/entities/task-log/task-log-read.mjs +0 -2
  120. package/esm2022/lib/domain/entities/task-log/task-log.mjs +0 -2
  121. package/esm2022/lib/domain/entities/task-log/task-log.service.mjs +0 -20
  122. package/esm2022/lib/domain/entities/task-log-parameter/task-log-parameter-create.mjs +0 -2
  123. package/esm2022/lib/domain/entities/task-log-parameter/task-log-parameter-read.mjs +0 -2
  124. package/esm2022/lib/domain/entities/task-log-parameter/task-log-parameter.mjs +0 -2
  125. package/esm2022/lib/domain/entities/task-log-parameter/task-log-parameter.service.mjs +0 -17
  126. package/esm2022/lib/domain/entities/task-log-schedule/task-log-schedule-create.mjs +0 -2
  127. package/esm2022/lib/domain/entities/task-log-schedule/task-log-schedule-read.mjs +0 -2
  128. package/esm2022/lib/domain/entities/task-log-schedule/task-log-schedule-update.mjs +0 -2
  129. package/esm2022/lib/domain/entities/task-log-schedule/task-log-schedule.mjs +0 -2
  130. package/esm2022/lib/domain/entities/task-log-schedule/task-log-schedule.service.mjs +0 -17
  131. package/esm2022/lib/domain/entities/user/user-create.mjs +0 -2
  132. package/esm2022/lib/domain/entities/user/user-read.mjs +0 -2
  133. package/esm2022/lib/domain/entities/user/user-update.mjs +0 -2
  134. package/esm2022/lib/domain/entities/user/user.mjs +0 -2
  135. package/esm2022/lib/domain/entities/user/user.service.mjs +0 -17
  136. package/esm2022/lib/domain/entities/user-role/user-role-create.mjs +0 -2
  137. package/esm2022/lib/domain/entities/user-role/user-role-read.mjs +0 -2
  138. package/esm2022/lib/domain/entities/user-role/user-role.mjs +0 -2
  139. package/esm2022/lib/domain/entities/user-role/user-role.service.mjs +0 -17
  140. package/esm2022/lib/domain/enums/media-type.mjs +0 -7
  141. package/esm2022/lib/domain/enums/task-log-outcome.mjs +0 -9
  142. package/esm2022/lib/domain/enums/task-log-parameter-type.mjs +0 -8
  143. package/esm2022/lib/domain/enums/task-log-status.mjs +0 -8
  144. package/esm2022/lib/domain/tasks/task-log-scheduler.service.mjs +0 -26
  145. package/esm2022/lib/domain/tasks/task-log-type-parameter.mjs +0 -2
  146. package/esm2022/lib/domain/tasks/task-log-type.mjs +0 -2
  147. package/esm2022/lib/domain/tasks/task-log-type.service.mjs +0 -44
  148. package/esm2022/lib/lib.config.mjs +0 -67
  149. package/esm2022/lib/presentation/access-denied-page/access-denied-page.component.mjs +0 -51
  150. package/esm2022/lib/presentation/auth-container/auth-container.component.mjs +0 -12
  151. package/esm2022/lib/presentation/forgot-password-page/forgot-password-page.component.mjs +0 -75
  152. package/esm2022/lib/presentation/invalid-token-page/invalid-token-page.component.mjs +0 -26
  153. package/esm2022/lib/presentation/logged-out.guard.mjs +0 -16
  154. package/esm2022/lib/presentation/login-page/login-page.component.mjs +0 -90
  155. package/esm2022/lib/presentation/logout-page/logout-page.component.mjs +0 -33
  156. package/esm2022/lib/presentation/reset-password-page/reset-password-page.component.mjs +0 -102
  157. package/esm2022/lib/presentation/reset-password.resolver.mjs +0 -25
  158. package/esm2022/lib/presentation/role.guard.mjs +0 -28
  159. package/esm2022/public-api.mjs +0 -112
  160. package/lib/application/common/query-input/_bdb-query-input-m2-theme.scss +0 -17
  161. package/lib/application/common/query-input/_bdb-query-input-m3-theme.scss +0 -30
  162. package/lib/application/common/search/_bdb-search-m2-theme.scss +0 -12
  163. package/lib/application/common/table/_bdb-table-m2-theme.scss +0 -48
  164. package/lib/application/common/table/_bdb-table-m3-theme.scss +0 -70
  165. package/lib/common/_button-m2-theme.scss +0 -87
  166. package/lib/common/_icon-m2-theme.scss +0 -32
  167. package/lib/common/alert/_bdb-alert-m2-theme.scss +0 -34
  168. package/lib/common/alert/_bdb-alert-m3-theme.scss +0 -29
  169. package/lib/common/boolean-display/_bdb-boolean-display-m2-theme.scss +0 -18
  170. package/lib/common/boolean-display/_bdb-boolean-display-m3-theme.scss +0 -27
  171. package/lib/common/color.d.ts +0 -14
  172. package/lib/common/constructor.d.ts +0 -2
  173. package/lib/common/field/_bdb-field-m2-theme.scss +0 -13
  174. package/lib/common/field/_bdb-field-m3-theme.scss +0 -56
  175. package/lib/styles/material/_badge-m3-theme.scss +0 -35
  176. package/lib/styles/material/_button-m3-theme.scss +0 -84
  177. package/lib/styles/material/_card-m3-theme.scss +0 -34
  178. package/lib/styles/material/_checkbox-m3-theme.scss +0 -54
  179. package/lib/styles/material/_chips-m3-theme.scss +0 -58
  180. package/lib/styles/material/_datepicker-m3-theme.scss +0 -84
  181. package/lib/styles/material/_fab-m3-theme.scss +0 -84
  182. package/lib/styles/material/_form-field-m3-theme.scss +0 -36
  183. package/lib/styles/material/_icon-m3-theme.scss +0 -32
  184. package/lib/styles/material/_option-m3-theme.scss +0 -34
  185. package/lib/styles/material/_progress-bar-m3-theme.scss +0 -31
  186. package/lib/styles/material/_radio-m3-theme.scss +0 -42
  187. package/lib/styles/material/_slide-toggle-m3-theme.scss +0 -68
  188. package/lib/styles/material/_slider-m3-theme.scss +0 -48
  189. package/lib/styles/material/_stepper-m3-theme.scss +0 -44
  190. package/lib/styles/material/_tabs-m3-theme.scss +0 -32
  191. package/lib/styles/material/_toolbar-m3-theme.scss +0 -63
  192. /package/lib/common/collapse-row/{collapse-row.component.d.ts → bdb-collapse-row.component.d.ts} +0 -0
  193. /package/lib/common/{plain-number-pipe.d.ts → plain-number.pipe.d.ts} +0 -0
@@ -1,39 +0,0 @@
1
- export class BdbAuthOptionsBuilder {
2
- constructor(configure) {
3
- this._addPresentation = false;
4
- configure(this);
5
- }
6
- set loginPath(path) {
7
- this._loginPath = path;
8
- }
9
- set logoutPath(path) {
10
- this._logoutPath = path;
11
- }
12
- set accessDeniedPath(path) {
13
- this._accessDeniedPath = path;
14
- }
15
- set forgotPasswordPath(path) {
16
- this._forgotPasswordPath = path;
17
- }
18
- set resetPasswordPath(path) {
19
- this._resetPasswordPath = path;
20
- }
21
- set invalidTokenPath(path) {
22
- this._invalidTokenPath = path;
23
- }
24
- addPresentation() {
25
- this._addPresentation = true;
26
- }
27
- build() {
28
- return {
29
- loginPath: this._loginPath ?? 'inloggen',
30
- logoutPath: this._logoutPath ?? 'uitloggen',
31
- accessDeniedPath: this._accessDeniedPath ?? 'toegang-geweigerd',
32
- forgotPasswordPath: this._forgotPasswordPath ?? 'wachtwoord-vergeten',
33
- resetPasswordPath: this._resetPasswordPath ?? 'herstel-wachtwoord',
34
- invalidTokenPath: this._invalidTokenPath ?? 'ongeldig-token',
35
- addPresentation: this._addPresentation,
36
- };
37
- }
38
- }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLWF1dGgtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2JhZGFib29tL3NyYy9saWIvYmRiLWF1dGgtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxNQUFNLE9BQU8scUJBQXFCO0lBU2hDLFlBQVksU0FBa0M7UUFGdEMscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBRy9CLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxTQUFTLENBQUMsSUFBWTtRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsSUFBWTtRQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFZO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksa0JBQWtCLENBQUMsSUFBWTtRQUNqQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLGlCQUFpQixDQUFDLElBQVk7UUFDaEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFZO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTztZQUNMLFNBQVMsRUFBRSxJQUFJLENBQUMsVUFBVSxJQUFJLFVBQVU7WUFDeEMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLElBQUksV0FBVztZQUMzQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCLElBQUksbUJBQW1CO1lBQy9ELGtCQUFrQixFQUFFLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxxQkFBcUI7WUFDckUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixJQUFJLG9CQUFvQjtZQUNsRSxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCLElBQUksZ0JBQWdCO1lBQzVELGVBQWUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1NBQ3ZDLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEJkYkF1dGhPcHRpb25zIHtcclxuICBsb2dpblBhdGg6IHN0cmluZztcclxuICBsb2dvdXRQYXRoOiBzdHJpbmc7XHJcbiAgYWNjZXNzRGVuaWVkUGF0aDogc3RyaW5nO1xyXG4gIGZvcmdvdFBhc3N3b3JkUGF0aDogc3RyaW5nO1xyXG4gIHJlc2V0UGFzc3dvcmRQYXRoOiBzdHJpbmc7XHJcbiAgaW52YWxpZFRva2VuUGF0aDogc3RyaW5nO1xyXG4gIGFkZFByZXNlbnRhdGlvbjogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEJkYkF1dGhPcHRpb25zQnVpbGRlciB7XHJcbiAgcHJpdmF0ZSBfbG9naW5QYXRoPzogc3RyaW5nO1xyXG4gIHByaXZhdGUgX2xvZ291dFBhdGg/OiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYWNjZXNzRGVuaWVkUGF0aD86IHN0cmluZztcclxuICBwcml2YXRlIF9mb3Jnb3RQYXNzd29yZFBhdGg/OiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfcmVzZXRQYXNzd29yZFBhdGg/OiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfaW52YWxpZFRva2VuUGF0aD86IHN0cmluZztcclxuICBwcml2YXRlIF9hZGRQcmVzZW50YXRpb24gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoY29uZmlndXJlOiBCZGJBdXRoT3B0aW9uc0NvbmZpZ3VyZSkge1xyXG4gICAgY29uZmlndXJlKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgc2V0IGxvZ2luUGF0aChwYXRoOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2xvZ2luUGF0aCA9IHBhdGg7XHJcbiAgfVxyXG5cclxuICBzZXQgbG9nb3V0UGF0aChwYXRoOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2xvZ291dFBhdGggPSBwYXRoO1xyXG4gIH1cclxuXHJcbiAgc2V0IGFjY2Vzc0RlbmllZFBhdGgocGF0aDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9hY2Nlc3NEZW5pZWRQYXRoID0gcGF0aDtcclxuICB9XHJcblxyXG4gIHNldCBmb3Jnb3RQYXNzd29yZFBhdGgocGF0aDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9mb3Jnb3RQYXNzd29yZFBhdGggPSBwYXRoO1xyXG4gIH1cclxuXHJcbiAgc2V0IHJlc2V0UGFzc3dvcmRQYXRoKHBhdGg6IHN0cmluZykge1xyXG4gICAgdGhpcy5fcmVzZXRQYXNzd29yZFBhdGggPSBwYXRoO1xyXG4gIH1cclxuXHJcbiAgc2V0IGludmFsaWRUb2tlblBhdGgocGF0aDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9pbnZhbGlkVG9rZW5QYXRoID0gcGF0aDtcclxuICB9XHJcblxyXG4gIGFkZFByZXNlbnRhdGlvbigpOiB2b2lkIHtcclxuICAgIHRoaXMuX2FkZFByZXNlbnRhdGlvbiA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBidWlsZCgpOiBCZGJBdXRoT3B0aW9ucyB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBsb2dpblBhdGg6IHRoaXMuX2xvZ2luUGF0aCA/PyAnaW5sb2dnZW4nLFxyXG4gICAgICBsb2dvdXRQYXRoOiB0aGlzLl9sb2dvdXRQYXRoID8/ICd1aXRsb2dnZW4nLFxyXG4gICAgICBhY2Nlc3NEZW5pZWRQYXRoOiB0aGlzLl9hY2Nlc3NEZW5pZWRQYXRoID8/ICd0b2VnYW5nLWdld2VpZ2VyZCcsXHJcbiAgICAgIGZvcmdvdFBhc3N3b3JkUGF0aDogdGhpcy5fZm9yZ290UGFzc3dvcmRQYXRoID8/ICd3YWNodHdvb3JkLXZlcmdldGVuJyxcclxuICAgICAgcmVzZXRQYXNzd29yZFBhdGg6IHRoaXMuX3Jlc2V0UGFzc3dvcmRQYXRoID8/ICdoZXJzdGVsLXdhY2h0d29vcmQnLFxyXG4gICAgICBpbnZhbGlkVG9rZW5QYXRoOiB0aGlzLl9pbnZhbGlkVG9rZW5QYXRoID8/ICdvbmdlbGRpZy10b2tlbicsXHJcbiAgICAgIGFkZFByZXNlbnRhdGlvbjogdGhpcy5fYWRkUHJlc2VudGF0aW9uLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEJkYkF1dGhPcHRpb25zQ29uZmlndXJlID0gKF86IEJkYkF1dGhPcHRpb25zQnVpbGRlcikgPT4gdm9pZDtcclxuIl19
@@ -1,25 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { BdbAuthOptionsBuilder } from './bdb-auth-options';
3
- export class BdbOptionsBuilder {
4
- constructor(configure) {
5
- configure(this);
6
- }
7
- set backendUrl(url) {
8
- this._backendUrl = url;
9
- }
10
- addAuth(configure) {
11
- this._auth = configure;
12
- }
13
- build() {
14
- if (!this._backendUrl) {
15
- throw 'backendUrl mag niet leeg zijn';
16
- }
17
- const options = { backendUrl: this._backendUrl };
18
- if (this._auth) {
19
- options.authOptions = new BdbAuthOptionsBuilder(this._auth).build();
20
- }
21
- return options;
22
- }
23
- }
24
- export const BDB_OPTIONS = new InjectionToken('BdbOptions');
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWRhYm9vbS9zcmMvbGliL2JkYi1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFrQixxQkFBcUIsRUFBMkIsTUFBTSxvQkFBb0IsQ0FBQztBQU9wRyxNQUFNLE9BQU8saUJBQWlCO0lBSTVCLFlBQVksU0FBOEI7UUFDeEMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxHQUFXO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxPQUFPLENBQUMsU0FBa0M7UUFDeEMsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7SUFDekIsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sK0JBQStCLENBQUM7UUFDeEMsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFlLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUU3RCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxXQUFXLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdEUsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUlELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxJQUFJLGNBQWMsQ0FBYSxZQUFZLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJkYkF1dGhPcHRpb25zLCBCZGJBdXRoT3B0aW9uc0J1aWxkZXIsIEJkYkF1dGhPcHRpb25zQ29uZmlndXJlIH0gZnJvbSAnLi9iZGItYXV0aC1vcHRpb25zJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQmRiT3B0aW9ucyB7XHJcbiAgYmFja2VuZFVybDogc3RyaW5nO1xyXG4gIGF1dGhPcHRpb25zPzogQmRiQXV0aE9wdGlvbnM7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBCZGJPcHRpb25zQnVpbGRlciB7XHJcbiAgcHJpdmF0ZSBfYmFja2VuZFVybCE6IHN0cmluZztcclxuICBwcml2YXRlIF9hdXRoPzogQmRiQXV0aE9wdGlvbnNDb25maWd1cmU7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGNvbmZpZ3VyZTogQmRiT3B0aW9uc0NvbmZpZ3VyZSkge1xyXG4gICAgY29uZmlndXJlKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgc2V0IGJhY2tlbmRVcmwodXJsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2JhY2tlbmRVcmwgPSB1cmw7XHJcbiAgfVxyXG5cclxuICBhZGRBdXRoKGNvbmZpZ3VyZTogQmRiQXV0aE9wdGlvbnNDb25maWd1cmUpOiB2b2lkIHtcclxuICAgIHRoaXMuX2F1dGggPSBjb25maWd1cmU7XHJcbiAgfVxyXG5cclxuICBidWlsZCgpOiBCZGJPcHRpb25zIHtcclxuICAgIGlmICghdGhpcy5fYmFja2VuZFVybCkge1xyXG4gICAgICB0aHJvdyAnYmFja2VuZFVybCBtYWcgbmlldCBsZWVnIHppam4nO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG9wdGlvbnM6IEJkYk9wdGlvbnMgPSB7IGJhY2tlbmRVcmw6IHRoaXMuX2JhY2tlbmRVcmwgfTtcclxuXHJcbiAgICBpZiAodGhpcy5fYXV0aCkge1xyXG4gICAgICBvcHRpb25zLmF1dGhPcHRpb25zID0gbmV3IEJkYkF1dGhPcHRpb25zQnVpbGRlcih0aGlzLl9hdXRoKS5idWlsZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBvcHRpb25zO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQmRiT3B0aW9uc0NvbmZpZ3VyZSA9IChfOiBCZGJPcHRpb25zQnVpbGRlcikgPT4gdm9pZDtcclxuXHJcbmV4cG9ydCBjb25zdCBCREJfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxCZGJPcHRpb25zPignQmRiT3B0aW9ucycpO1xyXG4iXX0=
@@ -1,40 +0,0 @@
1
- import { Component, HostBinding, Input } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { mixinColor } from '../color';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/material/icon";
8
- // Boilerplate for applying mixins to BdbAlert.
9
- const _BdbAlertBase = mixinColor(class {
10
- constructor(_elementRef) {
11
- this._elementRef = _elementRef;
12
- }
13
- });
14
- export class BdbAlertComponent extends _BdbAlertBase {
15
- constructor(elementRef) {
16
- super(elementRef);
17
- this.class = 'bdb-alert';
18
- this.label = '';
19
- this.icon = 'task_alt';
20
- this.inline = false;
21
- }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbAlertComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: BdbAlertComponent, isStandalone: true, selector: "bdb-alert", inputs: { color: "color", label: "label", icon: "icon", inline: "inline" }, host: { properties: { "class": "this.class" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"bdb-alert-wrapper\" [ngStyle]=\"{ display: inline ? 'inline-flex' : 'flex' }\">\r\n <div class=\"bdb-icon-container\">\r\n <mat-icon>{{ icon }}</mat-icon>\r\n </div>\r\n <div class=\"content-container\">\r\n <div>\r\n <div class=\"label\">\r\n {{ label }}\r\n </div>\r\n <div class=\"content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".bdb-alert-wrapper{border-radius:4px;border:1px solid}.bdb-alert-wrapper .bdb-icon-container{min-height:100%;min-width:48px;display:flex;justify-content:center;align-items:center}.bdb-alert-wrapper .inline{max-width:100%}.content-container{padding:8px;border-top-right-radius:inherit;border-bottom-right-radius:inherit}.bdb-icon-container{background-color:var(--bdb-alert-container-color);color:var(--bdb-alert-icon-color);border-top-left-radius:inherit;border-bottom-left-radius:inherit}.bdb-alert-wrapper{border-color:var(--bdb-alert-border-color)}.content-container{background-color:var(--bdb-alert-content-container-color);color:var(--bdb-alert-content-color);flex:1}.label{font-weight:500;font-size:1.1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
24
- }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbAlertComponent, decorators: [{
26
- type: Component,
27
- args: [{ selector: 'bdb-alert', standalone: true, imports: [CommonModule, MatIconModule], template: "<div class=\"bdb-alert-wrapper\" [ngStyle]=\"{ display: inline ? 'inline-flex' : 'flex' }\">\r\n <div class=\"bdb-icon-container\">\r\n <mat-icon>{{ icon }}</mat-icon>\r\n </div>\r\n <div class=\"content-container\">\r\n <div>\r\n <div class=\"label\">\r\n {{ label }}\r\n </div>\r\n <div class=\"content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".bdb-alert-wrapper{border-radius:4px;border:1px solid}.bdb-alert-wrapper .bdb-icon-container{min-height:100%;min-width:48px;display:flex;justify-content:center;align-items:center}.bdb-alert-wrapper .inline{max-width:100%}.content-container{padding:8px;border-top-right-radius:inherit;border-bottom-right-radius:inherit}.bdb-icon-container{background-color:var(--bdb-alert-container-color);color:var(--bdb-alert-icon-color);border-top-left-radius:inherit;border-bottom-left-radius:inherit}.bdb-alert-wrapper{border-color:var(--bdb-alert-border-color)}.content-container{background-color:var(--bdb-alert-content-container-color);color:var(--bdb-alert-content-color);flex:1}.label{font-weight:500;font-size:1.1rem}\n"] }]
28
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { class: [{
29
- type: HostBinding,
30
- args: ['class']
31
- }], color: [{
32
- type: Input
33
- }], label: [{
34
- type: Input
35
- }], icon: [{
36
- type: Input
37
- }], inline: [{
38
- type: Input
39
- }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLWFsZXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhZGFib29tL3NyYy9saWIvY29tbW9uL2FsZXJ0L2JkYi1hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWRhYm9vbS9zcmMvbGliL2NvbW1vbi9hbGVydC9iZGItYWxlcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQVksVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQUV2RCwrQ0FBK0M7QUFDL0MsTUFBTSxhQUFhLEdBQUcsVUFBVSxDQUM5QjtJQUNFLFlBQW1CLFdBQXVCO1FBQXZCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO0lBQUcsQ0FBQztDQUMvQyxDQUNGLENBQUM7QUFTRixNQUFNLE9BQU8saUJBQWtCLFNBQVEsYUFBYTtJQU9sRCxZQUFZLFVBQXNCO1FBQ2hDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQVBFLFVBQUssR0FBRyxXQUFXLENBQUM7UUFFakMsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFNBQUksR0FBRyxVQUFVLENBQUM7UUFDbEIsV0FBTSxHQUFHLEtBQUssQ0FBQztJQUl4QixDQUFDOzhHQVRVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHlOQ3BCOUIsaWJBZUEsa3dCRENZLFlBQVksbUhBQUUsYUFBYTs7MkZBSTFCLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDRSxXQUFXLGNBQ1QsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQzsrRUFLaEIsS0FBSztzQkFBMUIsV0FBVzt1QkFBQyxPQUFPO2dCQUNGLEtBQUs7c0JBQXRCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDYW5Db2xvciwgbWl4aW5Db2xvciB9IGZyb20gJy4uL2NvbG9yJztcclxuaW1wb3J0IHsgQmRiUGFsZXR0ZSB9IGZyb20gJy4uL2JkYi1wYWxldHRlJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5cclxuLy8gQm9pbGVycGxhdGUgZm9yIGFwcGx5aW5nIG1peGlucyB0byBCZGJBbGVydC5cclxuY29uc3QgX0JkYkFsZXJ0QmFzZSA9IG1peGluQ29sb3IoXHJcbiAgY2xhc3Mge1xyXG4gICAgY29uc3RydWN0b3IocHVibGljIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxyXG4gIH1cclxuKTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYmRiLWFsZXJ0JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEljb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9iZGItYWxlcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2JkYi1hbGVydC5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmRiQWxlcnRDb21wb25lbnQgZXh0ZW5kcyBfQmRiQWxlcnRCYXNlIGltcGxlbWVudHMgQ2FuQ29sb3Ige1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzcyA9ICdiZGItYWxlcnQnO1xyXG4gIEBJbnB1dCgpIG92ZXJyaWRlIGNvbG9yOiBCZGJQYWxldHRlO1xyXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XHJcbiAgQElucHV0KCkgaWNvbiA9ICd0YXNrX2FsdCc7XHJcbiAgQElucHV0KCkgaW5saW5lID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcclxuICAgIHN1cGVyKGVsZW1lbnRSZWYpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiYmRiLWFsZXJ0LXdyYXBwZXJcIiBbbmdTdHlsZV09XCJ7IGRpc3BsYXk6IGlubGluZSA/ICdpbmxpbmUtZmxleCcgOiAnZmxleCcgfVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJiZGItaWNvbi1jb250YWluZXJcIj5cclxuICAgIDxtYXQtaWNvbj57eyBpY29uIH19PC9tYXQtaWNvbj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiY29udGVudC1jb250YWluZXJcIj5cclxuICAgIDxkaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiPlxyXG4gICAgICAgIHt7IGxhYmVsIH19XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxyXG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,108 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { BdbAlertComponent } from '../alert/bdb-alert.component';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- const LoginFailed = 'LOGIN_FAILED';
7
- const LoginNotAllowed = 'LOGIN_NOT_ALLOWED';
8
- const LoginRequiredTwoFactor = 'LOGIN_REQUIRES_TWO_FACTOR';
9
- const LockedOut = 'LOCKED_OUT';
10
- export class BdbAlertErrorResponseComponent {
11
- constructor() {
12
- this.loginFailed = false;
13
- this.alertClass = 'error';
14
- this.color = 'danger';
15
- this.icon = 'error_outline';
16
- this.label = 'Onbekende fout';
17
- this.message = '';
18
- }
19
- validationFailures() {
20
- if (this.value && this.value.error && this.value.error.errors) {
21
- const ret = [];
22
- const pd = this.value.error;
23
- if (pd.errors) {
24
- const errors = pd.errors;
25
- Object.keys(errors).forEach((x) => ret.push(`${errors[x]}`));
26
- }
27
- return ret;
28
- }
29
- return null;
30
- }
31
- ngOnChanges() {
32
- this.errorCode = undefined;
33
- this.color = 'danger';
34
- if (this.value) {
35
- switch (this.value.status) {
36
- case 0:
37
- this.label = 'Communicatie mislukt';
38
- this.message = 'Controleer uw internetverbinding';
39
- break;
40
- case 400:
41
- this.color = this.alertClass = 'warn';
42
- this.icon = 'warning';
43
- this.label = 'Invoerfout';
44
- break;
45
- case 401:
46
- if (this.value.error === LoginFailed) {
47
- this.label = 'Inloggen mislukt';
48
- this.message = 'Controleer gegevens en probeer opnieuw';
49
- }
50
- else if (this.value.error === LoginNotAllowed) {
51
- this.label = 'Inloggen mislukt';
52
- this.message = 'Login niet toegestaan';
53
- }
54
- else if (this.value.error === LockedOut) {
55
- this.color = this.alertClass = 'warn';
56
- this.icon = 'warning';
57
- this.label = 'Tijdelijk geblokkeerd';
58
- this.message = 'Te veel mislukte inlogpogingen';
59
- }
60
- else if (this.value.error === LoginRequiredTwoFactor) {
61
- this.label = 'Inloggen mislukt';
62
- this.message = 'Tweestapsverificatie vereist';
63
- }
64
- else {
65
- this.label = 'Onbevoegd';
66
- this.message = 'U bent niet bevoegd voor de gevraagde actie';
67
- }
68
- break;
69
- case 403:
70
- this.label = 'Toegang geweigerd';
71
- this.message = 'Onvoldoende rechten voor de gevraagde actie';
72
- break;
73
- case 404:
74
- this.label = 'Niet gevonden';
75
- this.message = 'De opgevraagde bron kon niet worden gevonden';
76
- break;
77
- case 415:
78
- this.label = 'Mediatype niet ondersteund';
79
- this.message = this.value.error;
80
- break;
81
- case 500: {
82
- this.label = this.value.error?.title ?? 'Fout bij afhandeling';
83
- const errorDetail = this.value.error?.exceptionLogCode;
84
- if (errorDetail && errorDetail.match(/[A-Z0-9]{6}/g)) {
85
- this.errorCode = `${errorDetail.slice(0, 2)}-${errorDetail.slice(2, 4)}-${errorDetail.slice(4)}`;
86
- }
87
- else {
88
- this.message = this.value.error?.detail;
89
- }
90
- break;
91
- }
92
- default:
93
- this.label = 'Onbekende fout';
94
- this.message = 'Status: ' + this.value.status;
95
- break;
96
- }
97
- }
98
- }
99
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbAlertErrorResponseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
100
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: BdbAlertErrorResponseComponent, isStandalone: true, selector: "bdb-alert-error-response", inputs: { value: "value" }, usesOnChanges: true, ngImport: i0, template: "<bdb-alert [color]=\"color\" [icon]=\"icon\" [label]=\"label\" *ngIf=\"value\" [class]=\"alertClass\">\r\n <ng-container [ngSwitch]=\"value.status\">\r\n <ng-container *ngSwitchCase=\"400\">\r\n <div *ngFor=\"let message of validationFailures()\">{{ message }}</div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"500\">\r\n <div *ngIf=\"errorCode; else displayMessage\">\r\n Foutcode voor technische ondersteuning: <strong>{{ errorCode }}</strong>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngTemplateOutlet=\"displayMessage\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</bdb-alert>\r\n\r\n<ng-template #displayMessage>\r\n {{ message }}\r\n</ng-template>\r\n", styles: [".alert{padding:8px;border-radius:4px;border:1px solid}.alert.warn{background-color:#fbe9e7;border-color:#d84315}.alert.danger{background-color:#ffebee;border-color:#c62828}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: BdbAlertComponent, selector: "bdb-alert", inputs: ["color", "label", "icon", "inline"] }] }); }
101
- }
102
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbAlertErrorResponseComponent, decorators: [{
103
- type: Component,
104
- args: [{ selector: 'bdb-alert-error-response', standalone: true, imports: [CommonModule, BdbAlertComponent], template: "<bdb-alert [color]=\"color\" [icon]=\"icon\" [label]=\"label\" *ngIf=\"value\" [class]=\"alertClass\">\r\n <ng-container [ngSwitch]=\"value.status\">\r\n <ng-container *ngSwitchCase=\"400\">\r\n <div *ngFor=\"let message of validationFailures()\">{{ message }}</div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"500\">\r\n <div *ngIf=\"errorCode; else displayMessage\">\r\n Foutcode voor technische ondersteuning: <strong>{{ errorCode }}</strong>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngTemplateOutlet=\"displayMessage\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</bdb-alert>\r\n\r\n<ng-template #displayMessage>\r\n {{ message }}\r\n</ng-template>\r\n", styles: [".alert{padding:8px;border-radius:4px;border:1px solid}.alert.warn{background-color:#fbe9e7;border-color:#d84315}.alert.danger{background-color:#ffebee;border-color:#c62828}\n"] }]
105
- }], propDecorators: { value: [{
106
- type: Input
107
- }] } });
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLWFsZXJ0LWVycm9yLXJlc3BvbnNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhZGFib29tL3NyYy9saWIvY29tbW9uL2FsZXJ0LWVycm9yLXJlc3BvbnNlL2JkYi1hbGVydC1lcnJvci1yZXNwb25zZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWRhYm9vbS9zcmMvbGliL2NvbW1vbi9hbGVydC1lcnJvci1yZXNwb25zZS9iZGItYWxlcnQtZXJyb3ItcmVzcG9uc2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFHakUsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDO0FBQ25DLE1BQU0sZUFBZSxHQUFHLG1CQUFtQixDQUFDO0FBQzVDLE1BQU0sc0JBQXNCLEdBQUcsMkJBQTJCLENBQUM7QUFDM0QsTUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDO0FBb0IvQixNQUFNLE9BQU8sOEJBQThCO0lBUDNDO1FBU0UsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEIsZUFBVSxHQUFHLE9BQU8sQ0FBQztRQUNyQixVQUFLLEdBQWUsUUFBUSxDQUFDO1FBQzdCLFNBQUksR0FBRyxlQUFlLENBQUM7UUFDdkIsVUFBSyxHQUFHLGdCQUFnQixDQUFDO1FBQ3pCLFlBQU8sR0FBRyxFQUFFLENBQUM7S0ErRWQ7SUE1RUMsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUss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QUk5Qiw4QkFBOEI7a0JBUDFDLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxpQkFBaUIsQ0FBQzs4QkFLakMsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBCZGJBbGVydENvbXBvbmVudCB9IGZyb20gJy4uL2FsZXJ0L2JkYi1hbGVydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCZGJQYWxldHRlIH0gZnJvbSAnLi4vYmRiLXBhbGV0dGUnO1xyXG5cclxuY29uc3QgTG9naW5GYWlsZWQgPSAnTE9HSU5fRkFJTEVEJztcclxuY29uc3QgTG9naW5Ob3RBbGxvd2VkID0gJ0xPR0lOX05PVF9BTExPV0VEJztcclxuY29uc3QgTG9naW5SZXF1aXJlZFR3b0ZhY3RvciA9ICdMT0dJTl9SRVFVSVJFU19UV09fRkFDVE9SJztcclxuY29uc3QgTG9ja2VkT3V0ID0gJ0xPQ0tFRF9PVVQnO1xyXG5cclxudHlwZSBQcm9ibGVtRGV0YWlscyA9IHtcclxuICB0eXBlPzogc3RyaW5nO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIHN0YXR1cz86IG51bWJlcjtcclxuICBkZXRhaWw/OiBzdHJpbmc7XHJcbiAgaW5zdGFuY2U/OiBzdHJpbmc7XHJcbiAgZXJyb3JzPzoge1xyXG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcclxuICB9O1xyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiZGItYWxlcnQtZXJyb3ItcmVzcG9uc2UnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQmRiQWxlcnRDb21wb25lbnRdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9iZGItYWxlcnQtZXJyb3ItcmVzcG9uc2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2JkYi1hbGVydC1lcnJvci1yZXNwb25zZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmRiQWxlcnRFcnJvclJlc3BvbnNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSB2YWx1ZTogSHR0cEVycm9yUmVzcG9uc2UgfCB1bmRlZmluZWQgfCBudWxsO1xyXG4gIGxvZ2luRmFpbGVkID0gZmFsc2U7XHJcblxyXG4gIGFsZXJ0Q2xhc3MgPSAnZXJyb3InO1xyXG4gIGNvbG9yOiBCZGJQYWxldHRlID0gJ2Rhbmdlcic7XHJcbiAgaWNvbiA9ICdlcnJvcl9vdXRsaW5lJztcclxuICBsYWJlbCA9ICdPbmJla2VuZGUgZm91dCc7XHJcbiAgbWVzc2FnZSA9ICcnO1xyXG4gIGVycm9yQ29kZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG5cclxuICB2YWxpZGF0aW9uRmFpbHVyZXMoKTogc3RyaW5nW10gfCBudWxsIHtcclxuICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUuZXJyb3IgJiYgdGhpcy52YWx1ZS5lcnJvci5lcnJvcnMpIHtcclxuICAgICAgY29uc3QgcmV0OiBzdHJpbmdbXSA9IFtdO1xyXG4gICAgICBjb25zdCBwZCA9IHRoaXMudmFsdWUuZXJyb3IgYXMgUHJvYmxlbURldGFpbHM7XHJcbiAgICAgIGlmIChwZC5lcnJvcnMpIHtcclxuICAgICAgICBjb25zdCBlcnJvcnMgPSBwZC5lcnJvcnM7XHJcbiAgICAgICAgT2JqZWN0LmtleXMoZXJyb3JzKS5mb3JFYWNoKCh4OiBzdHJpbmcpID0+IHJldC5wdXNoKGAke2Vycm9yc1t4XX1gKSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHJldDtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVycm9yQ29kZSA9IHVuZGVmaW5lZDtcclxuICAgIHRoaXMuY29sb3IgPSAnZGFuZ2VyJztcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIHN3aXRjaCAodGhpcy52YWx1ZS5zdGF0dXMpIHtcclxuICAgICAgICBjYXNlIDA6XHJcbiAgICAgICAgICB0aGlzLmxhYmVsID0gJ0NvbW11bmljYXRpZSBtaXNsdWt0JztcclxuICAgICAgICAgIHRoaXMubWVzc2FnZSA9ICdDb250cm9sZWVyIHV3IGludGVybmV0dmVyYmluZGluZyc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIDQwMDpcclxuICAgICAgICAgIHRoaXMuY29sb3IgPSB0aGlzLmFsZXJ0Q2xhc3MgPSAnd2Fybic7XHJcbiAgICAgICAgICB0aGlzLmljb24gPSAnd2FybmluZyc7XHJcbiAgICAgICAgICB0aGlzLmxhYmVsID0gJ0ludm9lcmZvdXQnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSA0MDE6XHJcbiAgICAgICAgICBpZiAodGhpcy52YWx1ZS5lcnJvciA9PT0gTG9naW5GYWlsZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5sYWJlbCA9ICdJbmxvZ2dlbiBtaXNsdWt0JztcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlID0gJ0NvbnRyb2xlZXIgZ2VnZXZlbnMgZW4gcHJvYmVlciBvcG5pZXV3JztcclxuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy52YWx1ZS5lcnJvciA9PT0gTG9naW5Ob3RBbGxvd2VkKSB7XHJcbiAgICAgICAgICAgIHRoaXMubGFiZWwgPSAnSW5sb2dnZW4gbWlzbHVrdCc7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZSA9ICdMb2dpbiBuaWV0IHRvZWdlc3RhYW4nO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnZhbHVlLmVycm9yID09PSBMb2NrZWRPdXQpIHtcclxuICAgICAgICAgICAgdGhpcy5jb2xvciA9IHRoaXMuYWxlcnRDbGFzcyA9ICd3YXJuJztcclxuICAgICAgICAgICAgdGhpcy5pY29uID0gJ3dhcm5pbmcnO1xyXG4gICAgICAgICAgICB0aGlzLmxhYmVsID0gJ1RpamRlbGlqayBnZWJsb2trZWVyZCc7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZSA9ICdUZSB2ZWVsIG1pc2x1a3RlIGlubG9ncG9naW5nZW4nO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnZhbHVlLmVycm9yID09PSBMb2dpblJlcXVpcmVkVHdvRmFjdG9yKSB7XHJcbiAgICAgICAgICAgIHRoaXMubGFiZWwgPSAnSW5sb2dnZW4gbWlzbHVrdCc7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZSA9ICdUd2Vlc3RhcHN2ZXJpZmljYXRpZSB2ZXJlaXN0JztcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubGFiZWwgPSAnT25iZXZvZWdkJztcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlID0gJ1UgYmVudCBuaWV0IGJldm9lZ2Qgdm9vciBkZSBnZXZyYWFnZGUgYWN0aWUnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSA0MDM6XHJcbiAgICAgICAgICB0aGlzLmxhYmVsID0gJ1RvZWdhbmcgZ2V3ZWlnZXJkJztcclxuICAgICAgICAgIHRoaXMubWVzc2FnZSA9ICdPbnZvbGRvZW5kZSByZWNodGVuIHZvb3IgZGUgZ2V2cmFhZ2RlIGFjdGllJztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgNDA0OlxyXG4gICAgICAgICAgdGhpcy5sYWJlbCA9ICdOaWV0IGdldm9uZGVuJztcclxuICAgICAgICAgIHRoaXMubWVzc2FnZSA9ICdEZSBvcGdldnJhYWdkZSBicm9uIGtvbiBuaWV0IHdvcmRlbiBnZXZvbmRlbic7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIDQxNTpcclxuICAgICAgICAgIHRoaXMubGFiZWwgPSAnTWVkaWF0eXBlIG5pZXQgb25kZXJzdGV1bmQnO1xyXG4gICAgICAgICAgdGhpcy5tZXNzYWdlID0gdGhpcy52YWx1ZS5lcnJvcjtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgNTAwOiB7XHJcbiAgICAgICAgICB0aGlzLmxhYmVsID0gdGhpcy52YWx1ZS5lcnJvcj8udGl0bGUgPz8gJ0ZvdXQgYmlqIGFmaGFuZGVsaW5nJztcclxuICAgICAgICAgIGNvbnN0IGVycm9yRGV0YWlsID0gdGhpcy52YWx1ZS5lcnJvcj8uZXhjZXB0aW9uTG9nQ29kZTtcclxuICAgICAgICAgIGlmIChlcnJvckRldGFpbCAmJiBlcnJvckRldGFpbC5tYXRjaCgvW0EtWjAtOV17Nn0vZykpIHtcclxuICAgICAgICAgICAgdGhpcy5lcnJvckNvZGUgPSBgJHtlcnJvckRldGFpbC5zbGljZSgwLCAyKX0tJHtlcnJvckRldGFpbC5zbGljZSgyLCA0KX0tJHtlcnJvckRldGFpbC5zbGljZSg0KX1gO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlID0gdGhpcy52YWx1ZS5lcnJvcj8uZGV0YWlsO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICB0aGlzLmxhYmVsID0gJ09uYmVrZW5kZSBmb3V0JztcclxuICAgICAgICAgIHRoaXMubWVzc2FnZSA9ICdTdGF0dXM6ICcgKyB0aGlzLnZhbHVlLnN0YXR1cztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxiZGItYWxlcnQgW2NvbG9yXT1cImNvbG9yXCIgW2ljb25dPVwiaWNvblwiIFtsYWJlbF09XCJsYWJlbFwiICpuZ0lmPVwidmFsdWVcIiBbY2xhc3NdPVwiYWxlcnRDbGFzc1wiPlxyXG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInZhbHVlLnN0YXR1c1wiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiNDAwXCI+XHJcbiAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG1lc3NhZ2Ugb2YgdmFsaWRhdGlvbkZhaWx1cmVzKClcIj57eyBtZXNzYWdlIH19PC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIjUwMFwiPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JDb2RlOyBlbHNlIGRpc3BsYXlNZXNzYWdlXCI+XHJcbiAgICAgICAgRm91dGNvZGUgdm9vciB0ZWNobmlzY2hlIG9uZGVyc3RldW5pbmc6IDxzdHJvbmc+e3sgZXJyb3JDb2RlIH19PC9zdHJvbmc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkaXNwbGF5TWVzc2FnZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvYmRiLWFsZXJ0PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkaXNwbGF5TWVzc2FnZT5cclxuICB7eyBtZXNzYWdlIH19XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,24 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class BdbFlexChildDirective {
4
- constructor(element, renderer) {
5
- this.element = element;
6
- this.renderer = renderer;
7
- this.bdbFlexChild = '';
8
- }
9
- ngOnInit() {
10
- this.renderer.setStyle(this.element.nativeElement, 'flex', this.bdbFlexChild);
11
- }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexChildDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
13
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: BdbFlexChildDirective, isStandalone: true, selector: "[bdbFlexChild]", inputs: { bdbFlexChild: "bdbFlexChild" }, ngImport: i0 }); }
14
- }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexChildDirective, decorators: [{
16
- type: Directive,
17
- args: [{
18
- selector: '[bdbFlexChild]',
19
- standalone: true,
20
- }]
21
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { bdbFlexChild: [{
22
- type: Input
23
- }] } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLWZsZXgtY2hpbGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFkYWJvb20vc3JjL2xpYi9jb21tb24vYmRiLWZsZXgtY2hpbGQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQzs7QUFNaEYsTUFBTSxPQUFPLHFCQUFxQjtJQUdoQyxZQUNVLE9BQW1CLEVBQ25CLFFBQW1CO1FBRG5CLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUpwQixpQkFBWSxHQUFHLEVBQUUsQ0FBQztJQUt4QixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEYsQ0FBQzs4R0FWVSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFKakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7dUdBRVUsWUFBWTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tiZGJGbGV4Q2hpbGRdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmRiRmxleENoaWxkRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBiZGJGbGV4Q2hpbGQgPSAnJztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2ZsZXgnLCB0aGlzLmJkYkZsZXhDaGlsZCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,112 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { LayoutError } from './layout-error';
3
- import * as i0 from "@angular/core";
4
- const DEFAULT_FLEX_DIRECTION = 'row';
5
- const DEFAULT_FLEX_GAP = '';
6
- const DEFAULT_FLEX_SPACING = {
7
- justify: 'start',
8
- align: 'stretch',
9
- };
10
- export class BdbFlexDirective {
11
- constructor(element, renderer) {
12
- this.element = element;
13
- this.renderer = renderer;
14
- this.bdbFlex = '';
15
- this.bdbFlexDirection = '';
16
- this.bdbFlexGap = '';
17
- this.bdbFlexSpacing = '';
18
- }
19
- ngOnInit() {
20
- this.renderer.setStyle(this.element.nativeElement, 'display', 'flex');
21
- const bdbFlexInputs = this.bdbFlex.split(' ').filter(x => !!x);
22
- this.setDirection(bdbFlexInputs[0]);
23
- this.setGap(bdbFlexInputs[1]);
24
- this.setSpacing({
25
- justify: bdbFlexInputs[2],
26
- align: bdbFlexInputs[3],
27
- });
28
- }
29
- setDirection(bdbFlexInput) {
30
- const direction = this.validateDirection(this.getDirection(bdbFlexInput));
31
- this.renderer.setStyle(this.element.nativeElement, 'flex-direction', direction);
32
- }
33
- getDirection(bdbFlexInput) {
34
- const trimmedBdbFlexDirection = this.bdbFlexDirection.trim();
35
- if (trimmedBdbFlexDirection) {
36
- return trimmedBdbFlexDirection;
37
- }
38
- if (bdbFlexInput) {
39
- return bdbFlexInput;
40
- }
41
- return DEFAULT_FLEX_DIRECTION;
42
- }
43
- validateDirection(direction) {
44
- switch (direction) {
45
- case 'row':
46
- return 'row';
47
- case 'col':
48
- return 'column';
49
- default:
50
- throw new LayoutError(`'${direction}' is not a valid value for flex direction`);
51
- }
52
- }
53
- setGap(bdbFlexInput) {
54
- const gap = this.validateGap(this.getGap(bdbFlexInput));
55
- this.renderer.setStyle(this.element.nativeElement, 'gap', gap);
56
- }
57
- getGap(bdbFlexInput) {
58
- const trimmedBdbFlexGap = this.bdbFlexGap.trim();
59
- if (trimmedBdbFlexGap) {
60
- return trimmedBdbFlexGap;
61
- }
62
- if (bdbFlexInput) {
63
- return bdbFlexInput;
64
- }
65
- return DEFAULT_FLEX_GAP;
66
- }
67
- validateGap(gap) {
68
- return gap;
69
- }
70
- setSpacing(bdbFlexInput) {
71
- const spacing = this.validateSpacing(this.getSpacing(bdbFlexInput));
72
- this.renderer.setStyle(this.element.nativeElement, 'align-items', spacing.align);
73
- this.renderer.setStyle(this.element.nativeElement, 'justify-content', spacing.justify);
74
- }
75
- getSpacing(bdbFlexInput) {
76
- const splitBdbFlexSpacing = this.bdbFlexSpacing.split(' ').filter(x => !!x);
77
- if (splitBdbFlexSpacing.length === 2) {
78
- return {
79
- align: splitBdbFlexSpacing[0],
80
- justify: splitBdbFlexSpacing[1],
81
- };
82
- }
83
- if (bdbFlexInput.align && bdbFlexInput.justify) {
84
- return {
85
- align: bdbFlexInput.align,
86
- justify: bdbFlexInput.justify,
87
- };
88
- }
89
- return DEFAULT_FLEX_SPACING;
90
- }
91
- validateSpacing(spacing) {
92
- return spacing;
93
- }
94
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
95
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: BdbFlexDirective, isStandalone: true, selector: "[bdbFlex], [bdbFlexDirection], [bdbFlexGap], [bdbFlexSpacing]", inputs: { bdbFlex: "bdbFlex", bdbFlexDirection: "bdbFlexDirection", bdbFlexGap: "bdbFlexGap", bdbFlexSpacing: "bdbFlexSpacing" }, ngImport: i0 }); }
96
- }
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexDirective, decorators: [{
98
- type: Directive,
99
- args: [{
100
- selector: '[bdbFlex], [bdbFlexDirection], [bdbFlexGap], [bdbFlexSpacing]',
101
- standalone: true,
102
- }]
103
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { bdbFlex: [{
104
- type: Input
105
- }], bdbFlexDirection: [{
106
- type: Input
107
- }], bdbFlexGap: [{
108
- type: Input
109
- }], bdbFlexSpacing: [{
110
- type: Input
111
- }] } });
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLWZsZXguZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFkYWJvb20vc3JjL2xpYi9jb21tb24vYmRiLWZsZXguZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBTzdDLE1BQU0sc0JBQXNCLEdBQUcsS0FBSyxDQUFDO0FBQ3JDLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0FBQzVCLE1BQU0sb0JBQW9CLEdBQWdCO0lBQ3hDLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLEtBQUssRUFBRSxTQUFTO0NBQ2pCLENBQUM7QUFNRixNQUFNLE9BQU8sZ0JBQWdCO0lBTTNCLFlBQ1UsT0FBbUIsRUFDbkIsUUFBbUI7UUFEbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBUHBCLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYixxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixtQkFBYyxHQUFHLEVBQUUsQ0FBQztJQUsxQixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV0RSxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFL0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FB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QUFLLENBQUMsRUFBRSxDQUFDO1lBQ3JDLE9BQU87Z0JBQ0wsS0FBSyxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztnQkFDN0IsT0FBTyxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQzthQUNoQyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksWUFBWSxDQUFDLEtBQUssSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDL0MsT0FBTztnQkFDTCxLQUFLLEVBQUUsWUFBWSxDQUFDLEtBQUs7Z0JBQ3pCLE9BQU8sRUFBRSxZQUFZLENBQUMsT0FBTzthQUM5QixDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sb0JBQW9CLENBQUM7SUFDOUIsQ0FBQztJQUVELGVBQWUsQ0FBQyxPQUFvQjtRQUNsQyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDOzhHQXpHVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsK0RBQStEO29CQUN6RSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7dUdBRVUsT0FBTztzQkFBZixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMYXlvdXRFcnJvciB9IGZyb20gJy4vbGF5b3V0LWVycm9yJztcclxuXHJcbnR5cGUgRmxleFNwYWNpbmcgPSB7XHJcbiAgYWxpZ246IHN0cmluZztcclxuICBqdXN0aWZ5OiBzdHJpbmc7XHJcbn07XHJcblxyXG5jb25zdCBERUZBVUxUX0ZMRVhfRElSRUNUSU9OID0gJ3Jvdyc7XHJcbmNvbnN0IERFRkFVTFRfRkxFWF9HQVAgPSAnJztcclxuY29uc3QgREVGQVVMVF9GTEVYX1NQQUNJTkc6IEZsZXhTcGFjaW5nID0ge1xyXG4gIGp1c3RpZnk6ICdzdGFydCcsXHJcbiAgYWxpZ246ICdzdHJldGNoJyxcclxufTtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2JkYkZsZXhdLCBbYmRiRmxleERpcmVjdGlvbl0sIFtiZGJGbGV4R2FwXSwgW2JkYkZsZXhTcGFjaW5nXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEJkYkZsZXhEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGJkYkZsZXggPSAnJztcclxuICBASW5wdXQoKSBiZGJGbGV4RGlyZWN0aW9uID0gJyc7XHJcbiAgQElucHV0KCkgYmRiRmxleEdhcCA9ICcnO1xyXG4gIEBJbnB1dCgpIGJkYkZsZXhTcGFjaW5nID0gJyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdkaXNwbGF5JywgJ2ZsZXgnKTtcclxuXHJcbiAgICBjb25zdCBiZGJGbGV4SW5wdXRzID0gdGhpcy5iZGJGbGV4LnNwbGl0KCcgJykuZmlsdGVyKHggPT4gISF4KTtcclxuXHJcbiAgICB0aGlzLnNldERpcmVjdGlvbihiZGJGbGV4SW5wdXRzWzBdKTtcclxuICAgIHRoaXMuc2V0R2FwKGJkYkZsZXhJbnB1dHNbMV0pO1xyXG4gICAgdGhpcy5zZXRTcGFjaW5nKHtcclxuICAgICAganVzdGlmeTogYmRiRmxleElucHV0c1syXSxcclxuICAgICAgYWxpZ246IGJkYkZsZXhJbnB1dHNbM10sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldERpcmVjdGlvbihiZGJGbGV4SW5wdXQ/OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMudmFsaWRhdGVEaXJlY3Rpb24odGhpcy5nZXREaXJlY3Rpb24oYmRiRmxleElucHV0KSk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCAnZmxleC1kaXJlY3Rpb24nLCBkaXJlY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGlyZWN0aW9uKGJkYkZsZXhJbnB1dD86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB0cmltbWVkQmRiRmxleERpcmVjdGlvbiA9IHRoaXMuYmRiRmxleERpcmVjdGlvbi50cmltKCk7XHJcblxyXG4gICAgaWYgKHRyaW1tZWRCZGJGbGV4RGlyZWN0aW9uKSB7XHJcbiAgICAgIHJldHVybiB0cmltbWVkQmRiRmxleERpcmVjdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYmRiRmxleElucHV0KSB7XHJcbiAgICAgIHJldHVybiBiZGJGbGV4SW5wdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIERFRkFVTFRfRkxFWF9ESVJFQ1RJT047XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZURpcmVjdGlvbihkaXJlY3Rpb246IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKGRpcmVjdGlvbikge1xyXG4gICAgICBjYXNlICdyb3cnOlxyXG4gICAgICAgIHJldHVybiAncm93JztcclxuICAgICAgY2FzZSAnY29sJzpcclxuICAgICAgICByZXR1cm4gJ2NvbHVtbic7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgdGhyb3cgbmV3IExheW91dEVycm9yKGAnJHtkaXJlY3Rpb259JyBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgZmxleCBkaXJlY3Rpb25gKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldEdhcChiZGJGbGV4SW5wdXQ/OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IGdhcCA9IHRoaXMudmFsaWRhdGVHYXAodGhpcy5nZXRHYXAoYmRiRmxleElucHV0KSk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCAnZ2FwJywgZ2FwKTtcclxuICB9XHJcblxyXG4gIGdldEdhcChiZGJGbGV4SW5wdXQ/OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdHJpbW1lZEJkYkZsZXhHYXAgPSB0aGlzLmJkYkZsZXhHYXAudHJpbSgpO1xyXG5cclxuICAgIGlmICh0cmltbWVkQmRiRmxleEdhcCkge1xyXG4gICAgICByZXR1cm4gdHJpbW1lZEJkYkZsZXhHYXA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGJkYkZsZXhJbnB1dCkge1xyXG4gICAgICByZXR1cm4gYmRiRmxleElucHV0O1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBERUZBVUxUX0ZMRVhfR0FQO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGVHYXAoZ2FwOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGdhcDtcclxuICB9XHJcblxyXG4gIHNldFNwYWNpbmcoYmRiRmxleElucHV0OiBQYXJ0aWFsPEZsZXhTcGFjaW5nPik6IHZvaWQge1xyXG4gICAgY29uc3Qgc3BhY2luZyA9IHRoaXMudmFsaWRhdGVTcGFjaW5nKHRoaXMuZ2V0U3BhY2luZyhiZGJGbGV4SW5wdXQpKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdhbGlnbi1pdGVtcycsIHNwYWNpbmcuYWxpZ24pO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2p1c3RpZnktY29udGVudCcsIHNwYWNpbmcuanVzdGlmeSk7XHJcbiAgfVxyXG5cclxuICBnZXRTcGFjaW5nKGJkYkZsZXhJbnB1dDogUGFydGlhbDxGbGV4U3BhY2luZz4pOiBGbGV4U3BhY2luZyB7XHJcbiAgICBjb25zdCBzcGxpdEJkYkZsZXhTcGFjaW5nID0gdGhpcy5iZGJGbGV4U3BhY2luZy5zcGxpdCgnICcpLmZpbHRlcih4ID0+ICEheCk7XHJcblxyXG4gICAgaWYgKHNwbGl0QmRiRmxleFNwYWNpbmcubGVuZ3RoID09PSAyKSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgYWxpZ246IHNwbGl0QmRiRmxleFNwYWNpbmdbMF0sXHJcbiAgICAgICAganVzdGlmeTogc3BsaXRCZGJGbGV4U3BhY2luZ1sxXSxcclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYmRiRmxleElucHV0LmFsaWduICYmIGJkYkZsZXhJbnB1dC5qdXN0aWZ5KSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgYWxpZ246IGJkYkZsZXhJbnB1dC5hbGlnbixcclxuICAgICAgICBqdXN0aWZ5OiBiZGJGbGV4SW5wdXQuanVzdGlmeSxcclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gREVGQVVMVF9GTEVYX1NQQUNJTkc7XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZVNwYWNpbmcoc3BhY2luZzogRmxleFNwYWNpbmcpOiBGbGV4U3BhY2luZyB7XHJcbiAgICByZXR1cm4gc3BhY2luZztcclxuICB9XHJcbn1cclxuIl19
@@ -1,74 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/forms";
4
- const errorMessageMap = new Map([
5
- ['required', 'Verplicht'],
6
- ['email', 'Ongeldig e-mail'],
7
- ['phone', 'Ongeldig tel.nr'],
8
- ['requiredTrue', 'Verplicht'],
9
- ['pattern', 'Ongeldig'],
10
- ]);
11
- function getErrorMessage(validationErrorKey, validationErrorValue) {
12
- switch (validationErrorKey) {
13
- case 'minlength':
14
- return `Minimum lengte: ${validationErrorValue['requiredLength']}`;
15
- case 'maxlength':
16
- return `Maximum lengte: ${validationErrorValue['requiredLength']}`;
17
- case 'max':
18
- return `Max: ${validationErrorValue['max']}`;
19
- case 'min':
20
- return `Min: ${validationErrorValue['min']}`;
21
- case 'custom':
22
- return `${validationErrorValue}`;
23
- default:
24
- return errorMessageMap.get(validationErrorKey) ?? validationErrorKey;
25
- }
26
- }
27
- export class BdbFormErrorDirective {
28
- constructor(element, renderer, controlContainer) {
29
- this.element = element;
30
- this.renderer = renderer;
31
- this.controlContainer = controlContainer;
32
- }
33
- ngOnInit() {
34
- if (!this.bdbFormError) {
35
- throw new Error('No (name for) formcontrol provided');
36
- }
37
- if (typeof this.bdbFormError === 'string') {
38
- const ctrl = this.controlContainer.control?.get(this.bdbFormError);
39
- if (!ctrl) {
40
- throw new Error(`No formcontrol found for name '${this.bdbFormError}'`);
41
- }
42
- this.control = ctrl;
43
- }
44
- else {
45
- this.control = this.bdbFormError;
46
- }
47
- this.setError();
48
- this.control.statusChanges.subscribe({
49
- next: () => this.setError(),
50
- });
51
- }
52
- setError() {
53
- const validationErrors = this.control.errors;
54
- if (!validationErrors) {
55
- return;
56
- }
57
- const validationErrorKey = Object.keys(validationErrors)[0];
58
- const validationErrorValue = validationErrors[validationErrorKey];
59
- const errorMessage = getErrorMessage(validationErrorKey, validationErrorValue);
60
- this.renderer.setProperty(this.element.nativeElement, 'innerText', errorMessage);
61
- }
62
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFormErrorDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.ControlContainer }], target: i0.ɵɵFactoryTarget.Directive }); }
63
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: BdbFormErrorDirective, isStandalone: true, selector: "[bdbFormError]", inputs: { bdbFormError: "bdbFormError" }, ngImport: i0 }); }
64
- }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFormErrorDirective, decorators: [{
66
- type: Directive,
67
- args: [{
68
- selector: '[bdbFormError]',
69
- standalone: true,
70
- }]
71
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.ControlContainer }], propDecorators: { bdbFormError: [{
72
- type: Input
73
- }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLWZvcm0tZXJyb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFkYWJvb20vc3JjL2xpYi9jb21tb24vYmRiLWZvcm0tZXJyb3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQzs7O0FBR2hGLE1BQU0sZUFBZSxHQUFHLElBQUksR0FBRyxDQUFDO0lBQzlCLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQztJQUN6QixDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQztJQUM1QixDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQztJQUM1QixDQUFDLGNBQWMsRUFBRSxXQUFXLENBQUM7SUFDN0IsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDO0NBQ3hCLENBQUMsQ0FBQztBQUVILFNBQVMsZUFBZSxDQUFDLGtCQUEwQixFQUFFLG9CQUFnRDtJQUNuRyxRQUFRLGtCQUFrQixFQUFFLENBQUM7UUFDM0IsS0FBSyxXQUFXO1lBQ2QsT0FBTyxtQkFBbUIsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1FBQ3JFLEtBQUssV0FBVztZQUNkLE9BQU8sbUJBQW1CLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztRQUNyRSxLQUFLLEtBQUs7WUFDUixPQUFPLFFBQVEsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMvQyxLQUFLLEtBQUs7WUFDUixPQUFPLFFBQVEsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMvQyxLQUFLLFFBQVE7WUFDWCxPQUFPLEdBQUcsb0JBQW9CLEVBQUUsQ0FBQztRQUNuQztZQUNFLE9BQU8sZUFBZSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLGtCQUFrQixDQUFDO0lBQ3pFLENBQUM7QUFDSCxDQUFDO0FBTUQsTUFBTSxPQUFPLHFCQUFxQjtJQUtoQyxZQUNVLE9BQW1CLEVBQ25CLFFBQW1CLEVBQ25CLGdCQUFrQztRQUZsQyxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUN6QyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFFRCxJQUFJLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFFbkUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO1lBQzFFLENBQUM7WUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUN0QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNuQyxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWhCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztZQUNuQyxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFFN0MsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDdEIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU1RCxNQUFNLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFbEUsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDLENBQUM7UUFFL0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ25GLENBQUM7OEdBakRVLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtzSUFFVSxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBDb250cm9sQ29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuY29uc3QgZXJyb3JNZXNzYWdlTWFwID0gbmV3IE1hcChbXHJcbiAgWydyZXF1aXJlZCcsICdWZXJwbGljaHQnXSxcclxuICBbJ2VtYWlsJywgJ09uZ2VsZGlnIGUtbWFpbCddLFxyXG4gIFsncGhvbmUnLCAnT25nZWxkaWcgdGVsLm5yJ10sXHJcbiAgWydyZXF1aXJlZFRydWUnLCAnVmVycGxpY2h0J10sXHJcbiAgWydwYXR0ZXJuJywgJ09uZ2VsZGlnJ10sXHJcbl0pO1xyXG5cclxuZnVuY3Rpb24gZ2V0RXJyb3JNZXNzYWdlKHZhbGlkYXRpb25FcnJvcktleTogc3RyaW5nLCB2YWxpZGF0aW9uRXJyb3JWYWx1ZTogeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH0pOiBzdHJpbmcge1xyXG4gIHN3aXRjaCAodmFsaWRhdGlvbkVycm9yS2V5KSB7XHJcbiAgICBjYXNlICdtaW5sZW5ndGgnOlxyXG4gICAgICByZXR1cm4gYE1pbmltdW0gbGVuZ3RlOiAke3ZhbGlkYXRpb25FcnJvclZhbHVlWydyZXF1aXJlZExlbmd0aCddfWA7XHJcbiAgICBjYXNlICdtYXhsZW5ndGgnOlxyXG4gICAgICByZXR1cm4gYE1heGltdW0gbGVuZ3RlOiAke3ZhbGlkYXRpb25FcnJvclZhbHVlWydyZXF1aXJlZExlbmd0aCddfWA7XHJcbiAgICBjYXNlICdtYXgnOlxyXG4gICAgICByZXR1cm4gYE1heDogJHt2YWxpZGF0aW9uRXJyb3JWYWx1ZVsnbWF4J119YDtcclxuICAgIGNhc2UgJ21pbic6XHJcbiAgICAgIHJldHVybiBgTWluOiAke3ZhbGlkYXRpb25FcnJvclZhbHVlWydtaW4nXX1gO1xyXG4gICAgY2FzZSAnY3VzdG9tJzpcclxuICAgICAgcmV0dXJuIGAke3ZhbGlkYXRpb25FcnJvclZhbHVlfWA7XHJcbiAgICBkZWZhdWx0OlxyXG4gICAgICByZXR1cm4gZXJyb3JNZXNzYWdlTWFwLmdldCh2YWxpZGF0aW9uRXJyb3JLZXkpID8/IHZhbGlkYXRpb25FcnJvcktleTtcclxuICB9XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2JkYkZvcm1FcnJvcl0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCZGJGb3JtRXJyb3JEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGJkYkZvcm1FcnJvciE6IHN0cmluZyB8IEFic3RyYWN0Q29udHJvbDtcclxuXHJcbiAgY29udHJvbCE6IEFic3RyYWN0Q29udHJvbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwcml2YXRlIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXJcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmJkYkZvcm1FcnJvcikge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIChuYW1lIGZvcikgZm9ybWNvbnRyb2wgcHJvdmlkZWQnKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHlwZW9mIHRoaXMuYmRiRm9ybUVycm9yID09PSAnc3RyaW5nJykge1xyXG4gICAgICBjb25zdCBjdHJsID0gdGhpcy5jb250cm9sQ29udGFpbmVyLmNvbnRyb2w/LmdldCh0aGlzLmJkYkZvcm1FcnJvcik7XHJcblxyXG4gICAgICBpZiAoIWN0cmwpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGZvcm1jb250cm9sIGZvdW5kIGZvciBuYW1lICcke3RoaXMuYmRiRm9ybUVycm9yfSdgKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5jb250cm9sID0gY3RybDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY29udHJvbCA9IHRoaXMuYmRiRm9ybUVycm9yO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc2V0RXJyb3IoKTtcclxuXHJcbiAgICB0aGlzLmNvbnRyb2wuc3RhdHVzQ2hhbmdlcy5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAoKSA9PiB0aGlzLnNldEVycm9yKCksXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldEVycm9yKCk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsaWRhdGlvbkVycm9ycyA9IHRoaXMuY29udHJvbC5lcnJvcnM7XHJcblxyXG4gICAgaWYgKCF2YWxpZGF0aW9uRXJyb3JzKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCB2YWxpZGF0aW9uRXJyb3JLZXkgPSBPYmplY3Qua2V5cyh2YWxpZGF0aW9uRXJyb3JzKVswXTtcclxuXHJcbiAgICBjb25zdCB2YWxpZGF0aW9uRXJyb3JWYWx1ZSA9IHZhbGlkYXRpb25FcnJvcnNbdmFsaWRhdGlvbkVycm9yS2V5XTtcclxuXHJcbiAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2UodmFsaWRhdGlvbkVycm9yS2V5LCB2YWxpZGF0aW9uRXJyb3JWYWx1ZSk7XHJcblxyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2lubmVyVGV4dCcsIGVycm9yTWVzc2FnZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,81 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { LinkedList } from './linked-list';
3
- import * as i0 from "@angular/core";
4
- export class BdbGridChildDirective {
5
- constructor(element, renderer) {
6
- this.element = element;
7
- this.renderer = renderer;
8
- this.bdbGridChild = '';
9
- this.bdbGridRow = '';
10
- this.bdbGridColumn = '';
11
- }
12
- ngOnInit() {
13
- const axes = this.splitAxes();
14
- let column = axes[0];
15
- let row = axes[1];
16
- if (this.bdbGridColumn) {
17
- column = this.bdbGridColumn;
18
- }
19
- if (this.bdbGridRow) {
20
- row = this.bdbGridRow;
21
- }
22
- if (column) {
23
- this.renderer.setStyle(this.element.nativeElement, 'grid-column', column);
24
- }
25
- if (row) {
26
- this.renderer.setStyle(this.element.nativeElement, 'grid-row', row);
27
- }
28
- }
29
- splitAxes() {
30
- const input = this.bdbGridChild.split(' ').filter(x => !!x);
31
- if (!input.length) {
32
- return [];
33
- }
34
- let sourceList = new LinkedList(input);
35
- let targetList = new LinkedList();
36
- let node = sourceList.head;
37
- while (node) {
38
- if (node.value === 'span' && node.next) {
39
- targetList.push(`span ${node.next.value}`);
40
- node = node.next;
41
- }
42
- else {
43
- targetList.push(node.value);
44
- }
45
- node = node.next;
46
- }
47
- sourceList = targetList;
48
- targetList = new LinkedList();
49
- node = sourceList.head;
50
- while (node) {
51
- if (node.next && node.next.value === '/' && node.next.next) {
52
- targetList.push(`${node.value} / ${node.next.next.value}`);
53
- node = node.next.next;
54
- }
55
- else {
56
- targetList.push(node.value);
57
- }
58
- node = node.next;
59
- }
60
- if (targetList.length !== 2 || !targetList.head || !targetList.tail) {
61
- return [];
62
- }
63
- return [targetList.head.value, targetList.tail.value];
64
- }
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbGridChildDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
66
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: BdbGridChildDirective, isStandalone: true, selector: "[bdbGridChild], [bdbGridColumn], [bdbGridRow]", inputs: { bdbGridChild: "bdbGridChild", bdbGridRow: "bdbGridRow", bdbGridColumn: "bdbGridColumn" }, ngImport: i0 }); }
67
- }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbGridChildDirective, decorators: [{
69
- type: Directive,
70
- args: [{
71
- selector: '[bdbGridChild], [bdbGridColumn], [bdbGridRow]',
72
- standalone: true,
73
- }]
74
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { bdbGridChild: [{
75
- type: Input
76
- }], bdbGridRow: [{
77
- type: Input
78
- }], bdbGridColumn: [{
79
- type: Input
80
- }] } });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmRiLWdyaWQtY2hpbGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFkYWJvb20vc3JjL2xpYi9jb21tb24vYmRiLWdyaWQtY2hpbGQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8scUJBQXFCO0lBS2hDLFlBQ1UsT0FBbUIsRUFDbkIsUUFBbUI7UUFEbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBTnBCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsa0JBQWEsR0FBRyxFQUFFLENBQUM7SUFLekIsQ0FBQztJQUVKLFFBQVE7UUFDTixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFOUIsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVsQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN2QixNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUM5QixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDeEIsQ0FBQztRQUVELElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUVELElBQUksR0FBRyxFQUFFLENBQUM7WUFDUixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDdEUsQ0FBQztJQUNILENBQUM7SUFFRCxTQUFTO1FBQ1AsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTVELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbEIsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsSUFBSSxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxVQUFVLEdBQUcsSUFBSSxVQUFVLEVBQVUsQ0FBQztRQUMxQyxJQUFJLElBQUksR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDO1FBRTNCLE9BQU8sSUFBSSxFQUFFLENBQUM7WUFDWixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssTUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDdkMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDM0MsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDbkIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlCLENBQUM7WUFDRCxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUNuQixDQUFDO1FBRUQsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUN4QixVQUFVLEdBQUcsSUFBSSxVQUFVLEVBQVUsQ0FBQztRQUN0QyxJQUFJLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztRQUV2QixPQUFPLElBQUksRUFBRSxDQUFDO1lBQ1osSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUMzRCxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDeEIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlCLENBQUM7WUFDRCxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUNuQixDQUFDO1FBRUQsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEUsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQzs4R0F6RVUscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLCtDQUErQztvQkFDekQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO3VHQUVVLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTGlua2VkTGlzdCB9IGZyb20gJy4vbGlua2VkLWxpc3QnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYmRiR3JpZENoaWxkXSwgW2JkYkdyaWRDb2x1bW5dLCBbYmRiR3JpZFJvd10nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCZGJHcmlkQ2hpbGREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGJkYkdyaWRDaGlsZCA9ICcnO1xyXG4gIEBJbnB1dCgpIGJkYkdyaWRSb3cgPSAnJztcclxuICBASW5wdXQoKSBiZGJHcmlkQ29sdW1uID0gJyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGF4ZXMgPSB0aGlzLnNwbGl0QXhlcygpO1xyXG5cclxuICAgIGxldCBjb2x1bW4gPSBheGVzWzBdO1xyXG4gICAgbGV0IHJvdyA9IGF4ZXNbMV07XHJcblxyXG4gICAgaWYgKHRoaXMuYmRiR3JpZENvbHVtbikge1xyXG4gICAgICBjb2x1bW4gPSB0aGlzLmJkYkdyaWRDb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuYmRiR3JpZFJvdykge1xyXG4gICAgICByb3cgPSB0aGlzLmJkYkdyaWRSb3c7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbHVtbikge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCAnZ3JpZC1jb2x1bW4nLCBjb2x1bW4pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChyb3cpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2dyaWQtcm93Jywgcm93KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNwbGl0QXhlcygpOiBzdHJpbmdbXSB7XHJcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuYmRiR3JpZENoaWxkLnNwbGl0KCcgJykuZmlsdGVyKHggPT4gISF4KTtcclxuXHJcbiAgICBpZiAoIWlucHV0Lmxlbmd0aCkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHNvdXJjZUxpc3QgPSBuZXcgTGlua2VkTGlzdChpbnB1dCk7XHJcbiAgICBsZXQgdGFyZ2V0TGlzdCA9IG5ldyBMaW5rZWRMaXN0PHN0cmluZz4oKTtcclxuICAgIGxldCBub2RlID0gc291cmNlTGlzdC5oZWFkO1xyXG5cclxuICAgIHdoaWxlIChub2RlKSB7XHJcbiAgICAgIGlmIChub2RlLnZhbHVlID09PSAnc3BhbicgJiYgbm9kZS5uZXh0KSB7XHJcbiAgICAgICAgdGFyZ2V0TGlzdC5wdXNoKGBzcGFuICR7bm9kZS5uZXh0LnZhbHVlfWApO1xyXG4gICAgICAgIG5vZGUgPSBub2RlLm5leHQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGFyZ2V0TGlzdC5wdXNoKG5vZGUudmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICAgIG5vZGUgPSBub2RlLm5leHQ7XHJcbiAgICB9XHJcblxyXG4gICAgc291cmNlTGlzdCA9IHRhcmdldExpc3Q7XHJcbiAgICB0YXJnZXRMaXN0ID0gbmV3IExpbmtlZExpc3Q8c3RyaW5nPigpO1xyXG4gICAgbm9kZSA9IHNvdXJjZUxpc3QuaGVhZDtcclxuXHJcbiAgICB3aGlsZSAobm9kZSkge1xyXG4gICAgICBpZiAobm9kZS5uZXh0ICYmIG5vZGUubmV4dC52YWx1ZSA9PT0gJy8nICYmIG5vZGUubmV4dC5uZXh0KSB7XHJcbiAgICAgICAgdGFyZ2V0TGlzdC5wdXNoKGAke25vZGUudmFsdWV9IC8gJHtub2RlLm5leHQubmV4dC52YWx1ZX1gKTtcclxuICAgICAgICBub2RlID0gbm9kZS5uZXh0Lm5leHQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGFyZ2V0TGlzdC5wdXNoKG5vZGUudmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICAgIG5vZGUgPSBub2RlLm5leHQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRhcmdldExpc3QubGVuZ3RoICE9PSAyIHx8ICF0YXJnZXRMaXN0LmhlYWQgfHwgIXRhcmdldExpc3QudGFpbCkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIFt0YXJnZXRMaXN0LmhlYWQudmFsdWUsIHRhcmdldExpc3QudGFpbC52YWx1ZV07XHJcbiAgfVxyXG59XHJcbiJdfQ==