@valtimo/components 11.3.2 → 12.1.0

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 (467) hide show
  1. package/assets/css/carbon.scss +84 -110
  2. package/assets/css/color.scss +28 -0
  3. package/assets/css/compatibility.scss +732 -0
  4. package/assets/css/design-tokens.css +31 -31
  5. package/assets/css/ng-multiselect-dropdown.theme.scss +1 -1
  6. package/esm2022/lib/components/alert/alert.component.mjs +7 -8
  7. package/esm2022/lib/components/alert/alert.module.mjs +6 -6
  8. package/esm2022/lib/components/alert/alert.service.mjs +6 -6
  9. package/esm2022/lib/components/bpmn-js-diagram/bpmn-js-diagram.component.mjs +7 -7
  10. package/esm2022/lib/components/bpmn-js-diagram/bpmn-js-diagram.module.mjs +6 -6
  11. package/esm2022/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.mjs +36 -12
  12. package/esm2022/lib/components/breadcrumb-navigation/breadcrumb-navigation.module.mjs +6 -6
  13. package/esm2022/lib/components/breadcrumb-navigation/breadcrumb.service.mjs +16 -7
  14. package/esm2022/lib/components/button/button.component.mjs +6 -6
  15. package/esm2022/lib/components/button/button.module.mjs +6 -6
  16. package/esm2022/lib/components/camunda/form/camunda-form.components.mjs +7 -7
  17. package/esm2022/lib/components/camunda/form/camunda-form.module.mjs +6 -6
  18. package/esm2022/lib/components/camunda/form/custom/camunda-custom-form.component.mjs +7 -7
  19. package/esm2022/lib/components/camunda/form/custom/camunda-custom-form.module.mjs +6 -6
  20. package/esm2022/lib/components/camunda/form/generated/camunda-generated-form.component.mjs +7 -7
  21. package/esm2022/lib/components/camunda/form/generated/camunda-generated-form.module.mjs +6 -6
  22. package/esm2022/lib/components/camunda/form/generated/formfield/boolean/camunda-boolean-formfield.component.mjs +7 -7
  23. package/esm2022/lib/components/camunda/form/generated/formfield/camunda-formfield-generator.directive.mjs +6 -6
  24. package/esm2022/lib/components/camunda/form/generated/formfield/camunda-formfield.service.mjs +6 -6
  25. package/esm2022/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.mjs +13 -13
  26. package/esm2022/lib/components/camunda/form/generated/formfield/date/camunda-date-formfield.component.mjs +7 -7
  27. package/esm2022/lib/components/camunda/form/generated/formfield/enum/camunda-enum-formfield.component.mjs +7 -7
  28. package/esm2022/lib/components/camunda/form/generated/formfield/formfield.model.mjs +2 -2
  29. package/esm2022/lib/components/camunda/form/generated/formfield/long/camunda-long-formfield.component.mjs +7 -7
  30. package/esm2022/lib/components/camunda/form/generated/formfield/string/camunda-string-formfield.component.mjs +7 -7
  31. package/esm2022/lib/components/camunda/form/generated/formfield/textarea/camunda-textarea-formfield.component.mjs +7 -7
  32. package/esm2022/lib/components/camunda/form/generated/formfield/validation/camunda-formfield-validation.component.mjs +7 -7
  33. package/esm2022/lib/components/camunda/form/generated/formfield/validation/date.validators.mjs +2 -2
  34. package/esm2022/lib/components/carbon-list/CarbonListFilterPipe.directive.mjs +5 -5
  35. package/esm2022/lib/components/carbon-list/carbon-list.component.mjs +170 -37
  36. package/esm2022/lib/components/carbon-list/carbon-list.module.mjs +33 -10
  37. package/esm2022/lib/components/carbon-list/no-results/carbon-no-results.component.mjs +40 -8
  38. package/esm2022/lib/components/carbon-list/services/carbon-list-drag-and-drop.service.mjs +165 -0
  39. package/esm2022/lib/components/carbon-list/services/index.mjs +17 -0
  40. package/esm2022/lib/components/carbon-list/tags-modal/tags-modal.component.mjs +33 -0
  41. package/esm2022/lib/components/card/card.component.mjs +7 -9
  42. package/esm2022/lib/components/card/card.module.mjs +6 -6
  43. package/esm2022/lib/components/confirmation-modal/confirmation-modal.component.mjs +41 -16
  44. package/esm2022/lib/components/confirmation-modal/confirmation-modal.module.mjs +6 -6
  45. package/esm2022/lib/components/data-list/data-list.component.mjs +7 -9
  46. package/esm2022/lib/components/data-list/data-list.module.mjs +6 -6
  47. package/esm2022/lib/components/date-picker/date-picker.component.mjs +15 -9
  48. package/esm2022/lib/components/date-picker/date-picker.module.mjs +6 -6
  49. package/esm2022/lib/components/dropzone/dropzone.component.mjs +8 -8
  50. package/esm2022/lib/components/dropzone/dropzone.module.mjs +6 -6
  51. package/esm2022/lib/components/editor/editor.component.mjs +59 -13
  52. package/esm2022/lib/components/editor/editor.module.mjs +8 -7
  53. package/esm2022/lib/components/editor/editor.service.mjs +35 -11
  54. package/esm2022/lib/components/expansion-panel/expansion-panel.component.mjs +6 -6
  55. package/esm2022/lib/components/expansion-panel/expansion-panel.module.mjs +6 -6
  56. package/esm2022/lib/components/field-auto-focus/field-auto-focus.directive.mjs +6 -6
  57. package/esm2022/lib/components/field-auto-focus/field-auto-focus.module.mjs +6 -6
  58. package/esm2022/lib/components/file-size/file-size.module.mjs +6 -6
  59. package/esm2022/lib/components/file-size/file-size.pipe.mjs +5 -5
  60. package/esm2022/lib/components/filter-sidebar/filter-sidebar.component.mjs +7 -7
  61. package/esm2022/lib/components/filter-sidebar/filter-sidebar.module.mjs +6 -6
  62. package/esm2022/lib/components/form/form.component.mjs +6 -6
  63. package/esm2022/lib/components/form/form.module.mjs +6 -6
  64. package/esm2022/lib/components/form-io/form-io-builder.component.mjs +10 -10
  65. package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user-edit-form.mjs +2 -2
  66. package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user.component.mjs +6 -6
  67. package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user.formio.mjs +3 -3
  68. package/esm2022/lib/components/form-io/form-io-iban/iban.component.mjs +4 -4
  69. package/esm2022/lib/components/form-io/form-io-iban/iban.formio.mjs +2 -2
  70. package/esm2022/lib/components/form-io/form-io-iban/iban.validators.mjs +1 -1
  71. package/esm2022/lib/components/form-io/form-io-resource-selector/form-io-resource-selector.formio.mjs +3 -3
  72. package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader-edit-form.mjs +2 -2
  73. package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader.component.mjs +7 -7
  74. package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader.formio.mjs +3 -3
  75. package/esm2022/lib/components/form-io/form-io.component.mjs +38 -29
  76. package/esm2022/lib/components/form-io/form-io.module.mjs +6 -15
  77. package/esm2022/lib/components/form-io/formio-config.mjs +2 -2
  78. package/esm2022/lib/components/form-io/services/form-io-dom.service.mjs +6 -6
  79. package/esm2022/lib/components/form-io/services/form-io-local-storage.service.mjs +4 -4
  80. package/esm2022/lib/components/form-io/services/form-io-state.service.mjs +5 -5
  81. package/esm2022/lib/components/input/input.component.mjs +15 -9
  82. package/esm2022/lib/components/input/input.module.mjs +6 -6
  83. package/esm2022/lib/components/input-label/input-label.component.mjs +10 -7
  84. package/esm2022/lib/components/input-label/input-label.module.mjs +6 -6
  85. package/esm2022/lib/components/left-sidebar/left-sidebar.component.mjs +6 -6
  86. package/esm2022/lib/components/left-sidebar/left-sidebar.module.mjs +6 -6
  87. package/esm2022/lib/components/list/ListFilterPipe.directive.mjs +5 -5
  88. package/esm2022/lib/components/list/list.component.mjs +7 -7
  89. package/esm2022/lib/components/list/list.module.mjs +25 -7
  90. package/esm2022/lib/components/menu/menu-item-text.component.mjs +6 -6
  91. package/esm2022/lib/components/menu/menu-routing.module.mjs +6 -6
  92. package/esm2022/lib/components/menu/menu.init.mjs +2 -2
  93. package/esm2022/lib/components/menu/menu.module.mjs +6 -6
  94. package/esm2022/lib/components/menu/menu.service.mjs +11 -9
  95. package/esm2022/lib/components/modal/modal.component.mjs +7 -7
  96. package/esm2022/lib/components/modal/modal.module.mjs +6 -6
  97. package/esm2022/lib/components/multi-input/carbon-multi-input.component.mjs +45 -10
  98. package/esm2022/lib/components/multi-input/carbon-multi-input.module.mjs +6 -6
  99. package/esm2022/lib/components/multi-input-form/multi-input-form.component.mjs +6 -6
  100. package/esm2022/lib/components/multi-input-form/multi-input-form.module.mjs +6 -6
  101. package/esm2022/lib/components/multiselect-dropdown/multiselect-dropdown.component.mjs +6 -6
  102. package/esm2022/lib/components/multiselect-dropdown/multiselect-dropdown.module.mjs +6 -6
  103. package/esm2022/lib/components/page/page-container/page-container.component.mjs +6 -6
  104. package/esm2022/lib/components/page/page-content/page-content.component.mjs +6 -6
  105. package/esm2022/lib/components/page/page-header/page-header.component.mjs +6 -6
  106. package/esm2022/lib/components/page/page-header-actions/page-header-actions.component.mjs +6 -6
  107. package/esm2022/lib/components/page/page-header-introduction/page-header-introduction.component.mjs +6 -6
  108. package/esm2022/lib/components/page/page.module.mjs +6 -6
  109. package/esm2022/lib/components/page-actions/page-actions.component.mjs +82 -0
  110. package/esm2022/lib/components/page-header/page-header.component.mjs +43 -13
  111. package/esm2022/lib/components/page-header/page-header.module.mjs +27 -7
  112. package/esm2022/lib/components/page-subtitle/page-subtitle.component.mjs +53 -0
  113. package/esm2022/lib/components/page-title/page-title.component.mjs +30 -21
  114. package/esm2022/lib/components/page-title/page-title.module.mjs +8 -8
  115. package/esm2022/lib/components/paragraph/paragraph.component.mjs +6 -6
  116. package/esm2022/lib/components/paragraph/paragraph.module.mjs +6 -6
  117. package/esm2022/lib/components/pending-changes/pending-changes.component.mjs +24 -7
  118. package/esm2022/lib/components/pending-changes/pending-changes.service.mjs +4 -4
  119. package/esm2022/lib/components/progress-bar/progress-bar.component.mjs +6 -6
  120. package/esm2022/lib/components/progress-bar/progress-bar.module.mjs +6 -6
  121. package/esm2022/lib/components/prompt/prompt.component.mjs +7 -7
  122. package/esm2022/lib/components/prompt/prompt.module.mjs +6 -6
  123. package/esm2022/lib/components/radio/radio.component.mjs +6 -6
  124. package/esm2022/lib/components/radio/radio.module.mjs +6 -6
  125. package/esm2022/lib/components/right-sidebar/right-sidebar.component.mjs +166 -60
  126. package/esm2022/lib/components/right-sidebar/right-sidebar.module.mjs +15 -12
  127. package/esm2022/lib/components/search-fields/search-fields.component.mjs +52 -32
  128. package/esm2022/lib/components/search-fields/search-fields.module.mjs +24 -9
  129. package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.component.mjs +6 -6
  130. package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.module.mjs +6 -6
  131. package/esm2022/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.mjs +9 -6
  132. package/esm2022/lib/components/searchable-dropdown-select/searchable-dropdown-select.module.mjs +6 -6
  133. package/esm2022/lib/components/select/select.component.mjs +12 -8
  134. package/esm2022/lib/components/select/select.module.mjs +6 -6
  135. package/esm2022/lib/components/spinner/spinner.component.mjs +6 -6
  136. package/esm2022/lib/components/spinner/spinner.module.mjs +6 -6
  137. package/esm2022/lib/components/status-selector/status-selector.component.mjs +86 -0
  138. package/esm2022/lib/components/stepper/stepper-container/stepper-container.component.mjs +7 -7
  139. package/esm2022/lib/components/stepper/stepper-content/stepper-content.component.mjs +7 -7
  140. package/esm2022/lib/components/stepper/stepper-footer/stepper-footer.component.mjs +6 -6
  141. package/esm2022/lib/components/stepper/stepper-footer-step/stepper-footer-step.component.mjs +8 -8
  142. package/esm2022/lib/components/stepper/stepper-header/stepper-header.component.mjs +7 -7
  143. package/esm2022/lib/components/stepper/stepper-step/stepper-step.component.mjs +7 -7
  144. package/esm2022/lib/components/stepper/stepper.module.mjs +9 -8
  145. package/esm2022/lib/components/table/table.component.mjs +7 -7
  146. package/esm2022/lib/components/table/table.module.mjs +6 -6
  147. package/esm2022/lib/components/timeline/timeline.component.mjs +6 -6
  148. package/esm2022/lib/components/timeline/timeline.module.mjs +8 -7
  149. package/esm2022/lib/components/title/title.component.mjs +6 -6
  150. package/esm2022/lib/components/title/title.module.mjs +6 -6
  151. package/esm2022/lib/components/tooltip-icon/tooltip-icon.component.mjs +6 -6
  152. package/esm2022/lib/components/tooltip-icon/tooltip-icon.module.mjs +6 -6
  153. package/esm2022/lib/components/topbar/topbar.component.mjs +70 -23
  154. package/esm2022/lib/components/topbar/topbar.module.mjs +6 -6
  155. package/esm2022/lib/components/uploader/uploader-drag-drop.directive.mjs +5 -5
  156. package/esm2022/lib/components/uploader/uploader.component.mjs +7 -8
  157. package/esm2022/lib/components/uploader/uploader.module.mjs +6 -6
  158. package/esm2022/lib/components/v-card/card.component.mjs +6 -6
  159. package/esm2022/lib/components/v-card/card.module.mjs +6 -6
  160. package/esm2022/lib/components/v-modal/modal.component.mjs +7 -7
  161. package/esm2022/lib/components/v-modal/modal.module.mjs +6 -6
  162. package/esm2022/lib/components/version/version.service.mjs +6 -6
  163. package/esm2022/lib/components/view-content/type-converters/booleanTypeConverter.mjs +13 -17
  164. package/esm2022/lib/components/view-content/type-converters/currencyTypeConverter.mjs +37 -0
  165. package/esm2022/lib/components/view-content/type-converters/dateTimeTypeConverter.mjs +31 -0
  166. package/esm2022/lib/components/view-content/type-converters/dateTypeConverter.mjs +6 -4
  167. package/esm2022/lib/components/view-content/type-converters/enumTypeConverter.mjs +3 -3
  168. package/esm2022/lib/components/view-content/type-converters/numberTypeConverter.mjs +37 -0
  169. package/esm2022/lib/components/view-content/type-converters/percentTypeConverter.mjs +37 -0
  170. package/esm2022/lib/components/view-content/type-converters/relatedFilesTypeConverter.mjs +2 -2
  171. package/esm2022/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.mjs +2 -2
  172. package/esm2022/lib/components/view-content/type-converters/stringTypeConverter.mjs +2 -2
  173. package/esm2022/lib/components/view-content/type-converters/type-converters.model.mjs +61 -18
  174. package/esm2022/lib/components/view-content/view-content.module.mjs +33 -0
  175. package/esm2022/lib/components/view-content/view-content.service.mjs +14 -25
  176. package/esm2022/lib/components/webcam/webcam.component.mjs +6 -6
  177. package/esm2022/lib/components/webcam/webcam.module.mjs +6 -6
  178. package/esm2022/lib/components/widget/widget.component.mjs +6 -6
  179. package/esm2022/lib/components/widget/widget.module.mjs +6 -6
  180. package/esm2022/lib/constants/carbon.constants.mjs +3 -2
  181. package/esm2022/lib/constants/index.mjs +3 -2
  182. package/esm2022/lib/constants/status.constants.mjs +18 -0
  183. package/esm2022/lib/constants/view-type-converter.constants.mjs +16 -1
  184. package/esm2022/lib/directives/command-click/command-click-directive.module.mjs +6 -6
  185. package/esm2022/lib/directives/command-click/command-click.directive.mjs +6 -6
  186. package/esm2022/lib/directives/digit-only/digit-only.directive.mjs +6 -6
  187. package/esm2022/lib/directives/fit-page/fit-page-directive.module.mjs +33 -0
  188. package/esm2022/lib/directives/fit-page/fit-page.directive.mjs +54 -0
  189. package/esm2022/lib/directives/render-in-page-header/render-in-page-header-directive.module.mjs +6 -6
  190. package/esm2022/lib/directives/render-in-page-header/render-in-page-header.directive.mjs +23 -10
  191. package/esm2022/lib/directives/render-page-header/render-page-header-directive.module.mjs +33 -0
  192. package/esm2022/lib/directives/render-page-header/render-page-header.directive.mjs +56 -0
  193. package/esm2022/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.mjs +33 -0
  194. package/esm2022/lib/directives/render-page-subtitle/render-page-subtitle.directive.mjs +57 -0
  195. package/esm2022/lib/directives/tooltip/tooltip.component.mjs +6 -6
  196. package/esm2022/lib/directives/tooltip/tooltip.directive.mjs +6 -6
  197. package/esm2022/lib/directives/tooltip/tooltip.module.mjs +6 -6
  198. package/esm2022/lib/directives/valtimo-cds-modal/valtimo-cds-modal-directive.module.mjs +6 -6
  199. package/esm2022/lib/directives/valtimo-cds-modal/valtimo-cds-modal.directive.mjs +7 -7
  200. package/esm2022/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button-directive.module.mjs +6 -6
  201. package/esm2022/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button.directive.mjs +7 -7
  202. package/esm2022/lib/guards/index.mjs +2 -2
  203. package/esm2022/lib/guards/pending-changes.guard.mjs +1 -1
  204. package/esm2022/lib/models/alert.model.mjs +2 -2
  205. package/esm2022/lib/models/button.model.mjs +2 -2
  206. package/esm2022/lib/models/carbon-list.model.mjs +5 -1
  207. package/esm2022/lib/models/carbon-pagination.model.mjs +2 -2
  208. package/esm2022/lib/models/carbon-tag.model.mjs +17 -0
  209. package/esm2022/lib/models/carbon-theme.model.mjs +24 -0
  210. package/esm2022/lib/models/choice-field.model.mjs +17 -0
  211. package/esm2022/lib/models/choicefield-value.model.mjs +17 -0
  212. package/esm2022/lib/models/documenten-api-metadata.model.mjs +2 -2
  213. package/esm2022/lib/models/editor.model.mjs +8 -3
  214. package/esm2022/lib/models/form-io.model.mjs +2 -2
  215. package/esm2022/lib/models/form.model.mjs +2 -2
  216. package/esm2022/lib/models/index.mjs +11 -4
  217. package/esm2022/lib/models/input.model.mjs +2 -2
  218. package/esm2022/lib/models/modal.model.mjs +2 -2
  219. package/esm2022/lib/models/multi-input.model.mjs +2 -2
  220. package/esm2022/lib/models/pagination.model.mjs +2 -2
  221. package/esm2022/lib/models/radio.model.mjs +2 -2
  222. package/esm2022/lib/models/right-sidebar.model.mjs +17 -0
  223. package/esm2022/lib/models/searchable-dropdown.model.mjs +2 -2
  224. package/esm2022/lib/models/select.model.mjs +2 -2
  225. package/esm2022/lib/models/sort.model.mjs +2 -2
  226. package/esm2022/lib/models/stepper.model.mjs +2 -2
  227. package/esm2022/lib/models/table.model.mjs +2 -2
  228. package/esm2022/lib/models/theme.model.mjs +28 -0
  229. package/esm2022/lib/models/timeline.model.mjs +2 -2
  230. package/esm2022/lib/models/title.model.mjs +2 -2
  231. package/esm2022/lib/models/topbar.model.mjs +17 -0
  232. package/esm2022/lib/models/version.model.mjs +2 -2
  233. package/esm2022/lib/modules/custom-formio-component/create-custom-component.mjs +162 -0
  234. package/esm2022/lib/modules/custom-formio-component/custom-tags.service.mjs +32 -0
  235. package/esm2022/lib/modules/custom-formio-component/elements.common.mjs +17 -0
  236. package/esm2022/lib/modules/custom-formio-component/index.mjs +20 -0
  237. package/esm2022/lib/modules/custom-formio-component/register-custom-component.mjs +38 -0
  238. package/esm2022/lib/modules/index.mjs +17 -0
  239. package/esm2022/lib/pipes/case-count.pipe.mjs +5 -5
  240. package/esm2022/lib/pipes/components-pipes.module.mjs +6 -6
  241. package/esm2022/lib/pipes/index.mjs +2 -2
  242. package/esm2022/lib/pipes/is-array.pipe.mjs +5 -5
  243. package/esm2022/lib/pipes/menu-item-translation.pipe.mjs +6 -6
  244. package/esm2022/lib/services/cds-theme.service.mjs +97 -0
  245. package/esm2022/lib/services/choice-field.service.mjs +70 -0
  246. package/esm2022/lib/services/index.mjs +22 -1
  247. package/esm2022/lib/services/key-generator.service.mjs +50 -0
  248. package/esm2022/lib/services/key-state.service.mjs +33 -0
  249. package/esm2022/lib/services/modal.service.mjs +6 -6
  250. package/esm2022/lib/services/page-header.service.mjs +83 -0
  251. package/esm2022/lib/services/page-subtitle.service.mjs +46 -0
  252. package/esm2022/lib/services/page-title.service.mjs +121 -0
  253. package/esm2022/lib/services/prompt.service.mjs +5 -5
  254. package/esm2022/lib/services/shell.service.mjs +6 -6
  255. package/esm2022/lib/services/stepper.service.mjs +5 -5
  256. package/esm2022/lib/services/user-interface.service.mjs +5 -5
  257. package/esm2022/lib/services/valtimo-modal.service.mjs +5 -5
  258. package/esm2022/public_api.mjs +17 -7
  259. package/fesm2022/valtimo-components.mjs +8915 -7379
  260. package/fesm2022/valtimo-components.mjs.map +1 -1
  261. package/lib/components/alert/alert.component.d.ts +2 -3
  262. package/lib/components/alert/alert.component.d.ts.map +1 -1
  263. package/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.d.ts +11 -2
  264. package/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.d.ts.map +1 -1
  265. package/lib/components/breadcrumb-navigation/breadcrumb.service.d.ts +3 -0
  266. package/lib/components/breadcrumb-navigation/breadcrumb.service.d.ts.map +1 -1
  267. package/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.d.ts +3 -3
  268. package/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.d.ts.map +1 -1
  269. package/lib/components/carbon-list/carbon-list.component.d.ts +37 -9
  270. package/lib/components/carbon-list/carbon-list.component.d.ts.map +1 -1
  271. package/lib/components/carbon-list/carbon-list.module.d.ts +10 -7
  272. package/lib/components/carbon-list/carbon-list.module.d.ts.map +1 -1
  273. package/lib/components/carbon-list/no-results/carbon-no-results.component.d.ts +13 -3
  274. package/lib/components/carbon-list/no-results/carbon-no-results.component.d.ts.map +1 -1
  275. package/lib/components/carbon-list/services/carbon-list-drag-and-drop.service.d.ts +40 -0
  276. package/lib/components/carbon-list/services/carbon-list-drag-and-drop.service.d.ts.map +1 -0
  277. package/lib/components/carbon-list/services/index.d.ts +2 -0
  278. package/lib/components/carbon-list/services/index.d.ts.map +1 -0
  279. package/lib/components/carbon-list/tags-modal/tags-modal.component.d.ts +14 -0
  280. package/lib/components/carbon-list/tags-modal/tags-modal.component.d.ts.map +1 -0
  281. package/lib/components/card/card.component.d.ts +1 -4
  282. package/lib/components/card/card.component.d.ts.map +1 -1
  283. package/lib/components/confirmation-modal/confirmation-modal.component.d.ts +12 -4
  284. package/lib/components/confirmation-modal/confirmation-modal.component.d.ts.map +1 -1
  285. package/lib/components/data-list/data-list.component.d.ts +1 -4
  286. package/lib/components/data-list/data-list.component.d.ts.map +1 -1
  287. package/lib/components/date-picker/date-picker.component.d.ts +2 -1
  288. package/lib/components/date-picker/date-picker.component.d.ts.map +1 -1
  289. package/lib/components/editor/editor.component.d.ts +7 -2
  290. package/lib/components/editor/editor.component.d.ts.map +1 -1
  291. package/lib/components/editor/editor.module.d.ts +2 -1
  292. package/lib/components/editor/editor.module.d.ts.map +1 -1
  293. package/lib/components/editor/editor.service.d.ts +11 -2
  294. package/lib/components/editor/editor.service.d.ts.map +1 -1
  295. package/lib/components/form-io/form-io-builder.component.d.ts +1 -1
  296. package/lib/components/form-io/form-io-builder.component.d.ts.map +1 -1
  297. package/lib/components/form-io/form-io-current-user/form-io-current-user.component.d.ts +1 -1
  298. package/lib/components/form-io/form-io-current-user/form-io-current-user.component.d.ts.map +1 -1
  299. package/lib/components/form-io/form-io-iban/iban.component.d.ts +1 -1
  300. package/lib/components/form-io/form-io-iban/iban.component.d.ts.map +1 -1
  301. package/lib/components/form-io/form-io-uploader/form-io-uploader.component.d.ts +1 -1
  302. package/lib/components/form-io/form-io-uploader/form-io-uploader.component.d.ts.map +1 -1
  303. package/lib/components/form-io/form-io.component.d.ts +8 -5
  304. package/lib/components/form-io/form-io.component.d.ts.map +1 -1
  305. package/lib/components/form-io/form-io.module.d.ts +12 -14
  306. package/lib/components/form-io/form-io.module.d.ts.map +1 -1
  307. package/lib/components/input/input.component.d.ts +2 -1
  308. package/lib/components/input/input.component.d.ts.map +1 -1
  309. package/lib/components/input-label/input-label.component.d.ts +2 -1
  310. package/lib/components/input-label/input-label.component.d.ts.map +1 -1
  311. package/lib/components/left-sidebar/left-sidebar.component.d.ts.map +1 -1
  312. package/lib/components/list/list.module.d.ts +2 -1
  313. package/lib/components/list/list.module.d.ts.map +1 -1
  314. package/lib/components/multi-input/carbon-multi-input.component.d.ts +9 -3
  315. package/lib/components/multi-input/carbon-multi-input.component.d.ts.map +1 -1
  316. package/lib/components/page-actions/page-actions.component.d.ts +29 -0
  317. package/lib/components/page-actions/page-actions.component.d.ts.map +1 -0
  318. package/lib/components/page-header/page-header.component.d.ts +15 -4
  319. package/lib/components/page-header/page-header.component.d.ts.map +1 -1
  320. package/lib/components/page-header/page-header.module.d.ts +4 -1
  321. package/lib/components/page-header/page-header.module.d.ts.map +1 -1
  322. package/lib/components/page-subtitle/page-subtitle.component.d.ts +20 -0
  323. package/lib/components/page-subtitle/page-subtitle.component.d.ts.map +1 -0
  324. package/lib/components/page-title/page-title.component.d.ts +8 -9
  325. package/lib/components/page-title/page-title.component.d.ts.map +1 -1
  326. package/lib/components/page-title/page-title.module.d.ts +1 -1
  327. package/lib/components/pending-changes/pending-changes.component.d.ts +6 -1
  328. package/lib/components/pending-changes/pending-changes.component.d.ts.map +1 -1
  329. package/lib/components/right-sidebar/right-sidebar.component.d.ts +38 -18
  330. package/lib/components/right-sidebar/right-sidebar.component.d.ts.map +1 -1
  331. package/lib/components/right-sidebar/right-sidebar.module.d.ts +1 -1
  332. package/lib/components/right-sidebar/right-sidebar.module.d.ts.map +1 -1
  333. package/lib/components/search-fields/search-fields.component.d.ts +11 -8
  334. package/lib/components/search-fields/search-fields.component.d.ts.map +1 -1
  335. package/lib/components/search-fields/search-fields.module.d.ts +2 -2
  336. package/lib/components/search-fields/search-fields.module.d.ts.map +1 -1
  337. package/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.d.ts +2 -1
  338. package/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.d.ts.map +1 -1
  339. package/lib/components/select/select.component.d.ts +3 -1
  340. package/lib/components/select/select.component.d.ts.map +1 -1
  341. package/lib/components/status-selector/status-selector.component.d.ts +24 -0
  342. package/lib/components/status-selector/status-selector.component.d.ts.map +1 -0
  343. package/lib/components/stepper/stepper.module.d.ts +2 -1
  344. package/lib/components/stepper/stepper.module.d.ts.map +1 -1
  345. package/lib/components/timeline/timeline.module.d.ts +2 -1
  346. package/lib/components/timeline/timeline.module.d.ts.map +1 -1
  347. package/lib/components/topbar/topbar.component.d.ts +17 -11
  348. package/lib/components/topbar/topbar.component.d.ts.map +1 -1
  349. package/lib/components/uploader/uploader.component.d.ts +3 -4
  350. package/lib/components/uploader/uploader.component.d.ts.map +1 -1
  351. package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts +6 -0
  352. package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts.map +1 -1
  353. package/lib/components/view-content/type-converters/currencyTypeConverter.d.ts +7 -0
  354. package/lib/components/view-content/type-converters/currencyTypeConverter.d.ts.map +1 -0
  355. package/lib/components/view-content/type-converters/dateTimeTypeConverter.d.ts +6 -0
  356. package/lib/components/view-content/type-converters/dateTimeTypeConverter.d.ts.map +1 -0
  357. package/lib/components/view-content/type-converters/dateTypeConverter.d.ts.map +1 -1
  358. package/lib/components/view-content/type-converters/enumTypeConverter.d.ts.map +1 -1
  359. package/lib/components/view-content/type-converters/numberTypeConverter.d.ts +7 -0
  360. package/lib/components/view-content/type-converters/numberTypeConverter.d.ts.map +1 -0
  361. package/lib/components/view-content/type-converters/percentTypeConverter.d.ts +7 -0
  362. package/lib/components/view-content/type-converters/percentTypeConverter.d.ts.map +1 -0
  363. package/lib/components/view-content/type-converters/relatedFilesTypeConverter.d.ts.map +1 -1
  364. package/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.d.ts.map +1 -1
  365. package/lib/components/view-content/type-converters/stringTypeConverter.d.ts.map +1 -1
  366. package/lib/components/view-content/type-converters/type-converters.model.d.ts +13 -1
  367. package/lib/components/view-content/type-converters/type-converters.model.d.ts.map +1 -1
  368. package/lib/components/view-content/view-content.module.d.ts +8 -0
  369. package/lib/components/view-content/view-content.module.d.ts.map +1 -0
  370. package/lib/components/view-content/view-content.service.d.ts +1 -5
  371. package/lib/components/view-content/view-content.service.d.ts.map +1 -1
  372. package/lib/constants/carbon.constants.d.ts +1 -0
  373. package/lib/constants/carbon.constants.d.ts.map +1 -1
  374. package/lib/constants/index.d.ts +1 -0
  375. package/lib/constants/index.d.ts.map +1 -1
  376. package/lib/constants/status.constants.d.ts +3 -0
  377. package/lib/constants/status.constants.d.ts.map +1 -0
  378. package/lib/constants/view-type-converter.constants.d.ts.map +1 -1
  379. package/lib/directives/fit-page/fit-page-directive.module.d.ts +9 -0
  380. package/lib/directives/fit-page/fit-page-directive.module.d.ts.map +1 -0
  381. package/lib/directives/fit-page/fit-page.directive.d.ts +17 -0
  382. package/lib/directives/fit-page/fit-page.directive.d.ts.map +1 -0
  383. package/lib/directives/render-in-page-header/render-in-page-header.directive.d.ts +9 -4
  384. package/lib/directives/render-in-page-header/render-in-page-header.directive.d.ts.map +1 -1
  385. package/lib/directives/render-page-header/render-page-header-directive.module.d.ts +9 -0
  386. package/lib/directives/render-page-header/render-page-header-directive.module.d.ts.map +1 -0
  387. package/lib/directives/render-page-header/render-page-header.directive.d.ts +14 -0
  388. package/lib/directives/render-page-header/render-page-header.directive.d.ts.map +1 -0
  389. package/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.d.ts +9 -0
  390. package/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.d.ts.map +1 -0
  391. package/lib/directives/render-page-subtitle/render-page-subtitle.directive.d.ts +15 -0
  392. package/lib/directives/render-page-subtitle/render-page-subtitle.directive.d.ts.map +1 -0
  393. package/lib/models/carbon-list.model.d.ts +22 -2
  394. package/lib/models/carbon-list.model.d.ts.map +1 -1
  395. package/lib/models/carbon-tag.model.d.ts +8 -0
  396. package/lib/models/carbon-tag.model.d.ts.map +1 -0
  397. package/lib/models/carbon-theme.model.d.ts +8 -0
  398. package/lib/models/carbon-theme.model.d.ts.map +1 -0
  399. package/lib/models/choice-field.model.d.ts +15 -0
  400. package/lib/models/choice-field.model.d.ts.map +1 -0
  401. package/lib/models/choicefield-value.model.d.ts +21 -0
  402. package/lib/models/choicefield-value.model.d.ts.map +1 -0
  403. package/lib/models/editor.model.d.ts +11 -4
  404. package/lib/models/editor.model.d.ts.map +1 -1
  405. package/lib/models/form-io.model.d.ts +1 -1
  406. package/lib/models/form-io.model.d.ts.map +1 -1
  407. package/lib/models/index.d.ts +9 -2
  408. package/lib/models/index.d.ts.map +1 -1
  409. package/lib/models/modal.model.d.ts +2 -1
  410. package/lib/models/modal.model.d.ts.map +1 -1
  411. package/lib/models/multi-input.model.d.ts +8 -4
  412. package/lib/models/multi-input.model.d.ts.map +1 -1
  413. package/lib/models/right-sidebar.model.d.ts +6 -0
  414. package/lib/models/right-sidebar.model.d.ts.map +1 -0
  415. package/lib/models/theme.model.d.ts +11 -0
  416. package/lib/models/theme.model.d.ts.map +1 -0
  417. package/lib/models/topbar.model.d.ts +6 -0
  418. package/lib/models/topbar.model.d.ts.map +1 -0
  419. package/lib/modules/custom-formio-component/create-custom-component.d.ts +239 -0
  420. package/lib/modules/custom-formio-component/create-custom-component.d.ts.map +1 -0
  421. package/lib/modules/custom-formio-component/custom-tags.service.d.ts +8 -0
  422. package/lib/modules/custom-formio-component/custom-tags.service.d.ts.map +1 -0
  423. package/lib/modules/custom-formio-component/elements.common.d.ts +31 -0
  424. package/lib/modules/custom-formio-component/elements.common.d.ts.map +1 -0
  425. package/lib/modules/custom-formio-component/index.d.ts +5 -0
  426. package/lib/modules/custom-formio-component/index.d.ts.map +1 -0
  427. package/lib/modules/custom-formio-component/register-custom-component.d.ts +7 -0
  428. package/lib/modules/custom-formio-component/register-custom-component.d.ts.map +1 -0
  429. package/lib/modules/index.d.ts +2 -0
  430. package/lib/modules/index.d.ts.map +1 -0
  431. package/lib/services/cds-theme.service.d.ts +20 -0
  432. package/lib/services/cds-theme.service.d.ts.map +1 -0
  433. package/lib/services/choice-field.service.d.ts +27 -0
  434. package/lib/services/choice-field.service.d.ts.map +1 -0
  435. package/lib/services/index.d.ts +6 -0
  436. package/lib/services/index.d.ts.map +1 -1
  437. package/lib/services/key-generator.service.d.ts +8 -0
  438. package/lib/services/key-generator.service.d.ts.map +1 -0
  439. package/lib/services/key-state.service.d.ts +12 -0
  440. package/lib/services/key-state.service.d.ts.map +1 -0
  441. package/lib/services/page-header.service.d.ts +30 -0
  442. package/lib/services/page-header.service.d.ts.map +1 -0
  443. package/lib/services/page-subtitle.service.d.ts +14 -0
  444. package/lib/services/page-subtitle.service.d.ts.map +1 -0
  445. package/lib/{components/page-title → services}/page-title.service.d.ts +3 -0
  446. package/lib/services/page-title.service.d.ts.map +1 -0
  447. package/package.json +24 -19
  448. package/public_api.d.ts +11 -5
  449. package/public_api.d.ts.map +1 -1
  450. package/assets/css/carbon-beagle-compatibility.scss +0 -188
  451. package/esm2022/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.mjs +0 -223
  452. package/esm2022/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.module.mjs +0 -74
  453. package/esm2022/lib/components/form-io/documenten-api-uploader/documenten-api-uploader-edit-form.mjs +0 -305
  454. package/esm2022/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.component.mjs +0 -147
  455. package/esm2022/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.formio.mjs +0 -46
  456. package/esm2022/lib/components/page-title/page-title.service.mjs +0 -117
  457. package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts +0 -76
  458. package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts.map +0 -1
  459. package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.module.d.ts +0 -18
  460. package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.module.d.ts.map +0 -1
  461. package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader-edit-form.d.ts +0 -105
  462. package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader-edit-form.d.ts.map +0 -1
  463. package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.component.d.ts +0 -61
  464. package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.component.d.ts.map +0 -1
  465. package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.formio.d.ts +0 -4
  466. package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.formio.d.ts.map +0 -1
  467. package/lib/components/page-title/page-title.service.d.ts.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2023 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2024 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -124,16 +124,16 @@ export class DropzoneComponent {
124
124
  element.remove();
125
125
  });
