@scion/workbench 17.0.0-beta.6 → 17.0.0-beta.8

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 (314) hide show
  1. package/README.md +1 -1
  2. package/esm2022/lib/activation-instant.provider.mjs +3 -3
  3. package/esm2022/lib/common/asserts.util.mjs +2 -2
  4. package/esm2022/lib/common/class-list.mjs +61 -0
  5. package/esm2022/lib/common/coerce-observable.pipe.mjs +3 -3
  6. package/esm2022/lib/common/filter-by-predicate.pipe.mjs +3 -3
  7. package/esm2022/lib/common/filter-by-text.pipe.mjs +3 -3
  8. package/esm2022/lib/common/grid-element-if-visible.pipe.mjs +6 -6
  9. package/esm2022/lib/common/instanceof.pipe.mjs +3 -3
  10. package/esm2022/lib/common/map-coerce.pipe.mjs +3 -3
  11. package/esm2022/lib/common/null-if-empty.pipe.mjs +3 -3
  12. package/esm2022/lib/common/objects.util.mjs +34 -0
  13. package/esm2022/lib/common/typeof.pipe.mjs +3 -3
  14. package/esm2022/lib/common/uuid.util.mjs +17 -0
  15. package/esm2022/lib/content-projection/content-as-overlay.component.mjs +3 -3
  16. package/esm2022/lib/content-projection/content-projection.directive.mjs +3 -3
  17. package/esm2022/lib/dialog/dialog-footer/dialog-action-filter.pipe.mjs +3 -3
  18. package/esm2022/lib/dialog/dialog-footer/dialog-footer.component.mjs +3 -3
  19. package/esm2022/lib/dialog/dialog-footer/workbench-dialog-action.directive.mjs +3 -3
  20. package/esm2022/lib/dialog/dialog-footer/workbench-dialog-footer.directive.mjs +3 -3
  21. package/esm2022/lib/dialog/dialog-header/dialog-header.component.mjs +3 -3
  22. package/esm2022/lib/dialog/dialog-header/workbench-dialog-header.directive.mjs +3 -3
  23. package/esm2022/lib/dialog/movable.directive.mjs +3 -3
  24. package/esm2022/lib/dialog/resizable.directive.mjs +3 -3
  25. package/esm2022/lib/dialog/workbench-dialog.component.mjs +3 -3
  26. package/esm2022/lib/dialog/workbench-dialog.mjs +1 -1
  27. package/esm2022/lib/dialog/workbench-dialog.options.mjs +1 -1
  28. package/esm2022/lib/dialog/workbench-dialog.registry.mjs +4 -4
  29. package/esm2022/lib/dialog/workbench-dialog.service.mjs +5 -5
  30. package/esm2022/lib/dialog//311/265workbench-dialog.mjs +8 -26
  31. package/esm2022/lib/dialog//311/265workbench-dialog.service.mjs +3 -3
  32. package/esm2022/lib/filter-field/filter-field.component.mjs +6 -6
  33. package/esm2022/lib/glass-pane/glass-pane.directive.mjs +3 -3
  34. package/esm2022/lib/layout/grid-element/grid-element.component.mjs +10 -10
  35. package/esm2022/lib/layout/main-area-layout/main-area-layout.component.mjs +7 -4
  36. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v1.model.mjs +11 -0
  37. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v2.model.mjs +11 -0
  38. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v3.model.mjs +11 -0
  39. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v4.model.mjs +11 -0
  40. package/esm2022/lib/layout/migration/workbench-layout-migration-v2.service.mjs +59 -0
  41. package/esm2022/lib/layout/migration/workbench-layout-migration-v3.service.mjs +117 -0
  42. package/esm2022/lib/layout/migration/workbench-layout-migration-v4.service.mjs +57 -0
  43. package/esm2022/lib/layout/workbench-layout.component.mjs +7 -4
  44. package/esm2022/lib/layout/workbench-layout.factory.mjs +4 -4
  45. package/esm2022/lib/layout/workbench-layout.mjs +1 -1
  46. package/esm2022/lib/layout/workbench-layout.model.mjs +5 -6
  47. package/esm2022/lib/layout/workbench-layout.service.mjs +3 -3
  48. package/esm2022/lib/layout/workbench-layouts.util.mjs +53 -16
  49. package/esm2022/lib/layout/workench-layout-serializer.service.mjs +53 -21
  50. package/esm2022/lib/layout//311/265workbench-layout.factory.mjs +8 -5
  51. package/esm2022/lib/layout//311/265workbench-layout.mjs +382 -195
  52. package/esm2022/lib/logging/console-appender.service.mjs +3 -3
  53. package/esm2022/lib/logging/logger-names.mjs +8 -9
  54. package/esm2022/lib/logging/logger.mjs +3 -3
  55. package/esm2022/lib/logging/logging-support.mjs +4 -4
  56. package/esm2022/lib/logging/logging.model.mjs +3 -3
  57. package/esm2022/lib/logging//311/265logger.mjs +3 -3
  58. package/esm2022/lib/message-box/message-box-footer/message-box-footer.component.mjs +18 -20
  59. package/esm2022/lib/message-box/message-box-header/message-box-header.component.mjs +3 -3
  60. package/esm2022/lib/message-box/workbench-message-box.component.mjs +3 -3
  61. package/esm2022/lib/message-box/workbench-message-box.options.mjs +1 -1
  62. package/esm2022/lib/message-box/workbench-message-box.service.mjs +5 -5
  63. package/esm2022/lib/message-box//311/265workbench-message-box.service.mjs +5 -5
  64. package/esm2022/lib/microfrontend-platform/common/microfrontend.util.mjs +55 -0
  65. package/esm2022/lib/microfrontend-platform/initialization/microfrontend-platform-initializer.service.mjs +34 -22
  66. package/esm2022/lib/microfrontend-platform/initialization/ng-zone-observable-decorator.mjs +3 -3
  67. package/esm2022/lib/microfrontend-platform/initialization/workbench-host-manifest-interceptor.service.mjs +3 -3
  68. package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-capability-validator.interceptor.mjs +53 -0
  69. package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-intent-handler.interceptor.mjs +85 -0
  70. package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog.component.mjs +140 -0
  71. package/esm2022/lib/microfrontend-platform/microfrontend-host-dialog/microfrontend-host-dialog.component.mjs +122 -0
  72. package/esm2022/lib/microfrontend-platform/microfrontend-host-popup/microfrontend-host-popup.component.mjs +11 -10
  73. package/esm2022/lib/microfrontend-platform/microfrontend-message-box/microfrontend-message-box-intent-handler.service.mjs +3 -3
  74. package/esm2022/lib/microfrontend-platform/microfrontend-notification/microfrontend-notification-intent-handler.service.mjs +3 -3
  75. package/esm2022/lib/microfrontend-platform/microfrontend-platform-config-loader.mjs +3 -3
  76. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-capability-validator.interceptor.mjs +30 -0
  77. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-intent-handler.interceptor.mjs +130 -0
  78. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup.component.mjs +18 -30
  79. package/esm2022/lib/microfrontend-platform/microfrontend-splash/microfrontend-splash.component.mjs +3 -3
  80. package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-view-command-handler.service.mjs +9 -31
  81. package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-view.component.mjs +88 -144
  82. package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-workbench-view.model.mjs +23 -0
  83. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-capability-id-assigner.interceptor.mjs +41 -0
  84. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-capability-validator.interceptor.mjs +30 -0
  85. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-intent-handler.interceptor.mjs +125 -0
  86. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-routes.mjs +103 -0
  87. package/esm2022/lib/microfrontend-platform/workbench-microfrontend-support.mjs +45 -47
  88. package/esm2022/lib/migration/workbench-migration.mjs +11 -0
  89. package/esm2022/lib/migration/workbench-migrator.mjs +38 -0
  90. package/esm2022/lib/notification/notification-css-classes.pipe.mjs +3 -3
  91. package/esm2022/lib/notification/notification-list.component.mjs +3 -3
  92. package/esm2022/lib/notification/notification.component.mjs +3 -3
  93. package/esm2022/lib/notification/notification.config.mjs +1 -1
  94. package/esm2022/lib/notification/notification.mjs +1 -1
  95. package/esm2022/lib/notification/notification.service.mjs +9 -9
  96. package/esm2022/lib/notification/text-notification.component.mjs +3 -3
  97. package/esm2022/lib/page-not-found/format-url.pipe.mjs +26 -0
  98. package/esm2022/lib/page-not-found/page-not-found.component.mjs +28 -0
  99. package/esm2022/lib/part/part-action-bar/part-action-bar.component.mjs +3 -3
  100. package/esm2022/lib/part/part-action-bar/part-action-filter.pipe.mjs +3 -3
  101. package/esm2022/lib/part/part-action-bar/part-action.directive.mjs +4 -4
  102. package/esm2022/lib/part/part-bar/part-bar.component.mjs +11 -8
  103. package/esm2022/lib/part/part-portal.pipe.mjs +3 -3
  104. package/esm2022/lib/part/part.component.mjs +7 -4
  105. package/esm2022/lib/part/view-context-menu/accelerator-format.pipe.mjs +3 -3
  106. package/esm2022/lib/part/view-context-menu/text.component.mjs +3 -3
  107. package/esm2022/lib/part/view-context-menu/view-menu.component.mjs +3 -3
  108. package/esm2022/lib/part/view-context-menu/view-menu.directive.mjs +4 -4
  109. package/esm2022/lib/part/view-context-menu/view-menu.service.mjs +19 -19
  110. package/esm2022/lib/part/view-list/view-list.component.mjs +3 -3
  111. package/esm2022/lib/part/view-list-button/view-list-button.component.mjs +3 -3
  112. package/esm2022/lib/part/view-list-item/view-list-item.component.mjs +9 -9
  113. package/esm2022/lib/part/view-tab/view-tab.component.mjs +16 -13
  114. package/esm2022/lib/part/view-tab-content/view-tab-content.component.mjs +5 -5
  115. package/esm2022/lib/part/view-tab-drag-image/view-tab-drag-image.component.mjs +9 -9
  116. package/esm2022/lib/part/workbench-part-action.registry.mjs +3 -3
  117. package/esm2022/lib/part/workbench-part.model.mjs +1 -1
  118. package/esm2022/lib/part/workbench-part.registry.mjs +3 -3
  119. package/esm2022/lib/part//311/265workbench-part.model.mjs +3 -3
  120. package/esm2022/lib/perspective/migration/model/workbench-perspective-migration-v1.model.mjs +11 -0
  121. package/esm2022/lib/perspective/migration/model/workbench-perspective-migration-v2.model.mjs +11 -0
  122. package/esm2022/lib/perspective/migration/workbench-perspective-migration-v2.service.mjs +57 -0
  123. package/esm2022/lib/perspective/workbench-grid-merger.service.mjs +19 -51
  124. package/esm2022/lib/perspective/workbench-perspective-storage.service.mjs +23 -18
  125. package/esm2022/lib/perspective/workbench-perspective-view-conflict-resolver.service.mjs +27 -42
  126. package/esm2022/lib/perspective/workbench-perspective.model.mjs +1 -1
  127. package/esm2022/lib/perspective/workbench-perspective.registry.mjs +3 -3
  128. package/esm2022/lib/perspective/workbench-perspective.service.mjs +15 -10
  129. package/esm2022/lib/perspective/workench-perspective-serializer.service.mjs +62 -0
  130. package/esm2022/lib/perspective//311/265workbench-perspective.model.mjs +98 -78
  131. package/esm2022/lib/popup/popup.component.mjs +3 -3
  132. package/esm2022/lib/popup/popup.config.mjs +1 -1
  133. package/esm2022/lib/popup/popup.service.mjs +3 -3
  134. package/esm2022/lib/portal/workbench-portal-outlet.directive.mjs +6 -6
  135. package/esm2022/lib/public_api.mjs +3 -2
  136. package/esm2022/lib/registry/workbench-object-registry.mjs +3 -3
  137. package/esm2022/lib/routing/empty-outlet/empty-outlet.component.mjs +31 -0
  138. package/esm2022/lib/routing/public_api.mjs +1 -1
  139. package/esm2022/lib/routing/router.util.mjs +96 -71
  140. package/esm2022/lib/routing/routing.model.mjs +11 -0
  141. package/esm2022/lib/routing/url-segment-matcher.mjs +46 -0
  142. package/esm2022/lib/routing/workbench-auxiliary-routes-registrator.service.mjs +58 -50
  143. package/esm2022/lib/routing/workbench-dialog-differ.mjs +51 -0
  144. package/esm2022/lib/routing/workbench-layout-differ.mjs +14 -17
  145. package/esm2022/lib/routing/workbench-navigational-states.mjs +11 -25
  146. package/esm2022/lib/routing/workbench-popup-differ.mjs +6 -6
  147. package/esm2022/lib/routing/workbench-route-data.mjs +15 -14
  148. package/esm2022/lib/routing/workbench-router-link.directive.mjs +24 -33
  149. package/esm2022/lib/routing/workbench-router.service.mjs +13 -378
  150. package/esm2022/lib/routing/workbench-url-observer.service.mjs +65 -36
  151. package/esm2022/lib/routing//311/265location.mjs +3 -3
  152. package/esm2022/lib/routing//311/265workbench-router.service.mjs +317 -0
  153. package/esm2022/lib/startup/splash/splash.component.mjs +3 -3
  154. package/esm2022/lib/startup/workbench-launcher.service.mjs +11 -11
  155. package/esm2022/lib/storage/workbench-storage.mjs +3 -3
  156. package/esm2022/lib/testing/public_api.mjs +2 -1
  157. package/esm2022/lib/testing/workbench-testing.module.mjs +13 -39
  158. package/esm2022/lib/testing/workbench.provider.mjs +60 -0
  159. package/esm2022/lib/theme/workbench-theme-switcher.service.mjs +3 -3
  160. package/esm2022/lib/view/public_api.mjs +2 -1
  161. package/esm2022/lib/view/view-move-handler.service.mjs +42 -62
  162. package/esm2022/lib/view/view-portal.pipe.mjs +4 -4
  163. package/esm2022/lib/view/view.component.mjs +8 -38
  164. package/esm2022/lib/view/workbench-view-route-guards.mjs +47 -0
  165. package/esm2022/lib/view/workbench-view.model.mjs +6 -4
  166. package/esm2022/lib/view/workbench-view.registry.mjs +4 -4
  167. package/esm2022/lib/view//311/265workbench-view.model.mjs +135 -28
  168. package/esm2022/lib/view-dnd/grid-drop-targets.util.mjs +33 -32
  169. package/esm2022/lib/view-dnd/requires-drop-zone.pipe.mjs +7 -7
  170. package/esm2022/lib/view-dnd/view-drag.service.mjs +6 -6
  171. package/esm2022/lib/view-dnd/view-drop-placeholder-renderer.service.mjs +3 -3
  172. package/esm2022/lib/view-dnd/view-drop-zone.directive.mjs +4 -4
  173. package/esm2022/lib/view-dnd/view-tab-drag-image-renderer.service.mjs +11 -9
  174. package/esm2022/lib/workbench-config.mjs +15 -0
  175. package/esm2022/lib/workbench-id.mjs +3 -3
  176. package/esm2022/lib/workbench.component.mjs +14 -10
  177. package/esm2022/lib/workbench.constants.mjs +8 -10
  178. package/esm2022/lib/workbench.model.mjs +1 -1
  179. package/esm2022/lib/workbench.module.mjs +15 -86
  180. package/esm2022/lib/workbench.provider.mjs +117 -0
  181. package/esm2022/lib/workbench.service.mjs +5 -5
  182. package/esm2022/lib//311/265workbench.service.mjs +15 -21
  183. package/fesm2022/scion-workbench.mjs +5527 -4289
  184. package/fesm2022/scion-workbench.mjs.map +1 -1
  185. package/lib/common/class-list.d.ts +51 -0
  186. package/lib/common/objects.util.d.ts +17 -0
  187. package/lib/common/uuid.util.d.ts +8 -0
  188. package/lib/dialog/workbench-dialog.d.ts +3 -7
  189. package/lib/dialog/workbench-dialog.options.d.ts +5 -4
  190. package/lib/dialog/workbench-dialog.registry.d.ts +4 -3
  191. package/lib/dialog/workbench-dialog.service.d.ts +1 -1
  192. package/lib/dialog//311/265workbench-dialog.d.ts +4 -6
  193. package/lib/filter-field/filter-field.component.d.ts +1 -1
  194. package/lib/layout/grid-element/grid-element.component.d.ts +2 -2
  195. package/lib/layout/migration/model/workbench-layout-migration-v1.model.d.ts +16 -0
  196. package/lib/layout/migration/model/workbench-layout-migration-v2.model.d.ts +22 -0
  197. package/lib/layout/migration/model/workbench-layout-migration-v3.model.d.ts +30 -0
  198. package/lib/layout/migration/model/workbench-layout-migration-v4.model.d.ts +31 -0
  199. package/lib/layout/migration/workbench-layout-migration-v2.service.d.ts +13 -0
  200. package/lib/layout/migration/workbench-layout-migration-v3.service.d.ts +16 -0
  201. package/lib/layout/migration/workbench-layout-migration-v4.service.d.ts +12 -0
  202. package/lib/layout/workbench-layout.d.ts +61 -7
  203. package/lib/layout/workbench-layout.factory.d.ts +1 -1
  204. package/lib/layout/workbench-layout.model.d.ts +19 -9
  205. package/lib/layout/workbench-layouts.util.d.ts +22 -6
  206. package/lib/layout/workench-layout-serializer.service.d.ts +28 -7
  207. package/lib/layout//311/265workbench-layout.d.ts +172 -98
  208. package/lib/layout//311/265workbench-layout.factory.d.ts +4 -0
  209. package/lib/logging/logger-names.d.ts +7 -7
  210. package/lib/logging/logging-support.d.ts +2 -2
  211. package/lib/message-box/workbench-message-box.options.d.ts +4 -3
  212. package/lib/message-box/workbench-message-box.service.d.ts +1 -1
  213. package/lib/microfrontend-platform/common/microfrontend.util.d.ts +22 -0
  214. package/lib/microfrontend-platform/initialization/microfrontend-platform-initializer.service.d.ts +15 -9
  215. package/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-capability-validator.interceptor.d.ts +11 -0
  216. package/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-intent-handler.interceptor.d.ts +28 -0
  217. package/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog.component.d.ts +52 -0
  218. package/lib/microfrontend-platform/microfrontend-host-dialog/microfrontend-host-dialog.component.d.ts +37 -0
  219. package/lib/microfrontend-platform/microfrontend-host-popup/microfrontend-host-popup.component.d.ts +2 -1
  220. package/lib/microfrontend-platform/microfrontend-popup/{microfrontend-popup-capability-interceptor.service.d.ts → microfrontend-popup-capability-validator.interceptor.d.ts} +3 -3
  221. package/lib/microfrontend-platform/microfrontend-popup/{microfrontend-popup-intent-interceptor.service.d.ts → microfrontend-popup-intent-handler.interceptor.d.ts} +9 -6
  222. package/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup.component.d.ts +7 -10
  223. package/lib/microfrontend-platform/microfrontend-view/microfrontend-view-command-handler.service.d.ts +2 -9
  224. package/lib/microfrontend-platform/microfrontend-view/microfrontend-view.component.d.ts +12 -23
  225. package/lib/microfrontend-platform/microfrontend-view/microfrontend-workbench-view.model.d.ts +14 -0
  226. package/lib/microfrontend-platform/routing/microfrontend-view-capability-id-assigner.interceptor.d.ts +10 -0
  227. package/lib/microfrontend-platform/routing/{microfrontend-view-capability-interceptor.service.d.ts → microfrontend-view-capability-validator.interceptor.d.ts} +3 -3
  228. package/lib/microfrontend-platform/routing/{microfrontend-view-intent-interceptor.service.d.ts → microfrontend-view-intent-handler.interceptor.d.ts} +6 -5
  229. package/lib/microfrontend-platform/routing/microfrontend-view-routes.d.ts +49 -0
  230. package/lib/microfrontend-platform/workbench-microfrontend-support.d.ts +3 -2
  231. package/lib/migration/workbench-migration.d.ts +9 -0
  232. package/lib/migration/workbench-migrator.d.ts +18 -0
  233. package/lib/notification/notification.config.d.ts +1 -1
  234. package/lib/notification/notification.d.ts +1 -3
  235. package/lib/page-not-found/format-url.pipe.d.ts +11 -0
  236. package/lib/page-not-found/page-not-found.component.d.ts +8 -0
  237. package/lib/part/part-action-bar/part-action.directive.d.ts +1 -1
  238. package/lib/part/part-bar/part-bar.component.d.ts +4 -3
  239. package/lib/part/view-context-menu/view-menu.directive.d.ts +1 -1
  240. package/lib/part/view-context-menu/view-menu.service.d.ts +5 -4
  241. package/lib/part/view-list-item/view-list-item.component.d.ts +5 -4
  242. package/lib/part/view-tab/view-tab.component.d.ts +6 -5
  243. package/lib/part/view-tab-drag-image/view-tab-drag-image.component.d.ts +3 -3
  244. package/lib/part/workbench-part.model.d.ts +5 -4
  245. package/lib/part//311/265workbench-part.model.d.ts +5 -4
  246. package/lib/perspective/migration/model/workbench-perspective-migration-v1.model.d.ts +8 -0
  247. package/lib/perspective/migration/model/workbench-perspective-migration-v2.model.d.ts +10 -0
  248. package/lib/perspective/migration/workbench-perspective-migration-v2.service.d.ts +13 -0
  249. package/lib/perspective/workbench-grid-merger.service.d.ts +9 -16
  250. package/lib/perspective/workbench-perspective-storage.service.d.ts +10 -28
  251. package/lib/perspective/workbench-perspective-view-conflict-resolver.service.d.ts +8 -25
  252. package/lib/perspective/workbench-perspective.model.d.ts +123 -14
  253. package/lib/perspective/workbench-perspective.service.d.ts +10 -3
  254. package/lib/perspective/workench-perspective-serializer.service.d.ts +26 -0
  255. package/lib/perspective//311/265workbench-perspective.model.d.ts +16 -14
  256. package/lib/popup/popup.config.d.ts +4 -3
  257. package/lib/portal/workbench-portal-outlet.directive.d.ts +2 -2
  258. package/lib/public_api.d.ts +4 -3
  259. package/lib/registry/workbench-object-registry.d.ts +2 -2
  260. package/lib/routing/empty-outlet/empty-outlet.component.d.ts +15 -0
  261. package/lib/routing/public_api.d.ts +2 -1
  262. package/lib/routing/router.util.d.ts +45 -31
  263. package/lib/routing/routing.model.d.ts +129 -0
  264. package/lib/routing/url-segment-matcher.d.ts +20 -0
  265. package/lib/routing/workbench-auxiliary-routes-registrator.service.d.ts +25 -16
  266. package/lib/routing/workbench-dialog-differ.d.ts +25 -0
  267. package/lib/routing/workbench-layout-differ.d.ts +4 -7
  268. package/lib/routing/workbench-navigational-states.d.ts +11 -21
  269. package/lib/routing/workbench-route-data.d.ts +14 -12
  270. package/lib/routing/workbench-router-link.directive.d.ts +22 -7
  271. package/lib/routing/workbench-router.service.d.ts +42 -157
  272. package/lib/routing/workbench-url-observer.service.d.ts +18 -6
  273. package/lib/routing//311/265workbench-router.service.d.ts +75 -0
  274. package/lib/startup/workbench-launcher.service.d.ts +4 -4
  275. package/lib/testing/public_api.d.ts +1 -0
  276. package/lib/testing/workbench-testing.module.d.ts +7 -6
  277. package/lib/testing/workbench.provider.d.ts +29 -0
  278. package/lib/view/public_api.d.ts +2 -1
  279. package/lib/view/view-move-handler.service.d.ts +2 -4
  280. package/lib/view/view-portal.pipe.d.ts +2 -1
  281. package/lib/view/view.component.d.ts +1 -11
  282. package/lib/view/workbench-view-route-guards.d.ts +36 -0
  283. package/lib/view/workbench-view.model.d.ts +46 -13
  284. package/lib/view/workbench-view.registry.d.ts +4 -3
  285. package/lib/view//311/265workbench-view.model.d.ts +79 -14
  286. package/lib/view-dnd/grid-drop-targets.util.d.ts +15 -17
  287. package/lib/view-dnd/view-drag.service.d.ts +12 -4
  288. package/lib/view-dnd/view-drop-zone.directive.d.ts +1 -1
  289. package/lib/{workbench-module-config.d.ts → workbench-config.d.ts} +29 -71
  290. package/lib/workbench.component.d.ts +2 -2
  291. package/lib/workbench.constants.d.ts +6 -8
  292. package/lib/workbench.model.d.ts +20 -8
  293. package/lib/workbench.module.d.ts +12 -7
  294. package/lib/workbench.provider.d.ts +38 -0
  295. package/lib/workbench.service.d.ts +32 -8
  296. package/lib//311/265workbench.service.d.ts +9 -3
  297. package/package.json +8 -8
  298. package/esm2022/lib/layout/migration/workbench-layout-migrator.service.mjs +0 -38
  299. package/esm2022/lib/layout/migration/workbench-layout-v1-migrator.service.mjs +0 -59
  300. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-capability-interceptor.service.mjs +0 -30
  301. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-intent-interceptor.service.mjs +0 -130
  302. package/esm2022/lib/microfrontend-platform/routing/microfrontend-navigational-states.mjs +0 -22
  303. package/esm2022/lib/microfrontend-platform/routing/microfrontend-routes.mjs +0 -71
  304. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-capability-interceptor.service.mjs +0 -54
  305. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-intent-interceptor.service.mjs +0 -123
  306. package/esm2022/lib/routing/navigation-state.resolver.mjs +0 -54
  307. package/esm2022/lib/view/workbench-view-pre-destroy.guard.mjs +0 -36
  308. package/esm2022/lib/workbench-module-config.mjs +0 -15
  309. package/lib/layout/migration/workbench-layout-migrator.service.d.ts +0 -15
  310. package/lib/layout/migration/workbench-layout-v1-migrator.service.d.ts +0 -12
  311. package/lib/microfrontend-platform/routing/microfrontend-navigational-states.d.ts +0 -11
  312. package/lib/microfrontend-platform/routing/microfrontend-routes.d.ts +0 -38
  313. package/lib/routing/navigation-state.resolver.d.ts +0 -12
  314. package/lib/view/workbench-view-pre-destroy.guard.d.ts +0 -5
