@scion/workbench 17.0.0-beta.6 → 17.0.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/esm2022/lib/activation-instant.provider.mjs +3 -3
- package/esm2022/lib/common/asserts.util.mjs +2 -2
- package/esm2022/lib/common/class-list.mjs +61 -0
- package/esm2022/lib/common/coerce-observable.pipe.mjs +3 -3
- package/esm2022/lib/common/filter-by-predicate.pipe.mjs +3 -3
- package/esm2022/lib/common/filter-by-text.pipe.mjs +3 -3
- package/esm2022/lib/common/grid-element-if-visible.pipe.mjs +6 -6
- package/esm2022/lib/common/instanceof.pipe.mjs +3 -3
- package/esm2022/lib/common/map-coerce.pipe.mjs +3 -3
- package/esm2022/lib/common/null-if-empty.pipe.mjs +3 -3
- package/esm2022/lib/common/objects.util.mjs +34 -0
- package/esm2022/lib/common/typeof.pipe.mjs +3 -3
- package/esm2022/lib/common/uuid.util.mjs +17 -0
- package/esm2022/lib/content-projection/content-as-overlay.component.mjs +3 -3
- package/esm2022/lib/content-projection/content-projection.directive.mjs +3 -3
- package/esm2022/lib/dialog/dialog-footer/dialog-action-filter.pipe.mjs +3 -3
- package/esm2022/lib/dialog/dialog-footer/dialog-footer.component.mjs +3 -3
- package/esm2022/lib/dialog/dialog-footer/workbench-dialog-action.directive.mjs +3 -3
- package/esm2022/lib/dialog/dialog-footer/workbench-dialog-footer.directive.mjs +3 -3
- package/esm2022/lib/dialog/dialog-header/dialog-header.component.mjs +3 -3
- package/esm2022/lib/dialog/dialog-header/workbench-dialog-header.directive.mjs +3 -3
- package/esm2022/lib/dialog/movable.directive.mjs +3 -3
- package/esm2022/lib/dialog/resizable.directive.mjs +3 -3
- package/esm2022/lib/dialog/workbench-dialog.component.mjs +3 -3
- package/esm2022/lib/dialog/workbench-dialog.mjs +1 -1
- package/esm2022/lib/dialog/workbench-dialog.options.mjs +1 -1
- package/esm2022/lib/dialog/workbench-dialog.registry.mjs +4 -4
- package/esm2022/lib/dialog/workbench-dialog.service.mjs +5 -5
- package/esm2022/lib/dialog//311/265workbench-dialog.mjs +8 -26
- package/esm2022/lib/dialog//311/265workbench-dialog.service.mjs +3 -3
- package/esm2022/lib/filter-field/filter-field.component.mjs +6 -6
- package/esm2022/lib/glass-pane/glass-pane.directive.mjs +3 -3
- package/esm2022/lib/layout/grid-element/grid-element.component.mjs +10 -10
- package/esm2022/lib/layout/main-area-layout/main-area-layout.component.mjs +7 -4
- package/esm2022/lib/layout/migration/model/workbench-layout-migration-v1.model.mjs +11 -0
- package/esm2022/lib/layout/migration/model/workbench-layout-migration-v2.model.mjs +11 -0
- package/esm2022/lib/layout/migration/model/workbench-layout-migration-v3.model.mjs +11 -0
- package/esm2022/lib/layout/migration/model/workbench-layout-migration-v4.model.mjs +11 -0
- package/esm2022/lib/layout/migration/workbench-layout-migration-v2.service.mjs +59 -0
- package/esm2022/lib/layout/migration/workbench-layout-migration-v3.service.mjs +117 -0
- package/esm2022/lib/layout/migration/workbench-layout-migration-v4.service.mjs +57 -0
- package/esm2022/lib/layout/workbench-layout.component.mjs +7 -4
- package/esm2022/lib/layout/workbench-layout.factory.mjs +4 -4
- package/esm2022/lib/layout/workbench-layout.mjs +1 -1
- package/esm2022/lib/layout/workbench-layout.model.mjs +5 -6
- package/esm2022/lib/layout/workbench-layout.service.mjs +3 -3
- package/esm2022/lib/layout/workbench-layouts.util.mjs +53 -16
- package/esm2022/lib/layout/workench-layout-serializer.service.mjs +53 -21
- package/esm2022/lib/layout//311/265workbench-layout.factory.mjs +8 -5
- package/esm2022/lib/layout//311/265workbench-layout.mjs +382 -195
- package/esm2022/lib/logging/console-appender.service.mjs +3 -3
- package/esm2022/lib/logging/logger-names.mjs +8 -9
- package/esm2022/lib/logging/logger.mjs +3 -3
- package/esm2022/lib/logging/logging-support.mjs +4 -4
- package/esm2022/lib/logging/logging.model.mjs +3 -3
- package/esm2022/lib/logging//311/265logger.mjs +3 -3
- package/esm2022/lib/message-box/message-box-footer/message-box-footer.component.mjs +18 -20
- package/esm2022/lib/message-box/message-box-header/message-box-header.component.mjs +3 -3
- package/esm2022/lib/message-box/workbench-message-box.component.mjs +3 -3
- package/esm2022/lib/message-box/workbench-message-box.options.mjs +1 -1
- package/esm2022/lib/message-box/workbench-message-box.service.mjs +5 -5
- package/esm2022/lib/message-box//311/265workbench-message-box.service.mjs +5 -5
- package/esm2022/lib/microfrontend-platform/common/microfrontend.util.mjs +55 -0
- package/esm2022/lib/microfrontend-platform/initialization/microfrontend-platform-initializer.service.mjs +34 -22
- package/esm2022/lib/microfrontend-platform/initialization/ng-zone-observable-decorator.mjs +3 -3
- package/esm2022/lib/microfrontend-platform/initialization/workbench-host-manifest-interceptor.service.mjs +3 -3
- package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-capability-validator.interceptor.mjs +53 -0
- package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-intent-handler.interceptor.mjs +85 -0
- package/esm2022/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog.component.mjs +140 -0
- package/esm2022/lib/microfrontend-platform/microfrontend-host-dialog/microfrontend-host-dialog.component.mjs +122 -0
- package/esm2022/lib/microfrontend-platform/microfrontend-host-popup/microfrontend-host-popup.component.mjs +11 -10
- package/esm2022/lib/microfrontend-platform/microfrontend-message-box/microfrontend-message-box-intent-handler.service.mjs +3 -3
- package/esm2022/lib/microfrontend-platform/microfrontend-notification/microfrontend-notification-intent-handler.service.mjs +3 -3
- package/esm2022/lib/microfrontend-platform/microfrontend-platform-config-loader.mjs +3 -3
- package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-capability-validator.interceptor.mjs +30 -0
- package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-intent-handler.interceptor.mjs +130 -0
- package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup.component.mjs +18 -30
- package/esm2022/lib/microfrontend-platform/microfrontend-splash/microfrontend-splash.component.mjs +3 -3
- package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-view-command-handler.service.mjs +9 -31
- package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-view.component.mjs +88 -144
- package/esm2022/lib/microfrontend-platform/microfrontend-view/microfrontend-workbench-view.model.mjs +23 -0
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-capability-id-assigner.interceptor.mjs +41 -0
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-capability-validator.interceptor.mjs +30 -0
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-intent-handler.interceptor.mjs +125 -0
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-routes.mjs +103 -0
- package/esm2022/lib/microfrontend-platform/workbench-microfrontend-support.mjs +45 -47
- package/esm2022/lib/migration/workbench-migration.mjs +11 -0
- package/esm2022/lib/migration/workbench-migrator.mjs +38 -0
- package/esm2022/lib/notification/notification-css-classes.pipe.mjs +3 -3
- package/esm2022/lib/notification/notification-list.component.mjs +3 -3
- package/esm2022/lib/notification/notification.component.mjs +3 -3
- package/esm2022/lib/notification/notification.config.mjs +1 -1
- package/esm2022/lib/notification/notification.mjs +1 -1
- package/esm2022/lib/notification/notification.service.mjs +9 -9
- package/esm2022/lib/notification/text-notification.component.mjs +3 -3
- package/esm2022/lib/page-not-found/format-url.pipe.mjs +26 -0
- package/esm2022/lib/page-not-found/page-not-found.component.mjs +28 -0
- package/esm2022/lib/part/part-action-bar/part-action-bar.component.mjs +3 -3
- package/esm2022/lib/part/part-action-bar/part-action-filter.pipe.mjs +3 -3
- package/esm2022/lib/part/part-action-bar/part-action.directive.mjs +4 -4
- package/esm2022/lib/part/part-bar/part-bar.component.mjs +11 -8
- package/esm2022/lib/part/part-portal.pipe.mjs +3 -3
- package/esm2022/lib/part/part.component.mjs +7 -4
- package/esm2022/lib/part/view-context-menu/accelerator-format.pipe.mjs +3 -3
- package/esm2022/lib/part/view-context-menu/text.component.mjs +3 -3
- package/esm2022/lib/part/view-context-menu/view-menu.component.mjs +3 -3
- package/esm2022/lib/part/view-context-menu/view-menu.directive.mjs +4 -4
- package/esm2022/lib/part/view-context-menu/view-menu.service.mjs +19 -19
- package/esm2022/lib/part/view-list/view-list.component.mjs +3 -3
- package/esm2022/lib/part/view-list-button/view-list-button.component.mjs +3 -3
- package/esm2022/lib/part/view-list-item/view-list-item.component.mjs +9 -9
- package/esm2022/lib/part/view-tab/view-tab.component.mjs +16 -13
- package/esm2022/lib/part/view-tab-content/view-tab-content.component.mjs +5 -5
- package/esm2022/lib/part/view-tab-drag-image/view-tab-drag-image.component.mjs +9 -9
- package/esm2022/lib/part/workbench-part-action.registry.mjs +3 -3
- package/esm2022/lib/part/workbench-part.model.mjs +1 -1
- package/esm2022/lib/part/workbench-part.registry.mjs +3 -3
- package/esm2022/lib/part//311/265workbench-part.model.mjs +3 -3
- package/esm2022/lib/perspective/migration/model/workbench-perspective-migration-v1.model.mjs +11 -0
- package/esm2022/lib/perspective/migration/model/workbench-perspective-migration-v2.model.mjs +11 -0
- package/esm2022/lib/perspective/migration/workbench-perspective-migration-v2.service.mjs +57 -0
- package/esm2022/lib/perspective/workbench-grid-merger.service.mjs +19 -51
- package/esm2022/lib/perspective/workbench-perspective-storage.service.mjs +23 -18
- package/esm2022/lib/perspective/workbench-perspective-view-conflict-resolver.service.mjs +27 -42
- package/esm2022/lib/perspective/workbench-perspective.model.mjs +1 -1
- package/esm2022/lib/perspective/workbench-perspective.registry.mjs +3 -3
- package/esm2022/lib/perspective/workbench-perspective.service.mjs +15 -10
- package/esm2022/lib/perspective/workench-perspective-serializer.service.mjs +62 -0
- package/esm2022/lib/perspective//311/265workbench-perspective.model.mjs +98 -78
- package/esm2022/lib/popup/popup.component.mjs +3 -3
- package/esm2022/lib/popup/popup.config.mjs +1 -1
- package/esm2022/lib/popup/popup.service.mjs +3 -3
- package/esm2022/lib/portal/workbench-portal-outlet.directive.mjs +6 -6
- package/esm2022/lib/public_api.mjs +3 -2
- package/esm2022/lib/registry/workbench-object-registry.mjs +3 -3
- package/esm2022/lib/routing/empty-outlet/empty-outlet.component.mjs +31 -0
- package/esm2022/lib/routing/public_api.mjs +1 -1
- package/esm2022/lib/routing/router.util.mjs +96 -71
- package/esm2022/lib/routing/routing.model.mjs +11 -0
- package/esm2022/lib/routing/url-segment-matcher.mjs +46 -0
- package/esm2022/lib/routing/workbench-auxiliary-routes-registrator.service.mjs +58 -50
- package/esm2022/lib/routing/workbench-dialog-differ.mjs +51 -0
- package/esm2022/lib/routing/workbench-layout-differ.mjs +14 -17
- package/esm2022/lib/routing/workbench-navigational-states.mjs +11 -25
- package/esm2022/lib/routing/workbench-popup-differ.mjs +6 -6
- package/esm2022/lib/routing/workbench-route-data.mjs +15 -14
- package/esm2022/lib/routing/workbench-router-link.directive.mjs +24 -33
- package/esm2022/lib/routing/workbench-router.service.mjs +13 -378
- package/esm2022/lib/routing/workbench-url-observer.service.mjs +65 -36
- package/esm2022/lib/routing//311/265location.mjs +3 -3
- package/esm2022/lib/routing//311/265workbench-router.service.mjs +317 -0
- package/esm2022/lib/startup/splash/splash.component.mjs +3 -3
- package/esm2022/lib/startup/workbench-launcher.service.mjs +11 -11
- package/esm2022/lib/storage/workbench-storage.mjs +3 -3
- package/esm2022/lib/testing/public_api.mjs +2 -1
- package/esm2022/lib/testing/workbench-testing.module.mjs +13 -39
- package/esm2022/lib/testing/workbench.provider.mjs +60 -0
- package/esm2022/lib/theme/workbench-theme-switcher.service.mjs +3 -3
- package/esm2022/lib/view/public_api.mjs +2 -1
- package/esm2022/lib/view/view-move-handler.service.mjs +42 -62
- package/esm2022/lib/view/view-portal.pipe.mjs +4 -4
- package/esm2022/lib/view/view.component.mjs +8 -38
- package/esm2022/lib/view/workbench-view-route-guards.mjs +47 -0
- package/esm2022/lib/view/workbench-view.model.mjs +6 -4
- package/esm2022/lib/view/workbench-view.registry.mjs +4 -4
- package/esm2022/lib/view//311/265workbench-view.model.mjs +135 -28
- package/esm2022/lib/view-dnd/grid-drop-targets.util.mjs +33 -32
- package/esm2022/lib/view-dnd/requires-drop-zone.pipe.mjs +7 -7
- package/esm2022/lib/view-dnd/view-drag.service.mjs +6 -6
- package/esm2022/lib/view-dnd/view-drop-placeholder-renderer.service.mjs +3 -3
- package/esm2022/lib/view-dnd/view-drop-zone.directive.mjs +4 -4
- package/esm2022/lib/view-dnd/view-tab-drag-image-renderer.service.mjs +11 -9
- package/esm2022/lib/workbench-config.mjs +15 -0
- package/esm2022/lib/workbench-id.mjs +3 -3
- package/esm2022/lib/workbench.component.mjs +14 -10
- package/esm2022/lib/workbench.constants.mjs +8 -10
- package/esm2022/lib/workbench.model.mjs +1 -1
- package/esm2022/lib/workbench.module.mjs +15 -86
- package/esm2022/lib/workbench.provider.mjs +117 -0
- package/esm2022/lib/workbench.service.mjs +5 -5
- package/esm2022/lib//311/265workbench.service.mjs +15 -21
- package/fesm2022/scion-workbench.mjs +5527 -4289
- package/fesm2022/scion-workbench.mjs.map +1 -1
- package/lib/common/class-list.d.ts +51 -0
- package/lib/common/objects.util.d.ts +17 -0
- package/lib/common/uuid.util.d.ts +8 -0
- package/lib/dialog/workbench-dialog.d.ts +3 -7
- package/lib/dialog/workbench-dialog.options.d.ts +5 -4
- package/lib/dialog/workbench-dialog.registry.d.ts +4 -3
- package/lib/dialog/workbench-dialog.service.d.ts +1 -1
- package/lib/dialog//311/265workbench-dialog.d.ts +4 -6
- package/lib/filter-field/filter-field.component.d.ts +1 -1
- package/lib/layout/grid-element/grid-element.component.d.ts +2 -2
- package/lib/layout/migration/model/workbench-layout-migration-v1.model.d.ts +16 -0
- package/lib/layout/migration/model/workbench-layout-migration-v2.model.d.ts +22 -0
- package/lib/layout/migration/model/workbench-layout-migration-v3.model.d.ts +30 -0
- package/lib/layout/migration/model/workbench-layout-migration-v4.model.d.ts +31 -0
- package/lib/layout/migration/workbench-layout-migration-v2.service.d.ts +13 -0
- package/lib/layout/migration/workbench-layout-migration-v3.service.d.ts +16 -0
- package/lib/layout/migration/workbench-layout-migration-v4.service.d.ts +12 -0
- package/lib/layout/workbench-layout.d.ts +61 -7
- package/lib/layout/workbench-layout.factory.d.ts +1 -1
- package/lib/layout/workbench-layout.model.d.ts +19 -9
- package/lib/layout/workbench-layouts.util.d.ts +22 -6
- package/lib/layout/workench-layout-serializer.service.d.ts +28 -7
- package/lib/layout//311/265workbench-layout.d.ts +172 -98
- package/lib/layout//311/265workbench-layout.factory.d.ts +4 -0
- package/lib/logging/logger-names.d.ts +7 -7
- package/lib/logging/logging-support.d.ts +2 -2
- package/lib/message-box/workbench-message-box.options.d.ts +4 -3
- package/lib/message-box/workbench-message-box.service.d.ts +1 -1
- package/lib/microfrontend-platform/common/microfrontend.util.d.ts +22 -0
- package/lib/microfrontend-platform/initialization/microfrontend-platform-initializer.service.d.ts +15 -9
- package/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-capability-validator.interceptor.d.ts +11 -0
- package/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog-intent-handler.interceptor.d.ts +28 -0
- package/lib/microfrontend-platform/microfrontend-dialog/microfrontend-dialog.component.d.ts +52 -0
- package/lib/microfrontend-platform/microfrontend-host-dialog/microfrontend-host-dialog.component.d.ts +37 -0
- package/lib/microfrontend-platform/microfrontend-host-popup/microfrontend-host-popup.component.d.ts +2 -1
- package/lib/microfrontend-platform/microfrontend-popup/{microfrontend-popup-capability-interceptor.service.d.ts → microfrontend-popup-capability-validator.interceptor.d.ts} +3 -3
- package/lib/microfrontend-platform/microfrontend-popup/{microfrontend-popup-intent-interceptor.service.d.ts → microfrontend-popup-intent-handler.interceptor.d.ts} +9 -6
- package/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup.component.d.ts +7 -10
- package/lib/microfrontend-platform/microfrontend-view/microfrontend-view-command-handler.service.d.ts +2 -9
- package/lib/microfrontend-platform/microfrontend-view/microfrontend-view.component.d.ts +12 -23
- package/lib/microfrontend-platform/microfrontend-view/microfrontend-workbench-view.model.d.ts +14 -0
- package/lib/microfrontend-platform/routing/microfrontend-view-capability-id-assigner.interceptor.d.ts +10 -0
- package/lib/microfrontend-platform/routing/{microfrontend-view-capability-interceptor.service.d.ts → microfrontend-view-capability-validator.interceptor.d.ts} +3 -3
- package/lib/microfrontend-platform/routing/{microfrontend-view-intent-interceptor.service.d.ts → microfrontend-view-intent-handler.interceptor.d.ts} +6 -5
- package/lib/microfrontend-platform/routing/microfrontend-view-routes.d.ts +49 -0
- package/lib/microfrontend-platform/workbench-microfrontend-support.d.ts +3 -2
- package/lib/migration/workbench-migration.d.ts +9 -0
- package/lib/migration/workbench-migrator.d.ts +18 -0
- package/lib/notification/notification.config.d.ts +1 -1
- package/lib/notification/notification.d.ts +1 -3
- package/lib/page-not-found/format-url.pipe.d.ts +11 -0
- package/lib/page-not-found/page-not-found.component.d.ts +8 -0
- package/lib/part/part-action-bar/part-action.directive.d.ts +1 -1
- package/lib/part/part-bar/part-bar.component.d.ts +4 -3
- package/lib/part/view-context-menu/view-menu.directive.d.ts +1 -1
- package/lib/part/view-context-menu/view-menu.service.d.ts +5 -4
- package/lib/part/view-list-item/view-list-item.component.d.ts +5 -4
- package/lib/part/view-tab/view-tab.component.d.ts +6 -5
- package/lib/part/view-tab-drag-image/view-tab-drag-image.component.d.ts +3 -3
- package/lib/part/workbench-part.model.d.ts +5 -4
- package/lib/part//311/265workbench-part.model.d.ts +5 -4
- package/lib/perspective/migration/model/workbench-perspective-migration-v1.model.d.ts +8 -0
- package/lib/perspective/migration/model/workbench-perspective-migration-v2.model.d.ts +10 -0
- package/lib/perspective/migration/workbench-perspective-migration-v2.service.d.ts +13 -0
- package/lib/perspective/workbench-grid-merger.service.d.ts +9 -16
- package/lib/perspective/workbench-perspective-storage.service.d.ts +10 -28
- package/lib/perspective/workbench-perspective-view-conflict-resolver.service.d.ts +8 -25
- package/lib/perspective/workbench-perspective.model.d.ts +123 -14
- package/lib/perspective/workbench-perspective.service.d.ts +10 -3
- package/lib/perspective/workench-perspective-serializer.service.d.ts +26 -0
- package/lib/perspective//311/265workbench-perspective.model.d.ts +16 -14
- package/lib/popup/popup.config.d.ts +4 -3
- package/lib/portal/workbench-portal-outlet.directive.d.ts +2 -2
- package/lib/public_api.d.ts +4 -3
- package/lib/registry/workbench-object-registry.d.ts +2 -2
- package/lib/routing/empty-outlet/empty-outlet.component.d.ts +15 -0
- package/lib/routing/public_api.d.ts +2 -1
- package/lib/routing/router.util.d.ts +45 -31
- package/lib/routing/routing.model.d.ts +129 -0
- package/lib/routing/url-segment-matcher.d.ts +20 -0
- package/lib/routing/workbench-auxiliary-routes-registrator.service.d.ts +25 -16
- package/lib/routing/workbench-dialog-differ.d.ts +25 -0
- package/lib/routing/workbench-layout-differ.d.ts +4 -7
- package/lib/routing/workbench-navigational-states.d.ts +11 -21
- package/lib/routing/workbench-route-data.d.ts +14 -12
- package/lib/routing/workbench-router-link.directive.d.ts +22 -7
- package/lib/routing/workbench-router.service.d.ts +42 -157
- package/lib/routing/workbench-url-observer.service.d.ts +18 -6
- package/lib/routing//311/265workbench-router.service.d.ts +75 -0
- package/lib/startup/workbench-launcher.service.d.ts +4 -4
- package/lib/testing/public_api.d.ts +1 -0
- package/lib/testing/workbench-testing.module.d.ts +7 -6
- package/lib/testing/workbench.provider.d.ts +29 -0
- package/lib/view/public_api.d.ts +2 -1
- package/lib/view/view-move-handler.service.d.ts +2 -4
- package/lib/view/view-portal.pipe.d.ts +2 -1
- package/lib/view/view.component.d.ts +1 -11
- package/lib/view/workbench-view-route-guards.d.ts +36 -0
- package/lib/view/workbench-view.model.d.ts +46 -13
- package/lib/view/workbench-view.registry.d.ts +4 -3
- package/lib/view//311/265workbench-view.model.d.ts +79 -14
- package/lib/view-dnd/grid-drop-targets.util.d.ts +15 -17
- package/lib/view-dnd/view-drag.service.d.ts +12 -4
- package/lib/view-dnd/view-drop-zone.directive.d.ts +1 -1
- package/lib/{workbench-module-config.d.ts → workbench-config.d.ts} +29 -71
- package/lib/workbench.component.d.ts +2 -2
- package/lib/workbench.constants.d.ts +6 -8
- package/lib/workbench.model.d.ts +20 -8
- package/lib/workbench.module.d.ts +12 -7
- package/lib/workbench.provider.d.ts +38 -0
- package/lib/workbench.service.d.ts +32 -8
- package/lib//311/265workbench.service.d.ts +9 -3
- package/package.json +8 -8
- package/esm2022/lib/layout/migration/workbench-layout-migrator.service.mjs +0 -38
- package/esm2022/lib/layout/migration/workbench-layout-v1-migrator.service.mjs +0 -59
- package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-capability-interceptor.service.mjs +0 -30
- package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup-intent-interceptor.service.mjs +0 -130
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-navigational-states.mjs +0 -22
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-routes.mjs +0 -71
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-capability-interceptor.service.mjs +0 -54
- package/esm2022/lib/microfrontend-platform/routing/microfrontend-view-intent-interceptor.service.mjs +0 -123
- package/esm2022/lib/routing/navigation-state.resolver.mjs +0 -54
- package/esm2022/lib/view/workbench-view-pre-destroy.guard.mjs +0 -36
- package/esm2022/lib/workbench-module-config.mjs +0 -15
- package/lib/layout/migration/workbench-layout-migrator.service.d.ts +0 -15
- package/lib/layout/migration/workbench-layout-v1-migrator.service.d.ts +0 -12
- package/lib/microfrontend-platform/routing/microfrontend-navigational-states.d.ts +0 -11
- package/lib/microfrontend-platform/routing/microfrontend-routes.d.ts +0 -38
- package/lib/routing/navigation-state.resolver.d.ts +0 -12
- package/lib/view/workbench-view-pre-destroy.guard.d.ts +0 -5
|
@@ -21,9 +21,9 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
|
21
21
|
import { NgIf } from '@angular/common';
|
|
22
22
|
import { WORKBENCH_ID } from '../../workbench-id';
|
|
23
23
|
import * as i0 from "@angular/core";
|
|
24
|
-
import * as i1 from "../../workbench-
|
|
24
|
+
import * as i1 from "../../workbench-config";
|
|
25
25
|
import * as i2 from "../../view/workbench-view.registry";
|
|
26
|
-
import * as i3 from "../../routing
|
|
26
|
+
import * as i3 from "../../routing/\u0275workbench-router.service";
|
|
27
27
|
import * as i4 from "../../view-dnd/view-drag.service";
|
|
28
28
|
import * as i5 from "../view-context-menu/view-menu.service";
|
|
29
29
|
import * as i6 from "@angular/cdk/portal";
|
|
@@ -39,9 +39,9 @@ export class ViewTabComponent {
|
|
|
39
39
|
get isDragOverTabbar() {
|
|
40
40
|
return this._viewDragService.isDragOverTabbar === this.view.part.id;
|
|
41
41
|
}
|
|
42
|
-
constructor(host, _workbenchId,
|
|
42
|
+
constructor(host, _workbenchId, _workbenchConfig, _viewRegistry, _router, _viewDragService, _differs, _viewContextMenuService, _injector) {
|
|
43
43
|
this._workbenchId = _workbenchId;
|
|
44
|
-
this.
|
|
44
|
+
this._workbenchConfig = _workbenchConfig;
|
|
45
45
|
this._viewRegistry = _viewRegistry;
|
|
46
46
|
this._router = _router;
|
|
47
47
|
this._viewDragService = _viewDragService;
|
|
@@ -105,12 +105,15 @@ export class ViewTabComponent {
|
|
|
105
105
|
viewClosable: this.view.closable,
|
|
106
106
|
viewDirty: this.view.dirty,
|
|
107
107
|
viewUrlSegments: this.view.urlSegments,
|
|
108
|
+
alternativeViewId: this.view.alternativeId,
|
|
109
|
+
navigationHint: this.view.navigationHint,
|
|
108
110
|
partId: this.view.part.id,
|
|
109
111
|
viewTabPointerOffsetX: event.offsetX,
|
|
110
112
|
viewTabPointerOffsetY: event.offsetY,
|
|
111
113
|
viewTabWidth: this.host.getBoundingClientRect().width,
|
|
112
114
|
viewTabHeight: this.host.getBoundingClientRect().height,
|
|
113
|
-
workbenchId: this._workbenchId
|
|
115
|
+
workbenchId: this._workbenchId,
|
|
116
|
+
classList: this.view.classList.toMap(),
|
|
114
117
|
});
|
|
115
118
|
});
|
|
116
119
|
}
|
|
@@ -137,7 +140,7 @@ export class ViewTabComponent {
|
|
|
137
140
|
.subscribe(([event, enabled]) => {
|
|
138
141
|
event.stopPropagation(); // prevent `PartBarComponent` handling the dblclick event which would undo maximization/minimization
|
|
139
142
|
if (enabled && this.view.part.isInMainArea) {
|
|
140
|
-
this._router
|
|
143
|
+
this._router.navigate(layout => layout.toggleMaximized()).then();
|
|
141
144
|
}
|
|
142
145
|
});
|
|
143
146
|
}
|
|
@@ -147,7 +150,7 @@ export class ViewTabComponent {
|
|
|
147
150
|
installViewCssClassListener() {
|
|
148
151
|
const differ = this._differs.find([]).create();
|
|
149
152
|
this._ngOnChanges$
|
|
150
|
-
.pipe(switchMap(() => this.view.
|
|
153
|
+
.pipe(switchMap(() => this.view.classList.value$), map(cssClasses => differ.diff(cssClasses)), filter((diff) => diff !== null), takeUntilDestroyed())
|
|
151
154
|
.subscribe((diff) => {
|
|
152
155
|
diff.forEachAddedItem(({ item }) => this.host.classList.add(item));
|
|
153
156
|
diff.forEachRemovedItem(({ item }) => this.host.classList.remove(item));
|
|
@@ -159,7 +162,7 @@ export class ViewTabComponent {
|
|
|
159
162
|
.subscribe();
|
|
160
163
|
}
|
|
161
164
|
createViewTabContentPortal() {
|
|
162
|
-
const componentType = this.
|
|
165
|
+
const componentType = this._workbenchConfig.viewTabComponent || ViewTabContentComponent;
|
|
163
166
|
return new ComponentPortal(componentType, null, Injector.create({
|
|
164
167
|
parent: this._injector,
|
|
165
168
|
providers: [
|
|
@@ -168,10 +171,10 @@ export class ViewTabComponent {
|
|
|
168
171
|
],
|
|
169
172
|
}));
|
|
170
173
|
}
|
|
171
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
172
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
174
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ViewTabComponent, deps: [{ token: i0.ElementRef }, { token: WORKBENCH_ID }, { token: i1.WorkbenchConfig }, { token: i2.WorkbenchViewRegistry }, { token: i3.ɵWorkbenchRouter }, { token: i4.ViewDragService }, { token: i0.IterableDiffers }, { token: i5.ViewMenuService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
175
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: ViewTabComponent, isStandalone: true, selector: "wb-view-tab", inputs: { viewId: "viewId" }, host: { listeners: { "click": "onClick()", "mousedown": "onMousedown($event)", "contextmenu": "onContextmenu($event)", "dragstart": "onDragStart($event)", "dragend": "onDragEnd($event)" }, properties: { "attr.data-viewid": "this.viewId", "attr.draggable": "this.draggable", "attr.tabindex": "this.tabindex", "class.drag-over-tabbar": "this.isDragOverTabbar", "class.active": "this.active", "class.part-active": "this.partActive", "class.e2e-dirty": "this.dirty" } }, usesOnChanges: true, ngImport: i0, template: "<!-- IMPORTANT: THIS HTML FILE IS ALSO USED BY `ViewTabDragImageComponent` -->\n\n<div class=\"corner-radius start\" *ngIf=\"view.active\">\n <div class=\"circle\"></div>\n</div>\n\n<div class=\"content\">\n <ng-container *cdkPortalOutlet=\"viewTabContentPortal\"></ng-container>\n</div>\n\n<div class=\"corner-radius end\" *ngIf=\"view.active\">\n <div class=\"circle\"></div>\n</div>\n\n<button *ngIf=\"view.closable\"\n class=\"close e2e-close scion-workbench-icons\"\n (click)=\"onClose($event)\">\n close\n</button>\n", styles: [":host{display:grid;align-items:center;padding-left:var(--sci-workbench-tab-padding-inline);padding-right:var(--sci-workbench-tab-padding-inline);position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;box-sizing:border-box;outline:none;border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent;border-top-left-radius:var(--sci-workbench-tab-border-radius);border-top-right-radius:var(--sci-workbench-tab-border-radius)}:host.active{cursor:default;color:var(--sci-workbench-tab-active-text-color);border-left-color:var(--sci-workbench-tab-border-color);border-right-color:var(--sci-workbench-tab-border-color);border-top-color:var(--sci-workbench-tab-border-color);background-color:var(--sci-workbench-view-background-color)}wb-workbench:has(wb-main-area-layout) wb-part:not(.main-area) :host.active{background-color:var(--sci-workbench-view-peripheral-background-color)}:host.active.part-active>div.content{color:var(--sci-workbench-part-active-tab-active-text-color)}:host>div.content{min-width:var(--sci-workbench-tab-min-width);max-width:var(--sci-workbench-tab-max-width);isolation:isolate}:host>button.close{all:unset;position:absolute;cursor:pointer;visibility:hidden;padding:.125em;border-radius:var(--sci-corner-small);right:.2em}:host>button.close:not(:hover){opacity:.75}:host.active>button.close,:host:hover:not(.drag-over-tabbar)>button.close{visibility:visible}:host.active>button.close:hover{background-color:var(--sci-workbench-tab-hover-background-color)}:host:hover:not(.active):not(.drag-over-tabbar):before{content:\"\";background-color:var(--sci-workbench-tab-hover-background-color);position:absolute;inset:0 0 .125em .125em;border-radius:var(--sci-workbench-tab-border-radius);pointer-events:none}:host>div.corner-radius{height:var(--sci-workbench-tab-border-radius);width:var(--sci-workbench-tab-border-radius);overflow:hidden;position:absolute;bottom:0}:host>div.corner-radius>div.circle{position:absolute;top:calc(-2 * var(--sci-workbench-tab-border-radius));width:calc(2 * var(--sci-workbench-tab-border-radius));height:calc(2 * var(--sci-workbench-tab-border-radius));border:var(--sci-workbench-tab-border-radius) solid var(--sci-workbench-view-background-color);border-radius:50%;box-shadow:inset 0 0 0 1px var(--sci-workbench-tab-border-color);box-sizing:content-box}wb-workbench:has(wb-main-area-layout) wb-part:not(.main-area) :host>div.corner-radius>div.circle{border-color:var(--sci-workbench-view-peripheral-background-color)}:host>div.corner-radius.start{left:calc(-1 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.start>div.circle{left:calc(-2 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.end{right:calc(-1 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.end>div.circle{right:calc(-2 * var(--sci-workbench-tab-border-radius))}@container viewtab (height >= 3.5rem){:host>button.close{align-self:start;top:.125em;right:.125em}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i6.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
|
|
173
176
|
}
|
|
174
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
177
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ViewTabComponent, decorators: [{
|
|
175
178
|
type: Component,
|
|
176
179
|
args: [{ selector: 'wb-view-tab', standalone: true, imports: [
|
|
177
180
|
NgIf,
|
|
@@ -180,7 +183,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImpor
|
|
|
180
183
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
181
184
|
type: Inject,
|
|
182
185
|
args: [WORKBENCH_ID]
|
|
183
|
-
}] }, { type: i1.
|
|
186
|
+
}] }, { type: i1.WorkbenchConfig }, { type: i2.WorkbenchViewRegistry }, { type: i3.ɵWorkbenchRouter }, { type: i4.ViewDragService }, { type: i0.IterableDiffers }, { type: i5.ViewMenuService }, { type: i0.Injector }], propDecorators: { viewId: [{
|
|
184
187
|
type: Input,
|
|
185
188
|
args: [{ required: true }]
|
|
186
189
|
}, {
|
|
@@ -224,4 +227,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImpor
|
|
|
224
227
|
* Indicates that the auxilary mouse button is pressed (usually the mouse wheel button or middle button).
|
|
225
228
|
*/
|
|
226
229
|
const AUXILARY_MOUSE_BUTTON = 4;
|
|
227
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy10YWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvcGFydC92aWV3LXRhYi92aWV3LXRhYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctdGFiL3ZpZXctdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBYyxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBb0MsTUFBTSxFQUEyQixNQUFNLGVBQWUsQ0FBQztBQUNwTCxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRS9ELE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBQyx1QkFBdUIsRUFBa0IsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsMEJBQTBCLEVBQTBCLE1BQU0sMkJBQTJCLENBQUM7QUFFOUYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFHdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDckMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7OztBQUVoRDs7OztHQUlHO0FBV0gsTUFBTSxPQUFPLGdCQUFnQjtJQWtCM0I7O09BRUc7SUFDSCxJQUNXLGdCQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDdEUsQ0FBQztJQUVELFlBQVksSUFBNkIsRUFDQyxZQUFvQixFQUMxQyxzQkFBNkMsRUFDN0MsYUFBb0MsRUFDcEMsT0FBd0IsRUFDeEIsZ0JBQWlDLEVBQ2pDLFFBQXlCLEVBQ3pCLHVCQUF3QyxFQUN4QyxTQUFtQjtRQVBHLGlCQUFZLEdBQVosWUFBWSxDQUFRO1FBQzFDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBdUI7UUFDN0Msa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBQ3BDLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ3hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFDakMsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDekIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFpQjtRQUN4QyxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBaEMvQixrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFXckMsY0FBUyxHQUFHLElBQUksQ0FBQztRQUdqQixhQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyw0REFBNEQ7UUFtQmhGLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUMvQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRU0sV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztRQUM5RCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUNXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUNXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQ1csS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUdNLE9BQU87UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxPQUFPLENBQUMsS0FBWTtRQUN6QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyx3Q0FBd0M7UUFDakUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBR00sV0FBVyxDQUFDLEtBQWlCO1FBQ2xDLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxxQkFBcUIsRUFBRTtZQUMzQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3pCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBR00sYUFBYSxDQUFDLEtBQWlCO1FBQ3BDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsRUFBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakcsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBR00sV0FBVyxDQUFDLEtBQWdCO1FBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRTtnQkFDdkIsT0FBTzthQUNSO1lBRUQsS0FBSyxDQUFDLFlBQVksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1lBQzFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbEUsOEhBQThIO1lBQzlILEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsRUFBQyxLQUFLLEVBQUUsRUFBQyxPQUFPLEVBQUUsTUFBTSxFQUFDLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUV4RixJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDO2dCQUNwQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNwQixTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRTtnQkFDaEMsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUU7Z0JBQ3BDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7Z0JBQ2hDLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7Z0JBQzFCLGVBQWUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVc7Z0JBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUN6QixxQkFBcUIsRUFBRSxLQUFLLENBQUMsT0FBTztnQkFDcEMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLE9BQU87Z0JBQ3BDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUMsS0FBSztnQkFDckQsYUFBYSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxNQUFNO2dCQUN2RCxXQUFXLEVBQUUsSUFBSSxDQUFDLFlBQVk7YUFDL0IsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBR00sU0FBUyxDQUFDLEtBQWdCO1FBQy9CLHdJQUF3STtRQUN4SSxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUUsVUFBVSxLQUFLLE1BQU0sRUFBRTtZQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFDLGtCQUFrQixFQUFFLElBQUksRUFBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDdkQ7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyx1QkFBdUI7UUFDN0IsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQzthQUM5SCxJQUFJLENBQ0gsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsRUFBRSwwQ0FBMEM7UUFDcEYsZUFBZSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2xFLENBQUM7UUFFSixTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUM7YUFDN0IsSUFBSSxDQUNILGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFDeEIsa0JBQWtCLEVBQUUsQ0FDckI7YUFDQSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFO1lBQzlCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLG9HQUFvRztZQUM3SCxJQUFJLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDbkU7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7T0FFRztJQUNLLDJCQUEyQjtRQUNqQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQVUsQ0FBQztRQUV2RCxJQUFJLENBQUMsYUFBYTthQUNmLElBQUksQ0FDSCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFDdEMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUMxQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQW1DLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQ2hFLGtCQUFrQixFQUFFLENBQ3JCO2FBQ0EsU0FBUyxDQUFDLENBQUMsSUFBNkIsRUFBRSxFQUFFO1lBQzNDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEVBQUMsSUFBSSxFQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUMsSUFBSSxFQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLCtCQUErQjtRQUNyQyxJQUFJLENBQUMsYUFBYTthQUNmLElBQUksQ0FDSCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQ2hHLGtCQUFrQixFQUFFLENBQ3JCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVPLDBCQUEwQjtRQUNoQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZ0JBQWdCLElBQUksdUJBQXVCLENBQUM7UUFDOUYsT0FBTyxJQUFJLGVBQWUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDOUQsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3RCLFNBQVMsRUFBRTtnQkFDVCxFQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUM7Z0JBQzdDLEVBQUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLFFBQVEsRUFBRSxLQUF1QyxFQUFDO2FBQ3pGO1NBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDOzhHQTlMVSxnQkFBZ0IsNENBMkJQLFlBQVk7a0dBM0JyQixnQkFBZ0IsNmtCQzVDN0IsOGhCQW1CQSxrK0ZEcUJJLElBQUksNEZBQ0osWUFBWTs7MkZBR0gsZ0JBQWdCO2tCQVY1QixTQUFTOytCQUNFLGFBQWEsY0FHWCxJQUFJLFdBQ1A7d0JBQ1AsSUFBSTt3QkFDSixZQUFZO3FCQUNiOzswQkE2QlksTUFBTTsyQkFBQyxZQUFZO2dRQWpCekIsTUFBTTtzQkFGWixLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQzs7c0JBQ3RCLFdBQVc7dUJBQUMsa0JBQWtCO2dCQUl4QixTQUFTO3NCQURmLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUl0QixRQUFRO3NCQURkLFdBQVc7dUJBQUMsZUFBZTtnQkFPakIsZ0JBQWdCO3NCQUQxQixXQUFXO3VCQUFDLHdCQUF3QjtnQkEyQjFCLE1BQU07c0JBRGhCLFdBQVc7dUJBQUMsY0FBYztnQkFNaEIsVUFBVTtzQkFEcEIsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBTXJCLEtBQUs7c0JBRGYsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBTXZCLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPO2dCQVdkLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVU5QixhQUFhO3NCQURuQixZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRaEMsV0FBVztzQkFEakIsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBOEI5QixTQUFTO3NCQURmLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDOztBQTRFckM7O0dBRUc7QUFDSCxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMiBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgaW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIEl0ZXJhYmxlQ2hhbmdlcywgSXRlcmFibGVEaWZmZXJzLCBOZ1pvbmUsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Zyb21FdmVudCwgbWVyZ2UsIFN1YmplY3QsIHdpdGhMYXRlc3RGcm9tfSBmcm9tICdyeGpzJztcbmltcG9ydCB7V29ya2JlbmNoVmlld1JlZ2lzdHJ5fSBmcm9tICcuLi8uLi92aWV3L3dvcmtiZW5jaC12aWV3LnJlZ2lzdHJ5JztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtWSUVXX0RSQUdfVFJBTlNGRVJfVFlQRSwgVmlld0RyYWdTZXJ2aWNlfSBmcm9tICcuLi8uLi92aWV3LWRuZC92aWV3LWRyYWcuc2VydmljZSc7XG5pbXBvcnQge2NyZWF0ZUVsZW1lbnR9IGZyb20gJy4uLy4uL2NvbW1vbi9kb20udXRpbCc7XG5pbXBvcnQge0NvbXBvbmVudFBvcnRhbCwgUG9ydGFsTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7VklFV19UQUJfUkVOREVSSU5HX0NPTlRFWFQsIFZpZXdUYWJSZW5kZXJpbmdDb250ZXh0fSBmcm9tICcuLi8uLi93b3JrYmVuY2guY29uc3RhbnRzJztcbmltcG9ydCB7V29ya2JlbmNoTW9kdWxlQ29uZmlnfSBmcm9tICcuLi8uLi93b3JrYmVuY2gtbW9kdWxlLWNvbmZpZyc7XG5pbXBvcnQge1ZpZXdUYWJDb250ZW50Q29tcG9uZW50fSBmcm9tICcuLi92aWV3LXRhYi1jb250ZW50L3ZpZXctdGFiLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7Vmlld01lbnVTZXJ2aWNlfSBmcm9tICcuLi92aWV3LWNvbnRleHQtbWVudS92aWV3LW1lbnUuc2VydmljZSc7XG5pbXBvcnQge8m1V29ya2JlbmNoVmlld30gZnJvbSAnLi4vLi4vdmlldy/JtXdvcmtiZW5jaC12aWV3Lm1vZGVsJztcbmltcG9ydCB7V29ya2JlbmNoVmlld30gZnJvbSAnLi4vLi4vdmlldy93b3JrYmVuY2gtdmlldy5tb2RlbCc7XG5pbXBvcnQge1dvcmtiZW5jaFJvdXRlcn0gZnJvbSAnLi4vLi4vcm91dGluZy93b3JrYmVuY2gtcm91dGVyLnNlcnZpY2UnO1xuaW1wb3J0IHtzdWJzY3JpYmVJbnNpZGV9IGZyb20gJ0BzY2lvbi90b29sa2l0L29wZXJhdG9ycyc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtXT1JLQkVOQ0hfSUR9IGZyb20gJy4uLy4uL3dvcmtiZW5jaC1pZCc7XG5cbi8qKlxuICogSU1QT1JUQU5UOiBIVE1MIGFuZCBDU1MgYWxzbyB1c2VkIGJ5IHtAbGluayBWaWV3VGFiRHJhZ0ltYWdlQ29tcG9uZW50fS5cbiAqXG4gKiBAc2VlIFZpZXdUYWJEcmFnSW1hZ2VDb21wb25lbnRcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2Itdmlldy10YWInLFxuICB0ZW1wbGF0ZVVybDogJy4vdmlldy10YWIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi92aWV3LXRhYi5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBQb3J0YWxNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFZpZXdUYWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gIHByaXZhdGUgX25nT25DaGFuZ2VzJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIGhvc3Q6IEhUTUxFbGVtZW50O1xuICBwdWJsaWMgdmlldyE6IMm1V29ya2JlbmNoVmlldztcbiAgcHVibGljIHZpZXdUYWJDb250ZW50UG9ydGFsITogQ29tcG9uZW50UG9ydGFsPHVua25vd24+O1xuXG4gIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KVxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS12aWV3aWQnKVxuICBwdWJsaWMgdmlld0lkITogc3RyaW5nO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5kcmFnZ2FibGUnKVxuICBwdWJsaWMgZHJhZ2dhYmxlID0gdHJ1ZTtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKVxuICBwdWJsaWMgdGFiaW5kZXggPSAtMTsgLy8gbWFrZSB0aGUgdmlldyBmb2N1c2FibGUgdG8gaW5zdGFsbCB2aWV3IG1lbnUgYWNjZWxlcmF0b3JzXG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiBkcmFnZ2luZyBhIHZpZXcgdGFiIG92ZXIgdGhpcyB2aWV3IHRhYidzIHRhYmJhci5cbiAgICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZHJhZy1vdmVyLXRhYmJhcicpXG4gIHB1YmxpYyBnZXQgaXNEcmFnT3ZlclRhYmJhcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlld0RyYWdTZXJ2aWNlLmlzRHJhZ092ZXJUYWJiYXIgPT09IHRoaXMudmlldy5wYXJ0LmlkO1xuICB9XG5cbiAgY29uc3RydWN0b3IoaG9zdDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgICAgICAgIEBJbmplY3QoV09SS0JFTkNIX0lEKSBwcml2YXRlIF93b3JrYmVuY2hJZDogc3RyaW5nLFxuICAgICAgICAgICAgICBwcml2YXRlIF93b3JrYmVuY2hNb2R1bGVDb25maWc6IFdvcmtiZW5jaE1vZHVsZUNvbmZpZyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfdmlld1JlZ2lzdHJ5OiBXb3JrYmVuY2hWaWV3UmVnaXN0cnksXG4gICAgICAgICAgICAgIHByaXZhdGUgX3JvdXRlcjogV29ya2JlbmNoUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIF92aWV3RHJhZ1NlcnZpY2U6IFZpZXdEcmFnU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfZGlmZmVyczogSXRlcmFibGVEaWZmZXJzLFxuICAgICAgICAgICAgICBwcml2YXRlIF92aWV3Q29udGV4dE1lbnVTZXJ2aWNlOiBWaWV3TWVudVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMuaG9zdCA9IGhvc3QubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLmluc3RhbGxNYXhpbWl6ZUxpc3RlbmVyKCk7XG4gICAgdGhpcy5pbnN0YWxsVmlld0Nzc0NsYXNzTGlzdGVuZXIoKTtcbiAgICB0aGlzLmluc3RhbGxWaWV3TWVudUl0ZW1BY2NlbGVyYXRvcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy52aWV3ID0gdGhpcy5fdmlld1JlZ2lzdHJ5LmdldCh0aGlzLnZpZXdJZCk7XG4gICAgdGhpcy52aWV3VGFiQ29udGVudFBvcnRhbCA9IHRoaXMuY3JlYXRlVmlld1RhYkNvbnRlbnRQb3J0YWwoKTtcbiAgICB0aGlzLl9uZ09uQ2hhbmdlcyQubmV4dCgpO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hY3RpdmUnKVxuICBwdWJsaWMgZ2V0IGFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52aWV3LmFjdGl2ZTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MucGFydC1hY3RpdmUnKVxuICBwdWJsaWMgZ2V0IHBhcnRBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmlldy5wYXJ0LmFjdGl2ZTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZTJlLWRpcnR5JylcbiAgcHVibGljIGdldCBkaXJ0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52aWV3LmRpcnR5O1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXcuYWN0aXZhdGUoKS50aGVuKCk7XG4gIH1cblxuICBwdWJsaWMgb25DbG9zZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgLy8gcHJldmVudCB0aGUgdmlldyBmcm9tIGJlaW5nIGFjdGl2YXRlZFxuICAgIHRoaXMudmlldy5jbG9zZSgpLnRoZW4oKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbk1vdXNlZG93bihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5idXR0b25zID09PSBBVVhJTEFSWV9NT1VTRV9CVVRUT04pIHtcbiAgICAgIHRoaXMudmlldy5jbG9zZSgpLnRoZW4oKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjb250ZXh0bWVudScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkNvbnRleHRtZW51KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fdmlld0NvbnRleHRNZW51U2VydmljZS5zaG93TWVudSh7eDogZXZlbnQuY2xpZW50WCwgeTogZXZlbnQuY2xpZW50WX0sIHRoaXMudmlldy5pZCkudGhlbigpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkcmFnc3RhcnQnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25EcmFnU3RhcnQoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIHRoaXMudmlldy5hY3RpdmF0ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgaWYgKCFldmVudC5kYXRhVHJhbnNmZXIpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBldmVudC5kYXRhVHJhbnNmZXIuZWZmZWN0QWxsb3dlZCA9ICdtb3ZlJztcbiAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKFZJRVdfRFJBR19UUkFOU0ZFUl9UWVBFLCB0aGlzLnZpZXcuaWQpO1xuICAgICAgLy8gVXNlIGFuIGludmlzaWJsZSA8ZGl2PiBhcyB0aGUgbmF0aXZlIGRyYWcgaW1hZ2UgYmVjYXVzZSB0aGUgZWZmZWN0aXZlIGRyYWcgaW1hZ2UgaXMgcmVuZGVyZWQgYnkge1ZpZXdUYWJEcmFnSW1hZ2VSZW5kZXJlcn0uXG4gICAgICBldmVudC5kYXRhVHJhbnNmZXIuc2V0RHJhZ0ltYWdlKGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtzdHlsZToge2Rpc3BsYXk6ICdub25lJ319KSwgMCwgMCk7XG5cbiAgICAgIHRoaXMuX3ZpZXdEcmFnU2VydmljZS5zZXRWaWV3RHJhZ0RhdGEoe1xuICAgICAgICB2aWV3SWQ6IHRoaXMudmlldy5pZCxcbiAgICAgICAgdmlld1RpdGxlOiB0aGlzLnZpZXcudGl0bGUgPz8gJycsXG4gICAgICAgIHZpZXdIZWFkaW5nOiB0aGlzLnZpZXcuaGVhZGluZyA/PyAnJyxcbiAgICAgICAgdmlld0Nsb3NhYmxlOiB0aGlzLnZpZXcuY2xvc2FibGUsXG4gICAgICAgIHZpZXdEaXJ0eTogdGhpcy52aWV3LmRpcnR5LFxuICAgICAgICB2aWV3VXJsU2VnbWVudHM6IHRoaXMudmlldy51cmxTZWdtZW50cyxcbiAgICAgICAgcGFydElkOiB0aGlzLnZpZXcucGFydC5pZCxcbiAgICAgICAgdmlld1RhYlBvaW50ZXJPZmZzZXRYOiBldmVudC5vZmZzZXRYLFxuICAgICAgICB2aWV3VGFiUG9pbnRlck9mZnNldFk6IGV2ZW50Lm9mZnNldFksXG4gICAgICAgIHZpZXdUYWJXaWR0aDogdGhpcy5ob3N0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLFxuICAgICAgICB2aWV3VGFiSGVpZ2h0OiB0aGlzLmhvc3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0LFxuICAgICAgICB3b3JrYmVuY2hJZDogdGhpcy5fd29ya2JlbmNoSWRcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2VuZCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyYWdFbmQoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIC8vIEVuc3VyZSB0aGlzIHZpZXcgc3RheXMgYWN0aXZhdGVkIGlmIHRoZSB1c2VyIGNhbmNlbHMgdGhlIGRyYWcgb3BlcmF0aW9uLiBCdXQsIGRvIG5vdCBwdXNoIHRoZSBuYXZpZ2F0aW9uIGludG8gYnJvd3NpbmcgaGlzdG9yeSBzdGFjay5cbiAgICBpZiAoZXZlbnQuZGF0YVRyYW5zZmVyPy5kcm9wRWZmZWN0ID09PSAnbm9uZScpIHtcbiAgICAgIHRoaXMudmlldy5hY3RpdmF0ZSh7c2tpcExvY2F0aW9uQ2hhbmdlOiB0cnVlfSkudGhlbigpO1xuICAgIH1cbiAgICB0aGlzLl92aWV3RHJhZ1NlcnZpY2UudW5zZXRWaWV3RHJhZ0RhdGEoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW5zIGZvciAnZGJsY2xpY2snIGV2ZW50cyB0byBtYXhpbWl6ZSBvciBtaW5pbWl6ZSB0aGUgbWFpbiBhcmVhLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgdGhlIGxpc3RlbmVyIGlzIG5vdCBhY3RpdmF0ZWQgdW50aWwgdGhlIG1vdXNlIGlzIG1vdmVkLiBPdGhlcndpc2UsIGNsb3Npbmcgc3VjY2Vzc2l2ZVxuICAgKiB2aWV3cyAoaWYgdGhleSBoYXZlIGRpZmZlcmVudCB0YWIgd2lkdGhzKSBjb3VsZCByZXN1bHQgaW4gdW5pbnRlbmRlZCBtYXhpbWl6YXRpb24gb3IgbWluaW1pemF0aW9uLlxuICAgKi9cbiAgcHJpdmF0ZSBpbnN0YWxsTWF4aW1pemVMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICBjb25zdCB6b25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgY29uc3QgZW5hYmxlZCQgPSBtZXJnZShmcm9tRXZlbnQodGhpcy5ob3N0LCAnbW91c2VlbnRlcicpLCBmcm9tRXZlbnQodGhpcy5ob3N0LCAnbW91c2Vtb3ZlJyksIGZyb21FdmVudCh0aGlzLmhvc3QsICdtb3VzZWxlYXZlJykpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKGV2ZW50ID0+IGV2ZW50LnR5cGUgPT09ICdtb3VzZW1vdmUnKSwgLy8gdGhlICdtb3VzZW1vdmUnIGV2ZW50IGFybXMgdGhlIGxpc3RlbmVyXG4gICAgICAgIHN1YnNjcmliZUluc2lkZShjb250aW51ZUZuID0+IHpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoY29udGludWVGbikpLFxuICAgICAgKTtcblxuICAgIGZyb21FdmVudCh0aGlzLmhvc3QsICdkYmxjbGljaycpXG4gICAgICAucGlwZShcbiAgICAgICAgd2l0aExhdGVzdEZyb20oZW5hYmxlZCQpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKFtldmVudCwgZW5hYmxlZF0pID0+IHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IC8vIHByZXZlbnQgYFBhcnRCYXJDb21wb25lbnRgIGhhbmRsaW5nIHRoZSBkYmxjbGljayBldmVudCB3aGljaCB3b3VsZCB1bmRvIG1heGltaXphdGlvbi9taW5pbWl6YXRpb25cbiAgICAgICAgaWYgKGVuYWJsZWQgJiYgdGhpcy52aWV3LnBhcnQuaXNJbk1haW5BcmVhKSB7XG4gICAgICAgICAgdGhpcy5fcm91dGVyLsm1bmF2aWdhdGUobGF5b3V0ID0+IGxheW91dC50b2dnbGVNYXhpbWl6ZWQoKSkudGhlbigpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHZpZXcgc3BlY2lmaWMgQ1NTIGNsYXNzZXMgdG8gdGhlIHZpZXctdGFiLlxuICAgKi9cbiAgcHJpdmF0ZSBpbnN0YWxsVmlld0Nzc0NsYXNzTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgY29uc3QgZGlmZmVyID0gdGhpcy5fZGlmZmVycy5maW5kKFtdKS5jcmVhdGU8c3RyaW5nPigpO1xuXG4gICAgdGhpcy5fbmdPbkNoYW5nZXMkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMudmlldy5jc3NDbGFzc2VzJCksXG4gICAgICAgIG1hcChjc3NDbGFzc2VzID0+IGRpZmZlci5kaWZmKGNzc0NsYXNzZXMpKSxcbiAgICAgICAgZmlsdGVyKChkaWZmKTogZGlmZiBpcyBJdGVyYWJsZUNoYW5nZXM8c3RyaW5nPiA9PiBkaWZmICE9PSBudWxsKSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChkaWZmOiBJdGVyYWJsZUNoYW5nZXM8c3RyaW5nPikgPT4ge1xuICAgICAgICBkaWZmLmZvckVhY2hBZGRlZEl0ZW0oKHtpdGVtfSkgPT4gdGhpcy5ob3N0LmNsYXNzTGlzdC5hZGQoaXRlbSkpO1xuICAgICAgICBkaWZmLmZvckVhY2hSZW1vdmVkSXRlbSgoe2l0ZW19KSA9PiB0aGlzLmhvc3QuY2xhc3NMaXN0LnJlbW92ZShpdGVtKSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaW5zdGFsbFZpZXdNZW51SXRlbUFjY2VsZXJhdG9ycygpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ09uQ2hhbmdlcyRcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5fdmlld0NvbnRleHRNZW51U2VydmljZS5pbnN0YWxsTWVudUl0ZW1BY2NlbGVyYXRvcnMkKHRoaXMuaG9zdCwgdGhpcy52aWV3KSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVWaWV3VGFiQ29udGVudFBvcnRhbCgpOiBDb21wb25lbnRQb3J0YWw8dW5rbm93bj4ge1xuICAgIGNvbnN0IGNvbXBvbmVudFR5cGUgPSB0aGlzLl93b3JrYmVuY2hNb2R1bGVDb25maWcudmlld1RhYkNvbXBvbmVudCB8fCBWaWV3VGFiQ29udGVudENvbXBvbmVudDtcbiAgICByZXR1cm4gbmV3IENvbXBvbmVudFBvcnRhbChjb21wb25lbnRUeXBlLCBudWxsLCBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB0aGlzLl9pbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7cHJvdmlkZTogV29ya2JlbmNoVmlldywgdXNlVmFsdWU6IHRoaXMudmlld30sXG4gICAgICAgIHtwcm92aWRlOiBWSUVXX1RBQl9SRU5ERVJJTkdfQ09OVEVYVCwgdXNlVmFsdWU6ICd0YWInIHNhdGlzZmllcyBWaWV3VGFiUmVuZGVyaW5nQ29udGV4dH0sXG4gICAgICBdLFxuICAgIH0pKTtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSBhdXhpbGFyeSBtb3VzZSBidXR0b24gaXMgcHJlc3NlZCAodXN1YWxseSB0aGUgbW91c2Ugd2hlZWwgYnV0dG9uIG9yIG1pZGRsZSBidXR0b24pLlxuICovXG5jb25zdCBBVVhJTEFSWV9NT1VTRV9CVVRUT04gPSA0O1xuIiwiPCEtLSBJTVBPUlRBTlQ6IFRISVMgSFRNTCBGSUxFIElTIEFMU08gVVNFRCBCWSBgVmlld1RhYkRyYWdJbWFnZUNvbXBvbmVudGAgLS0+XG5cbjxkaXYgY2xhc3M9XCJjb3JuZXItcmFkaXVzIHN0YXJ0XCIgKm5nSWY9XCJ2aWV3LmFjdGl2ZVwiPlxuICA8ZGl2IGNsYXNzPVwiY2lyY2xlXCI+PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImNvbnRlbnRcIj5cbiAgPG5nLWNvbnRhaW5lciAqY2RrUG9ydGFsT3V0bGV0PVwidmlld1RhYkNvbnRlbnRQb3J0YWxcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiY29ybmVyLXJhZGl1cyBlbmRcIiAqbmdJZj1cInZpZXcuYWN0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJjaXJjbGVcIj48L2Rpdj5cbjwvZGl2PlxuXG48YnV0dG9uICpuZ0lmPVwidmlldy5jbG9zYWJsZVwiXG4gICAgICAgIGNsYXNzPVwiY2xvc2UgZTJlLWNsb3NlIHNjaW9uLXdvcmtiZW5jaC1pY29uc1wiXG4gICAgICAgIChjbGljayk9XCJvbkNsb3NlKCRldmVudClcIj5cbiAgY2xvc2VcbjwvYnV0dG9uPlxuIl19
|
|
230
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy10YWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vd29ya2JlbmNoL3NyYy9saWIvcGFydC92aWV3LXRhYi92aWV3LXRhYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctdGFiL3ZpZXctdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBYyxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBb0MsTUFBTSxFQUEyQixNQUFNLGVBQWUsQ0FBQztBQUNwTCxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRS9ELE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBQyx1QkFBdUIsRUFBa0IsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsMEJBQTBCLEVBQTBCLE1BQU0sMkJBQTJCLENBQUM7QUFFOUYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFHdkYsT0FBTyxFQUFTLGFBQWEsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRXRFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFB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QWpNVSxnQkFBZ0IsNENBMkJQLFlBQVk7a0dBM0JyQixnQkFBZ0IsNmtCQzVDN0IsOGhCQW1CQSxrK0ZEcUJJLElBQUksNEZBQ0osWUFBWTs7MkZBR0gsZ0JBQWdCO2tCQVY1QixTQUFTOytCQUNFLGFBQWEsY0FHWCxJQUFJLFdBQ1A7d0JBQ1AsSUFBSTt3QkFDSixZQUFZO3FCQUNiOzswQkE2QlksTUFBTTsyQkFBQyxZQUFZOzJQQWpCekIsTUFBTTtzQkFGWixLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQzs7c0JBQ3RCLFdBQVc7dUJBQUMsa0JBQWtCO2dCQUl4QixTQUFTO3NCQURmLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUl0QixRQUFRO3NCQURkLFdBQVc7dUJBQUMsZUFBZTtnQkFPakIsZ0JBQWdCO3NCQUQxQixXQUFXO3VCQUFDLHdCQUF3QjtnQkEyQjFCLE1BQU07c0JBRGhCLFdBQVc7dUJBQUMsY0FBYztnQkFNaEIsVUFBVTtzQkFEcEIsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBTXJCLEtBQUs7c0JBRGYsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBTXZCLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPO2dCQVdkLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVU5QixhQUFhO3NCQURuQixZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRaEMsV0FBVztzQkFEakIsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBaUM5QixTQUFTO3NCQURmLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDOztBQTRFckM7O0dBRUc7QUFDSCxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMiBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgaW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIEl0ZXJhYmxlQ2hhbmdlcywgSXRlcmFibGVEaWZmZXJzLCBOZ1pvbmUsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Zyb21FdmVudCwgbWVyZ2UsIFN1YmplY3QsIHdpdGhMYXRlc3RGcm9tfSBmcm9tICdyeGpzJztcbmltcG9ydCB7V29ya2JlbmNoVmlld1JlZ2lzdHJ5fSBmcm9tICcuLi8uLi92aWV3L3dvcmtiZW5jaC12aWV3LnJlZ2lzdHJ5JztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtWSUVXX0RSQUdfVFJBTlNGRVJfVFlQRSwgVmlld0RyYWdTZXJ2aWNlfSBmcm9tICcuLi8uLi92aWV3LWRuZC92aWV3LWRyYWcuc2VydmljZSc7XG5pbXBvcnQge2NyZWF0ZUVsZW1lbnR9IGZyb20gJy4uLy4uL2NvbW1vbi9kb20udXRpbCc7XG5pbXBvcnQge0NvbXBvbmVudFBvcnRhbCwgUG9ydGFsTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7VklFV19UQUJfUkVOREVSSU5HX0NPTlRFWFQsIFZpZXdUYWJSZW5kZXJpbmdDb250ZXh0fSBmcm9tICcuLi8uLi93b3JrYmVuY2guY29uc3RhbnRzJztcbmltcG9ydCB7V29ya2JlbmNoQ29uZmlnfSBmcm9tICcuLi8uLi93b3JrYmVuY2gtY29uZmlnJztcbmltcG9ydCB7Vmlld1RhYkNvbnRlbnRDb21wb25lbnR9IGZyb20gJy4uL3ZpZXctdGFiLWNvbnRlbnQvdmlldy10YWItY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHtWaWV3TWVudVNlcnZpY2V9IGZyb20gJy4uL3ZpZXctY29udGV4dC1tZW51L3ZpZXctbWVudS5zZXJ2aWNlJztcbmltcG9ydCB7ybVXb3JrYmVuY2hWaWV3fSBmcm9tICcuLi8uLi92aWV3L8m1d29ya2JlbmNoLXZpZXcubW9kZWwnO1xuaW1wb3J0IHtWaWV3SWQsIFdvcmtiZW5jaFZpZXd9IGZyb20gJy4uLy4uL3ZpZXcvd29ya2JlbmNoLXZpZXcubW9kZWwnO1xuaW1wb3J0IHvJtVdvcmtiZW5jaFJvdXRlcn0gZnJvbSAnLi4vLi4vcm91dGluZy/JtXdvcmtiZW5jaC1yb3V0ZXIuc2VydmljZSc7XG5pbXBvcnQge3N1YnNjcmliZUluc2lkZX0gZnJvbSAnQHNjaW9uL3Rvb2xraXQvb3BlcmF0b3JzJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1dPUktCRU5DSF9JRH0gZnJvbSAnLi4vLi4vd29ya2JlbmNoLWlkJztcblxuLyoqXG4gKiBJTVBPUlRBTlQ6IEhUTUwgYW5kIENTUyBhbHNvIHVzZWQgYnkge0BsaW5rIFZpZXdUYWJEcmFnSW1hZ2VDb21wb25lbnR9LlxuICpcbiAqIEBzZWUgVmlld1RhYkRyYWdJbWFnZUNvbXBvbmVudFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3Yi12aWV3LXRhYicsXG4gIHRlbXBsYXRlVXJsOiAnLi92aWV3LXRhYi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ZpZXctdGFiLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIFBvcnRhbE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVmlld1RhYkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG5cbiAgcHJpdmF0ZSBfbmdPbkNoYW5nZXMkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgaG9zdDogSFRNTEVsZW1lbnQ7XG4gIHB1YmxpYyB2aWV3ITogybVXb3JrYmVuY2hWaWV3O1xuICBwdWJsaWMgdmlld1RhYkNvbnRlbnRQb3J0YWwhOiBDb21wb25lbnRQb3J0YWw8dW5rbm93bj47XG5cbiAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXZpZXdpZCcpXG4gIHB1YmxpYyB2aWV3SWQhOiBWaWV3SWQ7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRyYWdnYWJsZScpXG4gIHB1YmxpYyBkcmFnZ2FibGUgPSB0cnVlO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gIHB1YmxpYyB0YWJpbmRleCA9IC0xOyAvLyBtYWtlIHRoZSB2aWV3IGZvY3VzYWJsZSB0byBpbnN0YWxsIHZpZXcgbWVudSBhY2NlbGVyYXRvcnNcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIGRyYWdnaW5nIGEgdmlldyB0YWIgb3ZlciB0aGlzIHZpZXcgdGFiJ3MgdGFiYmFyLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kcmFnLW92ZXItdGFiYmFyJylcbiAgcHVibGljIGdldCBpc0RyYWdPdmVyVGFiYmFyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aWV3RHJhZ1NlcnZpY2UuaXNEcmFnT3ZlclRhYmJhciA9PT0gdGhpcy52aWV3LnBhcnQuaWQ7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihob3N0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgICAgICAgQEluamVjdChXT1JLQkVOQ0hfSUQpIHByaXZhdGUgX3dvcmtiZW5jaElkOiBzdHJpbmcsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3dvcmtiZW5jaENvbmZpZzogV29ya2JlbmNoQ29uZmlnLFxuICAgICAgICAgICAgICBwcml2YXRlIF92aWV3UmVnaXN0cnk6IFdvcmtiZW5jaFZpZXdSZWdpc3RyeSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiDJtVdvcmtiZW5jaFJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfdmlld0RyYWdTZXJ2aWNlOiBWaWV3RHJhZ1NlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2RpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfdmlld0NvbnRleHRNZW51U2VydmljZTogVmlld01lbnVTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLmhvc3QgPSBob3N0Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgdGhpcy5pbnN0YWxsTWF4aW1pemVMaXN0ZW5lcigpO1xuICAgIHRoaXMuaW5zdGFsbFZpZXdDc3NDbGFzc0xpc3RlbmVyKCk7XG4gICAgdGhpcy5pbnN0YWxsVmlld01lbnVJdGVtQWNjZWxlcmF0b3JzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMudmlldyA9IHRoaXMuX3ZpZXdSZWdpc3RyeS5nZXQodGhpcy52aWV3SWQpO1xuICAgIHRoaXMudmlld1RhYkNvbnRlbnRQb3J0YWwgPSB0aGlzLmNyZWF0ZVZpZXdUYWJDb250ZW50UG9ydGFsKCk7XG4gICAgdGhpcy5fbmdPbkNoYW5nZXMkLm5leHQoKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYWN0aXZlJylcbiAgcHVibGljIGdldCBhY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmlldy5hY3RpdmU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnBhcnQtYWN0aXZlJylcbiAgcHVibGljIGdldCBwYXJ0QWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnZpZXcucGFydC5hY3RpdmU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmUyZS1kaXJ0eScpXG4gIHB1YmxpYyBnZXQgZGlydHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmlldy5kaXJ0eTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy52aWV3LmFjdGl2YXRlKCkudGhlbigpO1xuICB9XG5cbiAgcHVibGljIG9uQ2xvc2UoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IC8vIHByZXZlbnQgdGhlIHZpZXcgZnJvbSBiZWluZyBhY3RpdmF0ZWRcbiAgICB0aGlzLnZpZXcuY2xvc2UoKS50aGVuKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25Nb3VzZWRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQuYnV0dG9ucyA9PT0gQVVYSUxBUllfTU9VU0VfQlVUVE9OKSB7XG4gICAgICB0aGlzLnZpZXcuY2xvc2UoKS50aGVuKCk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY29udGV4dG1lbnUnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25Db250ZXh0bWVudShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuX3ZpZXdDb250ZXh0TWVudVNlcnZpY2Uuc2hvd01lbnUoe3g6IGV2ZW50LmNsaWVudFgsIHk6IGV2ZW50LmNsaWVudFl9LCB0aGlzLnZpZXcuaWQpLnRoZW4oKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJhZ3N0YXJ0JywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ1N0YXJ0KGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXcuYWN0aXZhdGUoKS50aGVuKCgpID0+IHtcbiAgICAgIGlmICghZXZlbnQuZGF0YVRyYW5zZmVyKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgZXZlbnQuZGF0YVRyYW5zZmVyLmVmZmVjdEFsbG93ZWQgPSAnbW92ZSc7XG4gICAgICBldmVudC5kYXRhVHJhbnNmZXIuc2V0RGF0YShWSUVXX0RSQUdfVFJBTlNGRVJfVFlQRSwgdGhpcy52aWV3LmlkKTtcbiAgICAgIC8vIFVzZSBhbiBpbnZpc2libGUgPGRpdj4gYXMgdGhlIG5hdGl2ZSBkcmFnIGltYWdlIGJlY2F1c2UgdGhlIGVmZmVjdGl2ZSBkcmFnIGltYWdlIGlzIHJlbmRlcmVkIGJ5IHtWaWV3VGFiRHJhZ0ltYWdlUmVuZGVyZXJ9LlxuICAgICAgZXZlbnQuZGF0YVRyYW5zZmVyLnNldERyYWdJbWFnZShjcmVhdGVFbGVtZW50KCdkaXYnLCB7c3R5bGU6IHtkaXNwbGF5OiAnbm9uZSd9fSksIDAsIDApO1xuXG4gICAgICB0aGlzLl92aWV3RHJhZ1NlcnZpY2Uuc2V0Vmlld0RyYWdEYXRhKHtcbiAgICAgICAgdmlld0lkOiB0aGlzLnZpZXcuaWQsXG4gICAgICAgIHZpZXdUaXRsZTogdGhpcy52aWV3LnRpdGxlID8/ICcnLFxuICAgICAgICB2aWV3SGVhZGluZzogdGhpcy52aWV3LmhlYWRpbmcgPz8gJycsXG4gICAgICAgIHZpZXdDbG9zYWJsZTogdGhpcy52aWV3LmNsb3NhYmxlLFxuICAgICAgICB2aWV3RGlydHk6IHRoaXMudmlldy5kaXJ0eSxcbiAgICAgICAgdmlld1VybFNlZ21lbnRzOiB0aGlzLnZpZXcudXJsU2VnbWVudHMsXG4gICAgICAgIGFsdGVybmF0aXZlVmlld0lkOiB0aGlzLnZpZXcuYWx0ZXJuYXRpdmVJZCxcbiAgICAgICAgbmF2aWdhdGlvbkhpbnQ6IHRoaXMudmlldy5uYXZpZ2F0aW9uSGludCxcbiAgICAgICAgcGFydElkOiB0aGlzLnZpZXcucGFydC5pZCxcbiAgICAgICAgdmlld1RhYlBvaW50ZXJPZmZzZXRYOiBldmVudC5vZmZzZXRYLFxuICAgICAgICB2aWV3VGFiUG9pbnRlck9mZnNldFk6IGV2ZW50Lm9mZnNldFksXG4gICAgICAgIHZpZXdUYWJXaWR0aDogdGhpcy5ob3N0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLFxuICAgICAgICB2aWV3VGFiSGVpZ2h0OiB0aGlzLmhvc3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0LFxuICAgICAgICB3b3JrYmVuY2hJZDogdGhpcy5fd29ya2JlbmNoSWQsXG4gICAgICAgIGNsYXNzTGlzdDogdGhpcy52aWV3LmNsYXNzTGlzdC50b01hcCgpLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkcmFnZW5kJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ0VuZChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgLy8gRW5zdXJlIHRoaXMgdmlldyBzdGF5cyBhY3RpdmF0ZWQgaWYgdGhlIHVzZXIgY2FuY2VscyB0aGUgZHJhZyBvcGVyYXRpb24uIEJ1dCwgZG8gbm90IHB1c2ggdGhlIG5hdmlnYXRpb24gaW50byBicm93c2luZyBoaXN0b3J5IHN0YWNrLlxuICAgIGlmIChldmVudC5kYXRhVHJhbnNmZXI/LmRyb3BFZmZlY3QgPT09ICdub25lJykge1xuICAgICAgdGhpcy52aWV3LmFjdGl2YXRlKHtza2lwTG9jYXRpb25DaGFuZ2U6IHRydWV9KS50aGVuKCk7XG4gICAgfVxuICAgIHRoaXMuX3ZpZXdEcmFnU2VydmljZS51bnNldFZpZXdEcmFnRGF0YSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbnMgZm9yICdkYmxjbGljaycgZXZlbnRzIHRvIG1heGltaXplIG9yIG1pbmltaXplIHRoZSBtYWluIGFyZWEuXG4gICAqXG4gICAqIE5vdGUgdGhhdCB0aGUgbGlzdGVuZXIgaXMgbm90IGFjdGl2YXRlZCB1bnRpbCB0aGUgbW91c2UgaXMgbW92ZWQuIE90aGVyd2lzZSwgY2xvc2luZyBzdWNjZXNzaXZlXG4gICAqIHZpZXdzIChpZiB0aGV5IGhhdmUgZGlmZmVyZW50IHRhYiB3aWR0aHMpIGNvdWxkIHJlc3VsdCBpbiB1bmludGVuZGVkIG1heGltaXphdGlvbiBvciBtaW5pbWl6YXRpb24uXG4gICAqL1xuICBwcml2YXRlIGluc3RhbGxNYXhpbWl6ZUxpc3RlbmVyKCk6IHZvaWQge1xuICAgIGNvbnN0IHpvbmUgPSBpbmplY3QoTmdab25lKTtcbiAgICBjb25zdCBlbmFibGVkJCA9IG1lcmdlKGZyb21FdmVudCh0aGlzLmhvc3QsICdtb3VzZWVudGVyJyksIGZyb21FdmVudCh0aGlzLmhvc3QsICdtb3VzZW1vdmUnKSwgZnJvbUV2ZW50KHRoaXMuaG9zdCwgJ21vdXNlbGVhdmUnKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoZXZlbnQgPT4gZXZlbnQudHlwZSA9PT0gJ21vdXNlbW92ZScpLCAvLyB0aGUgJ21vdXNlbW92ZScgZXZlbnQgYXJtcyB0aGUgbGlzdGVuZXJcbiAgICAgICAgc3Vic2NyaWJlSW5zaWRlKGNvbnRpbnVlRm4gPT4gem9uZS5ydW5PdXRzaWRlQW5ndWxhcihjb250aW51ZUZuKSksXG4gICAgICApO1xuXG4gICAgZnJvbUV2ZW50KHRoaXMuaG9zdCwgJ2RibGNsaWNrJylcbiAgICAgIC5waXBlKFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbShlbmFibGVkJCksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoW2V2ZW50LCBlbmFibGVkXSkgPT4ge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgLy8gcHJldmVudCBgUGFydEJhckNvbXBvbmVudGAgaGFuZGxpbmcgdGhlIGRibGNsaWNrIGV2ZW50IHdoaWNoIHdvdWxkIHVuZG8gbWF4aW1pemF0aW9uL21pbmltaXphdGlvblxuICAgICAgICBpZiAoZW5hYmxlZCAmJiB0aGlzLnZpZXcucGFydC5pc0luTWFpbkFyZWEpIHtcbiAgICAgICAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUobGF5b3V0ID0+IGxheW91dC50b2dnbGVNYXhpbWl6ZWQoKSkudGhlbigpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHZpZXcgc3BlY2lmaWMgQ1NTIGNsYXNzZXMgdG8gdGhlIHZpZXctdGFiLlxuICAgKi9cbiAgcHJpdmF0ZSBpbnN0YWxsVmlld0Nzc0NsYXNzTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgY29uc3QgZGlmZmVyID0gdGhpcy5fZGlmZmVycy5maW5kKFtdKS5jcmVhdGU8c3RyaW5nPigpO1xuXG4gICAgdGhpcy5fbmdPbkNoYW5nZXMkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMudmlldy5jbGFzc0xpc3QudmFsdWUkKSxcbiAgICAgICAgbWFwKGNzc0NsYXNzZXMgPT4gZGlmZmVyLmRpZmYoY3NzQ2xhc3NlcykpLFxuICAgICAgICBmaWx0ZXIoKGRpZmYpOiBkaWZmIGlzIEl0ZXJhYmxlQ2hhbmdlczxzdHJpbmc+ID0+IGRpZmYgIT09IG51bGwpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGRpZmY6IEl0ZXJhYmxlQ2hhbmdlczxzdHJpbmc+KSA9PiB7XG4gICAgICAgIGRpZmYuZm9yRWFjaEFkZGVkSXRlbSgoe2l0ZW19KSA9PiB0aGlzLmhvc3QuY2xhc3NMaXN0LmFkZChpdGVtKSk7XG4gICAgICAgIGRpZmYuZm9yRWFjaFJlbW92ZWRJdGVtKCh7aXRlbX0pID0+IHRoaXMuaG9zdC5jbGFzc0xpc3QucmVtb3ZlKGl0ZW0pKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YWxsVmlld01lbnVJdGVtQWNjZWxlcmF0b3JzKCk6IHZvaWQge1xuICAgIHRoaXMuX25nT25DaGFuZ2VzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLl92aWV3Q29udGV4dE1lbnVTZXJ2aWNlLmluc3RhbGxNZW51SXRlbUFjY2VsZXJhdG9ycyQodGhpcy5ob3N0LCB0aGlzLnZpZXcpKSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVZpZXdUYWJDb250ZW50UG9ydGFsKCk6IENvbXBvbmVudFBvcnRhbDx1bmtub3duPiB7XG4gICAgY29uc3QgY29tcG9uZW50VHlwZSA9IHRoaXMuX3dvcmtiZW5jaENvbmZpZy52aWV3VGFiQ29tcG9uZW50IHx8IFZpZXdUYWJDb250ZW50Q29tcG9uZW50O1xuICAgIHJldHVybiBuZXcgQ29tcG9uZW50UG9ydGFsKGNvbXBvbmVudFR5cGUsIG51bGwsIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwYXJlbnQ6IHRoaXMuX2luamVjdG9yLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtwcm92aWRlOiBXb3JrYmVuY2hWaWV3LCB1c2VWYWx1ZTogdGhpcy52aWV3fSxcbiAgICAgICAge3Byb3ZpZGU6IFZJRVdfVEFCX1JFTkRFUklOR19DT05URVhULCB1c2VWYWx1ZTogJ3RhYicgc2F0aXNmaWVzIFZpZXdUYWJSZW5kZXJpbmdDb250ZXh0fSxcbiAgICAgIF0sXG4gICAgfSkpO1xuICB9XG59XG5cbi8qKlxuICogSW5kaWNhdGVzIHRoYXQgdGhlIGF1eGlsYXJ5IG1vdXNlIGJ1dHRvbiBpcyBwcmVzc2VkICh1c3VhbGx5IHRoZSBtb3VzZSB3aGVlbCBidXR0b24gb3IgbWlkZGxlIGJ1dHRvbikuXG4gKi9cbmNvbnN0IEFVWElMQVJZX01PVVNFX0JVVFRPTiA9IDQ7XG4iLCI8IS0tIElNUE9SVEFOVDogVEhJUyBIVE1MIEZJTEUgSVMgQUxTTyBVU0VEIEJZIGBWaWV3VGFiRHJhZ0ltYWdlQ29tcG9uZW50YCAtLT5cblxuPGRpdiBjbGFzcz1cImNvcm5lci1yYWRpdXMgc3RhcnRcIiAqbmdJZj1cInZpZXcuYWN0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJjaXJjbGVcIj48L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICA8bmctY29udGFpbmVyICpjZGtQb3J0YWxPdXRsZXQ9XCJ2aWV3VGFiQ29udGVudFBvcnRhbFwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJjb3JuZXItcmFkaXVzIGVuZFwiICpuZ0lmPVwidmlldy5hY3RpdmVcIj5cbiAgPGRpdiBjbGFzcz1cImNpcmNsZVwiPjwvZGl2PlxuPC9kaXY+XG5cbjxidXR0b24gKm5nSWY9XCJ2aWV3LmNsb3NhYmxlXCJcbiAgICAgICAgY2xhc3M9XCJjbG9zZSBlMmUtY2xvc2Ugc2Npb24td29ya2JlbmNoLWljb25zXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2UoJGV2ZW50KVwiPlxuICBjbG9zZVxuPC9idXR0b24+XG4iXX0=
|
|
@@ -17,14 +17,14 @@ export class ViewTabContentComponent {
|
|
|
17
17
|
this.view = view;
|
|
18
18
|
this.context = inject(VIEW_TAB_RENDERING_CONTEXT);
|
|
19
19
|
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ViewTabContentComponent, deps: [{ token: i1.WorkbenchView }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: ViewTabContentComponent, isStandalone: true, selector: "wb-view-tab-content", host: { properties: { "attr.context": "this.context" } }, ngImport: i0, template: "<span class=\"title e2e-title\">\n <span *ngIf=\"view.dirty\" class=\"scion-workbench-icons dirty e2e-dirty\">dirty</span>\n {{view.title}}\n</span>\n\n<span class=\"heading e2e-heading\" *ngIf=\"view.heading\">\n {{view.heading}}\n</span>\n", styles: [":host{display:flex;flex-direction:column;gap:.25em;overflow:hidden}:host>span.title{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-weight:400;font-size:1em}:host>span.title>span.dirty{padding-right:.2em}:host>span.heading{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:.9em;font-weight:300}:host[context=tab] span.title,:host[context=drag-image] span.title{margin-right:1em}@container viewtab (height < 3.5rem){:host>span.heading{display:none}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
22
22
|
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ViewTabContentComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
|
-
args: [{ selector: 'wb-view-tab-content', standalone: true, imports: [NgIf], template: "<span class=\"title e2e-title\">\n <span *ngIf=\"view.dirty\" class=\"scion-workbench-icons dirty\">dirty</span>\n {{view.title}}\n</span>\n\n<span class=\"heading e2e-heading\" *ngIf=\"view.heading\">\n {{view.heading}}\n</span>\n", styles: [":host{display:flex;flex-direction:column;gap:.25em;overflow:hidden}:host>span.title{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-weight:400;font-size:1em}:host>span.title>span.dirty{padding-right:.2em}:host>span.heading{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:.9em;font-weight:300}:host[context=tab] span.title,:host[context=drag-image] span.title{margin-right:1em}@container viewtab (height < 3.5rem){:host>span.heading{display:none}}\n"] }]
|
|
25
|
+
args: [{ selector: 'wb-view-tab-content', standalone: true, imports: [NgIf], template: "<span class=\"title e2e-title\">\n <span *ngIf=\"view.dirty\" class=\"scion-workbench-icons dirty e2e-dirty\">dirty</span>\n {{view.title}}\n</span>\n\n<span class=\"heading e2e-heading\" *ngIf=\"view.heading\">\n {{view.heading}}\n</span>\n", styles: [":host{display:flex;flex-direction:column;gap:.25em;overflow:hidden}:host>span.title{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-weight:400;font-size:1em}:host>span.title>span.dirty{padding-right:.2em}:host>span.heading{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:.9em;font-weight:300}:host[context=tab] span.title,:host[context=drag-image] span.title{margin-right:1em}@container viewtab (height < 3.5rem){:host>span.heading{display:none}}\n"] }]
|
|
26
26
|
}], ctorParameters: () => [{ type: i1.WorkbenchView }], propDecorators: { context: [{
|
|
27
27
|
type: HostBinding,
|
|
28
28
|
args: ['attr.context']
|
|
29
29
|
}] } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy10YWItY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctdGFiLWNvbnRlbnQvdmlldy10YWItY29udGVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctdGFiLWNvbnRlbnQvdmlldy10YWItY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDckMsT0FBTyxFQUFDLDBCQUEwQixFQUEwQixNQUFNLDJCQUEyQixDQUFDOzs7QUFTOUYsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUFtQixJQUFtQjtRQUFuQixTQUFJLEdBQUosSUFBSSxDQUFlO1FBRnRCLFlBQU8sR0FBRyxNQUFNLENBQTBCLDBCQUEwQixDQUFDLENBQUM7SUFHdEYsQ0FBQzs4R0FOVSx1QkFBdUI7a0dBQXZCLHVCQUF1Qix5SUN0QnBDLHNQQVFBLDZoQkRZWSxJQUFJOzsyRkFFSCx1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0UscUJBQXFCLGNBR25CLElBQUksV0FDUCxDQUFDLElBQUksQ0FBQztrRkFLQyxPQUFPO3NCQUR0QixXQUFXO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMjIgU3dpc3MgRmVkZXJhbCBSYWlsd2F5c1xuICpcbiAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGVcbiAqIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgMi4wXG4gKiB3aGljaCBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC9cbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V29ya2JlbmNoVmlld30gZnJvbSAnLi4vLi4vdmlldy93b3JrYmVuY2gtdmlldy5tb2RlbCc7XG5pbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1ZJRVdfVEFCX1JFTkRFUklOR19DT05URVhULCBWaWV3VGFiUmVuZGVyaW5nQ29udGV4dH0gZnJvbSAnLi4vLi4vd29ya2JlbmNoLmNvbnN0YW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3diLXZpZXctdGFiLWNvbnRlbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdmlldy10YWItY29udGVudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ZpZXctdGFiLWNvbnRlbnQuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nSWZdLFxufSlcbmV4cG9ydCBjbGFzcyBWaWV3VGFiQ29udGVudENvbXBvbmVudCB7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmNvbnRleHQnKVxuICBwdWJsaWMgcmVhZG9ubHkgY29udGV4dCA9IGluamVjdDxWaWV3VGFiUmVuZGVyaW5nQ29udGV4dD4oVklFV19UQUJfUkVOREVSSU5HX0NPTlRFWFQpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB2aWV3OiBXb3JrYmVuY2hWaWV3KSB7XG4gIH1cbn1cbiIsIjxzcGFuIGNsYXNzPVwidGl0bGUgZTJlLXRpdGxlXCI+XG4gIDxzcGFuICpuZ0lmPVwidmlldy5kaXJ0eVwiIGNsYXNzPVwic2Npb24td29ya2JlbmNoLWljb25zIGRpcnR5IGUyZS1kaXJ0eVwiPmRpcnR5PC9zcGFuPlxuICB7e3ZpZXcudGl0bGV9fVxuPC9zcGFuPlxuXG48c3BhbiBjbGFzcz1cImhlYWRpbmcgZTJlLWhlYWRpbmdcIiAqbmdJZj1cInZpZXcuaGVhZGluZ1wiPlxuICB7e3ZpZXcuaGVhZGluZ319XG48L3NwYW4+XG4iXX0=
|
|
@@ -14,16 +14,16 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
|
14
14
|
import { DOCUMENT, NgIf } from '@angular/common';
|
|
15
15
|
import * as i0 from "@angular/core";
|
|
16
16
|
import * as i1 from "../../view/workbench-view.model";
|
|
17
|
-
import * as i2 from "../../workbench-
|
|
17
|
+
import * as i2 from "../../workbench-config";
|
|
18
18
|
import * as i3 from "../../view-dnd/view-drag.service";
|
|
19
19
|
import * as i4 from "@angular/cdk/portal";
|
|
20
20
|
/**
|
|
21
21
|
* @see ViewTabComponent
|
|
22
22
|
*/
|
|
23
23
|
export class ViewTabDragImageComponent {
|
|
24
|
-
constructor(view,
|
|
24
|
+
constructor(view, _workbenchConfig, _viewDragService, _injector) {
|
|
25
25
|
this.view = view;
|
|
26
|
-
this.
|
|
26
|
+
this._workbenchConfig = _workbenchConfig;
|
|
27
27
|
this._viewDragService = _viewDragService;
|
|
28
28
|
this._injector = _injector;
|
|
29
29
|
this.active = true;
|
|
@@ -43,7 +43,7 @@ export class ViewTabDragImageComponent {
|
|
|
43
43
|
throw Error('[UnsupportedOperationError]');
|
|
44
44
|
}
|
|
45
45
|
createViewTabContentPortal() {
|
|
46
|
-
const componentType = this.
|
|
46
|
+
const componentType = this._workbenchConfig.viewTabComponent || ViewTabContentComponent;
|
|
47
47
|
return new ComponentPortal(componentType, null, this._injector);
|
|
48
48
|
}
|
|
49
49
|
installDragOverTabbarDetector() {
|
|
@@ -57,16 +57,16 @@ export class ViewTabDragImageComponent {
|
|
|
57
57
|
this.isDragOverPeripheralTabbar = partId !== null && documentRoot.querySelector(`wb-workbench:has(wb-main-area-layout) wb-part[data-partid="${partId}"]:not(.main-area)`) !== null;
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
61
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
60
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ViewTabDragImageComponent, deps: [{ token: i1.WorkbenchView }, { token: i2.WorkbenchConfig }, { token: i3.ViewDragService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: ViewTabDragImageComponent, isStandalone: true, selector: "wb-view-tab-drag-image", host: { properties: { "class.active": "this.active", "class.part-active": "this.partActive", "class.drag-over-tabbar": "this.isDragOverTabbar", "class.drag-over-peripheral-tabbar": "this.isDragOverPeripheralTabbar" } }, ngImport: i0, template: "<!-- IMPORTANT: THIS HTML FILE IS ALSO USED BY `ViewTabDragImageComponent` -->\n\n<div class=\"corner-radius start\" *ngIf=\"view.active\">\n <div class=\"circle\"></div>\n</div>\n\n<div class=\"content\">\n <ng-container *cdkPortalOutlet=\"viewTabContentPortal\"></ng-container>\n</div>\n\n<div class=\"corner-radius end\" *ngIf=\"view.active\">\n <div class=\"circle\"></div>\n</div>\n\n<button *ngIf=\"view.closable\"\n class=\"close e2e-close scion-workbench-icons\"\n (click)=\"onClose($event)\">\n close\n</button>\n", styles: [":host{display:grid;align-items:center;padding-left:var(--sci-workbench-tab-padding-inline);padding-right:var(--sci-workbench-tab-padding-inline);position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;box-sizing:border-box;outline:none;border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent;border-top-left-radius:var(--sci-workbench-tab-border-radius);border-top-right-radius:var(--sci-workbench-tab-border-radius)}:host.active{cursor:default;color:var(--sci-workbench-tab-active-text-color);border-left-color:var(--sci-workbench-tab-border-color);border-right-color:var(--sci-workbench-tab-border-color);border-top-color:var(--sci-workbench-tab-border-color);background-color:var(--sci-workbench-view-background-color)}wb-workbench:has(wb-main-area-layout) wb-part:not(.main-area) :host.active{background-color:var(--sci-workbench-view-peripheral-background-color)}:host.active.part-active>div.content{color:var(--sci-workbench-part-active-tab-active-text-color)}:host>div.content{min-width:var(--sci-workbench-tab-min-width);max-width:var(--sci-workbench-tab-max-width);isolation:isolate}:host>button.close{all:unset;position:absolute;cursor:pointer;visibility:hidden;padding:.125em;border-radius:var(--sci-corner-small);right:.2em}:host>button.close:not(:hover){opacity:.75}:host.active>button.close,:host:hover:not(.drag-over-tabbar)>button.close{visibility:visible}:host.active>button.close:hover{background-color:var(--sci-workbench-tab-hover-background-color)}:host:hover:not(.active):not(.drag-over-tabbar):before{content:\"\";background-color:var(--sci-workbench-tab-hover-background-color);position:absolute;inset:0 0 .125em .125em;border-radius:var(--sci-workbench-tab-border-radius);pointer-events:none}:host>div.corner-radius{height:var(--sci-workbench-tab-border-radius);width:var(--sci-workbench-tab-border-radius);overflow:hidden;position:absolute;bottom:0}:host>div.corner-radius>div.circle{position:absolute;top:calc(-2 * var(--sci-workbench-tab-border-radius));width:calc(2 * var(--sci-workbench-tab-border-radius));height:calc(2 * var(--sci-workbench-tab-border-radius));border:var(--sci-workbench-tab-border-radius) solid var(--sci-workbench-view-background-color);border-radius:50%;box-shadow:inset 0 0 0 1px var(--sci-workbench-tab-border-color);box-sizing:content-box}wb-workbench:has(wb-main-area-layout) wb-part:not(.main-area) :host>div.corner-radius>div.circle{border-color:var(--sci-workbench-view-peripheral-background-color)}:host>div.corner-radius.start{left:calc(-1 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.start>div.circle{left:calc(-2 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.end{right:calc(-1 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.end>div.circle{right:calc(-2 * var(--sci-workbench-tab-border-radius))}@container viewtab (height >= 3.5rem){:host>button.close{align-self:start;top:.125em;right:.125em}}\n", ":host.drag-over-peripheral-tabbar{background-color:var(--sci-workbench-view-peripheral-background-color)}:host:not(.drag-over-tabbar){border-radius:var(--sci-workbench-tab-border-radius);border:1px solid var(--sci-workbench-tab-drag-border-color)}:host:not(.drag-over-tabbar)>div.corner-radius{display:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
|
|
62
62
|
}
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ViewTabDragImageComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
65
|
args: [{ selector: 'wb-view-tab-drag-image', standalone: true, imports: [
|
|
66
66
|
NgIf,
|
|
67
67
|
PortalModule,
|
|
68
68
|
], template: "<!-- IMPORTANT: THIS HTML FILE IS ALSO USED BY `ViewTabDragImageComponent` -->\n\n<div class=\"corner-radius start\" *ngIf=\"view.active\">\n <div class=\"circle\"></div>\n</div>\n\n<div class=\"content\">\n <ng-container *cdkPortalOutlet=\"viewTabContentPortal\"></ng-container>\n</div>\n\n<div class=\"corner-radius end\" *ngIf=\"view.active\">\n <div class=\"circle\"></div>\n</div>\n\n<button *ngIf=\"view.closable\"\n class=\"close e2e-close scion-workbench-icons\"\n (click)=\"onClose($event)\">\n close\n</button>\n", styles: [":host{display:grid;align-items:center;padding-left:var(--sci-workbench-tab-padding-inline);padding-right:var(--sci-workbench-tab-padding-inline);position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;box-sizing:border-box;outline:none;border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent;border-top-left-radius:var(--sci-workbench-tab-border-radius);border-top-right-radius:var(--sci-workbench-tab-border-radius)}:host.active{cursor:default;color:var(--sci-workbench-tab-active-text-color);border-left-color:var(--sci-workbench-tab-border-color);border-right-color:var(--sci-workbench-tab-border-color);border-top-color:var(--sci-workbench-tab-border-color);background-color:var(--sci-workbench-view-background-color)}wb-workbench:has(wb-main-area-layout) wb-part:not(.main-area) :host.active{background-color:var(--sci-workbench-view-peripheral-background-color)}:host.active.part-active>div.content{color:var(--sci-workbench-part-active-tab-active-text-color)}:host>div.content{min-width:var(--sci-workbench-tab-min-width);max-width:var(--sci-workbench-tab-max-width);isolation:isolate}:host>button.close{all:unset;position:absolute;cursor:pointer;visibility:hidden;padding:.125em;border-radius:var(--sci-corner-small);right:.2em}:host>button.close:not(:hover){opacity:.75}:host.active>button.close,:host:hover:not(.drag-over-tabbar)>button.close{visibility:visible}:host.active>button.close:hover{background-color:var(--sci-workbench-tab-hover-background-color)}:host:hover:not(.active):not(.drag-over-tabbar):before{content:\"\";background-color:var(--sci-workbench-tab-hover-background-color);position:absolute;inset:0 0 .125em .125em;border-radius:var(--sci-workbench-tab-border-radius);pointer-events:none}:host>div.corner-radius{height:var(--sci-workbench-tab-border-radius);width:var(--sci-workbench-tab-border-radius);overflow:hidden;position:absolute;bottom:0}:host>div.corner-radius>div.circle{position:absolute;top:calc(-2 * var(--sci-workbench-tab-border-radius));width:calc(2 * var(--sci-workbench-tab-border-radius));height:calc(2 * var(--sci-workbench-tab-border-radius));border:var(--sci-workbench-tab-border-radius) solid var(--sci-workbench-view-background-color);border-radius:50%;box-shadow:inset 0 0 0 1px var(--sci-workbench-tab-border-color);box-sizing:content-box}wb-workbench:has(wb-main-area-layout) wb-part:not(.main-area) :host>div.corner-radius>div.circle{border-color:var(--sci-workbench-view-peripheral-background-color)}:host>div.corner-radius.start{left:calc(-1 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.start>div.circle{left:calc(-2 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.end{right:calc(-1 * var(--sci-workbench-tab-border-radius))}:host>div.corner-radius.end>div.circle{right:calc(-2 * var(--sci-workbench-tab-border-radius))}@container viewtab (height >= 3.5rem){:host>button.close{align-self:start;top:.125em;right:.125em}}\n", ":host.drag-over-peripheral-tabbar{background-color:var(--sci-workbench-view-peripheral-background-color)}:host:not(.drag-over-tabbar){border-radius:var(--sci-workbench-tab-border-radius);border:1px solid var(--sci-workbench-tab-drag-border-color)}:host:not(.drag-over-tabbar)>div.corner-radius{display:none}\n"] }]
|
|
69
|
-
}], ctorParameters: () => [{ type: i1.WorkbenchView }, { type: i2.
|
|
69
|
+
}], ctorParameters: () => [{ type: i1.WorkbenchView }, { type: i2.WorkbenchConfig }, { type: i3.ViewDragService }, { type: i0.Injector }], propDecorators: { active: [{
|
|
70
70
|
type: HostBinding,
|
|
71
71
|
args: ['class.active']
|
|
72
72
|
}], partActive: [{
|
|
@@ -79,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImpor
|
|
|
79
79
|
type: HostBinding,
|
|
80
80
|
args: ['class.drag-over-peripheral-tabbar']
|
|
81
81
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy10YWItZHJhZy1pbWFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctdGFiLWRyYWctaW1hZ2Uvdmlldy10YWItZHJhZy1pbWFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctdGFiL3ZpZXctdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFXLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sRUFBQyxlQUFlLEVBQUUsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFbEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBRy9DOztHQUVHO0FBY0gsTUFBTSxPQUFPLHlCQUF5QjtJQXNCcEMsWUFBbUIsSUFBbUIsRUFDbEIsZ0JBQWlDLEVBQ2pDLGdCQUFpQyxFQUNqQyxTQUFtQjtRQUhwQixTQUFJLEdBQUosSUFBSSxDQUFlO1FBQ2xCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFDakMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBcEJoQyxXQUFNLEdBQUcsSUFBSSxDQUFDO1FBR2QsZUFBVSxHQUFHLElBQUksQ0FBQztRQUV6Qjs7V0FFRztRQUVJLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUVoQzs7V0FFRztRQUVJLCtCQUEwQixHQUFHLEtBQUssQ0FBQztRQU14QyxJQUFJLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFDaEUsQ0FBQztJQUVNLE9BQU8sQ0FBQyxHQUFHLENBQVk7UUFDNUIsTUFBTSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU8sMEJBQTBCO1FBQ2hDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsSUFBSSx1QkFBdUIsQ0FBQztRQUN4RixPQUFPLElBQUksZUFBZSxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFTyw2QkFBNkI7UUFDbkMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFXLFFBQVEsQ0FBQyxDQUFDLGVBQWUsQ0FBQztRQUNoRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZTthQUNsQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQzthQUMxQixTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbEIsbURBQW1EO1lBQ25ELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLEtBQUssSUFBSSxDQUFDO1lBQ3hDLGtGQUFrRjtZQUNsRixJQUFJLENBQUMsMEJBQTBCLEdBQUcsTUFBTSxLQUFLLElBQUksSUFBSSxZQUFZLENBQUMsYUFBYSxDQUFDLDhEQUE4RCxNQUFNLG9CQUFvQixDQUFDLEtBQUssSUFBSSxDQUFDO1FBQ3JMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0FqRFUseUJBQXlCO2tHQUF6Qix5QkFBeUIsOFNDbkN0Qyw4aEJBbUJBLDJ4R0RZSSxJQUFJLDRGQUNKLFlBQVk7OzJGQUdILHlCQUF5QjtrQkFickMsU0FBUzsrQkFDRSx3QkFBd0IsY0FNdEIsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osWUFBWTtxQkFDYjtxS0FPTSxNQUFNO3NCQURaLFdBQVc7dUJBQUMsY0FBYztnQkFJcEIsVUFBVTtzQkFEaEIsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBT3pCLGdCQUFnQjtzQkFEdEIsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBTzlCLDBCQUEwQjtzQkFEaEMsV0FBVzt1QkFBQyxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMjIgU3dpc3MgRmVkZXJhbCBSYWlsd2F5c1xuICpcbiAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGVcbiAqIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgMi4wXG4gKiB3aGljaCBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC9cbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgaW5qZWN0LCBJbmplY3Rvcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1ZpZXdEcmFnU2VydmljZX0gZnJvbSAnLi4vLi4vdmlldy1kbmQvdmlldy1kcmFnLnNlcnZpY2UnO1xuaW1wb3J0IHtDb21wb25lbnRQb3J0YWwsIFBvcnRhbE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1dvcmtiZW5jaENvbmZpZ30gZnJvbSAnLi4vLi4vd29ya2JlbmNoLWNvbmZpZyc7XG5pbXBvcnQge1ZpZXdUYWJDb250ZW50Q29tcG9uZW50fSBmcm9tICcuLi92aWV3LXRhYi1jb250ZW50L3ZpZXctdGFiLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge0RPQ1VNRU5ULCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtXb3JrYmVuY2hWaWV3fSBmcm9tICcuLi8uLi92aWV3L3dvcmtiZW5jaC12aWV3Lm1vZGVsJztcblxuLyoqXG4gKiBAc2VlIFZpZXdUYWJDb21wb25lbnRcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2Itdmlldy10YWItZHJhZy1pbWFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi4vdmlldy10YWIvdmlldy10YWIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi4vdmlldy10YWIvdmlldy10YWIuY29tcG9uZW50LnNjc3MnLFxuICAgICcuL3ZpZXctdGFiLWRyYWctaW1hZ2UucGFydGlhbC5jb21wb25lbnQuc2NzcycsXG4gIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIFBvcnRhbE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVmlld1RhYkRyYWdJbWFnZUNvbXBvbmVudCB7XG5cbiAgcHVibGljIHZpZXdUYWJDb250ZW50UG9ydGFsITogQ29tcG9uZW50UG9ydGFsPHVua25vd24+O1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYWN0aXZlJylcbiAgcHVibGljIGFjdGl2ZSA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5wYXJ0LWFjdGl2ZScpXG4gIHB1YmxpYyBwYXJ0QWN0aXZlID0gdHJ1ZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIGRyYWdnaW5nIHRoaXMgdmlldyB0YWIgb3ZlciBhIHRhYmJhci5cbiAgICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZHJhZy1vdmVyLXRhYmJhcicpXG4gIHB1YmxpYyBpc0RyYWdPdmVyVGFiYmFyID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiBkcmFnZ2luZyB0aGlzIHZpZXcgdGFiIG92ZXIgYSB0YWJiYXIgbG9jYXRlZCBpbiB0aGUgcGVyaXBoZXJhbCBhcmVhLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kcmFnLW92ZXItcGVyaXBoZXJhbC10YWJiYXInKVxuICBwdWJsaWMgaXNEcmFnT3ZlclBlcmlwaGVyYWxUYWJiYXIgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdmlldzogV29ya2JlbmNoVmlldyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfd29ya2JlbmNoQ29uZmlnOiBXb3JrYmVuY2hDb25maWcsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3ZpZXdEcmFnU2VydmljZTogVmlld0RyYWdTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLmluc3RhbGxEcmFnT3ZlclRhYmJhckRldGVjdG9yKCk7XG4gICAgdGhpcy52aWV3VGFiQ29udGVudFBvcnRhbCA9IHRoaXMuY3JlYXRlVmlld1RhYkNvbnRlbnRQb3J0YWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNsb3NlKC4uLl86IHVua25vd25bXSk6IHZvaWQge1xuICAgIHRocm93IEVycm9yKCdbVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvcl0nKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlVmlld1RhYkNvbnRlbnRQb3J0YWwoKTogQ29tcG9uZW50UG9ydGFsPHVua25vd24+IHtcbiAgICBjb25zdCBjb21wb25lbnRUeXBlID0gdGhpcy5fd29ya2JlbmNoQ29uZmlnLnZpZXdUYWJDb21wb25lbnQgfHwgVmlld1RhYkNvbnRlbnRDb21wb25lbnQ7XG4gICAgcmV0dXJuIG5ldyBDb21wb25lbnRQb3J0YWwoY29tcG9uZW50VHlwZSwgbnVsbCwgdGhpcy5faW5qZWN0b3IpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YWxsRHJhZ092ZXJUYWJiYXJEZXRlY3RvcigpOiB2b2lkIHtcbiAgICBjb25zdCBkb2N1bWVudFJvb3QgPSBpbmplY3Q8RG9jdW1lbnQ+KERPQ1VNRU5UKS5kb2N1bWVudEVsZW1lbnQ7XG4gICAgdGhpcy5fdmlld0RyYWdTZXJ2aWNlLnRhYmJhckRyYWdPdmVyJFxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKHBhcnRJZCA9PiB7XG4gICAgICAgIC8vIENvbXB1dGUgaWYgZHJhZ2dpbmcgdGhpcyB2aWV3IHRhYiBvdmVyIGEgdGFiYmFyLlxuICAgICAgICB0aGlzLmlzRHJhZ092ZXJUYWJiYXIgPSBwYXJ0SWQgIT09IG51bGw7XG4gICAgICAgIC8vIENvbXB1dGUgaWYgZHJhZ2dpbmcgdGhpcyB2aWV3IHRhYiBvdmVyIGEgdGFiYmFyIGxvY2F0ZWQgaW4gdGhlIHBlcmlwaGVyYWwgYXJlYS5cbiAgICAgICAgdGhpcy5pc0RyYWdPdmVyUGVyaXBoZXJhbFRhYmJhciA9IHBhcnRJZCAhPT0gbnVsbCAmJiBkb2N1bWVudFJvb3QucXVlcnlTZWxlY3Rvcihgd2Itd29ya2JlbmNoOmhhcyh3Yi1tYWluLWFyZWEtbGF5b3V0KSB3Yi1wYXJ0W2RhdGEtcGFydGlkPVwiJHtwYXJ0SWR9XCJdOm5vdCgubWFpbi1hcmVhKWApICE9PSBudWxsO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIjwhLS0gSU1QT1JUQU5UOiBUSElTIEhUTUwgRklMRSBJUyBBTFNPIFVTRUQgQlkgYFZpZXdUYWJEcmFnSW1hZ2VDb21wb25lbnRgIC0tPlxuXG48ZGl2IGNsYXNzPVwiY29ybmVyLXJhZGl1cyBzdGFydFwiICpuZ0lmPVwidmlldy5hY3RpdmVcIj5cbiAgPGRpdiBjbGFzcz1cImNpcmNsZVwiPjwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gIDxuZy1jb250YWluZXIgKmNka1BvcnRhbE91dGxldD1cInZpZXdUYWJDb250ZW50UG9ydGFsXCI+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImNvcm5lci1yYWRpdXMgZW5kXCIgKm5nSWY9XCJ2aWV3LmFjdGl2ZVwiPlxuICA8ZGl2IGNsYXNzPVwiY2lyY2xlXCI+PC9kaXY+XG48L2Rpdj5cblxuPGJ1dHRvbiAqbmdJZj1cInZpZXcuY2xvc2FibGVcIlxuICAgICAgICBjbGFzcz1cImNsb3NlIGUyZS1jbG9zZSBzY2lvbi13b3JrYmVuY2gtaWNvbnNcIlxuICAgICAgICAoY2xpY2spPVwib25DbG9zZSgkZXZlbnQpXCI+XG4gIGNsb3NlXG48L2J1dHRvbj5cbiJdfQ==
|
|
@@ -37,10 +37,10 @@ export class WorkbenchPartActionRegistry {
|
|
|
37
37
|
ngOnDestroy() {
|
|
38
38
|
this._registry.clear();
|
|
39
39
|
}
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
41
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.
|
|
40
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchPartActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
41
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchPartActionRegistry, providedIn: 'root' }); }
|
|
42
42
|
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchPartActionRegistry, decorators: [{
|
|
44
44
|
type: Injectable,
|
|
45
45
|
args: [{ providedIn: 'root' }]
|
|
46
46
|
}] });
|
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export class WorkbenchPart {
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2JlbmNoLXBhcnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3dvcmtiZW5jaC1wYXJ0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBZ0IsYUFBYTtDQXFEbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtXb3JrYmVuY2hQYXJ0QWN0aW9ufSBmcm9tICcuLi93b3JrYmVuY2gubW9kZWwnO1xuaW1wb3J0IHtWaWV3SWR9IGZyb20gJy4uL3ZpZXcvd29ya2JlbmNoLXZpZXcubW9kZWwnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwYXJ0IG9mIHRoZSB3b3JrYmVuY2ggbGF5b3V0LlxuICpcbiAqIEEgcGFydCBpcyBhIHN0YWNrIG9mIHZpZXdzIHRoYXQgY2FuIGJlIGFycmFuZ2VkIGluIHRoZSB3b3JrYmVuY2ggbGF5b3V0LlxuICpcbiAqIEBzZWUgV29ya2JlbmNoVmlld1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgV29ya2JlbmNoUGFydCB7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGl0eSBvZiB0aGlzIHBhcnQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhpcyBwYXJ0IGlzIGxvY2F0ZWQgaW4gdGhlIG1haW4gYXJlYS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBpc0luTWFpbkFyZWE6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoaXMgcGFydCBpcyBhY3RpdmUgb3IgaW5hY3RpdmUuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYWN0aXZlOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBOb3RpZmllcyB3aGVuIHRoaXMgcGFydCBiZWNvbWVzIGFjdGl2ZSBvciBpbmFjdGl2ZS5cbiAgICpcbiAgICogVXBvbiBzdWJzY3JpcHRpb24sIGVtaXRzIHRoZSBjdXJyZW50IHN0YXRlLCBhbmQgdGhlbiBlYWNoIHRpbWUgdGhlIHN0YXRlIGNoYW5nZXMuIFRoZSBvYnNlcnZhYmxlIG5ldmVyIGNvbXBsZXRlcy5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhY3RpdmUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgY3VycmVudGx5IGFjdGl2ZSB2aWV3IGluIHRoaXMgcGFydC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhY3RpdmVWaWV3SWQkOiBPYnNlcnZhYmxlPFZpZXdJZCB8IG51bGw+O1xuXG4gIC8qKlxuICAgKiBUaGUgY3VycmVudGx5IGFjdGl2ZSB2aWV3LCBpZiBhbnkuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYWN0aXZlVmlld0lkOiBWaWV3SWQgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgdmlld3Mgb3BlbmVkIGluIHRoaXMgcGFydC5cbiAgICpcbiAgICogVXBvbiBzdWJzY3JpcHRpb24sIGVtaXRzIHRoZSBjdXJyZW50IHZpZXdzLCBhbmQgdGhlbiBlYWNoIHRpbWUgdGhlIHZpZXdzIGNoYW5nZS4gVGhlIG9ic2VydmFibGUgbmV2ZXIgY29tcGxldGVzLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHZpZXdJZHMkOiBPYnNlcnZhYmxlPFZpZXdJZFtdPjtcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnRseSBvcGVuZWQgdmlld3MgaW4gdGhpcyBwYXJ0LlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHZpZXdJZHM6IFZpZXdJZFtdO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBhY3Rpb25zIGFzc29jaWF0ZWQgd2l0aCB0aGlzIHBhcnQuXG4gICAqXG4gICAqIFVwb24gc3Vic2NyaXB0aW9uLCB0aGUgY3VycmVudGx5IGFzc29jaWF0ZWQgYWN0aW9ucyBhcmUgZW1pdHRlZCwgYW5kIHRoZW4gZW1pdHMgY29udGludW91c2x5XG4gICAqIHdoZW4gbmV3IGFjdGlvbnMgYXJlIHJlZ2lzdGVyZWQgb3IgdW5yZWdpc3RlcmVkLiBJdCBuZXZlciBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYWN0aW9ucyQ6IE9ic2VydmFibGU8cmVhZG9ubHkgV29ya2JlbmNoUGFydEFjdGlvbltdPjtcbn1cbiJdfQ==
|
|
@@ -47,10 +47,10 @@ export class WorkbenchPartRegistry {
|
|
|
47
47
|
this._registry.objects.forEach(part => part.destroy());
|
|
48
48
|
this._registry.clear();
|
|
49
49
|
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
51
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchPartRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
51
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchPartRegistry, providedIn: 'root' }); }
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WorkbenchPartRegistry, decorators: [{
|
|
54
54
|
type: Injectable,
|
|
55
55
|
args: [{ providedIn: 'root' }]
|
|
56
56
|
}] });
|
|
@@ -53,7 +53,7 @@ export class ɵWorkbenchPart {
|
|
|
53
53
|
*/
|
|
54
54
|
onLayoutChange(layout) {
|
|
55
55
|
this._isInMainArea ??= layout.hasPart(this.id, { grid: 'mainArea' });
|
|
56
|
-
const part = layout.part({
|
|
56
|
+
const part = layout.part({ partId: this.id });
|
|
57
57
|
const active = layout.activePart({ grid: this._isInMainArea ? 'mainArea' : 'workbench' })?.id === this.id;
|
|
58
58
|
const prevViewIds = this.viewIds$.value;
|
|
59
59
|
const currViewIds = part.views.map(view => view.id);
|
|
@@ -86,7 +86,7 @@ export class ɵWorkbenchPart {
|
|
|
86
86
|
return true;
|
|
87
87
|
}
|
|
88
88
|
const currentLayout = this._workbenchLayoutService.layout;
|
|
89
|
-
return this._workbenchRouter
|
|
89
|
+
return this._workbenchRouter.navigate(layout => currentLayout === layout ? layout.activatePart(this.id) : null, // cancel navigation if the layout has become stale
|
|
90
90
|
{ skipLocationChange: true });
|
|
91
91
|
}
|
|
92
92
|
get active() {
|
|
@@ -127,4 +127,4 @@ export class ɵWorkbenchPart {
|
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiybV3b3JrYmVuY2gtcGFydC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL3BhcnQvybV3b3JrYmVuY2gtcGFydC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUNILE9BQU8sRUFBQyxlQUFlLEVBQWMsT0FBTyxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0RSxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0MsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsZUFBZSxFQUFnQixNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1RSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUUxRSxNQUFNLE9BQU8sY0FBYztJQW1CekIsWUFBNEIsRUFBVSxFQUFFLE9BQTRFO1FBQXhGLE9BQUUsR0FBRixFQUFFLENBQVE7UUFmckIscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGVB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QUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNqRSwyRUFBMkU7UUFDM0UsV0FBVyxDQUFDLENBQUMsTUFBMkIsRUFBVyxFQUFFLENBQUMscUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxFQUM3SCxvQkFBb0IsRUFBRSxDQUN2QixDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ0ssZUFBZTtRQUNyQixJQUFJLENBQUMsT0FBTzthQUNULElBQUksQ0FDSCxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQ2YsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNsRSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxPQUFPO1FBQ1osSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixnSUFBZ0k7UUFDaEksMEdBQTBHO1FBQzFHLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQzVFO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIyIFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIHN3aXRjaE1hcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2luamVjdCwgSW5qZWN0b3IsIHJ1bkluSW5qZWN0aW9uQ29udGV4dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FycmF5c30gZnJvbSAnQHNjaW9uL3Rvb2xraXQvdXRpbCc7XG5pbXBvcnQge1dvcmtiZW5jaFBhcnRBY3Rpb259IGZyb20gJy4uL3dvcmtiZW5jaC5tb2RlbCc7XG5pbXBvcnQge1dvcmtiZW5jaFBhcnR9IGZyb20gJy4vd29ya2JlbmNoLXBhcnQubW9kZWwnO1xuaW1wb3J0IHtXb3JrYmVuY2hSb3V0ZXJ9IGZyb20gJy4uL3JvdXRpbmcvd29ya2JlbmNoLXJvdXRlci5zZXJ2aWNlJztcbmltcG9ydCB7V29ya2JlbmNoVmlld1JlZ2lzdHJ5fSBmcm9tICcuLi92aWV3L3dvcmtiZW5jaC12aWV3LnJlZ2lzdHJ5JztcbmltcG9ydCB7Q29tcG9uZW50UG9ydGFsLCBDb21wb25lbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7QWN0aXZhdGlvbkluc3RhbnRQcm92aWRlcn0gZnJvbSAnLi4vYWN0aXZhdGlvbi1pbnN0YW50LnByb3ZpZGVyJztcbmltcG9ydCB7V29ya2JlbmNoUGFydEFjdGlvblJlZ2lzdHJ5fSBmcm9tICcuL3dvcmtiZW5jaC1wYXJ0LWFjdGlvbi5yZWdpc3RyeSc7XG5pbXBvcnQge2ZpbHRlckFycmF5fSBmcm9tICdAc2Npb24vdG9vbGtpdC9vcGVyYXRvcnMnO1xuaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHvJtVdvcmtiZW5jaExheW91dH0gZnJvbSAnLi4vbGF5b3V0L8m1d29ya2JlbmNoLWxheW91dCc7XG5pbXBvcnQge1dvcmtiZW5jaExheW91dFNlcnZpY2V9IGZyb20gJy4uL2xheW91dC93b3JrYmVuY2gtbGF5b3V0LnNlcnZpY2UnO1xuXG5leHBvcnQgY2xhc3MgybVXb3JrYmVuY2hQYXJ0IGltcGxlbWVudHMgV29ya2JlbmNoUGFydCB7XG5cbiAgcHJpdmF0ZSBfYWN0aXZhdGlvbkluc3RhbnQ6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIHJlYWRvbmx5IF93b3JrYmVuY2hSb3V0ZXIgPSBpbmplY3QoV29ya2JlbmNoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd29ya2JlbmNoTGF5b3V0U2VydmljZSA9IGluamVjdChXb3JrYmVuY2hMYXlvdXRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdmlld1JlZ2lzdHJ5ID0gaW5qZWN0KFdvcmtiZW5jaFZpZXdSZWdpc3RyeSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2YXRpb25JbnN0YW50UHJvdmlkZXIgPSBpbmplY3QoQWN0aXZhdGlvbkluc3RhbnRQcm92aWRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3BhcnRBY3Rpb25SZWdpc3RyeSA9IGluamVjdChXb3JrYmVuY2hQYXJ0QWN0aW9uUmVnaXN0cnkpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJ0Q29tcG9uZW50OiBDb21wb25lbnRUeXBlPFBhcnRDb21wb25lbnQgfCBNYWluQXJlYUxheW91dENvbXBvbmVudD47XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgdmlld0lkcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPihbXSk7XG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVWaWV3SWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IGFjdGlvbnMkOiBPYnNlcnZhYmxlPHJlYWRvbmx5IFdvcmtiZW5jaFBhcnRBY3Rpb25bXT47XG5cbiAgcHJpdmF0ZSBfaXNJbk1haW5BcmVhOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nLCBvcHRpb25zOiB7Y29tcG9uZW50OiBDb21wb25lbnRUeXBlPFBhcnRDb21wb25lbnQgfCBNYWluQXJlYUxheW91dENvbXBvbmVudD59KSB7XG4gICAgdGhpcy5fcGFydENvbXBvbmVudCA9IG9wdGlvbnMuY29tcG9uZW50O1xuICAgIHRoaXMuYWN0aW9ucyQgPSB0aGlzLm9ic2VydmVQYXJ0QWN0aW9ucyQoKTtcbiAgICB0aGlzLnRvdWNoT25BY3RpdmF0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdHMgdGhlIHBvcnRhbCB1c2luZyB0aGUgZ2l2ZW4gaW5qZWN0aW9uIGNvbnRleHQuXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlUG9ydGFsRnJvbUluamVjdGlvbkNvbnRleHQoaW5qZWN0aW9uQ29udGV4dDogSW5qZWN0b3IpOiBDb21wb25lbnRQb3J0YWw8UGFydENvbXBvbmVudCB8IE1haW5BcmVhTGF5b3V0Q29tcG9uZW50PiB7XG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiBpbmplY3Rpb25Db250ZXh0LFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtwcm92aWRlOiDJtVdvcmtiZW5jaFBhcnQsIHVzZVZhbHVlOiB0aGlzfSxcbiAgICAgICAge3Byb3ZpZGU6IFdvcmtiZW5jaFBhcnQsIHVzZUV4aXN0aW5nOiDJtVdvcmtiZW5jaFBhcnR9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgICByZXR1cm4gbmV3IENvbXBvbmVudFBvcnRhbCh0aGlzLl9wYXJ0Q29tcG9uZW50LCBudWxsLCBpbmplY3RvciwgbnVsbCwgbnVsbCk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGludm9rZWQgdG8gdXBkYXRlIHRoaXMgd29ya2JlbmNoIG1vZGVsIG9iamVjdCB3aGVuIHRoZSB3b3JrYmVuY2ggbGF5b3V0IGNoYW5nZXMuXG4gICAqL1xuICBwdWJsaWMgb25MYXlvdXRDaGFuZ2UobGF5b3V0OiDJtVdvcmtiZW5jaExheW91dCk6IHZvaWQge1xuICAgIHRoaXMuX2lzSW5NYWluQXJlYSA/Pz0gbGF5b3V0Lmhhc1BhcnQodGhpcy5pZCwge2dyaWQ6ICdtYWluQXJlYSd9KTtcbiAgICBjb25zdCBwYXJ0ID0gbGF5b3V0LnBhcnQoe2J5OiB7cGFydElkOiB0aGlzLmlkfX0pO1xuICAgIGNvbnN0IGFjdGl2ZSA9IGxheW91dC5hY3RpdmVQYXJ0KHtncmlkOiB0aGlzLl9pc0luTWFpbkFyZWEgPyAnbWFpbkFyZWEnIDogJ3dvcmtiZW5jaCd9KT8uaWQgPT09IHRoaXMuaWQ7XG4gICAgY29uc3QgcHJldlZpZXdJZHMgPSB0aGlzLnZpZXdJZHMkLnZhbHVlO1xuICAgIGNvbnN0IGN1cnJWaWV3SWRzID0gcGFydC52aWV3cy5tYXAodmlldyA9PiB2aWV3LmlkKTtcblxuICAgIC8vIFVwZGF0ZSBhY3RpdmUgcGFydCBpZiBjaGFuZ2VkXG4gICAgaWYgKHRoaXMuYWN0aXZlICE9PSBhY3RpdmUpIHtcbiAgICAgIHRoaXMuYWN0aXZlJC5uZXh0KGFjdGl2ZSk7XG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIHZpZXdzIGlmIGNoYW5nZWRcbiAgICBpZiAoIUFycmF5cy5pc0VxdWFsKHByZXZWaWV3SWRzLCBjdXJyVmlld0lkcywge2V4YWN0T3JkZXI6IHRydWV9KSkge1xuICAgICAgdGhpcy52aWV3SWRzJC5uZXh0KGN1cnJWaWV3SWRzKTtcbiAgICB9XG5cbiAgICAvLyBVcGRhdGUgYWN0aXZlIHZpZXcgaWYgY2hhbmdlZFxuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXdJZCAhPT0gcGFydC5hY3RpdmVWaWV3SWQpIHtcbiAgICAgIHRoaXMuYWN0aXZlVmlld0lkJC5uZXh0KHBhcnQuYWN0aXZlVmlld0lkID8/IG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlld0lkcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMudmlld0lkcyQudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2ZVZpZXdJZCgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVWaWV3SWQkLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjdGl2YXRlcyB0aGlzIHBhcnQuXG4gICAqXG4gICAqIE5vdGU6IFRoaXMgaW5zdHJ1Y3Rpb24gcnVucyBhc3luY2hyb25vdXNseSB2aWEgVVJMIHJvdXRpbmcuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgYWN0aXZhdGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgaWYgKHRoaXMuYWN0aXZlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50TGF5b3V0ID0gdGhpcy5fd29ya2JlbmNoTGF5b3V0U2VydmljZS5sYXlvdXQ7XG4gICAgcmV0dXJuIHRoaXMuX3dvcmtiZW5jaFJvdXRlci7JtW5hdmlnYXRlKFxuICAgICAgbGF5b3V0ID0+IGN1cnJlbnRMYXlvdXQgPT09IGxheW91dCA/IGxheW91dC5hY3RpdmF0ZVBhcnQodGhpcy5pZCkgOiBudWxsLCAvLyBjYW5jZWwgbmF2aWdhdGlvbiBpZiB0aGUgbGF5b3V0IGhhcyBiZWNvbWUgc3RhbGVcbiAgICAgIHtza2lwTG9jYXRpb25DaGFuZ2U6IHRydWV9LCAvLyBkbyBub3QgYWRkIHBhcnQgYWN0aXZhdGlvbiBpbnRvIGJyb3dzZXIgaGlzdG9yeSBzdGFja1xuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmUkLnZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmF0aW9uSW5zdGFudCgpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmF0aW9uSW5zdGFudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNJbk1haW5BcmVhKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc0luTWFpbkFyZWEgPz8gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgYWN0aW9ucyB0aGF0IGhhdmUgY29udHJpYnV0ZWQgdG8gdGhpcyBwYXJ0IGFuZCB0aGUgY3VycmVudGx5IGFjdGl2ZSB2aWV3LlxuICAgKi9cbiAgcHJpdmF0ZSBvYnNlcnZlUGFydEFjdGlvbnMkKCk6IE9ic2VydmFibGU8V29ya2JlbmNoUGFydEFjdGlvbltdPiB7XG4gICAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgIHJldHVybiB0aGlzLl9wYXJ0QWN0aW9uUmVnaXN0cnkuYWN0aW9ucyRcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoYWN0aW9ucyA9PiB0aGlzLmFjdGl2ZVZpZXdJZCQucGlwZShtYXAoKCkgPT4gYWN0aW9ucykpKSxcbiAgICAgICAgLy8gUnVuIGluIGluamVjdGlvbiBjb250ZXh0IGZvciBgY2FuTWF0Y2hgIGZ1bmN0aW9uIHRvIGluamVjdCBkZXBlbmRlbmNpZXMuXG4gICAgICAgIGZpbHRlckFycmF5KChhY3Rpb246IFdvcmtiZW5jaFBhcnRBY3Rpb24pOiBib29sZWFuID0+IHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgKCkgPT4gYWN0aW9uLmNhbk1hdGNoPy4odGhpcykgPz8gdHJ1ZSkpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBhY3RpdmF0aW9uIGluc3RhbnQgd2hlbiB0aGlzIHBhcnQgaXMgYWN0aXZhdGVkLlxuICAgKi9cbiAgcHJpdmF0ZSB0b3VjaE9uQWN0aXZhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmUkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX2FjdGl2YXRpb25JbnN0YW50ID0gdGhpcy5fYWN0aXZhdGlvbkluc3RhbnRQcm92aWRlci5ub3coKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIC8vIElNUE9SVEFOVDogT25seSBkZXRhY2ggdGhlIGFjdGl2ZSB2aWV3LCBub3QgZGVzdHJveSBpdCwgYmVjYXVzZSB2aWV3cyBhcmUgZXhwbGljaXRseSBkZXN0cm95ZWQgd2hlbiB2aWV3IGhhbmRsZXMgYXJlIHJlbW92ZWQuXG4gICAgLy8gT3RoZXJ3aXNlLCBtb3ZpbmcgdGhlIGxhc3QgdmlldyB0byBhbm90aGVyIHBhcnQgd291bGQgZmFpbCBiZWNhdXNlIHRoZSB2aWV3IHdvdWxkIGFscmVhZHkgYmUgZGVzdHJveWVkLlxuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXdJZCkge1xuICAgICAgdGhpcy5fdmlld1JlZ2lzdHJ5LmdldCh0aGlzLmFjdGl2ZVZpZXdJZCwge29yRWxzZTogbnVsbH0pPy5wb3J0YWwuZGV0YWNoKCk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHBzZXVkby10eXBlIGZvciB0aGUgYWN0dWFsIHtAbGluayBQYXJ0Q29tcG9uZW50fSB3aGljaCBtdXN0IG5vdCBiZSByZWZlcmVuY2VkIGluIG9yZGVyIHRvIGF2b2lkIGltcG9ydCBjeWNsZXMuXG4gKi9cbnR5cGUgUGFydENvbXBvbmVudCA9IGFueTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcHNldWRvLXR5cGUgZm9yIHRoZSBhY3R1YWwge0BsaW5rIE1haW5BcmVhTGF5b3V0Q29tcG9uZW50fSB3aGljaCBtdXN0IG5vdCBiZSByZWZlcmVuY2VkIGluIG9yZGVyIHRvIGF2b2lkIGltcG9ydCBjeWNsZXMuXG4gKi9cbnR5cGUgTWFpbkFyZWFMYXlvdXRDb21wb25lbnQgPSBhbnk7XG4iXX0=
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiybV3b3JrYmVuY2gtcGFydC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL3BhcnQvybV3b3JrYmVuY2gtcGFydC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUNILE9BQU8sRUFBQyxlQUFlLEVBQWMsT0FBTyxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0RSxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0MsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsZUFBZSxFQUFnQixNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1RSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUcxRSxNQUFNLE9BQU8sY0FBYztJQW1CekIsWUFBNEIsRUFBVSxFQUFFLE9BQTRFO1FBQXhGLE9BQUUsR0FBRixFQUFFLENBQVE7UUFmckIscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGVB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QUFDLENBQUM7UUFDakUsMkVBQTJFO1FBQzNFLFdBQVcsQ0FBQyxDQUFDLE1BQTJCLEVBQVcsRUFBRSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsRUFDN0gsb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNLLGVBQWU7UUFDckIsSUFBSSxDQUFDLE9BQU87YUFDVCxJQUFJLENBQ0gsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUNmLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDbEUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsZ0lBQWdJO1FBQ2hJLDBHQUEwRztRQUMxRyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUM1RTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMiBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtpbmplY3QsIEluamVjdG9yLCBydW5JbkluamVjdGlvbkNvbnRleHR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBcnJheXN9IGZyb20gJ0BzY2lvbi90b29sa2l0L3V0aWwnO1xuaW1wb3J0IHtXb3JrYmVuY2hQYXJ0QWN0aW9ufSBmcm9tICcuLi93b3JrYmVuY2gubW9kZWwnO1xuaW1wb3J0IHtXb3JrYmVuY2hQYXJ0fSBmcm9tICcuL3dvcmtiZW5jaC1wYXJ0Lm1vZGVsJztcbmltcG9ydCB7V29ya2JlbmNoUm91dGVyfSBmcm9tICcuLi9yb3V0aW5nL3dvcmtiZW5jaC1yb3V0ZXIuc2VydmljZSc7XG5pbXBvcnQge1dvcmtiZW5jaFZpZXdSZWdpc3RyeX0gZnJvbSAnLi4vdmlldy93b3JrYmVuY2gtdmlldy5yZWdpc3RyeSc7XG5pbXBvcnQge0NvbXBvbmVudFBvcnRhbCwgQ29tcG9uZW50VHlwZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge0FjdGl2YXRpb25JbnN0YW50UHJvdmlkZXJ9IGZyb20gJy4uL2FjdGl2YXRpb24taW5zdGFudC5wcm92aWRlcic7XG5pbXBvcnQge1dvcmtiZW5jaFBhcnRBY3Rpb25SZWdpc3RyeX0gZnJvbSAnLi93b3JrYmVuY2gtcGFydC1hY3Rpb24ucmVnaXN0cnknO1xuaW1wb3J0IHtmaWx0ZXJBcnJheX0gZnJvbSAnQHNjaW9uL3Rvb2xraXQvb3BlcmF0b3JzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7ybVXb3JrYmVuY2hMYXlvdXR9IGZyb20gJy4uL2xheW91dC/JtXdvcmtiZW5jaC1sYXlvdXQnO1xuaW1wb3J0IHtXb3JrYmVuY2hMYXlvdXRTZXJ2aWNlfSBmcm9tICcuLi9sYXlvdXQvd29ya2JlbmNoLWxheW91dC5zZXJ2aWNlJztcbmltcG9ydCB7Vmlld0lkfSBmcm9tICcuLi92aWV3L3dvcmtiZW5jaC12aWV3Lm1vZGVsJztcblxuZXhwb3J0IGNsYXNzIMm1V29ya2JlbmNoUGFydCBpbXBsZW1lbnRzIFdvcmtiZW5jaFBhcnQge1xuXG4gIHByaXZhdGUgX2FjdGl2YXRpb25JbnN0YW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfd29ya2JlbmNoUm91dGVyID0gaW5qZWN0KFdvcmtiZW5jaFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3dvcmtiZW5jaExheW91dFNlcnZpY2UgPSBpbmplY3QoV29ya2JlbmNoTGF5b3V0U2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZpZXdSZWdpc3RyeSA9IGluamVjdChXb3JrYmVuY2hWaWV3UmVnaXN0cnkpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9hY3RpdmF0aW9uSW5zdGFudFByb3ZpZGVyID0gaW5qZWN0KEFjdGl2YXRpb25JbnN0YW50UHJvdmlkZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJ0QWN0aW9uUmVnaXN0cnkgPSBpbmplY3QoV29ya2JlbmNoUGFydEFjdGlvblJlZ2lzdHJ5KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcGFydENvbXBvbmVudDogQ29tcG9uZW50VHlwZTxQYXJ0Q29tcG9uZW50IHwgTWFpbkFyZWFMYXlvdXRDb21wb25lbnQ+O1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGFjdGl2ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHVibGljIHJlYWRvbmx5IHZpZXdJZHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxWaWV3SWRbXT4oW10pO1xuICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlVmlld0lkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Vmlld0lkIHwgbnVsbD4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBhY3Rpb25zJDogT2JzZXJ2YWJsZTxyZWFkb25seSBXb3JrYmVuY2hQYXJ0QWN0aW9uW10+O1xuXG4gIHByaXZhdGUgX2lzSW5NYWluQXJlYTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgaWQ6IHN0cmluZywgb3B0aW9uczoge2NvbXBvbmVudDogQ29tcG9uZW50VHlwZTxQYXJ0Q29tcG9uZW50IHwgTWFpbkFyZWFMYXlvdXRDb21wb25lbnQ+fSkge1xuICAgIHRoaXMuX3BhcnRDb21wb25lbnQgPSBvcHRpb25zLmNvbXBvbmVudDtcbiAgICB0aGlzLmFjdGlvbnMkID0gdGhpcy5vYnNlcnZlUGFydEFjdGlvbnMkKCk7XG4gICAgdGhpcy50b3VjaE9uQWN0aXZhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIHRoZSBwb3J0YWwgdXNpbmcgdGhlIGdpdmVuIGluamVjdGlvbiBjb250ZXh0LlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZVBvcnRhbEZyb21JbmplY3Rpb25Db250ZXh0KGluamVjdGlvbkNvbnRleHQ6IEluamVjdG9yKTogQ29tcG9uZW50UG9ydGFsPFBhcnRDb21wb25lbnQgfCBNYWluQXJlYUxheW91dENvbXBvbmVudD4ge1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHBhcmVudDogaW5qZWN0aW9uQ29udGV4dCxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7cHJvdmlkZTogybVXb3JrYmVuY2hQYXJ0LCB1c2VWYWx1ZTogdGhpc30sXG4gICAgICAgIHtwcm92aWRlOiBXb3JrYmVuY2hQYXJ0LCB1c2VFeGlzdGluZzogybVXb3JrYmVuY2hQYXJ0fSxcbiAgICAgIF0sXG4gICAgfSk7XG4gICAgcmV0dXJuIG5ldyBDb21wb25lbnRQb3J0YWwodGhpcy5fcGFydENvbXBvbmVudCwgbnVsbCwgaW5qZWN0b3IsIG51bGwsIG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBpbnZva2VkIHRvIHVwZGF0ZSB0aGlzIHdvcmtiZW5jaCBtb2RlbCBvYmplY3Qgd2hlbiB0aGUgd29ya2JlbmNoIGxheW91dCBjaGFuZ2VzLlxuICAgKi9cbiAgcHVibGljIG9uTGF5b3V0Q2hhbmdlKGxheW91dDogybVXb3JrYmVuY2hMYXlvdXQpOiB2b2lkIHtcbiAgICB0aGlzLl9pc0luTWFpbkFyZWEgPz89IGxheW91dC5oYXNQYXJ0KHRoaXMuaWQsIHtncmlkOiAnbWFpbkFyZWEnfSk7XG4gICAgY29uc3QgcGFydCA9IGxheW91dC5wYXJ0KHtwYXJ0SWQ6IHRoaXMuaWR9KTtcbiAgICBjb25zdCBhY3RpdmUgPSBsYXlvdXQuYWN0aXZlUGFydCh7Z3JpZDogdGhpcy5faXNJbk1haW5BcmVhID8gJ21haW5BcmVhJyA6ICd3b3JrYmVuY2gnfSk/LmlkID09PSB0aGlzLmlkO1xuICAgIGNvbnN0IHByZXZWaWV3SWRzID0gdGhpcy52aWV3SWRzJC52YWx1ZTtcbiAgICBjb25zdCBjdXJyVmlld0lkcyA9IHBhcnQudmlld3MubWFwKHZpZXcgPT4gdmlldy5pZCk7XG5cbiAgICAvLyBVcGRhdGUgYWN0aXZlIHBhcnQgaWYgY2hhbmdlZFxuICAgIGlmICh0aGlzLmFjdGl2ZSAhPT0gYWN0aXZlKSB7XG4gICAgICB0aGlzLmFjdGl2ZSQubmV4dChhY3RpdmUpO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSB2aWV3cyBpZiBjaGFuZ2VkXG4gICAgaWYgKCFBcnJheXMuaXNFcXVhbChwcmV2Vmlld0lkcywgY3VyclZpZXdJZHMsIHtleGFjdE9yZGVyOiB0cnVlfSkpIHtcbiAgICAgIHRoaXMudmlld0lkcyQubmV4dChjdXJyVmlld0lkcyk7XG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIGFjdGl2ZSB2aWV3IGlmIGNoYW5nZWRcbiAgICBpZiAodGhpcy5hY3RpdmVWaWV3SWQgIT09IHBhcnQuYWN0aXZlVmlld0lkKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXdJZCQubmV4dChwYXJ0LmFjdGl2ZVZpZXdJZCA/PyBudWxsKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpZXdJZHMoKTogVmlld0lkW10ge1xuICAgIHJldHVybiB0aGlzLnZpZXdJZHMkLnZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVWaWV3SWQoKTogVmlld0lkIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlVmlld0lkJC52YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY3RpdmF0ZXMgdGhpcyBwYXJ0LlxuICAgKlxuICAgKiBOb3RlOiBUaGlzIGluc3RydWN0aW9uIHJ1bnMgYXN5bmNocm9ub3VzbHkgdmlhIFVSTCByb3V0aW5nLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGFjdGl2YXRlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICh0aGlzLmFjdGl2ZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgY3VycmVudExheW91dCA9IHRoaXMuX3dvcmtiZW5jaExheW91dFNlcnZpY2UubGF5b3V0O1xuICAgIHJldHVybiB0aGlzLl93b3JrYmVuY2hSb3V0ZXIubmF2aWdhdGUoXG4gICAgICBsYXlvdXQgPT4gY3VycmVudExheW91dCA9PT0gbGF5b3V0ID8gbGF5b3V0LmFjdGl2YXRlUGFydCh0aGlzLmlkKSA6IG51bGwsIC8vIGNhbmNlbCBuYXZpZ2F0aW9uIGlmIHRoZSBsYXlvdXQgaGFzIGJlY29tZSBzdGFsZVxuICAgICAge3NraXBMb2NhdGlvbkNoYW5nZTogdHJ1ZX0sIC8vIGRvIG5vdCBhZGQgcGFydCBhY3RpdmF0aW9uIGludG8gYnJvd3NlciBoaXN0b3J5IHN0YWNrXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZSQudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2YXRpb25JbnN0YW50KCk6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2YXRpb25JbnN0YW50O1xuICB9XG5cbiAgcHVibGljIGdldCBpc0luTWFpbkFyZWEoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzSW5NYWluQXJlYSA/PyBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyBhY3Rpb25zIHRoYXQgaGF2ZSBjb250cmlidXRlZCB0byB0aGlzIHBhcnQgYW5kIHRoZSBjdXJyZW50bHkgYWN0aXZlIHZpZXcuXG4gICAqL1xuICBwcml2YXRlIG9ic2VydmVQYXJ0QWN0aW9ucyQoKTogT2JzZXJ2YWJsZTxXb3JrYmVuY2hQYXJ0QWN0aW9uW10+IHtcbiAgICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgcmV0dXJuIHRoaXMuX3BhcnRBY3Rpb25SZWdpc3RyeS5hY3Rpb25zJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcChhY3Rpb25zID0+IHRoaXMuYWN0aXZlVmlld0lkJC5waXBlKG1hcCgoKSA9PiBhY3Rpb25zKSkpLFxuICAgICAgICAvLyBSdW4gaW4gaW5qZWN0aW9uIGNvbnRleHQgZm9yIGBjYW5NYXRjaGAgZnVuY3Rpb24gdG8gaW5qZWN0IGRlcGVuZGVuY2llcy5cbiAgICAgICAgZmlsdGVyQXJyYXkoKGFjdGlvbjogV29ya2JlbmNoUGFydEFjdGlvbik6IGJvb2xlYW4gPT4gcnVuSW5JbmplY3Rpb25Db250ZXh0KGluamVjdG9yLCAoKSA9PiBhY3Rpb24uY2FuTWF0Y2g/Lih0aGlzKSA/PyB0cnVlKSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGFjdGl2YXRpb24gaW5zdGFudCB3aGVuIHRoaXMgcGFydCBpcyBhY3RpdmF0ZWQuXG4gICAqL1xuICBwcml2YXRlIHRvdWNoT25BY3RpdmF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoQm9vbGVhbiksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGlvbkluc3RhbnQgPSB0aGlzLl9hY3RpdmF0aW9uSW5zdGFudFByb3ZpZGVyLm5vdygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgLy8gSU1QT1JUQU5UOiBPbmx5IGRldGFjaCB0aGUgYWN0aXZlIHZpZXcsIG5vdCBkZXN0cm95IGl0LCBiZWNhdXNlIHZpZXdzIGFyZSBleHBsaWNpdGx5IGRlc3Ryb3llZCB3aGVuIHZpZXcgaGFuZGxlcyBhcmUgcmVtb3ZlZC5cbiAgICAvLyBPdGhlcndpc2UsIG1vdmluZyB0aGUgbGFzdCB2aWV3IHRvIGFub3RoZXIgcGFydCB3b3VsZCBmYWlsIGJlY2F1c2UgdGhlIHZpZXcgd291bGQgYWxyZWFkeSBiZSBkZXN0cm95ZWQuXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlld0lkKSB7XG4gICAgICB0aGlzLl92aWV3UmVnaXN0cnkuZ2V0KHRoaXMuYWN0aXZlVmlld0lkLCB7b3JFbHNlOiBudWxsfSk/LnBvcnRhbC5kZXRhY2goKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcHNldWRvLXR5cGUgZm9yIHRoZSBhY3R1YWwge0BsaW5rIFBhcnRDb21wb25lbnR9IHdoaWNoIG11c3Qgbm90IGJlIHJlZmVyZW5jZWQgaW4gb3JkZXIgdG8gYXZvaWQgaW1wb3J0IGN5Y2xlcy5cbiAqL1xudHlwZSBQYXJ0Q29tcG9uZW50ID0gYW55O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwc2V1ZG8tdHlwZSBmb3IgdGhlIGFjdHVhbCB7QGxpbmsgTWFpbkFyZWFMYXlvdXRDb21wb25lbnR9IHdoaWNoIG11c3Qgbm90IGJlIHJlZmVyZW5jZWQgaW4gb3JkZXIgdG8gYXZvaWQgaW1wb3J0IGN5Y2xlcy5cbiAqL1xudHlwZSBNYWluQXJlYUxheW91dENvbXBvbmVudCA9IGFueTtcbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2018-2024 Swiss Federal Railways
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made
|
|
5
|
+
* available under the terms of the Eclipse Public License 2.0
|
|
6
|
+
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
7
|
+
*
|
|
8
|
+
* SPDX-License-Identifier: EPL-2.0
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2JlbmNoLXBlcnNwZWN0aXZlLW1pZ3JhdGlvbi12MS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL3BlcnNwZWN0aXZlL21pZ3JhdGlvbi9tb2RlbC93b3JrYmVuY2gtcGVyc3BlY3RpdmUtbWlncmF0aW9uLXYxLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0NvbW1hbmRzfSBmcm9tICcuLi8uLi8uLi9yb3V0aW5nL3JvdXRpbmcubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBlcnNwZWN0aXZlRGF0YVYxIHtcbiAgaW5pdGlhbFdvcmtiZW5jaEdyaWQ6IHN0cmluZztcbiAgd29ya2JlbmNoR3JpZDogc3RyaW5nO1xuICB2aWV3T3V0bGV0czoge1t2aWV3SWQ6IHN0cmluZ106IENvbW1hbmRzfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2018-2024 Swiss Federal Railways
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made
|
|
5
|
+
* available under the terms of the Eclipse Public License 2.0
|
|
6
|
+
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
7
|
+
*
|
|
8
|
+
* SPDX-License-Identifier: EPL-2.0
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2JlbmNoLXBlcnNwZWN0aXZlLW1pZ3JhdGlvbi12Mi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL3BlcnNwZWN0aXZlL21pZ3JhdGlvbi9tb2RlbC93b3JrYmVuY2gtcGVyc3BlY3RpdmUtbWlncmF0aW9uLXYyLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5leHBvcnQgaW50ZXJmYWNlIE1QZXJzcGVjdGl2ZUxheW91dFYyIHtcbiAgcmVmZXJlbmNlTGF5b3V0OiB7XG4gICAgd29ya2JlbmNoR3JpZDogc3RyaW5nO1xuICAgIHZpZXdPdXRsZXRzOiBzdHJpbmc7XG4gIH07XG4gIHVzZXJMYXlvdXQ6IHtcbiAgICB3b3JrYmVuY2hHcmlkOiBzdHJpbmc7XG4gICAgdmlld091dGxldHM6IHN0cmluZztcbiAgfTtcbn1cbiJdfQ==
|