126
126
  }
127
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropzoneComponent, deps: [{ token: i1.TranslateService }, { token: i0.Renderer2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
128
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DropzoneComponent, selector: "valtimo-dropzone", inputs: { title: "title", hideTitle: "hideTitle", subtitle: "subtitle", externalError$: "externalError$", maxFileSize: "maxFileSize", showMaxFileSize: "showMaxFileSize", acceptedFiles: "acceptedFiles", clear$: "clear$", disabled: "disabled", hideFilePreview: "hideFilePreview", uploading: "uploading", camera: "camera", maxFiles: "maxFiles" }, outputs: { fileSelected: "fileSelected" }, viewQueries: [{ propertyName: "dropzoneRef", first: true, predicate: ["dropzone"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<form #dropzone [ngClass]=\"{disabled: disabled || uploading}\" class=\"dropzone dz-clickable\">\n <div class=\"dz-message\">\n <div class=\"icon large-icon\"><span class=\"mdi mdi-cloud-upload\"></span></div>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n <ng-container *ngIf=\"uploading\">\n <ng-container *ngTemplateOutlet=\"progressBar\"></ng-container>\n </ng-container>\n <div class=\"dropzone-mobile-trigger needsclick\"></div>\n </div>\n <button\n (click)=\"showCamera()\"\n *ngIf=\"camera\"\n type=\"button\"\n class=\"btn btn-primary px-3 webcam-button\"\n >\n <i class=\"icon mdi mdi-camera\" aria-hidden=\"true\"></i>\n </button>\n <ng-container *ngIf=\"showingCamera$ | async\">\n <ng-container *ngTemplateOutlet=\"webcam\"></ng-container>\n </ng-container>\n</form>\n\n<ng-template #body>\n <h2 *ngIf=\"!hideTitle\" class=\"mb-4 mt-2\">{{ title || ('dropzone.drop' | translate) }}</h2>\n <span *ngIf=\"subtitle\" class=\"note mb-3\">{{ subtitle }}</span>\n <span *ngIf=\"showMaxFileSize\" class=\"note mb-3 small-font\"\n >{{ 'dropzone.maxFileSize' | translate }}<b>{{ maxFileSize }}mb</b></span\n >\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\n</ng-template>\n\n<ng-template #preview>\n <ng-container\n *ngIf=\"{\n errorMessage: errorMessage$ | async,\n externalError: externalError$ | async,\n file: file$ | async\n } as obs\"\n >\n <ng-container *ngIf=\"obs.externalError || obs.errorMessage\">\n <div class=\"alert alert-danger mt-2 mb-0\">\n <div class=\"message\">\n {{ obs.externalError || obs.errorMessage }}\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!hideFilePreview && obs.file && !obs.externalError && !obs.errorMessage\">\n <div class=\"file\">\n <i class=\"icon mdi mdi-file-text mr-2\"></i>\n <span class=\"note\">{{ obs.file.name }}</span>\n <span class=\"note file-size\">- {{ obs.file.size | filesize: 2 }}</span>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #progressBar>\n <div class=\"progress-bar-container\">\n <valtimo-progress-bar></valtimo-progress-bar>\n </div>\n</ng-template>\n\n<ng-template #webcam>\n <valtimo-webcam (imageSaved)=\"webcamImageSaved($event)\"></valtimo-webcam>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */form.dropzone{padding:30px 20px}form.dropzone h2{text-align:center;font-size:1.69rem}form.dropzone.disabled{opacity:.7;pointer-events:none;cursor:default}form.dropzone.preview{padding:15px 20px;border:none}.dz-message{display:flex;flex-direction:column;align-items:center}.dropzone-mobile-trigger{cursor:pointer}.alert-light{display:flex;align-items:center}form.dropzone .mdi{background-color:transparent;border-radius:0;display:inline-block;height:auto;width:auto;margin-bottom:0;padding:0}form.dropzone .message{padding:1.385rem 2.1542rem}.file{font-size:1.5rem;display:flex;flex-direction:row;align-items:center}.small-font{font-size:1rem;color:#959595}.file-size{margin-left:5px}.progress-bar-container{height:auto;width:100%;position:absolute;bottom:0}.webcam-button{position:absolute;top:10px;right:10px}.large-icon,.large-icon .mdi{line-height:60px;font-size:60px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.ProgressBarComponent, selector: "valtimo-progress-bar" }, { kind: "component", type: i4.WebcamComponent, selector: "valtimo-webcam", outputs: ["imageSaved"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i5.FileSizePipe, name: "filesize" }] }); }
127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropzoneComponent, deps: [{ token: i1.TranslateService }, { token: i0.Renderer2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
128
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: DropzoneComponent, selector: "valtimo-dropzone", inputs: { title: "title", hideTitle: "hideTitle", subtitle: "subtitle", externalError$: "externalError$", maxFileSize: "maxFileSize", showMaxFileSize: "showMaxFileSize", acceptedFiles: "acceptedFiles", clear$: "clear$", disabled: "disabled", hideFilePreview: "hideFilePreview", uploading: "uploading", camera: "camera", maxFiles: "maxFiles" }, outputs: { fileSelected: "fileSelected" }, viewQueries: [{ propertyName: "dropzoneRef", first: true, predicate: ["dropzone"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<form #dropzone [ngClass]=\"{disabled: disabled || uploading}\" class=\"dropzone dz-clickable\">\n <div class=\"dz-message\">\n <div class=\"icon large-icon\"><span class=\"mdi mdi-cloud-upload\"></span></div>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n <ng-container *ngIf=\"uploading\">\n <ng-container *ngTemplateOutlet=\"progressBar\"></ng-container>\n </ng-container>\n <div class=\"dropzone-mobile-trigger needsclick\"></div>\n </div>\n <button\n (click)=\"showCamera()\"\n *ngIf=\"camera\"\n type=\"button\"\n class=\"btn btn-primary px-3 webcam-button\"\n >\n <i class=\"icon mdi mdi-camera\" aria-hidden=\"true\"></i>\n </button>\n <ng-container *ngIf=\"showingCamera$ | async\">\n <ng-container *ngTemplateOutlet=\"webcam\"></ng-container>\n </ng-container>\n</form>\n\n<ng-template #body>\n <h2 *ngIf=\"!hideTitle\" class=\"mb-4 mt-2\">{{ title || ('dropzone.drop' | translate) }}</h2>\n <span *ngIf=\"subtitle\" class=\"note mb-3\">{{ subtitle }}</span>\n <span *ngIf=\"showMaxFileSize\" class=\"note mb-3 small-font\"\n >{{ 'dropzone.maxFileSize' | translate }}<b>{{ maxFileSize }}mb</b></span\n >\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\n</ng-template>\n\n<ng-template #preview>\n <ng-container\n *ngIf=\"{\n errorMessage: errorMessage$ | async,\n externalError: externalError$ | async,\n file: file$ | async\n } as obs\"\n >\n <ng-container *ngIf=\"obs.externalError || obs.errorMessage\">\n <div class=\"alert alert-danger mt-2 mb-0\">\n <div class=\"message\">\n {{ obs.externalError || obs.errorMessage }}\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!hideFilePreview && obs.file && !obs.externalError && !obs.errorMessage\">\n <div class=\"file\">\n <i class=\"icon mdi mdi-file-text mr-2\"></i>\n <span class=\"note\">{{ obs.file.name }}</span>\n <span class=\"note file-size\">- {{ obs.file.size | filesize: 2 }}</span>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #progressBar>\n <div class=\"progress-bar-container\">\n <valtimo-progress-bar></valtimo-progress-bar>\n </div>\n</ng-template>\n\n<ng-template #webcam>\n <valtimo-webcam (imageSaved)=\"webcamImageSaved($event)\"></valtimo-webcam>\n</ng-template>\n", styles: ["form.dropzone{padding:30px 20px}form.dropzone h2{text-align:center;font-size:1.69rem}form.dropzone.disabled{opacity:.7;pointer-events:none;cursor:default}form.dropzone.preview{padding:15px 20px;border:none}.dz-message{display:flex;flex-direction:column;align-items:center}.dropzone-mobile-trigger{cursor:pointer}.alert-light{display:flex;align-items:center}form.dropzone .mdi{background-color:transparent;border-radius:0;display:inline-block;height:auto;width:auto;margin-bottom:0;padding:0}form.dropzone .message{padding:1.385rem 2.1542rem}.file{font-size:1.5rem;display:flex;flex-direction:row;align-items:center}.small-font{font-size:1rem;color:#959595}.file-size{margin-left:5px}.progress-bar-container{height:auto;width:100%;position:absolute;bottom:0}.webcam-button{position:absolute;top:10px;right:10px}.large-icon,.large-icon .mdi{line-height:60px;font-size:60px}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.ProgressBarComponent, selector: "valtimo-progress-bar" }, { kind: "component", type: i4.WebcamComponent, selector: "valtimo-webcam", outputs: ["imageSaved"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i5.FileSizePipe, name: "filesize" }] }); }
129
129
  }
130
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropzoneComponent, decorators: [{
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropzoneComponent, decorators: [{
131
131
  type: Component,
132
- args: [{ selector: 'valtimo-dropzone', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<form #dropzone [ngClass]=\"{disabled: disabled || uploading}\" class=\"dropzone dz-clickable\">\n <div class=\"dz-message\">\n <div class=\"icon large-icon\"><span class=\"mdi mdi-cloud-upload\"></span></div>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n <ng-container *ngIf=\"uploading\">\n <ng-container *ngTemplateOutlet=\"progressBar\"></ng-container>\n </ng-container>\n <div class=\"dropzone-mobile-trigger needsclick\"></div>\n </div>\n <button\n (click)=\"showCamera()\"\n *ngIf=\"camera\"\n type=\"button\"\n class=\"btn btn-primary px-3 webcam-button\"\n >\n <i class=\"icon mdi mdi-camera\" aria-hidden=\"true\"></i>\n </button>\n <ng-container *ngIf=\"showingCamera$ | async\">\n <ng-container *ngTemplateOutlet=\"webcam\"></ng-container>\n </ng-container>\n</form>\n\n<ng-template #body>\n <h2 *ngIf=\"!hideTitle\" class=\"mb-4 mt-2\">{{ title || ('dropzone.drop' | translate) }}</h2>\n <span *ngIf=\"subtitle\" class=\"note mb-3\">{{ subtitle }}</span>\n <span *ngIf=\"showMaxFileSize\" class=\"note mb-3 small-font\"\n >{{ 'dropzone.maxFileSize' | translate }}<b>{{ maxFileSize }}mb</b></span\n >\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\n</ng-template>\n\n<ng-template #preview>\n <ng-container\n *ngIf=\"{\n errorMessage: errorMessage$ | async,\n externalError: externalError$ | async,\n file: file$ | async\n } as obs\"\n >\n <ng-container *ngIf=\"obs.externalError || obs.errorMessage\">\n <div class=\"alert alert-danger mt-2 mb-0\">\n <div class=\"message\">\n {{ obs.externalError || obs.errorMessage }}\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!hideFilePreview && obs.file && !obs.externalError && !obs.errorMessage\">\n <div class=\"file\">\n <i class=\"icon mdi mdi-file-text mr-2\"></i>\n <span class=\"note\">{{ obs.file.name }}</span>\n <span class=\"note file-size\">- {{ obs.file.size | filesize: 2 }}</span>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #progressBar>\n <div class=\"progress-bar-container\">\n <valtimo-progress-bar></valtimo-progress-bar>\n </div>\n</ng-template>\n\n<ng-template #webcam>\n <valtimo-webcam (imageSaved)=\"webcamImageSaved($event)\"></valtimo-webcam>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */form.dropzone{padding:30px 20px}form.dropzone h2{text-align:center;font-size:1.69rem}form.dropzone.disabled{opacity:.7;pointer-events:none;cursor:default}form.dropzone.preview{padding:15px 20px;border:none}.dz-message{display:flex;flex-direction:column;align-items:center}.dropzone-mobile-trigger{cursor:pointer}.alert-light{display:flex;align-items:center}form.dropzone .mdi{background-color:transparent;border-radius:0;display:inline-block;height:auto;width:auto;margin-bottom:0;padding:0}form.dropzone .message{padding:1.385rem 2.1542rem}.file{font-size:1.5rem;display:flex;flex-direction:row;align-items:center}.small-font{font-size:1rem;color:#959595}.file-size{margin-left:5px}.progress-bar-container{height:auto;width:100%;position:absolute;bottom:0}.webcam-button{position:absolute;top:10px;right:10px}.large-icon,.large-icon .mdi{line-height:60px;font-size:60px}\n"] }]
133
- }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i0.Renderer2 }, { type: Document, decorators: [{
132
+ args: [{ selector: 'valtimo-dropzone', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<form #dropzone [ngClass]=\"{disabled: disabled || uploading}\" class=\"dropzone dz-clickable\">\n <div class=\"dz-message\">\n <div class=\"icon large-icon\"><span class=\"mdi mdi-cloud-upload\"></span></div>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n <ng-container *ngIf=\"uploading\">\n <ng-container *ngTemplateOutlet=\"progressBar\"></ng-container>\n </ng-container>\n <div class=\"dropzone-mobile-trigger needsclick\"></div>\n </div>\n <button\n (click)=\"showCamera()\"\n *ngIf=\"camera\"\n type=\"button\"\n class=\"btn btn-primary px-3 webcam-button\"\n >\n <i class=\"icon mdi mdi-camera\" aria-hidden=\"true\"></i>\n </button>\n <ng-container *ngIf=\"showingCamera$ | async\">\n <ng-container *ngTemplateOutlet=\"webcam\"></ng-container>\n </ng-container>\n</form>\n\n<ng-template #body>\n <h2 *ngIf=\"!hideTitle\" class=\"mb-4 mt-2\">{{ title || ('dropzone.drop' | translate) }}</h2>\n <span *ngIf=\"subtitle\" class=\"note mb-3\">{{ subtitle }}</span>\n <span *ngIf=\"showMaxFileSize\" class=\"note mb-3 small-font\"\n >{{ 'dropzone.maxFileSize' | translate }}<b>{{ maxFileSize }}mb</b></span\n >\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\n</ng-template>\n\n<ng-template #preview>\n <ng-container\n *ngIf=\"{\n errorMessage: errorMessage$ | async,\n externalError: externalError$ | async,\n file: file$ | async\n } as obs\"\n >\n <ng-container *ngIf=\"obs.externalError || obs.errorMessage\">\n <div class=\"alert alert-danger mt-2 mb-0\">\n <div class=\"message\">\n {{ obs.externalError || obs.errorMessage }}\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!hideFilePreview && obs.file && !obs.externalError && !obs.errorMessage\">\n <div class=\"file\">\n <i class=\"icon mdi mdi-file-text mr-2\"></i>\n <span class=\"note\">{{ obs.file.name }}</span>\n <span class=\"note file-size\">- {{ obs.file.size | filesize: 2 }}</span>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #progressBar>\n <div class=\"progress-bar-container\">\n <valtimo-progress-bar></valtimo-progress-bar>\n </div>\n</ng-template>\n\n<ng-template #webcam>\n <valtimo-webcam (imageSaved)=\"webcamImageSaved($event)\"></valtimo-webcam>\n</ng-template>\n", styles: ["form.dropzone{padding:30px 20px}form.dropzone h2{text-align:center;font-size:1.69rem}form.dropzone.disabled{opacity:.7;pointer-events:none;cursor:default}form.dropzone.preview{padding:15px 20px;border:none}.dz-message{display:flex;flex-direction:column;align-items:center}.dropzone-mobile-trigger{cursor:pointer}.alert-light{display:flex;align-items:center}form.dropzone .mdi{background-color:transparent;border-radius:0;display:inline-block;height:auto;width:auto;margin-bottom:0;padding:0}form.dropzone .message{padding:1.385rem 2.1542rem}.file{font-size:1.5rem;display:flex;flex-direction:row;align-items:center}.small-font{font-size:1rem;color:#959595}.file-size{margin-left:5px}.progress-bar-container{height:auto;width:100%;position:absolute;bottom:0}.webcam-button{position:absolute;top:10px;right:10px}.large-icon,.large-icon .mdi{line-height:60px;font-size:60px}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
133
+ }], ctorParameters: () => [{ type: i1.TranslateService }, { type: i0.Renderer2 }, { type: Document, decorators: [{
134
134
  type: Inject,
135
135
  args: [DOCUMENT]
136
- }] }]; }, propDecorators: { dropzoneRef: [{
136
+ }] }], propDecorators: { dropzoneRef: [{
137
137
  type: ViewChild,
138
138
  args: ['dropzone']
139
139
  }], title: [{
@@ -165,4 +165,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
165
165
  }], fileSelected: [{
166
166
  type: Output
167
167
  }] } });
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kcm9wem9uZS9kcm9wem9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Ryb3B6b25lL2Ryb3B6b25lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUM7QUFDaEMsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsT0FBTyxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQU9uQyxNQUFNLE9BQU8saUJBQWlCO0lBb0Q1QixZQUNtQixnQkFBa0MsRUFDbEMsUUFBbUIsRUFDRCxRQUFrQjtRQUZwQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBakQ5QyxtQkFBYyxHQUE0QixJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUMxRSxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNoQixvQkFBZSxHQUFHLElBQUksQ0FBQztRQUN2QixrQkFBYSxHQUFHLE9BQU8sQ0FBQztRQUN4QixXQUFNLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7UUFJckMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdkLGlCQUFZLEdBQXVCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDdkQsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFPLFNBQVMsQ0FBQyxDQUFDO1FBQzdDLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFHN0MsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRXpDLHlCQUFvQixHQUE0QjtZQUMvRCxNQUFNLEVBQUUsU0FBUztZQUNqQixTQUFTLEVBQUUsV0FBVztTQUN2QixDQUFDO1FBRU8sa0JBQWEsR0FBdUIsYUFBYSxDQUFDO1lBQ3pELElBQUksQ0FBQyxNQUFNO1lBQ1gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQztZQUN0RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLHVCQUF1QixDQUFDO1lBQ3JELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsMEJBQTBCLENBQUM7U0FDekQsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUU7WUFDbEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1lBRTFDLElBQUksYUFBYSxFQUFFO2dCQUNqQixJQUFJLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUMxQyxPQUFPLE1BQU0sQ0FBQztpQkFDZjtxQkFBTSxJQUFJLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO29CQUNwRCxPQUFPLFNBQVMsQ0FBQztpQkFDbEI7Z0JBRUQsT0FBTyxPQUFPLENBQUM7YUFDaEI7WUFFRCxPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUM7SUFNQyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQVc7UUFDMUIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JCO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRTtZQUMzRCxHQUFHLEVBQUUsR0FBRztZQUNSLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixTQUFTLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhO1lBQ3pDLGdCQUFnQixFQUFFLEtBQUs7WUFDdkIscUJBQXFCLEVBQUUsS0FBSztZQUM1QixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsZUFBZSxFQUFFLDhCQUE4QjtZQUMvQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFDLENBQUM7WUFDL0MsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckIsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQzFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVPLFVBQVU7UUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVPLE9BQU8sQ0FBQyxJQUFVO1FBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUUvRSxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMzQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQXBJVSxpQkFBaUIsMkVBdURsQixRQUFRO21HQXZEUCxpQkFBaUIsb2lCQ3hDOUIsKzlGQWtGQTs7NEZEMUNhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQTJEekIsTUFBTTsyQkFBQyxRQUFROzRDQXRESyxXQUFXO3NCQUFqQyxTQUFTO3VCQUFDLFVBQVU7Z0JBRVosS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IERyb3B6b25lIGZyb20gJ2Ryb3B6b25lJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kcm9wem9uZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wem9uZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Ryb3B6b25lLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERyb3B6b25lQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdkcm9wem9uZScpIGRyb3B6b25lUmVmOiBFbGVtZW50UmVmPGFueT47XG5cbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgaGlkZVRpdGxlOiBib29sZWFuO1xuICBASW5wdXQoKSBzdWJ0aXRsZTogc3RyaW5nO1xuICBASW5wdXQoKSBleHRlcm5hbEVycm9yJDogQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBASW5wdXQoKSBtYXhGaWxlU2l6ZSA9IDU7XG4gIEBJbnB1dCgpIHNob3dNYXhGaWxlU2l6ZSA9IHRydWU7XG4gIEBJbnB1dCgpIGFjY2VwdGVkRmlsZXMgPSAnLmpzb24nO1xuICBASW5wdXQoKSBjbGVhciQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBoaWRlRmlsZVByZXZpZXc6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHVwbG9hZGluZzogYm9vbGVhbjtcbiAgQElucHV0KCkgY2FtZXJhID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1heEZpbGVzITogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKSBmaWxlU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxGaWxlPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcmVhZG9ubHkgZmlsZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZpbGU+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IHNob3dpbmdDYW1lcmEkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgY2xlYXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBkcm9wem9uZTogRHJvcHpvbmU7XG4gIHByaXZhdGUgcmVhZG9ubHkgZXJyb3IkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGVycm9yTWVzc2FnZXNTdHJpbmdzOiB7W2tleTogc3RyaW5nXTogc3RyaW5nfSA9IHtcbiAgICB0b29CaWc6ICd0b28gYmlnJyxcbiAgICB3cm9uZ1R5cGU6ICd0aGlzIHR5cGUnLFxuICB9O1xuXG4gIHJlYWRvbmx5IGVycm9yTWVzc2FnZSQ6IE9ic2VydmFibGU8c3RyaW5nPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuZXJyb3IkLFxuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5zdHJlYW0oJ2Ryb3B6b25lLmVycm9yLmdlbmVyaWMnKSxcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdkcm9wem9uZS5lcnJvci50b29CaWcnKSxcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdkcm9wem9uZS5lcnJvci53cm9uZ1R5cGUnKSxcbiAgXSkucGlwZShcbiAgICBtYXAoKFtkcm9wem9uZUVycm9yLCBnZW5lcmljLCB0b29CaWcsIHdyb25nVHlwZV0pID0+IHtcbiAgICAgIGNvbnN0IHN0cmluZ3MgPSB0aGlzLmVycm9yTWVzc2FnZXNTdHJpbmdzO1xuXG4gICAgICBpZiAoZHJvcHpvbmVFcnJvcikge1xuICAgICAgICBpZiAoZHJvcHpvbmVFcnJvci5pbmNsdWRlcyhzdHJpbmdzLnRvb0JpZykpIHtcbiAgICAgICAgICByZXR1cm4gdG9vQmlnO1xuICAgICAgICB9IGVsc2UgaWYgKGRyb3B6b25lRXJyb3IuaW5jbHVkZXMoc3RyaW5ncy53cm9uZ1R5cGUpKSB7XG4gICAgICAgICAgcmV0dXJuIHdyb25nVHlwZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBnZW5lcmljO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gJyc7XG4gICAgfSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQ6IERvY3VtZW50XG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyU3Vic2NyaXB0aW9uID0gdGhpcy5jbGVhciQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xlYXJGaWxlKCk7XG4gICAgICB0aGlzLmNsZWFyRXJyb3IoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmluaXREcm9wem9uZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZGVzdHJveUhpZGRlbklucHV0cygpO1xuICB9XG5cbiAgc2hvd0NhbWVyYSgpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dpbmdDYW1lcmEkLm5leHQodHJ1ZSk7XG4gIH1cblxuICB3ZWJjYW1JbWFnZVNhdmVkKGltYWdlOiBGaWxlKTogdm9pZCB7XG4gICAgaWYgKGltYWdlKSB7XG4gICAgICB0aGlzLnNldEZpbGUoaW1hZ2UpO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd2luZ0NhbWVyYSQubmV4dChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIGluaXREcm9wem9uZSgpOiB2b2lkIHtcbiAgICB0aGlzLmRyb3B6b25lID0gbmV3IERyb3B6b25lKHRoaXMuZHJvcHpvbmVSZWYubmF0aXZlRWxlbWVudCwge1xuICAgICAgdXJsOiAnLycsXG4gICAgICBtYXhGaWxlc2l6ZTogdGhpcy5tYXhGaWxlU2l6ZSxcbiAgICAgIGNsaWNrYWJsZTogdGhpcy5kcm9wem9uZVJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgYXV0b1Byb2Nlc3NRdWV1ZTogZmFsc2UsXG4gICAgICBjcmVhdGVJbWFnZVRodW1ibmFpbHM6IGZhbHNlLFxuICAgICAgYWNjZXB0ZWRGaWxlczogdGhpcy5hY2NlcHRlZEZpbGVzLFxuICAgICAgcHJldmlld1RlbXBsYXRlOiBgPHAgc3R5bGU9J2Rpc3BsYXk6bm9uZSc+PC9wPmAsXG4gICAgICAuLi4odGhpcy5tYXhGaWxlcyAmJiB7bWF4RmlsZXM6IHRoaXMubWF4RmlsZXN9KSxcbiAgICAgIGFjY2VwdDogZmlsZSA9PiB7XG4gICAgICAgIHRoaXMuZHJvcHpvbmUucmVtb3ZlQWxsRmlsZXMoKTtcbiAgICAgICAgdGhpcy5zZXRGaWxlKGZpbGUpO1xuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMuc2V0RHJvcHpvbmVFdmVudHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RHJvcHpvbmVFdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5kcm9wem9uZS5vbignZXJyb3InLCAoZmlsZSwgbWVzc2FnZSkgPT4ge1xuICAgICAgdGhpcy5jbGVhckZpbGUoKTtcbiAgICAgIHRoaXMuZXJyb3IkLm5leHQobWVzc2FnZS50b1N0cmluZygpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXJGaWxlKCk6IHZvaWQge1xuICAgIHRoaXMuZmlsZSQubmV4dCh1bmRlZmluZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckVycm9yKCk6IHZvaWQge1xuICAgIHRoaXMuZXJyb3IkLm5leHQoJycpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRGaWxlKGZpbGU6IEZpbGUpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGUkLm5leHQoZmlsZSk7XG4gICAgdGhpcy5jbGVhckVycm9yKCk7XG4gICAgdGhpcy5maWxlU2VsZWN0ZWQuZW1pdChmaWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUhpZGRlbklucHV0cygpOiB2b2lkIHtcbiAgICBjb25zdCBoaWRkZW5FbGVtZW50cyA9IHRoaXMuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnZHotaGlkZGVuLWlucHV0Jyk7XG5cbiAgICBBcnJheS5mcm9tKGhpZGRlbkVsZW1lbnRzKS5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgZWxlbWVudC5yZW1vdmUoKTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48Zm9ybSAjZHJvcHpvbmUgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBkaXNhYmxlZCB8fCB1cGxvYWRpbmd9XCIgY2xhc3M9XCJkcm9wem9uZSBkei1jbGlja2FibGVcIj5cbiAgPGRpdiBjbGFzcz1cImR6LW1lc3NhZ2VcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaWNvbiBsYXJnZS1pY29uXCI+PHNwYW4gY2xhc3M9XCJtZGkgbWRpLWNsb3VkLXVwbG9hZFwiPjwvc3Bhbj48L2Rpdj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYm9keVwiPjwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1cGxvYWRpbmdcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJwcm9ncmVzc0JhclwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxkaXYgY2xhc3M9XCJkcm9wem9uZS1tb2JpbGUtdHJpZ2dlciBuZWVkc2NsaWNrXCI+PC9kaXY+XG4gIDwvZGl2PlxuICA8YnV0dG9uXG4gICAgKGNsaWNrKT1cInNob3dDYW1lcmEoKVwiXG4gICAgKm5nSWY9XCJjYW1lcmFcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHB4LTMgd2ViY2FtLWJ1dHRvblwiXG4gID5cbiAgICA8aSBjbGFzcz1cImljb24gbWRpIG1kaS1jYW1lcmFcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gIDwvYnV0dG9uPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd2luZ0NhbWVyYSQgfCBhc3luY1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ3ZWJjYW1cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Zvcm0+XG5cbjxuZy10ZW1wbGF0ZSAjYm9keT5cbiAgPGgyICpuZ0lmPVwiIWhpZGVUaXRsZVwiIGNsYXNzPVwibWItNCBtdC0yXCI+e3sgdGl0bGUgfHwgKCdkcm9wem9uZS5kcm9wJyB8IHRyYW5zbGF0ZSkgfX08L2gyPlxuICA8c3BhbiAqbmdJZj1cInN1YnRpdGxlXCIgY2xhc3M9XCJub3RlIG1iLTNcIj57eyBzdWJ0aXRsZSB9fTwvc3Bhbj5cbiAgPHNwYW4gKm5nSWY9XCJzaG93TWF4RmlsZVNpemVcIiBjbGFzcz1cIm5vdGUgbWItMyBzbWFsbC1mb250XCJcbiAgICA+e3sgJ2Ryb3B6b25lLm1heEZpbGVTaXplJyB8IHRyYW5zbGF0ZSB9fTxiPnt7IG1heEZpbGVTaXplIH19bWI8L2I+PC9zcGFuXG4gID5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByZXZpZXdcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcHJldmlldz5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwie1xuICAgICAgZXJyb3JNZXNzYWdlOiBlcnJvck1lc3NhZ2UkIHwgYXN5bmMsXG4gICAgICBleHRlcm5hbEVycm9yOiBleHRlcm5hbEVycm9yJCB8IGFzeW5jLFxuICAgICAgZmlsZTogZmlsZSQgfCBhc3luY1xuICAgIH0gYXMgb2JzXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvYnMuZXh0ZXJuYWxFcnJvciB8fCBvYnMuZXJyb3JNZXNzYWdlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyIG10LTIgbWItMFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiPlxuICAgICAgICAgIHt7IG9icy5leHRlcm5hbEVycm9yIHx8IG9icy5lcnJvck1lc3NhZ2UgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaGlkZUZpbGVQcmV2aWV3ICYmIG9icy5maWxlICYmICFvYnMuZXh0ZXJuYWxFcnJvciAmJiAhb2JzLmVycm9yTWVzc2FnZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZpbGVcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29uIG1kaSBtZGktZmlsZS10ZXh0IG1yLTJcIj48L2k+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibm90ZVwiPnt7IG9icy5maWxlLm5hbWUgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibm90ZSBmaWxlLXNpemVcIj4tIHt7IG9icy5maWxlLnNpemUgfCBmaWxlc2l6ZTogMiB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcHJvZ3Jlc3NCYXI+XG4gIDxkaXYgY2xhc3M9XCJwcm9ncmVzcy1iYXItY29udGFpbmVyXCI+XG4gICAgPHZhbHRpbW8tcHJvZ3Jlc3MtYmFyPjwvdmFsdGltby1wcm9ncmVzcy1iYXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN3ZWJjYW0+XG4gIDx2YWx0aW1vLXdlYmNhbSAoaW1hZ2VTYXZlZCk9XCJ3ZWJjYW1JbWFnZVNhdmVkKCRldmVudClcIj48L3ZhbHRpbW8td2ViY2FtPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kcm9wem9uZS9kcm9wem9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Ryb3B6b25lL2Ryb3B6b25lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUM7QUFDaEMsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsT0FBTyxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQU9uQyxNQUFNLE9BQU8saUJBQWlCO0lBb0Q1QixZQUNtQixnQkFBa0MsRUFDbEMsUUFBbUIsRUFDRCxRQUFrQjtRQUZwQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBakQ5QyxtQkFBYyxHQUE0QixJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUMxRSxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNoQixvQkFBZSxHQUFHLElBQUksQ0FBQztRQUN2QixrQkFBYSxHQUFHLE9BQU8sQ0FBQztRQUN4QixXQUFNLEdBQWlCLElBQUksT0FB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QUUsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBcElVLGlCQUFpQiwyRUF1RGxCLFFBQVE7a0dBdkRQLGlCQUFpQixvaUJDeEM5QiwrOUZBa0ZBOzsyRkQxQ2EsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLGtCQUFrQjs7MEJBMkR6QixNQUFNOzJCQUFDLFFBQVE7eUNBdERLLFdBQVc7c0JBQWpDLFNBQVM7dUJBQUMsVUFBVTtnQkFFWixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgRHJvcHpvbmUgZnJvbSAnZHJvcHpvbmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWRyb3B6b25lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3B6b25lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZHJvcHpvbmUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJvcHpvbmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoJ2Ryb3B6b25lJykgZHJvcHpvbmVSZWY6IEVsZW1lbnRSZWY8YW55PjtcblxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuICBASW5wdXQoKSBoaWRlVGl0bGU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHN1YnRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGV4dGVybmFsRXJyb3IkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIEBJbnB1dCgpIG1heEZpbGVTaXplID0gNTtcbiAgQElucHV0KCkgc2hvd01heEZpbGVTaXplID0gdHJ1ZTtcbiAgQElucHV0KCkgYWNjZXB0ZWRGaWxlcyA9ICcuanNvbic7XG4gIEBJbnB1dCgpIGNsZWFyJDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGhpZGVGaWxlUHJldmlldzogYm9vbGVhbjtcbiAgQElucHV0KCkgdXBsb2FkaW5nOiBib29sZWFuO1xuICBASW5wdXQoKSBjYW1lcmEgPSBmYWxzZTtcbiAgQElucHV0KCkgbWF4RmlsZXMhOiBudW1iZXI7XG5cbiAgQE91dHB1dCgpIGZpbGVTZWxlY3RlZDogRXZlbnRFbWl0dGVyPEZpbGU+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICByZWFkb25seSBmaWxlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RmlsZT4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgc2hvd2luZ0NhbWVyYSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBjbGVhclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIGRyb3B6b25lOiBEcm9wem9uZTtcbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZXJyb3JNZXNzYWdlc1N0cmluZ3M6IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9ID0ge1xuICAgIHRvb0JpZzogJ3RvbyBiaWcnLFxuICAgIHdyb25nVHlwZTogJ3RoaXMgdHlwZScsXG4gIH07XG5cbiAgcmVhZG9ubHkgZXJyb3JNZXNzYWdlJDogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gY29tYmluZUxhdGVzdChbXG4gICAgdGhpcy5lcnJvciQsXG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnN0cmVhbSgnZHJvcHpvbmUuZXJyb3IuZ2VuZXJpYycpLFxuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5zdHJlYW0oJ2Ryb3B6b25lLmVycm9yLnRvb0JpZycpLFxuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5zdHJlYW0oJ2Ryb3B6b25lLmVycm9yLndyb25nVHlwZScpLFxuICBdKS5waXBlKFxuICAgIG1hcCgoW2Ryb3B6b25lRXJyb3IsIGdlbmVyaWMsIHRvb0JpZywgd3JvbmdUeXBlXSkgPT4ge1xuICAgICAgY29uc3Qgc3RyaW5ncyA9IHRoaXMuZXJyb3JNZXNzYWdlc1N0cmluZ3M7XG5cbiAgICAgIGlmIChkcm9wem9uZUVycm9yKSB7XG4gICAgICAgIGlmIChkcm9wem9uZUVycm9yLmluY2x1ZGVzKHN0cmluZ3MudG9vQmlnKSkge1xuICAgICAgICAgIHJldHVybiB0b29CaWc7XG4gICAgICAgIH0gZWxzZSBpZiAoZHJvcHpvbmVFcnJvci5pbmNsdWRlcyhzdHJpbmdzLndyb25nVHlwZSkpIHtcbiAgICAgICAgICByZXR1cm4gd3JvbmdUeXBlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGdlbmVyaWM7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAnJztcbiAgICB9KVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnRcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJTdWJzY3JpcHRpb24gPSB0aGlzLmNsZWFyJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jbGVhckZpbGUoKTtcbiAgICAgIHRoaXMuY2xlYXJFcnJvcigpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuaW5pdERyb3B6b25lKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5kZXN0cm95SGlkZGVuSW5wdXRzKCk7XG4gIH1cblxuICBzaG93Q2FtZXJhKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd2luZ0NhbWVyYSQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHdlYmNhbUltYWdlU2F2ZWQoaW1hZ2U6IEZpbGUpOiB2b2lkIHtcbiAgICBpZiAoaW1hZ2UpIHtcbiAgICAgIHRoaXMuc2V0RmlsZShpbWFnZSk7XG4gICAgfVxuXG4gICAgdGhpcy5zaG93aW5nQ2FtZXJhJC5uZXh0KGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdERyb3B6b25lKCk6IHZvaWQge1xuICAgIHRoaXMuZHJvcHpvbmUgPSBuZXcgRHJvcHpvbmUodGhpcy5kcm9wem9uZVJlZi5uYXRpdmVFbGVtZW50LCB7XG4gICAgICB1cmw6ICcvJyxcbiAgICAgIG1heEZpbGVzaXplOiB0aGlzLm1heEZpbGVTaXplLFxuICAgICAgY2xpY2thYmxlOiB0aGlzLmRyb3B6b25lUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICBhdXRvUHJvY2Vzc1F1ZXVlOiBmYWxzZSxcbiAgICAgIGNyZWF0ZUltYWdlVGh1bWJuYWlsczogZmFsc2UsXG4gICAgICBhY2NlcHRlZEZpbGVzOiB0aGlzLmFjY2VwdGVkRmlsZXMsXG4gICAgICBwcmV2aWV3VGVtcGxhdGU6IGA8cCBzdHlsZT0nZGlzcGxheTpub25lJz48L3A+YCxcbiAgICAgIC4uLih0aGlzLm1heEZpbGVzICYmIHttYXhGaWxlczogdGhpcy5tYXhGaWxlc30pLFxuICAgICAgYWNjZXB0OiBmaWxlID0+IHtcbiAgICAgICAgdGhpcy5kcm9wem9uZS5yZW1vdmVBbGxGaWxlcygpO1xuICAgICAgICB0aGlzLnNldEZpbGUoZmlsZSk7XG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXREcm9wem9uZUV2ZW50cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREcm9wem9uZUV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmRyb3B6b25lLm9uKCdlcnJvcicsIChmaWxlLCBtZXNzYWdlKSA9PiB7XG4gICAgICB0aGlzLmNsZWFyRmlsZSgpO1xuICAgICAgdGhpcy5lcnJvciQubmV4dChtZXNzYWdlLnRvU3RyaW5nKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckZpbGUoKTogdm9pZCB7XG4gICAgdGhpcy5maWxlJC5uZXh0KHVuZGVmaW5lZCk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyRXJyb3IoKTogdm9pZCB7XG4gICAgdGhpcy5lcnJvciQubmV4dCgnJyk7XG4gIH1cblxuICBwcml2YXRlIHNldEZpbGUoZmlsZTogRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuZmlsZSQubmV4dChmaWxlKTtcbiAgICB0aGlzLmNsZWFyRXJyb3IoKTtcbiAgICB0aGlzLmZpbGVTZWxlY3RlZC5lbWl0KGZpbGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95SGlkZGVuSW5wdXRzKCk6IHZvaWQge1xuICAgIGNvbnN0IGhpZGRlbkVsZW1lbnRzID0gdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdkei1oaWRkZW4taW5wdXQnKTtcblxuICAgIEFycmF5LmZyb20oaGlkZGVuRWxlbWVudHMpLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICBlbGVtZW50LnJlbW92ZSgpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxmb3JtICNkcm9wem9uZSBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6IGRpc2FibGVkIHx8IHVwbG9hZGluZ31cIiBjbGFzcz1cImRyb3B6b25lIGR6LWNsaWNrYWJsZVwiPlxuICA8ZGl2IGNsYXNzPVwiZHotbWVzc2FnZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpY29uIGxhcmdlLWljb25cIj48c3BhbiBjbGFzcz1cIm1kaSBtZGktY2xvdWQtdXBsb2FkXCI+PC9zcGFuPjwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJib2R5XCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVwbG9hZGluZ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByb2dyZXNzQmFyXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBjbGFzcz1cImRyb3B6b25lLW1vYmlsZS10cmlnZ2VyIG5lZWRzY2xpY2tcIj48L2Rpdj5cbiAgPC9kaXY+XG4gIDxidXR0b25cbiAgICAoY2xpY2spPVwic2hvd0NhbWVyYSgpXCJcbiAgICAqbmdJZj1cImNhbWVyYVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtMyB3ZWJjYW0tYnV0dG9uXCJcbiAgPlxuICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLWNhbWVyYVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgPC9idXR0b24+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93aW5nQ2FtZXJhJCB8IGFzeW5jXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIndlYmNhbVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZm9ybT5cblxuPG5nLXRlbXBsYXRlICNib2R5PlxuICA8aDIgKm5nSWY9XCIhaGlkZVRpdGxlXCIgY2xhc3M9XCJtYi00IG10LTJcIj57eyB0aXRsZSB8fCAoJ2Ryb3B6b25lLmRyb3AnIHwgdHJhbnNsYXRlKSB9fTwvaDI+XG4gIDxzcGFuICpuZ0lmPVwic3VidGl0bGVcIiBjbGFzcz1cIm5vdGUgbWItM1wiPnt7IHN1YnRpdGxlIH19PC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cInNob3dNYXhGaWxlU2l6ZVwiIGNsYXNzPVwibm90ZSBtYi0zIHNtYWxsLWZvbnRcIlxuICAgID57eyAnZHJvcHpvbmUubWF4RmlsZVNpemUnIHwgdHJhbnNsYXRlIH19PGI+e3sgbWF4RmlsZVNpemUgfX1tYjwvYj48L3NwYW5cbiAgPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicHJldmlld1wiPjwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwcmV2aWV3PlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJ7XG4gICAgICBlcnJvck1lc3NhZ2U6IGVycm9yTWVzc2FnZSQgfCBhc3luYyxcbiAgICAgIGV4dGVybmFsRXJyb3I6IGV4dGVybmFsRXJyb3IkIHwgYXN5bmMsXG4gICAgICBmaWxlOiBmaWxlJCB8IGFzeW5jXG4gICAgfSBhcyBvYnNcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9icy5leHRlcm5hbEVycm9yIHx8IG9icy5lcnJvck1lc3NhZ2VcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXIgbXQtMiBtYi0wXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtZXNzYWdlXCI+XG4gICAgICAgICAge3sgb2JzLmV4dGVybmFsRXJyb3IgfHwgb2JzLmVycm9yTWVzc2FnZSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoaWRlRmlsZVByZXZpZXcgJiYgb2JzLmZpbGUgJiYgIW9icy5leHRlcm5hbEVycm9yICYmICFvYnMuZXJyb3JNZXNzYWdlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsZVwiPlxuICAgICAgICA8aSBjbGFzcz1cImljb24gbWRpIG1kaS1maWxlLXRleHQgbXItMlwiPjwvaT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJub3RlXCI+e3sgb2JzLmZpbGUubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJub3RlIGZpbGUtc2l6ZVwiPi0ge3sgb2JzLmZpbGUuc2l6ZSB8IGZpbGVzaXplOiAyIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwcm9ncmVzc0Jhcj5cbiAgPGRpdiBjbGFzcz1cInByb2dyZXNzLWJhci1jb250YWluZXJcIj5cbiAgICA8dmFsdGltby1wcm9ncmVzcy1iYXI+PC92YWx0aW1vLXByb2dyZXNzLWJhcj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3dlYmNhbT5cbiAgPHZhbHRpbW8td2ViY2FtIChpbWFnZVNhdmVkKT1cIndlYmNhbUltYWdlU2F2ZWQoJGV2ZW50KVwiPjwvdmFsdGltby13ZWJjYW0+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2023 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2024 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -22,11 +22,11 @@ import { ProgressBarModule } from '../progress-bar/progress-bar.module';
22
22
  import { WebcamModule } from '../webcam/webcam.module';
23
23
  import * as i0 from "@angular/core";
24
24
  export class DropzoneModule {
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropzoneModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
26
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DropzoneModule, declarations: [DropzoneComponent], imports: [CommonModule, TranslateModule, FileSizeModule, ProgressBarModule, WebcamModule], exports: [DropzoneComponent] }); }
27
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropzoneModule, imports: [CommonModule, TranslateModule, FileSizeModule, ProgressBarModule, WebcamModule] }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropzoneModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
26
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: DropzoneModule, declarations: [DropzoneComponent], imports: [CommonModule, TranslateModule, FileSizeModule, ProgressBarModule, WebcamModule], exports: [DropzoneComponent] }); }
27
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropzoneModule, imports: [CommonModule, TranslateModule, FileSizeModule, ProgressBarModule, WebcamModule] }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropzoneModule, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropzoneModule, decorators: [{
30
30
  type: NgModule,
31
31
  args: [{
32
32
  declarations: [DropzoneComponent],
@@ -34,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
34
34
  exports: [DropzoneComponent],
35
35
  }]
36
36
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kcm9wem9uZS9kcm9wem9uZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPckQsTUFBTSxPQUFPLGNBQWM7K0dBQWQsY0FBYztnSEFBZCxjQUFjLGlCQUpWLGlCQUFpQixhQUN0QixZQUFZLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLGFBQzlFLGlCQUFpQjtnSEFFaEIsY0FBYyxZQUhmLFlBQVksRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLFlBQVk7OzRGQUc3RSxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLENBQUM7b0JBQ3pGLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Ryb3B6b25lQ29tcG9uZW50fSBmcm9tICcuL2Ryb3B6b25lLmNvbXBvbmVudCc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge0ZpbGVTaXplTW9kdWxlfSBmcm9tICcuLi9maWxlLXNpemUvZmlsZS1zaXplLm1vZHVsZSc7XG5pbXBvcnQge1Byb2dyZXNzQmFyTW9kdWxlfSBmcm9tICcuLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLm1vZHVsZSc7XG5pbXBvcnQge1dlYmNhbU1vZHVsZX0gZnJvbSAnLi4vd2ViY2FtL3dlYmNhbS5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtEcm9wem9uZUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgRmlsZVNpemVNb2R1bGUsIFByb2dyZXNzQmFyTW9kdWxlLCBXZWJjYW1Nb2R1bGVdLFxuICBleHBvcnRzOiBbRHJvcHpvbmVDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wem9uZU1vZHVsZSB7fVxuIl19
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kcm9wem9uZS9kcm9wem9uZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPckQsTUFBTSxPQUFPLGNBQWM7OEdBQWQsY0FBYzsrR0FBZCxjQUFjLGlCQUpWLGlCQUFpQixhQUN0QixZQUFZLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLGFBQzlFLGlCQUFpQjsrR0FFaEIsY0FBYyxZQUhmLFlBQVksRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLFlBQVk7OzJGQUc3RSxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLENBQUM7b0JBQ3pGLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Ryb3B6b25lQ29tcG9uZW50fSBmcm9tICcuL2Ryb3B6b25lLmNvbXBvbmVudCc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge0ZpbGVTaXplTW9kdWxlfSBmcm9tICcuLi9maWxlLXNpemUvZmlsZS1zaXplLm1vZHVsZSc7XG5pbXBvcnQge1Byb2dyZXNzQmFyTW9kdWxlfSBmcm9tICcuLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLm1vZHVsZSc7XG5pbXBvcnQge1dlYmNhbU1vZHVsZX0gZnJvbSAnLi4vd2ViY2FtL3dlYmNhbS5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtEcm9wem9uZUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgRmlsZVNpemVNb2R1bGUsIFByb2dyZXNzQmFyTW9kdWxlLCBXZWJjYW1Nb2R1bGVdLFxuICBleHBvcnRzOiBbRHJvcHpvbmVDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wem9uZU1vZHVsZSB7fVxuIl19
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2023 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2024 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -18,6 +18,7 @@ import { first } from 'rxjs';
18
18
  import * as i0 from "@angular/core";
19
19
  import * as i1 from "./editor.service";
20
20
  import * as i2 from "../../services/shell.service";
21
+ import * as i3 from "../../directives/fit-page/fit-page.directive";
21
22
  export class EditorComponent {
22
23
  set editorOptions(options) {
23
24
  this._editorOptions = options;
@@ -35,16 +36,23 @@ export class EditorComponent {
35
36
  this.editorService = editorService;
36
37
  this.shellService = shellService;
37
38
  this.formatOnLoad = true;
39
+ this.fitPage = false;
40
+ this.fitPageExtraSpace = 0;
38
41
  this.validEvent = new EventEmitter();
39
42
  this.valueChangeEvent = new EventEmitter();
43
+ this._formatting = false;
40
44
  this.formatDocument = () => {
41
45
  if (this.formatOnLoad && this._editor) {
42
46
  this.setDisabled(false);
43
- this._editor.getAction('editor.action.formatDocument').run();
44
- this.checkValidity();
45
- setTimeout(() => {
47
+ this._formatting = true;
48
+ this._editor
49
+ .getAction('editor.action.formatDocument')
50
+ ?.run()
51
+ .finally(() => {
52
+ this._formatting = false;
46
53
  this.setDisabled(this._disabled);
47
- }, 100);
54
+ });
55
+ this.checkValidity();
48
56
  }
49
57
  };
50
58
  this.editorService.load();
@@ -70,12 +78,23 @@ export class EditorComponent {
70
78
  }
71
79
  updateModel() {
72
80
  if (this._editor && this._model && monaco?.editor) {
73
- const model = monaco.editor.createModel(this._model.value, this._model.language, this._model.uri);
81
+ let model = null;
82
+ if (this._model.uri) {
83
+ model = monaco.editor.getModel(monaco.Uri.parse(this._model.uri));
84
+ if (model != null) {
85
+ model.setValue(this._model.value);
86
+ }
87
+ }
88
+ if (model == null) {
89
+ model = monaco.editor.createModel(this._model.value, this._model.language, this._model.uri == null ? null : monaco.Uri.parse(this._model.uri));
90
+ }
74
91
  this._editor.setModel(model);
92
+ this.initJsonSchemaValidation();
93
+ this.formatDocument();
75
94
  }
76
95
  }
77
96
  setDisabled(disabled) {
78
- if (!this._editor) {
97
+ if (!this._editor || this._formatting) {
79
98
  return;
80
99
  }
81
100
  if (disabled) {
@@ -112,13 +131,34 @@ export class EditorComponent {
112
131
  this.setEditorEvents();
113
132
  this.updateModel();
114
133
  }
115
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, deps: [{ token: i1.EditorService }, { token: i2.ShellService }], target: i0.ɵɵFactoryTarget.Component }); }
116
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditorComponent, selector: "valtimo-editor", inputs: { editorOptions: "editorOptions", model: "model", disabled: "disabled", formatOnLoad: "formatOnLoad", widthPx: "widthPx", heightPx: "heightPx", heightStyle: "heightStyle" }, outputs: { validEvent: "validEvent", valueChangeEvent: "valueChangeEvent" }, viewQueries: [{ propertyName: "editorContainer", first: true, predicate: ["editorContainer"], descendants: true, static: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"editor-container\"\n #editorContainer\n [style.width.px]=\"widthPx\"\n [style.height.px]=\"heightPx\"\n [style.height]=\"heightStyle\"\n></div>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.editor-container{width:100%;height:calc(100vh - 219px)}\n"] }); }
134
+ initJsonSchemaValidation() {
135
+ if (!!this.jsonSchema && !!this._model.uri) {
136
+ const id = this.jsonSchema['$id'];
137
+ const key = id.split('.')[0];
138
+ monaco.languages.json.jsonDefaults.setDiagnosticsOptions({
139
+ validate: true,
140
+ schemas: [
141
+ {
142
+ uri: id,
143
+ fileMatch: ['*.' + key + '.json'],
144
+ schema: this.jsonSchema,
145
+ },
146
+ ],
147
+ });
148
+ }
149
+ else {
150
+ monaco.languages.json.jsonDefaults.setDiagnosticsOptions({
151
+ validate: true,
152
+ });
153
+ }
154
+ }
155
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorComponent, deps: [{ token: i1.EditorService }, { token: i2.ShellService }], target: i0.ɵɵFactoryTarget.Component }); }
156
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: EditorComponent, selector: "valtimo-editor", inputs: { editorOptions: "editorOptions", model: "model", disabled: "disabled", formatOnLoad: "formatOnLoad", widthPx: "widthPx", heightPx: "heightPx", heightStyle: "heightStyle", jsonSchema: "jsonSchema", fitPage: "fitPage", fitPageExtraSpace: "fitPageExtraSpace" }, outputs: { validEvent: "validEvent", valueChangeEvent: "valueChangeEvent" }, viewQueries: [{ propertyName: "editorContainer", first: true, predicate: ["editorContainer"], descendants: true, static: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"editor-container\"\n #editorContainer\n [style.width.px]=\"widthPx\"\n [style.height.px]=\"!fitPage && heightPx\"\n [style.height]=\"!fitPage && heightStyle\"\n fitPage\n [disabled]=\"!fitPage\"\n [extraSpace]=\"fitPageExtraSpace\"\n></div>\n", styles: [".editor-container{width:100%;height:calc(100vh - 219px)}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i3.FitPageDirective, selector: "[fitPage]", inputs: ["extraSpace", "disabled"] }] }); }
117
157
  }
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, decorators: [{
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorComponent, decorators: [{
119
159
  type: Component,
120
- args: [{ selector: 'valtimo-editor', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"editor-container\"\n #editorContainer\n [style.width.px]=\"widthPx\"\n [style.height.px]=\"heightPx\"\n [style.height]=\"heightStyle\"\n></div>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.editor-container{width:100%;height:calc(100vh - 219px)}\n"] }]
121
- }], ctorParameters: function () { return [{ type: i1.EditorService }, { type: i2.ShellService }]; }, propDecorators: { editorContainer: [{
160
+ args: [{ selector: 'valtimo-editor', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"editor-container\"\n #editorContainer\n [style.width.px]=\"widthPx\"\n [style.height.px]=\"!fitPage && heightPx\"\n [style.height]=\"!fitPage && heightStyle\"\n fitPage\n [disabled]=\"!fitPage\"\n [extraSpace]=\"fitPageExtraSpace\"\n></div>\n", styles: [".editor-container{width:100%;height:calc(100vh - 219px)}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
161
+ }], ctorParameters: () => [{ type: i1.EditorService }, { type: i2.ShellService }], propDecorators: { editorContainer: [{
122
162
  type: ViewChild,
123
163
  args: ['editorContainer', { static: true }]
124
164
  }], editorOptions: [{
@@ -135,9 +175,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
135
175
  type: Input
136
176
  }], heightStyle: [{
137
177
  type: Input
178
+ }], jsonSchema: [{
179
+ type: Input
180
+ }], fitPage: [{
181
+ type: Input
182
+ }], fitPageExtraSpace: [{
183
+ type: Input
138
184
  }], validEvent: [{
139
185
  type: Output
140
186
  }], valueChangeEvent: [{
141
187
  type: Output
142
188
  }] } });
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2VkaXRvci9lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsS0FBSyxFQUFlLE1BQU0sTUFBTSxDQUFDOzs7O0FBWXpDLE1BQU0sT0FBTyxlQUFlO0lBRzFCLElBQWEsYUFBYSxDQUFDLE9BQThCO1FBQ3ZELElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUNELElBQWEsS0FBSyxDQUFDLEtBQWtCO1FBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBYSxRQUFRLENBQUMsUUFBaUI7UUFDckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBZ0JELFlBQ21CLGFBQTRCLEVBQzVCLFlBQTBCO1FBRDFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBakJwQyxpQkFBWSxHQUFHLElBQUksQ0FB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QWE7c0JBQXpCLEtBQUs7Z0JBSU8sS0FBSztzQkFBakIsS0FBSztnQkFJTyxRQUFRO3NCQUFwQixLQUFLO2dCQUlHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VkaXRvclNlcnZpY2V9IGZyb20gJy4vZWRpdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHtmaXJzdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZWRpdG9yfSBmcm9tICdtb25hY28tZWRpdG9yJztcbmltcG9ydCB7RWRpdG9yTW9kZWx9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge1NoZWxsU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2hlbGwuc2VydmljZSc7XG5cbmRlY2xhcmUgY29uc3QgbW9uYWNvOiBhbnk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZWRpdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VkaXRvci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdlZGl0b3JDb250YWluZXInLCB7c3RhdGljOiB0cnVlfSkgZWRpdG9yQ29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpIHNldCBlZGl0b3JPcHRpb25zKG9wdGlvbnM6IGVkaXRvci5JRWRpdG9yT3B0aW9ucykge1xuICAgIHRoaXMuX2VkaXRvck9wdGlvbnMgPSBvcHRpb25zO1xuICAgIHRoaXMudXBkYXRlT3B0aW9ucyhvcHRpb25zKTtcbiAgfVxuICBASW5wdXQoKSBzZXQgbW9kZWwobW9kZWw6IEVkaXRvck1vZGVsKSB7XG4gICAgdGhpcy5fbW9kZWwgPSBtb2RlbDtcbiAgICB0aGlzLnVwZGF0ZU1vZGVsKCk7XG4gIH1cbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgICB0aGlzLnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgfVxuICBASW5wdXQoKSBmb3JtYXRPbkxvYWQgPSB0cnVlO1xuICBASW5wdXQoKSB3aWR0aFB4ITogbnVtYmVyO1xuICBASW5wdXQoKSBoZWlnaHRQeCE6IG51bWJlcjtcbiAgQElucHV0KCkgaGVpZ2h0U3R5bGUhOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIHZhbGlkRXZlbnQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlRXZlbnQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgX2Rpc2FibGVkITogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfZWRpdG9yOiBlZGl0b3IuSVN0YW5kYWxvbmVDb2RlRWRpdG9yO1xuICBwcml2YXRlIF9lZGl0b3JPcHRpb25zOiBlZGl0b3IuSUVkaXRvck9wdGlvbnM7XG4gIHByaXZhdGUgX21vZGVsOiBFZGl0b3JNb2RlbDtcblxuICBwcml2YXRlIF9sYXlvdXRTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlZGl0b3JTZXJ2aWNlOiBFZGl0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2hlbGxTZXJ2aWNlOiBTaGVsbFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5lZGl0b3JTZXJ2aWNlLmxvYWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuTGF5b3V0U3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5pbml0TW9uYWNvKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbGF5b3V0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuTGF5b3V0U3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2xheW91dFN1YnNjcmlwdGlvbiA9IHRoaXMuc2hlbGxTZXJ2aWNlLm1haW5Db250ZW50UmVzaXplZCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcbiAgICAgICAgdGhpcy5fZWRpdG9yLmxheW91dCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVPcHRpb25zKG9wdGlvbnM6IGVkaXRvci5JRWRpdG9yT3B0aW9ucyk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcbiAgICAgIHRoaXMuX2VkaXRvci51cGRhdGVPcHRpb25zKG9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlTW9kZWwoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2VkaXRvciAmJiB0aGlzLl9tb2RlbCAmJiBtb25hY28/LmVkaXRvcikge1xuICAgICAgY29uc3QgbW9kZWwgPSBtb25hY28uZWRpdG9yLmNyZWF0ZU1vZGVsKFxuICAgICAgICB0aGlzLl9tb2RlbC52YWx1ZSxcbiAgICAgICAgdGhpcy5fbW9kZWwubGFuZ3VhZ2UsXG4gICAgICAgIHRoaXMuX21vZGVsLnVyaVxuICAgICAgKTtcblxuICAgICAgdGhpcy5fZWRpdG9yLnNldE1vZGVsKG1vZGVsKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9lZGl0b3IpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX2VkaXRvci51cGRhdGVPcHRpb25zKHtyZWFkT25seTogdHJ1ZX0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9lZGl0b3IudXBkYXRlT3B0aW9ucyh7cmVhZE9ubHk6IGZhbHNlfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXREb2N1bWVudCA9ICgpOiB2b2lkID0+IHtcbiAgICBpZiAodGhpcy5mb3JtYXRPbkxvYWQgJiYgdGhpcy5fZWRpdG9yKSB7XG4gICAgICB0aGlzLnNldERpc2FibGVkKGZhbHNlKTtcbiAgICAgIHRoaXMuX2VkaXRvci5nZXRBY3Rpb24oJ2VkaXRvci5hY3Rpb24uZm9ybWF0RG9jdW1lbnQnKS5ydW4oKTtcbiAgICAgIHRoaXMuY2hlY2tWYWxpZGl0eSgpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0RGlzYWJsZWQodGhpcy5fZGlzYWJsZWQpO1xuICAgICAgfSwgMTAwKTtcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBjaGVja1ZhbGlkaXR5KCk6IHZvaWQge1xuICAgIGNvbnN0IG1hcmtlcnMgPSBtb25hY28uZWRpdG9yLmdldE1vZGVsTWFya2VycygpIHx8IFtdO1xuICAgIGNvbnN0IHZhbGlkID0gbWFya2Vycy5sZW5ndGggPT09IDA7XG5cbiAgICB0aGlzLnZhbGlkRXZlbnQuZW1pdCh2YWxpZCk7XG4gIH1cblxuICBwcml2YXRlIHNldEVkaXRvckV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl9lZGl0b3Iub25EaWRDaGFuZ2VNb2RlbCh0aGlzLmZvcm1hdERvY3VtZW50KTtcbiAgICB0aGlzLl9lZGl0b3Iub25EaWRDaGFuZ2VNb2RlbExhbmd1YWdlQ29uZmlndXJhdGlvbih0aGlzLmZvcm1hdERvY3VtZW50KTtcbiAgICB0aGlzLl9lZGl0b3Iub25EaWRMYXlvdXRDaGFuZ2UodGhpcy5mb3JtYXREb2N1bWVudCk7XG4gICAgdGhpcy5fZWRpdG9yLm9uRGlkQ2hhbmdlTW9kZWxDb250ZW50KCgpID0+IHtcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2VFdmVudC5lbWl0KHRoaXMuX2VkaXRvci5nZXRWYWx1ZSgpKTtcbiAgICB9KTtcbiAgICBtb25hY28/LmVkaXRvcj8ub25EaWRDaGFuZ2VNYXJrZXJzKCgpID0+IHtcbiAgICAgIHRoaXMuY2hlY2tWYWxpZGl0eSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0TW9uYWNvKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5lZGl0b3JTZXJ2aWNlLmxvYWRlZCkge1xuICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLmxvYWRpbmdGaW5pc2hlZCQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmluaXRNb25hY28oKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2VkaXRvciA9IG1vbmFjby5lZGl0b3IuY3JlYXRlKHRoaXMuZWRpdG9yQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsIHRoaXMuX2VkaXRvck9wdGlvbnMpO1xuXG4gICAgdGhpcy5zZXRFZGl0b3JFdmVudHMoKTtcbiAgICB0aGlzLnVwZGF0ZU1vZGVsKCk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdlxuICBjbGFzcz1cImVkaXRvci1jb250YWluZXJcIlxuICAjZWRpdG9yQ29udGFpbmVyXG4gIFtzdHlsZS53aWR0aC5weF09XCJ3aWR0aFB4XCJcbiAgW3N0eWxlLmhlaWdodC5weF09XCJoZWlnaHRQeFwiXG4gIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0U3R5bGVcIlxuPjwvZGl2PlxuIl19
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2VkaXRvci9lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsS0FBSyxFQUFlLE1BQU0sTUFBTSxDQUFDOzs7OztBQVl6QyxNQUFNLE9BQU8sZUFBZTtJQUcxQixJQUFhLGFBQWEsQ0FBQyxPQUE4QjtRQUN2RCxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFDRCxJQUFhLEtBQUssQ0FBQyxLQUFrQjtRQUNuQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNELElBQWEsUUFBUSxDQUFDLFFBQWlCO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQW9CRCxZQUNtQixhQUE0QixFQUM1QixZQUEwQjtRQUQxQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQXJCcEMsaUJBQVksR0FBRyxJQUFJLENB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QUFDO2dCQUN2RCxRQUFRLEVBQUUsSUFBSTtnQkFDZCxPQUFPLEVBQUU7b0JBQ1A7d0JBQ0UsR0FBRyxFQUFFLEVBQUU7d0JBQ1AsU0FBUyxFQUFFLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUM7d0JBQ2pDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVTtxQkFDeEI7aUJBQ0Y7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQztnQkFDdkQsUUFBUSxFQUFFLElBQUk7YUFDZixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs4R0F2S1UsZUFBZTtrR0FBZixlQUFlLGloQkN0QzVCLDI1QkEwQkE7OzJGRFlhLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsZ0JBQWdCOzZHQUtvQixlQUFlO3NCQUE1RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFFL0IsYUFBYTtzQkFBekIsS0FBSztnQkFJTyxLQUFLO3NCQUFqQixLQUFLO2dCQUlPLFFBQVE7c0JBQXBCLEtBQUs7Z0JBSUcsWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtlZGl0b3J9IGZyb20gJ21vbmFjby1lZGl0b3InO1xuaW1wb3J0IHtmaXJzdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7RWRpdG9yTW9kZWx9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge1NoZWxsU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2hlbGwuc2VydmljZSc7XG5pbXBvcnQge0VkaXRvclNlcnZpY2V9IGZyb20gJy4vZWRpdG9yLnNlcnZpY2UnO1xuXG5kZWNsYXJlIGNvbnN0IG1vbmFjbzogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWVkaXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lZGl0b3IuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnZWRpdG9yQ29udGFpbmVyJywge3N0YXRpYzogdHJ1ZX0pIGVkaXRvckNvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICBASW5wdXQoKSBzZXQgZWRpdG9yT3B0aW9ucyhvcHRpb25zOiBlZGl0b3IuSUVkaXRvck9wdGlvbnMpIHtcbiAgICB0aGlzLl9lZGl0b3JPcHRpb25zID0gb3B0aW9ucztcbiAgICB0aGlzLnVwZGF0ZU9wdGlvbnMob3B0aW9ucyk7XG4gIH1cbiAgQElucHV0KCkgc2V0IG1vZGVsKG1vZGVsOiBFZGl0b3JNb2RlbCkge1xuICAgIHRoaXMuX21vZGVsID0gbW9kZWw7XG4gICAgdGhpcy51cGRhdGVNb2RlbCgpO1xuICB9XG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gZGlzYWJsZWQ7XG4gICAgdGhpcy5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gIH1cbiAgQElucHV0KCkgZm9ybWF0T25Mb2FkID0gdHJ1ZTtcbiAgQElucHV0KCkgd2lkdGhQeCE6IG51bWJlcjtcbiAgQElucHV0KCkgaGVpZ2h0UHghOiBudW1iZXI7XG4gIEBJbnB1dCgpIGhlaWdodFN0eWxlITogc3RyaW5nO1xuICBASW5wdXQoKSBqc29uU2NoZW1hPzogc3RyaW5nO1xuICBASW5wdXQoKSBmaXRQYWdlID0gZmFsc2U7XG4gIEBJbnB1dCgpIGZpdFBhZ2VFeHRyYVNwYWNlID0gMDtcblxuICBAT3V0cHV0KCkgdmFsaWRFdmVudDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VFdmVudDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQhOiBib29sZWFuO1xuICBwcml2YXRlIF9mb3JtYXR0aW5nID0gZmFsc2U7XG4gIHByaXZhdGUgX2VkaXRvcjogZWRpdG9yLklTdGFuZGFsb25lQ29kZUVkaXRvcjtcbiAgcHJpdmF0ZSBfZWRpdG9yT3B0aW9uczogZWRpdG9yLklFZGl0b3JPcHRpb25zO1xuICBwcml2YXRlIF9tb2RlbDogRWRpdG9yTW9kZWw7XG5cbiAgcHJpdmF0ZSBfbGF5b3V0U3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNoZWxsU2VydmljZTogU2hlbGxTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuZWRpdG9yU2VydmljZS5sb2FkKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMub3BlbkxheW91dFN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMuaW5pdE1vbmFjbygpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2xheW91dFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlbkxheW91dFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9sYXlvdXRTdWJzY3JpcHRpb24gPSB0aGlzLnNoZWxsU2VydmljZS5tYWluQ29udGVudFJlc2l6ZWQkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5fZWRpdG9yKSB7XG4gICAgICAgIHRoaXMuX2VkaXRvci5sYXlvdXQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlT3B0aW9ucyhvcHRpb25zOiBlZGl0b3IuSUVkaXRvck9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZWRpdG9yKSB7XG4gICAgICB0aGlzLl9lZGl0b3IudXBkYXRlT3B0aW9ucyhvcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZU1vZGVsKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9lZGl0b3IgJiYgdGhpcy5fbW9kZWwgJiYgbW9uYWNvPy5lZGl0b3IpIHtcbiAgICAgIGxldCBtb2RlbCA9IG51bGw7XG4gICAgICBpZiAodGhpcy5fbW9kZWwudXJpKSB7XG4gICAgICAgIG1vZGVsID0gbW9uYWNvLmVkaXRvci5nZXRNb2RlbChtb25hY28uVXJpLnBhcnNlKHRoaXMuX21vZGVsLnVyaSkpO1xuICAgICAgICBpZiAobW9kZWwgIT0gbnVsbCkge1xuICAgICAgICAgIG1vZGVsLnNldFZhbHVlKHRoaXMuX21vZGVsLnZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAobW9kZWwgPT0gbnVsbCkge1xuICAgICAgICBtb2RlbCA9IG1vbmFjby5lZGl0b3IuY3JlYXRlTW9kZWwoXG4gICAgICAgICAgdGhpcy5fbW9kZWwudmFsdWUsXG4gICAgICAgICAgdGhpcy5fbW9kZWwubGFuZ3VhZ2UsXG4gICAgICAgICAgdGhpcy5fbW9kZWwudXJpID09IG51bGwgPyBudWxsIDogbW9uYWNvLlVyaS5wYXJzZSh0aGlzLl9tb2RlbC51cmkpXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2VkaXRvci5zZXRNb2RlbChtb2RlbCk7XG4gICAgICB0aGlzLmluaXRKc29uU2NoZW1hVmFsaWRhdGlvbigpO1xuICAgICAgdGhpcy5mb3JtYXREb2N1bWVudCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2VkaXRvciB8fCB0aGlzLl9mb3JtYXR0aW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9lZGl0b3IudXBkYXRlT3B0aW9ucyh7cmVhZE9ubHk6IHRydWV9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZWRpdG9yLnVwZGF0ZU9wdGlvbnMoe3JlYWRPbmx5OiBmYWxzZX0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0RG9jdW1lbnQgPSAoKTogdm9pZCA9PiB7XG4gICAgaWYgKHRoaXMuZm9ybWF0T25Mb2FkICYmIHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5zZXREaXNhYmxlZChmYWxzZSk7XG4gICAgICB0aGlzLl9mb3JtYXR0aW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMuX2VkaXRvclxuICAgICAgICAuZ2V0QWN0aW9uKCdlZGl0b3IuYWN0aW9uLmZvcm1hdERvY3VtZW50JylcbiAgICAgICAgPy5ydW4oKVxuICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fZm9ybWF0dGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMuc2V0RGlzYWJsZWQodGhpcy5fZGlzYWJsZWQpO1xuICAgICAgICB9KTtcbiAgICAgIHRoaXMuY2hlY2tWYWxpZGl0eSgpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIGNoZWNrVmFsaWRpdHkoKTogdm9pZCB7XG4gICAgY29uc3QgbWFya2VycyA9IG1vbmFjby5lZGl0b3IuZ2V0TW9kZWxNYXJrZXJzKCkgfHwgW107XG4gICAgY29uc3QgdmFsaWQgPSBtYXJrZXJzLmxlbmd0aCA9PT0gMDtcblxuICAgIHRoaXMudmFsaWRFdmVudC5lbWl0KHZhbGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RWRpdG9yRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX2VkaXRvci5vbkRpZENoYW5nZU1vZGVsKHRoaXMuZm9ybWF0RG9jdW1lbnQpO1xuICAgIHRoaXMuX2VkaXRvci5vbkRpZENoYW5nZU1vZGVsTGFuZ3VhZ2VDb25maWd1cmF0aW9uKHRoaXMuZm9ybWF0RG9jdW1lbnQpO1xuICAgIHRoaXMuX2VkaXRvci5vbkRpZExheW91dENoYW5nZSh0aGlzLmZvcm1hdERvY3VtZW50KTtcbiAgICB0aGlzLl9lZGl0b3Iub25EaWRDaGFuZ2VNb2RlbENvbnRlbnQoKCkgPT4ge1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZUV2ZW50LmVtaXQodGhpcy5fZWRpdG9yLmdldFZhbHVlKCkpO1xuICAgIH0pO1xuICAgIG1vbmFjbz8uZWRpdG9yPy5vbkRpZENoYW5nZU1hcmtlcnMoKCkgPT4ge1xuICAgICAgdGhpcy5jaGVja1ZhbGlkaXR5KCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRNb25hY28oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmVkaXRvclNlcnZpY2UubG9hZGVkKSB7XG4gICAgICB0aGlzLmVkaXRvclNlcnZpY2UubG9hZGluZ0ZpbmlzaGVkJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuaW5pdE1vbmFjbygpO1xuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fZWRpdG9yID0gbW9uYWNvLmVkaXRvci5jcmVhdGUodGhpcy5lZGl0b3JDb250YWluZXIubmF0aXZlRWxlbWVudCwgdGhpcy5fZWRpdG9yT3B0aW9ucyk7XG5cbiAgICB0aGlzLnNldEVkaXRvckV2ZW50cygpO1xuICAgIHRoaXMudXBkYXRlTW9kZWwoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEpzb25TY2hlbWFWYWxpZGF0aW9uKCkge1xuICAgIGlmICghIXRoaXMuanNvblNjaGVtYSAmJiAhIXRoaXMuX21vZGVsLnVyaSkge1xuICAgICAgY29uc3QgaWQgPSB0aGlzLmpzb25TY2hlbWFbJyRpZCddO1xuICAgICAgY29uc3Qga2V5ID0gaWQuc3BsaXQoJy4nKVswXTtcbiAgICAgIG1vbmFjby5sYW5ndWFnZXMuanNvbi5qc29uRGVmYXVsdHMuc2V0RGlhZ25vc3RpY3NPcHRpb25zKHtcbiAgICAgICAgdmFsaWRhdGU6IHRydWUsXG4gICAgICAgIHNjaGVtYXM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB1cmk6IGlkLFxuICAgICAgICAgICAgZmlsZU1hdGNoOiBbJyouJyArIGtleSArICcuanNvbiddLFxuICAgICAgICAgICAgc2NoZW1hOiB0aGlzLmpzb25TY2hlbWEsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBtb25hY28ubGFuZ3VhZ2VzLmpzb24uanNvbkRlZmF1bHRzLnNldERpYWdub3N0aWNzT3B0aW9ucyh7XG4gICAgICAgIHZhbGlkYXRlOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXZcbiAgY2xhc3M9XCJlZGl0b3ItY29udGFpbmVyXCJcbiAgI2VkaXRvckNvbnRhaW5lclxuICBbc3R5bGUud2lkdGgucHhdPVwid2lkdGhQeFwiXG4gIFtzdHlsZS5oZWlnaHQucHhdPVwiIWZpdFBhZ2UgJiYgaGVpZ2h0UHhcIlxuICBbc3R5bGUuaGVpZ2h0XT1cIiFmaXRQYWdlICYmIGhlaWdodFN0eWxlXCJcbiAgZml0UGFnZVxuICBbZGlzYWJsZWRdPVwiIWZpdFBhZ2VcIlxuICBbZXh0cmFTcGFjZV09XCJmaXRQYWdlRXh0cmFTcGFjZVwiXG4+PC9kaXY+XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2023 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2024 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -16,18 +16,19 @@
16
16
  import { NgModule } from '@angular/core';
17
17
  import { CommonModule } from '@angular/common';
18
18
  import { EditorComponent } from './editor.component';
19
+ import { FitPageDirectiveModule } from '../../directives/fit-page/fit-page-directive.module';
19
20
  import * as i0 from "@angular/core";
20
21
  export class EditorModule {
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
22
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EditorModule, declarations: [EditorComponent], imports: [CommonModule], exports: [EditorComponent] }); }
23
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorModule, imports: [CommonModule] }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
23
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: EditorModule, declarations: [EditorComponent], imports: [CommonModule, FitPageDirectiveModule], exports: [EditorComponent] }); }
24
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorModule, imports: [CommonModule, FitPageDirectiveModule] }); }
24
25
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorModule, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorModule, decorators: [{
26
27
  type: NgModule,
27
28
  args: [{
28
29
  declarations: [EditorComponent],
29
- imports: [CommonModule],
30
+ imports: [CommonModule, FitPageDirectiveModule],
30
31
  exports: [EditorComponent],
31
32
  }]
32
33
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZWRpdG9yL2VkaXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7O0FBT25ELE1BQU0sT0FBTyxZQUFZOytHQUFaLFlBQVk7Z0hBQVosWUFBWSxpQkFKUixlQUFlLGFBQ3BCLFlBQVksYUFDWixlQUFlO2dIQUVkLFlBQVksWUFIYixZQUFZOzs0RkFHWCxZQUFZO2tCQUx4QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDL0IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RWRpdG9yQ29tcG9uZW50fSBmcm9tICcuL2VkaXRvci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtFZGl0b3JDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZXhwb3J0czogW0VkaXRvckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvck1vZHVsZSB7fVxuIl19
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZWRpdG9yL2VkaXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scURBQXFELENBQUM7O0FBTzNGLE1BQU0sT0FBTyxZQUFZOzhHQUFaLFlBQVk7K0dBQVosWUFBWSxpQkFKUixlQUFlLGFBQ3BCLFlBQVksRUFBRSxzQkFBc0IsYUFDcEMsZUFBZTsrR0FFZCxZQUFZLFlBSGIsWUFBWSxFQUFFLHNCQUFzQjs7MkZBR25DLFlBQVk7a0JBTHhCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsZUFBZSxDQUFDO29CQUMvQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLENBQUM7b0JBQy9DLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtFZGl0b3JDb21wb25lbnR9IGZyb20gJy4vZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQge0ZpdFBhZ2VEaXJlY3RpdmVNb2R1bGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZml0LXBhZ2UvZml0LXBhZ2UtZGlyZWN0aXZlLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0VkaXRvckNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZpdFBhZ2VEaXJlY3RpdmVNb2R1bGVdLFxuICBleHBvcnRzOiBbRWRpdG9yQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yTW9kdWxlIHt9XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2023 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2024 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -13,16 +13,27 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { Injectable } from '@angular/core';
17
- import { Subject } from 'rxjs';
16
+ import { Inject, Injectable } from '@angular/core';
17
+ import { combineLatest, filter, map, Subject, Subscription } from 'rxjs';
18
+ import { CurrentCarbonTheme, MonacoTheme } from '../../models';
19
+ import { DOCUMENT } from '@angular/common';
18
20
  import * as i0 from "@angular/core";
21
+ import * as i1 from "../../services";
19
22
  export class EditorService {
20
- constructor() {
23
+ get loaded() {
24
+ return this._loaded;
25
+ }
26
+ constructor(document, cdsThemeService) {
27
+ this.document = document;
28
+ this.cdsThemeService = cdsThemeService;
21
29
  this.loadingFinished$ = new Subject();
30
+ this.monacoEditor$ = this.loadingFinished$.pipe(map(() => this.document.defaultView?.monaco?.editor), filter(editor => !!editor));
22
31
  this._loaded = false;
32
+ this._subscriptions = new Subscription();
33
+ this.openThemeSubscription();
23
34
  }
24
- get loaded() {
25
- return this._loaded;
35
+ ngOnDestroy() {
36
+ this._subscriptions.unsubscribe();
26
37
  }
27
38
  load() {
28
39
  const baseUrl = './assets' + '/monaco-editor/min/vs';
@@ -51,13 +62,26 @@ export class EditorService {
51
62
  this._loaded = true;
52
63
  this.loadingFinished$.next(null);
53
64
  }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
55
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorService, providedIn: 'root' }); }
65
+ openThemeSubscription() {
66
+ this._subscriptions.add(combineLatest([this.monacoEditor$, this.cdsThemeService.currentTheme$]).subscribe(([editor, currentTheme]) => {
67
+ if (currentTheme === CurrentCarbonTheme.G10) {
68
+ editor.setTheme(MonacoTheme.VS);
69
+ }
70
+ else {
71
+ editor.setTheme(MonacoTheme.VSDARK);
72
+ }
73
+ }));
74
+ }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorService, deps: [{ token: DOCUMENT }, { token: i1.CdsThemeService }], target: i0.ɵɵFactoryTarget.Injectable }); }
76
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorService, providedIn: 'root' }); }
56
77
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorService, decorators: [{
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditorService, decorators: [{
58
79
  type: Injectable,
59
80
  args: [{
60
81
  providedIn: 'root',
61
82
  }]
62
- }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2VkaXRvci9lZGl0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFNN0IsTUFBTSxPQUFPLGFBQWE7SUFIMUI7UUFJUyxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXRDLFlBQU8sR0FBRyxLQUFLLENBQUM7S0FvQ3pCO0lBbENDLElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRU0sSUFBSTtRQUNULE1BQU0sT0FBTyxHQUFHLFVBQVUsR0FBRyx1QkFBdUIsQ0FBQztRQUVyRCxJQUFJLE9BQVEsTUFBMkIsQ0FBQyxNQUFNLEtBQUssUUFBUSxFQUFFO1lBQzNELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixPQUFPO1NBQ1I7UUFFRCxNQUFNLGNBQWMsR0FBRyxHQUFHLEVBQUU7WUFDekIsTUFBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBQyxLQUFLLEVBQUUsRUFBQyxFQUFFLEVBQUUsR0FBRyxPQUFPLEVBQUUsRUFBQyxFQUFDLENBQUMsQ0FBQztZQUMzRCxNQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsdUJBQXVCLENBQUMsRUFBRSxHQUFHLEVBQUU7Z0JBQ3RELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN2QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVGLElBQUksQ0FBRSxNQUFjLENBQUMsT0FBTyxFQUFFO1lBQzVCLE1BQU0sWUFBWSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3pFLFlBQVksQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7WUFDdEMsWUFBWSxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sWUFBWSxDQUFDO1lBQzFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFDdEQsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDekM7YUFBTTtZQUNMLGNBQWMsRUFBRSxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDOytHQXRDVSxhQUFhO21IQUFiLGFBQWEsY0FGWixNQUFNOzs0RkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtXaW5kb3dXaXRoTW9uYWNvfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yU2VydmljZSB7XG4gIHB1YmxpYyBsb2FkaW5nRmluaXNoZWQkID0gbmV3IFN1YmplY3Q8bnVsbD4oKTtcblxuICBwcml2YXRlIF9sb2FkZWQgPSBmYWxzZTtcblxuICBnZXQgbG9hZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9sb2FkZWQ7XG4gIH1cblxuICBwdWJsaWMgbG9hZCgpOiB2b2lkIHtcbiAgICBjb25zdCBiYXNlVXJsID0gJy4vYXNzZXRzJyArICcvbW9uYWNvLWVkaXRvci9taW4vdnMnO1xuXG4gICAgaWYgKHR5cGVvZiAod2luZG93IGFzIFdpbmRvd1dpdGhNb25hY28pLm1vbmFjbyA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHRoaXMuZmluaXNoTG9hZGluZygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG9uR290QW1kTG9hZGVyID0gKCkgPT4ge1xuICAgICAgKHdpbmRvdyBhcyBhbnkpLnJlcXVpcmUuY29uZmlnKHtwYXRoczoge3ZzOiBgJHtiYXNlVXJsfWB9fSk7XG4gICAgICAod2luZG93IGFzIGFueSkucmVxdWlyZShbYHZzL2VkaXRvci9lZGl0b3IubWFpbmBdLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuZmluaXNoTG9hZGluZygpO1xuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGlmICghKHdpbmRvdyBhcyBhbnkpLnJlcXVpcmUpIHtcbiAgICAgIGNvbnN0IGxvYWRlclNjcmlwdDogSFRNTFNjcmlwdEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIGxvYWRlclNjcmlwdC50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7XG4gICAgICBsb2FkZXJTY3JpcHQuc3JjID0gYCR7YmFzZVVybH0vbG9hZGVyLmpzYDtcbiAgICAgIGxvYWRlclNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgb25Hb3RBbWRMb2FkZXIpO1xuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsb2FkZXJTY3JpcHQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBvbkdvdEFtZExvYWRlcigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZmluaXNoTG9hZGluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9sb2FkZWQgPSB0cnVlO1xuICAgIHRoaXMubG9hZGluZ0ZpbmlzaGVkJC5uZXh0KG51bGwpO1xuICB9XG59XG4iXX0=
83
+ }], ctorParameters: () => [{ type: Document, decorators: [{
84
+ type: Inject,
85
+ args: [DOCUMENT]
86
+ }] }, { type: i1.CdsThemeService }] });
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2VkaXRvci9lZGl0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQW1CLE1BQU0sY0FBYyxDQUFDO0FBQy9FLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBTXpDLE1BQU0sT0FBTyxhQUFhO0lBVXhCLElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBSUQsWUFDcUMsUUFBa0IsRUFDcEMsZUFBZ0M7UUFEZCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQWpCbkMscUJBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUV2QyxrQkFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQ3hELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQWdDLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxFQUMxRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQzNCLENBQUM7UUFFTSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBTVAsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBTW5ELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLElBQUk7UUFDVCxNQUFNLE9BQU8sR0FBRyxVQUFVLEdBQUcsdUJBQXVCLENBQUM7UUFFckQsSUFBSSxPQUFRLE1BQTJCLENBQUMsTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sY0FBYyxHQUFHLEdBQUcsRUFBRTtZQUN6QixNQUFjLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFDLEtBQUssRUFBRSxFQUFDLEVBQUUsRUFBRSxHQUFHLE9BQU8sRUFBRSxFQUFDLEVBQUMsQ0FBQyxDQUFDO1lBQzNELE1BQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFLEdBQUcsRUFBRTtnQkFDdEQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFFLE1BQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM3QixNQUFNLFlBQVksR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6RSxZQUFZLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO1lBQ3RDLFlBQVksQ0FBQyxHQUFHLEdBQUcsR0FBRyxPQUFPLFlBQVksQ0FBQztZQUMxQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1lBQ3RELFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzFDLENBQUM7YUFBTSxDQUFDO1lBQ04sY0FBYyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FDckIsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUMvRSxDQUFDLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDekIsSUFBSSxZQUFZLEtBQUssa0JBQWtCLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQzVDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2xDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN0QyxDQUFDO1FBQ0gsQ0FBQyxDQUNGLENBQ0YsQ0FBQztJQUNKLENBQUM7OEdBdEVVLGFBQWEsa0JBaUJkLFFBQVE7a0hBakJQLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBa0JJLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3l9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIG1hcCwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q3VycmVudENhcmJvblRoZW1lLCBNb25hY29UaGVtZSwgV2luZG93V2l0aE1vbmFjb30gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0Nkc1RoZW1lU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHB1YmxpYyByZWFkb25seSBsb2FkaW5nRmluaXNoZWQkID0gbmV3IFN1YmplY3Q8bnVsbD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbW9uYWNvRWRpdG9yJCA9IHRoaXMubG9hZGluZ0ZpbmlzaGVkJC5waXBlKFxuICAgIG1hcCgoKSA9PiAodGhpcy5kb2N1bWVudC5kZWZhdWx0VmlldyBhcyBXaW5kb3dXaXRoTW9uYWNvKT8ubW9uYWNvPy5lZGl0b3IpLFxuICAgIGZpbHRlcihlZGl0b3IgPT4gISFlZGl0b3IpXG4gICk7XG5cbiAgcHJpdmF0ZSBfbG9hZGVkID0gZmFsc2U7XG5cbiAgZ2V0IGxvYWRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZGVkO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkc1RoZW1lU2VydmljZTogQ2RzVGhlbWVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMub3BlblRoZW1lU3Vic2NyaXB0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGxvYWQoKTogdm9pZCB7XG4gICAgY29uc3QgYmFzZVVybCA9ICcuL2Fzc2V0cycgKyAnL21vbmFjby1lZGl0b3IvbWluL3ZzJztcblxuICAgIGlmICh0eXBlb2YgKHdpbmRvdyBhcyBXaW5kb3dXaXRoTW9uYWNvKS5tb25hY28gPT09ICdvYmplY3QnKSB7XG4gICAgICB0aGlzLmZpbmlzaExvYWRpbmcoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvbkdvdEFtZExvYWRlciA9ICgpID0+IHtcbiAgICAgICh3aW5kb3cgYXMgYW55KS5yZXF1aXJlLmNvbmZpZyh7cGF0aHM6IHt2czogYCR7YmFzZVVybH1gfX0pO1xuICAgICAgKHdpbmRvdyBhcyBhbnkpLnJlcXVpcmUoW2B2cy9lZGl0b3IvZWRpdG9yLm1haW5gXSwgKCkgPT4ge1xuICAgICAgICB0aGlzLmZpbmlzaExvYWRpbmcoKTtcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBpZiAoISh3aW5kb3cgYXMgYW55KS5yZXF1aXJlKSB7XG4gICAgICBjb25zdCBsb2FkZXJTY3JpcHQ6IEhUTUxTY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBsb2FkZXJTY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgbG9hZGVyU2NyaXB0LnNyYyA9IGAke2Jhc2VVcmx9L2xvYWRlci5qc2A7XG4gICAgICBsb2FkZXJTY3JpcHQuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIG9uR290QW1kTG9hZGVyKTtcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobG9hZGVyU2NyaXB0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgb25Hb3RBbWRMb2FkZXIoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZpbmlzaExvYWRpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fbG9hZGVkID0gdHJ1ZTtcbiAgICB0aGlzLmxvYWRpbmdGaW5pc2hlZCQubmV4dChudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlblRoZW1lU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5tb25hY29FZGl0b3IkLCB0aGlzLmNkc1RoZW1lU2VydmljZS5jdXJyZW50VGhlbWUkXSkuc3Vic2NyaWJlKFxuICAgICAgICAoW2VkaXRvciwgY3VycmVudFRoZW1lXSkgPT4ge1xuICAgICAgICAgIGlmIChjdXJyZW50VGhlbWUgPT09IEN1cnJlbnRDYXJib25UaGVtZS5HMTApIHtcbiAgICAgICAgICAgIGVkaXRvci5zZXRUaGVtZShNb25hY29UaGVtZS5WUyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGVkaXRvci5zZXRUaGVtZShNb25hY29UaGVtZS5WU0RBUkspO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==