package/README.md CHANGED
@@ -7,7 +7,7 @@ The workbench layout is a grid of parts. Parts are aligned relative to each othe
7
7
 
8
8
  The layout can be divided into a main and a peripheral area, with the main area as the primary place for opening views. The peripheral area arranges parts around the main area to provide navigation or context-sensitive assistance to support the user's workflow. Defining a main area is optional and recommended for applications requiring a dedicated and maximizable area for user interaction.
9
9
 
10
- Multiple layouts, called perspectives, are supported. Perspectives can be switched with one perspective active at a time. Perspectives share the same main area, if any.
10
+ Multiple layouts, called perspectives, are supported. Perspectives can be switched. Only one perspective is active at a time. Perspectives share the same main area, if any.
11
11
 
12
12
  The sources for this package are in [SCION Workbench](https://github.com/SchweizerischeBundesbahnen/scion-workbench) repo. Please file issues and pull requests against that repo.
13
13
 
@@ -19,10 +19,10 @@ export class ActivationInstantProvider {
19
19
  now() {
20
20
  return Date.now();
21
21
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ActivationInstantProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
23
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ActivationInstantProvider, providedIn: 'root' }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ActivationInstantProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
23
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ActivationInstantProvider, providedIn: 'root' }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ActivationInstantProvider, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ActivationInstantProvider, decorators: [{
26
26
  type: Injectable,
27
27
  args: [{ providedIn: 'root' }]
28
28
  }] });
