@valtimo/components 12.19.0 → 13.0.1-next-minor.81

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 (674) hide show
  1. package/assets/css/carbon.scss +6 -1
  2. package/assets/css/color.scss +11 -11
  3. package/assets/css/compatibility.scss +51 -3
  4. package/assets/css/design-tokens.css +1 -1
  5. package/assets/css/formio-carbon.scss +16 -0
  6. package/assets/css/ng-multiselect-dropdown.theme.scss +1 -1
  7. package/fesm2022/valtimo-components.mjs +3985 -3525
  8. package/fesm2022/valtimo-components.mjs.map +1 -1
  9. package/lib/components/alert/alert.component.d.ts.map +1 -1
  10. package/lib/components/auto-key-input/auto-key-input.component.d.ts +49 -0
  11. package/lib/components/auto-key-input/auto-key-input.component.d.ts.map +1 -0
  12. package/lib/components/bpmn-js-diagram/bpmn-js-diagram.component.d.ts +2 -2
  13. package/lib/components/bpmn-js-diagram/bpmn-js-diagram.component.d.ts.map +1 -1
  14. package/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.d.ts.map +1 -1
  15. package/lib/components/breadcrumb-navigation/breadcrumb.service.d.ts +8 -8
  16. package/lib/components/breadcrumb-navigation/breadcrumb.service.d.ts.map +1 -1
  17. package/lib/components/camunda/form/camunda-form.components.d.ts.map +1 -1
  18. package/lib/components/camunda/form/custom/camunda-custom-form.component.d.ts.map +1 -1
  19. package/lib/components/camunda/form/generated/camunda-generated-form.component.d.ts.map +1 -1
  20. package/lib/components/camunda/form/generated/formfield/boolean/camunda-boolean-formfield.component.d.ts.map +1 -1
  21. package/lib/components/camunda/form/generated/formfield/camunda-formfield-generator.directive.d.ts.map +1 -1
  22. package/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.d.ts.map +1 -1
  23. package/lib/components/camunda/form/generated/formfield/date/camunda-date-formfield.component.d.ts.map +1 -1
  24. package/lib/components/camunda/form/generated/formfield/enum/camunda-enum-formfield.component.d.ts.map +1 -1
  25. package/lib/components/camunda/form/generated/formfield/long/camunda-long-formfield.component.d.ts.map +1 -1
  26. package/lib/components/camunda/form/generated/formfield/string/camunda-string-formfield.component.d.ts.map +1 -1
  27. package/lib/components/camunda/form/generated/formfield/textarea/camunda-textarea-formfield.component.d.ts.map +1 -1
  28. package/lib/components/camunda/form/generated/formfield/validation/camunda-formfield-validation.component.d.ts.map +1 -1
  29. package/lib/components/carbon-list/CarbonListFilterPipe.directive.d.ts.map +1 -1
  30. package/lib/components/carbon-list/carbon-list.component.d.ts +3 -2
  31. package/lib/components/carbon-list/carbon-list.component.d.ts.map +1 -1
  32. package/lib/components/carbon-list/carbon-list.module.d.ts +8 -9
  33. package/lib/components/carbon-list/carbon-list.module.d.ts.map +1 -1
  34. package/lib/components/carbon-list/no-results/carbon-no-results.component.d.ts.map +1 -1
  35. package/lib/components/carbon-list/tags-modal/tags-modal.component.d.ts.map +1 -1
  36. package/lib/components/case-tags-selector/case-tags-selector.component.d.ts +4 -4
  37. package/lib/components/case-tags-selector/case-tags-selector.component.d.ts.map +1 -1
  38. package/lib/components/confirmation-modal/confirmation-modal.component.d.ts +1 -1
  39. package/lib/components/confirmation-modal/confirmation-modal.component.d.ts.map +1 -1
  40. package/lib/components/confirmation-modal/confirmation-modal.module.d.ts +2 -2
  41. package/lib/components/confirmation-modal/confirmation-modal.module.d.ts.map +1 -1
  42. package/lib/components/data-list/data-list.component.d.ts.map +1 -1
  43. package/lib/components/date-picker/date-picker.component.d.ts +1 -1
  44. package/lib/components/date-picker/date-picker.component.d.ts.map +1 -1
  45. package/lib/components/dropzone/dropzone.component.d.ts.map +1 -1
  46. package/lib/components/editor/editor.component.d.ts.map +1 -1
  47. package/lib/components/editor/editor.module.d.ts +2 -2
  48. package/lib/components/editor/editor.service.d.ts.map +1 -1
  49. package/lib/components/expansion-panel/expansion-panel.component.d.ts.map +1 -1
  50. package/lib/components/field-auto-focus/field-auto-focus.directive.d.ts.map +1 -1
  51. package/lib/components/file-size/file-size.pipe.d.ts.map +1 -1
  52. package/lib/components/filter-sidebar/filter-sidebar.component.d.ts.map +1 -1
  53. package/lib/components/form/form.component.d.ts.map +1 -1
  54. package/lib/components/form-io/{form-io.component.d.ts → components/form-io/form-io.component.d.ts} +11 -9
  55. package/lib/components/form-io/components/form-io/form-io.component.d.ts.map +1 -0
  56. package/lib/components/form-io/components/form-io-builder/form-io-builder.component.d.ts +36 -0
  57. package/lib/components/form-io/components/form-io-builder/form-io-builder.component.d.ts.map +1 -0
  58. package/lib/components/form-io/components/form-io-builder/form-io-builder.utils.d.ts +9 -0
  59. package/lib/components/form-io/components/form-io-builder/form-io-builder.utils.d.ts.map +1 -0
  60. package/lib/components/form-io/components/form-io-currency/currency-edit-form.d.ts.map +1 -0
  61. package/lib/components/form-io/{form-io-currency → components/form-io-currency}/currency.component.d.ts +1 -1
  62. package/lib/components/form-io/components/form-io-currency/currency.component.d.ts.map +1 -0
  63. package/lib/components/form-io/components/form-io-currency/currency.formio.d.ts.map +1 -0
  64. package/lib/components/form-io/components/form-io-current-user/form-io-current-user-edit-form.d.ts.map +1 -0
  65. package/lib/components/form-io/{form-io-current-user → components/form-io-current-user}/form-io-current-user.component.d.ts +1 -1
  66. package/lib/components/form-io/components/form-io-current-user/form-io-current-user.component.d.ts.map +1 -0
  67. package/lib/components/form-io/components/form-io-current-user/form-io-current-user.formio.d.ts.map +1 -0
  68. package/lib/components/form-io/{form-io-dummy → components/form-io-dummy}/dummy.component.d.ts +1 -1
  69. package/lib/components/form-io/components/form-io-dummy/dummy.component.d.ts.map +1 -0
  70. package/lib/components/form-io/components/form-io-dummy/dummy.formio.d.ts.map +1 -0
  71. package/lib/components/form-io/{form-io-iban → components/form-io-iban}/iban.component.d.ts +1 -1
  72. package/lib/components/form-io/components/form-io-iban/iban.component.d.ts.map +1 -0
  73. package/lib/components/form-io/components/form-io-iban/iban.formio.d.ts.map +1 -0
  74. package/lib/components/form-io/components/form-io-iban/iban.validators.d.ts.map +1 -0
  75. package/lib/components/form-io/components/form-io-resource-selector/form-io-resource-selector.formio.d.ts.map +1 -0
  76. package/lib/components/form-io/components/form-io-uploader/form-io-uploader-edit-form.d.ts.map +1 -0
  77. package/lib/components/form-io/{form-io-uploader → components/form-io-uploader}/form-io-uploader.component.d.ts +3 -3
  78. package/lib/components/form-io/components/form-io-uploader/form-io-uploader.component.d.ts.map +1 -0
  79. package/lib/components/form-io/components/form-io-uploader/form-io-uploader.formio.d.ts.map +1 -0
  80. package/lib/components/form-io/components/formio-value-resolver-selector/formio-value-resolver-selector-edit-form.d.ts.map +1 -0
  81. package/lib/components/form-io/{formio-value-resolver-selector → components/formio-value-resolver-selector}/formio-value-resolver-selector.component.d.ts +4 -2
  82. package/lib/components/form-io/components/formio-value-resolver-selector/formio-value-resolver-selector.component.d.ts.map +1 -0
  83. package/lib/components/form-io/components/formio-value-resolver-selector/formio-value-resolver-selector.formio.d.ts.map +1 -0
  84. package/lib/components/form-io/form-io.module.d.ts +8 -8
  85. package/lib/components/form-io/formio-config.d.ts +1 -1
  86. package/lib/components/form-io/formio-config.d.ts.map +1 -1
  87. package/lib/components/form-io/services/form-io-state.service.d.ts +4 -0
  88. package/lib/components/form-io/services/form-io-state.service.d.ts.map +1 -1
  89. package/lib/components/form-io/services/form-io-translation.service.d.ts +11 -0
  90. package/lib/components/form-io/services/form-io-translation.service.d.ts.map +1 -0
  91. package/lib/components/form-io/services/form-io.tags.service.d.ts +11 -0
  92. package/lib/components/form-io/services/form-io.tags.service.d.ts.map +1 -0
  93. package/lib/components/form-io/services/index.d.ts +6 -0
  94. package/lib/components/form-io/services/index.d.ts.map +1 -0
  95. package/lib/components/input/input.component.d.ts +10 -2
  96. package/lib/components/input/input.component.d.ts.map +1 -1
  97. package/lib/components/input/input.module.d.ts +2 -3
  98. package/lib/components/input/input.module.d.ts.map +1 -1
  99. package/lib/components/input-label/input-label.component.d.ts +2 -1
  100. package/lib/components/input-label/input-label.component.d.ts.map +1 -1
  101. package/lib/components/json-editor/json-editor.component.d.ts +45 -0
  102. package/lib/components/json-editor/json-editor.component.d.ts.map +1 -0
  103. package/lib/components/left-sidebar/left-sidebar.component.d.ts +3 -2
  104. package/lib/components/left-sidebar/left-sidebar.component.d.ts.map +1 -1
  105. package/lib/components/left-sidebar/left-sidebar.module.d.ts +2 -2
  106. package/lib/components/left-sidebar/left-sidebar.module.d.ts.map +1 -1
  107. package/lib/components/list-column-view/list-column-view.component.d.ts +29 -0
  108. package/lib/components/list-column-view/list-column-view.component.d.ts.map +1 -0
  109. package/lib/components/menu/menu-item-text.component.d.ts +1 -1
  110. package/lib/components/menu/menu-item-text.component.d.ts.map +1 -1
  111. package/lib/components/menu/services/index.d.ts +2 -0
  112. package/lib/components/menu/services/index.d.ts.map +1 -0
  113. package/lib/components/menu/{menu.service.d.ts → services/menu.service.d.ts} +20 -22
  114. package/lib/components/menu/services/menu.service.d.ts.map +1 -0
  115. package/lib/components/modal/modal.component.d.ts.map +1 -1
  116. package/lib/components/multi-input/carbon-multi-input.component.d.ts +14 -5
  117. package/lib/components/multi-input/carbon-multi-input.component.d.ts.map +1 -1
  118. package/lib/components/multi-input/carbon-multi-input.module.d.ts +10 -11
  119. package/lib/components/multi-input/carbon-multi-input.module.d.ts.map +1 -1
  120. package/lib/components/multi-input/components/key-value/key-value.component.d.ts.map +1 -1
  121. package/lib/components/multi-input/components/key-value-path-selector/key-value-path-selector.component.d.ts +3 -3
  122. package/lib/components/multi-input/components/key-value-path-selector/key-value-path-selector.component.d.ts.map +1 -1
  123. package/lib/components/multi-input/components/value-path-selector-dropdown-value/value-path-selector-dropdown-value.component.d.ts +3 -3
  124. package/lib/components/multi-input/components/value-path-selector-dropdown-value/value-path-selector-dropdown-value.component.d.ts.map +1 -1
  125. package/lib/components/multi-input/components/value-path-selector-value/value-path-selector-value.component.d.ts +3 -3
  126. package/lib/components/multi-input/components/value-path-selector-value/value-path-selector-value.component.d.ts.map +1 -1
  127. package/lib/components/multi-input-form/multi-input-form.component.d.ts +3 -0
  128. package/lib/components/multi-input-form/multi-input-form.component.d.ts.map +1 -1
  129. package/lib/components/multi-input-form/multi-input-form.module.d.ts +2 -2
  130. package/lib/components/multi-input-form/multi-input-form.module.d.ts.map +1 -1
  131. package/lib/components/multiselect-dropdown/multiselect-dropdown.component.d.ts.map +1 -1
  132. package/lib/components/page-header/page-header.component.d.ts.map +1 -1
  133. package/lib/components/page-header/page-header.module.d.ts +2 -2
  134. package/lib/components/page-subtitle/page-subtitle.component.d.ts.map +1 -1
  135. package/lib/components/page-title/page-title.component.d.ts +1 -1
  136. package/lib/components/page-title/page-title.component.d.ts.map +1 -1
  137. package/lib/components/paragraph/paragraph.component.d.ts.map +1 -1
  138. package/lib/components/progress-bar/progress-bar.component.d.ts.map +1 -1
  139. package/lib/components/prompt/prompt.component.d.ts +0 -4
  140. package/lib/components/prompt/prompt.component.d.ts.map +1 -1
  141. package/lib/components/prompt/prompt.module.d.ts +3 -4
  142. package/lib/components/prompt/prompt.module.d.ts.map +1 -1
  143. package/lib/components/quick-search/modal/quick-search-modal.component.d.ts +25 -0
  144. package/lib/components/quick-search/modal/quick-search-modal.component.d.ts.map +1 -0
  145. package/lib/components/quick-search/quick-search.component.d.ts +32 -0
  146. package/lib/components/quick-search/quick-search.component.d.ts.map +1 -0
  147. package/lib/components/radio/radio.component.d.ts.map +1 -1
  148. package/lib/components/radio/radio.module.d.ts +2 -3
  149. package/lib/components/radio/radio.module.d.ts.map +1 -1
  150. package/lib/components/render-in-body/render-in-body.component.d.ts +14 -0
  151. package/lib/components/render-in-body/render-in-body.component.d.ts.map +1 -0
  152. package/lib/components/right-sidebar/right-sidebar.component.d.ts +1 -1
  153. package/lib/components/right-sidebar/right-sidebar.component.d.ts.map +1 -1
  154. package/lib/components/search-fields/search-fields.component.d.ts +15 -7
  155. package/lib/components/search-fields/search-fields.component.d.ts.map +1 -1
  156. package/lib/components/searchable-dropdown/searchable-dropdown.component.d.ts.map +1 -1
  157. package/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.d.ts.map +1 -1
  158. package/lib/components/select/select.component.d.ts +11 -2
  159. package/lib/components/select/select.component.d.ts.map +1 -1
  160. package/lib/components/spinner/spinner.component.d.ts.map +1 -1
  161. package/lib/components/status-selector/status-selector.component.d.ts +4 -4
  162. package/lib/components/status-selector/status-selector.component.d.ts.map +1 -1
  163. package/lib/components/stepper/stepper-container/stepper-container.component.d.ts.map +1 -1
  164. package/lib/components/stepper/stepper-content/stepper-content.component.d.ts.map +1 -1
  165. package/lib/components/stepper/stepper-footer/stepper-footer.component.d.ts.map +1 -1
  166. package/lib/components/stepper/stepper-footer-step/stepper-footer-step.component.d.ts.map +1 -1
  167. package/lib/components/stepper/stepper-header/stepper-header.component.d.ts.map +1 -1
  168. package/lib/components/stepper/stepper-step/stepper-step.component.d.ts.map +1 -1
  169. package/lib/components/stepper/stepper.module.d.ts +2 -3
  170. package/lib/components/stepper/stepper.module.d.ts.map +1 -1
  171. package/lib/components/table/table.component.d.ts.map +1 -1
  172. package/lib/components/table/table.module.d.ts +1 -1
  173. package/lib/components/timeline/timeline.component.d.ts +7 -3
  174. package/lib/components/timeline/timeline.component.d.ts.map +1 -1
  175. package/lib/components/timeline/timeline.module.d.ts +2 -1
  176. package/lib/components/timeline/timeline.module.d.ts.map +1 -1
  177. package/lib/components/tooltip-icon/tooltip-icon.component.d.ts +0 -3
  178. package/lib/components/tooltip-icon/tooltip-icon.component.d.ts.map +1 -1
  179. package/lib/components/tooltip-icon/tooltip-icon.module.d.ts +0 -3
  180. package/lib/components/tooltip-icon/tooltip-icon.module.d.ts.map +1 -1
  181. package/lib/components/topbar/topbar.component.d.ts +1 -1
  182. package/lib/components/topbar/topbar.component.d.ts.map +1 -1
  183. package/lib/components/uploader/uploader-drag-drop.directive.d.ts.map +1 -1
  184. package/lib/components/uploader/uploader.component.d.ts.map +1 -1
  185. package/lib/components/v-modal/modal.component.d.ts.map +1 -1
  186. package/lib/components/v-modal/modal.module.d.ts +2 -6
  187. package/lib/components/v-modal/modal.module.d.ts.map +1 -1
  188. package/lib/components/value-path-selector/value-path-selector.component.d.ts +16 -13
  189. package/lib/components/value-path-selector/value-path-selector.component.d.ts.map +1 -1
  190. package/lib/components/version/version.service.d.ts +1 -1
  191. package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts +1 -0
  192. package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts.map +1 -1
  193. package/lib/components/view-content/type-converters/currencyTypeConverter.d.ts +1 -0
  194. package/lib/components/view-content/type-converters/currencyTypeConverter.d.ts.map +1 -1
  195. package/lib/components/view-content/type-converters/dateTimeTypeConverter.d.ts +1 -0
  196. package/lib/components/view-content/type-converters/dateTimeTypeConverter.d.ts.map +1 -1
  197. package/lib/components/view-content/type-converters/dateTypeConverter.d.ts +1 -0
  198. package/lib/components/view-content/type-converters/dateTypeConverter.d.ts.map +1 -1
  199. package/lib/components/view-content/type-converters/enumTypeConverter.d.ts +1 -0
  200. package/lib/components/view-content/type-converters/enumTypeConverter.d.ts.map +1 -1
  201. package/lib/components/view-content/type-converters/linkTypeConverter.d.ts +7 -0
  202. package/lib/components/view-content/type-converters/linkTypeConverter.d.ts.map +1 -0
  203. package/lib/components/view-content/type-converters/numberTypeConverter.d.ts +1 -0
  204. package/lib/components/view-content/type-converters/numberTypeConverter.d.ts.map +1 -1
  205. package/lib/components/view-content/type-converters/percentTypeConverter.d.ts +1 -0
  206. package/lib/components/view-content/type-converters/percentTypeConverter.d.ts.map +1 -1
  207. package/lib/components/view-content/type-converters/relatedFilesTypeConverter.d.ts +1 -0
  208. package/lib/components/view-content/type-converters/relatedFilesTypeConverter.d.ts.map +1 -1
  209. package/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.d.ts +1 -0
  210. package/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.d.ts.map +1 -1
  211. package/lib/components/view-content/type-converters/stringTypeConverter.d.ts +1 -0
  212. package/lib/components/view-content/type-converters/stringTypeConverter.d.ts.map +1 -1
  213. package/lib/components/view-content/type-converters/type-converters.model.d.ts +1 -0
  214. package/lib/components/view-content/type-converters/type-converters.model.d.ts.map +1 -1
  215. package/lib/components/view-content/view-content.service.d.ts +2 -1
  216. package/lib/components/view-content/view-content.service.d.ts.map +1 -1
  217. package/lib/components/webcam/webcam.component.d.ts.map +1 -1
  218. package/lib/components/widget/widget.component.d.ts.map +1 -1
  219. package/lib/constants/carbon.constants.d.ts +0 -1
  220. package/lib/constants/carbon.constants.d.ts.map +1 -1
  221. package/lib/constants/index.d.ts +1 -0
  222. package/lib/constants/index.d.ts.map +1 -1
  223. package/lib/constants/quick-search.constants.d.ts +4 -0
  224. package/lib/constants/quick-search.constants.d.ts.map +1 -0
  225. package/lib/directives/context-menu.directive.d.ts +20 -0
  226. package/lib/directives/context-menu.directive.d.ts.map +1 -0
  227. package/lib/directives/{command-click/command-click.directive.d.ts → ctrl-click/ctrl-click.directive.d.ts} +2 -2
  228. package/lib/directives/ctrl-click/ctrl-click.directive.d.ts.map +1 -0
  229. package/lib/directives/digit-only/digit-only.directive.d.ts.map +1 -1
  230. package/lib/directives/fit-page/fit-page.directive.d.ts +6 -2
  231. package/lib/directives/fit-page/fit-page.directive.d.ts.map +1 -1
  232. package/lib/directives/muuri/muuri-directive.module.d.ts +10 -0
  233. package/lib/directives/muuri/muuri-directive.module.d.ts.map +1 -0
  234. package/lib/directives/muuri/muuri-item.component.d.ts +8 -0
  235. package/lib/directives/muuri/muuri-item.component.d.ts.map +1 -0
  236. package/lib/directives/muuri/muuri.directive.d.ts +27 -0
  237. package/lib/directives/muuri/muuri.directive.d.ts.map +1 -0
  238. package/lib/directives/observe-size/observe-size.directive.d.ts +16 -0
  239. package/lib/directives/observe-size/observe-size.directive.d.ts.map +1 -0
  240. package/lib/directives/read-only.directive.d.ts +15 -0
  241. package/lib/directives/read-only.directive.d.ts.map +1 -0
  242. package/lib/directives/remove-classnames/remove-classnames.directive.d.ts.map +1 -1
  243. package/lib/directives/render-in-page-header/render-in-page-header.directive.d.ts +1 -1
  244. package/lib/directives/render-page-header/render-page-header.directive.d.ts +1 -1
  245. package/lib/directives/render-page-subtitle/render-page-subtitle.directive.d.ts +1 -1
  246. package/lib/directives/tooltip/tooltip.component.d.ts.map +1 -1
  247. package/lib/directives/valtimo-cds-modal/valtimo-cds-modal.directive.d.ts +3 -3
  248. package/lib/directives/valtimo-cds-modal/valtimo-cds-modal.directive.d.ts.map +1 -1
  249. package/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button.directive.d.ts +3 -2
  250. package/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button.directive.d.ts.map +1 -1
  251. package/lib/interfaces/index.d.ts +2 -0
  252. package/lib/interfaces/index.d.ts.map +1 -0
  253. package/lib/interfaces/quick-search-service.interface.d.ts +12 -0
  254. package/lib/interfaces/quick-search-service.interface.d.ts.map +1 -0
  255. package/lib/models/carbon-list.model.d.ts +3 -2
  256. package/lib/models/carbon-list.model.d.ts.map +1 -1
  257. package/lib/models/form-io.model.d.ts +86 -5
  258. package/lib/models/form-io.model.d.ts.map +1 -1
  259. package/lib/models/index.d.ts +4 -1
  260. package/lib/models/index.d.ts.map +1 -1
  261. package/lib/models/list-hidden-column.model.d.ts +8 -0
  262. package/lib/models/list-hidden-column.model.d.ts.map +1 -0
  263. package/lib/models/menu.model.d.ts +5 -0
  264. package/lib/models/menu.model.d.ts.map +1 -0
  265. package/lib/models/quick-search.model.d.ts +5 -0
  266. package/lib/models/quick-search.model.d.ts.map +1 -0
  267. package/lib/models/value-path-selector.model.d.ts +1 -2
  268. package/lib/models/value-path-selector.model.d.ts.map +1 -1
  269. package/lib/modules/custom-formio-component/create-custom-component.d.ts +45 -39
  270. package/lib/modules/custom-formio-component/create-custom-component.d.ts.map +1 -1
  271. package/lib/modules/custom-formio-component/elements.common.d.ts +1 -1
  272. package/lib/modules/custom-formio-component/elements.common.d.ts.map +1 -1
  273. package/lib/modules/custom-formio-component/index.d.ts +0 -1
  274. package/lib/modules/custom-formio-component/index.d.ts.map +1 -1
  275. package/lib/modules/custom-formio-component/register-custom-component.d.ts +3 -4
  276. package/lib/modules/custom-formio-component/register-custom-component.d.ts.map +1 -1
  277. package/lib/pipes/ellipsis.pipe.d.ts.map +1 -1
  278. package/lib/pipes/menu-item-translation.pipe.d.ts +1 -1
  279. package/lib/services/choice-field.service.d.ts +1 -1
  280. package/lib/services/index.d.ts +7 -6
  281. package/lib/services/index.d.ts.map +1 -1
  282. package/lib/services/key-state.service.d.ts.map +1 -1
  283. package/lib/services/page-header.service.d.ts +1 -1
  284. package/lib/services/page-title.service.d.ts +2 -1
  285. package/lib/services/page-title.service.d.ts.map +1 -1
  286. package/lib/services/prompt.service.d.ts +0 -13
  287. package/lib/services/prompt.service.d.ts.map +1 -1
  288. package/lib/services/quick-search-state.service.d.ts +18 -0
  289. package/lib/services/quick-search-state.service.d.ts.map +1 -0
  290. package/lib/services/shell.service.d.ts +1 -1
  291. package/lib/services/valtimo-modal.service.d.ts +3 -3
  292. package/lib/services/valtimo-modal.service.d.ts.map +1 -1
  293. package/lib/services/value-path-selector.service.d.ts +9 -9
  294. package/lib/services/value-path-selector.service.d.ts.map +1 -1
  295. package/lib/utils/carbon.utils.d.ts +3 -0
  296. package/lib/utils/carbon.utils.d.ts.map +1 -0
  297. package/lib/utils/index.d.ts +2 -0
  298. package/lib/utils/index.d.ts.map +1 -0
  299. package/package.json +22 -23
  300. package/public_api.d.ts +33 -41
  301. package/public_api.d.ts.map +1 -1
  302. package/esm2022/lib/components/alert/alert.component.mjs +0 -137
  303. package/esm2022/lib/components/alert/alert.module.mjs +0 -33
  304. package/esm2022/lib/components/alert/alert.service.mjs +0 -80
  305. package/esm2022/lib/components/bpmn-js-diagram/bpmn-js-diagram.component.mjs +0 -168
  306. package/esm2022/lib/components/bpmn-js-diagram/bpmn-js-diagram.module.mjs +0 -33
  307. package/esm2022/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.mjs +0 -57
  308. package/esm2022/lib/components/breadcrumb-navigation/breadcrumb-navigation.module.mjs +0 -36
  309. package/esm2022/lib/components/breadcrumb-navigation/breadcrumb.service.mjs +0 -127
  310. package/esm2022/lib/components/button/button.component.mjs +0 -99
  311. package/esm2022/lib/components/button/button.module.mjs +0 -37
  312. package/esm2022/lib/components/camunda/form/camunda-form.components.mjs +0 -41
  313. package/esm2022/lib/components/camunda/form/camunda-form.module.mjs +0 -35
  314. package/esm2022/lib/components/camunda/form/custom/camunda-custom-form.component.mjs +0 -40
  315. package/esm2022/lib/components/camunda/form/custom/camunda-custom-form.module.mjs +0 -33
  316. package/esm2022/lib/components/camunda/form/generated/camunda-generated-form.component.mjs +0 -67
  317. package/esm2022/lib/components/camunda/form/generated/camunda-generated-form.module.mjs +0 -63
  318. package/esm2022/lib/components/camunda/form/generated/formfield/boolean/camunda-boolean-formfield.component.mjs +0 -30
  319. package/esm2022/lib/components/camunda/form/generated/formfield/camunda-formfield-generator.directive.mjs +0 -63
  320. package/esm2022/lib/components/camunda/form/generated/formfield/camunda-formfield.service.mjs +0 -67
  321. package/esm2022/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.mjs +0 -41
  322. package/esm2022/lib/components/camunda/form/generated/formfield/date/camunda-date-formfield.component.mjs +0 -66
  323. package/esm2022/lib/components/camunda/form/generated/formfield/enum/camunda-enum-formfield.component.mjs +0 -33
  324. package/esm2022/lib/components/camunda/form/generated/formfield/formfield.model.mjs +0 -17
  325. package/esm2022/lib/components/camunda/form/generated/formfield/long/camunda-long-formfield.component.mjs +0 -30
  326. package/esm2022/lib/components/camunda/form/generated/formfield/string/camunda-string-formfield.component.mjs +0 -30
  327. package/esm2022/lib/components/camunda/form/generated/formfield/textarea/camunda-textarea-formfield.component.mjs +0 -30
  328. package/esm2022/lib/components/camunda/form/generated/formfield/validation/camunda-formfield-validation.component.mjs +0 -35
  329. package/esm2022/lib/components/camunda/form/generated/formfield/validation/date.validators.mjs +0 -55
  330. package/esm2022/lib/components/carbon-list/CarbonListFilterPipe.directive.mjs +0 -34
  331. package/esm2022/lib/components/carbon-list/carbon-list.component.mjs +0 -603
  332. package/esm2022/lib/components/carbon-list/carbon-list.module.mjs +0 -103
  333. package/esm2022/lib/components/carbon-list/no-results/carbon-no-results.component.mjs +0 -71
  334. package/esm2022/lib/components/carbon-list/services/carbon-list-drag-and-drop.service.mjs +0 -165
  335. package/esm2022/lib/components/carbon-list/services/index.mjs +0 -17
  336. package/esm2022/lib/components/carbon-list/tags-modal/tags-modal.component.mjs +0 -35
  337. package/esm2022/lib/components/card/card.component.mjs +0 -34
  338. package/esm2022/lib/components/card/card.module.mjs +0 -33
  339. package/esm2022/lib/components/case-tags-selector/case-tags-selector.component.mjs +0 -80
  340. package/esm2022/lib/components/confirmation-modal/confirmation-modal.component.mjs +0 -119
  341. package/esm2022/lib/components/confirmation-modal/confirmation-modal.module.mjs +0 -50
  342. package/esm2022/lib/components/data-list/data-list.component.mjs +0 -31
  343. package/esm2022/lib/components/data-list/data-list.module.mjs +0 -33
  344. package/esm2022/lib/components/date-picker/date-picker.component.mjs +0 -166
  345. package/esm2022/lib/components/date-picker/date-picker.module.mjs +0 -40
  346. package/esm2022/lib/components/dropzone/dropzone.component.mjs +0 -168
  347. package/esm2022/lib/components/dropzone/dropzone.module.mjs +0 -37
  348. package/esm2022/lib/components/editor/editor.component.mjs +0 -189
  349. package/esm2022/lib/components/editor/editor.module.mjs +0 -34
  350. package/esm2022/lib/components/editor/editor.service.mjs +0 -87
  351. package/esm2022/lib/components/expansion-panel/expansion-panel.component.mjs +0 -41
  352. package/esm2022/lib/components/expansion-panel/expansion-panel.module.mjs +0 -35
  353. package/esm2022/lib/components/field-auto-focus/field-auto-focus.directive.mjs +0 -36
  354. package/esm2022/lib/components/field-auto-focus/field-auto-focus.module.mjs +0 -33
  355. package/esm2022/lib/components/file-size/file-size.module.mjs +0 -33
  356. package/esm2022/lib/components/file-size/file-size.pipe.mjs +0 -42
  357. package/esm2022/lib/components/filter-sidebar/filter-sidebar.component.mjs +0 -46
  358. package/esm2022/lib/components/filter-sidebar/filter-sidebar.module.mjs +0 -33
  359. package/esm2022/lib/components/form/form.component.mjs +0 -146
  360. package/esm2022/lib/components/form/form.module.mjs +0 -33
  361. package/esm2022/lib/components/form-io/form-io-builder.component.mjs +0 -82
  362. package/esm2022/lib/components/form-io/form-io-builder.utils.mjs +0 -53
  363. package/esm2022/lib/components/form-io/form-io-currency/currency-edit-form.mjs +0 -96
  364. package/esm2022/lib/components/form-io/form-io-currency/currency.component.mjs +0 -108
  365. package/esm2022/lib/components/form-io/form-io-currency/currency.formio.mjs +0 -24
  366. package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user-edit-form.mjs +0 -64
  367. package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user.component.mjs +0 -41
  368. package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user.formio.mjs +0 -34
  369. package/esm2022/lib/components/form-io/form-io-dummy/dummy.component.mjs +0 -27
  370. package/esm2022/lib/components/form-io/form-io-dummy/dummy.formio.mjs +0 -20
  371. package/esm2022/lib/components/form-io/form-io-iban/iban.component.mjs +0 -61
  372. package/esm2022/lib/components/form-io/form-io-iban/iban.formio.mjs +0 -22
  373. package/esm2022/lib/components/form-io/form-io-iban/iban.validators.mjs +0 -26
  374. package/esm2022/lib/components/form-io/form-io-resource-selector/form-io-resource-selector.formio.mjs +0 -84
  375. package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader-edit-form.mjs +0 -115
  376. package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader.component.mjs +0 -93
  377. package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader.formio.mjs +0 -49
  378. package/esm2022/lib/components/form-io/form-io.component.mjs +0 -237
  379. package/esm2022/lib/components/form-io/form-io.module.mjs +0 -127
  380. package/esm2022/lib/components/form-io/formio-config.mjs +0 -27
  381. package/esm2022/lib/components/form-io/formio-value-resolver-selector/formio-value-resolver-selector-edit-form.mjs +0 -19
  382. package/esm2022/lib/components/form-io/formio-value-resolver-selector/formio-value-resolver-selector.component.mjs +0 -57
  383. package/esm2022/lib/components/form-io/formio-value-resolver-selector/formio-value-resolver-selector.formio.mjs +0 -42
  384. package/esm2022/lib/components/form-io/services/form-io-dom.service.mjs +0 -38
  385. package/esm2022/lib/components/form-io/services/form-io-local-storage.service.mjs +0 -68
  386. package/esm2022/lib/components/form-io/services/form-io-state.service.mjs +0 -69
  387. package/esm2022/lib/components/input/input.component.mjs +0 -176
  388. package/esm2022/lib/components/input/input.module.mjs +0 -59
  389. package/esm2022/lib/components/input-label/input-label.component.mjs +0 -84
  390. package/esm2022/lib/components/input-label/input-label.module.mjs +0 -55
  391. package/esm2022/lib/components/left-sidebar/left-sidebar.component.mjs +0 -129
  392. package/esm2022/lib/components/left-sidebar/left-sidebar.module.mjs +0 -58
  393. package/esm2022/lib/components/list/ListFilterPipe.directive.mjs +0 -35
  394. package/esm2022/lib/components/list/list.component.mjs +0 -202
  395. package/esm2022/lib/components/list/list.module.mjs +0 -56
  396. package/esm2022/lib/components/menu/menu-item-text.component.mjs +0 -54
  397. package/esm2022/lib/components/menu/menu-routing.module.mjs +0 -33
  398. package/esm2022/lib/components/menu/menu.init.mjs +0 -32
  399. package/esm2022/lib/components/menu/menu.module.mjs +0 -58
  400. package/esm2022/lib/components/menu/menu.service.mjs +0 -247
  401. package/esm2022/lib/components/modal/modal.component.mjs +0 -85
  402. package/esm2022/lib/components/modal/modal.module.mjs +0 -33
  403. package/esm2022/lib/components/multi-input/carbon-multi-input.component.mjs +0 -300
  404. package/esm2022/lib/components/multi-input/carbon-multi-input.module.mjs +0 -86
  405. package/esm2022/lib/components/multi-input/components/arbitrary-amount-value/arbitrary-amount-value.component.mjs +0 -63
  406. package/esm2022/lib/components/multi-input/components/arbitrary-amount-value/index.mjs +0 -17
  407. package/esm2022/lib/components/multi-input/components/index.mjs +0 -23
  408. package/esm2022/lib/components/multi-input/components/key-dropdown-value/index.mjs +0 -17
  409. package/esm2022/lib/components/multi-input/components/key-dropdown-value/key-dropdown-value.component.mjs +0 -71
  410. package/esm2022/lib/components/multi-input/components/key-value/index.mjs +0 -17
  411. package/esm2022/lib/components/multi-input/components/key-value/key-value.component.mjs +0 -62
  412. package/esm2022/lib/components/multi-input/components/key-value-path-selector/index.mjs +0 -17
  413. package/esm2022/lib/components/multi-input/components/key-value-path-selector/key-value-path-selector.component.mjs +0 -82
  414. package/esm2022/lib/components/multi-input/components/single-value/index.mjs +0 -17
  415. package/esm2022/lib/components/multi-input/components/single-value/single-value.component.mjs +0 -49
  416. package/esm2022/lib/components/multi-input/components/value-path-selector-dropdown-value/index.mjs +0 -17
  417. package/esm2022/lib/components/multi-input/components/value-path-selector-dropdown-value/value-path-selector-dropdown-value.component.mjs +0 -92
  418. package/esm2022/lib/components/multi-input/components/value-path-selector-value/index.mjs +0 -17
  419. package/esm2022/lib/components/multi-input/components/value-path-selector-value/value-path-selector-value.component.mjs +0 -82
  420. package/esm2022/lib/components/multi-input-form/default-value.pipe.mjs +0 -33
  421. package/esm2022/lib/components/multi-input-form/multi-input-form.component.mjs +0 -201
  422. package/esm2022/lib/components/multi-input-form/multi-input-form.module.mjs +0 -58
  423. package/esm2022/lib/components/multiselect-dropdown/multiselect-dropdown.component.mjs +0 -52
  424. package/esm2022/lib/components/multiselect-dropdown/multiselect-dropdown.module.mjs +0 -35
  425. package/esm2022/lib/components/page/page-container/page-container.component.mjs +0 -29
  426. package/esm2022/lib/components/page/page-content/page-content.component.mjs +0 -29
  427. package/esm2022/lib/components/page/page-header/page-header.component.mjs +0 -29
  428. package/esm2022/lib/components/page/page-header-actions/page-header-actions.component.mjs +0 -29
  429. package/esm2022/lib/components/page/page-header-introduction/page-header-introduction.component.mjs +0 -29
  430. package/esm2022/lib/components/page/page.module.mjs +0 -60
  431. package/esm2022/lib/components/page-actions/page-actions.component.mjs +0 -82
  432. package/esm2022/lib/components/page-header/page-header.component.mjs +0 -66
  433. package/esm2022/lib/components/page-header/page-header.module.mjs +0 -55
  434. package/esm2022/lib/components/page-subtitle/page-subtitle.component.mjs +0 -53
  435. package/esm2022/lib/components/page-title/page-title.component.mjs +0 -116
  436. package/esm2022/lib/components/page-title/page-title.module.mjs +0 -35
  437. package/esm2022/lib/components/paragraph/paragraph.component.mjs +0 -50
  438. package/esm2022/lib/components/paragraph/paragraph.module.mjs +0 -37
  439. package/esm2022/lib/components/pending-changes/pending-changes.component.mjs +0 -91
  440. package/esm2022/lib/components/pending-changes/pending-changes.service.mjs +0 -37
  441. package/esm2022/lib/components/progress-bar/progress-bar.component.mjs +0 -26
  442. package/esm2022/lib/components/progress-bar/progress-bar.module.mjs +0 -33
  443. package/esm2022/lib/components/prompt/prompt.component.mjs +0 -74
  444. package/esm2022/lib/components/prompt/prompt.module.mjs +0 -39
  445. package/esm2022/lib/components/radio/radio.component.mjs +0 -116
  446. package/esm2022/lib/components/radio/radio.module.mjs +0 -55
  447. package/esm2022/lib/components/right-sidebar/right-sidebar.component.mjs +0 -309
  448. package/esm2022/lib/components/right-sidebar/right-sidebar.module.mjs +0 -98
  449. package/esm2022/lib/components/search-fields/search-fields.component.mjs +0 -241
  450. package/esm2022/lib/components/search-fields/search-fields.module.mjs +0 -90
  451. package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.component.mjs +0 -201
  452. package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.module.mjs +0 -34
  453. package/esm2022/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.mjs +0 -71
  454. package/esm2022/lib/components/searchable-dropdown-select/searchable-dropdown-select.module.mjs +0 -35
  455. package/esm2022/lib/components/select/select.component.mjs +0 -200
  456. package/esm2022/lib/components/select/select.module.mjs +0 -37
  457. package/esm2022/lib/components/spinner/spinner.component.mjs +0 -54
  458. package/esm2022/lib/components/spinner/spinner.module.mjs +0 -35
  459. package/esm2022/lib/components/status-selector/status-selector.component.mjs +0 -86
  460. package/esm2022/lib/components/stepper/stepper-container/stepper-container.component.mjs +0 -91
  461. package/esm2022/lib/components/stepper/stepper-content/stepper-content.component.mjs +0 -52
  462. package/esm2022/lib/components/stepper/stepper-footer/stepper-footer.component.mjs +0 -43
  463. package/esm2022/lib/components/stepper/stepper-footer-step/stepper-footer-step.component.mjs +0 -71
  464. package/esm2022/lib/components/stepper/stepper-header/stepper-header.component.mjs +0 -37
  465. package/esm2022/lib/components/stepper/stepper-step/stepper-step.component.mjs +0 -39
  466. package/esm2022/lib/components/stepper/stepper.module.mjs +0 -68
  467. package/esm2022/lib/components/table/table.component.mjs +0 -172
  468. package/esm2022/lib/components/table/table.module.mjs +0 -58
  469. package/esm2022/lib/components/timeline/timeline.component.mjs +0 -42
  470. package/esm2022/lib/components/timeline/timeline.module.mjs +0 -35
  471. package/esm2022/lib/components/title/title.component.mjs +0 -57
  472. package/esm2022/lib/components/title/title.module.mjs +0 -36
  473. package/esm2022/lib/components/tooltip-icon/tooltip-icon.component.mjs +0 -39
  474. package/esm2022/lib/components/tooltip-icon/tooltip-icon.module.mjs +0 -39
  475. package/esm2022/lib/components/topbar/topbar.component.mjs +0 -127
  476. package/esm2022/lib/components/topbar/topbar.module.mjs +0 -36
  477. package/esm2022/lib/components/uploader/uploader-drag-drop.directive.mjs +0 -58
  478. package/esm2022/lib/components/uploader/uploader.component.mjs +0 -69
  479. package/esm2022/lib/components/uploader/uploader.module.mjs +0 -35
  480. package/esm2022/lib/components/v-card/card.component.mjs +0 -80
  481. package/esm2022/lib/components/v-card/card.module.mjs +0 -38
  482. package/esm2022/lib/components/v-modal/modal.component.mjs +0 -73
  483. package/esm2022/lib/components/v-modal/modal.module.mjs +0 -38
  484. package/esm2022/lib/components/value-path-selector/index.mjs +0 -17
  485. package/esm2022/lib/components/value-path-selector/value-path-selector.component.mjs +0 -317
  486. package/esm2022/lib/components/version/version.service.mjs +0 -38
  487. package/esm2022/lib/components/view-content/type-converters/booleanTypeConverter.mjs +0 -31
  488. package/esm2022/lib/components/view-content/type-converters/currencyTypeConverter.mjs +0 -43
  489. package/esm2022/lib/components/view-content/type-converters/dateTimeTypeConverter.mjs +0 -30
  490. package/esm2022/lib/components/view-content/type-converters/dateTypeConverter.mjs +0 -30
  491. package/esm2022/lib/components/view-content/type-converters/enumTypeConverter.mjs +0 -26
  492. package/esm2022/lib/components/view-content/type-converters/numberTypeConverter.mjs +0 -43
  493. package/esm2022/lib/components/view-content/type-converters/percentTypeConverter.mjs +0 -43
  494. package/esm2022/lib/components/view-content/type-converters/relatedFilesTypeConverter.mjs +0 -24
  495. package/esm2022/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.mjs +0 -27
  496. package/esm2022/lib/components/view-content/type-converters/stringTypeConverter.mjs +0 -28
  497. package/esm2022/lib/components/view-content/type-converters/type-converters.model.mjs +0 -80
  498. package/esm2022/lib/components/view-content/view-content.module.mjs +0 -33
  499. package/esm2022/lib/components/view-content/view-content.service.mjs +0 -49
  500. package/esm2022/lib/components/webcam/webcam.component.mjs +0 -102
  501. package/esm2022/lib/components/webcam/webcam.module.mjs +0 -34
  502. package/esm2022/lib/components/widget/widget.component.mjs +0 -89
  503. package/esm2022/lib/components/widget/widget.module.mjs +0 -33
  504. package/esm2022/lib/constants/carbon.constants.mjs +0 -21
  505. package/esm2022/lib/constants/index.mjs +0 -19
  506. package/esm2022/lib/constants/status.constants.mjs +0 -18
  507. package/esm2022/lib/constants/view-type-converter.constants.mjs +0 -18
  508. package/esm2022/lib/directives/command-click/command-click-directive.module.mjs +0 -33
  509. package/esm2022/lib/directives/command-click/command-click.directive.mjs +0 -52
  510. package/esm2022/lib/directives/digit-only/digit-only.directive.mjs +0 -283
  511. package/esm2022/lib/directives/fit-page/fit-page-directive.module.mjs +0 -33
  512. package/esm2022/lib/directives/fit-page/fit-page.directive.mjs +0 -54
  513. package/esm2022/lib/directives/remove-classnames/remove-classnames.directive.mjs +0 -53
  514. package/esm2022/lib/directives/render-in-page-header/render-in-page-header-directive.module.mjs +0 -33
  515. package/esm2022/lib/directives/render-in-page-header/render-in-page-header.directive.mjs +0 -60
  516. package/esm2022/lib/directives/render-page-header/render-page-header-directive.module.mjs +0 -33
  517. package/esm2022/lib/directives/render-page-header/render-page-header.directive.mjs +0 -56
  518. package/esm2022/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.mjs +0 -33
  519. package/esm2022/lib/directives/render-page-subtitle/render-page-subtitle.directive.mjs +0 -57
  520. package/esm2022/lib/directives/tooltip/tooltip.component.mjs +0 -42
  521. package/esm2022/lib/directives/tooltip/tooltip.directive.mjs +0 -76
  522. package/esm2022/lib/directives/tooltip/tooltip.module.mjs +0 -35
  523. package/esm2022/lib/directives/valtimo-cds-modal/valtimo-cds-modal-directive.module.mjs +0 -33
  524. package/esm2022/lib/directives/valtimo-cds-modal/valtimo-cds-modal.directive.mjs +0 -109
  525. package/esm2022/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button-directive.module.mjs +0 -33
  526. package/esm2022/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button.directive.mjs +0 -82
  527. package/esm2022/lib/guards/index.mjs +0 -17
  528. package/esm2022/lib/guards/pending-changes.guard.mjs +0 -2
  529. package/esm2022/lib/models/alert.model.mjs +0 -30
  530. package/esm2022/lib/models/button.model.mjs +0 -17
  531. package/esm2022/lib/models/carbon-list.model.mjs +0 -31
  532. package/esm2022/lib/models/carbon-pagination.model.mjs +0 -21
  533. package/esm2022/lib/models/carbon-tag.model.mjs +0 -17
  534. package/esm2022/lib/models/carbon-theme.model.mjs +0 -24
  535. package/esm2022/lib/models/choice-field.model.mjs +0 -17
  536. package/esm2022/lib/models/choicefield-value.model.mjs +0 -17
  537. package/esm2022/lib/models/documenten-api-metadata.model.mjs +0 -17
  538. package/esm2022/lib/models/editor.model.mjs +0 -22
  539. package/esm2022/lib/models/form-io.model.mjs +0 -30
  540. package/esm2022/lib/models/form.model.mjs +0 -17
  541. package/esm2022/lib/models/index.mjs +0 -47
  542. package/esm2022/lib/models/input.model.mjs +0 -17
  543. package/esm2022/lib/models/modal.model.mjs +0 -17
  544. package/esm2022/lib/models/multi-input.model.mjs +0 -17
  545. package/esm2022/lib/models/pagination.model.mjs +0 -24
  546. package/esm2022/lib/models/radio.model.mjs +0 -17
  547. package/esm2022/lib/models/right-sidebar.model.mjs +0 -17
  548. package/esm2022/lib/models/searchable-dropdown.model.mjs +0 -17
  549. package/esm2022/lib/models/select.model.mjs +0 -17
  550. package/esm2022/lib/models/sort.model.mjs +0 -17
  551. package/esm2022/lib/models/stepper.model.mjs +0 -17
  552. package/esm2022/lib/models/table.model.mjs +0 -17
  553. package/esm2022/lib/models/theme.model.mjs +0 -30
  554. package/esm2022/lib/models/timeline.model.mjs +0 -52
  555. package/esm2022/lib/models/title.model.mjs +0 -17
  556. package/esm2022/lib/models/topbar.model.mjs +0 -17
  557. package/esm2022/lib/models/value-path-selector.model.mjs +0 -36
  558. package/esm2022/lib/models/version.model.mjs +0 -17
  559. package/esm2022/lib/modules/custom-formio-component/create-custom-component.mjs +0 -162
  560. package/esm2022/lib/modules/custom-formio-component/custom-tags.service.mjs +0 -32
  561. package/esm2022/lib/modules/custom-formio-component/elements.common.mjs +0 -17
  562. package/esm2022/lib/modules/custom-formio-component/index.mjs +0 -20
  563. package/esm2022/lib/modules/custom-formio-component/register-custom-component.mjs +0 -42
  564. package/esm2022/lib/modules/index.mjs +0 -17
  565. package/esm2022/lib/pipes/case-count.pipe.mjs +0 -35
  566. package/esm2022/lib/pipes/components-pipes.module.mjs +0 -31
  567. package/esm2022/lib/pipes/ellipsis.pipe.mjs +0 -16
  568. package/esm2022/lib/pipes/index.mjs +0 -21
  569. package/esm2022/lib/pipes/is-array.pipe.mjs +0 -29
  570. package/esm2022/lib/pipes/menu-item-translation.pipe.mjs +0 -47
  571. package/esm2022/lib/services/cds-theme.service.mjs +0 -100
  572. package/esm2022/lib/services/choice-field.service.mjs +0 -70
  573. package/esm2022/lib/services/index.mjs +0 -29
  574. package/esm2022/lib/services/key-generator.service.mjs +0 -50
  575. package/esm2022/lib/services/key-state.service.mjs +0 -33
  576. package/esm2022/lib/services/modal.service.mjs +0 -148
  577. package/esm2022/lib/services/page-header.service.mjs +0 -93
  578. package/esm2022/lib/services/page-subtitle.service.mjs +0 -46
  579. package/esm2022/lib/services/page-title.service.mjs +0 -121
  580. package/esm2022/lib/services/prompt.service.mjs +0 -205
  581. package/esm2022/lib/services/shell.service.mjs +0 -213
  582. package/esm2022/lib/services/stepper.service.mjs +0 -108
  583. package/esm2022/lib/services/user-interface.service.mjs +0 -47
  584. package/esm2022/lib/services/valtimo-modal.service.mjs +0 -46
  585. package/esm2022/lib/services/value-path-selector.service.mjs +0 -110
  586. package/esm2022/public_api.mjs +0 -227
  587. package/esm2022/valtimo-components.mjs +0 -5
  588. package/lib/components/button/button.component.d.ts +0 -30
  589. package/lib/components/button/button.component.d.ts.map +0 -1
  590. package/lib/components/button/button.module.d.ts +0 -13
  591. package/lib/components/button/button.module.d.ts.map +0 -1
  592. package/lib/components/card/card.component.d.ts +0 -17
  593. package/lib/components/card/card.component.d.ts.map +0 -1
  594. package/lib/components/card/card.module.d.ts +0 -9
  595. package/lib/components/card/card.module.d.ts.map +0 -1
  596. package/lib/components/form-io/form-io-builder.component.d.ts +0 -24
  597. package/lib/components/form-io/form-io-builder.component.d.ts.map +0 -1
  598. package/lib/components/form-io/form-io-builder.utils.d.ts +0 -4
  599. package/lib/components/form-io/form-io-builder.utils.d.ts.map +0 -1
  600. package/lib/components/form-io/form-io-currency/currency-edit-form.d.ts.map +0 -1
  601. package/lib/components/form-io/form-io-currency/currency.component.d.ts.map +0 -1
  602. package/lib/components/form-io/form-io-currency/currency.formio.d.ts.map +0 -1
  603. package/lib/components/form-io/form-io-current-user/form-io-current-user-edit-form.d.ts.map +0 -1
  604. package/lib/components/form-io/form-io-current-user/form-io-current-user.component.d.ts.map +0 -1
  605. package/lib/components/form-io/form-io-current-user/form-io-current-user.formio.d.ts.map +0 -1
  606. package/lib/components/form-io/form-io-dummy/dummy.component.d.ts.map +0 -1
  607. package/lib/components/form-io/form-io-dummy/dummy.formio.d.ts.map +0 -1
  608. package/lib/components/form-io/form-io-iban/iban.component.d.ts.map +0 -1
  609. package/lib/components/form-io/form-io-iban/iban.formio.d.ts.map +0 -1
  610. package/lib/components/form-io/form-io-iban/iban.validators.d.ts.map +0 -1
  611. package/lib/components/form-io/form-io-resource-selector/form-io-resource-selector.formio.d.ts.map +0 -1
  612. package/lib/components/form-io/form-io-uploader/form-io-uploader-edit-form.d.ts.map +0 -1
  613. package/lib/components/form-io/form-io-uploader/form-io-uploader.component.d.ts.map +0 -1
  614. package/lib/components/form-io/form-io-uploader/form-io-uploader.formio.d.ts.map +0 -1
  615. package/lib/components/form-io/form-io.component.d.ts.map +0 -1
  616. package/lib/components/form-io/formio-value-resolver-selector/formio-value-resolver-selector-edit-form.d.ts.map +0 -1
  617. package/lib/components/form-io/formio-value-resolver-selector/formio-value-resolver-selector.component.d.ts.map +0 -1
  618. package/lib/components/form-io/formio-value-resolver-selector/formio-value-resolver-selector.formio.d.ts.map +0 -1
  619. package/lib/components/list/ListFilterPipe.directive.d.ts +0 -8
  620. package/lib/components/list/ListFilterPipe.directive.d.ts.map +0 -1
  621. package/lib/components/list/list.component.d.ts +0 -51
  622. package/lib/components/list/list.component.d.ts.map +0 -1
  623. package/lib/components/list/list.module.d.ts +0 -15
  624. package/lib/components/list/list.module.d.ts.map +0 -1
  625. package/lib/components/menu/menu.service.d.ts.map +0 -1
  626. package/lib/components/page/page-container/page-container.component.d.ts +0 -9
  627. package/lib/components/page/page-container/page-container.component.d.ts.map +0 -1
  628. package/lib/components/page/page-content/page-content.component.d.ts +0 -9
  629. package/lib/components/page/page-content/page-content.component.d.ts.map +0 -1
  630. package/lib/components/page/page-header/page-header.component.d.ts +0 -9
  631. package/lib/components/page/page-header/page-header.component.d.ts.map +0 -1
  632. package/lib/components/page/page-header-actions/page-header-actions.component.d.ts +0 -9
  633. package/lib/components/page/page-header-actions/page-header-actions.component.d.ts.map +0 -1
  634. package/lib/components/page/page-header-introduction/page-header-introduction.component.d.ts +0 -9
  635. package/lib/components/page/page-header-introduction/page-header-introduction.component.d.ts.map +0 -1
  636. package/lib/components/page/page.module.d.ts +0 -16
  637. package/lib/components/page/page.module.d.ts.map +0 -1
  638. package/lib/components/title/title.component.d.ts +0 -19
  639. package/lib/components/title/title.component.d.ts.map +0 -1
  640. package/lib/components/title/title.module.d.ts +0 -12
  641. package/lib/components/title/title.module.d.ts.map +0 -1
  642. package/lib/components/v-card/card.component.d.ts +0 -23
  643. package/lib/components/v-card/card.component.d.ts.map +0 -1
  644. package/lib/components/v-card/card.module.d.ts +0 -14
  645. package/lib/components/v-card/card.module.d.ts.map +0 -1
  646. package/lib/directives/command-click/command-click-directive.module.d.ts +0 -9
  647. package/lib/directives/command-click/command-click-directive.module.d.ts.map +0 -1
  648. package/lib/directives/command-click/command-click.directive.d.ts.map +0 -1
  649. package/lib/directives/fit-page/fit-page-directive.module.d.ts +0 -9
  650. package/lib/directives/fit-page/fit-page-directive.module.d.ts.map +0 -1
  651. package/lib/directives/render-in-page-header/render-in-page-header-directive.module.d.ts +0 -9
  652. package/lib/directives/render-in-page-header/render-in-page-header-directive.module.d.ts.map +0 -1
  653. package/lib/directives/render-page-header/render-page-header-directive.module.d.ts +0 -9
  654. package/lib/directives/render-page-header/render-page-header-directive.module.d.ts.map +0 -1
  655. package/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.d.ts +0 -9
  656. package/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.d.ts.map +0 -1
  657. package/lib/directives/valtimo-cds-modal/valtimo-cds-modal-directive.module.d.ts +0 -9
  658. package/lib/directives/valtimo-cds-modal/valtimo-cds-modal-directive.module.d.ts.map +0 -1
  659. package/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button-directive.module.d.ts +0 -9
  660. package/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button-directive.module.d.ts.map +0 -1
  661. package/lib/modules/custom-formio-component/custom-tags.service.d.ts +0 -8
  662. package/lib/modules/custom-formio-component/custom-tags.service.d.ts.map +0 -1
  663. /package/lib/components/form-io/{form-io-currency → components/form-io-currency}/currency-edit-form.d.ts +0 -0
  664. /package/lib/components/form-io/{form-io-currency → components/form-io-currency}/currency.formio.d.ts +0 -0
  665. /package/lib/components/form-io/{form-io-current-user → components/form-io-current-user}/form-io-current-user-edit-form.d.ts +0 -0
  666. /package/lib/components/form-io/{form-io-current-user → components/form-io-current-user}/form-io-current-user.formio.d.ts +0 -0
  667. /package/lib/components/form-io/{form-io-dummy → components/form-io-dummy}/dummy.formio.d.ts +0 -0
  668. /package/lib/components/form-io/{form-io-iban → components/form-io-iban}/iban.formio.d.ts +0 -0
  669. /package/lib/components/form-io/{form-io-iban → components/form-io-iban}/iban.validators.d.ts +0 -0
  670. /package/lib/components/form-io/{form-io-resource-selector → components/form-io-resource-selector}/form-io-resource-selector.formio.d.ts +0 -0
  671. /package/lib/components/form-io/{form-io-uploader → components/form-io-uploader}/form-io-uploader-edit-form.d.ts +0 -0
  672. /package/lib/components/form-io/{form-io-uploader → components/form-io-uploader}/form-io-uploader.formio.d.ts +0 -0
  673. /package/lib/components/form-io/{formio-value-resolver-selector → components/formio-value-resolver-selector}/formio-value-resolver-selector-edit-form.d.ts +0 -0
  674. /package/lib/components/form-io/{formio-value-resolver-selector → components/formio-value-resolver-selector}/formio-value-resolver-selector.formio.d.ts +0 -0
