@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
@@ -1,124 +0,0 @@
1
- /*
2
- * Copyright (c) 2018-2022 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 { Component, HostBinding, inject, ViewChild } from '@angular/core';
11
- import { ɵPopup } from './popup.config';
12
- import { ComponentPortal, PortalModule } from '@angular/cdk/portal';
13
- import { A11yModule, CdkTrapFocus } from '@angular/cdk/a11y';
14
- import { noop } from 'rxjs';
15
- import { SciViewportComponent } from '@scion/components/viewport';
16
- import { GLASS_PANE_BLOCKABLE, GLASS_PANE_OPTIONS, GlassPaneDirective } from '../glass-pane/glass-pane.directive';
17
- import * as i0 from "@angular/core";
18
- import * as i1 from "./popup.config";
19
- import * as i2 from "../glass-pane/glass-pane.directive";
20
- import * as i3 from "@angular/cdk/a11y";
21
- import * as i4 from "@angular/cdk/portal";
22
- /**
23
- * Displays the configured popup component in the popup overlay.
24
- *
25
- * The component is added to a viewport so that it scrolls when it exceeds the maximum allowed popup overlay size.
26
- * A focus trap is installed and the initial focus is set.
27
- */
28
- export class PopupComponent {
29
- get popupWidth() {
30
- return this._popup.size?.width;
31
- }
32
- get popupMinWidth() {
33
- return this._popup.size?.minWidth;
34
- }
35
- get popupMaxWidth() {
36
- return this._popup.size?.maxWidth;
37
- }
38
- get popupHeight() {
39
- return this._popup.size?.height;
40
- }
41
- get popupMinHeight() {
42
- return this._popup.size?.minHeight;
43
- }
44
- get popupMaxHeight() {
45
- return this._popup.size?.maxHeight;
46
- }
47
- get cssClasses() {
48
- return this._popup.cssClasses.join(' ');
49
- }
50
- get id() {
51
- return this._popup.id;
52
- }
53
- constructor(_popup, injector) {
54
- this._popup = _popup;
55
- this.portal = new ComponentPortal(this._popup.component, this._popup.viewContainerRef, injector);
56
- }
57
- ngOnInit() {
58
- // [Angular 14] The initial focus must not be requested via `cdkTrapFocusAutoCapture` as this would restore
59
- // focus to the previously focused element when the `FocusTrap` is destroyed. This behavior is unwanted if the
60
- // popup is closed by losing focus. Otherwise, the newly focused element that caused the loss of focus and thus
61
- // the closing of the popup would immediately become unfocused again. This behavior could only be observed when
62
- // the popup loses focus by clicking on an element in a microfrontend.
63
- this._cdkTrapFocus.focusTrap.focusInitialElementWhenReady().then(noop);
64
- }
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: PopupComponent, deps: [{ token: i1.ɵPopup }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
66
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: PopupComponent, isStandalone: true, selector: "wb-popup", host: { properties: { "style.width": "this.popupWidth", "style.min-width": "this.popupMinWidth", "style.max-width": "this.popupMaxWidth", "style.height": "this.popupHeight", "style.min-height": "this.popupMinHeight", "style.max-height": "this.popupMaxHeight", "attr.class": "this.cssClasses", "attr.data-popupid": "this.id" } }, providers: [
67
- configurePopupGlassPane(),
68
- ], viewQueries: [{ propertyName: "_cdkTrapFocus", first: true, predicate: ["focus_trap"], descendants: true, read: CdkTrapFocus, static: true }], hostDirectives: [{ directive: i2.GlassPaneDirective }], ngImport: i0, template: "<sci-viewport cdkTrapFocus class=\"e2e-popup-viewport\" #focus_trap>\n <ng-container *cdkPortalOutlet=\"portal\"/>\n</sci-viewport>\n", styles: [":host{display:grid;grid-template-columns:100%;grid-template-rows:100%;outline:none;border-radius:var(--sci-corner);overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: SciViewportComponent, selector: "sci-viewport", inputs: ["scrollbarStyle"], outputs: ["scroll"] }] }); }
69
- }
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: PopupComponent, decorators: [{
71
- type: Component,
72
- args: [{ selector: 'wb-popup', standalone: true, imports: [
73
- A11yModule,
74
- PortalModule,
75
- SciViewportComponent,
76
- ], hostDirectives: [
77
- GlassPaneDirective,
78
- ], providers: [
79
- configurePopupGlassPane(),
80
- ], template: "<sci-viewport cdkTrapFocus class=\"e2e-popup-viewport\" #focus_trap>\n <ng-container *cdkPortalOutlet=\"portal\"/>\n</sci-viewport>\n", styles: [":host{display:grid;grid-template-columns:100%;grid-template-rows:100%;outline:none;border-radius:var(--sci-corner);overflow:hidden}\n"] }]
81
- }], ctorParameters: () => [{ type: i1.ɵPopup }, { type: i0.Injector }], propDecorators: { _cdkTrapFocus: [{
82
- type: ViewChild,
83
- args: ['focus_trap', { static: true, read: CdkTrapFocus }]
84
- }], popupWidth: [{
85
- type: HostBinding,
86
- args: ['style.width']
87
- }], popupMinWidth: [{
88
- type: HostBinding,
89
- args: ['style.min-width']
90
- }], popupMaxWidth: [{
91
- type: HostBinding,
92
- args: ['style.max-width']
93
- }], popupHeight: [{
94
- type: HostBinding,
95
- args: ['style.height']
96
- }], popupMinHeight: [{
97
- type: HostBinding,
98
- args: ['style.min-height']
99
- }], popupMaxHeight: [{
100
- type: HostBinding,
101
- args: ['style.max-height']
102
- }], cssClasses: [{
103
- type: HostBinding,
104
- args: ['attr.class']
105
- }], id: [{
106
- type: HostBinding,
107
- args: ['attr.data-popupid']
108
- }] } });
109
- /**
110
- * Blocks this popup when dialog(s) overlay it.
111
- */
112
- function configurePopupGlassPane() {
113
- return [
114
- {
115
- provide: GLASS_PANE_BLOCKABLE,
116
- useExisting: ɵPopup,
117
- },
118
- {
119
- provide: GLASS_PANE_OPTIONS,
120
- useFactory: () => ({ attributes: { 'data-popupid': inject(ɵPopup).id } }),
121
- },
122
- ];
123
- }
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvcG9wdXAvcG9wdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvcG9wdXAvcG9wdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQThCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQzNELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFDLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFtQixNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7QUFFbEk7Ozs7O0dBS0c7QUFrQkgsTUFBTSxPQUFPLGNBQWM7SUFPekIsSUFDVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUNXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQ1csYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFDVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUNXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUM7SUFDckMsQ0FBQztJQUVELElBQ1csY0FBYztRQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFDVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUNXLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxZQUFvQixNQUFjLEVBQUUsUUFBa0I7UUFBbEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDbkcsQ0FBQztJQUVNLFFBQVE7UUFDYiwyR0FBMkc7UUFDM0csOEdBQThHO1FBQzlHLCtHQUErRztRQUMvRywrR0FBK0c7UUFDL0csc0VBQXNFO1FBQ3RFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLDRCQUE0QixFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7OEdBMURVLGNBQWM7a0dBQWQsY0FBYyxnWUFKZDtZQUNULHVCQUF1QixFQUFFO1NBQzFCLGtIQU02QyxZQUFZLG1HQzdDNUQsd0lBR0EsOExEMkJJLFVBQVUseUxBQ1YsWUFBWSxrTUFDWixvQkFBb0I7OzJGQVNYLGNBQWM7a0JBakIxQixTQUFTOytCQUNFLFVBQVUsY0FHUixJQUFJLFdBQ1A7d0JBQ1AsVUFBVTt3QkFDVixZQUFZO3dCQUNaLG9CQUFvQjtxQkFDckIsa0JBQ2U7d0JBQ2Qsa0JBQWtCO3FCQUNuQixhQUNVO3dCQUNULHVCQUF1QixFQUFFO3FCQUMxQjtrR0FPTyxhQUFhO3NCQURwQixTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBQztnQkFJaEQsVUFBVTtzQkFEcEIsV0FBVzt1QkFBQyxhQUFhO2dCQU1mLGFBQWE7c0JBRHZCLFdBQVc7dUJBQUMsaUJBQWlCO2dCQU1uQixhQUFhO3NCQUR2QixXQUFXO3VCQUFDLGlCQUFpQjtnQkFNbkIsV0FBVztzQkFEckIsV0FBVzt1QkFBQyxjQUFjO2dCQU1oQixjQUFjO3NCQUR4QixXQUFXO3VCQUFDLGtCQUFrQjtnQkFNcEIsY0FBYztzQkFEeEIsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBTXBCLFVBQVU7c0JBRHBCLFdBQVc7dUJBQUMsWUFBWTtnQkFNZCxFQUFFO3NCQURaLFdBQVc7dUJBQUMsbUJBQW1COztBQW1CbEM7O0dBRUc7QUFDSCxTQUFTLHVCQUF1QjtJQUM5QixPQUFPO1FBQ0w7WUFDRSxPQUFPLEVBQUUsb0JBQW9CO1lBQzdCLFdBQVcsRUFBRSxNQUFNO1NBQ3BCO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsa0JBQWtCO1lBQzNCLFVBQVUsRUFBRSxHQUFxQixFQUFFLENBQUMsQ0FBQyxFQUFDLFVBQVUsRUFBRSxFQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFDLEVBQUMsQ0FBQztTQUN4RjtLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIyIFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIGluamVjdCwgSW5qZWN0b3IsIE9uSW5pdCwgUHJvdmlkZXIsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge8m1UG9wdXB9IGZyb20gJy4vcG9wdXAuY29uZmlnJztcbmltcG9ydCB7Q29tcG9uZW50UG9ydGFsLCBQb3J0YWxNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtBMTF5TW9kdWxlLCBDZGtUcmFwRm9jdXN9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7bm9vcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1NjaVZpZXdwb3J0Q29tcG9uZW50fSBmcm9tICdAc2Npb24vY29tcG9uZW50cy92aWV3cG9ydCc7XG5pbXBvcnQge0dMQVNTX1BBTkVfQkxPQ0tBQkxFLCBHTEFTU19QQU5FX09QVElPTlMsIEdsYXNzUGFuZURpcmVjdGl2ZSwgR2xhc3NQYW5lT3B0aW9uc30gZnJvbSAnLi4vZ2xhc3MtcGFuZS9nbGFzcy1wYW5lLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogRGlzcGxheXMgdGhlIGNvbmZpZ3VyZWQgcG9wdXAgY29tcG9uZW50IGluIHRoZSBwb3B1cCBvdmVybGF5LlxuICpcbiAqIFRoZSBjb21wb25lbnQgaXMgYWRkZWQgdG8gYSB2aWV3cG9ydCBzbyB0aGF0IGl0IHNjcm9sbHMgd2hlbiBpdCBleGNlZWRzIHRoZSBtYXhpbXVtIGFsbG93ZWQgcG9wdXAgb3ZlcmxheSBzaXplLlxuICogQSBmb2N1cyB0cmFwIGlzIGluc3RhbGxlZCBhbmQgdGhlIGluaXRpYWwgZm9jdXMgaXMgc2V0LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3Yi1wb3B1cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3B1cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BvcHVwLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBBMTF5TW9kdWxlLFxuICAgIFBvcnRhbE1vZHVsZSxcbiAgICBTY2lWaWV3cG9ydENvbXBvbmVudCxcbiAgXSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICBHbGFzc1BhbmVEaXJlY3RpdmUsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIGNvbmZpZ3VyZVBvcHVwR2xhc3NQYW5lKCksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFBvcHVwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwdWJsaWMgcG9ydGFsOiBDb21wb25lbnRQb3J0YWw8YW55PjtcblxuICBAVmlld0NoaWxkKCdmb2N1c190cmFwJywge3N0YXRpYzogdHJ1ZSwgcmVhZDogQ2RrVHJhcEZvY3VzfSlcbiAgcHJpdmF0ZSBfY2RrVHJhcEZvY3VzITogQ2RrVHJhcEZvY3VzO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgnKVxuICBwdWJsaWMgZ2V0IHBvcHVwV2lkdGgoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fcG9wdXAuc2l6ZT8ud2lkdGg7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1pbi13aWR0aCcpXG4gIHB1YmxpYyBnZXQgcG9wdXBNaW5XaWR0aCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9wb3B1cC5zaXplPy5taW5XaWR0aDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubWF4LXdpZHRoJylcbiAgcHVibGljIGdldCBwb3B1cE1heFdpZHRoKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcHVwLnNpemU/Lm1heFdpZHRoO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQnKVxuICBwdWJsaWMgZ2V0IHBvcHVwSGVpZ2h0KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcHVwLnNpemU/LmhlaWdodDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubWluLWhlaWdodCcpXG4gIHB1YmxpYyBnZXQgcG9wdXBNaW5IZWlnaHQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fcG9wdXAuc2l6ZT8ubWluSGVpZ2h0O1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5tYXgtaGVpZ2h0JylcbiAgcHVibGljIGdldCBwb3B1cE1heEhlaWdodCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9wb3B1cC5zaXplPy5tYXhIZWlnaHQ7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuY2xhc3MnKVxuICBwdWJsaWMgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcG9wdXAuY3NzQ2xhc3Nlcy5qb2luKCcgJyk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1wb3B1cGlkJylcbiAgcHVibGljIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9wb3B1cC5pZDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3BvcHVwOiDJtVBvcHVwLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLnBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwodGhpcy5fcG9wdXAuY29tcG9uZW50LCB0aGlzLl9wb3B1cC52aWV3Q29udGFpbmVyUmVmLCBpbmplY3Rvcik7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gW0FuZ3VsYXIgMTRdIFRoZSBpbml0aWFsIGZvY3VzIG11c3Qgbm90IGJlIHJlcXVlc3RlZCB2aWEgYGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlYCBhcyB0aGlzIHdvdWxkIHJlc3RvcmVcbiAgICAvLyBmb2N1cyB0byB0aGUgcHJldmlvdXNseSBmb2N1c2VkIGVsZW1lbnQgd2hlbiB0aGUgYEZvY3VzVHJhcGAgaXMgZGVzdHJveWVkLiBUaGlzIGJlaGF2aW9yIGlzIHVud2FudGVkIGlmIHRoZVxuICAgIC8vIHBvcHVwIGlzIGNsb3NlZCBieSBsb3NpbmcgZm9jdXMuIE90aGVyd2lzZSwgdGhlIG5ld2x5IGZvY3VzZWQgZWxlbWVudCB0aGF0IGNhdXNlZCB0aGUgbG9zcyBvZiBmb2N1cyBhbmQgdGh1c1xuICAgIC8vIHRoZSBjbG9zaW5nIG9mIHRoZSBwb3B1cCB3b3VsZCBpbW1lZGlhdGVseSBiZWNvbWUgdW5mb2N1c2VkIGFnYWluLiBUaGlzIGJlaGF2aW9yIGNvdWxkIG9ubHkgYmUgb2JzZXJ2ZWQgd2hlblxuICAgIC8vIHRoZSBwb3B1cCBsb3NlcyBmb2N1cyBieSBjbGlja2luZyBvbiBhbiBlbGVtZW50IGluIGEgbWljcm9mcm9udGVuZC5cbiAgICB0aGlzLl9jZGtUcmFwRm9jdXMuZm9jdXNUcmFwLmZvY3VzSW5pdGlhbEVsZW1lbnRXaGVuUmVhZHkoKS50aGVuKG5vb3ApO1xuICB9XG59XG5cbi8qKlxuICogQmxvY2tzIHRoaXMgcG9wdXAgd2hlbiBkaWFsb2cocykgb3ZlcmxheSBpdC5cbiAqL1xuZnVuY3Rpb24gY29uZmlndXJlUG9wdXBHbGFzc1BhbmUoKTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogR0xBU1NfUEFORV9CTE9DS0FCTEUsXG4gICAgICB1c2VFeGlzdGluZzogybVQb3B1cCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEdMQVNTX1BBTkVfT1BUSU9OUyxcbiAgICAgIHVzZUZhY3Rvcnk6ICgpOiBHbGFzc1BhbmVPcHRpb25zID0+ICh7YXR0cmlidXRlczogeydkYXRhLXBvcHVwaWQnOiBpbmplY3QoybVQb3B1cCkuaWR9fSksXG4gICAgfSxcbiAgXTtcbn1cbiIsIjxzY2ktdmlld3BvcnQgY2RrVHJhcEZvY3VzIGNsYXNzPVwiZTJlLXBvcHVwLXZpZXdwb3J0XCIgI2ZvY3VzX3RyYXA+XG4gIDxuZy1jb250YWluZXIgKmNka1BvcnRhbE91dGxldD1cInBvcnRhbFwiLz5cbjwvc2NpLXZpZXdwb3J0PlxuIl19
@@ -1,100 +0,0 @@
1
- /*
2
- * Copyright (c) 2018-2022 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 { assertNotInReactiveContext, EnvironmentInjector, inject } from '@angular/core';
11
- import { BehaviorSubject } from 'rxjs';
12
- import { Arrays, Dictionaries } from '@scion/toolkit/util';
13
- import { WorkbenchDialogRegistry } from '../dialog/workbench-dialog.registry';
14
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
15
- import { map } from 'rxjs/operators';
16
- import { ɵWorkbenchView } from '../view/ɵworkbench-view.model';
17
- /**
18
- * Configures the content to be displayed in a popup.
19
- *
20
- * A popup is a visual workbench component for displaying content above other content. It is positioned relative to an anchor,
21
- * which can be either a page coordinate (x/y) or an HTML element. When using an element as the popup anchor, the popup also
22
- * moves when the anchor element moves.
23
- */
24
- export class PopupConfig {
25
- }
26
- /**
27
- * Represents a handle that a popup component can inject to interact with the popup, for example,
28
- * to read input data or the configured size, or to close the popup.
29
- */
30
- export class Popup {
31
- }
32
- /**
33
- * @internal
34
- */
35
- export class ɵPopup {
36
- constructor(id, _config) {
37
- this.id = id;
38
- this._config = _config;
39
- this._popupEnvironmentInjector = inject(EnvironmentInjector);
40
- this._context = {
41
- view: inject(ɵWorkbenchView, { optional: true }),
42
- };
43
- this.referrer = Dictionaries.withoutUndefinedEntries({
44
- viewId: this._context.view?.id,
45
- });
46
- /**
47
- * Indicates whether this popup is blocked by dialog(s) that overlay it.
48
- */
49
- this.blockedBy$ = new BehaviorSubject(null);
50
- this.cssClasses = Arrays.coerce(this._config.cssClass);
51
- this.blockWhenDialogOpened();
52
- }
53
- /**
54
- * Blocks this popup when a dialog overlays it.
55
- */
56
- blockWhenDialogOpened() {
57
- const workbenchDialogRegistry = inject(WorkbenchDialogRegistry);
58
- const initialTop = workbenchDialogRegistry.top({ viewId: this._context.view?.id });
59
- workbenchDialogRegistry.top$({ viewId: this._context.view?.id })
60
- .pipe(map(top => top === initialTop ? null : top), takeUntilDestroyed())
61
- .subscribe(this.blockedBy$);
62
- }
63
- /** @inheritDoc */
64
- setResult(result) {
65
- this.result = result;
66
- }
67
- /** @inheritDoc */
68
- close(result) {
69
- assertNotInReactiveContext(this.close, 'Call WorkbenchPopup.close() in a non-reactive (non-tracking) context, such as within the untracked() function.');
70
- this.result = result;
71
- this.destroy();
72
- }
73
- /** @inheritDoc */
74
- get input() {
75
- return this._config.input;
76
- }
77
- /** @inheritDoc */
78
- get size() {
79
- return this._config.size;
80
- }
81
- get component() {
82
- return this._config.component;
83
- }
84
- get viewContainerRef() {
85
- return this._config.componentConstructOptions?.viewContainerRef;
86
- }
87
- /**
88
- * Reference to the handle's injector. The injector will be destroyed when closing the popup.
89
- */
90
- get injector() {
91
- return this._popupEnvironmentInjector;
92
- }
93
- /**
94
- * Destroys this dialog and associated resources.
95
- */
96
- destroy() {
97
- this._popupEnvironmentInjector.destroy();
98
- }
99
- }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvcG9wdXAvcG9wdXAuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLDBCQUEwQixFQUFjLG1CQUFtQixFQUFFLE1BQU0sRUFBbUQsTUFBTSxlQUFlLENBQUM7QUFDcEosT0FBTyxFQUFDLGVBQWUsRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUVqRCxPQUFPLEVBQUMsTUFBTSxFQUFFLFlBQVksRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUluQyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFFN0Q7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFnQixXQUFXO0NBc0doQztBQWdERDs7O0dBR0c7QUFDSCxNQUFNLE9BQWdCLEtBQUs7Q0FpQzFCO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sTUFBTTtJQWtCakIsWUFBbUIsRUFBVSxFQUFVLE9BQW9CO1FBQXhDLE9BQUUsR0FBRixFQUFFLENBQVE7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFhO1FBaEIxQyw4QkFBeUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN4RCxhQUFRLEdBQUc7WUFDMUIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxjQUFjLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7U0FDL0MsQ0FBQztRQUdjLGFBQVEsR0FBa0IsWUFBWSxDQUFDLHVCQUF1QixDQUFDO1lBQzdFLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFFO1NBQy9CLENBQUMsQ0FBQztRQUVIOztXQUVHO1FBQ2EsZUFBVSxHQUFHLElBQUksZUFBZSxDQUEwQixJQUFJLENBQUMsQ0FBQztRQUk5RSxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSyxxQkFBcUI7UUFDM0IsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNoRSxNQUFNLFVBQVUsR0FBRyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsRUFBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFDLENBQUMsQ0FBQztRQUVqRix1QkFBdUIsQ0FBQyxJQUFJLENBQUMsRUFBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFDLENBQUM7YUFDM0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQzNDLGtCQUFrQixFQUFFLENBQ3JCO2FBQ0EsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsa0JBQWtCO0lBQ1gsU0FBUyxDQUFDLE1BQVU7UUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELGtCQUFrQjtJQUNYLEtBQUssQ0FBQyxNQUFrQjtRQUM3QiwwQkFBMEIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLGdIQUFnSCxDQUFDLENBQUM7UUFDekosSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFXLGdCQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMseUJBQXlCLEVBQUUsZ0JBQWdCLENBQUM7SUFDbEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDO0lBQ3hDLENBQUM7SUFFRDs7T0FFRztJQUNJLE9BQU87UUFDWixJQUFJLENBQUMseUJBQXlCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIyIFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge2Fzc2VydE5vdEluUmVhY3RpdmVDb250ZXh0LCBFbGVtZW50UmVmLCBFbnZpcm9ubWVudEluamVjdG9yLCBpbmplY3QsIEluamVjdG9yLCBTdGF0aWNQcm92aWRlciwgVHlwZSwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1BvcHVwT3JpZ2lufSBmcm9tICcuL3BvcHVwLm9yaWdpbic7XG5pbXBvcnQge0FycmF5cywgRGljdGlvbmFyaWVzfSBmcm9tICdAc2Npb24vdG9vbGtpdC91dGlsJztcbmltcG9ydCB7V29ya2JlbmNoRGlhbG9nUmVnaXN0cnl9IGZyb20gJy4uL2RpYWxvZy93b3JrYmVuY2gtZGlhbG9nLnJlZ2lzdHJ5JztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHvJtVdvcmtiZW5jaERpYWxvZ30gZnJvbSAnLi4vZGlhbG9nL8m1d29ya2JlbmNoLWRpYWxvZyc7XG5pbXBvcnQge0Jsb2NrYWJsZX0gZnJvbSAnLi4vZ2xhc3MtcGFuZS9ibG9ja2FibGUnO1xuaW1wb3J0IHtWaWV3SWR9IGZyb20gJy4uL3ZpZXcvd29ya2JlbmNoLXZpZXcubW9kZWwnO1xuaW1wb3J0IHvJtVdvcmtiZW5jaFZpZXd9IGZyb20gJy4uL3ZpZXcvybV3b3JrYmVuY2gtdmlldy5tb2RlbCc7XG5cbi8qKlxuICogQ29uZmlndXJlcyB0aGUgY29udGVudCB0byBiZSBkaXNwbGF5ZWQgaW4gYSBwb3B1cC5cbiAqXG4gKiBBIHBvcHVwIGlzIGEgdmlzdWFsIHdvcmtiZW5jaCBjb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgY29udGVudCBhYm92ZSBvdGhlciBjb250ZW50LiBJdCBpcyBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIGFuIGFuY2hvcixcbiAqIHdoaWNoIGNhbiBiZSBlaXRoZXIgYSBwYWdlIGNvb3JkaW5hdGUgKHgveSkgb3IgYW4gSFRNTCBlbGVtZW50LiBXaGVuIHVzaW5nIGFuIGVsZW1lbnQgYXMgdGhlIHBvcHVwIGFuY2hvciwgdGhlIHBvcHVwIGFsc29cbiAqIG1vdmVzIHdoZW4gdGhlIGFuY2hvciBlbGVtZW50IG1vdmVzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUG9wdXBDb25maWcge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB1bmlxdWUgaWRlbnRpdHkgb2YgdGhlIHBvcHVwLiBJZiBub3Qgc3BlY2lmaWVkLCBhc3NpZ25zIHRoZSBwb3B1cCBhIFVVSUQuXG4gICAqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogQ29udHJvbHMgd2hlcmUgdG8gb3BlbiB0aGUgcG9wdXAuXG4gICAqXG4gICAqIFByb3ZpZGUgZWl0aGVyIGEgY29vcmRpbmF0ZSBvciBhbiBlbGVtZW50IHRvIHNlcnZlIGFzIHRoZSBwb3B1cCBhbmNob3IuIFRoZSBhbGlnbiBzZXR0aW5nIGNhbiBiZSB1c2VkIHRvIGNvbnRyb2xcbiAgICogdGhlIHJlZ2lvbiB3aGVyZSB0byBvcGVuIHRoZSBwb3B1cCByZWxhdGl2ZSB0byB0aGUgYW5jaG9yLlxuICAgKlxuICAgKiBJZiB5b3UgdXNlIGFuIGVsZW1lbnQgYXMgdGhlIHBvcHVwIGFuY2hvciwgdGhlIHBvcHVwIGFsc28gbW92ZXMgd2hlbiB0aGUgYW5jaG9yIGVsZW1lbnQgbW92ZXMuIElmIHlvdSB1c2UgYSBjb29yZGluYXRlXG4gICAqIGFuZCBvcGVuIHRoZSBwb3B1cCBpbiB0aGUgY29udGV4dCBvZiBhIHZpZXcsIHRoZSBwb3B1cCBvcGVucyByZWxhdGl2ZSB0byB0aGUgYm91bmRzIG9mIHRoYXQgdmlldy4gT3RoZXJ3aXNlLCBpdFxuICAgKiBpcyBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIHRoZSBwYWdlIHZpZXdwb3J0LiBJZiB5b3UgbW92ZSBvciByZXNpemUgdGhlIHZpZXcgb3IgdGhlIHBhZ2UsIHRoZSBwb3B1cCB3aWxsIGFsc28gYmUgbW92ZWRcbiAgICogZGVwZW5kaW5nIG9uIHRoZSBwYWlyIG9mIGNvb3JkaW5hdGVzIHVzZWQuXG4gICAqXG4gICAqIFRoZSBmb2xsb3dpbmcgY29vcmRpbmF0ZSBwYWlycyBhcmUgc3VwcG9ydGVkOlxuICAgKiAtIHgveTogcmVsYXRpdmUgdG8gdGhlIFwidG9wL2xlZnRcIiBjb3JuZXIgb2YgdGhlIHZpZXcgb3IgcGFnZSB2aWV3cG9ydFxuICAgKiAtIHRvcC9sZWZ0OiBlcXVpdmFsZW50IHRvIHBhc3NpbmcgYSBcIngveVwiIGNvb3JkaW5hdGVcbiAgICogLSB0b3AvcmlnaHQ6IHJlbGF0aXZlIHRvIHRoZSBcInRvcC9yaWdodFwiIGNvcm5lciBvZiB0aGUgdmlldyBvciBwYWdlIHZpZXdwb3J0XG4gICAqIC0gYm90dG9tL2xlZnQ6IHJlbGF0aXZlIHRvIHRoZSBcImJvdHRvbS9sZWZ0XCIgY29ybmVyIG9mIHRoZSB2aWV3IG9yIHBhZ2Ugdmlld3BvcnRcbiAgICogLSBib3R0b20vcmlnaHQ6IHJlbGF0aXZlIHRvIHRoZSBcImJvdHRvbS9yaWdodFwiIGNvcm5lciBvZiB0aGUgdmlldyBvciBwYWdlIHZpZXdwb3J0XG4gICAqXG4gICAqIFBvc2l0aW9uaW5nIHRoZSBwb3B1cCB1c2luZyBjb29yZGluYXRlcyBhbGxvd3MgdG8gcGFzcyBhbiBPYnNlcnZhYmxlIHRvIHVwZGF0ZSB0aGUgcG9wdXAgcG9zaXRpb24uIE5vdGUgdGhhdCB0aGUgcG9wdXBcbiAgICogd2lsbCBub3QgZGlzcGxheSB1bnRpbCB0aGUgT2JzZXJ2YWJsZSBlbWl0cyB0aGUgZmlyc3QgY29vcmRpbmF0ZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhbmNob3I6IEVsZW1lbnRSZWY8RWxlbWVudD4gfCBFbGVtZW50IHwgUG9wdXBPcmlnaW4gfCBPYnNlcnZhYmxlPFBvcHVwT3JpZ2luPjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgY29tcG9uZW50IHRvIGRpc3BsYXkgaW4gdGhlIHBvcHVwLlxuICAgKlxuICAgKiBJbiB0aGUgY29tcG9uZW50LCB5b3UgY2FuIGluamVjdCB0aGUgcG9wdXAgaGFuZGxlIHtAbGluayBQb3B1cH0gdG8gaW50ZXJhY3Qgd2l0aCB0aGUgcG9wdXAsIHN1Y2ggYXMgdG8gY2xvc2UgaXRcbiAgICogb3Igb2J0YWluIGl0cyBpbnB1dCBkYXRhLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGNvbXBvbmVudDogVHlwZTxhbnk+O1xuICAvKipcbiAgICogSW5zdHJ1Y3RzIEFuZ3VsYXIgaG93IHRvIGNvbnN0cnVjdCB0aGUgY29tcG9uZW50LiBJbiBtb3N0IGNhc2VzLCBjb25zdHJ1Y3Qgb3B0aW9ucyBuZWVkIG5vdCB0byBiZSBzZXQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29tcG9uZW50Q29uc3RydWN0T3B0aW9ucz86IHtcbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBpbmplY3RvciBmb3IgdGhlIGluc3RhbnRpYXRpb24gb2YgdGhlIHBvcHVwIGNvbXBvbmVudCwgZ2l2aW5nIHlvdSBjb250cm9sIG92ZXIgdGhlIG9iamVjdHMgYXZhaWxhYmxlXG4gICAgICogZm9yIGluamVjdGlvbiBpbnRvIHRoZSBwb3B1cCBjb21wb25lbnQuIElmIG5vdCBzcGVjaWZpZWQsIHVzZXMgdGhlIGFwcGxpY2F0aW9uJ3Mgcm9vdCBpbmplY3Rvciwgb3IgdGhlIHZpZXcnc1xuICAgICAqIGluamVjdG9yIGlmIG9wZW5lZCBpbiB0aGUgY29udGV4dCBvZiBhIHZpZXcuXG4gICAgICpcbiAgICAgKiBgYGB0c1xuICAgICAqIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICogICBwYXJlbnQ6IC4uLixcbiAgICAgKiAgIHByb3ZpZGVyczogW1xuICAgICAqICAgIHtwcm92aWRlOiA8RGlUb2tlbj4sIHVzZVZhbHVlOiA8dmFsdWU+fVxuICAgICAqICAgXSxcbiAgICAgKiB9KVxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIGluamVjdG9yPzogSW5qZWN0b3I7XG4gICAgLyoqXG4gICAgICogU3BlY2lmaWVzIHByb3ZpZGVycyB0byBiZSByZWdpc3RlcmVkIHdpdGggdGhlIHBvcHVwIGluamVjdG9yLiBVbmxpa2UgcHJvdmlkZXJzIHRoYXQgYXJlIHJlZ2lzdGVyZWQgdmlhIGEgc2VwYXJhdGUge0BsaW5rIGluamVjdG9yfSxcbiAgICAgKiBwYXNzZWQgcHJvdmlkZXJzIGFyZSByZWdpc3RlcmVkIGluIHRoZSBzYW1lIGluamVjdG9yIGFzIHRoZSBwb3B1cCBoYW5kbGUgaXRzZWxmLCBhbGxvd2luZyBmb3IgZGVwZW5kZW5jeSBpbmplY3Rpb24gb2YgdGhlIHBvcHVwIGhhbmRsZS5cbiAgICAgKi9cbiAgICBwcm92aWRlcnM/OiBTdGF0aWNQcm92aWRlcltdO1xuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGNvbXBvbmVudCdzIGF0dGFjaG1lbnQgcG9pbnQgaW4gQW5ndWxhcidzIGxvZ2ljYWwgY29tcG9uZW50IHRyZWUgKG5vdCB0aGUgRE9NIHRyZWUgdXNlZCBmb3IgcmVuZGVyaW5nKSwgZWZmZWN0aW5nIHdoZW5cbiAgICAgKiBBbmd1bGFyIGNoZWNrcyB0aGUgY29tcG9uZW50IGZvciBjaGFuZ2VzIGR1cmluZyBhIGNoYW5nZSBkZXRlY3Rpb24gY3ljbGUuIElmIG5vdCBzZXQsIGluc2VydHMgdGhlIGNvbXBvbmVudCBhdCB0aGUgdG9wIGxldmVsXG4gICAgICogaW4gdGhlIGNvbXBvbmVudCB0cmVlLlxuICAgICAqL1xuICAgIHZpZXdDb250YWluZXJSZWY/OiBWaWV3Q29udGFpbmVyUmVmO1xuICB9O1xuICAvKipcbiAgICogSGludCB3aGVyZSB0byBhbGlnbiB0aGUgcG9wdXAgcmVsYXRpdmUgdG8gdGhlIHBvcHVwIGFuY2hvciwgdW5sZXNzIHRoZXJlIGlzIG5vdCBlbm91Z2ggc3BhY2UgYXZhaWxhYmxlIGluIHRoYXQgYXJlYS4gQnkgZGVmYXVsdCxcbiAgICogaWYgbm90IHNwZWNpZmllZCwgdGhlIHBvcHVwIG9wZW5zIG5vcnRoIG9mIHRoZSBhbmNob3IuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYWxpZ24/OiAnZWFzdCcgfCAnd2VzdCcgfCAnbm9ydGgnIHwgJ3NvdXRoJztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRhdGEgdG8gcGFzcyB0byB0aGUgcG9wdXAgY29tcG9uZW50LiBJbiB0aGUgY29tcG9uZW50LCB5b3UgY2FuIGluamVjdCB0aGUgcG9wdXAgaGFuZGxlIHtAbGluayBQb3B1cH0gdG8gcmVhZCBpbnB1dCBkYXRhLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGlucHV0PzogYW55O1xuICAvKipcbiAgICogQ29udHJvbHMgd2hlbiB0byBjbG9zZSB0aGUgcG9wdXAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2xvc2VTdHJhdGVneT86IENsb3NlU3RyYXRlZ3k7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHByZWZlcnJlZCBwb3B1cCBzaXplLiBJZiBub3Qgc3BlY2lmaWVkLCB0aGUgcG9wdXAgYWRqdXN0cyBpdHMgc2l6ZSB0byB0aGUgY29udGVudCBzaXplLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNpemU/OiBQb3B1cFNpemU7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgQ1NTIGNsYXNzKGVzKSB0byBhZGQgdG8gdGhlIHBvcHVwLCBlLmcuLCB0byBsb2NhdGUgdGhlIHBvcHVwIGluIHRlc3RzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNzc0NsYXNzPzogc3RyaW5nIHwgc3RyaW5nW107XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGNvbnRleHQgaW4gd2hpY2ggdG8gb3BlbiB0aGUgcG9wdXAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29udGV4dD86IHtcbiAgICAvKipcbiAgICAgKiBTcGVjaWZpZXMgdGhlIHZpZXcgdGhlIHBvcHVwIGJlbG9uZ3MgdG8uXG4gICAgICpcbiAgICAgKiBCaW5kcyB0aGUgcG9wdXAgdG8gdGhlIGxpZmVjeWNsZSBvZiBhIHZpZXcgc28gdGhhdCBpdCBkaXNwbGF5cyBvbmx5IGlmIHRoZSB2aWV3IGlzIGFjdGl2ZSBhbmQgY2xvc2VzIHdoZW4gdGhlIHZpZXcgaXMgY2xvc2VkLlxuICAgICAqXG4gICAgICogQnkgZGVmYXVsdCwgaWYgb3BlbmluZyB0aGUgcG9wdXAgaW4gdGhlIGNvbnRleHQgb2YgYSB2aWV3LCB0aGF0IHZpZXcgaXMgdXNlZCBhcyB0aGUgcG9wdXAncyBjb250ZXh0dWFsIHZpZXcuXG4gICAgICogSWYgeW91IHNldCB0aGUgdmlldyBpZCB0byBgbnVsbGAsIHRoZSBwb3B1cCB3aWxsIG9wZW4gd2l0aG91dCByZWZlcnJpbmcgdG8gdGhlIGNvbnRleHR1YWwgdmlldy5cbiAgICAgKi9cbiAgICB2aWV3SWQ/OiBWaWV3SWQgfCBudWxsO1xuICB9O1xufVxuXG4vKipcbiAqIFNwZWNpZmllcyB3aGVuIHRvIGNsb3NlIHRoZSBwb3B1cC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDbG9zZVN0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIENvbnRyb2xzIGlmIHRvIGNsb3NlIHRoZSBwb3B1cCBvbiBmb2N1cyBsb3NzLCByZXR1cm5pbmcgdGhlIHJlc3VsdCBzZXQgdmlhIHtAbGluayBQb3B1cCNzZXRSZXN1bHR9IHRvIHRoZSBwb3B1cCBvcGVuZXIuXG4gICAqIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIG9uRm9jdXNMb3N0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIGlmIHRvIGNsb3NlIHRoZSBwb3B1cCB3aGVuIHByZXNzaW5nIGVzY2FwZS4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiBObyByZXR1cm4gdmFsdWUgd2lsbCBiZSBwYXNzZWQgdG8gdGhlIHBvcHVwIG9wZW5lci5cbiAgICovXG4gIG9uRXNjYXBlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBwcmVmZXJyZWQgcG9wdXAgc2l6ZSBhcyBzcGVjaWZpZWQgYnkgdGhlIHBvcHVwIG9wZW5lci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb3B1cFNpemUge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBtaW4taGVpZ2h0IG9mIHRoZSBwb3B1cC5cbiAgICovXG4gIG1pbkhlaWdodD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgaGVpZ2h0IG9mIHRoZSBwb3B1cC5cbiAgICovXG4gIGhlaWdodD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbWF4LWhlaWdodCBvZiB0aGUgcG9wdXAuXG4gICAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1pbi13aWR0aCBvZiB0aGUgcG9wdXAuXG4gICAqL1xuICBtaW5XaWR0aD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgd2lkdGggb2YgdGhlIHBvcHVwLlxuICAgKi9cbiAgd2lkdGg/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1heC13aWR0aCBvZiB0aGUgcG9wdXAuXG4gICAqL1xuICBtYXhXaWR0aD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgaGFuZGxlIHRoYXQgYSBwb3B1cCBjb21wb25lbnQgY2FuIGluamVjdCB0byBpbnRlcmFjdCB3aXRoIHRoZSBwb3B1cCwgZm9yIGV4YW1wbGUsXG4gKiB0byByZWFkIGlucHV0IGRhdGEgb3IgdGhlIGNvbmZpZ3VyZWQgc2l6ZSwgb3IgdG8gY2xvc2UgdGhlIHBvcHVwLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUG9wdXA8VCA9IHVua25vd24sIFIgPSB1bmtub3duPiB7XG5cbiAgLyoqXG4gICAqIElucHV0IGRhdGEgYXMgcGFzc2VkIGJ5IHRoZSBwb3B1cCBvcGVuZXIgd2hlbiBvcGVuZWQgdGhlIHBvcHVwLCBvciBgdW5kZWZpbmVkYCBpZiBub3QgcGFzc2VkLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGlucHV0OiBUIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBQcmVmZXJyZWQgcG9wdXAgc2l6ZSBhcyBzcGVjaWZpZWQgYnkgdGhlIHBvcHVwIG9wZW5lciwgb3IgYHVuZGVmaW5lZGAgaWYgbm90IHNldC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBzaXplOiBQb3B1cFNpemUgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjb250ZXh0IGluIHdoaWNoIHRoaXMgcG9wdXAgd2FzIG9wZW5lZC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgc2luY2UgdmVyc2lvbiAxOC4wLjAtYmV0YS40OyBJbmplY3Qge0BsaW5rIFdvcmtiZW5jaFZpZXd9IGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgcmVmZXJyZXI6IFBvcHVwUmVmZXJyZXI7XG5cbiAgLyoqXG4gICAqIENTUyBjbGFzc2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgcG9wdXAuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgY3NzQ2xhc3Nlczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFNldHMgYSByZXN1bHQgdGhhdCB3aWxsIGJlIHBhc3NlZCB0byB0aGUgcG9wdXAgb3BlbmVyIHdoZW4gdGhlIHBvcHVwIGlzIGNsb3NlZCBvbiBmb2N1cyBsb3NzIHtAbGluayBDbG9zZVN0cmF0ZWd5I29uRm9jdXNMb3N0fS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBzZXRSZXN1bHQocmVzdWx0PzogUik6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgcG9wdXAuIE9wdGlvbmFsbHksIHBhc3MgYSByZXN1bHQgb3IgYW4gZXJyb3IgdG8gdGhlIHBvcHVwIG9wZW5lci5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBjbG9zZShyZXN1bHQ/OiBSIHwgRXJyb3IpOiB2b2lkO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgybVQb3B1cDxUID0gdW5rbm93biwgUiA9IHVua25vd24+IGltcGxlbWVudHMgUG9wdXA8VCwgUj4sIEJsb2NrYWJsZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcG9wdXBFbnZpcm9ubWVudEluamVjdG9yID0gaW5qZWN0KEVudmlyb25tZW50SW5qZWN0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb250ZXh0ID0ge1xuICAgIHZpZXc6IGluamVjdCjJtVdvcmtiZW5jaFZpZXcsIHtvcHRpb25hbDogdHJ1ZX0pLFxuICB9O1xuXG4gIHB1YmxpYyByZWFkb25seSBjc3NDbGFzc2VzOiBzdHJpbmdbXTtcbiAgcHVibGljIHJlYWRvbmx5IHJlZmVycmVyOiBQb3B1cFJlZmVycmVyID0gRGljdGlvbmFyaWVzLndpdGhvdXRVbmRlZmluZWRFbnRyaWVzKHtcbiAgICB2aWV3SWQ6IHRoaXMuX2NvbnRleHQudmlldz8uaWQsXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGlzIHBvcHVwIGlzIGJsb2NrZWQgYnkgZGlhbG9nKHMpIHRoYXQgb3ZlcmxheSBpdC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBibG9ja2VkQnkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDzJtVdvcmtiZW5jaERpYWxvZyB8IG51bGw+KG51bGwpO1xuICBwdWJsaWMgcmVzdWx0OiBSIHwgRXJyb3IgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGlkOiBzdHJpbmcsIHByaXZhdGUgX2NvbmZpZzogUG9wdXBDb25maWcpIHtcbiAgICB0aGlzLmNzc0NsYXNzZXMgPSBBcnJheXMuY29lcmNlKHRoaXMuX2NvbmZpZy5jc3NDbGFzcyk7XG4gICAgdGhpcy5ibG9ja1doZW5EaWFsb2dPcGVuZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCbG9ja3MgdGhpcyBwb3B1cCB3aGVuIGEgZGlhbG9nIG92ZXJsYXlzIGl0LlxuICAgKi9cbiAgcHJpdmF0ZSBibG9ja1doZW5EaWFsb2dPcGVuZWQoKTogdm9pZCB7XG4gICAgY29uc3Qgd29ya2JlbmNoRGlhbG9nUmVnaXN0cnkgPSBpbmplY3QoV29ya2JlbmNoRGlhbG9nUmVnaXN0cnkpO1xuICAgIGNvbnN0IGluaXRpYWxUb3AgPSB3b3JrYmVuY2hEaWFsb2dSZWdpc3RyeS50b3Aoe3ZpZXdJZDogdGhpcy5fY29udGV4dC52aWV3Py5pZH0pO1xuXG4gICAgd29ya2JlbmNoRGlhbG9nUmVnaXN0cnkudG9wJCh7dmlld0lkOiB0aGlzLl9jb250ZXh0LnZpZXc/LmlkfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAodG9wID0+IHRvcCA9PT0gaW5pdGlhbFRvcCA/IG51bGwgOiB0b3ApLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUodGhpcy5ibG9ja2VkQnkkKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBwdWJsaWMgc2V0UmVzdWx0KHJlc3VsdD86IFIpOiB2b2lkIHtcbiAgICB0aGlzLnJlc3VsdCA9IHJlc3VsdDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBwdWJsaWMgY2xvc2UocmVzdWx0PzogUiB8IEVycm9yKTogdm9pZCB7XG4gICAgYXNzZXJ0Tm90SW5SZWFjdGl2ZUNvbnRleHQodGhpcy5jbG9zZSwgJ0NhbGwgV29ya2JlbmNoUG9wdXAuY2xvc2UoKSBpbiBhIG5vbi1yZWFjdGl2ZSAobm9uLXRyYWNraW5nKSBjb250ZXh0LCBzdWNoIGFzIHdpdGhpbiB0aGUgdW50cmFja2VkKCkgZnVuY3Rpb24uJyk7XG4gICAgdGhpcy5yZXN1bHQgPSByZXN1bHQ7XG4gICAgdGhpcy5kZXN0cm95KCk7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgcHVibGljIGdldCBpbnB1dCgpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnLmlucHV0O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIHB1YmxpYyBnZXQgc2l6ZSgpOiBQb3B1cFNpemUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jb25maWcuc2l6ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29tcG9uZW50KCk6IFR5cGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5jb21wb25lbnQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpZXdDb250YWluZXJSZWYoKTogVmlld0NvbnRhaW5lclJlZiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5jb21wb25lbnRDb25zdHJ1Y3RPcHRpb25zPy52aWV3Q29udGFpbmVyUmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgaGFuZGxlJ3MgaW5qZWN0b3IuIFRoZSBpbmplY3RvciB3aWxsIGJlIGRlc3Ryb3llZCB3aGVuIGNsb3NpbmcgdGhlIHBvcHVwLlxuICAgKi9cbiAgcHVibGljIGdldCBpbmplY3RvcigpOiBJbmplY3RvciB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcHVwRW52aXJvbm1lbnRJbmplY3RvcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95cyB0aGlzIGRpYWxvZyBhbmQgYXNzb2NpYXRlZCByZXNvdXJjZXMuXG4gICAqL1xuICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9wb3B1cEVudmlyb25tZW50SW5qZWN0b3IuZGVzdHJveSgpO1xuICB9XG59XG5cbi8qKlxuICogSW5mb3JtYXRpb24gYWJvdXQgdGhlIGNvbnRleHQgaW4gd2hpY2ggYSBwb3B1cCB3YXMgb3BlbmVkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvcHVwUmVmZXJyZXIge1xuICAvKipcbiAgICogSWRlbnRpdHkgb2YgdGhlIHZpZXcgaWYgb3BlbmVkIGluIHRoZSBjb250ZXh0IG9mIGEgdmlldy5cbiAgICovXG4gIHZpZXdJZD86IFZpZXdJZDtcbn1cbiJdfQ==
@@ -1,11 +0,0 @@
1
- /*
2
- * Copyright (c) 2018-2022 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
- export {};
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAub3JpZ2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvcG9wdXAvcG9wdXAub3JpZ2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIyIFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwb2ludCBvbiB0aGUgcGFnZSBvciB2aWV3LCBvcHRpb25hbGx5IHdpdGggYSBkaW1lbnNpb24sIHdoZXJlIGEgd29ya2JlbmNoIHBvcHVwIHNob3VsZCBiZSBhdHRhY2hlZC5cbiAqL1xuZXhwb3J0IHR5cGUgUG9wdXBPcmlnaW4gPSAoUG9pbnQgfCBUb3BMZWZ0UG9pbnQgfCBUb3BSaWdodFBvaW50IHwgQm90dG9tTGVmdFBvaW50IHwgQm90dG9tUmlnaHRQb2ludCkgJiB7XG4gIHdpZHRoPzogbnVtYmVyO1xuICBoZWlnaHQ/OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIENvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFwieC95XCIgY29ybmVyIG9mIHRoZSB2aWV3IG9yIHBhZ2Ugdmlld3BvcnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnQge1xuICB4OiBudW1iZXI7XG4gIHk6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDb29yZGluYXRlIHJlbGF0aXZlIHRvIHRoZSBcInRvcC9sZWZ0XCIgY29ybmVyIG9mIHRoZSB2aWV3IG9yIHBhZ2Ugdmlld3BvcnQuXG4gKlxuICogVGhpcyBpcyBlcXVpdmFsZW50IHRvIHBhc3NpbmcgYSBcIngveVwiIGNvb3JkaW5hdGUgYXMge0BsaW5rIFBvaW50fS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUb3BMZWZ0UG9pbnQge1xuICB0b3A6IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xufVxuXG4vKipcbiAqIENvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFwidG9wL3JpZ2h0XCIgY29ybmVyIG9mIHRoZSB2aWV3IG9yIHBhZ2Ugdmlld3BvcnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVG9wUmlnaHRQb2ludCB7XG4gIHRvcDogbnVtYmVyO1xuICByaWdodDogbnVtYmVyO1xufVxuXG4vKipcbiAqIENvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFwiYm90dG9tL2xlZnRcIiBjb3JuZXIgb2YgdGhlIHZpZXcgb3IgcGFnZSB2aWV3cG9ydC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCb3R0b21MZWZ0UG9pbnQge1xuICBib3R0b206IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xufVxuXG4vKipcbiAqIENvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFwiYm90dG9tL3JpZ2h0XCIgY29ybmVyIG9mIHRoZSB2aWV3IG9yIHBhZ2Ugdmlld3BvcnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQm90dG9tUmlnaHRQb2ludCB7XG4gIGJvdHRvbTogbnVtYmVyO1xuICByaWdodDogbnVtYmVyO1xufVxuIl19