@@ -11,7 +11,7 @@ export function assertType(object, assert) {
11
11
  if (object === undefined) {
12
12
  throw Error(`[AssertError] Object must not be 'undefined'.`);
13
13
  }
14
- if (!Arrays.coerce(assert.toBeOneOf).includes(object.constructor)) {
14
+ if (!Arrays.coerce(assert.toBeOneOf).some(expectedType => object instanceof expectedType)) {
15
15
  const expectedType = Arrays.coerce(assert.toBeOneOf).map(it => it.name).join(' or ');
16
16
  const actualType = object.constructor.name;
17
17
  throw Error(`[AssertError] Object not of the expected type [expected=${expectedType}, actual=${actualType}].`);
@@ -28,4 +28,4 @@ export function assertNotNullish(value, errorFn) {
28
28
  throw errorFn?.() ?? Error('[AssertError] Value expected not to be `undefined`, but was `undefined`.');
29
29
  }
30
30
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXJ0cy51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvY29tbW9uL2Fzc2VydHMudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0M7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQUMsTUFBVyxFQUFFLE1BQTRDO0lBQ2xGLElBQUksTUFBTSxLQUFLLElBQUksRUFBRTtRQUNuQixNQUFNLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0tBQ3pEO0lBQ0QsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1FBQ3hCLE1BQU0sS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7S0FDOUQ7SUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUNqRSxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JGLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzNDLE1BQU0sS0FBSyxDQUFDLDJEQUEyRCxZQUFZLFlBQVksVUFBVSxJQUFJLENBQUMsQ0FBQztLQUNoSDtBQUNILENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxLQUFVLEVBQUUsT0FBcUI7SUFDaEUsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1FBQ2xCLE1BQU0sT0FBTyxFQUFFLEVBQUUsSUFBSSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztLQUM5RjtJQUNELElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtRQUN2QixNQUFNLE9BQU8sRUFBRSxFQUFFLElBQUksS0FBSyxDQUFDLDBFQUEwRSxDQUFDLENBQUM7S0FDeEc7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QXJyYXlzfSBmcm9tICdAc2Npb24vdG9vbGtpdC91dGlsJztcblxuLyoqXG4gKiBBc3NlcnRzIHRoZSBnaXZlbiBvYmplY3QgdG8gYmUgb2YgdGhlIGdpdmVuIHR5cGUgKGFuZCBub3Qgc2ltcGx5IGEgSmF2YVNjcmlwdCBvYmplY3QgbGl0ZXJhbCkuXG4gKlxuICogVGhyb3dzIGFuIGVycm9yIGlmIG5vdCBvZiB0aGUgZ2l2ZW4gdHlwZSwgb3IgaWYgYG51bGxgIG9yIGB1bmRlZmluZWRgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0VHlwZShvYmplY3Q6IGFueSwgYXNzZXJ0OiB7dG9CZU9uZU9mOiBUeXBlPGFueT5bXSB8IFR5cGU8YW55Pn0pOiB2b2lkIHtcbiAgaWYgKG9iamVjdCA9PT0gbnVsbCkge1xuICAgIHRocm93IEVycm9yKGBbQXNzZXJ0RXJyb3JdIE9iamVjdCBtdXN0IG5vdCBiZSAnbnVsbCcuYCk7XG4gIH1cbiAgaWYgKG9iamVjdCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgRXJyb3IoYFtBc3NlcnRFcnJvcl0gT2JqZWN0IG11c3Qgbm90IGJlICd1bmRlZmluZWQnLmApO1xuICB9XG4gIGlmICghQXJyYXlzLmNvZXJjZShhc3NlcnQudG9CZU9uZU9mKS5pbmNsdWRlcyhvYmplY3QuY29uc3RydWN0b3IpKSB7XG4gICAgY29uc3QgZXhwZWN0ZWRUeXBlID0gQXJyYXlzLmNvZXJjZShhc3NlcnQudG9CZU9uZU9mKS5tYXAoaXQgPT4gaXQubmFtZSkuam9pbignIG9yICcpO1xuICAgIGNvbnN0IGFjdHVhbFR5cGUgPSBvYmplY3QuY29uc3RydWN0b3IubmFtZTtcbiAgICB0aHJvdyBFcnJvcihgW0Fzc2VydEVycm9yXSBPYmplY3Qgbm90IG9mIHRoZSBleHBlY3RlZCB0eXBlIFtleHBlY3RlZD0ke2V4cGVjdGVkVHlwZX0sIGFjdHVhbD0ke2FjdHVhbFR5cGV9XS5gKTtcbiAgfVxufVxuXG4vKipcbiAqIEFzc2VydHMgdGhlIGdpdmVuIG9iamVjdCBub3QgdG8gYmUgYG51bGxgIG9yIGB1bmRlZmluZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnROb3ROdWxsaXNoKHZhbHVlOiBhbnksIGVycm9yRm4/OiAoKSA9PiBFcnJvcik6IHZvaWQge1xuICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICB0aHJvdyBlcnJvckZuPy4oKSA/PyBFcnJvcignW0Fzc2VydEVycm9yXSBWYWx1ZSBleHBlY3RlZCBub3QgdG8gYmUgYG51bGxgLCBidXQgd2FzIGBudWxsYC4nKTtcbiAgfVxuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IGVycm9yRm4/LigpID8/IEVycm9yKCdbQXNzZXJ0RXJyb3JdIFZhbHVlIGV4cGVjdGVkIG5vdCB0byBiZSBgdW5kZWZpbmVkYCwgYnV0IHdhcyBgdW5kZWZpbmVkYC4nKTtcbiAgfVxufVxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXJ0cy51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvY29tbW9uL2Fzc2VydHMudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0M7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQUMsTUFBVyxFQUFFLE1BQTRDO0lBQ2xGLElBQUksTUFBTSxLQUFLLElBQUksRUFBRTtRQUNuQixNQUFNLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0tBQ3pEO0lBQ0QsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1FBQ3hCLE1BQU0sS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7S0FDOUQ7SUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsTUFBTSxZQUFZLFlBQVksQ0FBQyxFQUFFO1FBQ3pGLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckYsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDM0MsTUFBTSxLQUFLLENBQUMsMkRBQTJELFlBQVksWUFBWSxVQUFVLElBQUksQ0FBQyxDQUFDO0tBQ2hIO0FBQ0gsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEtBQVUsRUFBRSxPQUFxQjtJQUNoRSxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDbEIsTUFBTSxPQUFPLEVBQUUsRUFBRSxJQUFJLEtBQUssQ0FBQyxnRUFBZ0UsQ0FBQyxDQUFDO0tBQzlGO0lBQ0QsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1FBQ3ZCLE1BQU0sT0FBTyxFQUFFLEVBQUUsSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztLQUN4RztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBcnJheXN9IGZyb20gJ0BzY2lvbi90b29sa2l0L3V0aWwnO1xuXG4vKipcbiAqIEFzc2VydHMgdGhlIGdpdmVuIG9iamVjdCB0byBiZSBvZiB0aGUgZ2l2ZW4gdHlwZSAoYW5kIG5vdCBzaW1wbHkgYSBKYXZhU2NyaXB0IG9iamVjdCBsaXRlcmFsKS5cbiAqXG4gKiBUaHJvd3MgYW4gZXJyb3IgaWYgbm90IG9mIHRoZSBnaXZlbiB0eXBlLCBvciBpZiBgbnVsbGAgb3IgYHVuZGVmaW5lZGAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRUeXBlKG9iamVjdDogYW55LCBhc3NlcnQ6IHt0b0JlT25lT2Y6IFR5cGU8YW55PltdIHwgVHlwZTxhbnk+fSk6IHZvaWQge1xuICBpZiAob2JqZWN0ID09PSBudWxsKSB7XG4gICAgdGhyb3cgRXJyb3IoYFtBc3NlcnRFcnJvcl0gT2JqZWN0IG11c3Qgbm90IGJlICdudWxsJy5gKTtcbiAgfVxuICBpZiAob2JqZWN0ID09PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBFcnJvcihgW0Fzc2VydEVycm9yXSBPYmplY3QgbXVzdCBub3QgYmUgJ3VuZGVmaW5lZCcuYCk7XG4gIH1cbiAgaWYgKCFBcnJheXMuY29lcmNlKGFzc2VydC50b0JlT25lT2YpLnNvbWUoZXhwZWN0ZWRUeXBlID0+IG9iamVjdCBpbnN0YW5jZW9mIGV4cGVjdGVkVHlwZSkpIHtcbiAgICBjb25zdCBleHBlY3RlZFR5cGUgPSBBcnJheXMuY29lcmNlKGFzc2VydC50b0JlT25lT2YpLm1hcChpdCA9PiBpdC5uYW1lKS5qb2luKCcgb3IgJyk7XG4gICAgY29uc3QgYWN0dWFsVHlwZSA9IG9iamVjdC5jb25zdHJ1Y3Rvci5uYW1lO1xuICAgIHRocm93IEVycm9yKGBbQXNzZXJ0RXJyb3JdIE9iamVjdCBub3Qgb2YgdGhlIGV4cGVjdGVkIHR5cGUgW2V4cGVjdGVkPSR7ZXhwZWN0ZWRUeXBlfSwgYWN0dWFsPSR7YWN0dWFsVHlwZX1dLmApO1xuICB9XG59XG5cbi8qKlxuICogQXNzZXJ0cyB0aGUgZ2l2ZW4gb2JqZWN0IG5vdCB0byBiZSBgbnVsbGAgb3IgYHVuZGVmaW5lZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydE5vdE51bGxpc2godmFsdWU6IGFueSwgZXJyb3JGbj86ICgpID0+IEVycm9yKTogdm9pZCB7XG4gIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgIHRocm93IGVycm9yRm4/LigpID8/IEVycm9yKCdbQXNzZXJ0RXJyb3JdIFZhbHVlIGV4cGVjdGVkIG5vdCB0byBiZSBgbnVsbGAsIGJ1dCB3YXMgYG51bGxgLicpO1xuICB9XG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgZXJyb3JGbj8uKCkgPz8gRXJyb3IoJ1tBc3NlcnRFcnJvcl0gVmFsdWUgZXhwZWN0ZWQgbm90IHRvIGJlIGB1bmRlZmluZWRgLCBidXQgd2FzIGB1bmRlZmluZWRgLicpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,61 @@
1
+ /*
2
+ * Copyright (c) 2018-2024 Swiss Federal Railways
3
+ *
4
+ * This program and the accompanying materials are made
5
+ * available under the terms of the Eclipse Public License 2.0
6
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
7
+ *
8
+ * SPDX-License-Identifier: EPL-2.0
9
+ */
10
+ import { Subject } from 'rxjs';
11
+ import { map, startWith } from 'rxjs/operators';
12
+ import { Arrays } from '@scion/toolkit/util';
13
+ /**
14
+ * Container for managing CSS classes set in different scopes.
15
+ */
16
+ export class ClassList {
17
+ constructor() {
18
+ this._cssClasses = new Map();
19
+ this._change$ = new Subject();
20
+ this.value = new Array();
21
+ this.value$ = this._change$
22
+ .pipe(startWith(undefined), map(() => [...this.value]));
23
+ }
24
+ /**
25
+ * Sets CSS classes for a specific scope.
26
+ */
27
+ set(cssClasses, options) {
28
+ this._cssClasses.set(options.scope, Arrays.coerce(cssClasses));
29
+ this.computeValue();
30
+ }
31
+ /**
32
+ * Retuns CSS classes of a specific scope.
33
+ */
34
+ get(options) {
35
+ return this._cssClasses.get(options.scope) ?? [];
36
+ }
37
+ /**
38
+ * Removes CSS classes of a specific scope.
39
+ */
40
+ remove(options) {
41
+ this._cssClasses.delete(options.scope);
42
+ this.computeValue();
43
+ }
44
+ /**
45
+ * Returns the CSS classes as readonly {@link Map} grouped by scope,
46
+ * useful to transfer the class list to a different browsing context.
47
+ */
48
+ toMap() {
49
+ return new Map(this._cssClasses.entries());
50
+ }
51
+ /**
52
+ * Computes the aggregated list of CSS classes.
53
+ */
54
+ computeValue() {
55
+ this.value.length = 0;
56
+ const classes = new Set(Array.from(this._cssClasses.values()).flat());
57
+ classes.forEach(clazz => this.value.push(clazz));
58
+ this._change$.next();
59
+ }
60
+ }
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL2NvbW1vbi9jbGFzcy1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFhLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUzQzs7R0FFRztBQUNILE1BQU0sT0FBTyxTQUFTO0lBUXBCO1FBTmlCLGdCQUFXLEdBQUcsSUFBSSxHQUFHLEVBQTZCLENBQUM7UUFDbkQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFaEMsVUFBSyxHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7UUFJMUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUTthQUN4QixJQUFJLENBQ0gsU0FBUyxDQUFDLFNBQWlCLENBQUMsRUFDNUIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDM0IsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNJLEdBQUcsQ0FBQyxVQUFnRCxFQUFFLE9BQWlDO1FBQzVGLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxHQUFHLENBQUMsT0FBaUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxPQUFpQztRQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLO1FBQ1YsT0FBTyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ssWUFBWTtRQUNsQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDdEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN0RSxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyNCBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzdGFydFdpdGh9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QXJyYXlzfSBmcm9tICdAc2Npb24vdG9vbGtpdC91dGlsJztcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIG1hbmFnaW5nIENTUyBjbGFzc2VzIHNldCBpbiBkaWZmZXJlbnQgc2NvcGVzLlxuICovXG5leHBvcnQgY2xhc3MgQ2xhc3NMaXN0IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jc3NDbGFzc2VzID0gbmV3IE1hcDxDbGFzc0xpc3RTY29wZXMsIHN0cmluZ1tdPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWUgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWUkOiBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnZhbHVlJCA9IHRoaXMuX2NoYW5nZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBzdGFydFdpdGgodW5kZWZpbmVkIGFzIHZvaWQpLFxuICAgICAgICBtYXAoKCkgPT4gWy4uLnRoaXMudmFsdWVdKSxcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBDU1MgY2xhc3NlcyBmb3IgYSBzcGVjaWZpYyBzY29wZS5cbiAgICovXG4gIHB1YmxpYyBzZXQoY3NzQ2xhc3Nlczogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsIHwgdW5kZWZpbmVkLCBvcHRpb25zOiB7c2NvcGU6IENsYXNzTGlzdFNjb3Blc30pOiB2b2lkIHtcbiAgICB0aGlzLl9jc3NDbGFzc2VzLnNldChvcHRpb25zLnNjb3BlLCBBcnJheXMuY29lcmNlKGNzc0NsYXNzZXMpKTtcbiAgICB0aGlzLmNvbXB1dGVWYWx1ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVucyBDU1MgY2xhc3NlcyBvZiBhIHNwZWNpZmljIHNjb3BlLlxuICAgKi9cbiAgcHVibGljIGdldChvcHRpb25zOiB7c2NvcGU6IENsYXNzTGlzdFNjb3Blc30pOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2Nzc0NsYXNzZXMuZ2V0KG9wdGlvbnMuc2NvcGUpID8/IFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgQ1NTIGNsYXNzZXMgb2YgYSBzcGVjaWZpYyBzY29wZS5cbiAgICovXG4gIHB1YmxpYyByZW1vdmUob3B0aW9uczoge3Njb3BlOiBDbGFzc0xpc3RTY29wZXN9KTogdm9pZCB7XG4gICAgdGhpcy5fY3NzQ2xhc3Nlcy5kZWxldGUob3B0aW9ucy5zY29wZSk7XG4gICAgdGhpcy5jb21wdXRlVmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBDU1MgY2xhc3NlcyBhcyByZWFkb25seSB7QGxpbmsgTWFwfSBncm91cGVkIGJ5IHNjb3BlLFxuICAgKiB1c2VmdWwgdG8gdHJhbnNmZXIgdGhlIGNsYXNzIGxpc3QgdG8gYSBkaWZmZXJlbnQgYnJvd3NpbmcgY29udGV4dC5cbiAgICovXG4gIHB1YmxpYyB0b01hcCgpOiBSZWFkb25seU1hcDxDbGFzc0xpc3RTY29wZXMsIHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIG5ldyBNYXAodGhpcy5fY3NzQ2xhc3Nlcy5lbnRyaWVzKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIHRoZSBhZ2dyZWdhdGVkIGxpc3Qgb2YgQ1NTIGNsYXNzZXMuXG4gICAqL1xuICBwcml2YXRlIGNvbXB1dGVWYWx1ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlLmxlbmd0aCA9IDA7XG4gICAgY29uc3QgY2xhc3NlcyA9IG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLl9jc3NDbGFzc2VzLnZhbHVlcygpKS5mbGF0KCkpO1xuICAgIGNsYXNzZXMuZm9yRWFjaChjbGF6eiA9PiB0aGlzLnZhbHVlLnB1c2goY2xhenopKTtcbiAgICB0aGlzLl9jaGFuZ2UkLm5leHQoKTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgc2NvcGVzIHVzZWQgaW4ge0BsaW5rIENsYXNzTGlzdH0uXG4gKlxuICogYGxheW91dGA6IFVzZSBmb3IgQ1NTIGNsYXNzZXMgZGVmaW5lZCBvbiB0aGUgbGF5b3V0LlxuICogYG5hdmlnYXRpb25gOiBVc2UgZm9yIENTUyBjbGFzc2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgbmF2aWdhdGlvbi5cbiAqIGByb3V0ZWA6IFVzZSBmb3IgQ1NTIGNsYXNzZXMgZGVmaW5lZCBvbiB0aGUgcm91dGUuXG4gKiBgYXBwbGljYXRpb25gOiBVc2UgZm9yIENTUyBjbGFzc2VzIHNldCBieSB0aGUgYXBwbGljYXRpb24uXG4gKi9cbmV4cG9ydCB0eXBlIENsYXNzTGlzdFNjb3BlcyA9ICdsYXlvdXQnIHwgJ25hdmlnYXRpb24nIHwgJ3JvdXRlJyB8ICdhcHBsaWNhdGlvbic7XG5cbi8qKlxuICogQ1NTIGNsYXNzZXMgZ3JvdXBlZCBieSBzY29wZS5cbiAqL1xuZXhwb3J0IHR5cGUgQ2xhc3NMaXN0TWFwID0gUmVhZG9ubHlNYXA8Q2xhc3NMaXN0U2NvcGVzLCBzdHJpbmdbXT47XG4iXX0=
@@ -18,10 +18,10 @@ export class CoerceObservablePipe {
18
18
  transform(value) {
19
19
  return Observables.coerce(value);
20
20
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: CoerceObservablePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
22
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: CoerceObservablePipe, isStandalone: true, name: "wbCoerceObservable$" }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: CoerceObservablePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
22
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: CoerceObservablePipe, isStandalone: true, name: "wbCoerceObservable$" }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: CoerceObservablePipe, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: CoerceObservablePipe, decorators: [{
25
25
  type: Pipe,
26
26
  args: [{ name: 'wbCoerceObservable$', standalone: true }]
27
27
  }] });
@@ -17,10 +17,10 @@ export class FilterByPredicatePipe {
17
17
  transform(items, predicate) {
18
18
  return Arrays.coerce(items).filter(predicate);
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: FilterByPredicatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
21
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: FilterByPredicatePipe, isStandalone: true, name: "wbFilterByPredicate" }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: FilterByPredicatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
21
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: FilterByPredicatePipe, isStandalone: true, name: "wbFilterByPredicate" }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: FilterByPredicatePipe, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: FilterByPredicatePipe, decorators: [{
24
24
  type: Pipe,
25
25
  args: [{ name: 'wbFilterByPredicate', standalone: true }]
26
26
  }] });
