@scion/workbench 18.0.0-beta.9 → 19.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/design/_workbench-view-global-styles.scss +0 -1
  2. package/fesm2022/scion-workbench.mjs +8556 -8622
  3. package/fesm2022/scion-workbench.mjs.map +1 -1
  4. package/lib/common/css-class.util.d.ts +5 -0
  5. package/lib/common/math.util.d.ts +7 -0
  6. package/lib/common/objects.util.d.ts +1 -1
  7. package/lib/dialog/workbench-dialog.component.d.ts +1 -2
  8. package/lib/layout/migration/model/workbench-layout-migration-v6.model.d.ts +35 -0
  9. package/lib/layout/migration/workbench-layout-migration-v6.service.d.ts +12 -0
  10. package/lib/layout/workbench-layout.model.d.ts +0 -1
  11. package/lib/layout/workbench-layout.service.d.ts +10 -12
  12. package/lib/layout/workench-layout-serializer.service.d.ts +1 -2
  13. package/lib/part/part-action-bar/part-action-bar.component.d.ts +2 -6
  14. package/lib/part/part-bar/part-bar.component.d.ts +66 -48
  15. package/lib/part/view-tab/view-tab.component.d.ts +3 -3
  16. package/lib/public_api.d.ts +0 -2
  17. package/lib/routing/routing.util.d.ts +2 -2
  18. package/lib/view/view-move-handler.service.d.ts +16 -14
  19. package/lib/view/view.component.d.ts +1 -2
  20. package/lib/view//311/265workbench-view.model.d.ts +1 -9
  21. package/lib/view-dnd/grid-drop-targets.util.d.ts +1 -1
  22. package/lib/view-dnd/view-drag.service.d.ts +72 -49
  23. package/lib/view-dnd/view-tab-drag-image-renderer.service.d.ts +11 -36
  24. package/package.json +8 -10
  25. package/esm2022/lib/activation-instant.provider.mjs +0 -29
  26. package/esm2022/lib/common/animation-frame.observable.mjs +0 -37
  27. package/esm2022/lib/common/asserts.util.mjs +0 -31
  28. package/esm2022/lib/common/class-list.mjs +0 -99
  29. package/esm2022/lib/common/coerce-observable.pipe.mjs +0 -28
  30. package/esm2022/lib/common/disposable.mjs +0 -11
  31. package/esm2022/lib/common/dom.util.mjs +0 -100
  32. package/esm2022/lib/common/grid-element-if-visible.pipe.mjs +0 -32
  33. package/esm2022/lib/common/instanceof.pipe.mjs +0 -26
  34. package/esm2022/lib/common/map-coerce.pipe.mjs +0 -28
  35. package/esm2022/lib/common/null-if-empty.pipe.mjs +0 -38
  36. package/esm2022/lib/common/objects.util.mjs +0 -40
  37. package/esm2022/lib/common/observables.mjs +0 -72
  38. package/esm2022/lib/common/operators.mjs +0 -27
  39. package/esm2022/lib/common/public_api.mjs +0 -11
  40. package/esm2022/lib/common/stringify-error.util.mjs +0 -19
  41. package/esm2022/lib/common/throw-error.util.mjs +0 -16
  42. package/esm2022/lib/common/typeof.pipe.mjs +0 -26
  43. package/esm2022/lib/common/uid.util.mjs +0 -22
  44. package/esm2022/lib/common//311/265destroy-ref.mjs +0 -36
  45. package/esm2022/lib/communication/workbench-broadcast-channel.mjs +0 -38
  46. package/esm2022/lib/content-projection/content-as-overlay.component.mjs +0 -114
  47. package/esm2022/lib/content-projection/workbench-element-references.mjs +0 -32
  48. package/esm2022/lib/dialog/dialog-footer/dialog-action-filter.pipe.mjs +0 -26
  49. package/esm2022/lib/dialog/dialog-footer/dialog-footer.component.mjs +0 -34
  50. package/esm2022/lib/dialog/dialog-footer/workbench-dialog-action.directive.mjs +0 -51
  51. package/esm2022/lib/dialog/dialog-footer/workbench-dialog-footer.directive.mjs +0 -46
  52. package/esm2022/lib/dialog/dialog-header/dialog-header.component.mjs +0 -33
  53. package/esm2022/lib/dialog/dialog-header/workbench-dialog-header.directive.mjs +0 -46
  54. package/esm2022/lib/dialog/movable.directive.mjs +0 -126
  55. package/esm2022/lib/dialog/public_api.mjs +0 -15
  56. package/esm2022/lib/dialog/resizable.directive.mjs +0 -392
  57. package/esm2022/lib/dialog/workbench-dialog.component.mjs +0 -250
  58. package/esm2022/lib/dialog/workbench-dialog.mjs +0 -79
  59. package/esm2022/lib/dialog/workbench-dialog.options.mjs +0 -11
  60. package/esm2022/lib/dialog/workbench-dialog.registry.mjs +0 -73
  61. package/esm2022/lib/dialog/workbench-dialog.service.mjs +0 -96
  62. package/esm2022/lib/dialog//311/265workbench-dialog.mjs +0 -310
  63. package/esm2022/lib/dialog//311/265workbench-dialog.service.mjs +0 -98
  64. package/esm2022/lib/executor/latest-task-executor.mjs +0 -55
  65. package/esm2022/lib/executor/single-task-executor.mjs +0 -72
  66. package/esm2022/lib/filter-field/filter-field.component.mjs +0 -130
  67. package/esm2022/lib/glass-pane/blockable.mjs +0 -11
  68. package/esm2022/lib/glass-pane/blocking.mjs +0 -11
  69. package/esm2022/lib/glass-pane/glass-pane.directive.mjs +0 -120
  70. package/esm2022/lib/layout/grid-element/grid-element.component.mjs +0 -111
  71. package/esm2022/lib/layout/main-area-layout/main-area-layout.component.mjs +0 -97
  72. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v2.model.mjs +0 -11
  73. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v3.model.mjs +0 -11
  74. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v4.model.mjs +0 -11
  75. package/esm2022/lib/layout/migration/model/workbench-layout-migration-v5.model.mjs +0 -11
  76. package/esm2022/lib/layout/migration/workbench-layout-migration-v3.service.mjs +0 -117
  77. package/esm2022/lib/layout/migration/workbench-layout-migration-v4.service.mjs +0 -57
  78. package/esm2022/lib/layout/migration/workbench-layout-migration-v5.service.mjs +0 -67
  79. package/esm2022/lib/layout/public_api.mjs +0 -12
  80. package/esm2022/lib/layout/stringifier.mjs +0 -70
  81. package/esm2022/lib/layout/workbench-layout.component.mjs +0 -90
  82. package/esm2022/lib/layout/workbench-layout.factory.mjs +0 -24
  83. package/esm2022/lib/layout/workbench-layout.mjs +0 -16
  84. package/esm2022/lib/layout/workbench-layout.model.mjs +0 -62
  85. package/esm2022/lib/layout/workbench-layout.service.mjs +0 -68
  86. package/esm2022/lib/layout/workbench-layouts.util.mjs +0 -58
  87. package/esm2022/lib/layout/workench-layout-serializer.service.mjs +0 -109
  88. package/esm2022/lib/layout//311/265workbench-layout.factory.mjs +0 -54
  89. package/esm2022/lib/layout//311/265workbench-layout.mjs +0 -876
  90. package/esm2022/lib/logging/console-appender.service.mjs +0 -46
  91. package/esm2022/lib/logging/index.mjs +0 -15
  92. package/esm2022/lib/logging/logger-names.mjs +0 -32
  93. package/esm2022/lib/logging/logger.mjs +0 -36
  94. package/esm2022/lib/logging/logging-support.mjs +0 -26
  95. package/esm2022/lib/logging/logging.model.mjs +0 -45
  96. package/esm2022/lib/logging/public_api.mjs +0 -12
  97. package/esm2022/lib/logging//311/265logger.mjs +0 -73
  98. package/esm2022/lib/message-box/message-box-footer/message-box-footer.component.mjs +0 -69
  99. package/esm2022/lib/message-box/message-box-header/message-box-header.component.mjs +0 -28
  100. package/esm2022/lib/message-box/public_api.mjs +0 -11
  101. package/esm2022/lib/message-box/workbench-message-box.component.mjs +0 -102
  102. package/esm2022/lib/message-box/workbench-message-box.options.mjs +0 -2
  103. package/esm2022/lib/message-box/workbench-message-box.service.mjs +0 -39
  104. package/esm2022/lib/message-box//311/265workbench-message-box.service.mjs +0 -45
  105. package/esm2022/lib/microfrontend-platform/common/microfrontend.util.mjs +0 -71
  106. package/esm2022/lib/microfrontend-platform/initialization/microfrontend-platform-initializer.service.mjs +0 -126
  107. package/esm2022/lib/microfrontend-platform/initialization/ng-zone-observable-decorator.mjs +0 -36
  108. package/esm2022/lib/microfrontend-platform/initialization/workbench-host-manifest-interceptor.service.mjs +0 -84
  109. package/esm2022/lib/microfrontend-platform/manifest-object-cache.service.mjs +0 -63
  110. package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-capability-validator.interceptor.mjs +0 -54
  111. package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-intent-handler.interceptor.mjs +0 -85
  112. package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog.component.mjs +0 -140
  113. package/esm2022/lib/microfrontend-platform/microfrontend-host-dialog/microfrontend-host-dialog.component.mjs +0 -133
  114. package/esm2022/lib/microfrontend-platform/microfrontend-host-message-box/microfrontend-host-message-box.component.mjs +0 -113
  115. package/esm2022/lib/microfrontend-platform/microfrontend-host-message-box/text-message/text-message.component.mjs +0 -43
  116. package/esm2022/lib/microfrontend-platform/microfrontend-host-popup/microfrontend-host-popup.component.mjs +0 -101
  117. package/esm2022/lib/microfrontend-platform/microfrontend-message-box/microfrontend-message-box-capability-validator.interceptor.mjs +0 -35
  118. package/esm2022/lib/microfrontend-platform/microfrontend-message-box/microfrontend-message-box-intent-handler.interceptor.mjs +0 -88
  119. package/esm2022/lib/microfrontend-platform/microfrontend-message-box/microfrontend-message-box-legacy-intent-translator.interceptor.mjs +0 -32
  120. package/esm2022/lib/microfrontend-platform/microfrontend-message-box/microfrontend-message-box.component.mjs +0 -121
  121. package/esm2022/lib/microfrontend-platform/microfrontend-notification/microfrontend-notification-intent-handler.service.mjs +0 -45
  122. package/esm2022/lib/microfrontend-platform/microfrontend-perspective/microfrontend-perspective-capability-validator.interceptor.mjs +0 -39
  123. package/esm2022/lib/microfrontend-platform/microfrontend-perspective/microfrontend-perspective-installer.service.mjs +0 -120
  124. package/esm2022/lib/microfrontend-platform/microfrontend-perspective/microfrontend-perspective-intent-handler.interceptor.mjs +0 -55
  125. package/esm2022/lib/microfrontend-platform/microfrontend-perspective/workbench-perspective-data.mjs +0 -19
  126. package/esm2022/lib/microfrontend-platform/microfrontend-platform-config-loader.mjs +0 -13
  127. package/esm2022/lib/microfrontend-platform/microfrontend-platform.config.mjs +0 -11
  128. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-capability-validator.interceptor.mjs +0 -31
  129. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-intent-handler.interceptor.mjs +0 -132
  130. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup.component.mjs +0 -115
  131. package/esm2022/lib/microfrontend-platform/microfrontend-splash/microfrontend-splash.component.mjs +0 -21
  132. package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-view-command-handler.service.mjs +0 -112
  133. package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-view.component.mjs +0 -313
  134. package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-workbench-view.model.mjs +0 -23
  135. package/esm2022/lib/microfrontend-platform/public_api.mjs +0 -13
  136. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-capability-validator.interceptor.mjs +0 -31
  137. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-intent-handler.interceptor.mjs +0 -127
  138. package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-routes.mjs +0 -125
  139. package/esm2022/lib/microfrontend-platform/stable-capability-id-assigner.interceptor.mjs +0 -32
  140. package/esm2022/lib/microfrontend-platform/workbench-microfrontend-support.mjs +0 -191
  141. package/esm2022/lib/migration/workbench-migration.mjs +0 -11
  142. package/esm2022/lib/migration/workbench-migrator.mjs +0 -38
  143. package/esm2022/lib/notification/notification-css-classes.pipe.mjs +0 -24
  144. package/esm2022/lib/notification/notification-list.component.mjs +0 -51
  145. package/esm2022/lib/notification/notification.component.mjs +0 -109
  146. package/esm2022/lib/notification/notification.config.mjs +0 -11
  147. package/esm2022/lib/notification/notification.mjs +0 -19
  148. package/esm2022/lib/notification/notification.service.mjs +0 -134
  149. package/esm2022/lib/notification/public_api.mjs +0 -12
  150. package/esm2022/lib/notification/text-notification.component.mjs +0 -23
  151. package/esm2022/lib/notification//311/265notification.mjs +0 -42
  152. package/esm2022/lib/page-not-found/page-not-found.component.mjs +0 -26
  153. package/esm2022/lib/part/part-action-bar/part-action-bar.component.mjs +0 -31
  154. package/esm2022/lib/part/part-action-bar/part-action.directive.mjs +0 -77
  155. package/esm2022/lib/part/part-bar/part-bar.component.mjs +0 -444
  156. package/esm2022/lib/part/part-portal.pipe.mjs +0 -35
  157. package/esm2022/lib/part/part.component.mjs +0 -135
  158. package/esm2022/lib/part/public_api.mjs +0 -13
  159. package/esm2022/lib/part/view-context-menu/accelerator-format.pipe.mjs +0 -31
  160. package/esm2022/lib/part/view-context-menu/text.component.mjs +0 -38
  161. package/esm2022/lib/part/view-context-menu/view-menu.component.mjs +0 -89
  162. package/esm2022/lib/part/view-context-menu/view-menu.directive.mjs +0 -76
  163. package/esm2022/lib/part/view-context-menu/view-menu.service.mjs +0 -340
  164. package/esm2022/lib/part/view-list/view-list.component.mjs +0 -117
  165. package/esm2022/lib/part/view-list-button/view-list-button.component.mjs +0 -82
  166. package/esm2022/lib/part/view-list-item/view-list-item.component.mjs +0 -60
  167. package/esm2022/lib/part/view-tab/view-tab.component.mjs +0 -218
  168. package/esm2022/lib/part/view-tab-content/view-tab-content.component.mjs +0 -29
  169. package/esm2022/lib/part/view-tab-drag-image/view-tab-drag-image.component.mjs +0 -81
  170. package/esm2022/lib/part/workbench-part-action.registry.mjs +0 -23
  171. package/esm2022/lib/part/workbench-part.model.mjs +0 -19
  172. package/esm2022/lib/part/workbench-part.registry.mjs +0 -23
  173. package/esm2022/lib/part//311/265workbench-part.model.mjs +0 -146
  174. package/esm2022/lib/perspective/migration/model/workbench-perspective-migration-v1.model.mjs +0 -11
  175. package/esm2022/lib/perspective/migration/model/workbench-perspective-migration-v2.model.mjs +0 -11
  176. package/esm2022/lib/perspective/migration/workbench-perspective-migration-v2.service.mjs +0 -57
  177. package/esm2022/lib/perspective/public_api.mjs +0 -11
  178. package/esm2022/lib/perspective/workbench-grid-merger.service.mjs +0 -39
  179. package/esm2022/lib/perspective/workbench-perspective-storage.service.mjs +0 -72
  180. package/esm2022/lib/perspective/workbench-perspective-view-conflict-resolver.service.mjs +0 -50
  181. package/esm2022/lib/perspective/workbench-perspective.model.mjs +0 -2
  182. package/esm2022/lib/perspective/workbench-perspective.registry.mjs +0 -23
  183. package/esm2022/lib/perspective/workbench-perspective.service.mjs +0 -180
  184. package/esm2022/lib/perspective/workench-perspective-serializer.service.mjs +0 -62
  185. package/esm2022/lib/perspective//311/265workbench-perspective.model.mjs +0 -210
  186. package/esm2022/lib/popup/popup.component.mjs +0 -124
  187. package/esm2022/lib/popup/popup.config.mjs +0 -100
  188. package/esm2022/lib/popup/popup.origin.mjs +0 -11
  189. package/esm2022/lib/popup/popup.service.mjs +0 -339
  190. package/esm2022/lib/popup/public_api.mjs +0 -12
  191. package/esm2022/lib/portal/wb-component-portal.mjs +0 -130
  192. package/esm2022/lib/portal/workbench-portal-outlet.directive.mjs +0 -68
  193. package/esm2022/lib/public_api.mjs +0 -32
  194. package/esm2022/lib/registry/workbench-object-registry.mjs +0 -104
  195. package/esm2022/lib/routing/empty-outlet/empty-outlet.component.mjs +0 -31
  196. package/esm2022/lib/routing/public_api.mjs +0 -14
  197. package/esm2022/lib/routing/routing.model.mjs +0 -11
  198. package/esm2022/lib/routing/routing.util.mjs +0 -215
  199. package/esm2022/lib/routing/url-segment-matcher.mjs +0 -46
  200. package/esm2022/lib/routing/workbench-auxiliary-route-installer.service.mjs +0 -110
  201. package/esm2022/lib/routing/workbench-dialog-differ.mjs +0 -51
  202. package/esm2022/lib/routing/workbench-layout-differ.mjs +0 -61
  203. package/esm2022/lib/routing/workbench-message-box-differ.mjs +0 -51
  204. package/esm2022/lib/routing/workbench-navigational-states.mjs +0 -33
  205. package/esm2022/lib/routing/workbench-popup-differ.mjs +0 -51
  206. package/esm2022/lib/routing/workbench-route-data.mjs +0 -39
  207. package/esm2022/lib/routing/workbench-route-guards.mjs +0 -57
  208. package/esm2022/lib/routing/workbench-router-link.directive.mjs +0 -124
  209. package/esm2022/lib/routing/workbench-router.service.mjs +0 -19
  210. package/esm2022/lib/routing/workbench-url-observer.service.mjs +0 -305
  211. package/esm2022/lib/routing/workbench-view-outlet-differ.mjs +0 -58
  212. package/esm2022/lib/routing//311/265location.mjs +0 -70
  213. package/esm2022/lib/routing//311/265workbench-router.service.mjs +0 -359
  214. package/esm2022/lib/startup/public_api.mjs +0 -12
  215. package/esm2022/lib/startup/splash/splash.component.mjs +0 -24
  216. package/esm2022/lib/startup/workbench-initializer.mjs +0 -96
  217. package/esm2022/lib/startup/workbench-launcher.service.mjs +0 -173
  218. package/esm2022/lib/storage/public_api.mjs +0 -11
  219. package/esm2022/lib/storage/workbench-storage.mjs +0 -37
  220. package/esm2022/lib/testing/public_api.mjs +0 -12
  221. package/esm2022/lib/testing/workbench-testing.module.mjs +0 -49
  222. package/esm2022/lib/testing/workbench.provider.mjs +0 -60
  223. package/esm2022/lib/theme/workbench-theme-switcher.service.mjs +0 -72
  224. package/esm2022/lib/view/public_api.mjs +0 -11
  225. package/esm2022/lib/view/view-context-provider.mjs +0 -31
  226. package/esm2022/lib/view/view-move-handler.service.mjs +0 -145
  227. package/esm2022/lib/view/view-portal.pipe.mjs +0 -33
  228. package/esm2022/lib/view/view.component.mjs +0 -128
  229. package/esm2022/lib/view/workbench-view.model.mjs +0 -12
  230. package/esm2022/lib/view/workbench-view.registry.mjs +0 -23
  231. package/esm2022/lib/view//311/265workbench-view.model.mjs +0 -375
  232. package/esm2022/lib/view-dnd/grid-drop-targets.util.mjs +0 -49
  233. package/esm2022/lib/view-dnd/requires-drop-zone.pipe.mjs +0 -58
  234. package/esm2022/lib/view-dnd/view-drag.service.mjs +0 -213
  235. package/esm2022/lib/view-dnd/view-drop-placeholder-renderer.service.mjs +0 -89
  236. package/esm2022/lib/view-dnd/view-drop-zone.directive.mjs +0 -183
  237. package/esm2022/lib/view-dnd/view-tab-drag-image-renderer.service.mjs +0 -224
  238. package/esm2022/lib/workbench-config.mjs +0 -15
  239. package/esm2022/lib/workbench-id.mjs +0 -21
  240. package/esm2022/lib/workbench.component.mjs +0 -146
  241. package/esm2022/lib/workbench.constants.mjs +0 -41
  242. package/esm2022/lib/workbench.model.mjs +0 -11
  243. package/esm2022/lib/workbench.module.mjs +0 -101
  244. package/esm2022/lib/workbench.provider.mjs +0 -111
  245. package/esm2022/lib/workbench.service.mjs +0 -29
  246. package/esm2022/lib//311/265workbench.service.mjs +0 -102
  247. package/esm2022/public-api.mjs +0 -14
  248. package/esm2022/scion-workbench.mjs +0 -5
  249. package/lib/common/animation-frame.observable.d.ts +0 -10
  250. package/lib/testing/public_api.d.ts +0 -2
  251. package/lib/testing/workbench-testing.module.d.ts +0 -40
  252. package/lib/testing/workbench.provider.d.ts +0 -31
  253. package/lib/workbench.module.d.ts +0 -65