@@ -1,205 +0,0 @@
1
- /*
2
- * Copyright 2015-2024 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Injectable } from '@angular/core';
17
- import { BehaviorSubject, combineLatest } from 'rxjs';
18
- import { take } from 'rxjs/operators';
19
- import * as i0 from "@angular/core";
20
- export class PromptService {
21
- constructor() {
22
- this._promptVisible$ = new BehaviorSubject(false);
23
- this._appearing$ = new BehaviorSubject(false);
24
- this._disappearing$ = new BehaviorSubject(false);
25
- this._appearingDelayMs$ = new BehaviorSubject(140);
26
- this._identifier$ = new BehaviorSubject('');
27
- this._headerText$ = new BehaviorSubject('');
28
- this._bodyText$ = new BehaviorSubject('');
29
- this._cancelText$ = new BehaviorSubject('');
30
- this._confirmText$ = new BehaviorSubject('');
31
- this._cancelMdiIcon$ = new BehaviorSubject('');
32
- this._confirmMdiIcon$ = new BehaviorSubject('');
33
- this._cancelButtonType$ = new BehaviorSubject('primary');
34
- this._confirmButtonType$ = new BehaviorSubject('primary');
35
- this._closeOnConfirm$ = new BehaviorSubject(false);
36
- this._closeOnCancel$ = new BehaviorSubject(false);
37
- this._closeButtonVisible$ = new BehaviorSubject(false);
38
- this._cancelCallbackFunction$ = new BehaviorSubject(() => { });
39
- this._confirmCallbackFunction$ = new BehaviorSubject(() => { });
40
- this._closeCallbackFunction$ = new BehaviorSubject(() => { });
41
- }
42
- get promptVisible$() {
43
- return this._promptVisible$.asObservable();
44
- }
45
- get appearing$() {
46
- return this._appearing$.asObservable();
47
- }
48
- get disappearing$() {
49
- return this._disappearing$.asObservable();
50
- }
51
- get appearingDelayMs$() {
52
- return this._appearingDelayMs$.asObservable();
53
- }
54
- get appearingDelayMs() {
55
- return this._appearingDelayMs$.getValue();
56
- }
57
- get identifier$() {
58
- return this._identifier$.asObservable();
59
- }
60
- get headerText$() {
61
- return this._headerText$.asObservable();
62
- }
63
- get bodyText$() {
64
- return this._bodyText$.asObservable();
65
- }
66
- get cancelText$() {
67
- return this._cancelText$.asObservable();
68
- }
69
- get confirmText$() {
70
- return this._confirmText$.asObservable();
71
- }
72
- get cancelMdiIcon$() {
73
- return this._cancelMdiIcon$.asObservable();
74
- }
75
- get confirmMdiIcon$() {
76
- return this._confirmMdiIcon$.asObservable();
77
- }
78
- get cancelButtonType$() {
79
- return this._cancelButtonType$.asObservable();
80
- }
81
- get confirmButtonType$() {
82
- return this._confirmButtonType$.asObservable();
83
- }
84
- get closeButtonVisible$() {
85
- return this._closeButtonVisible$.asObservable();
86
- }
87
- openPrompt(promptParameters) {
88
- if (promptParameters.identifier)
89
- this._identifier$.next(promptParameters.identifier);
90
- this._headerText$.next(promptParameters.headerText);
91
- this._bodyText$.next(promptParameters.bodyText);
92
- this._cancelText$.next(promptParameters.cancelButtonText);
93
- this._confirmText$.next(promptParameters.confirmButtonText);
94
- if (promptParameters.cancelMdiIcon)
95
- this._cancelMdiIcon$.next(promptParameters.cancelMdiIcon);
96
- if (promptParameters.confirmMdiIcon)
97
- this._confirmMdiIcon$.next(promptParameters.confirmMdiIcon);
98
- if (promptParameters.cancelButtonType)
99
- this._cancelButtonType$.next(promptParameters.cancelButtonType);
100
- if (promptParameters.confirmButtonType)
101
- this._confirmButtonType$.next(promptParameters.confirmButtonType);
102
- if (promptParameters.closeOnConfirm)
103
- this._closeOnConfirm$.next(promptParameters.closeOnConfirm);
104
- if (promptParameters.closeOnCancel)
105
- this._closeOnCancel$.next(promptParameters.closeOnCancel);
106
- if (promptParameters.closeButtonVisible)
107
- this._closeButtonVisible$.next(promptParameters.closeButtonVisible);
108
- if (promptParameters.cancelCallbackFunction)
109
- this._cancelCallbackFunction$.next(promptParameters.cancelCallbackFunction);
110
- if (promptParameters.confirmCallBackFunction)
111
- this._confirmCallbackFunction$.next(promptParameters.confirmCallBackFunction);
112
- if (promptParameters.closeCallBackFunction)
113
- this._closeCallbackFunction$.next(promptParameters.closeCallBackFunction);
114
- this._promptVisible$.next(true);
115
- this._appearing$.next(true);
116
- this.setAppearingTimeout();
117
- }
118
- setAppearingDelay(appearingDelayMs) {
119
- this._appearingDelayMs$.next(appearingDelayMs);
120
- }
121
- setBodyText(bodyText) {
122
- this._bodyText$.next(bodyText);
123
- }
124
- confirm() {
125
- combineLatest([this._closeOnConfirm$, this._confirmCallbackFunction$])
126
- .pipe(take(1))
127
- .subscribe(([closeOnConfirm, confirmCallback]) => {
128
- if (closeOnConfirm) {
129
- this.closePrompt(confirmCallback);
130
- }
131
- else if (confirmCallback) {
132
- confirmCallback();
133
- }
134
- });
135
- }
136
- cancel() {
137
- combineLatest([this._closeOnCancel$, this._cancelCallbackFunction$])
138
- .pipe(take(1))
139
- .subscribe(([closeOnCancel, cancelCallback]) => {
140
- if (closeOnCancel) {
141
- this.closePrompt(cancelCallback);
142
- }
143
- else if (cancelCallback) {
144
- cancelCallback();
145
- }
146
- });
147
- }
148
- close() {
149
- combineLatest([this._closeButtonVisible$, this._closeCallbackFunction$])
150
- .pipe(take(1))
151
- .subscribe(([closeButtonVisible, cancelCallback]) => {
152
- if (closeButtonVisible) {
153
- this.closePrompt(cancelCallback);
154
- }
155
- });
156
- }
157
- closePrompt(callBackFunction) {
158
- if (callBackFunction) {
159
- callBackFunction();
160
- }
161
- this._disappearing$.next(true);
162
- this.setDisappearingTimeout();
163
- this._promptVisible$.next(false);
164
- }
165
- setAppearingTimeout() {
166
- this._appearingDelayMs$.pipe(take(1)).subscribe(appearingDelayMs => {
167
- setTimeout(() => {
168
- this._appearing$.next(false);
169
- }, appearingDelayMs);
170
- });
171
- }
172
- setDisappearingTimeout() {
173
- this._appearingDelayMs$.pipe(take(1)).subscribe(appearingDelayMs => {
174
- setTimeout(() => {
175
- this._disappearing$.next(false);
176
- this.clear();
177
- }, appearingDelayMs);
178
- });
179
- }
180
- clear() {
181
- this._identifier$.next('');
182
- this._headerText$.next('');
183
- this._bodyText$.next('');
184
- this._cancelText$.next('');
185
- this._confirmText$.next('');
186
- this._cancelMdiIcon$.next('');
187
- this._confirmMdiIcon$.next('');
188
- this._cancelButtonType$.next('primary');
189
- this._confirmButtonType$.next('primary');
190
- this._closeOnCancel$.next(false);
191
- this._closeOnConfirm$.next(false);
192
- this._cancelCallbackFunction$.next(() => { });
193
- this._confirmCallbackFunction$.next(() => { });
194
- this._closeCallbackFunction$.next(() => { });
195
- }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PromptService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
197
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PromptService, providedIn: 'root' }); }
198
- }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PromptService, decorators: [{
200
- type: Injectable,
201
- args: [{
202
- providedIn: 'root',
203
- }]
204
- }] });
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbXB0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlcy9wcm9tcHQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBYyxhQUFhLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDOztBQU1wQyxNQUFNLE9BQU8sYUFBYTtJQUgxQjtRQUltQixvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3RELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbEQsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNyRCx1QkFBa0IsR0FBRyxJQUFJLGVBQWUsQ0FBUyxHQUFHLENBQUMsQ0FBQztRQUN0RCxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDL0MsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDL0Msa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNoRCxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELHFCQUFnQixHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ25ELHVCQUFrQixHQUFHLElBQUks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LElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQzsrR0FsTlUsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0J1dHRvblR5cGV9IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9tcHRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfcHJvbXB0VmlzaWJsZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYXBwZWFyaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kaXNhcHBlYXJpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FwcGVhcmluZ0RlbGF5TXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDE0MCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2lkZW50aWZpZXIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaGVhZGVyVGV4dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9ib2R5VGV4dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jYW5jZWxUZXh0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbmZpcm1UZXh0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NhbmNlbE1kaUljb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29uZmlybU1kaUljb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2FuY2VsQnV0dG9uVHlwZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJ1dHRvblR5cGU+KCdwcmltYXJ5Jyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbmZpcm1CdXR0b25UeXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QnV0dG9uVHlwZT4oJ3ByaW1hcnknKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2xvc2VPbkNvbmZpcm0kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Nsb3NlT25DYW5jZWwkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Nsb3NlQnV0dG9uVmlzaWJsZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2FuY2VsQ2FsbGJhY2tGdW5jdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PCgpID0+IHZvaWQ+KCgpID0+IHt9KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29uZmlybUNhbGxiYWNrRnVuY3Rpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDwoKSA9PiB2b2lkPigoKSA9PiB7fSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Nsb3NlQ2FsbGJhY2tGdW5jdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PCgpID0+IHZvaWQ+KCgpID0+IHt9KTtcblxuICBnZXQgcHJvbXB0VmlzaWJsZSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Byb21wdFZpc2libGUkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGFwcGVhcmluZyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FwcGVhcmluZyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgZGlzYXBwZWFyaW5nJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYXBwZWFyaW5nJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBhcHBlYXJpbmdEZWxheU1zJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYXBwZWFyaW5nRGVsYXlNcyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgYXBwZWFyaW5nRGVsYXlNcygpIHtcbiAgICByZXR1cm4gdGhpcy5fYXBwZWFyaW5nRGVsYXlNcyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIGdldCBpZGVudGlmaWVyJCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLl9pZGVudGlmaWVyJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBoZWFkZXJUZXh0JCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLl9oZWFkZXJUZXh0JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBib2R5VGV4dCQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5fYm9keVRleHQkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGNhbmNlbFRleHQkKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NhbmNlbFRleHQkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGNvbmZpcm1UZXh0JCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLl9jb25maXJtVGV4dCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY2FuY2VsTWRpSWNvbiQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5fY2FuY2VsTWRpSWNvbiQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY29uZmlybU1kaUljb24kKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpcm1NZGlJY29uJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBjYW5jZWxCdXR0b25UeXBlJCgpOiBPYnNlcnZhYmxlPEJ1dHRvblR5cGU+IHtcbiAgICByZXR1cm4gdGhpcy5fY2FuY2VsQnV0dG9uVHlwZSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY29uZmlybUJ1dHRvblR5cGUkKCk6IE9ic2VydmFibGU8QnV0dG9uVHlwZT4ge1xuICAgIHJldHVybiB0aGlzLl9jb25maXJtQnV0dG9uVHlwZSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY2xvc2VCdXR0b25WaXNpYmxlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fY2xvc2VCdXR0b25WaXNpYmxlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIG9wZW5Qcm9tcHQocHJvbXB0UGFyYW1ldGVyczoge1xuICAgIGlkZW50aWZpZXI/OiBzdHJpbmc7XG4gICAgaGVhZGVyVGV4dDogc3RyaW5nO1xuICAgIGJvZHlUZXh0OiBzdHJpbmc7XG4gICAgY2FuY2VsQnV0dG9uVGV4dDogc3RyaW5nO1xuICAgIGNvbmZpcm1CdXR0b25UZXh0OiBzdHJpbmc7XG4gICAgY2FuY2VsTWRpSWNvbj86IHN0cmluZztcbiAgICBjb25maXJtTWRpSWNvbj86IHN0cmluZztcbiAgICBjYW5jZWxCdXR0b25UeXBlPzogQnV0dG9uVHlwZTtcbiAgICBjb25maXJtQnV0dG9uVHlwZT86IEJ1dHRvblR5cGU7XG4gICAgY2xvc2VPbkNvbmZpcm0/OiBib29sZWFuO1xuICAgIGNsb3NlT25DYW5jZWw/OiBib29sZWFuO1xuICAgIGNsb3NlQnV0dG9uVmlzaWJsZT86IGJvb2xlYW47XG4gICAgY2FuY2VsQ2FsbGJhY2tGdW5jdGlvbj86ICgpID0+IHZvaWQ7XG4gICAgY29uZmlybUNhbGxCYWNrRnVuY3Rpb24/OiAoKSA9PiB2b2lkO1xuICAgIGNsb3NlQ2FsbEJhY2tGdW5jdGlvbj86ICgpID0+IHZvaWQ7XG4gIH0pOiB2b2lkIHtcbiAgICBpZiAocHJvbXB0UGFyYW1ldGVycy5pZGVudGlmaWVyKSB0aGlzLl9pZGVudGlmaWVyJC5uZXh0KHByb21wdFBhcmFtZXRlcnMuaWRlbnRpZmllcik7XG4gICAgdGhpcy5faGVhZGVyVGV4dCQubmV4dChwcm9tcHRQYXJhbWV0ZXJzLmhlYWRlclRleHQpO1xuICAgIHRoaXMuX2JvZHlUZXh0JC5uZXh0KHByb21wdFBhcmFtZXRlcnMuYm9keVRleHQpO1xuICAgIHRoaXMuX2NhbmNlbFRleHQkLm5leHQocHJvbXB0UGFyYW1ldGVycy5jYW5jZWxCdXR0b25UZXh0KTtcbiAgICB0aGlzLl9jb25maXJtVGV4dCQubmV4dChwcm9tcHRQYXJhbWV0ZXJzLmNvbmZpcm1CdXR0b25UZXh0KTtcbiAgICBpZiAocHJvbXB0UGFyYW1ldGVycy5jYW5jZWxNZGlJY29uKSB0aGlzLl9jYW5jZWxNZGlJY29uJC5uZXh0KHByb21wdFBhcmFtZXRlcnMuY2FuY2VsTWRpSWNvbik7XG4gICAgaWYgKHByb21wdFBhcmFtZXRlcnMuY29uZmlybU1kaUljb24pXG4gICAgICB0aGlzLl9jb25maXJtTWRpSWNvbiQubmV4dChwcm9tcHRQYXJhbWV0ZXJzLmNvbmZpcm1NZGlJY29uKTtcbiAgICBpZiAocHJvbXB0UGFyYW1ldGVycy5jYW5jZWxCdXR0b25UeXBlKVxuICAgICAgdGhpcy5fY2FuY2VsQnV0dG9uVHlwZSQubmV4dChwcm9tcHRQYXJhbWV0ZXJzLmNhbmNlbEJ1dHRvblR5cGUpO1xuICAgIGlmIChwcm9tcHRQYXJhbWV0ZXJzLmNvbmZpcm1CdXR0b25UeXBlKVxuICAgICAgdGhpcy5fY29uZmlybUJ1dHRvblR5cGUkLm5leHQocHJvbXB0UGFyYW1ldGVycy5jb25maXJtQnV0dG9uVHlwZSk7XG4gICAgaWYgKHByb21wdFBhcmFtZXRlcnMuY2xvc2VPbkNvbmZpcm0pXG4gICAgICB0aGlzLl9jbG9zZU9uQ29uZmlybSQubmV4dChwcm9tcHRQYXJhbWV0ZXJzLmNsb3NlT25Db25maXJtKTtcbiAgICBpZiAocHJvbXB0UGFyYW1ldGVycy5jbG9zZU9uQ2FuY2VsKSB0aGlzLl9jbG9zZU9uQ2FuY2VsJC5uZXh0KHByb21wdFBhcmFtZXRlcnMuY2xvc2VPbkNhbmNlbCk7XG4gICAgaWYgKHByb21wdFBhcmFtZXRlcnMuY2xvc2VCdXR0b25WaXNpYmxlKVxuICAgICAgdGhpcy5fY2xvc2VCdXR0b25WaXNpYmxlJC5uZXh0KHByb21wdFBhcmFtZXRlcnMuY2xvc2VCdXR0b25WaXNpYmxlKTtcbiAgICBpZiAocHJvbXB0UGFyYW1ldGVycy5jYW5jZWxDYWxsYmFja0Z1bmN0aW9uKVxuICAgICAgdGhpcy5fY2FuY2VsQ2FsbGJhY2tGdW5jdGlvbiQubmV4dChwcm9tcHRQYXJhbWV0ZXJzLmNhbmNlbENhbGxiYWNrRnVuY3Rpb24pO1xuICAgIGlmIChwcm9tcHRQYXJhbWV0ZXJzLmNvbmZpcm1DYWxsQmFja0Z1bmN0aW9uKVxuICAgICAgdGhpcy5fY29uZmlybUNhbGxiYWNrRnVuY3Rpb24kLm5leHQocHJvbXB0UGFyYW1ldGVycy5jb25maXJtQ2FsbEJhY2tGdW5jdGlvbik7XG4gICAgaWYgKHByb21wdFBhcmFtZXRlcnMuY2xvc2VDYWxsQmFja0Z1bmN0aW9uKVxuICAgICAgdGhpcy5fY2xvc2VDYWxsYmFja0Z1bmN0aW9uJC5uZXh0KHByb21wdFBhcmFtZXRlcnMuY2xvc2VDYWxsQmFja0Z1bmN0aW9uKTtcblxuICAgIHRoaXMuX3Byb21wdFZpc2libGUkLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5fYXBwZWFyaW5nJC5uZXh0KHRydWUpO1xuICAgIHRoaXMuc2V0QXBwZWFyaW5nVGltZW91dCgpO1xuICB9XG5cbiAgc2V0QXBwZWFyaW5nRGVsYXkoYXBwZWFyaW5nRGVsYXlNczogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fYXBwZWFyaW5nRGVsYXlNcyQubmV4dChhcHBlYXJpbmdEZWxheU1zKTtcbiAgfVxuXG4gIHNldEJvZHlUZXh0KGJvZHlUZXh0OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9ib2R5VGV4dCQubmV4dChib2R5VGV4dCk7XG4gIH1cblxuICBjb25maXJtKCk6IHZvaWQge1xuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuX2Nsb3NlT25Db25maXJtJCwgdGhpcy5fY29uZmlybUNhbGxiYWNrRnVuY3Rpb24kXSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChbY2xvc2VPbkNvbmZpcm0sIGNvbmZpcm1DYWxsYmFja10pID0+IHtcbiAgICAgICAgaWYgKGNsb3NlT25Db25maXJtKSB7XG4gICAgICAgICAgdGhpcy5jbG9zZVByb21wdChjb25maXJtQ2FsbGJhY2spO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbmZpcm1DYWxsYmFjaykge1xuICAgICAgICAgIGNvbmZpcm1DYWxsYmFjaygpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIGNhbmNlbCgpOiB2b2lkIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLl9jbG9zZU9uQ2FuY2VsJCwgdGhpcy5fY2FuY2VsQ2FsbGJhY2tGdW5jdGlvbiRdKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKFtjbG9zZU9uQ2FuY2VsLCBjYW5jZWxDYWxsYmFja10pID0+IHtcbiAgICAgICAgaWYgKGNsb3NlT25DYW5jZWwpIHtcbiAgICAgICAgICB0aGlzLmNsb3NlUHJvbXB0KGNhbmNlbENhbGxiYWNrKTtcbiAgICAgICAgfSBlbHNlIGlmIChjYW5jZWxDYWxsYmFjaykge1xuICAgICAgICAgIGNhbmNlbENhbGxiYWNrKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5fY2xvc2VCdXR0b25WaXNpYmxlJCwgdGhpcy5fY2xvc2VDYWxsYmFja0Z1bmN0aW9uJF0pXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoW2Nsb3NlQnV0dG9uVmlzaWJsZSwgY2FuY2VsQ2FsbGJhY2tdKSA9PiB7XG4gICAgICAgIGlmIChjbG9zZUJ1dHRvblZpc2libGUpIHtcbiAgICAgICAgICB0aGlzLmNsb3NlUHJvbXB0KGNhbmNlbENhbGxiYWNrKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNsb3NlUHJvbXB0KGNhbGxCYWNrRnVuY3Rpb24/OiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgaWYgKGNhbGxCYWNrRnVuY3Rpb24pIHtcbiAgICAgIGNhbGxCYWNrRnVuY3Rpb24oKTtcbiAgICB9XG4gICAgdGhpcy5fZGlzYXBwZWFyaW5nJC5uZXh0KHRydWUpO1xuICAgIHRoaXMuc2V0RGlzYXBwZWFyaW5nVGltZW91dCgpO1xuICAgIHRoaXMuX3Byb21wdFZpc2libGUkLm5leHQoZmFsc2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRBcHBlYXJpbmdUaW1lb3V0KCk6IHZvaWQge1xuICAgIHRoaXMuX2FwcGVhcmluZ0RlbGF5TXMkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGFwcGVhcmluZ0RlbGF5TXMgPT4ge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuX2FwcGVhcmluZyQubmV4dChmYWxzZSk7XG4gICAgICB9LCBhcHBlYXJpbmdEZWxheU1zKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RGlzYXBwZWFyaW5nVGltZW91dCgpOiB2b2lkIHtcbiAgICB0aGlzLl9hcHBlYXJpbmdEZWxheU1zJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShhcHBlYXJpbmdEZWxheU1zID0+IHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLl9kaXNhcHBlYXJpbmckLm5leHQoZmFsc2UpO1xuICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICB9LCBhcHBlYXJpbmdEZWxheU1zKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5faWRlbnRpZmllciQubmV4dCgnJyk7XG4gICAgdGhpcy5faGVhZGVyVGV4dCQubmV4dCgnJyk7XG4gICAgdGhpcy5fYm9keVRleHQkLm5leHQoJycpO1xuICAgIHRoaXMuX2NhbmNlbFRleHQkLm5leHQoJycpO1xuICAgIHRoaXMuX2NvbmZpcm1UZXh0JC5uZXh0KCcnKTtcbiAgICB0aGlzLl9jYW5jZWxNZGlJY29uJC5uZXh0KCcnKTtcbiAgICB0aGlzLl9jb25maXJtTWRpSWNvbiQubmV4dCgnJyk7XG4gICAgdGhpcy5fY2FuY2VsQnV0dG9uVHlwZSQubmV4dCgncHJpbWFyeScpO1xuICAgIHRoaXMuX2NvbmZpcm1CdXR0b25UeXBlJC5uZXh0KCdwcmltYXJ5Jyk7XG4gICAgdGhpcy5fY2xvc2VPbkNhbmNlbCQubmV4dChmYWxzZSk7XG4gICAgdGhpcy5fY2xvc2VPbkNvbmZpcm0kLm5leHQoZmFsc2UpO1xuICAgIHRoaXMuX2NhbmNlbENhbGxiYWNrRnVuY3Rpb24kLm5leHQoKCkgPT4ge30pO1xuICAgIHRoaXMuX2NvbmZpcm1DYWxsYmFja0Z1bmN0aW9uJC5uZXh0KCgpID0+IHt9KTtcbiAgICB0aGlzLl9jbG9zZUNhbGxiYWNrRnVuY3Rpb24kLm5leHQoKCkgPT4ge30pO1xuICB9XG59XG4iXX0=
@@ -1,213 +0,0 @@
1
- /*
2
- * Copyright 2015-2024 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Injectable } from '@angular/core';
17
- import { BehaviorSubject, combineLatest, fromEvent, map, Subject, } from 'rxjs';
18
- import { debounceTime, take } from 'rxjs/operators';
19
- import * as i0 from "@angular/core";
20
- import * as i1 from "@valtimo/config";
21
- export class ShellService {
22
- get sideBarExpanded$() {
23
- return this._sideBarExpanded$.asObservable();
24
- }
25
- get panelExpanded$() {
26
- return this._panelExpanded$.asObservable();
27
- }
28
- get largeScreen$() {
29
- return this._largeScreen$.asObservable();
30
- }
31
- get mouseOnTopBar$() {
32
- return this._mouseOnTopBar$.asObservable();
33
- }
34
- get sidenavWidth$() {
35
- return this._sidenavWidth$.asObservable();
36
- }
37
- get collapsibleWidescreenMenu$() {
38
- return this._collapsibleWidescreenMenu$.asObservable();
39
- }
40
- get mainContentResized$() {
41
- return this._mainContentResized$.asObservable();
42
- }
43
- constructor(rendererFactory2, configService) {
44
- this.rendererFactory2 = rendererFactory2;
45
- this.configService = configService;
46
- this._sideBarExpanded$ = new BehaviorSubject(true);
47
- this._panelExpanded$ = new BehaviorSubject(false);
48
- this._largeScreen$ = new BehaviorSubject(true);
49
- this._mouseOnTopBar$ = new BehaviorSubject(false);
50
- this._sidenavWidth$ = new BehaviorSubject(300);
51
- this._sidenavElement$ = new BehaviorSubject(undefined);
52
- this._contentElement$ = new BehaviorSubject(undefined);
53
- this._resizeBorderElement$ = new BehaviorSubject(undefined);
54
- this._mouseX$ = fromEvent(document.body, 'mousemove').pipe(map((e) => e.pageX));
55
- this._isResizing$ = new BehaviorSubject(false);
56
- this._collapsibleWidescreenMenu$ = new BehaviorSubject(false);
57
- this._mainContentResized$ = new Subject();
58
- this.renderer = rendererFactory2.createRenderer(null, null);
59
- this.openSidenavSizeSubscription();
60
- this.openMouseSubscriptions();
61
- this.initMenuWidth(configService.config);
62
- }
63
- ngOnDestroy() {
64
- this.sidenavSizeSubscription.unsubscribe();
65
- }
66
- toggleSideBar() {
67
- const isExpanded = this._sideBarExpanded$.getValue();
68
- this._sideBarExpanded$.next(!isExpanded);
69
- }
70
- collapseSideBar() {
71
- this._sideBarExpanded$.next(false);
72
- }
73
- togglePanel() {
74
- const isExpanded = this._panelExpanded$.getValue();
75
- this._panelExpanded$.next(!isExpanded);
76
- }
77
- setPanelExpanded(isExpanded) {
78
- this._panelExpanded$.next(isExpanded);
79
- }
80
- setSideBarExpanded(isExpanded) {
81
- this._sideBarExpanded$.next(isExpanded);
82
- }
83
- setLargeScreen(isLarge) {
84
- this._largeScreen$.next(isLarge);
85
- }
86
- setMouseOnTopBar(mouseOnTopBar) {
87
- this._mouseOnTopBar$.next(mouseOnTopBar);
88
- }
89
- setSidenavElement(element) {
90
- this._sidenavElement$.next(element);
91
- this.createResizeBorderElement(element);
92
- }
93
- setContentElement(element) {
94
- this._contentElement$.next(element);
95
- }
96
- setCollapsibleWidescreenMenu(collapsible) {
97
- this._collapsibleWidescreenMenu$.next(collapsible);
98
- if (collapsible) {
99
- this.collapseSideBar();
100
- }
101
- }
102
- onMainContentResize() {
103
- this._mainContentResized$.next(null);
104
- }
105
- createResizeBorderElement(sidenavElement) {
106
- const borderElement = this.renderer.createElement('div');
107
- this.renderer.addClass(borderElement, 'resize-border');
108
- this.renderer.appendChild(sidenavElement, borderElement);
109
- this._resizeBorderElement$.next(borderElement);
110
- this.renderer.listen(borderElement, 'mouseenter', () => {
111
- this.renderer.addClass(borderElement, 'resize-hover');
112
- });
113
- this.renderer.listen(borderElement, 'mouseleave', () => {
114
- this._isResizing$.pipe(take(1)).subscribe(isResizing => {
115
- if (!isResizing) {
116
- this.renderer.removeClass(borderElement, 'resize-hover');
117
- }
118
- });
119
- });
120
- this.renderer.listen(borderElement, 'mousedown', (event) => {
121
- this._sidenavWidth$.pipe(take(1)).subscribe(sidenavWidth => {
122
- this.sidenavWidthOnClick = sidenavWidth;
123
- this.xOnClick = event.pageX;
124
- this._isResizing$.next(true);
125
- this.renderer.setStyle(document.body, 'user-select', 'none');
126
- this.renderer.setStyle(document.body, 'cursor', 'col-resize');
127
- this.renderer.setStyle(document.querySelector('.cds--side-nav__navigation'), 'pointer-events', 'none');
128
- this.renderer.setStyle(document.querySelector('.main-content'), 'pointer-events', 'none');
129
- });
130
- });
131
- }
132
- openSidenavSizeSubscription() {
133
- this.sidenavSizeSubscription = combineLatest([
134
- this._largeScreen$,
135
- this._sidenavWidth$,
136
- this._sidenavElement$,
137
- this._contentElement$,
138
- this._resizeBorderElement$,
139
- this._collapsibleWidescreenMenu$,
140
- ]).subscribe(([largeScreen, sidenavWidth, sidenavElement, contentElement, resizeBorderElement, collapsibleWidescreenMenu,]) => {
141
- if ((!largeScreen || collapsibleWidescreenMenu) &&
142
- sidenavElement &&
143
- contentElement &&
144
- resizeBorderElement) {
145
- this.renderer.removeStyle(sidenavElement, 'min-width');
146
- this.renderer.removeStyle(sidenavElement, 'width');
147
- this.renderer.removeStyle(sidenavElement, 'transition');
148
- this.renderer.removeStyle(contentElement, 'padding-left');
149
- this.renderer.addClass(resizeBorderElement, 'resize-border--invisible');
150
- }
151
- else if (largeScreen &&
152
- sidenavElement &&
153
- contentElement &&
154
- typeof sidenavWidth === 'number') {
155
- const pixelWidth = `${sidenavWidth}px`;
156
- this.renderer.setStyle(sidenavElement, 'min-width', `${pixelWidth}`);
157
- this.renderer.setStyle(sidenavElement, 'width', `${pixelWidth}`);
158
- this.renderer.setStyle(sidenavElement, 'transition', 'none');
159
- this.renderer.setStyle(contentElement, 'padding-left', `calc(2rem + ${pixelWidth})`);
160
- this.renderer.removeClass(resizeBorderElement, 'resize-border--invisible');
161
- }
162
- });
163
- }
164
- openMouseSubscriptions() {
165
- this.mouseXSubscription = combineLatest([this._mouseX$, this._isResizing$])
166
- .pipe(debounceTime(3))
167
- .subscribe(([x, isResizing]) => {
168
- if (isResizing) {
169
- const offSetWidth = this.xOnClick - x;
170
- const newSidenavWidth = this.sidenavWidthOnClick - offSetWidth;
171
- if (newSidenavWidth <= this.maxMenuWidth && newSidenavWidth >= this.minMenuWidth) {
172
- this._sidenavWidth$.next(newSidenavWidth);
173
- }
174
- }
175
- });
176
- this.mouseUpSubscription = fromEvent(document, 'mouseup').subscribe(() => {
177
- this.stopResizing();
178
- });
179
- }
180
- stopResizing() {
181
- const mainContent = document.querySelector('.main-content');
182
- const sideNav = document.querySelector('.cds--side-nav__navigation');
183
- this.renderer.removeStyle(document.body, 'user-select');
184
- this.renderer.removeStyle(document.body, 'cursor');
185
- this._isResizing$.next(false);
186
- this.renderer.removeClass(this._resizeBorderElement$.getValue(), 'resize-hover');
187
- if (sideNav) {
188
- this.renderer.removeStyle(sideNav, 'pointer-events');
189
- }
190
- if (mainContent) {
191
- this.renderer.removeStyle(mainContent, 'pointer-events');
192
- }
193
- localStorage.setItem('sidenavWidth', this._sidenavWidth$.getValue().toString());
194
- }
195
- initMenuWidth(config) {
196
- const customLeftSidebar = config?.customLeftSidebar;
197
- const localStorageWidth = localStorage.getItem('sidenavWidth');
198
- const localStorageWidthNumber = localStorageWidth && +localStorageWidth;
199
- const configWidth = customLeftSidebar?.defaultMenuWidth;
200
- this._sidenavWidth$.next(localStorageWidthNumber || configWidth || 256);
201
- this.minMenuWidth = customLeftSidebar?.minMenuWidth || 150;
202
- this.maxMenuWidth = customLeftSidebar?.maxMenuWidth || 500;
203
- }
204
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShellService, deps: [{ token: i0.RendererFactory2 }, { token: i1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
205
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShellService, providedIn: 'root' }); }
206
- }
207
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShellService, decorators: [{
208
- type: Injectable,
209
- args: [{
210
- providedIn: 'root',
211
- }]
212
- }], ctorParameters: () => [{ type: i0.RendererFactory2 }, { type: i1.ConfigService }] });
213
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL3NoZWxsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsVUFBVSxFQUF5QyxNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQ0wsZUFBZSxFQUNmLGFBQWEsRUFDYixTQUFTLEVBQ1QsR0FBRyxFQUVILE9BQU8sR0FFUixNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFBQyxZQUFZLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7OztBQU1sRCxNQUFNLE9BQU8sWUFBWTtJQXdCdkIsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUNELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLDBCQUEwQjtRQUM1QixPQUFPLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBSSxtQkFBbUI7UUFDckIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUM7SUFD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Qy9ELE1BQU0sdUJBQXVCLEdBQUcsaUJBQWlCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUN4RSxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQztRQUV4RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsSUFBSSxXQUFXLElBQUksR0FBRyxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLFlBQVksR0FBRyxpQkFBaUIsRUFBRSxZQUFZLElBQUksR0FBRyxDQUFDO1FBQzNELElBQUksQ0FBQyxZQUFZLEdBQUcsaUJBQWlCLEVBQUUsWUFBWSxJQUFJLEdBQUcsQ0FBQztJQUM3RCxDQUFDOytHQWpQVSxZQUFZO21IQUFaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7SW5qZWN0YWJsZSwgT25EZXN0cm95LCBSZW5kZXJlcjIsIFJlbmRlcmVyRmFjdG9yeTJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmVoYXZpb3JTdWJqZWN0LFxuICBjb21iaW5lTGF0ZXN0LFxuICBmcm9tRXZlbnQsXG4gIG1hcCxcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgU3Vic2NyaXB0aW9uLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0NvbmZpZ1NlcnZpY2UsIFZhbHRpbW9Db25maWd9IGZyb20gJ0B2YWx0aW1vL2NvbmZpZyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTaGVsbFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlbmRlcmVyITogUmVuZGVyZXIyO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zaWRlQmFyRXhwYW5kZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcGFuZWxFeHBhbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbGFyZ2VTY3JlZW4kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbW91c2VPblRvcEJhciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2lkZW5hdldpZHRoJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigzMDApO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zaWRlbmF2RWxlbWVudCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEhUTUxFbGVtZW50Pih1bmRlZmluZWQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb250ZW50RWxlbWVudCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEhUTUxFbGVtZW50Pih1bmRlZmluZWQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZXNpemVCb3JkZXJFbGVtZW50JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SFRNTEVsZW1lbnQ+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21vdXNlWCQgPSBmcm9tRXZlbnQoZG9jdW1lbnQuYm9keSwgJ21vdXNlbW92ZScpLnBpcGUoXG4gICAgbWFwKChlOiBNb3VzZUV2ZW50KSA9PiBlLnBhZ2VYKVxuICApO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc1Jlc2l6aW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb2xsYXBzaWJsZVdpZGVzY3JlZW5NZW51JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tYWluQ29udGVudFJlc2l6ZWQkID0gbmV3IFN1YmplY3Q8bnVsbD4oKTtcbiAgcHJpdmF0ZSBzaWRlbmF2V2lkdGhPbkNsaWNrITogbnVtYmVyO1xuICBwcml2YXRlIHhPbkNsaWNrITogbnVtYmVyO1xuICBwcml2YXRlIHNpZGVuYXZTaXplU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIG1vdXNlWFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBtb3VzZVVwU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIG1heE1lbnVXaWR0aCE6IG51bWJlcjtcbiAgcHJpdmF0ZSBtaW5NZW51V2lkdGghOiBudW1iZXI7XG5cbiAgZ2V0IHNpZGVCYXJFeHBhbmRlZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZGVCYXJFeHBhbmRlZCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbiAgZ2V0IHBhbmVsRXhwYW5kZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9wYW5lbEV4cGFuZGVkJC5hc09ic2VydmFibGUoKTtcbiAgfVxuICBnZXQgbGFyZ2VTY3JlZW4kKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9sYXJnZVNjcmVlbiQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbiAgZ2V0IG1vdXNlT25Ub3BCYXIkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9tb3VzZU9uVG9wQmFyJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBzaWRlbmF2V2lkdGgkKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZGVuYXZXaWR0aCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbGxhcHNpYmxlV2lkZXNjcmVlbk1lbnUkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IG1haW5Db250ZW50UmVzaXplZCQoKTogT2JzZXJ2YWJsZTxudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMuX21haW5Db250ZW50UmVzaXplZCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyRmFjdG9yeTI6IFJlbmRlcmVyRmFjdG9yeTIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMucmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkyLmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICAgIHRoaXMub3BlblNpZGVuYXZTaXplU3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5vcGVuTW91c2VTdWJzY3JpcHRpb25zKCk7XG4gICAgdGhpcy5pbml0TWVudVdpZHRoKGNvbmZpZ1NlcnZpY2UuY29uZmlnKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc2lkZW5hdlNpemVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHRvZ2dsZVNpZGVCYXIoKTogdm9pZCB7XG4gICAgY29uc3QgaXNFeHBhbmRlZCA9IHRoaXMuX3NpZGVCYXJFeHBhbmRlZCQuZ2V0VmFsdWUoKTtcbiAgICB0aGlzLl9zaWRlQmFyRXhwYW5kZWQkLm5leHQoIWlzRXhwYW5kZWQpO1xuICB9XG5cbiAgY29sbGFwc2VTaWRlQmFyKCk6IHZvaWQge1xuICAgIHRoaXMuX3NpZGVCYXJFeHBhbmRlZCQubmV4dChmYWxzZSk7XG4gIH1cblxuICB0b2dnbGVQYW5lbCgpOiB2b2lkIHtcbiAgICBjb25zdCBpc0V4cGFuZGVkID0gdGhpcy5fcGFuZWxFeHBhbmRlZCQuZ2V0VmFsdWUoKTtcbiAgICB0aGlzLl9wYW5lbEV4cGFuZGVkJC5uZXh0KCFpc0V4cGFuZGVkKTtcbiAgfVxuXG4gIHNldFBhbmVsRXhwYW5kZWQoaXNFeHBhbmRlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuX3BhbmVsRXhwYW5kZWQkLm5leHQoaXNFeHBhbmRlZCk7XG4gIH1cblxuICBzZXRTaWRlQmFyRXhwYW5kZWQoaXNFeHBhbmRlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuX3NpZGVCYXJFeHBhbmRlZCQubmV4dChpc0V4cGFuZGVkKTtcbiAgfVxuXG4gIHNldExhcmdlU2NyZWVuKGlzTGFyZ2U6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9sYXJnZVNjcmVlbiQubmV4dChpc0xhcmdlKTtcbiAgfVxuXG4gIHNldE1vdXNlT25Ub3BCYXIobW91c2VPblRvcEJhcjogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuX21vdXNlT25Ub3BCYXIkLm5leHQobW91c2VPblRvcEJhcik7XG4gIH1cblxuICBzZXRTaWRlbmF2RWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIHRoaXMuX3NpZGVuYXZFbGVtZW50JC5uZXh0KGVsZW1lbnQpO1xuICAgIHRoaXMuY3JlYXRlUmVzaXplQm9yZGVyRWxlbWVudChlbGVtZW50KTtcbiAgfVxuXG4gIHNldENvbnRlbnRFbGVtZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy5fY29udGVudEVsZW1lbnQkLm5leHQoZWxlbWVudCk7XG4gIH1cblxuICBzZXRDb2xsYXBzaWJsZVdpZGVzY3JlZW5NZW51KGNvbGxhcHNpYmxlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSQubmV4dChjb2xsYXBzaWJsZSk7XG5cbiAgICBpZiAoY29sbGFwc2libGUpIHtcbiAgICAgIHRoaXMuY29sbGFwc2VTaWRlQmFyKCk7XG4gICAgfVxuICB9XG5cbiAgb25NYWluQ29udGVudFJlc2l6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tYWluQ29udGVudFJlc2l6ZWQkLm5leHQobnVsbCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVJlc2l6ZUJvcmRlckVsZW1lbnQoc2lkZW5hdkVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgY29uc3QgYm9yZGVyRWxlbWVudCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhib3JkZXJFbGVtZW50LCAncmVzaXplLWJvcmRlcicpO1xuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoc2lkZW5hdkVsZW1lbnQsIGJvcmRlckVsZW1lbnQpO1xuICAgIHRoaXMuX3Jlc2l6ZUJvcmRlckVsZW1lbnQkLm5leHQoYm9yZGVyRWxlbWVudCk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmxpc3Rlbihib3JkZXJFbGVtZW50LCAnbW91c2VlbnRlcicsICgpID0+IHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoYm9yZGVyRWxlbWVudCwgJ3Jlc2l6ZS1ob3ZlcicpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oYm9yZGVyRWxlbWVudCwgJ21vdXNlbGVhdmUnLCAoKSA9PiB7XG4gICAgICB0aGlzLl9pc1Jlc2l6aW5nJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShpc1Jlc2l6aW5nID0+IHtcbiAgICAgICAgaWYgKCFpc1Jlc2l6aW5nKSB7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhib3JkZXJFbGVtZW50LCAncmVzaXplLWhvdmVyJyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oYm9yZGVyRWxlbWVudCwgJ21vdXNlZG93bicsIChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgdGhpcy5fc2lkZW5hdldpZHRoJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShzaWRlbmF2V2lkdGggPT4ge1xuICAgICAgICB0aGlzLnNpZGVuYXZXaWR0aE9uQ2xpY2sgPSBzaWRlbmF2V2lkdGg7XG4gICAgICAgIHRoaXMueE9uQ2xpY2sgPSBldmVudC5wYWdlWDtcbiAgICAgICAgdGhpcy5faXNSZXNpemluZyQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5ib2R5LCAndXNlci1zZWxlY3QnLCAnbm9uZScpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGRvY3VtZW50LmJvZHksICdjdXJzb3InLCAnY29sLXJlc2l6ZScpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5jZHMtLXNpZGUtbmF2X19uYXZpZ2F0aW9uJyksXG4gICAgICAgICAgJ3BvaW50ZXItZXZlbnRzJyxcbiAgICAgICAgICAnbm9uZSdcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcubWFpbi1jb250ZW50JyksICdwb2ludGVyLWV2ZW50cycsICdub25lJyk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlblNpZGVuYXZTaXplU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuc2lkZW5hdlNpemVTdWJzY3JpcHRpb24gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX2xhcmdlU2NyZWVuJCxcbiAgICAgIHRoaXMuX3NpZGVuYXZXaWR0aCQsXG4gICAgICB0aGlzLl9zaWRlbmF2RWxlbWVudCQsXG4gICAgICB0aGlzLl9jb250ZW50RWxlbWVudCQsXG4gICAgICB0aGlzLl9yZXNpemVCb3JkZXJFbGVtZW50JCxcbiAgICAgIHRoaXMuX2NvbGxhcHNpYmxlV2lkZXNjcmVlbk1lbnUkLFxuICAgIF0pLnN1YnNjcmliZShcbiAgICAgIChbXG4gICAgICAgIGxhcmdlU2NyZWVuLFxuICAgICAgICBzaWRlbmF2V2lkdGgsXG4gICAgICAgIHNpZGVuYXZFbGVtZW50LFxuICAgICAgICBjb250ZW50RWxlbWVudCxcbiAgICAgICAgcmVzaXplQm9yZGVyRWxlbWVudCxcbiAgICAgICAgY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSxcbiAgICAgIF0pID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICghbGFyZ2VTY3JlZW4gfHwgY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSkgJiZcbiAgICAgICAgICBzaWRlbmF2RWxlbWVudCAmJlxuICAgICAgICAgIGNvbnRlbnRFbGVtZW50ICYmXG4gICAgICAgICAgcmVzaXplQm9yZGVyRWxlbWVudFxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHNpZGVuYXZFbGVtZW50LCAnbWluLXdpZHRoJyk7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShzaWRlbmF2RWxlbWVudCwgJ3dpZHRoJyk7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShzaWRlbmF2RWxlbWVudCwgJ3RyYW5zaXRpb24nKTtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKGNvbnRlbnRFbGVtZW50LCAncGFkZGluZy1sZWZ0Jyk7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhyZXNpemVCb3JkZXJFbGVtZW50LCAncmVzaXplLWJvcmRlci0taW52aXNpYmxlJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgbGFyZ2VTY3JlZW4gJiZcbiAgICAgICAgICBzaWRlbmF2RWxlbWVudCAmJlxuICAgICAgICAgIGNvbnRlbnRFbGVtZW50ICYmXG4gICAgICAgICAgdHlwZW9mIHNpZGVuYXZXaWR0aCA9PT0gJ251bWJlcidcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgcGl4ZWxXaWR0aCA9IGAke3NpZGVuYXZXaWR0aH1weGA7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzaWRlbmF2RWxlbWVudCwgJ21pbi13aWR0aCcsIGAke3BpeGVsV2lkdGh9YCk7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzaWRlbmF2RWxlbWVudCwgJ3dpZHRoJywgYCR7cGl4ZWxXaWR0aH1gKTtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHNpZGVuYXZFbGVtZW50LCAndHJhbnNpdGlvbicsICdub25lJyk7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShjb250ZW50RWxlbWVudCwgJ3BhZGRpbmctbGVmdCcsIGBjYWxjKDJyZW0gKyAke3BpeGVsV2lkdGh9KWApO1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MocmVzaXplQm9yZGVyRWxlbWVudCwgJ3Jlc2l6ZS1ib3JkZXItLWludmlzaWJsZScpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgb3Blbk1vdXNlU3Vic2NyaXB0aW9ucygpOiB2b2lkIHtcbiAgICB0aGlzLm1vdXNlWFN1YnNjcmlwdGlvbiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX21vdXNlWCQsIHRoaXMuX2lzUmVzaXppbmckXSlcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgzKSlcbiAgICAgIC5zdWJzY3JpYmUoKFt4LCBpc1Jlc2l6aW5nXSkgPT4ge1xuICAgICAgICBpZiAoaXNSZXNpemluZykge1xuICAgICAgICAgIGNvbnN0IG9mZlNldFdpZHRoID0gdGhpcy54T25DbGljayAtIHg7XG4gICAgICAgICAgY29uc3QgbmV3U2lkZW5hdldpZHRoID0gdGhpcy5zaWRlbmF2V2lkdGhPbkNsaWNrIC0gb2ZmU2V0V2lkdGg7XG5cbiAgICAgICAgICBpZiAobmV3U2lkZW5hdldpZHRoIDw9IHRoaXMubWF4TWVudVdpZHRoICYmIG5ld1NpZGVuYXZXaWR0aCA+PSB0aGlzLm1pbk1lbnVXaWR0aCkge1xuICAgICAgICAgICAgdGhpcy5fc2lkZW5hdldpZHRoJC5uZXh0KG5ld1NpZGVuYXZXaWR0aCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMubW91c2VVcFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudChkb2N1bWVudCwgJ21vdXNldXAnKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zdG9wUmVzaXppbmcoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc3RvcFJlc2l6aW5nKCk6IHZvaWQge1xuICAgIGNvbnN0IG1haW5Db250ZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm1haW4tY29udGVudCcpO1xuICAgIGNvbnN0IHNpZGVOYXYgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuY2RzLS1zaWRlLW5hdl9fbmF2aWdhdGlvbicpO1xuXG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShkb2N1bWVudC5ib2R5LCAndXNlci1zZWxlY3QnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKGRvY3VtZW50LmJvZHksICdjdXJzb3InKTtcbiAgICB0aGlzLl9pc1Jlc2l6aW5nJC5uZXh0KGZhbHNlKTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuX3Jlc2l6ZUJvcmRlckVsZW1lbnQkLmdldFZhbHVlKCksICdyZXNpemUtaG92ZXInKTtcblxuICAgIGlmIChzaWRlTmF2KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHNpZGVOYXYsICdwb2ludGVyLWV2ZW50cycpO1xuICAgIH1cblxuICAgIGlmIChtYWluQ29udGVudCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShtYWluQ29udGVudCwgJ3BvaW50ZXItZXZlbnRzJyk7XG4gICAgfVxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdzaWRlbmF2V2lkdGgnLCB0aGlzLl9zaWRlbmF2V2lkdGgkLmdldFZhbHVlKCkudG9TdHJpbmcoKSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRNZW51V2lkdGgoY29uZmlnOiBWYWx0aW1vQ29uZmlnKTogdm9pZCB7XG4gICAgY29uc3QgY3VzdG9tTGVmdFNpZGViYXIgPSBjb25maWc/LmN1c3RvbUxlZnRTaWRlYmFyO1xuICAgIGNvbnN0IGxvY2FsU3RvcmFnZVdpZHRoID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3NpZGVuYXZXaWR0aCcpO1xuICAgIGNvbnN0IGxvY2FsU3RvcmFnZVdpZHRoTnVtYmVyID0gbG9jYWxTdG9yYWdlV2lkdGggJiYgK2xvY2FsU3RvcmFnZVdpZHRoO1xuICAgIGNvbnN0IGNvbmZpZ1dpZHRoID0gY3VzdG9tTGVmdFNpZGViYXI/LmRlZmF1bHRNZW51V2lkdGg7XG5cbiAgICB0aGlzLl9zaWRlbmF2V2lkdGgkLm5leHQobG9jYWxTdG9yYWdlV2lkdGhOdW1iZXIgfHwgY29uZmlnV2lkdGggfHwgMjU2KTtcbiAgICB0aGlzLm1pbk1lbnVXaWR0aCA9IGN1c3RvbUxlZnRTaWRlYmFyPy5taW5NZW51V2lkdGggfHwgMTUwO1xuICAgIHRoaXMubWF4TWVudVdpZHRoID0gY3VzdG9tTGVmdFNpZGViYXI/Lm1heE1lbnVXaWR0aCB8fCA1MDA7XG4gIH1cbn1cbiJdfQ==
@@ -1,108 +0,0 @@
1
- /*
2
- * Copyright 2015-2024 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Injectable } from '@angular/core';
17
- import { BehaviorSubject, combineLatest, Subject } from 'rxjs';
18
- import { map, take } from 'rxjs/operators';
19
- import * as i0 from "@angular/core";
20
- export class StepperService {
21
- constructor() {
22
- this._steps$ = new BehaviorSubject([]);
23
- this._currentStepIndex$ = new BehaviorSubject(0);
24
- this._returnToFirstStep$ = new Subject();
25
- this._cancelClick$ = new Subject();
26
- this._complete$ = new Subject();
27
- this._nextStep$ = new Subject();
28
- this._disabled$ = new BehaviorSubject(false);
29
- }
30
- get currentStepIndex$() {
31
- return this._currentStepIndex$.asObservable();
32
- }
33
- get steps$() {
34
- return this._steps$.asObservable();
35
- }
36
- get nextStepAvailable$() {
37
- return combineLatest([this._steps$, this._currentStepIndex$]).pipe(map(([steps, currentStepIndex]) => currentStepIndex < steps.length - 1));
38
- }
39
- get previousStepAvailable$() {
40
- return this._currentStepIndex$.pipe(map(currentStepIndex => currentStepIndex > 0));
41
- }
42
- get returnToFirstStep$() {
43
- return this._returnToFirstStep$.asObservable();
44
- }
45
- get cancelClick$() {
46
- return this._cancelClick$.asObservable();
47
- }
48
- get complete$() {
49
- return this._complete$.asObservable();
50
- }
51
- get nextStep$() {
52
- return this._nextStep$.asObservable();
53
- }
54
- get disabled$() {
55
- return this._disabled$.asObservable();
56
- }
57
- setSteps(steps) {
58
- const mappedSteps = steps.map((step, index) => ({
59
- ...step,
60
- isFirst: index === 0,
61
- isLast: index === steps.length - 1,
62
- }));
63
- this._steps$.next(mappedSteps);
64
- }
65
- setCurrentStepIndex(index) {
66
- this._currentStepIndex$.next(index);
67
- }
68
- goToNextStep() {
69
- combineLatest([this.nextStepAvailable$, this._currentStepIndex$])
70
- .pipe(take(1))
71
- .subscribe(([nextStepAvailable, currentStepIndex]) => {
72
- if (nextStepAvailable) {
73
- this.setCurrentStepIndex(currentStepIndex + 1);
74
- this._nextStep$.next(currentStepIndex);
75
- }
76
- });
77
- }
78
- goToPreviousStep() {
79
- combineLatest([this.previousStepAvailable$, this._currentStepIndex$])
80
- .pipe(take(1))
81
- .subscribe(([previousStepAvailable, currentStepIndex]) => {
82
- if (previousStepAvailable) {
83
- this.setCurrentStepIndex(currentStepIndex - 1);
84
- }
85
- });
86
- }
87
- cancelClick() {
88
- this._cancelClick$.next(null);
89
- }
90
- complete() {
91
- this._complete$.next(null);
92
- }
93
- disable() {
94
- this._disabled$.next(true);
95
- }
96
- enable() {
97
- this._disabled$.next(false);
98
- }
99
- returnToFirstStep() {
100
- this.setCurrentStepIndex(0);
101
- }
102
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
103
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperService }); }
104
- }
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperService, decorators: [{
106
- type: Injectable
107
- }] });
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvc3RlcHBlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDN0QsT0FBTyxFQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFJekMsTUFBTSxPQUFPLGNBQWM7SUFEM0I7UUFFbUIsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLHVCQUFrQixHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ3BELHdCQUFtQixHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDcEMsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQzlCLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQzNCLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBQ25DLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztLQThGbkU7SUE1RkMsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxrQkFB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LENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQzsrR0FwR1UsY0FBYzttSEFBZCxjQUFjOzs0RkFBZCxjQUFjO2tCQUQxQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1N0ZXB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdGVwcGVyU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0ZXBzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QXJyYXk8U3RlcD4+KFtdKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY3VycmVudFN0ZXBJbmRleCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JldHVyblRvRmlyc3RTdGVwJCA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NhbmNlbENsaWNrJCA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbXBsZXRlJCA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX25leHRTdGVwJCA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGlzYWJsZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgZ2V0IGN1cnJlbnRTdGVwSW5kZXgkKCkge1xuICAgIHJldHVybiB0aGlzLl9jdXJyZW50U3RlcEluZGV4JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBzdGVwcyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0ZXBzJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBuZXh0U3RlcEF2YWlsYWJsZSQoKSB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3RoaXMuX3N0ZXBzJCwgdGhpcy5fY3VycmVudFN0ZXBJbmRleCRdKS5waXBlKFxuICAgICAgbWFwKChbc3RlcHMsIGN1cnJlbnRTdGVwSW5kZXhdKSA9PiBjdXJyZW50U3RlcEluZGV4IDwgc3RlcHMubGVuZ3RoIC0gMSlcbiAgICApO1xuICB9XG5cbiAgZ2V0IHByZXZpb3VzU3RlcEF2YWlsYWJsZSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRTdGVwSW5kZXgkLnBpcGUobWFwKGN1cnJlbnRTdGVwSW5kZXggPT4gY3VycmVudFN0ZXBJbmRleCA+IDApKTtcbiAgfVxuXG4gIGdldCByZXR1cm5Ub0ZpcnN0U3RlcCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JldHVyblRvRmlyc3RTdGVwJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBjYW5jZWxDbGljayQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NhbmNlbENsaWNrJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBjb21wbGV0ZSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbXBsZXRlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBuZXh0U3RlcCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX25leHRTdGVwJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBkaXNhYmxlZCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHNldFN0ZXBzKHN0ZXBzOiBBcnJheTxTdGVwPik6IHZvaWQge1xuICAgIGNvbnN0IG1hcHBlZFN0ZXBzID0gc3RlcHMubWFwKChzdGVwLCBpbmRleCkgPT4gKHtcbiAgICAgIC4uLnN0ZXAsXG4gICAgICBpc0ZpcnN0OiBpbmRleCA9PT0gMCxcbiAgICAgIGlzTGFzdDogaW5kZXggPT09IHN0ZXBzLmxlbmd0aCAtIDEsXG4gICAgfSkpO1xuXG4gICAgdGhpcy5fc3RlcHMkLm5leHQobWFwcGVkU3RlcHMpO1xuICB9XG5cbiAgc2V0Q3VycmVudFN0ZXBJbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fY3VycmVudFN0ZXBJbmRleCQubmV4dChpbmRleCk7XG4gIH1cblxuICBnb1RvTmV4dFN0ZXAoKTogdm9pZCB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5uZXh0U3RlcEF2YWlsYWJsZSQsIHRoaXMuX2N1cnJlbnRTdGVwSW5kZXgkXSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChbbmV4dFN0ZXBBdmFpbGFibGUsIGN1cnJlbnRTdGVwSW5kZXhdKSA9PiB7XG4gICAgICAgIGlmIChuZXh0U3RlcEF2YWlsYWJsZSkge1xuICAgICAgICAgIHRoaXMuc2V0Q3VycmVudFN0ZXBJbmRleChjdXJyZW50U3RlcEluZGV4ICsgMSk7XG4gICAgICAgICAgdGhpcy5fbmV4dFN0ZXAkLm5leHQoY3VycmVudFN0ZXBJbmRleCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgZ29Ub1ByZXZpb3VzU3RlcCgpOiB2b2lkIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnByZXZpb3VzU3RlcEF2YWlsYWJsZSQsIHRoaXMuX2N1cnJlbnRTdGVwSW5kZXgkXSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChbcHJldmlvdXNTdGVwQXZhaWxhYmxlLCBjdXJyZW50U3RlcEluZGV4XSkgPT4ge1xuICAgICAgICBpZiAocHJldmlvdXNTdGVwQXZhaWxhYmxlKSB7XG4gICAgICAgICAgdGhpcy5zZXRDdXJyZW50U3RlcEluZGV4KGN1cnJlbnRTdGVwSW5kZXggLSAxKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBjYW5jZWxDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLl9jYW5jZWxDbGljayQubmV4dChudWxsKTtcbiAgfVxuXG4gIGNvbXBsZXRlKCk6IHZvaWQge1xuICAgIHRoaXMuX2NvbXBsZXRlJC5uZXh0KG51bGwpO1xuICB9XG5cbiAgZGlzYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNhYmxlZCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIGVuYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNhYmxlZCQubmV4dChmYWxzZSk7XG4gIH1cblxuICByZXR1cm5Ub0ZpcnN0U3RlcCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldEN1cnJlbnRTdGVwSW5kZXgoMCk7XG4gIH1cbn1cbiJdfQ==