@@ -21,10 +21,10 @@ export class FilterByTextPipe {
21
21
  return of(Arrays.coerce(items))
22
22
  .pipe(expand(it => filterControl.valueChanges.pipe(take(1), map(() => it))), filterArray(it => !filterControl.value || !!itemTextFn(it)?.match(toFilterRegExp(filterControl.value))));
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: FilterByTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
25
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: FilterByTextPipe, isStandalone: true, name: "wbFilterByText$" }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: FilterByTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
25
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: FilterByTextPipe, isStandalone: true, name: "wbFilterByText$" }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: FilterByTextPipe, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: FilterByTextPipe, decorators: [{
28
28
  type: Pipe,
29
29
  args: [{ name: 'wbFilterByText$', standalone: true }]
30
30
  }] });
@@ -8,7 +8,7 @@
8
8
  * SPDX-License-Identifier: EPL-2.0
9
9
  */
10
10
  import { Pipe } from '@angular/core';
11
- import { isGridElementVisible } from '../layoutworkbench-layout';
11
+ import { WorkbenchLayouts } from '../layout/workbench-layouts.util';
12
12
  import * as i0 from "@angular/core";
13
13
  /**
14
14
  * Returns given grid element, but only if visible.
@@ -17,16 +17,16 @@ import * as i0 from "@angular/core";
17
17
  */