@@ -0,0 +1,5 @@
1
+ import { Signal } from '@angular/core';
2
+ /**
3
+ * Tracks changes to the provided CSS classes and applies them to the given element.
4
+ */
5
+ export declare function synchronizeCssClasses(element: HTMLElement, classes: Signal<string[]>): void;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Returns the value clamped to the inclusive range of min and max.
3
+ */
4
+ export declare function clamp(value: number, minmax: {
5
+ min: number;
6
+ max: number;
7
+ }): number;
@@ -13,7 +13,7 @@ export declare const Objects: {
13
13
  /**
14
14
  * Like {@link Dictionaries.withoutUndefinedEntries}, but preserving the object data type.
15
15
  */
16
- readonly withoutUndefinedEntries: <T_1>(object: T_1 & Record<string, unknown>) => T_1;
16
+ readonly withoutUndefinedEntries: <T>(object: T & Record<string, unknown>) => T;
17
17
  /**
18
18
  * Stringifies given object to matrix notation: a=b;c=d;e=f
19
19
  */
@@ -4,7 +4,6 @@ import { WbMoveEvent } from './movable.directive';
4
4
  import { WbResizeEvent } from './resizable.directive';
5
5
  import { SciDimension } from '@scion/components/dimension';
6
6
  import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
7
  /**
9
8
  * Renders the workbench dialog.
10
9
  *
@@ -57,5 +56,5 @@ export declare class WorkbenchDialogComponent implements OnInit {
57
56
  onResize(event: WbResizeEvent): void;
58
57
  protected onHeaderDimensionChange(dimension: SciDimension): void;
59
58
  static ɵfac: i0.ɵɵFactoryDeclaration<WorkbenchDialogComponent, never>;
60
- static ɵcmp: i0.ɵɵComponentDeclaration<WorkbenchDialogComponent, "wb-dialog", never, {}, {}, never, never, true, [{ directive: typeof i1.NgClass; inputs: {}; outputs: {}; }]>;
59
+ static ɵcmp: i0.ɵɵComponentDeclaration<WorkbenchDialogComponent, "wb-dialog", never, {}, {}, never, never, true, never>;
61
60
  }
@@ -0,0 +1,35 @@
1
+ export interface MPartV6 {
2
+ type: 'MPart';
3
+ id: string;
4
+ views: MViewV6[];
5
+ activeViewId?: ViewIdV6;
6
+ structural: boolean;
7
+ }
8
+ export interface MTreeNodeV6 {
9
+ type: 'MTreeNode';
10
+ id: string;
11
+ child1: MTreeNodeV6 | MPartV6;
12
+ child2: MTreeNodeV6 | MPartV6;
13
+ ratio: number;
14
+ direction: 'column' | 'row';
15
+ }
16
+ export interface MPartGridV6 {
17
+ root: MTreeNodeV6 | MPartV6;
18
+ activePartId: string;
19
+ }
20
+ export interface MViewV6 {
21
+ id: ViewIdV6;
22
+ alternativeId?: string;
23
+ cssClass?: string[];
24
+ markedForRemoval?: true;
25
+ navigation?: {
26
+ id: string;
27
+ hint?: string;
28
+ data?: NavigationDataV6;
29
+ cssClass?: string[];
30
+ };
31
+ }
32
+ export type ViewIdV6 = `view.${number}`;
33
+ export type NavigationDataV6 = {
34
+ [key: string]: unknown;
35
+ };
@@ -0,0 +1,12 @@
1
+ import { WorkbenchMigration } from '../../migration/workbench-migration';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * Migrates the workbench layout from version 5 to version 6.
5
+ *
6
+ * TODO [Angular 20] Remove migrator.
7
+ */
8
+ export declare class WorkbenchLayoutMigrationV6 implements WorkbenchMigration {
9
+ migrate(json: string): string;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<WorkbenchLayoutMigrationV6, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<WorkbenchLayoutMigrationV6>;
12
+ }
@@ -74,7 +74,6 @@ export declare class MPart {
74
74
  export interface MView {
75
75
  id: ViewId;
76
76
  alternativeId?: string;
77
- uid: string;
78
77
  cssClass?: string[];
79
78
  markedForRemoval?: true;
80
79
  navigation?: {
@@ -1,14 +1,14 @@
1
1
  import { Observable } from 'rxjs';
2
- import { ViewDragService } from '../view-dnd/view-drag.service';
3
2
  import { ɵWorkbenchLayout } from './ɵworkbench-layout';
4
3
  import * as i0 from "@angular/core";
5
4
  /**
6
5
  * Provides access to the workbench layout.
7
6
  */
8
7
  export declare class WorkbenchLayoutService {
9
- private _layout$;
10
- private _dragStart$;
11
- private _dragEnd$;
8
+ private readonly _viewDragService;
9
+ private readonly _layout$;
10
+ private readonly _moving;
11
+ private readonly _resizing;
12
12
  /**
13
13
  * Provides the current {@link WorkbenchLayout}, or `null` until Angular has performed the initial navigation.
14
14
  */
@@ -26,19 +26,17 @@ export declare class WorkbenchLayoutService {
26
26
  */
27
27
  readonly onLayoutChange$: Observable<ɵWorkbenchLayout>;
28
28
  /**
29
- * Notifies when the user starts or ends modifying the layout using drag and drop, e.g., moving the splitter between parts,
30
- * moving a message box, or moving a view.
29
+ * Indicates if a drag operation is active, such as moving a view or dialog, or resizing a part.
31
30
  */
32
- readonly dragging$: Observable<'start' | 'end'>;
33
- constructor(viewDragService: ViewDragService);
31
+ readonly dragging: import("@angular/core").Signal<boolean>;
34
32
  /**
35
- * Invoke to inform the layout when about to start a drag operation, like when start moving the splitter between parts.
33
+ * Signals moving a workbench element, such as moving a dialog.
36
34
  */
37
- notifyDragStarting(): void;
35
+ signalMoving(moving: boolean): void;
38
36
  /**
39
- * Invoke to inform the layout when about to end a drag operation, like when end moving the splitter between parts.
37
+ * Signals resizing a workbench element, such as resizing a dialog or part.
40
38
  */
41
- notifyDragEnding(): void;
39
+ signalResizing(resizing: boolean): void;
42
40
  /**
43
41
  * Sets the given {@link WorkbenchLayout}.
44
42
  */
@@ -36,13 +36,12 @@ export declare class WorkbenchLayoutSerializer {
36
36
  *
37
37
  * @see WorkbenchMigrator
38
38
  */
39
- export declare const WORKBENCH_LAYOUT_VERSION = 5;
39
+ export declare const WORKBENCH_LAYOUT_VERSION = 6;
40
40
  /**
41
41
  * Controls which fields not to serialize. By default, all fields are serialized.
42
42
  */
43
43
  export interface GridSerializationFlags {
44
44
  excludeTreeNodeId?: true;
45
- excludeViewUid?: true;
46
45
  excludeViewMarkedForRemoval?: true;
47
46
  excludeViewNavigationId?: true;
48
47
  }
@@ -1,11 +1,7 @@
1
- import { Signal } from '@angular/core';
2
- import { WorkbenchPart } from '../workbench-part.model';
3
1
  import { WorkbenchPartAction } from '../../workbench.model';
4
2
  import * as i0 from "@angular/core";
5
3
  export declare class PartActionBarComponent {
6
- protected startActions: Signal<WorkbenchPartAction[]>;
7
- protected endActions: Signal<WorkbenchPartAction[]>;
8
- constructor(part: WorkbenchPart);
4
+ actions: import("@angular/core").InputSignal<WorkbenchPartAction[]>;
9
5
  static ɵfac: i0.ɵɵFactoryDeclaration<PartActionBarComponent, never>;
10
- static ɵcmp: i0.ɵɵComponentDeclaration<PartActionBarComponent, "wb-part-action-bar", never, {}, {}, never, never, true, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<PartActionBarComponent, "wb-part-action-bar", never, { "actions": { "alias": "actions"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
11
7
  }
@@ -1,11 +1,6 @@
1
- import { DestroyRef, ElementRef } from '@angular/core';
1
+ import { OnDestroy, Signal } from '@angular/core';
2
2
  import { ViewTabComponent } from '../view-tab/view-tab.component';
3
- import { WorkbenchLayoutService } from '../../layout/workbench-layout.service';
4
- import { Observable } from 'rxjs';
5
- import { ViewTabDragImageRenderer } from '../../view-dnd/view-tab-drag-image-renderer.service';
6
- import { ViewDragService } from '../../view-dnd/view-drag.service';
7
3
  import { ɵWorkbenchPart } from '../ɵworkbench-part.model';
8
- import { ɵWorkbenchRouter } from '../../routing/ɵworkbench-router.service';
9
4
  import * as i0 from "@angular/core";
10
5
  /**
11
6
  * Renders view tabs and actions of a {@link WorkbenchPart}.
@@ -13,15 +8,19 @@ import * as i0 from "@angular/core";
13
8
  * Tabs are added to a viewport, which the user can scroll if not enough space. The viewport grows with its tabs,
14
9
  * allowing actions to be placed directly after the last tab or on the right side.
15
10
  *
16
- * ## Drag Events
11
+ * ## Drag and Drop
12
+ * This component subscribes to drag events to visualize tabs during a drag operation. The drag operation is initiated in {@link ViewTabComponent}.
13
+ *
17
14
  * We use native drag and drop to support dragging views to other windows.
18
15
  *
19
- * By listening to drag events, the tabbar visualizes tabs during a drag operation. The drag operation is initiated in {@link ViewTabComponent}.
20
- * - `dragstart` and `dragend` events are fired in the tabbar where the drag operation was initiated.
21
- * - `dragenter` event is fired when a tab enters the tabbar.
22
- * - `dragover` events are fired when dragging a tab over the tabbar.
23
- * - `dragleave` event is fired when a tab leaves the tabbar.
24
- * - `drop` event is fired when the user drops a tab in the tabbar.
16
+ * Following events are triggered:
17
+ * - dragstart: when start dragging a tab (only received in the tabbar where the drag operation has started)
18
+ * - dragend: when end dragging a tab, either via drop or cancel (only received in the tabbar where the drag operation has started)
19
+ * - dragenter: when a tab enters the tabbar
20
+ * - dragover: when dragging a tab over the tabbar, every few hundred milliseconds
21
+ * - dragleave: when a tab leaves the tabbar
22
+ * - drop: when the user drops a tab in the tabbar
23
+ *
25
24
  * - Note that `dragleave` event is not fired on drop action. Therefore, always handle both events, `dragleave` and `drop` events, respectively.
26
25
  *
27
26
  * ## Terminology
@@ -30,34 +29,35 @@ import * as i0 from "@angular/core";
30
29
  * - Drag image: Image for the tab to be dragged. We do not use the native drag image support to control drag image position and size,
31
30
  * e.g., to snap the drag image to the tabbar when dragging near it.
32
31
  */
33
- export declare class PartBarComponent {
34
- private _workbenchId;
35
- protected part: ɵWorkbenchPart;
36
- private _workbenchLayoutService;
37
- private _router;
38
- private _viewTabDragImageRenderer;
39
- private _viewDragService;
40
- private _destroyRef;
32
+ export declare class PartBarComponent implements OnDestroy {
41
33
  private readonly _host;
42
34
  private readonly _viewportChange$;
35
+ private readonly _workbenchId;
36
+ private readonly _router;
37
+ private readonly _viewTabDragImageRenderer;
38
+ private readonly _viewDragService;
39
+ private readonly _zone;
43
40
  private readonly _viewTabs;
44
- private readonly _dragenter$;
45
- private readonly _dragleave$;
46
- private readonly _dragend$;
47
- readonly dragover$: Observable<boolean>;
41
+ private readonly _hostBoundingClientRect;
48
42
  private readonly _viewportComponent;
49
43
  private readonly _viewportComponentElement;
50
44
  private readonly _tabCornerRadiusElement;
51
45
  private readonly _paddingInlineElement;
46
+ private readonly _fillerElement;
47
+ private readonly _viewportBoundingBox;
48
+ private readonly _maxViewportWidth;
49
+ protected readonly part: ɵWorkbenchPart;
50
+ protected readonly startActions: Signal<import("@scion/workbench").WorkbenchPartAction[]>;
51
+ protected readonly endActions: Signal<import("@scion/workbench").WorkbenchPartAction[]>;
52
52
  /**
53
53
  * Reference to the tab before which to insert the drag source on drop, or `end` if dropping it after the last tab.
54
54
  */
55
- dropTargetViewTab: ViewTabComponent | 'end' | null;
55
+ protected dropTargetViewTab: import("@angular/core").WritableSignal<"end" | ViewTabComponent | null>;
56
56
  /**
57
57
  * Reference to the tab where the drag operation was started.
58
58
  * This reference is only set if the drag operation started on a tab of this tabbar.
59
59
  */
60
- dragSourceViewTab: ViewTabComponent | null;
60
+ protected dragSourceViewTab: import("@angular/core").WritableSignal<ViewTabComponent | null>;
61
61
  /**
62
62
  * Transfer data of the tab being dragged over this tabbar.
63
63
  */
@@ -66,26 +66,28 @@ export declare class PartBarComponent {
66
66
  * Function for snapping the drag image to the tabbar when dragging near it.
67
67
  */
68
68
  private _constrainFn;
69
+ /**
70
+ * Signals when unsetting drag state.
71
+ */
72
+ private _onUnsetDragState;
69
73
  /**
70
74
  * Tabbar indents where to display the rounded bottom corners of the first and last view tab.
71
75
  */
72
76
  private _tabbarIndent;
77
+ constructor();
78
+ protected onDoubleClick(event: MouseEvent): void;
73
79
  /**
74
- * Notifies when the drag animation has finished, i.e., tabs have transitioned to their final position.
80
+ * Method invoked when the user starts dragging a tab of this tabbar, only in the tabbar where the drag started.
75
81
  */
76
- private _dragAnimationStable$;
77
- constructor(host: ElementRef<HTMLElement>, _workbenchId: string, part: ɵWorkbenchPart, _workbenchLayoutService: WorkbenchLayoutService, _router: ɵWorkbenchRouter, _viewTabDragImageRenderer: ViewTabDragImageRenderer, _viewDragService: ViewDragService, _destroyRef: DestroyRef);
78
- onDoubleClick(event: MouseEvent): void;
82
+ private onTabDragStart;
79
83
  /**
80
- * Method invoked when the user starts dragging a tab of this tabbar.
84
+ * Method invoked when the user ends dragging a tab of this tabbar, either by drop or cancel, only in the tabbar where the drag started.
81
85
  */
82
- onViewDragStart(event: DragEvent): void;
86
+ private onTabDragEnd;
83
87
  /**
84
- * Method invoked when the user ends dragging a tab of this tabbar.
85
- *
86
- * Invoked only in the tabbar where the drag operation started, regardless of whether the drag operation was completed or canceled.
88
+ * Method invoked when the layout has changed after a drop. The drop may not be related to a tab of this tabbar.
87
89
  */
88
- onViewDragEnd(): void;
90
+ private onTabMoved;
89
91
  /**
90
92
  * Method invoked when the user drags a tab into this tabbar.
91
93
  */
@@ -95,7 +97,7 @@ export declare class PartBarComponent {
95
97
  */
96
98
  private onTabbarDragLeave;
97
99
  /**
98
- * Method invoked while the user is dragging a tab over this tabbar.
100
+ * Method invoked when the user is dragging a tab over this tabbar.
99
101
  */
100
102
  private onTabbarDragOver;
101
103
  /**
@@ -105,33 +107,39 @@ export declare class PartBarComponent {
105
107
  /**
106
108
  * Locates the tab before which the dragged tab is to be inserted when it is dropped. Dragging beyond the last tab returns `end`.
107
109
  */
108
- computeDropTarget(event: DragEvent): ViewTabComponent | 'end';
110
+ private computeDropTarget;
109
111
  /**
110
112
  * Creates the function for snapping the drag image to the tabbar when dragging near it.
111
113
  */
112
114
  private createDragImageConstrainFn;
113
115
  /**
114
- * Calculates the maximum width of the tabbar viewport before an overflow would occur, which can then be used to constrain the drag image.
115
- *
116
- * To calculate the effective width, we need to simulate an overflow in the DOM. Therefore, call this method only from `dragstart` and not
117
- * from `dragover` and disable animations.
116
+ * Calculates the maximum width of the tabbar viewport before an overflow would occur.
117
+ * Use to constrain the drag image to the tabbar bounds.
118
118
  */
119
119
  private calculateMaxViewportWidth;
120
120
  /**
121
- * Calculates the width for the drag image placeholder.
121
+ * Calculates the width for the drag placeholder.
122
+ *
123
+ * The placeholder expands the viewport when dragging a tab to the right, moving part actions along with the dragover event.
122
124
  *
125
+ * Calculation:
123
126
  * - When dragging over tabs, the width is equal to the width of the drag source.
124
- * - When dragging to the right of the last tab, the width of the placeholder is calculated as the distance between the
125
- * last tab and the position of the dragover event. Applying this width will resize the viewport, moving part actions along
126
- * with the dragover event.
127
+ * - When dragging to the right of the last tab, the width of the placeholder is the distance between the last tab and the position of the drag pointer.
127
128
  */
128
- private calculateDragImagePlaceholderWidth;
129
+ private calculateDragPlaceholderWidth;
129
130
  /**
130
131
  * Indicates whether CSS animations have finished when dragging a tab over the tabbar.
131
132
  * The animation is considered stable when all tabs have moved to their final position.
132
133
  */
133
134
  private isDragAnimationStable;
135
+ /**
136
+ * Cleans up the drag state, unsetting drag data and drag source based on provided options.
137
+ */
134
138
  private unsetDragState;
139
+ /**
140
+ * Executes given function when the drag animation has finished, i.e., tabs have transitioned to their final position.
141
+ */
142
+ private onDragAnimationStable;
135
143
  /**
136
144
  * Scrolls the tab of the active view into view.
137
145
  */
@@ -140,9 +148,19 @@ export declare class PartBarComponent {
140
148
  * Updates {@link ɵWorkbenchView} when its tab is scrolled into view.
141
149
  */
142
150
  private installScrolledIntoViewUpdater;
151
+ /**
152
+ * Subscribes to drag events.
153
+ */
143
154
  private installViewDragListener;
155
+ /**
156
+ * Emits on {@link _viewportChange$} when the viewport size or scroll position changes.
157
+ */
144
158
  private installViewportChangeTracker;
159
+ /**
160
+ * Tracks the tabbar indents.
161
+ */
145
162
  private installTabbarIndentSizeTracker;
163
+ ngOnDestroy(): void;
146
164
  static ɵfac: i0.ɵɵFactoryDeclaration<PartBarComponent, never>;
147
165
  static ɵcmp: i0.ɵɵComponentDeclaration<PartBarComponent, "wb-part-bar", never, {}, {}, never, never, true, never>;
148
166
  }
@@ -2,7 +2,6 @@ import { Signal } from '@angular/core';
2
2
  import { ComponentPortal } from '@angular/cdk/portal';
3
3
  import { ViewId } from '../../view/workbench-view.model';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
5
  /**
7
6
  * IMPORTANT: HTML and CSS also used by {@link ViewTabDragImageComponent}.
8
7
  *
@@ -19,6 +18,7 @@ export declare class ViewTabComponent {
19
18
  readonly host: any;
20
19
  readonly view: import("@angular/core").InputSignalWithTransform<import("../../view/\u0275workbench-view.model").ɵWorkbenchView, `view.${number}`>;
21
20
  readonly viewTabContentPortal: Signal<ComponentPortal<unknown>>;
21
+ readonly boundingClientRect: Signal<DOMRect>;
22
22
  draggable: boolean;
23
23
  tabindex: number;
24
24
  /**
@@ -35,7 +35,7 @@ export declare class ViewTabComponent {
35
35
  onMousedown(event: MouseEvent): void;
36
36
  onContextmenu(event: MouseEvent): void;
37
37
  onDragStart(event: DragEvent): void;
38
- onDragEnd(event: DragEvent): void;
38
+ onDragEnd(): void;
39
39
  /**
40
40
  * Listens for 'dblclick' events to maximize or minimize the main area.
41
41
  *
@@ -47,5 +47,5 @@ export declare class ViewTabComponent {
47
47
  private installViewMenuItemAccelerators;
48
48
  private createViewTabContentPortal;
49
49
  static ɵfac: i0.ɵɵFactoryDeclaration<ViewTabComponent, never>;
50
- static ɵcmp: i0.ɵɵComponentDeclaration<ViewTabComponent, "wb-view-tab", never, { "view": { "alias": "viewId"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.NgClass; inputs: {}; outputs: {}; }]>;
50
+ static ɵcmp: i0.ɵɵComponentDeclaration<ViewTabComponent, "wb-view-tab", never, { "view": { "alias": "viewId"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
51
51
  }
@@ -1,5 +1,4 @@
1
1
  export { WorkbenchConfig, MenuItemConfig, ViewMenuItemsConfig } from './workbench-config';
2
- export { WorkbenchModule, WorkbenchModuleConfig } from './workbench.module';
3
2
  export { provideWorkbench } from './workbench.provider';
4
3
  export { WorkbenchService } from './workbench.service';
5
4
  export { WORKBENCH_ID } from './workbench-id';
@@ -20,4 +19,3 @@ export * from './microfrontend-platform/public_api';
20
19
  export * from './startup/public_api';
21
20
  export * from './logging/public_api';
22
21
  export * from './storage/public_api';
23
- export * from './testing/public_api';
@@ -43,7 +43,7 @@ export declare const Routing: {
43
43
  /**
44
44
  * Tests if the given outlet matches the format of the view outlet.
45
45
  */
46
- readonly isViewOutlet: (outlet: string | undefined | null) => outlet is `view.${number}`;
46
+ readonly isViewOutlet: (outlet: string | undefined | null) => outlet is ViewId;
47
47
  /**
48
48
  * Tests if the given outlet matches the format of a popup outlet.
49
49
  */
@@ -86,6 +86,6 @@ export declare const Routing: {
86
86
  * @return An observable emitting a tuple of the previous and current route snapshots.
87
87
  */
88
88
  readonly activatedRoute$: (outlet: string, options: {
89
- emitOn: 'routeChange' | 'routeOrParamChange' | 'always';
89
+ emitOn: "routeChange" | "routeOrParamChange" | "always";
90
90
  }) => Observable<[ActivatedRouteSnapshot | null, ActivatedRouteSnapshot]>;
91
91
  };
@@ -1,25 +1,27 @@
1
- import { ViewDragService } from '../view-dnd/view-drag.service';
2
- import { Router } from '@angular/router';
3
- import { LocationStrategy } from '@angular/common';
4
- import { ɵWorkbenchRouter } from '../routing/ɵworkbench-router.service';
5
- import { ɵWorkbenchLayoutFactory } from '../layout/ɵworkbench-layout.factory';
6
1
  import * as i0 from "@angular/core";
7
2
  /**
8
- * Updates the workbench layout when the user moves a view.
3
+ * Updates the workbench layout when receiving a {@link ViewMoveEvent} event relevant for this application.
9
4
  */
10
5
  export declare class ViewMoveHandler {
11
- private _workbenchId;
12
- private _workbenchRouter;
13
- private _workbenchLayoutFactory;
14
- private _viewDragService;
15
- private _router;
16
- private _locationStrategy;
17
- constructor(_workbenchId: string, _workbenchRouter: ɵWorkbenchRouter, _workbenchLayoutFactory: ɵWorkbenchLayoutFactory, _viewDragService: ViewDragService, _router: Router, _locationStrategy: LocationStrategy);
18
- private installViewMoveListener;
6
+ private readonly _workbenchId;
7
+ private readonly _workbenchRouter;
8
+ private readonly _workbenchLayoutFactory;
9
+ private readonly _router;
10
+ private readonly _locationStrategy;
11
+ constructor();
12
+ /**
13
+ * Updates the workbench layout when receiving a {@link ViewMoveEvent} event relevant for this application.
14
+ */
15
+ private onViewMove;
19
16
  private addView;
20
17
  private moveViewToNewWindow;
21
18
  private removeView;
22
19
  private moveView;
20
+ /**
21
+ * Subscribes to {@link ViewMoveEvent} events relevant for this app instance,
22
+ * invoking {@link onViewMove} for each event and signaling completion once the view has been moved.
23
+ */
24
+ private installViewMoveHandler;
23
25
  static ɵfac: i0.ɵɵFactoryDeclaration<ViewMoveHandler, never>;
24
26
  static ɵprov: i0.ɵɵInjectableDeclaration<ViewMoveHandler>;
25
27
  }
@@ -5,7 +5,6 @@ import { ViewDragService } from '../view-dnd/view-drag.service';
5
5
  import { OnAttach, OnDetach } from '../portal/wb-component-portal';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "../glass-pane/glass-pane.directive";
8
- import * as i2 from "@angular/common";
9
8
  /**
10
9
  * Renders the workbench view, using a router-outlet to display view content.
11
10
  */
@@ -33,5 +32,5 @@ export declare class ViewComponent implements OnDestroy, OnAttach, OnDetach {
33
32
  private addHostCssClasses;
34
33
  ngOnDestroy(): void;
35
34
  static ɵfac: i0.ɵɵFactoryDeclaration<ViewComponent, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<ViewComponent, "wb-view", never, {}, {}, never, never, true, [{ directive: typeof i1.GlassPaneDirective; inputs: {}; outputs: {}; }, { directive: typeof i2.NgClass; inputs: {}; outputs: {}; }]>;
35
+ static ɵcmp: i0.ɵɵComponentDeclaration<ViewComponent, "wb-view", never, {}, {}, never, never, true, [{ directive: typeof i1.GlassPaneDirective; inputs: {}; outputs: {}; }]>;
37
36
  }
@@ -36,16 +36,8 @@ export declare class ɵWorkbenchView implements WorkbenchView, Blockable {
36
36
  private readonly _classBasedCanCloseGuard;
37
37
  private _activationInstant;
38
38
  private _canCloseFn;
39
- /**
40
- * Identifies the {@link MView}.
41
- *
42
- * A view handle represents a view with a particular view id. Different {@link MView}s of the same view id may share the handle.
43
- * For example, when changing the layout, view handles for views with the same view id will be reused, regardless of
44
- * whether they have the same {@link MView}.
45
- */
46
- uid: string;
47
39
  alternativeId: string | undefined;
48
- navigationId: string | undefined;
40
+ navigationId: import("@angular/core").WritableSignal<string | undefined>;
49
41
  navigationHint: import("@angular/core").WritableSignal<string | undefined>;
50
42
  navigationData: import("@angular/core").WritableSignal<NavigationData>;
51
43
  navigationState: import("@angular/core").WritableSignal<NavigationState>;
@@ -16,7 +16,7 @@ export declare const GridDropTargets: {
16
16
  */
17
17
  readonly resolve: (target: {
18
18
  grid: MPartGrid;
19
- dropRegion: 'west' | 'east' | 'north' | 'south' | 'center';
19
+ dropRegion: "west" | "east" | "north" | "south" | "center";
20
20
  workbenchId: string;
21
21
  }) => ViewMoveEventTarget;
22
22
  };