18
18
  export class GridElementIfVisiblePipe {
19
19
  transform(gridElement) {
20
- if (gridElement && isGridElementVisible(gridElement)) {
20
+ if (gridElement && WorkbenchLayouts.isGridElementVisible(gridElement)) {
21
21
  return gridElement;
22
22
  }
23
23
  return null;
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: GridElementIfVisiblePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
26
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: GridElementIfVisiblePipe, isStandalone: true, name: "wbGridElementIfVisible" }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: GridElementIfVisiblePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
26
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: GridElementIfVisiblePipe, isStandalone: true, name: "wbGridElementIfVisible" }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: GridElementIfVisiblePipe, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: GridElementIfVisiblePipe, decorators: [{
29
29
  type: Pipe,
30
30
  args: [{ name: 'wbGridElementIfVisible', standalone: true }]
31
31
  }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1lbGVtZW50LWlmLXZpc2libGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL2NvbW1vbi9ncmlkLWVsZW1lbnQtaWYtdmlzaWJsZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7O0FBRWpFOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sd0JBQXdCO0lBRTVCLFNBQVMsQ0FBQyxXQUFpRDtRQUNoRSxJQUFJLFdBQVcsSUFBSSxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNwRCxPQUFPLFdBQVcsQ0FBQztTQUNwQjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs4R0FQVSx3QkFBd0I7NEdBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEcEMsSUFBSTttQkFBQyxFQUFDLElBQUksRUFBRSx3QkFBd0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNUGFydCwgTVRyZWVOb2RlfSBmcm9tICcuLi9sYXlvdXQvd29ya2JlbmNoLWxheW91dC5tb2RlbCc7XG5pbXBvcnQge2lzR3JpZEVsZW1lbnRWaXNpYmxlfSBmcm9tICcuLi9sYXlvdXQvybV3b3JrYmVuY2gtbGF5b3V0JztcblxuLyoqXG4gKiBSZXR1cm5zIGdpdmVuIGdyaWQgZWxlbWVudCwgYnV0IG9ubHkgaWYgdmlzaWJsZS5cbiAqXG4gKiBAc2VlIGlzR3JpZEVsZW1lbnRWaXNpYmxlXG4gKi9cbkBQaXBlKHtuYW1lOiAnd2JHcmlkRWxlbWVudElmVmlzaWJsZScsIHN0YW5kYWxvbmU6IHRydWV9KVxuZXhwb3J0IGNsYXNzIEdyaWRFbGVtZW50SWZWaXNpYmxlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHB1YmxpYyB0cmFuc2Zvcm0oZ3JpZEVsZW1lbnQ6IE1UcmVlTm9kZSB8IE1QYXJ0IHwgbnVsbCB8IHVuZGVmaW5lZCk6IE1UcmVlTm9kZSB8IE1QYXJ0IHwgbnVsbCB7XG4gICAgaWYgKGdyaWRFbGVtZW50ICYmIGlzR3JpZEVsZW1lbnRWaXNpYmxlKGdyaWRFbGVtZW50KSkge1xuICAgICAgcmV0dXJuIGdyaWRFbGVtZW50O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1lbGVtZW50LWlmLXZpc2libGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL2NvbW1vbi9ncmlkLWVsZW1lbnQtaWYtdmlzaWJsZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7O0FBRWxFOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sd0JBQXdCO0lBRTVCLFNBQVMsQ0FBQyxXQUFpRDtRQUNoRSxJQUFJLFdBQVcsSUFBSSxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNyRSxPQUFPLFdBQVcsQ0FBQztTQUNwQjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs4R0FQVSx3QkFBd0I7NEdBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEcEMsSUFBSTttQkFBQyxFQUFDLElBQUksRUFBRSx3QkFBd0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNUGFydCwgTVRyZWVOb2RlfSBmcm9tICcuLi9sYXlvdXQvd29ya2JlbmNoLWxheW91dC5tb2RlbCc7XG5pbXBvcnQge1dvcmtiZW5jaExheW91dHN9IGZyb20gJy4uL2xheW91dC93b3JrYmVuY2gtbGF5b3V0cy51dGlsJztcblxuLyoqXG4gKiBSZXR1cm5zIGdpdmVuIGdyaWQgZWxlbWVudCwgYnV0IG9ubHkgaWYgdmlzaWJsZS5cbiAqXG4gKiBAc2VlIGlzR3JpZEVsZW1lbnRWaXNpYmxlXG4gKi9cbkBQaXBlKHtuYW1lOiAnd2JHcmlkRWxlbWVudElmVmlzaWJsZScsIHN0YW5kYWxvbmU6IHRydWV9KVxuZXhwb3J0IGNsYXNzIEdyaWRFbGVtZW50SWZWaXNpYmxlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHB1YmxpYyB0cmFuc2Zvcm0oZ3JpZEVsZW1lbnQ6IE1UcmVlTm9kZSB8IE1QYXJ0IHwgbnVsbCB8IHVuZGVmaW5lZCk6IE1UcmVlTm9kZSB8IE1QYXJ0IHwgbnVsbCB7XG4gICAgaWYgKGdyaWRFbGVtZW50ICYmIFdvcmtiZW5jaExheW91dHMuaXNHcmlkRWxlbWVudFZpc2libGUoZ3JpZEVsZW1lbnQpKSB7XG4gICAgICByZXR1cm4gZ3JpZEVsZW1lbnQ7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=
@@ -16,10 +16,10 @@ export class InstanceofPipe {
16
16
  transform(object, type) {
17
17
  return object instanceof type ? object : null;
18
18
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: InstanceofPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
20
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: InstanceofPipe, isStandalone: true, name: "wbInstanceof" }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: InstanceofPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
20
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: InstanceofPipe, isStandalone: true, name: "wbInstanceof" }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: InstanceofPipe, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: InstanceofPipe, decorators: [{
23
23
  type: Pipe,
24
24
  args: [{ name: 'wbInstanceof', standalone: true }]
25
25
  }] });
@@ -18,10 +18,10 @@ export class MapCoercePipe {
18
18
  transform(mapLike) {
19
19
  return Maps.coerce(mapLike);
20
20
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: MapCoercePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
22
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: MapCoercePipe, isStandalone: true, name: "wbCoerceMap" }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapCoercePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
22
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: MapCoercePipe, isStandalone: true, name: "wbCoerceMap" }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: MapCoercePipe, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapCoercePipe, decorators: [{
25
25
  type: Pipe,
26
26
  args: [{ name: 'wbCoerceMap', standalone: true }]
27
27
  }] });
@@ -28,10 +28,10 @@ export class NullIfEmptyPipe {
28
28
  }
29
29
  return value;
30
30
  }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: NullIfEmptyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
32
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: NullIfEmptyPipe, isStandalone: true, name: "wbNullIfEmpty" }); }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: NullIfEmptyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
32
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: NullIfEmptyPipe, isStandalone: true, name: "wbNullIfEmpty" }); }
33
33
  }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: NullIfEmptyPipe, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: NullIfEmptyPipe, decorators: [{
35
35
  type: Pipe,
36
36
  args: [{ name: 'wbNullIfEmpty', standalone: true }]
37
37
  }] });
@@ -0,0 +1,34 @@
1
+ /*
2
+ * Copyright (c) 2018-2024 Swiss Federal Railways
3
+ *
4
+ * This program and the accompanying materials are made
5
+ * available under the terms of the Eclipse Public License 2.0
6
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
7
+ *
8
+ * SPDX-License-Identifier: EPL-2.0
9
+ */
10
+ import { Dictionaries } from '@scion/toolkit/util';
11
+ /**
12
+ * Provides helper functions for working with objects.
13
+ */
14
+ export const Objects = {
15
+ /**
16
+ * Like {@link Object.keys}, but preserving the data type of keys.
17
+ */
18
+ keys: (object) => {
19
+ return Object.keys(object);
20
+ },
21
+ /**
22
+ * Like {@link Object.entries}, but preserving the data type of keys.
23
+ */
24
+ entries: (object) => {
25
+ return Object.entries(object);
26
+ },
27
+ /**
28
+ * Like {@link Dictionaries.withoutUndefinedEntries}, but preserving the object data type.
29
+ */
30
+ withoutUndefinedEntries: (object) => {
31
+ return Dictionaries.withoutUndefinedEntries(object);
32
+ },
33
+ };
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0cy51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvY29tbW9uL29iamVjdHMudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUVqRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRztJQUVyQjs7T0FFRztJQUNILElBQUksRUFBRSxDQUFJLE1BQVMsRUFBa0IsRUFBRTtRQUNyQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBa0MsQ0FBbUIsQ0FBQztJQUMzRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPLEVBQUUsQ0FBZ0IsTUFBd0MsRUFBaUIsRUFBRTtRQUNsRixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFrQixDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILHVCQUF1QixFQUFFLENBQUksTUFBbUMsRUFBSyxFQUFFO1FBQ3JFLE9BQU8sWUFBWSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBTSxDQUFDO0lBQzNELENBQUM7Q0FDTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0RpY3Rpb25hcmllc30gZnJvbSAnQHNjaW9uL3Rvb2xraXQvdXRpbCc7XG5cbi8qKlxuICogUHJvdmlkZXMgaGVscGVyIGZ1bmN0aW9ucyBmb3Igd29ya2luZyB3aXRoIG9iamVjdHMuXG4gKi9cbmV4cG9ydCBjb25zdCBPYmplY3RzID0ge1xuXG4gIC8qKlxuICAgKiBMaWtlIHtAbGluayBPYmplY3Qua2V5c30sIGJ1dCBwcmVzZXJ2aW5nIHRoZSBkYXRhIHR5cGUgb2Yga2V5cy5cbiAgICovXG4gIGtleXM6IDxUPihvYmplY3Q6IFQpOiBBcnJheTxrZXlvZiBUPiA9PiB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKG9iamVjdCBhcyBSZWNvcmQ8a2V5b2YgVCwgdW5rbm93bj4pIGFzIEFycmF5PGtleW9mIFQ+O1xuICB9LFxuXG4gIC8qKlxuICAgKiBMaWtlIHtAbGluayBPYmplY3QuZW50cmllc30sIGJ1dCBwcmVzZXJ2aW5nIHRoZSBkYXRhIHR5cGUgb2Yga2V5cy5cbiAgICovXG4gIGVudHJpZXM6IDxWLCBLID0gc3RyaW5nPihvYmplY3Q6IFJlY29yZDxzdHJpbmcsIFY+IHwgQXJyYXlMaWtlPFY+KTogQXJyYXk8W0ssIFZdPiA9PiB7XG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9iamVjdCkgYXMgQXJyYXk8W0ssIFZdPjtcbiAgfSxcblxuICAvKipcbiAgICogTGlrZSB7QGxpbmsgRGljdGlvbmFyaWVzLndpdGhvdXRVbmRlZmluZWRFbnRyaWVzfSwgYnV0IHByZXNlcnZpbmcgdGhlIG9iamVjdCBkYXRhIHR5cGUuXG4gICAqL1xuICB3aXRob3V0VW5kZWZpbmVkRW50cmllczogPFQ+KG9iamVjdDogVCAmIFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogVCA9PiB7XG4gICAgcmV0dXJuIERpY3Rpb25hcmllcy53aXRob3V0VW5kZWZpbmVkRW50cmllcyhvYmplY3QpIGFzIFQ7XG4gIH0sXG59IGFzIGNvbnN0O1xuIl19
@@ -16,10 +16,10 @@ export class TypeofPipe {
16
16
  transform(object, type) {
17
17
  return typeof object === type;
18
18
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: TypeofPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
20
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: TypeofPipe, isStandalone: true, name: "wbTypeof" }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: TypeofPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
20
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: TypeofPipe, isStandalone: true, name: "wbTypeof" }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: TypeofPipe, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: TypeofPipe, decorators: [{
23
23
  type: Pipe,
24
24
  args: [{ name: 'wbTypeof', standalone: true }]
25
25
  }] });
@@ -0,0 +1,17 @@
1
+ /*
2
+ * Copyright (c) 2018-2024 Swiss Federal Railways
3
+ *
4
+ * This program and the accompanying materials are made
5
+ * available under the terms of the Eclipse Public License 2.0
6
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
7
+ *
8
+ * SPDX-License-Identifier: EPL-2.0
9
+ */
10
+ import { UUID } from '@scion/toolkit/uuid';
11
+ /**
12
+ * Generates a UUID (universally unique identifier) compliant with the RFC 4122 version 4.
13
+ */
14
+ export function randomUUID() {
15
+ return UUID.randomUUID();
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXVpZC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvY29tbW9uL3V1aWQudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQU96Qzs7R0FFRztBQUNILE1BQU0sVUFBVSxVQUFVO0lBQ3hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBVSxDQUFDO0FBQ25DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMjQgU3dpc3MgRmVkZXJhbCBSYWlsd2F5c1xuICpcbiAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGVcbiAqIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgMi4wXG4gKiB3aGljaCBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC9cbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7VVVJRH0gZnJvbSAnQHNjaW9uL3Rvb2xraXQvdXVpZCc7XG5cbi8qKlxuICogRm9ybWF0IG9mIGEgVVVJRCAodW5pdmVyc2FsbHkgdW5pcXVlIGlkZW50aWZpZXIpIGNvbXBsaWFudCB3aXRoIHRoZSBSRkMgNDEyMiB2ZXJzaW9uIDQuXG4gKi9cbmV4cG9ydCB0eXBlIFVVSUQgPSBgJHtzdHJpbmd9LSR7c3RyaW5nfS0ke3N0cmluZ30tJHtzdHJpbmd9LSR7c3RyaW5nfWA7XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgVVVJRCAodW5pdmVyc2FsbHkgdW5pcXVlIGlkZW50aWZpZXIpIGNvbXBsaWFudCB3aXRoIHRoZSBSRkMgNDEyMiB2ZXJzaW9uIDQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYW5kb21VVUlEKCk6IFVVSUQge1xuICByZXR1cm4gVVVJRC5yYW5kb21VVUlEKCkgYXMgVVVJRDtcbn1cbiJdfQ==
@@ -44,10 +44,10 @@ import * as i0 from "@angular/core";
44
44
  * ```
45
45
  */
46
46
  export class ContentAsOverlayComponent {
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ContentAsOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.3", type: ContentAsOverlayComponent, isStandalone: true, selector: "wb-content-as-overlay", inputs: { overlayHost: "overlayHost" }, ngImport: i0, template: "<!-- define the area where to project `ng-content` into -->\n<div wbContentProjection\n [wbContentProjectionContent]=\"ng_content_template\"\n [wbContentProjectionOverlayHost]=\"overlayHost\">\n</div>\n\n<!-- make `ng-content` available in the form of a template -->\n<ng-template #ng_content_template>\n <ng-content></ng-content>\n</ng-template>\n", styles: [":host{display:grid}\n"], dependencies: [{ kind: "directive", type: ContentProjectionDirective, selector: "[wbContentProjection]", inputs: ["wbContentProjectionOverlayHost", "wbContentProjectionContent"] }] }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ContentAsOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: ContentAsOverlayComponent, isStandalone: true, selector: "wb-content-as-overlay", inputs: { overlayHost: "overlayHost" }, ngImport: i0, template: "<!-- define the area where to project `ng-content` into -->\n<div wbContentProjection\n [wbContentProjectionContent]=\"ng_content_template\"\n [wbContentProjectionOverlayHost]=\"overlayHost\">\n</div>\n\n<!-- make `ng-content` available in the form of a template -->\n<ng-template #ng_content_template>\n <ng-content></ng-content>\n</ng-template>\n", styles: [":host{display:grid}\n"], dependencies: [{ kind: "directive", type: ContentProjectionDirective, selector: "[wbContentProjection]", inputs: ["wbContentProjectionOverlayHost", "wbContentProjectionContent"] }] }); }
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ContentAsOverlayComponent, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ContentAsOverlayComponent, decorators: [{
51
51
  type: Component,
52
52
  args: [{ selector: 'wb-content-as-overlay', standalone: true, imports: [ContentProjectionDirective], template: "<!-- define the area where to project `ng-content` into -->\n<div wbContentProjection\n [wbContentProjectionContent]=\"ng_content_template\"\n [wbContentProjectionOverlayHost]=\"overlayHost\">\n</div>\n\n<!-- make `ng-content` available in the form of a template -->\n<ng-template #ng_content_template>\n <ng-content></ng-content>\n</ng-template>\n", styles: [":host{display:grid}\n"] }]
53
53
  }], propDecorators: { overlayHost: [{
@@ -80,10 +80,10 @@ export class ContentProjectionDirective {
80
80
  ngOnDestroy() {
81
81
  this._contentViewRef?.destroy();
82
82
  }
83
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ContentProjectionDirective, deps: [{ token: i0.ElementRef }, { token: i1.ɵWorkbenchView, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
84
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.3", type: ContentProjectionDirective, isStandalone: true, selector: "[wbContentProjection]", inputs: { overlayHost: ["wbContentProjectionOverlayHost", "overlayHost"], contentTemplateRef: ["wbContentProjectionContent", "contentTemplateRef"] }, usesOnChanges: true, ngImport: i0 }); }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ContentProjectionDirective, deps: [{ token: i0.ElementRef }, { token: i1.ɵWorkbenchView, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
84
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.6", type: ContentProjectionDirective, isStandalone: true, selector: "[wbContentProjection]", inputs: { overlayHost: ["wbContentProjectionOverlayHost", "overlayHost"], contentTemplateRef: ["wbContentProjectionContent", "contentTemplateRef"] }, usesOnChanges: true, ngImport: i0 }); }
85
85
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ContentProjectionDirective, decorators: [{
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ContentProjectionDirective, decorators: [{
87
87
  type: Directive,
88
88
  args: [{ selector: '[wbContentProjection]', standalone: true }]
89
89
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.ɵWorkbenchView, decorators: [{
@@ -16,10 +16,10 @@ export class DialogActionFilterPipe {
16
16
  transform(actions, align) {
17
17
  return actions?.filter(action => action.align === align) ?? [];
18
18
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: DialogActionFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
20
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: DialogActionFilterPipe, isStandalone: true, name: "wbDialogActionFilter" }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DialogActionFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
20
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: DialogActionFilterPipe, isStandalone: true, name: "wbDialogActionFilter" }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: DialogActionFilterPipe, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DialogActionFilterPipe, decorators: [{
23
23
  type: Pipe,
24
24
  args: [{ name: 'wbDialogActionFilter', standalone: true }]
25
25
  }] });
@@ -20,10 +20,10 @@ export class DialogFooterComponent {
20
20
  constructor(dialog) {
21
21
  this.dialog = dialog;
22
22
  }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: DialogFooterComponent, deps: [{ token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.3", type: DialogFooterComponent, isStandalone: true, selector: "wb-dialog-footer", ngImport: i0, template: "<!-- Start Actions -->\n@if (dialog.actions | wbDialogActionFilter:'start' | wbNullIfEmpty; as actions) {\n <div class=\"actions start\">\n @for (action of actions; track action) {\n <ng-container *ngTemplateOutlet=\"action.template\"/>\n }\n </div>\n}\n\n<!-- End Actions -->\n@if (dialog.actions | wbDialogActionFilter:'end' | wbNullIfEmpty; as actions) {\n <div class=\"actions end\">\n @for (action of actions; track action) {\n <ng-container *ngTemplateOutlet=\"action.template\"/>\n }\n </div>\n}\n", styles: [":host{display:flex;padding:calc(.75 * var(--sci-workbench-dialog-padding)) var(--sci-workbench-dialog-padding);gap:calc(2 * var(--sci-workbench-dialog-padding))}:host>div.actions{flex:auto;display:flex;align-items:center;gap:calc(.5 * var(--sci-workbench-dialog-padding))}:host>div.actions.start{place-content:flex-start}:host>div.actions.end{place-content:flex-end}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: NullIfEmptyPipe, name: "wbNullIfEmpty" }, { kind: "pipe", type: DialogActionFilterPipe, name: "wbDialogActionFilter" }] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DialogFooterComponent, deps: [{ token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.6", type: DialogFooterComponent, isStandalone: true, selector: "wb-dialog-footer", ngImport: i0, template: "<!-- Start Actions -->\n@if (dialog.actions | wbDialogActionFilter:'start' | wbNullIfEmpty; as actions) {\n <div class=\"actions start\">\n @for (action of actions; track action) {\n <ng-container *ngTemplateOutlet=\"action.template\"/>\n }\n </div>\n}\n\n<!-- End Actions -->\n@if (dialog.actions | wbDialogActionFilter:'end' | wbNullIfEmpty; as actions) {\n <div class=\"actions end\">\n @for (action of actions; track action) {\n <ng-container *ngTemplateOutlet=\"action.template\"/>\n }\n </div>\n}\n", styles: [":host{display:flex;padding:calc(.75 * var(--sci-workbench-dialog-padding)) var(--sci-workbench-dialog-padding);gap:calc(2 * var(--sci-workbench-dialog-padding))}:host>div.actions{flex:auto;display:flex;align-items:center;gap:calc(.5 * var(--sci-workbench-dialog-padding))}:host>div.actions.start{place-content:flex-start}:host>div.actions.end{place-content:flex-end}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: NullIfEmptyPipe, name: "wbNullIfEmpty" }, { kind: "pipe", type: DialogActionFilterPipe, name: "wbDialogActionFilter" }] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: DialogFooterComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DialogFooterComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{ selector: 'wb-dialog-footer', standalone: true, imports: [
29
29
  NgTemplateOutlet,
@@ -36,10 +36,10 @@ export class WorkbenchDialogActionDirective {
36
36
  ngOnDestroy() {
37
37
  this._action.dispose();
38
38
  }
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogActionDirective, deps: [{ token: i0.TemplateRef }, { token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
40
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.3", type: WorkbenchDialogActionDirective, isStandalone: true, selector: "ng-template[wbDialogAction]", inputs: { align: "align" }, ngImport: i0 }); }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogActionDirective, deps: [{ token: i0.TemplateRef }, { token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
40
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.6", type: WorkbenchDialogActionDirective, isStandalone: true, selector: "ng-template[wbDialogAction]", inputs: { align: "align" }, ngImport: i0 }); }
41
41
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogActionDirective, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogActionDirective, decorators: [{
43
43
  type: Directive,
44
44
  args: [{ selector: 'ng-template[wbDialogAction]', standalone: true }]
45
45
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i1.ɵWorkbenchDialog }], propDecorators: { align: [{
@@ -30,10 +30,10 @@ export class WorkbenchDialogFooterDirective {
30
30
  ngOnDestroy() {
31
31
  this._footer.dispose();
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogFooterDirective, deps: [{ token: i0.TemplateRef }, { token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
34
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.0.3", type: WorkbenchDialogFooterDirective, isStandalone: true, selector: "ng-template[wbDialogFooter]", inputs: { divider: ["divider", "divider", booleanAttribute] }, ngImport: i0 }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogFooterDirective, deps: [{ token: i0.TemplateRef }, { token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
34
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.0.6", type: WorkbenchDialogFooterDirective, isStandalone: true, selector: "ng-template[wbDialogFooter]", inputs: { divider: ["divider", "divider", booleanAttribute] }, ngImport: i0 }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogFooterDirective, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogFooterDirective, decorators: [{
37
37
  type: Directive,
38
38
  args: [{ selector: 'ng-template[wbDialogFooter]', standalone: true }]
39
39
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i1.ɵWorkbenchDialog }], propDecorators: { divider: [{
@@ -25,10 +25,10 @@ export class DialogHeaderComponent {
25
25
  onCloseMouseDown(event) {
26
26
  event.stopPropagation(); // Prevent dragging the dialog with the close button.
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: DialogHeaderComponent, deps: [{ token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.3", type: DialogHeaderComponent, isStandalone: true, selector: "wb-dialog-header", ngImport: i0, template: "@if (dialog.title | wbCoerceObservable$ | async; as title) {\n <div class=\"title e2e-title\">\n <span>{{ title }}</span>\n </div>\n}\n\n@if (dialog.closable) {\n <button tabindex=\"-1\" class=\"close scion-workbench-icons e2e-close\"\n (mousedown)=\"onCloseMouseDown($event)\"\n (click)=\"onCloseClick()\">\n close\n </button>\n}\n", styles: [":host{display:flex;gap:var(--sci-workbench-dialog-padding);place-content:flex-end;padding-inline:var(--sci-workbench-dialog-padding);background-color:var(--sci-workbench-dialog-header-background-color);-webkit-user-select:none;user-select:none;height:var(--sci-workbench-dialog-header-height)}:host>div.title{flex:auto;display:flex;align-items:center;position:relative}:host>div.title>span{position:absolute;left:0;right:0;line-height:1.5;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:var(--sci-workbench-dialog-title-font-family);font-size:var(--sci-workbench-dialog-title-font-size);font-weight:var(--sci-workbench-dialog-title-font-weight);text-align:var(--sci-workbench-dialog-title-align)}:host>button.close{all:unset;flex:none;cursor:pointer;align-self:center}:host>button.close:not(:hover){opacity:.75}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: CoerceObservablePipe, name: "wbCoerceObservable$" }] }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DialogHeaderComponent, deps: [{ token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.6", type: DialogHeaderComponent, isStandalone: true, selector: "wb-dialog-header", ngImport: i0, template: "@if (dialog.title | wbCoerceObservable$ | async; as title) {\n <div class=\"title e2e-title\">\n <span>{{ title }}</span>\n </div>\n}\n\n@if (dialog.closable) {\n <button tabindex=\"-1\" class=\"close scion-workbench-icons e2e-close\"\n (mousedown)=\"onCloseMouseDown($event)\"\n (click)=\"onCloseClick()\">\n close\n </button>\n}\n", styles: [":host{display:flex;gap:var(--sci-workbench-dialog-padding);place-content:flex-end;padding-inline:var(--sci-workbench-dialog-padding);background-color:var(--sci-workbench-dialog-header-background-color);-webkit-user-select:none;user-select:none;height:var(--sci-workbench-dialog-header-height)}:host>div.title{flex:auto;display:flex;align-items:center;position:relative}:host>div.title>span{position:absolute;left:0;right:0;line-height:1.5;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:var(--sci-workbench-dialog-title-font-family);font-size:var(--sci-workbench-dialog-title-font-size);font-weight:var(--sci-workbench-dialog-title-font-weight);text-align:var(--sci-workbench-dialog-title-align)}:host>button.close{all:unset;flex:none;cursor:pointer;align-self:center}:host>button.close:not(:hover){opacity:.75}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: CoerceObservablePipe, name: "wbCoerceObservable$" }] }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: DialogHeaderComponent, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DialogHeaderComponent, decorators: [{
32
32
  type: Component,
33
33
  args: [{ selector: 'wb-dialog-header', standalone: true, imports: [
34
34
  AsyncPipe,
@@ -30,10 +30,10 @@ export class WorkbenchDialogHeaderDirective {
30
30
  ngOnDestroy() {
31
31
  this._header.dispose();
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogHeaderDirective, deps: [{ token: i0.TemplateRef }, { token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
34
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.0.3", type: WorkbenchDialogHeaderDirective, isStandalone: true, selector: "ng-template[wbDialogHeader]", inputs: { divider: ["divider", "divider", booleanAttribute] }, ngImport: i0 }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogHeaderDirective, deps: [{ token: i0.TemplateRef }, { token: i1.ɵWorkbenchDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
34
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.0.6", type: WorkbenchDialogHeaderDirective, isStandalone: true, selector: "ng-template[wbDialogHeader]", inputs: { divider: ["divider", "divider", booleanAttribute] }, ngImport: i0 }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogHeaderDirective, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogHeaderDirective, decorators: [{
37
37
  type: Directive,
38
38
  args: [{ selector: 'ng-template[wbDialogHeader]', standalone: true }]
39
39
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i1.ɵWorkbenchDialog }], propDecorators: { divider: [{
@@ -100,10 +100,10 @@ export class MovableDirective {
100
100
  }
101
101
  });
102
102
  }
103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: MovableDirective, deps: [{ token: i0.ElementRef }, { token: i0.DestroyRef }, { token: i1.WorkbenchLayoutService }], target: i0.ɵɵFactoryTarget.Directive }); }
104
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.3", type: MovableDirective, isStandalone: true, selector: "[wbMovable]", inputs: { wbHandleElement: ["wbHandle", "wbHandleElement"] }, outputs: { wbMove: "wbMovableMove" }, ngImport: i0 }); }
103
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MovableDirective, deps: [{ token: i0.ElementRef }, { token: i0.DestroyRef }, { token: i1.WorkbenchLayoutService }], target: i0.ɵɵFactoryTarget.Directive }); }
104
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.6", type: MovableDirective, isStandalone: true, selector: "[wbMovable]", inputs: { wbHandleElement: ["wbHandle", "wbHandleElement"] }, outputs: { wbMove: "wbMovableMove" }, ngImport: i0 }); }
105
105
  }
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: MovableDirective, decorators: [{
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MovableDirective, decorators: [{
107
107
  type: Directive,
108
108
  args: [{ selector: '[wbMovable]', standalone: true }]
109
109
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.DestroyRef }, { type: i1.WorkbenchLayoutService }], propDecorators: { wbHandleElement: [{
@@ -293,10 +293,10 @@ export class ResizableDirective {
293
293
  this.uninstallHandles();
294
294
  }
295
295
  }
296
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ResizableDirective, deps: [{ token: i0.ElementRef }, { token: i1.WorkbenchLayoutService }], target: i0.ɵɵFactoryTarget.Directive }); }
297
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.3", type: ResizableDirective, isStandalone: true, selector: "[wbResizable]", inputs: { enabled: ["wbResizableEnabled", "enabled"] }, outputs: { wbResize: "wbResizableResize" }, usesOnChanges: true, ngImport: i0 }); }
296
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ResizableDirective, deps: [{ token: i0.ElementRef }, { token: i1.WorkbenchLayoutService }], target: i0.ɵɵFactoryTarget.Directive }); }
297
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.6", type: ResizableDirective, isStandalone: true, selector: "[wbResizable]", inputs: { enabled: ["wbResizableEnabled", "enabled"] }, outputs: { wbResize: "wbResizableResize" }, usesOnChanges: true, ngImport: i0 }); }
298
298
  }
299
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: ResizableDirective, decorators: [{
299
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ResizableDirective, decorators: [{
300
300
  type: Directive,
301
301
  args: [{ selector: '[wbResizable]', standalone: true }]
302
302
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.WorkbenchLayoutService }], propDecorators: { enabled: [{
@@ -127,14 +127,14 @@ export class WorkbenchDialogComponent {
127
127
  onHeaderDimensionChange(dimension) {
128
128
  this._headerHeight = `${dimension.offsetHeight}px`;
129
129
  }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogComponent, deps: [{ token: i1.ɵWorkbenchDialog }, { token: i0.NgZone }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
131
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.3", type: WorkbenchDialogComponent, isStandalone: true, selector: "wb-dialog", host: { listeners: { "keydown.escape": "onEscape($event)" }, properties: { "style.--\u0275dialog-transform-translate-x": "this.transformTranslateX", "style.--\u0275dialog-transform-translate-y": "this.transformTranslateY", "style.--\u0275dialog-min-height": "this.minHeight", "style.--\u0275dialog-height": "this.height", "style.--\u0275dialog-max-height": "this.maxHeight", "style.--\u0275dialog-min-width": "this.minWidth", "style.--\u0275dialog-width": "this.width", "style.--\u0275dialog-max-width": "this.maxWidth", "class.justified": "this.justified", "attr.class": "this.cssClasses", "attr.data-dialogid": "this.id" } }, viewQueries: [{ propertyName: "_cdkTrapFocus", first: true, predicate: CdkTrapFocus, descendants: true, static: true }, { propertyName: "_dialogElement", first: true, predicate: ["dialog_element"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"dialog e2e-dialog\"\n [class.blinking]=\"dialog.blinking$ | async\"\n [tabindex]=\"-1\"\n wbMovable [wbHandle]=\"header\" (wbMovableMove)=\"onMove($event)\"\n wbResizable [wbResizableEnabled]=\"dialog.resizable\" (wbResizableResize)=\"onResize($event)\"\n @enter\n [@.disabled]=\"!dialog.animate\"\n wbGlassPane\n #dialog_element>\n <div class=\"dialog-box e2e-dialog-box\" cdkTrapFocus>\n <header #header\n class=\"e2e-dialog-header\"\n [class.divider]=\"dialog.header?.divider ?? true\"\n sciDimension (sciDimensionChange)=\"onHeaderDimensionChange($event)\">\n <ng-container *ngTemplateOutlet=\"dialog.header?.template ?? default_dialog_header\"/>\n </header>\n\n <sci-viewport class=\"content e2e-dialog-content\">\n <ng-container *ngComponentOutlet=\"dialog.component; inputs: dialog.inputs\"/>\n </sci-viewport>\n\n @if (dialog.footer || dialog.actions.length) {\n <footer class=\"e2e-dialog-footer\" [class.divider]=\"dialog.footer?.divider ?? true\">\n <ng-container *ngTemplateOutlet=\"dialog.footer?.template ?? default_dialog_footer\"/>\n </footer>\n }\n </div>\n</div>\n\n<ng-template #default_dialog_header>\n <wb-dialog-header/>\n</ng-template>\n\n<ng-template #default_dialog_footer>\n <wb-dialog-footer/>\n</ng-template>\n", styles: ["@charset \"UTF-8\";:host{--\\275 dialog-transform-translate-x: 0;--\\275 dialog-transform-translate-y: 0;--\\275 dialog-min-height: initial;--\\275 dialog-height: initial;--\\275 dialog-max-height: initial;--\\275 dialog-min-width: initial;--\\275 dialog-width: initial;--\\275 dialog-max-width: initial;--\\275 dialog-padding: var(--sci-workbench-dialog-padding);display:flex;flex-direction:column;align-items:center;position:relative}:host.justified{--\\275 dialog-padding: 0}:host>div.dialog{display:flex;flex-direction:column;position:absolute;top:3%;color:var(--sci-color-text);transform:translate(calc(1px * var(--\\275 dialog-transform-translate-x))) translateY(calc(1px * var(--\\275 dialog-transform-translate-y)));min-height:var(--\\275 dialog-min-height);height:var(--\\275 dialog-height);max-height:var(--\\275 dialog-max-height);min-width:var(--\\275 dialog-min-width);width:var(--\\275 dialog-width);max-width:var(--\\275 dialog-max-width);outline:none;pointer-events:auto}:host>div.dialog>div.dialog-box{flex:auto;display:flex;flex-direction:column;gap:calc(1.25 * var(--\\275 dialog-padding));border:1px solid var(--sci-color-border);border-radius:var(--sci-corner);background-color:var(--sci-color-background-elevation);box-shadow:var(--sci-elevation) var(--sci-static-color-black);overflow:hidden}:host>div.dialog>div.dialog-box>header{flex:none}:host>div.dialog>div.dialog-box>header.divider{border-bottom:1px solid var(--sci-color-border)}:host>div.dialog>div.dialog-box>sci-viewport{flex:auto}:host>div.dialog>div.dialog-box>sci-viewport::part(content){padding-inline:var(--\\275 dialog-padding)}:host>div.dialog>div.dialog-box>footer{flex:none}:host>div.dialog>div.dialog-box>footer.divider{border-top:1px solid var(--sci-color-border)}:host>div.dialog.blinking{animation-duration:50ms;animation-iteration-count:infinite;animation-name:blink-animation}@keyframes blink-animation{0%{transform:translate(calc(1px * var(--\\275 dialog-transform-translate-x) - 2px)) translateY(calc(1px * var(--\\275 dialog-transform-translate-y) - 1px))}to{transform:translate(calc(1px * var(--\\275 dialog-transform-translate-x) + 2px)) translateY(calc(1px * var(--\\275 dialog-transform-translate-y) + 1px))}}\n"], dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: MovableDirective, selector: "[wbMovable]", inputs: ["wbHandle"], outputs: ["wbMovableMove"] }, { kind: "directive", type: ResizableDirective, selector: "[wbResizable]", inputs: ["wbResizableEnabled"], outputs: ["wbResizableResize"] }, { kind: "component", type: SciViewportComponent, selector: "sci-viewport", inputs: ["scrollbarStyle"], outputs: ["scroll"] }, { kind: "directive", type: SciDimensionDirective, selector: "[sciDimension]", inputs: ["emitOutsideAngular"], outputs: ["sciDimensionChange"], exportAs: ["sciDimension"] }, { kind: "component", type: DialogHeaderComponent, selector: "wb-dialog-header" }, { kind: "component", type: DialogFooterComponent, selector: "wb-dialog-footer" }, { kind: "directive", type: GlassPaneDirective, selector: "[wbGlassPane]" }], viewProviders: [
130
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogComponent, deps: [{ token: i1.ɵWorkbenchDialog }, { token: i0.NgZone }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
131
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.6", type: WorkbenchDialogComponent, isStandalone: true, selector: "wb-dialog", host: { listeners: { "keydown.escape": "onEscape($event)" }, properties: { "style.--\u0275dialog-transform-translate-x": "this.transformTranslateX", "style.--\u0275dialog-transform-translate-y": "this.transformTranslateY", "style.--\u0275dialog-min-height": "this.minHeight", "style.--\u0275dialog-height": "this.height", "style.--\u0275dialog-max-height": "this.maxHeight", "style.--\u0275dialog-min-width": "this.minWidth", "style.--\u0275dialog-width": "this.width", "style.--\u0275dialog-max-width": "this.maxWidth", "class.justified": "this.justified", "attr.class": "this.cssClasses", "attr.data-dialogid": "this.id" } }, viewQueries: [{ propertyName: "_cdkTrapFocus", first: true, predicate: CdkTrapFocus, descendants: true, static: true }, { propertyName: "_dialogElement", first: true, predicate: ["dialog_element"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"dialog e2e-dialog\"\n [class.blinking]=\"dialog.blinking$ | async\"\n [tabindex]=\"-1\"\n wbMovable [wbHandle]=\"header\" (wbMovableMove)=\"onMove($event)\"\n wbResizable [wbResizableEnabled]=\"dialog.resizable\" (wbResizableResize)=\"onResize($event)\"\n @enter\n [@.disabled]=\"!dialog.animate\"\n wbGlassPane\n #dialog_element>\n <div class=\"dialog-box e2e-dialog-box\" cdkTrapFocus>\n <header #header\n class=\"e2e-dialog-header\"\n [class.divider]=\"dialog.header?.divider ?? true\"\n sciDimension (sciDimensionChange)=\"onHeaderDimensionChange($event)\">\n <ng-container *ngTemplateOutlet=\"dialog.header?.template ?? default_dialog_header\"/>\n </header>\n\n <sci-viewport class=\"content e2e-dialog-content\">\n <ng-container *ngComponentOutlet=\"dialog.component; inputs: dialog.inputs\"/>\n </sci-viewport>\n\n @if (dialog.footer || dialog.actions.length) {\n <footer class=\"e2e-dialog-footer\" [class.divider]=\"dialog.footer?.divider ?? true\">\n <ng-container *ngTemplateOutlet=\"dialog.footer?.template ?? default_dialog_footer\"/>\n </footer>\n }\n </div>\n</div>\n\n<ng-template #default_dialog_header>\n <wb-dialog-header/>\n</ng-template>\n\n<ng-template #default_dialog_footer>\n <wb-dialog-footer/>\n</ng-template>\n", styles: ["@charset \"UTF-8\";:host{--\\275 dialog-transform-translate-x: 0;--\\275 dialog-transform-translate-y: 0;--\\275 dialog-min-height: initial;--\\275 dialog-height: initial;--\\275 dialog-max-height: initial;--\\275 dialog-min-width: initial;--\\275 dialog-width: initial;--\\275 dialog-max-width: initial;--\\275 dialog-padding: var(--sci-workbench-dialog-padding);display:flex;flex-direction:column;align-items:center;position:relative}:host.justified{--\\275 dialog-padding: 0}:host>div.dialog{display:flex;flex-direction:column;position:absolute;top:3%;color:var(--sci-color-text);transform:translate(calc(1px * var(--\\275 dialog-transform-translate-x))) translateY(calc(1px * var(--\\275 dialog-transform-translate-y)));min-height:var(--\\275 dialog-min-height);height:var(--\\275 dialog-height);max-height:var(--\\275 dialog-max-height);min-width:var(--\\275 dialog-min-width);width:var(--\\275 dialog-width);max-width:var(--\\275 dialog-max-width);outline:none;pointer-events:auto}:host>div.dialog>div.dialog-box{flex:auto;display:flex;flex-direction:column;gap:calc(1.25 * var(--\\275 dialog-padding));border:1px solid var(--sci-color-border);border-radius:var(--sci-corner);background-color:var(--sci-color-background-elevation);box-shadow:var(--sci-elevation) var(--sci-static-color-black);overflow:hidden}:host>div.dialog>div.dialog-box>header{flex:none}:host>div.dialog>div.dialog-box>header.divider{border-bottom:1px solid var(--sci-color-border)}:host>div.dialog>div.dialog-box>sci-viewport{flex:auto}:host>div.dialog>div.dialog-box>sci-viewport::part(content){padding-inline:var(--\\275 dialog-padding)}:host>div.dialog>div.dialog-box>footer{flex:none}:host>div.dialog>div.dialog-box>footer.divider{border-top:1px solid var(--sci-color-border)}:host>div.dialog.blinking{animation-duration:50ms;animation-iteration-count:infinite;animation-name:blink-animation}@keyframes blink-animation{0%{transform:translate(calc(1px * var(--\\275 dialog-transform-translate-x) - 2px)) translateY(calc(1px * var(--\\275 dialog-transform-translate-y) - 1px))}to{transform:translate(calc(1px * var(--\\275 dialog-transform-translate-x) + 2px)) translateY(calc(1px * var(--\\275 dialog-transform-translate-y) + 1px))}}\n"], dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: MovableDirective, selector: "[wbMovable]", inputs: ["wbHandle"], outputs: ["wbMovableMove"] }, { kind: "directive", type: ResizableDirective, selector: "[wbResizable]", inputs: ["wbResizableEnabled"], outputs: ["wbResizableResize"] }, { kind: "component", type: SciViewportComponent, selector: "sci-viewport", inputs: ["scrollbarStyle"], outputs: ["scroll"] }, { kind: "directive", type: SciDimensionDirective, selector: "[sciDimension]", inputs: ["emitOutsideAngular"], outputs: ["sciDimensionChange"], exportAs: ["sciDimension"] }, { kind: "component", type: DialogHeaderComponent, selector: "wb-dialog-header" }, { kind: "component", type: DialogFooterComponent, selector: "wb-dialog-footer" }, { kind: "directive", type: GlassPaneDirective, selector: "[wbGlassPane]" }], viewProviders: [
132
132
  configureDialogGlassPane(),
133
133
  ], animations: [
134
134
  trigger('enter', provideEnterAnimation()),
135
135
  ] }); }
136
136
  }
137
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: WorkbenchDialogComponent, decorators: [{
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchDialogComponent, decorators: [{
138
138
  type: Component,
139
139
  args: [{ selector: 'wb-dialog', standalone: true, imports: [
140
140
  NgComponentOutlet,