@finsemble/finsemble-ui 6.3.1 → 6.3.2
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 +28 -28
- package/package.json +1 -1
- package/react/actions/favoriteActions.js.map +1 -1
- package/react/actions/linkerActions.js.map +1 -1
- package/react/actions/menuActions.js.map +1 -1
- package/react/actions/rootActions.js.map +1 -1
- package/react/actions/searchActions.js.map +1 -1
- package/react/actions/smartDesktopDesignerActions.js.map +1 -1
- package/react/actions/toolbarActions.js.map +1 -1
- package/react/actions/workspaceActions.js.map +1 -1
- package/react/assets/css/advancedAppLauncher.css +636 -636
- package/react/assets/css/appCatalog.css +1069 -1069
- package/react/assets/css/authentication.css +78 -78
- package/react/assets/css/button.css +220 -220
- package/react/assets/css/core/formElements.css +23 -23
- package/react/assets/css/core/icons.css +69 -69
- package/react/assets/css/core/notifications.css +75 -75
- package/react/assets/css/core/windowFrame.css +36 -36
- package/react/assets/css/dashbar.css +78 -78
- package/react/assets/css/defaultTheme.css +356 -356
- package/react/assets/css/dialogs.css +158 -158
- package/react/assets/css/favorites.css +101 -101
- package/react/assets/css/finsemble.css +38 -38
- package/react/assets/css/focus.css +4 -4
- package/react/assets/css/font-finance.css +385 -385
- package/react/assets/css/fonts/Open_Sans/LICENSE.txt +202 -202
- package/react/assets/css/fonts/Open_Sans/OpenSans-Definition.css +118 -118
- package/react/assets/css/fonts/font-finance.svg +124 -124
- package/react/assets/css/fonts/icons-reference.html +1174 -1174
- package/react/assets/css/linkerWindow.css +124 -124
- package/react/assets/css/menus.css +195 -195
- package/react/assets/css/notificationsCenter.css +597 -597
- package/react/assets/css/processMonitor.css +213 -213
- package/react/assets/css/search.css +128 -128
- package/react/assets/css/shared/animations.css +99 -99
- package/react/assets/css/tags.css +136 -136
- package/react/assets/css/toolbar.css +413 -413
- package/react/assets/css/userPreferences.css +568 -568
- package/react/assets/css/windowTitleBar.css +652 -652
- package/react/assets/icons/check-square.svg +5 -5
- package/react/assets/icons/check.svg +3 -3
- package/react/assets/icons/chevron-left.svg +3 -3
- package/react/assets/icons/chevron-right.svg +3 -3
- package/react/assets/icons/copy.svg +10 -10
- package/react/assets/icons/exclamation-circle.svg +4 -4
- package/react/assets/icons/external-link.svg +12 -12
- package/react/assets/icons/flag.svg +10 -10
- package/react/assets/icons/folder.svg +3 -3
- package/react/assets/icons/font.svg +3 -3
- package/react/assets/icons/globe.svg +3 -3
- package/react/assets/icons/hdd.svg +9 -9
- package/react/assets/icons/key.svg +10 -10
- package/react/assets/icons/life-ring.svg +3 -3
- package/react/assets/icons/lock.svg +5 -5
- package/react/assets/icons/magic.svg +15 -15
- package/react/assets/icons/moon.svg +10 -10
- package/react/assets/icons/paint-roller.svg +3 -3
- package/react/assets/icons/pencil.svg +10 -10
- package/react/assets/icons/plus.svg +3 -3
- package/react/assets/icons/question-circle.svg +5 -5
- package/react/assets/icons/search.svg +3 -3
- package/react/assets/icons/sun.svg +9 -9
- package/react/assets/icons/times.svg +3 -3
- package/react/assets/icons/toggle-off.svg +6 -6
- package/react/assets/icons/toggle-on.svg +6 -6
- package/react/assets/icons/tools.svg +3 -3
- package/react/assets/icons/trash.svg +12 -12
- package/react/assets/icons/upload.svg +10 -10
- package/react/assets/icons/window.svg +3 -3
- package/react/componentTemplateGenerator.js +85 -85
- package/react/componentTemplateGenerator.js.map +1 -1
- package/react/components/FinsembleProvider.js.map +1 -1
- package/react/components/appCatalog/AppCatalog.js.map +1 -1
- package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
- package/react/components/appCatalog/components/AppCard.js.map +1 -1
- package/react/components/appCatalog/components/AppList.js.map +1 -1
- package/react/components/appCatalog/components/AppResults.js.map +1 -1
- package/react/components/appCatalog/components/Carousel.js.map +1 -1
- package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
- package/react/components/appCatalog/components/Hero.js.map +1 -1
- package/react/components/appCatalog/components/Home.js.map +1 -1
- package/react/components/appCatalog/components/SearchBar.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/ImageCarousel.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/ReleaseNotes.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/SupportNotes.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/VersionNotes.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/defaults.js.map +1 -1
- package/react/components/appCatalog/components/Tag.js.map +1 -1
- package/react/components/appCatalog/components/Toast.js.map +1 -1
- package/react/components/appCatalog/components/helpers.js.map +1 -1
- package/react/components/appCatalog/index.js.map +1 -1
- package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
- package/react/components/appCatalog/modules/FDC3.js.map +1 -1
- package/react/components/appCatalog/stores/appStore.js.map +1 -1
- package/react/components/appCatalog/stores/storeActions.js.map +1 -1
- package/react/components/common/Button.js.map +1 -1
- package/react/components/common/ButtonIcon.js.map +1 -1
- package/react/components/common/ButtonRow.js.map +1 -1
- package/react/components/common/ButtonTile.js.map +1 -1
- package/react/components/common/Checkbox.js.map +1 -1
- package/react/components/common/ColorPicker.js.map +1 -1
- package/react/components/common/DropZone.js.map +1 -1
- package/react/components/common/DropdownButton.js.map +1 -1
- package/react/components/common/FileInput.js.map +1 -1
- package/react/components/common/FinsembleIcon.js.map +1 -1
- package/react/components/common/FinsembleSelect.js.map +1 -1
- package/react/components/common/FinsembleToggle.js.map +1 -1
- package/react/components/common/FontSizeSelector.js.map +1 -1
- package/react/components/common/Header.js.map +1 -1
- package/react/components/common/ImagePreview.js.map +1 -1
- package/react/components/common/LoadingSpinner.js.map +1 -1
- package/react/components/common/Tab.js.map +1 -1
- package/react/components/common/Tooltip.js.map +1 -1
- package/react/components/common/css/application-edit-page.css +117 -117
- package/react/components/common/css/application-list.css +47 -47
- package/react/components/common/css/button.css +164 -164
- package/react/components/common/css/color-picker.css +52 -52
- package/react/components/common/css/drop-zone.css +17 -17
- package/react/components/common/css/file-input.css +49 -49
- package/react/components/common/css/header.css +43 -43
- package/react/components/common/css/icon.css +13 -13
- package/react/components/common/css/image-preview.css +57 -57
- package/react/components/common/css/loading-spinner.css +39 -39
- package/react/components/common/css/selector.css +51 -51
- package/react/components/common/css/styles.css +128 -128
- package/react/components/common/css/tab.css +56 -56
- package/react/components/common/css/toggle.css +32 -32
- package/react/components/common/css/tooltip.css +78 -78
- package/react/components/common/file_helpers.js.map +1 -1
- package/react/components/common/fixtures/FinsembleIcon.css +4 -4
- package/react/components/common/helpers.js.map +1 -1
- package/react/components/common/stories/Button.stories.js.map +1 -1
- package/react/components/common/stories/ButtonIcon.stories.js.map +1 -1
- package/react/components/common/stories/ButtonRow.stories.js.map +1 -1
- package/react/components/common/stories/ButtonTile.stories.js.map +1 -1
- package/react/components/common/stories/Checkbox.stories.js.map +1 -1
- package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
- package/react/components/common/stories/DropZone.stories.js.map +1 -1
- package/react/components/common/stories/DropdownButton.stories.js.map +1 -1
- package/react/components/common/stories/FileInput.stories.js.map +1 -1
- package/react/components/common/stories/FinsembleIcon.stories.js.map +1 -1
- package/react/components/common/stories/FinsembleSelect.stories.js.map +1 -1
- package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
- package/react/components/common/stories/FontSizeSelector.stories.js.map +1 -1
- package/react/components/common/stories/Header.stories.js.map +1 -1
- package/react/components/common/stories/ImagePreview.stories.js.map +1 -1
- package/react/components/common/stories/LoadingSpinner.stories.js.map +1 -1
- package/react/components/common/stories/Tab.stories.js.map +1 -1
- package/react/components/common/stories/Tooltip.stories.js.map +1 -1
- package/react/components/common/tests/ButtonRow.spec.js.map +1 -1
- package/react/components/common/tests/Checkbox.spec.js.map +1 -1
- package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
- package/react/components/common/tests/DropZone.spec.js.map +1 -1
- package/react/components/common/tests/FileInput.spec.js.map +1 -1
- package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
- package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
- package/react/components/common/tests/Header.spec.js.map +1 -1
- package/react/components/common/tests/ImagePreview.spec.js.map +1 -1
- package/react/components/common/tests/Tab.spec.js.map +1 -1
- package/react/components/common/tests/Tooltip.spec.js.map +1 -1
- package/react/components/favorites/FavoriteMaker.js.map +1 -1
- package/react/components/favorites/FavoritesShell.js.map +1 -1
- package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
- package/react/components/favorites/FavoritesShell.stories.js.map +1 -1
- package/react/components/favorites/index.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.css +126 -126
- package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
- package/react/components/icon/Icon.js.map +1 -1
- package/react/components/icon/index.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
- package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
- package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
- package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
- package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialog.stories.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogButton.stories.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogQuestion.stories.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogTextInput.stories.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialog.spec.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialogQuestion.spec.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
- package/react/components/linker/LinkerMenu.js.map +1 -1
- package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
- package/react/components/linker/index.js.map +1 -1
- package/react/components/linker/remoteRedux.js.map +1 -1
- package/react/components/menu/Menu.js.map +1 -1
- package/react/components/menu/MenuAutoResizer.js.map +1 -1
- package/react/components/menu/MenuContent.js.map +1 -1
- package/react/components/menu/MenuHotKey.js.map +1 -1
- package/react/components/menu/MenuItem.js.map +1 -1
- package/react/components/menu/MenuPortal.js.map +1 -1
- package/react/components/menu/MenuShell.js.map +1 -1
- package/react/components/menu/MenuToggle.js.map +1 -1
- package/react/components/menu/index.js.map +1 -1
- package/react/components/menu/keyboardNavigation.js.map +1 -1
- package/react/components/menu/menuContext.js.map +1 -1
- package/react/components/menu/menuHelpers.js.map +1 -1
- package/react/components/notifications/components/NoNotifications.js.map +1 -1
- package/react/components/notifications/components/drawer/Drawer.js.map +1 -1
- package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
- package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
- package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
- package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
- package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
- package/react/components/notifications/components/shared/IconButton.js.map +1 -1
- package/react/components/notifications/components/shared/NotificationCardShell.js +1 -1
- package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
- package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyContentLogo.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderLogo.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js.map +1 -1
- package/react/components/notifications/components/views/CardView.js.map +1 -1
- package/react/components/notifications/components/views/ListView.js +1 -1
- package/react/components/notifications/components/views/ListView.js.map +1 -1
- package/react/components/notifications/components/views/NotificationDetailsView.js.map +1 -1
- package/react/components/notifications/constants.js.map +1 -1
- package/react/components/notifications/icons/Card.js.map +1 -1
- package/react/components/notifications/icons/Chevron.js.map +1 -1
- package/react/components/notifications/icons/CloseIcon.js.map +1 -1
- package/react/components/notifications/icons/EnvelopeClose.js.map +1 -1
- package/react/components/notifications/icons/EnvelopeOpen.js.map +1 -1
- package/react/components/notifications/icons/SnoozeIcon.js.map +1 -1
- package/react/components/notifications/index.js.map +1 -1
- package/react/components/notifications/notificationsContext.js.map +1 -1
- package/react/components/notifications/types.js.map +1 -1
- package/react/components/notifications/utils.js.map +1 -1
- package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
- package/react/components/processMonitor/ProcessMonitorTypes.js.map +1 -1
- package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
- package/react/components/processMonitor/components/ListHeader.js.map +1 -1
- package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
- package/react/components/processMonitor/constants.js.map +1 -1
- package/react/components/processMonitor/helpers.js.map +1 -1
- package/react/components/processMonitor/helpers.spec.js.map +1 -1
- package/react/components/processMonitor/index.js.map +1 -1
- package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
- package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
- package/react/components/quickComponentForm/index.js.map +1 -1
- package/react/components/quickComponentForm/quickComponent.css +3 -3
- package/react/components/search/Highlight.js.map +1 -1
- package/react/components/search/Highlight.spec.js.map +1 -1
- package/react/components/search/Highlight.stories.js.map +1 -1
- package/react/components/search/Search.js.map +1 -1
- package/react/components/search/SearchBestMatch.js.map +1 -1
- package/react/components/search/SearchInput.js.map +1 -1
- package/react/components/search/SearchProviderResults.js.map +1 -1
- package/react/components/search/SearchResult.js.map +1 -1
- package/react/components/search/SearchResults.js.map +1 -1
- package/react/components/search/index.js.map +1 -1
- package/react/components/shared/Animate.js.map +1 -1
- package/react/components/shared/BellIcon.js.map +1 -1
- package/react/components/shared/BellIconCrossed.js.map +1 -1
- package/react/components/shared/Button.js.map +1 -1
- package/react/components/shared/ConditionalWrapper.js.map +1 -1
- package/react/components/shared/DefaultDropdownButton.js.map +1 -1
- package/react/components/shared/NavigationButton.js.map +1 -1
- package/react/components/shared/Tag.js.map +1 -1
- package/react/components/shared/TagsMenu.js.map +1 -1
- package/react/components/shared/addProtocolToValidURL.js.map +1 -1
- package/react/components/shared/linkerUtil.js.map +1 -1
- package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
- package/react/components/shared/tests/DefaultDropdownButton.spec.js.map +1 -1
- package/react/components/shared/tests/addProtocolToValidURL.spec.js.map +1 -1
- package/react/components/shared/validateURL.js.map +1 -1
- package/react/components/shared/validateURL.spec.js.map +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.css +3 -3
- package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.spec.js.map +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.stories.js.map +1 -1
- package/react/components/singleInputDialog/index.js.map +1 -1
- package/react/components/smartDesktopDesigner/AppEditAccess.js.map +1 -1
- package/react/components/smartDesktopDesigner/AppEditPage.js.map +1 -1
- package/react/components/smartDesktopDesigner/Appearance.css +94 -94
- package/react/components/smartDesktopDesigner/Appearance.helpers.js.map +1 -1
- package/react/components/smartDesktopDesigner/Appearance.js.map +1 -1
- package/react/components/smartDesktopDesigner/Application.js.map +1 -1
- package/react/components/smartDesktopDesigner/ApplicationEdit.js.map +1 -1
- package/react/components/smartDesktopDesigner/ApplicationList.js.map +1 -1
- package/react/components/smartDesktopDesigner/ApplicationSetup.js.map +1 -1
- package/react/components/smartDesktopDesigner/Applications.js.map +1 -1
- package/react/components/smartDesktopDesigner/AssetsPage.css +26 -26
- package/react/components/smartDesktopDesigner/AssetsPage.js.map +1 -1
- package/react/components/smartDesktopDesigner/Authentication.js.map +1 -1
- package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js.map +1 -1
- package/react/components/smartDesktopDesigner/Content.js.map +1 -1
- package/react/components/smartDesktopDesigner/CurrentView.js.map +1 -1
- package/react/components/smartDesktopDesigner/Export.js.map +1 -1
- package/react/components/smartDesktopDesigner/ExportCloud.js.map +1 -1
- package/react/components/smartDesktopDesigner/ExportDeployInfo.js.map +1 -1
- package/react/components/smartDesktopDesigner/ExportZip.js.map +1 -1
- package/react/components/smartDesktopDesigner/GettingStarted.js.map +1 -1
- package/react/components/smartDesktopDesigner/Navigation.js.map +1 -1
- package/react/components/smartDesktopDesigner/ProjectErrors.js.map +1 -1
- package/react/components/smartDesktopDesigner/ProjectHeader.js.map +1 -1
- package/react/components/smartDesktopDesigner/Publish.js.map +1 -1
- package/react/components/smartDesktopDesigner/PublishProgress.js.map +1 -1
- package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
- package/react/components/smartDesktopDesigner/ThemePage.css +110 -110
- package/react/components/smartDesktopDesigner/ThemePage.js.map +1 -1
- package/react/components/smartDesktopDesigner/Themes.js.map +1 -1
- package/react/components/smartDesktopDesigner/View.js.map +1 -1
- package/react/components/smartDesktopDesigner/common/fsbl_functions.js.map +1 -1
- package/react/components/smartDesktopDesigner/common/getCSSVars.js.map +1 -1
- package/react/components/smartDesktopDesigner/common/views.js.map +1 -1
- package/react/components/smartDesktopDesigner/css/appearance.css +10 -10
- package/react/components/smartDesktopDesigner/css/applications.css +127 -127
- package/react/components/smartDesktopDesigner/css/authentication.css +125 -125
- package/react/components/smartDesktopDesigner/css/buttons.css +12 -12
- package/react/components/smartDesktopDesigner/css/export.css +163 -163
- package/react/components/smartDesktopDesigner/css/getting-started.css +6 -6
- package/react/components/smartDesktopDesigner/css/nav.css +93 -93
- package/react/components/smartDesktopDesigner/css/project-errors.css +15 -15
- package/react/components/smartDesktopDesigner/css/project-header.css +121 -121
- package/react/components/smartDesktopDesigner/css/styles.css +179 -179
- package/react/components/smartDesktopDesigner/css/views.css +16 -16
- package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/apps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/configTemplate.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/exportProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/projectErrorsProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/publishProgress.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/themeProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/views.js.map +1 -1
- package/react/components/smartDesktopDesigner/sdd_helpers.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Appearance.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Applications.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/AssetsPage.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Authentication.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Export.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Navigation.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Publish.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ThemePage.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Themes.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ApplicationEdit.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ApplicationList.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ApplicationSetup.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Applications.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Authentication.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Export.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Navigation.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ProjectHeader.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Publish.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Themes.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/a11y_helper.js.map +1 -1
- package/react/components/smartDesktopDesigner/themeDefinitions.js.map +1 -1
- package/react/components/system/System.js.map +1 -1
- package/react/components/system/System.spec.js.map +1 -1
- package/react/components/system/System.stories.js.map +1 -1
- package/react/components/system/SystemTrayComponentShell.js.map +1 -1
- package/react/components/system/index.js.map +1 -1
- package/react/components/toolbar/AutoArrange.js.map +1 -1
- package/react/components/toolbar/DragHandle.js.map +1 -1
- package/react/components/toolbar/MinimizeAll.js.map +1 -1
- package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
- package/react/components/toolbar/MinimizeAll.stories.js.map +1 -1
- package/react/components/toolbar/NotificationControl.js.map +1 -1
- package/react/components/toolbar/RevealAll.js.map +1 -1
- package/react/components/toolbar/RevealAll.spec.js.map +1 -1
- package/react/components/toolbar/RevealAll.stories.js.map +1 -1
- package/react/components/toolbar/ToolbarIcon.js.map +1 -1
- package/react/components/toolbar/ToolbarSection.js.map +1 -1
- package/react/components/toolbar/ToolbarShell.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/SortBy.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/TagsList.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
- package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
- package/react/components/toolbar/appLauncher/DynamicAppLauncher.js.map +1 -1
- package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
- package/react/components/toolbar/appLauncher/appLauncher.css +30 -30
- package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
- package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
- package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
- package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
- package/react/components/toolbar/index.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +90 -90
- package/react/components/userPreferences/NotificationsPreferencesContext.js.map +1 -1
- package/react/components/userPreferences/UserPreferenceTypes.js.map +1 -1
- package/react/components/userPreferences/UserPreferences.js.map +1 -1
- package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
- package/react/components/userPreferences/UserPreferencesWrapper.js.map +1 -1
- package/react/components/userPreferences/components/ContentSection.js.map +1 -1
- package/react/components/userPreferences/components/LeftNav.js.map +1 -1
- package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
- package/react/components/userPreferences/components/content/DashbarEditorItem.js.map +1 -1
- package/react/components/userPreferences/components/content/General.js.map +1 -1
- package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
- package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/notificationViewsUtils.js.map +1 -1
- package/react/components/userPreferences/components/general/ScheduledRestart.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceButton.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceComponents.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceItem.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceItemList.js.map +1 -1
- package/react/components/userPreferences/index.js.map +1 -1
- package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
- package/react/components/userPreferences/stories/DashbarEditor.stories.js.map +1 -1
- package/react/components/userPreferences/stories/DashbarEditorItem.stories.js.map +1 -1
- package/react/components/userPreferences/stories/General.stories.js.map +1 -1
- package/react/components/userPreferences/stories/Notifications.stories.js.map +1 -1
- package/react/components/userPreferences/stories/NotificationsSourceTypes.stories.js.map +1 -1
- package/react/components/userPreferences/stories/NotificationsSources.stories.js.map +1 -1
- package/react/components/userPreferences/stories/UserPreferences.stories.js.map +1 -1
- package/react/components/userPreferences/stories/WorkspaceButton.stories.js.map +1 -1
- package/react/components/userPreferences/stories/WorkspaceComponents.stories.js.map +1 -1
- package/react/components/userPreferences/stories/WorkspaceItem.stories.js.map +1 -1
- package/react/components/userPreferences/stories/WorkspaceItemList.stories.js.map +1 -1
- package/react/components/userPreferences/stories/Workspaces.stories.js.map +1 -1
- package/react/components/userPreferences/tests/ContentSection.spec.js.map +1 -1
- package/react/components/userPreferences/tests/DashbarEditor.spec.js.map +1 -1
- package/react/components/userPreferences/tests/DashbarEditorItem.spec.js.map +1 -1
- package/react/components/userPreferences/tests/General.spec.js.map +1 -1
- package/react/components/userPreferences/tests/LeftNav.spec.js.map +1 -1
- package/react/components/userPreferences/tests/NotificationSourceTypes.spec.js.map +1 -1
- package/react/components/userPreferences/tests/Notifications.spec.js.map +1 -1
- package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js.map +1 -1
- package/react/components/userPreferences/tests/NotificationsSourcesPreferences.spec.js.map +1 -1
- package/react/components/userPreferences/tests/ScheduledRestart.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceButton.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceComponents.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceItem.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceItemList.spec.js.map +1 -1
- package/react/components/utils.js.map +1 -1
- package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
- package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
- package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
- package/react/components/windowTitleBar/components/center/TabRegion.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
- package/react/components/windowTitleBar/components/left/ShareButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
- package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
- package/react/components/windowTitleBar/index.js.map +1 -1
- package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
- package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js.map +1 -1
- package/react/components/windowTitleBar/windowTitleBarContext.js.map +1 -1
- package/react/components/yesNoDialog/Timer.spec.js.map +1 -1
- package/react/components/yesNoDialog/Timer.stories.js.map +1 -1
- package/react/components/yesNoDialog/YesNoDialog.css +3 -3
- package/react/components/yesNoDialog/YesNoDialog.js.map +1 -1
- package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
- package/react/components/yesNoDialog/YesNoDialog.stories.js.map +1 -1
- package/react/components/yesNoDialog/index.js.map +1 -1
- package/react/components/yesNoDialog/timer.js.map +1 -1
- package/react/enzymeSetup.js.map +1 -1
- package/react/hooks/index.js.map +1 -1
- package/react/hooks/useAuth.js.map +1 -1
- package/react/hooks/useDeepEffect.js.map +1 -1
- package/react/hooks/useFavorites.js.map +1 -1
- package/react/hooks/useFavoritesShell.js.map +1 -1
- package/react/hooks/useHotkey.js.map +1 -1
- package/react/hooks/useLinker.js.map +1 -1
- package/react/hooks/useMenu.js.map +1 -1
- package/react/hooks/useNotifications.js.map +1 -1
- package/react/hooks/useOutsideClickDetector.js.map +1 -1
- package/react/hooks/usePubSub.js.map +1 -1
- package/react/hooks/useSearch.js.map +1 -1
- package/react/hooks/useToolbar.js.map +1 -1
- package/react/hooks/useWorkspace.js.map +1 -1
- package/react/reducers/favoriteReducer.js.map +1 -1
- package/react/reducers/linkerReducer.js.map +1 -1
- package/react/reducers/menuReducer.js.map +1 -1
- package/react/reducers/rootReducer.js.map +1 -1
- package/react/reducers/searchReducer.js.map +1 -1
- package/react/reducers/smartDesktopDesignerReducer.js.map +1 -1
- package/react/reducers/toolbarReducer.js.map +1 -1
- package/react/reducers/workspaceReducer.js.map +1 -1
- package/react/store.js.map +1 -1
- package/react/types/advancedAppLauncherTypes.js.map +1 -1
- package/react/types/dashbarTypes.js.map +1 -1
- package/react/types/favoriteTypes.js.map +1 -1
- package/react/types/fdc3.js.map +1 -1
- package/react/types/hotkeyTypes.js.map +1 -1
- package/react/types/iconTypes.js.map +1 -1
- package/react/types/linkerTypes.js.map +1 -1
- package/react/types/searchTypes.js.map +1 -1
- package/react/types/smartDesktopDesignerTypes.js.map +1 -1
- package/react/types/windowTitleBar.js.map +1 -1
- package/react/types/workspaceTypes.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkerGroups.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/left/LinkerGroups.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM1C,MAAM,iBAAiB,GAA4B,GAAG,EAAE;;IACvD,MAAM,KAAK,GAAgB,WAAW,CAAC,CAAC,YAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAmB,MAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,0CAAG,eAAe,CAAC,IAAI,CAAC,0CAAE,cAAc,mCAAI,EAAE,CAAC;IACpG,MAAM,WAAW,GAAc,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,mCAAI,EAAE,CAAC;IAExD,OAAO,CACN,6BAAK,SAAS,EAAC,eAAe,IAC5B,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;;QAC5B,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAErD,MAAM,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,GAAG,CAAC;QACnC,OAAO,CACN,MAAM,IAAI,CACT,6BACC,GAAG,EAAE,OAAO,CAAC,IAAI,EACjB,SAAS,EAAE,+CAA+C,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,YAAY,EAAE,EACjG,KAAK,EAAE,WAAW,KAAK,EAAE,IAExB,KAAK,CACD,CACN,CACD,CAAC;IACH,CAAC,CAAC,CACG,CACN,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAA4B,GAAG,EAAE,CAAC,oBAAC,iBAAiB,OAAG,CAAC","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"LinkerGroups.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/left/LinkerGroups.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM1C,MAAM,iBAAiB,GAA4B,GAAG,EAAE;;IACvD,MAAM,KAAK,GAAgB,WAAW,CAAC,CAAC,YAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAmB,MAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,0CAAG,eAAe,CAAC,IAAI,CAAC,0CAAE,cAAc,mCAAI,EAAE,CAAC;IACpG,MAAM,WAAW,GAAc,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,mCAAI,EAAE,CAAC;IAExD,OAAO,CACN,6BAAK,SAAS,EAAC,eAAe,IAC5B,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;;QAC5B,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAErD,MAAM,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,GAAG,CAAC;QACnC,OAAO,CACN,MAAM,IAAI,CACT,6BACC,GAAG,EAAE,OAAO,CAAC,IAAI,EACjB,SAAS,EAAE,+CAA+C,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,YAAY,EAAE,EACjG,KAAK,EAAE,WAAW,KAAK,EAAE,IAExB,KAAK,CACD,CACN,CACD,CAAC;IACH,CAAC,CAAC,CACG,CACN,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAA4B,GAAG,EAAE,CAAC,oBAAC,iBAAiB,OAAG,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { LinkerStore } from \"../../../linker/remoteRedux\";\n\ntype Channel = LinkerStore[\"allChannels\"][0];\ntype JoinedChannels = string[];\n\nconst LinkerGroupsRedux: React.FunctionComponent = () => {\n\tconst state: LinkerStore = useSelector((currentState: any) => currentState);\n\tconst joinedChannels: JoinedChannels = state?.clients?.[finsembleWindow.name]?.joinedChannels ?? [];\n\tconst allChannels: Channel[] = state?.allChannels ?? [];\n\n\treturn (\n\t\t<div className=\"linker-groups\">\n\t\t\t{allChannels.map((channel) => {\n\t\t\t\tconst active = joinedChannels.includes(channel.name);\n\t\t\t\t// linker-${channel.label} is deprecated in favor of cssClassName\n\t\t\t\tconst label = channel.label ?? \"X\";\n\t\t\t\treturn (\n\t\t\t\t\tactive && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tkey={channel.name}\n\t\t\t\t\t\t\tclassName={`linker-group linker-group-accessible linker-${channel.label} ${channel.cssClassName}`}\n\t\t\t\t\t\t\ttitle={`Channel ${label}`}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n};\n\nexport const LinkerGroups: React.FunctionComponent = () => <LinkerGroupsRedux />;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkerGroupsDeprecated.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/left/LinkerGroupsDeprecated.jsx"],"names":[],"mappings":"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","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"LinkerGroupsDeprecated.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/left/LinkerGroupsDeprecated.jsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,IAAI,mBAAmB,CAAC;AACxB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,KAAK,CAAC,SAAS;IACxD,YAAY,KAAK;QAChB,KAAK,CAAC,KAAK,CAAC,CAAC;QAIb,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG;YACZ,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,QAAQ;YACvD,gBAAgB,EAAE,KAAK;SACvB,CAAC;IACH,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;IAOD,iBAAiB;QAEhB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,4BAA4B,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC/E,IAAI,GAAG,EAAE;gBACR,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;aACzD;YAGD,IAAI,CAAC,QAAQ,CAAC;gBACb,gBAAgB,EAAE,KAAK,IAAI,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;aACpE,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,mBAAmB,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACrF,CAAC;IAOD,oBAAoB;QACnB,mBAAmB,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACxF,CAAC;IASD,eAAe,CAAC,GAAG,EAAE,QAAQ;QAC5B,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IAQD,cAAc,CAAC,QAAQ;QACtB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,CAAC,EAAE,OAAO;QACjB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC;YACzC,OAAO,EAAE,OAAO;YAChB,cAAc,EAAE,IAAI;SACpB,CAAC,CAAC;IACJ,CAAC;IAQD,MAAM;QACL,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACxC,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,EAAE;YAC5B,IAAI,CAAC,gBAAgB,EAAE;gBACtB,OAAO,IAAI,CAAC;aACZ;iBAAM,IAAI,OAAO,CAAC,KAAK,EAAE;gBACzB,OAAO,OAAO,CAAC,KAAK,CAAC;aACrB;iBAAM;gBAEN,OAAO,wBAAwB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;aAC1F;QACF,CAAC,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACzB,OAAO,6BAAK,SAAS,EAAC,eAAe,GAAO,CAAC;SAC7C;QAKD,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAClD,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,mCAAmC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,IAAI,UAAU,GAAG,eAAe,MAAM,EAAE,CAAC;YACzC,OAAO,CACN,6BACC,GAAG,EAAE,OAAO,CAAC,IAAI,EACjB,SAAS,EAAE,UAAU,EACrB,KAAK,EAAE,WAAW,wBAAwB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,EAAE,EACtG,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,EACpC,SAAS,EAAE,UAAU,CAAC;oBACrB,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC/B,CAAC,IAEA,QAAQ,CAAC,OAAO,CAAC,CACb,CACN,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,6BAAK,SAAS,EAAC,eAAe,IAAE,QAAQ,CAAO,CAAC;IACxD,CAAC;CACD","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n *\n * This is a deprecated version of LinkerGroups that uses linkerClient. It is not compatible with FDC3 interop.\n */\nimport * as React from \"react\";\nimport { getStore } from \"../../stores/windowTitleBarStore\";\nimport { getChannelLabelFromIndex } from \"../../../shared/linkerUtil\";\nlet windowTitleBarStore;\nexport default class LinkerGroups extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\t/**\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\n\t\t */\n\t\twindowTitleBarStore = getStore();\n\t\tthis.bindCorrectContext();\n\t\tthis.state = {\n\t\t\tchannels: FSBL.Clients.LinkerClient.getState().channels,\n\t\t\taccessibleLinker: false,\n\t\t};\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof LinkerGroups\n\t */\n\tbindCorrectContext() {\n\t\tthis.onChannelChange = this.onChannelChange.bind(this);\n\t}\n\n\t/**\n\t * Add listeners to the store.\n\t *\n\t * @memberof LinkerGroups\n\t */\n\tcomponentDidMount() {\n\t\t// are we using the accessible linker?\n\t\tFSBL.Clients.ConfigClient.getValue(\"finsemble.accessibleLinker\", (err, value) => {\n\t\t\tif (err) {\n\t\t\t\tconsole.err(\"Error getting accessibleLinker value\", err);\n\t\t\t}\n\n\t\t\t// Default value for accessibleLinker is true.\n\t\t\tthis.setState({\n\t\t\t\taccessibleLinker: value && typeof value === \"boolean\" ? value : true,\n\t\t\t});\n\t\t});\n\t\twindowTitleBarStore.addListener({ field: \"Linker.channels\" }, this.onChannelChange);\n\t}\n\n\t/**\n\t * Remove listeners from the store.\n\t *\n\t * @memberof LinkerGroups\n\t */\n\tcomponentWillUnmount() {\n\t\twindowTitleBarStore.removeListener({ field: \"Linker.channels\" }, this.onChannelChange);\n\t}\n\n\t/**\n\t * When the user adds/removes a link in the linkerWindow, the values in the store will change, and this listener will be invoked.\n\t *\n\t * @param {any} err\n\t * @param {any} response\n\t * @memberof LinkerGroups\n\t */\n\tonChannelChange(err, response) {\n\t\tthis.setState({ channels: response.value });\n\t}\n\n\t/**\n\t * Whenever the store changes, set state.\n\t *\n\t * @param {any} newState\n\t * @memberof LinkerGroups\n\t */\n\tonStoreChanged(newState) {\n\t\tthis.setState(newState);\n\t}\n\n\tonClick(e, channel) {\n\t\tFSBL.Clients.LinkerClient.bringAllToFront({\n\t\t\tchannel: channel,\n\t\t\trestoreWindows: true,\n\t\t});\n\t}\n\n\t/**\n\t * Render method.\n\t *\n\t * @returns\n\t * @memberof LinkerGroups\n\t */\n\trender() {\n\t\tlet self = this;\n\t\tconst { accessibleLinker } = this.state;\n\t\tconst getLabel = (channel) => {\n\t\t\tif (!accessibleLinker) {\n\t\t\t\treturn null;\n\t\t\t} else if (channel.label) {\n\t\t\t\treturn channel.label;\n\t\t\t} else {\n\t\t\t\t// backwards compatibility\n\t\t\t\treturn getChannelLabelFromIndex(channel.name, FSBL.Clients.LinkerClient.getAllChannels());\n\t\t\t}\n\t\t};\n\n\t\tif (!this.state.channels) {\n\t\t\treturn <div className=\"linker-groups\"></div>;\n\t\t}\n\n\t\t/**\n\t\t * Iterate through the channels that the window belongs to, render a colored bar to denote channel membership.\n\t\t */\n\t\tlet channels = self.state.channels.map((channel) => {\n\t\t\tconst suffix = accessibleLinker ? ` linker-group-accessible linker-${channel.label}` : \"\";\n\t\t\tlet classNames = `linker-group${suffix}`;\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tkey={channel.name}\n\t\t\t\t\tclassName={classNames}\n\t\t\t\t\ttitle={`Channel ${getChannelLabelFromIndex(channel.name, FSBL.Clients.LinkerClient.getAllChannels())}`}\n\t\t\t\t\tstyle={{ background: channel.color }}\n\t\t\t\t\tonMouseUp={function (e) {\n\t\t\t\t\t\tself.onClick(e, channel.name);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{getLabel(channel)}\n\t\t\t\t</div>\n\t\t\t);\n\t\t});\n\t\treturn <div className=\"linker-groups\">{channels}</div>;\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/left/ShareButton.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CACvB,6BAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,4BAA4B;IACjF,mDAA4B;IAC5B,8BAAM,CAAC,EAAC,yFAAyF,EAAC,IAAI,EAAC,SAAS,GAAG;IACnH,8BACC,CAAC,EAAC,4FAA4F,EAC9F,IAAI,EAAC,SAAS,GACb;IACF,8BAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,GAAG;IAChE,8BAAM,MAAM,EAAC,SAAS,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,EAAC,CAAC,EAAC,0BAA0B,GAAG,CAC9F,CACN,CAAC;AAEF,IAAI,mBAAmB,CAAC;AACxB,MAAM,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAS;IAG/C,YAAY,KAAK;QAChB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAI1B,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QAEjC,IAAI,CAAC,KAAK,GAAG;YACZ,UAAU,EAAE,OAAO;SACnB,CAAC;IACH,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAQD,WAAW,CAAC,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,yBAAyB;QACxB,mBAAmB,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9F,CAAC;IAOD,oBAAoB;QACnB,mBAAmB,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACjG,CAAC;IAQD,WAAW,CAAC,aAAa;QACxB,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM;QAML,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,CAChC,6BACC,SAAS,EAAC,sBAAsB,EAChC,KAAK,EAAC,eAAe,gBACT,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,SAAS,EAAC,MAAM,EAChB,WAAW,EAAE,IAAI,CAAC,WAAW;YAE7B,oBAAC,SAAS,OAAG;YACb,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAI,CAC1E,CACN,CACC,CACH,CAAC;IACH,CAAC;;AApFM,uBAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"ShareButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/left/ShareButton.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CACvB,6BAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,4BAA4B;IACjF,mDAA4B;IAC5B,8BAAM,CAAC,EAAC,yFAAyF,EAAC,IAAI,EAAC,SAAS,GAAG;IACnH,8BACC,CAAC,EAAC,4FAA4F,EAC9F,IAAI,EAAC,SAAS,GACb;IACF,8BAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,GAAG;IAChE,8BAAM,MAAM,EAAC,SAAS,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,EAAC,CAAC,EAAC,0BAA0B,GAAG,CAC9F,CACN,CAAC;AAEF,IAAI,mBAAmB,CAAC;AACxB,MAAM,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAS;IAG/C,YAAY,KAAK;QAChB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAI1B,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QAEjC,IAAI,CAAC,KAAK,GAAG;YACZ,UAAU,EAAE,OAAO;SACnB,CAAC;IACH,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAQD,WAAW,CAAC,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,yBAAyB;QACxB,mBAAmB,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9F,CAAC;IAOD,oBAAoB;QACnB,mBAAmB,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACjG,CAAC;IAQD,WAAW,CAAC,aAAa;QACxB,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM;QAML,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,CAChC,6BACC,SAAS,EAAC,sBAAsB,EAChC,KAAK,EAAC,eAAe,gBACT,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,SAAS,EAAC,MAAM,EAChB,WAAW,EAAE,IAAI,CAAC,WAAW;YAE7B,oBAAC,SAAS,OAAG;YACb,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAI,CAC1E,CACN,CACC,CACH,CAAC;IACH,CAAC;;AApFM,uBAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\nimport { getStore } from \"../../stores/windowTitleBarStore\";\nconst ShareIcon = () => (\n\t<svg width=\"20\" height=\"16\" viewBox=\"0 2 16 13\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<title>Drag To Share</title>\n\t\t<path d=\"M7 3H6V1H1v12h5v-3h1v3a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v2z\" fill=\"#8E939F\" />\n\t\t<path\n\t\t\td=\"M9 11h1v2h5V1h-5v1H9V1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-2z\"\n\t\t\tfill=\"#ECEDEF\"\n\t\t/>\n\t\t<rect fill=\"#ECEDEF\" x=\"4\" y=\"6\" width=\"8\" height=\"1\" rx=\".5\" />\n\t\t<path stroke=\"#ECEDEF\" strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M9 9l2.755-2.348L9 4.128\" />\n\t</svg>\n);\n\nlet windowTitleBarStore;\nexport class ShareButton extends React.Component {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.bindCorrectContext();\n\t\t/**\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\n\t\t */\n\t\twindowTitleBarStore = getStore();\n\n\t\tthis.state = {\n\t\t\thoverState: \"false\",\n\t\t};\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof ShareButton\n\t */\n\tbindCorrectContext() {\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * When the user starts to drag the share button, let the DragAndDropClient know.\n\t *\n\t * @param {any} ev\n\t * @memberof ShareButton\n\t */\n\tonDragStart(ev) {\n\t\tFSBL.Clients.DragAndDropClient.dragStart(ev);\n\t}\n\n\t/**\n\t * Add listeners to store.\n\t *\n\t * @memberof ShareButton\n\t */\n\tUNSAFE_componentWillMount() {\n\t\twindowTitleBarStore.addListener({ field: \"Sharer.receiverHandler\" }, this.onReceiverhandler);\n\t}\n\n\t/**\n\t * Remove listeners from the store.\n\t *\n\t * @memberof ShareButton\n\t */\n\tcomponentWillUnmount() {\n\t\twindowTitleBarStore.removeListener({ field: \"Sharer.receiverHandler\" }, this.onReceiverhandler);\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {any} newHoverState\n\t * @memberof LinkerButton\n\t */\n\thoverAction(newHoverState) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\trender() {\n\t\t/* [Terry] was causing Sharer to never show. Deprecated?\n\t\tif (!this.state.emitterEnabled) {\n\t\t\treturn null;\n\t\t}\n\t\t*/\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showShareButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"fsbl-icon fsbl-share\"\n\t\t\t\t\t\ttitle=\"Drag To Share\"\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\tdraggable=\"true\"\n\t\t\t\t\t\tonDragStart={this.onDragStart}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ShareIcon />\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction.bind(this)} />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlwaysOnTopButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/AlwaysOnTopButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC;IAEpF,MAAM,OAAO,GAAG,gCAAgC,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAE7F,OAAO,CACN,0CACE,qBAAqB,IAAI,CACzB,6BAAK,SAAS,EAAE,OAAO,EAAE,EAAE,EAAC,oBAAoB,EAAC,KAAK,EAAC,eAAe,EAAC,OAAO,EAAE,cAAc;QAC7F,2BAAG,SAAS,EAAE,kBAAkB,GAAI,CAC/B,CACN,CACC,CACH,CAAC;AACH,CAAC,CAAC","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"AlwaysOnTopButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/AlwaysOnTopButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC;IAEpF,MAAM,OAAO,GAAG,gCAAgC,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAE7F,OAAO,CACN,0CACE,qBAAqB,IAAI,CACzB,6BAAK,SAAS,EAAE,OAAO,EAAE,EAAE,EAAC,oBAAoB,EAAC,KAAK,EAAC,eAAe,EAAC,OAAO,EAAE,cAAc;QAC7F,2BAAG,SAAS,EAAE,kBAAkB,GAAI,CAC/B,CACN,CACC,CACH,CAAC;AACH,CAAC,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\n\nexport const AlwaysOnTopButton = () => {\n\tconst { alwaysOnTop, showAlwaysOnTopButton } = React.useContext(WindowTitleBarContext);\n\n\tconst setAlwaysOnTop = () => FSBL.Clients.WindowClient.setAlwaysOnTop(!alwaysOnTop);\n\n\tconst classes = `fsbl-icon fsbl-always-on-top ${alwaysOnTop ? \"fsbl-icon-highlighted\" : \"\"}`;\n\n\treturn (\n\t\t<>\n\t\t\t{showAlwaysOnTopButton && (\n\t\t\t\t<div className={classes} id=\"fsbl-always-on-top\" title=\"Always On Top\" onClick={setAlwaysOnTop}>\n\t\t\t\t\t<i className={\"ff-always-on-top\"} />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</>\n\t);\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloseButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/CloseButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AASpE,MAAM,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAyB;IAG/D,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAMD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,CAChC,6BACC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,SAAS,EAAC,sBAAsB,gBACpB,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,OAAO,EACb,EAAE,EAAC,mBAAmB;YAEtB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,WAAW,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YAC1E,2BAAG,SAAS,EAAC,UAAU,GAAK,CACvB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAzDM,uBAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"CloseButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/CloseButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AASpE,MAAM,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAyB;IAG/D,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAMD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,CAChC,6BACC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,SAAS,EAAC,sBAAsB,gBACpB,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,OAAO,EACb,EAAE,EAAC,mBAAmB;YAEtB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,WAAW,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YAC1E,2BAAG,SAAS,EAAC,UAAU,GAAK,CACvB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAzDM,uBAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\n\ninterface IProps {}\ninterface IState {\n\thoverState: string;\n}\n/**\n * Close button, located on the far right of the window Manager.\n */\nexport class CloseButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindCorrectContext();\n\t\tthis.state = { hoverState: \"false\" };\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof CloseButton\n\t */\n\tbindCorrectContext() {\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * Listener invoked when the user clicks the close button.\n\t *\n\t * @memberof CloseButton\n\t */\n\tonClick() {\n\t\tHeaderActions.clickClose();\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {any} newHoverState\n\t * @memberof LinkerButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Render method\n\t * @memberof CloseButton\n\t */\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showCloseButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t\tclassName=\"fsbl-icon fsbl-close\"\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\ttitle=\"Close\"\n\t\t\t\t\t\tid=\"fsbl-window-close\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top right\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className=\"ff-close\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupingButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/GroupingButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtF,IAAI,mBAA+B,CAAC;AASpC,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAIzB,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG;YACZ,kBAAkB,EAAE,KAAK;YACzB,WAAW,EAAE,mBAAmB,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;YACxE,UAAU,EAAE,OAAO;SACnB,CAAC;IACH,CAAC;IAMD,iBAAiB;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAMD,yBAAyB;QACxB,mBAAmB,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACrF,CAAC;IAMD,oBAAoB;QACnB,mBAAmB,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACxF,CAAC;IAQD,cAAc,CAAC,GAAQ,EAAE,QAAa;QACrC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAOD,MAAM;QACL,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,WAAW,GAAG,8CAA8C,CAAC;QAEjE,SAAS,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAExF,IAAI,SAAS,KAAK,aAAa,EAAE;YAChC,WAAW,GAAG,GAAG,WAAW,wBAAwB,CAAC;SACrD;QAED,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAClC,6BACC,SAAS,EAAE,WAAW,EACtB,EAAE,EAAC,qBAAqB,EACxB,KAAK,EAAE,OAAO,gBACF,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAE,SAAS,GAAM,CACxB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAvGM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"GroupingButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/GroupingButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtF,IAAI,mBAA+B,CAAC;AASpC,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAIzB,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG;YACZ,kBAAkB,EAAE,KAAK;YACzB,WAAW,EAAE,mBAAmB,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;YACxE,UAAU,EAAE,OAAO;SACnB,CAAC;IACH,CAAC;IAMD,iBAAiB;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAMD,yBAAyB;QACxB,mBAAmB,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACrF,CAAC;IAMD,oBAAoB;QACnB,mBAAmB,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACxF,CAAC;IAQD,cAAc,CAAC,GAAQ,EAAE,QAAa;QACrC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAOD,MAAM;QACL,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,WAAW,GAAG,8CAA8C,CAAC;QAEjE,SAAS,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAExF,IAAI,SAAS,KAAK,aAAa,EAAE;YAChC,WAAW,GAAG,GAAG,WAAW,wBAAwB,CAAC;SACrD;QAED,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAClC,6BACC,SAAS,EAAE,WAAW,EACtB,EAAE,EAAC,qBAAqB,EACxB,KAAK,EAAE,OAAO,gBACF,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAE,SAAS,GAAM,CACxB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAvGM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\nimport { getStore, Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\nlet windowTitleBarStore: StoreModel;\n\ninterface IProps {}\ninterface IState {\n\tshowDockingTooltip: boolean;\n\tdockingIcon: string | false;\n\thoverState: string;\n}\n\nexport class GroupingButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindEventHandlers();\n\t\t/**\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\n\t\t */\n\t\twindowTitleBarStore = getStore();\n\t\tthis.state = {\n\t\t\tshowDockingTooltip: false,\n\t\t\tdockingIcon: windowTitleBarStore.getValue({ field: \"Main.dockingIcon\" }),\n\t\t\thoverState: \"false\",\n\t\t};\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t */\n\tbindEventHandlers() {\n\t\tthis.onClick = this.onClick.bind(this);\n\t\tthis.onStoreChanged = this.onStoreChanged.bind(this);\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * Add listeners to the store.\n\t *\n\t */\n\tUNSAFE_componentWillMount() {\n\t\twindowTitleBarStore.addListener({ field: \"Main.dockingIcon\" }, this.onStoreChanged);\n\t}\n\n\t/**\n\t * Remove listeners from the store.\n\t *\n\t */\n\tcomponentWillUnmount() {\n\t\twindowTitleBarStore.removeListener({ field: \"Main.dockingIcon\" }, this.onStoreChanged);\n\t}\n\n\t/**\n\t * Invoked when the store emits a change event. The icon will change. If we're grouped, we show the button that denotes group membership. If we're just snapped, we show the button that will group attached windows.\n\t *\n\t * @param {any} err\n\t * @param {any} response\n\t */\n\tonStoreChanged(err: any, response: any) {\n\t\tthis.setState({ dockingIcon: response.value });\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {any} newHoverState\n\t * @memberof LinkerButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Invoked when the user clicks the docking button.\n\t *\n\t */\n\n\tonClick() {\n\t\tHeaderActions.toggleGroup();\n\t}\n\n\t/**\n\t * Render method\n\t *\n\t * @returns\n\t */\n\trender() {\n\t\tlet iconClass = \"ff-\";\n\t\tlet wrapClasses = \"fsbl-icon fsbl-icon-bordered docking-control\";\n\n\t\ticonClass = iconClass + (this.state.dockingIcon === \"ejector\" ? \"attached\" : \"detached\");\n\t\tlet toolTip = this.state.dockingIcon === \"ejector\" ? \"Detach Window\" : \"Attach Windows\";\n\n\t\tif (iconClass === \"ff-attached\") {\n\t\t\twrapClasses = `${wrapClasses} fsbl-icon-highlighted`;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showDockingButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={wrapClasses}\n\t\t\t\t\t\tid=\"fsbl-window-ejector\"\n\t\t\t\t\t\ttitle={toolTip}\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className={iconClass}></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaximizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MaximizeButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtF,IAAI,mBAA+B,CAAC;AAWpC,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAI1B,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG;YACZ,SAAS,EAAE,mBAAmB,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;YACxE,UAAU,EAAE,OAAO;SACnB,CAAC;IACH,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IASD,UAAU;QACT,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,WAAW;QACV,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAOD,yBAAyB;QACxB,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5D,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;IAOD,oBAAoB;QACnB,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/D,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9D,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAQD,MAAM;QACL,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QAG9D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC;QAExE,MAAM,WAAW,GAAG,2BAA2B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;QAExG,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CACnC,6BACC,SAAS,EAAE,WAAW,EACtB,EAAE,EAAC,qBAAqB,EACxB,KAAK,EAAE,OAAO,gBACF,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAE,WAAW,GAAM,CAC1B,CACN,CACC,CACH,CAAC;IACH,CAAC;;AA9GM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"MaximizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MaximizeButton.tsx"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\nimport { getStore, Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\nlet windowTitleBarStore: StoreModel;\n\ninterface IProps {}\ninterface IState {\n\tmaximized: boolean;\n\thoverState: string;\n}\n\n/**\n * Maximize button. This button is hidden when the window is maximized. In its place is the restore button.\n */\nexport class MaximizeButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindCorrectContext();\n\t\t/**\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\n\t\t */\n\t\twindowTitleBarStore = getStore();\n\t\tthis.state = {\n\t\t\tmaximized: windowTitleBarStore.getValue({ field: \"Maximize.maximized\" }),\n\t\t\thoverState: \"false\",\n\t\t};\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tbindCorrectContext() {\n\t\tthis.onMaximized = this.onMaximized.bind(this);\n\t\tthis.onRestored = this.onRestored.bind(this);\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * When the state changes, this listener is invoked. There are two states: Not maximized, and maximized. When the window is maximized, the button changes to an icon that denotes \"Restore to previous size.\"\n\t *\n\t * @param {any} err\n\t * @param {any} response\n\t * @memberof MaximizeButton\n\t */\n\tonRestored() {\n\t\tthis.setState({ maximized: false });\n\t}\n\n\tonMaximized() {\n\t\tthis.setState({ maximized: true });\n\t}\n\n\t/**\n\t * Invoked when the user clicks the button.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tonClick() {\n\t\tHeaderActions.clickMaximize();\n\t}\n\n\t/**\n\t * Add listeners to the store.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tUNSAFE_componentWillMount() {\n\t\tfinsembleWindow?.addListener(\"maximized\", this.onMaximized);\n\t\tfinsembleWindow?.addListener(\"restored\", this.onRestored);\n\t}\n\n\t/**\n\t * Remove listeners from the store.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tcomponentWillUnmount() {\n\t\tfinsembleWindow?.removeListener(\"maximized\", this.onMaximized);\n\t\tfinsembleWindow?.removeListener(\"restored\", this.onRestored);\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {any} newHoverState\n\t * @memberof LinkerButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Render method.\n\t *\n\t * @returns\n\t * @memberof MaximizeButton\n\t */\n\trender() {\n\t\tconst tooltip = this.state.maximized ? \"Restore\" : \"Maximize\";\n\n\t\t// Classes for the maximize button.\n\t\tconst iconClasses = this.state.maximized ? \"ff-restore\" : \"ff-maximize\";\n\t\t// Classes for the wrap\n\t\tconst wrapClasses = `fsbl-icon fsbl-maximize ${this.state.maximized ? \"window-restore\" : \"window-max\"}`;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showMaximizeButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={wrapClasses}\n\t\t\t\t\t\tid=\"fsbl-window-restore\"\n\t\t\t\t\t\ttitle={tooltip}\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className={iconClasses}></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MinimizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MinimizeButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAO5E,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAQD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CACnC,6BACC,SAAS,EAAC,yBAAyB,EACnC,EAAE,EAAC,sBAAsB,gBACb,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,UAAU,EAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAC,aAAa,GAAK,CAC1B,CACN,CACC,CACH,CAAC;IACH,CAAC;;AA3DM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"file":"MinimizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MinimizeButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAO5E,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAQD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CACnC,6BACC,SAAS,EAAC,yBAAyB,EACnC,EAAE,EAAC,sBAAsB,gBACb,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,UAAU,EAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAC,aAAa,GAAK,CAC1B,CACN,CACC,CACH,CAAC;IACH,CAAC;;AA3DM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\nimport { Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\n\ninterface IProps {}\ninterface IState {\n\thoverState: string;\n}\n\nexport class MinimizeButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindCorrectContext();\n\t\tthis.state = { hoverState: \"false\" };\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof MinimizeButton\n\t */\n\tbindCorrectContext() {\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * Invoked when the user clicks the minimize button.\n\t *\n\t * @memberof MinimizeButton\n\t */\n\tonClick() {\n\t\tHeaderActions.clickMinimize();\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {string} newHoverState\n\t * @memberof MinimizeButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Render method.\n\t *\n\t * @returns\n\t * @memberof MinimizeButton\n\t */\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showMinimizeButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"fsbl-icon fsbl-minimize\"\n\t\t\t\t\t\tid=\"fsbl-window-minimize\"\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\ttitle=\"Minimize\"\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className=\"ff-minimize\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windowTitle.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/components/windowTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAcjD,MAAM,OAAO,KAAM,SAAQ,SAAiC;IAC3D,YAAY,KAAiB;;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG;YACZ,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,IAAI;SACV,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,MAAA,KAAK,CAAC,WAAW,0CAAE,gBAAgB,CAAC,eAAe,EAAE,GAAG,EAAE;YACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACJ,CAAC;IAGD,KAAK,CAAC,QAAQ,CAAC,IAAS,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB;QACrE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACzE,GAAG,CAAC,UAAU,CAAC,CAAC,GAAQ,EAAE,IAAS,EAAE,EAAE;;YACtC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YACrB,MAAM,IAAI,GAAG,cAAc,CAAC,MAAA,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,0CAAE,OAAO,0CAAE,UAAU,0CAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACnF,GAAG,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,CAAC,KAAU,EAAE,cAAmB,EAAE,EAAE;gBACtF,IAAI,cAAc,EAAE;oBACnB,KAAK,GAAG,cAAc,CAAC;iBACvB;gBACD,IAAI,CAAC,QAAQ,CAAC;oBACb,KAAK;oBACL,IAAI;iBACJ,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;IACjB,CAAC;IAGD,kBAAkB;QACjB,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,UAAU,EAAE;YAC9C,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;SACtB;IACF,CAAC;IAED,yBAAyB;;QACxB,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,gBAAgB,EAAE,CAAC,CAAM,EAAE,GAAQ,EAAE,EAAE;YACnF,GAAG,CAAC,gBAAgB,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,oBAAoB;;QACnB,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,gBAAgB,EAAE,CAAC,CAAM,EAAE,GAAQ,EAAE,EAAE;YACnF,GAAG,CAAC,mBAAmB,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,gCAAgC,CAAC,SAAc;QAE9C,IAAI,SAAS,CAAC,gBAAgB,CAAC,UAAU,KAAK,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,EAAE;YACrF,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;SAChD;IACF,CAAC;IAED,MAAM;QACL,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAChC,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,OAAO,CACN,6BAAK,SAAS,EAAC,gBAAgB,EAAC,KAAK,EAAE,KAAK;YAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,oBAAC,IAAI,oBAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAI;YACjD,6BAAK,SAAS,EAAC,YAAY,IAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAO,CAC/C,CACN,CAAC;IACH,CAAC;CACD","sourcesContent":["import React, { Component } from \"react\";\
|
|
1
|
+
{"version":3,"file":"windowTitle.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/components/windowTitle.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { Component } from \"react\";\nimport { Icon } from \"../../icon/Icon\";\nimport { iconFromConfig } from \"../../icon/Icon\";\n\ntype TitleProps = {\n\twindowIdentifier: any;\n\tonUpdate?: Function;\n\ttitleWidth?: number;\n\tupdateTitle?: EventTarget;\n};\n\ntype TitleState = {\n\ttitle: string | undefined;\n\ticon: any;\n};\n\nexport class Title extends Component<TitleProps, TitleState> {\n\tconstructor(props: TitleProps) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\ttitle: document.title,\n\t\t\ticon: null,\n\t\t};\n\t\tthis.getTitle = this.getTitle.bind(this);\n\t\tprops.updateTitle?.addEventListener(\"title-changed\", () => {\n\t\t\tthis.getTitle();\n\t\t});\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tasync getTitle(e: any = null, identifier = this.props.windowIdentifier) {\n\t\tconst { wrap: win } = await FSBL.FinsembleWindow.getInstance(identifier);\n\t\twin.getOptions((err: any, data: any) => {\n\t\t\tlet { title } = data;\n\t\t\tconst icon = iconFromConfig(data?.customData?.foreign?.components?.Toolbar, title);\n\t\t\twin.getComponentState({ field: \"persistedTitle\" }, (error: any, persistedTitle: any) => {\n\t\t\t\tif (persistedTitle) {\n\t\t\t\t\ttitle = persistedTitle;\n\t\t\t\t}\n\t\t\t\tthis.setState({\n\t\t\t\t\ttitle,\n\t\t\t\t\ticon,\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.getTitle();\n\t}\n\n\t// Triggers a re-rendering of the drag handle in the title bar.\n\tcomponentDidUpdate() {\n\t\tif (typeof this.props.onUpdate === \"function\") {\n\t\t\tthis.props.onUpdate();\n\t\t}\n\t}\n\n\tUNSAFE_componentWillMount() {\n\t\tFSBL.FinsembleWindow.getInstance(this.props?.windowIdentifier, (e: any, win: any) => {\n\t\t\twin.addEventListener(\"title-changed\", this.getTitle);\n\t\t});\n\t}\n\n\tcomponentWillUnmount() {\n\t\tFSBL.FinsembleWindow.getInstance(this.props?.windowIdentifier, (e: any, win: any) => {\n\t\t\twin.removeEventListener(\"title-changed\", this.getTitle);\n\t\t});\n\t}\n\n\tUNSAFE_componentWillReceiveProps(nextProps: any) {\n\t\t// We only need to re-render the logo if the name of the component changes. Otherwise excessive calls to getOptions\n\t\tif (nextProps.windowIdentifier.windowName !== this.props.windowIdentifier.windowName) {\n\t\t\tthis.getTitle(null, nextProps.windowIdentifier);\n\t\t}\n\t}\n\n\trender() {\n\t\tlet { titleWidth } = this.props;\n\t\tlet style = titleWidth ? { width: titleWidth } : {};\n\t\treturn (\n\t\t\t<div className=\"fsbl-tab-title\" style={style}>\n\t\t\t\t{this.state.icon && <Icon {...this.state.icon} />}\n\t\t\t\t<div className=\"title-text\">{this.state.title}</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/windowTitleBar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["export { WindowTitleBarShell } from \"./WindowTitleBarShell\";\
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/windowTitleBar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["export { WindowTitleBarShell } from \"./WindowTitleBarShell\";\nexport { LinkerButton } from \"./components/left/LinkerButton\";\nexport { ShareButton } from \"./components/left/ShareButton\";\nexport { TabRegion } from \"./components/center/TabRegion\";\nexport { AlwaysOnTopButton } from \"./components/right/AlwaysOnTopButton\";\nexport { MinimizeButton } from \"./components/right/MinimizeButton\";\nexport { MaximizeButton } from \"./components/right/MaximizeButton\";\nexport { CloseButton } from \"./components/right/CloseButton\";\nexport { GroupingButton } from \"./components/right/GroupingButton\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windowTitleBarStore.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/stores/windowTitleBarStore.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport windowTitleBarStoreDefaults from \"./windowTitleBarStoreDefaults\";\r\nimport { StandardCallback } from \"@finsemble/finsemble-core/types/types\";\r\nimport { FinsembleWindow, WindowIdentifier } from \"@finsemble/finsemble-core\";\r\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\r\n\r\nconst getWindowNameForDocking = (finsembleWindow: FinsembleWindow) => {\r\n\tconst parent = finsembleWindow.parentWindow;\r\n\treturn parent ? parent.name : finsembleWindow.name;\r\n};\r\n\r\ntype ParentParams = {\r\n\twindowIdentifiers: WindowIdentifier[];\r\n\tvisibleWindowIdentifier: WindowIdentifier;\r\n\tcreate: boolean;\r\n};\r\n\r\nconst getStackedWindow = (params: ParentParams, cb: StandardCallback) => {\r\n\tif (!finsembleWindow.parentWindow && params.create) {\r\n\t\tconst onParentSet = (evt: any) => {\r\n\t\t\tconst { parentName } = evt.data;\r\n\t\t\tfinsembleWindow.setParent({ windowName: parentName }, (err2, windowWrapper) => {\r\n\t\t\t\tcb?.(err2, windowWrapper);\r\n\t\t\t});\r\n\t\t\tfinsembleWindow.removeListener(\"parent-set\", onParentSet);\r\n\t\t};\r\n\t\tfinsembleWindow.addListener(\"parent-set\", onParentSet);\r\n\t\tFSBL.Clients.LauncherClient.spawn(\r\n\t\t\t\"StackedWindow\",\r\n\t\t\t{\r\n\t\t\t\twindowType: \"StackedWindow\",\r\n\t\t\t\tdata: { windowIdentifiers: params.windowIdentifiers },\r\n\t\t\t\toptions: { newStack: true },\r\n\t\t\t},\r\n\t\t\t(err) => {\r\n\t\t\t\tif (!err) {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tcb?.(err, null);\r\n\t\t\t}\r\n\t\t);\r\n\t} else {\r\n\t\tfinsembleWindow.getParent(cb);\r\n\t}\r\n};\r\n\r\nlet windowTitleBarStore: StoreModel;\r\n\r\ntype ConstantsType = {\r\n\tPARENT_WRAPPER_UPDATES: string;\r\n\tCHILD_WINDOW_FIELD: string;\r\n\tVISIBLE_WINDOW_FIELD: string;\r\n\tTAB_SCROLL_POSITION_CHANGED: string;\r\n};\r\n\r\ntype ActionsType = {\r\n\tparentWrapperStore: any;\r\n\tparentSubscriptions: any[];\r\n\tparentWrapper: FinsembleWindow | null;\r\n\r\n\tinitialize: () => void;\r\n\tgetMyDockingGroups: (groupData: any) => any[];\r\n\tonTabListScrollPositionChanged: StandardCallback;\r\n\tsetTabListScrollPosition: (translateX: number) => void;\r\n\tremoteStateUpdate: (command: string, state: any) => void;\r\n\tclickMinimize: () => void;\r\n\tclickClose: () => void;\r\n\ttoggleGroup: () => void;\r\n\tclickMaximize: () => void;\r\n\tgetTabs: () => WindowIdentifier[];\r\n\t_setTabs: (tabs: WindowIdentifier[] | null) => any;\r\n\taddTabLocally: (windowIdentifier: WindowIdentifier, i: number) => void;\r\n\tremoveTabsLocally: () => void;\r\n\tremoveTabLocally: (windowIdentifier: WindowIdentifier) => void;\r\n\treorderTabLocally: (tab: WindowIdentifier, newIndex: number) => undefined | any;\r\n\taddTab: (windowIdentifier: WindowIdentifier, i: number) => any;\r\n\tremoveTab: (windowIdentifier: WindowIdentifier, i: number) => any;\r\n\tcloseTab: (windowIdentifier: WindowIdentifier) => void;\r\n\treorderTab: (tab: WindowIdentifier, newIndex: number) => any;\r\n\tfindTab: (tab: WindowIdentifier) => { tab: WindowIdentifier; currentIndex: number };\r\n\tsetActiveTab: (windowIdentifier: WindowIdentifier) => Promise<any>;\r\n\tonTabListChanged: StandardCallback;\r\n\tstopListeningOnParentWrapper: (cb: Function) => void;\r\n\tlistenOnParentWrapper: () => void;\r\n\tsetupStore: (cb?: Function) => void;\r\n\tgetInitialTabList: (cb: StandardCallback) => void;\r\n\tcreateParentWrapper: (params: ParentParams, cb?: Function) => void;\r\n};\r\n\r\n// these are constants that are set inside of setupStore. so they're declared as vars and not constants.\r\nlet constants: ConstantsType;\r\nconst Actions: ActionsType = {\r\n\tparentWrapperStore: null,\r\n\tinitialize: function () {\r\n\t\t// This ensures that our config is correct, even if the developer missed some entries\r\n\t\tlet { options } = FSBL.Clients.WindowClient;\r\n\t\tlet windowTitleBarConfig = options.customData.foreign.components[\"Window Manager\"];\r\n\t\tlet { FSBLHeader } = windowTitleBarConfig;\r\n\t\tlet self = this;\r\n\r\n\t\t// Display name is first up for display. If it doesn't exist, we look for a default title (or one that's already set on init). If no title, we display the window's name (e.g., '5434-Welcome Component-2321').\r\n\t\tconst displayName = options.customData?.component?.displayName;\r\n\r\n\t\t/**\r\n\t\t * The windowTitleBar (header) is dumb. It just reflects the state of the component window. The headerCommandChannel allows the WindowClient to take control of the state of the header. All of the details of listening to window events are handled inside the WindowClient\r\n\t\t */\r\n\t\tFSBL.Clients.WindowClient.headerCommandChannel((command, state) => {\r\n\t\t\tthis.remoteStateUpdate(command, state);\r\n\t\t});\r\n\r\n\t\t/**\r\n\t\t * \"FSBLHeader\" can be true, false or an object. If false then we'll never even be here. If true, then maximize, minimize and close buttons will display. If an object, then the developer can override whether buttons are shown with \"hideMaximize\", \"hideMinimize\" and \"hideClose\"\r\n\t\t */\r\n\t\tif (FSBLHeader) {\r\n\t\t\tconst max = !!FSBLHeader.hideMaximize;\r\n\r\n\t\t\twindowTitleBarStore.setValues([\r\n\t\t\t\t{ field: \"Maximize.hide\", value: max },\r\n\t\t\t\t{ field: \"Minimize.hide\", value: !!FSBLHeader.hideMinimize },\r\n\t\t\t\t{ field: \"Close.hide\", value: !!FSBLHeader.hideClose },\r\n\t\t\t\t{ field: \"AlwaysOnTop.show\", value: !!FSBLHeader.alwaysOnTop },\r\n\t\t\t]);\r\n\r\n\t\t\t// By default, we hack the window's scroll bar so that it displays underneath the header. html.overflow: hidden body.overflow:auto\r\n\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\tfield: \"hackScrollbar\",\r\n\t\t\t\tvalue: windowTitleBarConfig.hackScrollbar !== false,\r\n\t\t\t});\r\n\r\n\t\t\tconst title = FSBL.Clients.WindowClient.title || windowTitleBarConfig.title || displayName;\r\n\r\n\t\t\tif (title) {\r\n\t\t\t\tdocument.title = title;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Handles whether to show the linker button.\r\n\t\t */\r\n\t\tif (windowTitleBarConfig.showLinker) {\r\n\t\t\t// Get state (channel membership) from the linkerClient. Then set the value in the header so that the title bar accurately reflects the state.\r\n\t\t\tconst cb: StandardCallback = (err, response) => {\r\n\t\t\t\tif (response.channels) {\r\n\t\t\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\t\t\tfield: \"Linker.channels\",\r\n\t\t\t\t\t\tvalue: response.channels,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\t\tfield: \"Linker.showLinkerButton\",\r\n\t\t\t\t\tvalue: true,\r\n\t\t\t\t});\r\n\t\t\t};\r\n\t\t\tcb(null, FSBL.Clients.LinkerClient.getState());\r\n\t\t\t/* [Terry] no longer necessary?\r\n\t\t\tFSBL.Clients.LinkerClient.getLinkedChannels({\r\n\t\t\t\twindowName: options.name,\r\n\t\t\t\tuuid: options.uuid,\r\n\t\t\t\tcomponentType: options.customData.component.type\r\n\t\t\t}, cb);\r\n\t\t\t*/\r\n\t\t\tFSBL.Clients.LinkerClient.onStateChange(cb);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Listen for updates from the dragAndDropClient.\r\n\t\t */\r\n\t\tFSBL.Clients.RouterClient.subscribe(\r\n\t\t\t`${FSBL.Clients.WindowClient.options.name}Finsemble.Sharer`,\r\n\t\t\t(err, response) => {\r\n\t\t\t\tif (err) {\r\n\t\t\t\t\treturn console.error(err);\r\n\t\t\t\t}\r\n\t\t\t\twindowTitleBarStore.setValues([\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tfield: \"Sharer.emitterEnabled\",\r\n\t\t\t\t\t\tvalue: response.data.emitterEnabled,\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tfield: \"Sharer.receiverEnabled\",\r\n\t\t\t\t\t\tvalue: response.data.receiverEnabled,\r\n\t\t\t\t\t},\r\n\t\t\t\t]);\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\t/**\r\n\t\t * When a group update is publish, we sift through the data to see if this window is snapped or grouped with other windows. Then we publish that info, and the GroupingButton renders the correct icon.\r\n\t\t * @param {*} err\r\n\t\t * @param {*} response\r\n\t\t */\r\n\t\tconst onDockingGroupUpdate: StandardCallback = function (err, response) {\r\n\t\t\tif (err || !response.data || !response.data.groupData) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tFSBL.Clients.Logger.system.debug(\"On docking group update\", response.data.groupData);\r\n\t\t\tlet groupNames = Object.keys(response.data.groupData);\r\n\t\t\tlet movableGroups = groupNames\r\n\t\t\t\t.filter((groupName) => response.data.groupData[groupName].isMovable)\r\n\t\t\t\t.map((groupName) => response.data.groupData[groupName]);\r\n\t\t\t// This is all movable and snapped groups. It's used later to figure out the icon to display.\r\n\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\tfield: \"Main.allDockingGroups\",\r\n\t\t\t\tvalue: response.data.groupData,\r\n\t\t\t});\r\n\r\n\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\tfield: \"Main.allMovableDockingGroups\",\r\n\t\t\t\tvalue: movableGroups,\r\n\t\t\t});\r\n\t\t\tlet myGroups = self.getMyDockingGroups(response.data.groupData);\r\n\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\tfield: \"Main.dockingGroups\",\r\n\t\t\t\tvalue: myGroups,\r\n\t\t\t});\r\n\t\t\t/**\r\n\t\t\t * Goes through groups and sees if this window is grouped, snapped, or freely hanging out there.\r\n\t\t\t */\r\n\t\t\tlet isSnapped = false;\r\n\t\t\tlet isInMovableGroup = false;\r\n\t\t\tlet isTopRight = false;\r\n\t\t\tlet windowName = getWindowNameForDocking(finsembleWindow);\r\n\t\t\tfor (let i = 0; i < myGroups.length; i++) {\r\n\t\t\t\tlet myGroup = myGroups[i];\r\n\t\t\t\tif (myGroup.isMovable) {\r\n\t\t\t\t\tisInMovableGroup = true;\r\n\t\t\t\t\tif (windowName == myGroup.topRightWindow) {\r\n\t\t\t\t\t\tisTopRight = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tisSnapped = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tlet icon: string | false = false;\r\n\r\n\t\t\tif (isSnapped) {\r\n\t\t\t\ticon = \"joiner\";\r\n\t\t\t}\r\n\t\t\tif (isInMovableGroup) {\r\n\t\t\t\ticon = \"ejector\";\r\n\t\t\t}\r\n\r\n\t\t\twindowTitleBarStore.setValues([\r\n\t\t\t\t{ field: \"isSnapped\", value: isSnapped },\r\n\t\t\t\t{ field: \"isGrouped\", value: isInMovableGroup },\r\n\t\t\t\t{ field: \"isTopRight\", value: isTopRight },\r\n\t\t\t\t{ field: \"Main.dockingIcon\", value: icon },\r\n\t\t\t]);\r\n\t\t};\r\n\r\n\t\tFSBL.Clients.RouterClient.subscribe(\"Finsemble.WorkspaceService.groupUpdate\", onDockingGroupUpdate);\r\n\r\n\t\t// default title.\r\n\t\twindowTitleBarStore.setValue({\r\n\t\t\tfield: \"Main.windowTitle\",\r\n\t\t\tvalue: FSBL.Clients.WindowClient.getWindowTitle(),\r\n\t\t});\r\n\r\n\t\tconst getValuesCallback: StandardCallback = (err, values) => {\r\n\t\t\tconst finsembleConfig = values.finsemble;\r\n\r\n\t\t\t// Check FEA config for DOM based movement configuration\r\n\t\t\tconst { useDOMBasedMovement } = values[\"finsemble-electron-adapter\"];\r\n\r\n\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\tfield: \"Main.useDOMBasedMovement\",\r\n\t\t\t\tvalue: typeof useDOMBasedMovement === \"undefined\" ? true : useDOMBasedMovement,\r\n\t\t\t});\r\n\r\n\t\t\tlet globalWindowManagerConfig = finsembleConfig[\"Window Manager\"] || {\r\n\t\t\t\talwaysOnTopIcon: false,\r\n\t\t\t\tshowTabs: false,\r\n\t\t\t}; // Override defaults if finsemble.Window Manager exists.\r\n\r\n\t\t\t// Look to see if docking is enabled. Cascade through backward compatibility with old \"betaFeatures\" and then a default if no config is found at all.\r\n\r\n\t\t\tif (!finsembleConfig.servicesConfig) finsembleConfig.servicesConfig = {};\r\n\t\t\tlet dockingConfig = finsembleConfig.servicesConfig.docking || finsembleConfig.docking;\r\n\t\t\tif (!dockingConfig && finsembleConfig.betaFeatures) dockingConfig = finsembleConfig.betaFeatures.docking;\r\n\t\t\tif (!dockingConfig) dockingConfig = { enabled: true };\r\n\t\t\tif (!dockingConfig.tabbing) dockingConfig.tabbing = {};\r\n\r\n\t\t\twindowTitleBarStore.setValues([{ field: \"Main.dockingEnabled\", value: dockingConfig.enabled }]);\r\n\r\n\t\t\t// Whether the alwaysOnTop pin shows or not depends first on the global setting (finsemble[\"Window Manager\"].alwaysOnTop) and then\r\n\t\t\t// on the specific setting for this component (foreign.components[\"Widow Manager\"].alwaysOnTop)\r\n\t\t\tlet { alwaysOnTopIcon } = globalWindowManagerConfig;\r\n\t\t\tif (windowTitleBarConfig.alwaysOnTopIcon === false || windowTitleBarConfig.alwaysOnTopIcon === true)\r\n\t\t\t\t({ alwaysOnTopIcon } = windowTitleBarConfig);\r\n\r\n\t\t\twindowTitleBarStore.setValues([{ field: \"AlwaysOnTop.show\", value: alwaysOnTopIcon }]);\r\n\r\n\t\t\t// If tabbing is turned off, ignore global/local 'windowManager' config about whether to allow tabbing.\r\n\t\t\tif (dockingConfig.tabbing.enabled === false) {\r\n\t\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\t\tfield: \"showTabs\",\r\n\t\t\t\t\tvalue: dockingConfig.tabbing.enabled,\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\t// If tabbing is enabled system-wide, look to the global config for its value. Then look to the local component's config.\r\n\r\n\t\t\t\t// This is the global window manager config.\r\n\t\t\t\tif (typeof windowTitleBarConfig.showTabs !== \"boolean\") {\r\n\t\t\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\t\t\tfield: \"showTabs\",\r\n\t\t\t\t\t\tvalue: globalWindowManagerConfig.showTabs,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\t// This is the component's config.\r\n\t\t\t\tif (windowTitleBarConfig.showTabs || windowTitleBarConfig.showTabs === false) {\r\n\t\t\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\t\t\tfield: \"showTabs\",\r\n\t\t\t\t\t\tvalue: windowTitleBarConfig.showTabs,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Once the above has been checked the individual component config is checked for customData.foreign.services[windowService || dockingService][!ignoreTilingAndTabbingRequests || allowTabbing]\r\n\t\t\t\tlet showTabs = true;\r\n\t\t\t\tconst getOptionsCallback: StandardCallback = (_, opts) => {\r\n\t\t\t\t\tif (opts.customData && opts.customData.foreign && opts.customData.foreign.services) {\r\n\t\t\t\t\t\tif (opts.customData.foreign.services.windowService) {\r\n\t\t\t\t\t\t\tif (opts.customData.foreign.services.windowService.allowTabbing !== undefined) {\r\n\t\t\t\t\t\t\t\tshowTabs = opts.customData.foreign.services.windowService.allowTabbing;\r\n\t\t\t\t\t\t\t} else if (opts.customData.foreign.services.windowService.ignoreTilingAndTabbingRequests != undefined) {\r\n\t\t\t\t\t\t\t\tshowTabs = !opts.customData.foreign.services.windowService.ignoreTilingAndTabbingRequests;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else if (opts.customData.foreign.services.dockingService) {\r\n\t\t\t\t\t\t\tif (opts.customData.foreign.services.dockingService.allowTabbing !== undefined) {\r\n\t\t\t\t\t\t\t\tshowTabs = opts.customData.foreign.services.dockingService.allowTabbing;\r\n\t\t\t\t\t\t\t} else if (opts.customData.foreign.services.dockingService.ignoreTilingAndTabbingRequests != undefined) {\r\n\t\t\t\t\t\t\t\tshowTabs = !opts.customData.foreign.services.dockingService.ignoreTilingAndTabbingRequests;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\t\t\tfield: \"showTabs\",\r\n\t\t\t\t\t\tvalue: showTabs,\r\n\t\t\t\t\t});\r\n\t\t\t\t};\r\n\t\t\t\tfinsembleWindow.getOptions(getOptionsCallback);\r\n\t\t\t}\r\n\t\t};\r\n\t\tFSBL.Clients.ConfigClient.getValues(\r\n\t\t\t[{ field: \"finsemble\" }, { field: \"finsemble-electron-adapter\" }],\r\n\t\t\tgetValuesCallback\r\n\t\t);\r\n\r\n\t\tActions.getInitialTabList((err, values) => {\r\n\t\t\tconst onParentSet = () => {\r\n\t\t\t\tActions.parentWrapper = null;\r\n\t\t\t\tActions.getInitialTabList(() => {\r\n\t\t\t\t\tFSBL.Clients.Logger.system.debug(\"docking group update after initial tab list\");\r\n\t\t\t\t\tonDockingGroupUpdate(null, {\r\n\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\tgroupData: windowTitleBarStore.getValue({\r\n\t\t\t\t\t\t\t\tfield: \"Main.allDockingGroups\",\r\n\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t};\r\n\t\t\tconst onParentCleared = () => {\r\n\t\t\t\tActions.parentWrapper = null;\r\n\t\t\t\tFSBL.Clients.Logger.system.debug(\"ClearParent, setting tabs to null\");\r\n\t\t\t\tActions.stopListeningOnParentWrapper(() => {\r\n\t\t\t\t\tActions.parentWrapperStore = null;\r\n\t\t\t\t\tActions._setTabs(null);\r\n\t\t\t\t\tonDockingGroupUpdate(null, {\r\n\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\tgroupData: windowTitleBarStore.getValue({\r\n\t\t\t\t\t\t\t\tfield: \"Main.allDockingGroups\",\r\n\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\tfinsembleWindow?.addListener(\"setParent\", onParentSet);\r\n\t\t\tfinsembleWindow?.addListener(\"clearParent\", onParentCleared);\r\n\t\t\tif (err) {\r\n\t\t\t\treturn FSBL.Clients.Logger.system.error(\"Error in getInitialTabList.\", err);\r\n\t\t\t}\r\n\r\n\t\t\tif (values) Actions._setTabs(values);\r\n\t\t});\r\n\t},\r\n\t/**\r\n\t * Helper function to sift through all of the data coming from the windowService. Outputs an array of groups that the window belongs to.\r\n\t */\r\n\tgetMyDockingGroups: function (groupData) {\r\n\t\tlet myGroups = [];\r\n\t\tlet windowName = getWindowNameForDocking(finsembleWindow);\r\n\t\tif (finsembleWindow?.parentWindow) {\r\n\t\t\twindowName = finsembleWindow?.parentWindow.name;\r\n\t\t}\r\n\t\tFSBL.Clients.Logger.system.debug(\"Getting docking groups for \", windowName, groupData);\r\n\t\tif (groupData) {\r\n\t\t\tfor (let groupName in groupData) {\r\n\t\t\t\tgroupData[groupName].groupName = groupName;\r\n\t\t\t\tif (groupData[groupName].windowNames.includes(windowName)) {\r\n\t\t\t\t\tmyGroups.push(groupData[groupName]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn myGroups;\r\n\t},\r\n\tonTabListScrollPositionChanged: function (err, response) {\r\n\t\twindowTitleBarStore.setValue({\r\n\t\t\tfield: \"tabListTranslateX\",\r\n\t\t\tvalue: response.data.translateX,\r\n\t\t});\r\n\t},\r\n\tsetTabListScrollPosition: function (translateX) {\r\n\t\tFSBL.Clients.RouterClient.transmit(constants.TAB_SCROLL_POSITION_CHANGED, {\r\n\t\t\ttranslateX,\r\n\t\t});\r\n\t},\r\n\t/**\r\n\t * Handles messages coming from the windowClient.\r\n\t */\r\n\tremoteStateUpdate: function (command, state) {\r\n\t\tconst key = Object.keys(state)[0];\r\n\t\tconst field = `${command}.${key}`;\r\n\t\twindowTitleBarStore.setValue({ field: field, value: state[key] });\r\n\t},\r\n\t/**\r\n\t * Minimizes the window.\r\n\t */\r\n\tclickMinimize: function () {\r\n\t\tfinsembleWindow.minimize(() => {});\r\n\t},\r\n\t/**\r\n\t * Closes the window, allows for cleanup. Removes the window from workspace; this function is only invoked when the user clicks the close button.\r\n\t */\r\n\tclickClose: function () {\r\n\t\tFSBL.Clients.WindowClient.close({\r\n\t\t\tcloseWindow: true,\r\n\t\t\tremoveFromWorkspace: true, // this will cause the entire stack to close. Using this instead of a new parameter to ensure backwards compatibility\r\n\t\t\tuserInitiated: true,\r\n\t\t});\r\n\t},\r\n\t/**\r\n\t * Toggles group membership. If two windows are snapped, and this button is clicked, they become part of the same group that can be moved around together.\r\n\t */\r\n\ttoggleGroup: function () {\r\n\t\tconst groups = windowTitleBarStore.getValue({ field: \"Main.dockingGroups\" });\r\n\t\tconst isInMovableGroup = groups.some((group: any) => group.isMovable);\r\n\t\tif (isInMovableGroup) {\r\n\t\t\tfinsembleWindow.ejectFromGroup();\r\n\t\t} else {\r\n\t\t\tfinsembleWindow.formGroup();\r\n\t\t}\r\n\t},\r\n\t/**\r\n\t * Maximizes the window.\r\n\t */\r\n\tclickMaximize: function () {\r\n\t\tif (finsembleWindow.windowState !== finsembleWindow.WINDOWSTATE.MAXIMIZED)\r\n\t\t\treturn finsembleWindow.maximize(() => {\r\n\t\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\t\tfield: \"Maximize.maximized\",\r\n\t\t\t\t\tvalue: true,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\treturn finsembleWindow.restore(() => {\r\n\t\t\twindowTitleBarStore.setValue({\r\n\t\t\t\tfield: \"Maximize.maximized\",\r\n\t\t\t\tvalue: false,\r\n\t\t\t});\r\n\t\t});\r\n\t},\r\n\r\n\tgetTabs() {\r\n\t\treturn windowTitleBarStore.getValue({ field: \"tabs\" }) as WindowIdentifier[];\r\n\t},\r\n\t_setTabs(tabs) {\r\n\t\tFSBL.Clients.Logger.system.debug(\"Set tabs\", tabs);\r\n\t\tlet activeIdentifier: any = finsembleWindow.identifier;\r\n\t\tactiveIdentifier.title = finsembleWindow.windowOptions.title;\r\n\t\treturn windowTitleBarStore.setValue({\r\n\t\t\tfield: \"tabs\",\r\n\t\t\tvalue: tabs || [activeIdentifier],\r\n\t\t});\r\n\t},\r\n\taddTabLocally: function (windowIdentifier, i) {\r\n\t\tlet tabs = Actions.getTabs();\r\n\t\tif (typeof i === \"undefined\") {\r\n\t\t\ti = tabs.length + 1;\r\n\t\t}\r\n\t\ttabs.splice(i, 0, windowIdentifier);\r\n\t\tActions._setTabs(tabs);\r\n\t},\r\n\tremoveTabsLocally: function () {\r\n\t\tActions._setTabs(null);\r\n\t},\r\n\tremoveTabLocally: function (windowIdentifier) {\r\n\t\tlet tabs = Actions.getTabs();\r\n\t\tlet i = tabs.findIndex((el) => el.windowName === windowIdentifier.windowName && el.uuid === windowIdentifier.uuid);\r\n\t\ttabs.splice(i, 1);\r\n\t\tActions._setTabs(tabs);\r\n\t},\r\n\treorderTabLocally: function (tab, newIndex) {\r\n\t\tlet tabs = Actions.getTabs();\r\n\t\tlet { currentIndex } = Actions.findTab(tab);\r\n\t\tif (currentIndex === newIndex) return;\r\n\t\tif (currentIndex === -1) {\r\n\t\t\treturn Actions.addTabLocally(tab, newIndex);\r\n\t\t}\r\n\t\ttabs.splice(currentIndex, 1);\r\n\t\ttabs.splice(newIndex, 0, tab);\r\n\r\n\t\tActions._setTabs(tabs);\r\n\t},\r\n\taddTab: function (windowIdentifier, i) {\r\n\t\tlet tabs = Actions.getTabs();\r\n\t\ttabs.push(windowIdentifier);\r\n\t\t// quick UI update\r\n\t\tActions._setTabs(tabs);\r\n\t\tlet callback = () => {\r\n\t\t\tActions.parentWrapper?.setVisibleWindow({ windowIdentifier });\r\n\t\t};\r\n\r\n\t\tif (!Actions.parentWrapper) {\r\n\t\t\treturn Actions.createParentWrapper({\r\n\t\t\t\twindowIdentifiers: finsembleWindow.identifier\r\n\t\t\t\t\t? [finsembleWindow.identifier, windowIdentifier]\r\n\t\t\t\t\t: [windowIdentifier],\r\n\t\t\t\tvisibleWindowIdentifier: windowIdentifier,\r\n\t\t\t\tcreate: true,\r\n\t\t\t});\r\n\t\t}\r\n\t\treturn Actions.parentWrapper.addWindow({ windowIdentifier, position: i }, callback);\r\n\t},\r\n\tremoveTab: function (windowIdentifier, i) {\r\n\t\treturn Actions.parentWrapper?.removeWindow({\r\n\t\t\twindowIdentifier,\r\n\t\t\tposition: i,\r\n\t\t});\r\n\t},\r\n\tcloseTab: function (windowIdentifier) {\r\n\t\tconst close: StandardCallback = (err, wrap) => {\r\n\t\t\twrap.close({ removeFromWorkspace: true });\r\n\t\t};\r\n\t\tFSBL.FinsembleWindow.getInstance(windowIdentifier, close);\r\n\t},\r\n\treorderTab: function (tab, newIndex) {\r\n\t\tlet tabs = Actions.getTabs();\r\n\t\tlet { currentIndex } = Actions.findTab(tab);\r\n\t\tif (currentIndex === -1 || !Actions.parentWrapper) {\r\n\t\t\treturn Actions.addTab(tab, newIndex);\r\n\t\t}\r\n\t\ttabs.splice(currentIndex, 1);\r\n\t\ttabs.splice(newIndex, 0, tab);\r\n\t\t// Local change, quickly updates the dom.\r\n\t\tActions._setTabs(tabs);\r\n\t\tActions.parentWrapper.reorder({ windowIdentifiers: tabs });\r\n\t},\r\n\tfindTab: function (tab) {\r\n\t\tlet tabs = this.getTabs();\r\n\t\tlet currentIndex = tabs.findIndex((el) => tab.windowName === el.windowName && tab.uuid === el.uuid);\r\n\t\treturn { tab, currentIndex };\r\n\t},\r\n\tsetActiveTab: function (windowIdentifier) {\r\n\t\tFSBL.Clients.Logger.system.debug(\"setActiveTab.visibleWindow\");\r\n\t\treturn finsembleWindow.parentWindow.setVisibleWindow({ windowIdentifier });\r\n\t},\r\n\tparentWrapper: null,\r\n\tonTabListChanged: function (err, response) {\r\n\t\tFSBL.Clients.Logger.system.debug(\"OnTabListChanged\", response.data);\r\n\t\tif (response.data && response.data.hasOwnProperty(constants.CHILD_WINDOW_FIELD)) {\r\n\t\t\tActions._setTabs(response.data[constants.CHILD_WINDOW_FIELD]);\r\n\t\t}\r\n\t},\r\n\tparentSubscriptions: [],\r\n\tstopListeningOnParentWrapper: function (cb) {\r\n\t\tActions.parentSubscriptions.forEach((sub) => {\r\n\t\t\tFSBL.Clients.RouterClient.unsubscribe(sub);\r\n\t\t});\r\n\t\tActions.parentSubscriptions = []; // remove the subscribeId\r\n\t\t// Syncs scroll state across all tabs in a stack.\r\n\t\tFSBL.Clients.RouterClient.removeListener(\r\n\t\t\tconstants.TAB_SCROLL_POSITION_CHANGED,\r\n\t\t\tActions.onTabListScrollPositionChanged\r\n\t\t);\r\n\t\tcb();\r\n\t},\r\n\tlistenOnParentWrapper: function () {\r\n\t\tlet TABLIST_SUBSCRIPTION = FSBL.Clients.RouterClient.subscribe(\r\n\t\t\tconstants.PARENT_WRAPPER_UPDATES,\r\n\t\t\tActions.onTabListChanged\r\n\t\t);\r\n\t\tFSBL.Clients.RouterClient.addListener(\r\n\t\t\tconstants.TAB_SCROLL_POSITION_CHANGED,\r\n\t\t\tActions.onTabListScrollPositionChanged\r\n\t\t);\r\n\t\tActions.parentSubscriptions.push(TABLIST_SUBSCRIPTION);\r\n\t},\r\n\tsetupStore: function (cb = Function.prototype) {\r\n\t\tconstants = {\r\n\t\t\tPARENT_WRAPPER_UPDATES: `Finsemble.StackedWindow.${Actions.parentWrapper?.identifier?.windowName}`,\r\n\t\t\tCHILD_WINDOW_FIELD: \"childWindowIdentifiers\",\r\n\t\t\tVISIBLE_WINDOW_FIELD: \"visibleWindowIdentifier\",\r\n\t\t\tTAB_SCROLL_POSITION_CHANGED: `${Actions.parentWrapper?.name}.tabListTabListScrollPositionChanged`,\r\n\t\t};\r\n\t\tActions.listenOnParentWrapper();\r\n\t\tcb();\r\n\t},\r\n\tgetInitialTabList: function (cb) {\r\n\t\tfinsembleWindow.getParent((err, parentWrapper) => {\r\n\t\t\tActions.parentWrapper = parentWrapper;\r\n\t\t\tif (Actions.parentWrapper) {\r\n\t\t\t\tFSBL.Clients.Logger.system.debug(\"GetInitialTabList, parent exists\");\r\n\t\t\t\tActions.setupStore(cb);\r\n\t\t\t} else {\r\n\t\t\t\tlet activeIdentifier: any = finsembleWindow.identifier;\r\n\t\t\t\tactiveIdentifier.title = finsembleWindow.windowOptions.title;\r\n\t\t\t\tlet tabs = [activeIdentifier];\r\n\t\t\t\tcb(null, tabs);\r\n\t\t\t}\r\n\t\t});\r\n\t},\r\n\tcreateParentWrapper(params: ParentParams, cb = Function.prototype) {\r\n\t\t(window as any).Actions = Actions;\r\n\t\tif (Actions.parentWrapper) {\r\n\t\t\tcb();\r\n\t\t} else {\r\n\t\t\tconst getStackedWindowCallback: StandardCallback = (err, wrap) => {\r\n\t\t\t\tif (err) {\r\n\t\t\t\t\tActions.parentWrapper = null;\r\n\t\t\t\t\tActions._setTabs(null);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tActions.parentWrapper = wrap;\r\n\t\t\t\t\tActions.setupStore(cb);\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\tgetStackedWindow(params, getStackedWindowCallback);\r\n\t\t}\r\n\t},\r\n};\r\n\r\n/**\r\n * Initializes the store for the windowTitleBar.\r\n *\r\n * @param {any} cb\r\n */\r\nfunction initialize(cb: Function) {\r\n\tFSBL.Clients.DistributedStoreClient.createStore(\r\n\t\t{ store: \"windowTitleBarStore\", values: windowTitleBarStoreDefaults },\r\n\t\t(err, store) => {\r\n\t\t\tif (!err && store) {\r\n\t\t\t\twindowTitleBarStore = store;\r\n\t\t\t}\r\n\t\t\tActions.initialize();\r\n\t\t\treturn cb(store, Actions);\r\n\t\t}\r\n\t);\r\n}\r\n\r\nlet getStore = () => windowTitleBarStore;\r\n\r\nclass StoreManager {\r\n\tinitialized = false;\r\n\r\n\tinitializing = false;\r\n\r\n\tstore: StoreModel | null = null;\r\n\r\n\tcallbacks: Function[] = [];\r\n\r\n\tconstructor() {}\r\n\r\n\tinitialize() {\r\n\t\tif (this.initializing) return;\r\n\t\tthis.initializing = true;\r\n\t\tinitialize((store: StoreModel) => {\r\n\t\t\tthis.initialized = true;\r\n\t\t\tthis.store = store;\r\n\t\t\tthis.callbacks.forEach((cb) => cb(store));\r\n\t\t});\r\n\t}\r\n\r\n\taddInitializedListener(cb: Function) {\r\n\t\tif (this.initialized) return cb(this.store);\r\n\t\tthis.callbacks.push(cb);\r\n\t}\r\n\r\n\tremoveInitializedListener(cb: Function) {\r\n\t\tthis.callbacks = this.callbacks.filter((entry) => entry !== cb);\r\n\t}\r\n}\r\nconst storeManager = new StoreManager();\r\n\r\nexport { storeManager };\r\nexport { initialize };\r\nexport { windowTitleBarStore as Store };\r\nexport { Actions };\r\nexport { getStore };\r\n"]}
|
|
1
|
+
{"version":3,"file":"windowTitleBarStore.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/stores/windowTitleBarStore.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport windowTitleBarStoreDefaults from \"./windowTitleBarStoreDefaults\";\nimport { StandardCallback } from \"@finsemble/finsemble-core/types/types\";\nimport { FinsembleWindow, WindowIdentifier } from \"@finsemble/finsemble-core\";\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\n\nconst getWindowNameForDocking = (finsembleWindow: FinsembleWindow) => {\n\tconst parent = finsembleWindow.parentWindow;\n\treturn parent ? parent.name : finsembleWindow.name;\n};\n\ntype ParentParams = {\n\twindowIdentifiers: WindowIdentifier[];\n\tvisibleWindowIdentifier: WindowIdentifier;\n\tcreate: boolean;\n};\n\nconst getStackedWindow = (params: ParentParams, cb: StandardCallback) => {\n\tif (!finsembleWindow.parentWindow && params.create) {\n\t\tconst onParentSet = (evt: any) => {\n\t\t\tconst { parentName } = evt.data;\n\t\t\tfinsembleWindow.setParent({ windowName: parentName }, (err2, windowWrapper) => {\n\t\t\t\tcb?.(err2, windowWrapper);\n\t\t\t});\n\t\t\tfinsembleWindow.removeListener(\"parent-set\", onParentSet);\n\t\t};\n\t\tfinsembleWindow.addListener(\"parent-set\", onParentSet);\n\t\tFSBL.Clients.LauncherClient.spawn(\n\t\t\t\"StackedWindow\",\n\t\t\t{\n\t\t\t\twindowType: \"StackedWindow\",\n\t\t\t\tdata: { windowIdentifiers: params.windowIdentifiers },\n\t\t\t\toptions: { newStack: true },\n\t\t\t},\n\t\t\t(err) => {\n\t\t\t\tif (!err) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tcb?.(err, null);\n\t\t\t}\n\t\t);\n\t} else {\n\t\tfinsembleWindow.getParent(cb);\n\t}\n};\n\nlet windowTitleBarStore: StoreModel;\n\ntype ConstantsType = {\n\tPARENT_WRAPPER_UPDATES: string;\n\tCHILD_WINDOW_FIELD: string;\n\tVISIBLE_WINDOW_FIELD: string;\n\tTAB_SCROLL_POSITION_CHANGED: string;\n};\n\ntype ActionsType = {\n\tparentWrapperStore: any;\n\tparentSubscriptions: any[];\n\tparentWrapper: FinsembleWindow | null;\n\n\tinitialize: () => void;\n\tgetMyDockingGroups: (groupData: any) => any[];\n\tonTabListScrollPositionChanged: StandardCallback;\n\tsetTabListScrollPosition: (translateX: number) => void;\n\tremoteStateUpdate: (command: string, state: any) => void;\n\tclickMinimize: () => void;\n\tclickClose: () => void;\n\ttoggleGroup: () => void;\n\tclickMaximize: () => void;\n\tgetTabs: () => WindowIdentifier[];\n\t_setTabs: (tabs: WindowIdentifier[] | null) => any;\n\taddTabLocally: (windowIdentifier: WindowIdentifier, i: number) => void;\n\tremoveTabsLocally: () => void;\n\tremoveTabLocally: (windowIdentifier: WindowIdentifier) => void;\n\treorderTabLocally: (tab: WindowIdentifier, newIndex: number) => undefined | any;\n\taddTab: (windowIdentifier: WindowIdentifier, i: number) => any;\n\tremoveTab: (windowIdentifier: WindowIdentifier, i: number) => any;\n\tcloseTab: (windowIdentifier: WindowIdentifier) => void;\n\treorderTab: (tab: WindowIdentifier, newIndex: number) => any;\n\tfindTab: (tab: WindowIdentifier) => { tab: WindowIdentifier; currentIndex: number };\n\tsetActiveTab: (windowIdentifier: WindowIdentifier) => Promise<any>;\n\tonTabListChanged: StandardCallback;\n\tstopListeningOnParentWrapper: (cb: Function) => void;\n\tlistenOnParentWrapper: () => void;\n\tsetupStore: (cb?: Function) => void;\n\tgetInitialTabList: (cb: StandardCallback) => void;\n\tcreateParentWrapper: (params: ParentParams, cb?: Function) => void;\n};\n\n// these are constants that are set inside of setupStore. so they're declared as vars and not constants.\nlet constants: ConstantsType;\nconst Actions: ActionsType = {\n\tparentWrapperStore: null,\n\tinitialize: function () {\n\t\t// This ensures that our config is correct, even if the developer missed some entries\n\t\tlet { options } = FSBL.Clients.WindowClient;\n\t\tlet windowTitleBarConfig = options.customData.foreign.components[\"Window Manager\"];\n\t\tlet { FSBLHeader } = windowTitleBarConfig;\n\t\tlet self = this;\n\n\t\t// Display name is first up for display. If it doesn't exist, we look for a default title (or one that's already set on init). If no title, we display the window's name (e.g., '5434-Welcome Component-2321').\n\t\tconst displayName = options.customData?.component?.displayName;\n\n\t\t/**\n\t\t * The windowTitleBar (header) is dumb. It just reflects the state of the component window. The headerCommandChannel allows the WindowClient to take control of the state of the header. All of the details of listening to window events are handled inside the WindowClient\n\t\t */\n\t\tFSBL.Clients.WindowClient.headerCommandChannel((command, state) => {\n\t\t\tthis.remoteStateUpdate(command, state);\n\t\t});\n\n\t\t/**\n\t\t * \"FSBLHeader\" can be true, false or an object. If false then we'll never even be here. If true, then maximize, minimize and close buttons will display. If an object, then the developer can override whether buttons are shown with \"hideMaximize\", \"hideMinimize\" and \"hideClose\"\n\t\t */\n\t\tif (FSBLHeader) {\n\t\t\tconst max = !!FSBLHeader.hideMaximize;\n\n\t\t\twindowTitleBarStore.setValues([\n\t\t\t\t{ field: \"Maximize.hide\", value: max },\n\t\t\t\t{ field: \"Minimize.hide\", value: !!FSBLHeader.hideMinimize },\n\t\t\t\t{ field: \"Close.hide\", value: !!FSBLHeader.hideClose },\n\t\t\t\t{ field: \"AlwaysOnTop.show\", value: !!FSBLHeader.alwaysOnTop },\n\t\t\t]);\n\n\t\t\t// By default, we hack the window's scroll bar so that it displays underneath the header. html.overflow: hidden body.overflow:auto\n\t\t\twindowTitleBarStore.setValue({\n\t\t\t\tfield: \"hackScrollbar\",\n\t\t\t\tvalue: windowTitleBarConfig.hackScrollbar !== false,\n\t\t\t});\n\n\t\t\tconst title = FSBL.Clients.WindowClient.title || windowTitleBarConfig.title || displayName;\n\n\t\t\tif (title) {\n\t\t\t\tdocument.title = title;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Handles whether to show the linker button.\n\t\t */\n\t\tif (windowTitleBarConfig.showLinker) {\n\t\t\t// Get state (channel membership) from the linkerClient. Then set the value in the header so that the title bar accurately reflects the state.\n\t\t\tconst cb: StandardCallback = (err, response) => {\n\t\t\t\tif (response.channels) {\n\t\t\t\t\twindowTitleBarStore.setValue({\n\t\t\t\t\t\tfield: \"Linker.channels\",\n\t\t\t\t\t\tvalue: response.channels,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\twindowTitleBarStore.setValue({\n\t\t\t\t\tfield: \"Linker.showLinkerButton\",\n\t\t\t\t\tvalue: true,\n\t\t\t\t});\n\t\t\t};\n\t\t\tcb(null, FSBL.Clients.LinkerClient.getState());\n\t\t\t/* [Terry] no longer necessary?\n\t\t\tFSBL.Clients.LinkerClient.getLinkedChannels({\n\t\t\t\twindowName: options.name,\n\t\t\t\tuuid: options.uuid,\n\t\t\t\tcomponentType: options.customData.component.type\n\t\t\t}, cb);\n\t\t\t*/\n\t\t\tFSBL.Clients.LinkerClient.onStateChange(cb);\n\t\t}\n\n\t\t/**\n\t\t * Listen for updates from the dragAndDropClient.\n\t\t */\n\t\tFSBL.Clients.RouterClient.subscribe(\n\t\t\t`${FSBL.Clients.WindowClient.options.name}Finsemble.Sharer`,\n\t\t\t(err, response) => {\n\t\t\t\tif (err) {\n\t\t\t\t\treturn console.error(err);\n\t\t\t\t}\n\t\t\t\twindowTitleBarStore.setValues([\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"Sharer.emitterEnabled\",\n\t\t\t\t\t\tvalue: response.data.emitterEnabled,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"Sharer.receiverEnabled\",\n\t\t\t\t\t\tvalue: response.data.receiverEnabled,\n\t\t\t\t\t},\n\t\t\t\t]);\n\t\t\t}\n\t\t);\n\n\t\t/**\n\t\t * When a group update is publish, we sift through the data to see if this window is snapped or grouped with other windows. Then we publish that info, and the GroupingButton renders the correct icon.\n\t\t * @param {*} err\n\t\t * @param {*} response\n\t\t */\n\t\tconst onDockingGroupUpdate: StandardCallback = function (err, response) {\n\t\t\tif (err || !response.data || !response.data.groupData) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tFSBL.Clients.Logger.system.debug(\"On docking group update\", response.data.groupData);\n\t\t\tlet groupNames = Object.keys(response.data.groupData);\n\t\t\tlet movableGroups = groupNames\n\t\t\t\t.filter((groupName) => response.data.groupData[groupName].isMovable)\n\t\t\t\t.map((groupName) => response.data.groupData[groupName]);\n\t\t\t// This is all movable and snapped groups. It's used later to figure out the icon to display.\n\t\t\twindowTitleBarStore.setValue({\n\t\t\t\tfield: \"Main.allDockingGroups\",\n\t\t\t\tvalue: response.data.groupData,\n\t\t\t});\n\n\t\t\twindowTitleBarStore.setValue({\n\t\t\t\tfield: \"Main.allMovableDockingGroups\",\n\t\t\t\tvalue: movableGroups,\n\t\t\t});\n\t\t\tlet myGroups = self.getMyDockingGroups(response.data.groupData);\n\t\t\twindowTitleBarStore.setValue({\n\t\t\t\tfield: \"Main.dockingGroups\",\n\t\t\t\tvalue: myGroups,\n\t\t\t});\n\t\t\t/**\n\t\t\t * Goes through groups and sees if this window is grouped, snapped, or freely hanging out there.\n\t\t\t */\n\t\t\tlet isSnapped = false;\n\t\t\tlet isInMovableGroup = false;\n\t\t\tlet isTopRight = false;\n\t\t\tlet windowName = getWindowNameForDocking(finsembleWindow);\n\t\t\tfor (let i = 0; i < myGroups.length; i++) {\n\t\t\t\tlet myGroup = myGroups[i];\n\t\t\t\tif (myGroup.isMovable) {\n\t\t\t\t\tisInMovableGroup = true;\n\t\t\t\t\tif (windowName == myGroup.topRightWindow) {\n\t\t\t\t\t\tisTopRight = true;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tisSnapped = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet icon: string | false = false;\n\n\t\t\tif (isSnapped) {\n\t\t\t\ticon = \"joiner\";\n\t\t\t}\n\t\t\tif (isInMovableGroup) {\n\t\t\t\ticon = \"ejector\";\n\t\t\t}\n\n\t\t\twindowTitleBarStore.setValues([\n\t\t\t\t{ field: \"isSnapped\", value: isSnapped },\n\t\t\t\t{ field: \"isGrouped\", value: isInMovableGroup },\n\t\t\t\t{ field: \"isTopRight\", value: isTopRight },\n\t\t\t\t{ field: \"Main.dockingIcon\", value: icon },\n\t\t\t]);\n\t\t};\n\n\t\tFSBL.Clients.RouterClient.subscribe(\"Finsemble.WorkspaceService.groupUpdate\", onDockingGroupUpdate);\n\n\t\t// default title.\n\t\twindowTitleBarStore.setValue({\n\t\t\tfield: \"Main.windowTitle\",\n\t\t\tvalue: FSBL.Clients.WindowClient.getWindowTitle(),\n\t\t});\n\n\t\tconst getValuesCallback: StandardCallback = (err, values) => {\n\t\t\tconst finsembleConfig = values.finsemble;\n\n\t\t\t// Check FEA config for DOM based movement configuration\n\t\t\tconst { useDOMBasedMovement } = values[\"finsemble-electron-adapter\"];\n\n\t\t\twindowTitleBarStore.setValue({\n\t\t\t\tfield: \"Main.useDOMBasedMovement\",\n\t\t\t\tvalue: typeof useDOMBasedMovement === \"undefined\" ? true : useDOMBasedMovement,\n\t\t\t});\n\n\t\t\tlet globalWindowManagerConfig = finsembleConfig[\"Window Manager\"] || {\n\t\t\t\talwaysOnTopIcon: false,\n\t\t\t\tshowTabs: false,\n\t\t\t}; // Override defaults if finsemble.Window Manager exists.\n\n\t\t\t// Look to see if docking is enabled. Cascade through backward compatibility with old \"betaFeatures\" and then a default if no config is found at all.\n\n\t\t\tif (!finsembleConfig.servicesConfig) finsembleConfig.servicesConfig = {};\n\t\t\tlet dockingConfig = finsembleConfig.servicesConfig.docking || finsembleConfig.docking;\n\t\t\tif (!dockingConfig && finsembleConfig.betaFeatures) dockingConfig = finsembleConfig.betaFeatures.docking;\n\t\t\tif (!dockingConfig) dockingConfig = { enabled: true };\n\t\t\tif (!dockingConfig.tabbing) dockingConfig.tabbing = {};\n\n\t\t\twindowTitleBarStore.setValues([{ field: \"Main.dockingEnabled\", value: dockingConfig.enabled }]);\n\n\t\t\t// Whether the alwaysOnTop pin shows or not depends first on the global setting (finsemble[\"Window Manager\"].alwaysOnTop) and then\n\t\t\t// on the specific setting for this component (foreign.components[\"Widow Manager\"].alwaysOnTop)\n\t\t\tlet { alwaysOnTopIcon } = globalWindowManagerConfig;\n\t\t\tif (windowTitleBarConfig.alwaysOnTopIcon === false || windowTitleBarConfig.alwaysOnTopIcon === true)\n\t\t\t\t({ alwaysOnTopIcon } = windowTitleBarConfig);\n\n\t\t\twindowTitleBarStore.setValues([{ field: \"AlwaysOnTop.show\", value: alwaysOnTopIcon }]);\n\n\t\t\t// If tabbing is turned off, ignore global/local 'windowManager' config about whether to allow tabbing.\n\t\t\tif (dockingConfig.tabbing.enabled === false) {\n\t\t\t\twindowTitleBarStore.setValue({\n\t\t\t\t\tfield: \"showTabs\",\n\t\t\t\t\tvalue: dockingConfig.tabbing.enabled,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// If tabbing is enabled system-wide, look to the global config for its value. Then look to the local component's config.\n\n\t\t\t\t// This is the global window manager config.\n\t\t\t\tif (typeof windowTitleBarConfig.showTabs !== \"boolean\") {\n\t\t\t\t\twindowTitleBarStore.setValue({\n\t\t\t\t\t\tfield: \"showTabs\",\n\t\t\t\t\t\tvalue: globalWindowManagerConfig.showTabs,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\t// This is the component's config.\n\t\t\t\tif (windowTitleBarConfig.showTabs || windowTitleBarConfig.showTabs === false) {\n\t\t\t\t\twindowTitleBarStore.setValue({\n\t\t\t\t\t\tfield: \"showTabs\",\n\t\t\t\t\t\tvalue: windowTitleBarConfig.showTabs,\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// Once the above has been checked the individual component config is checked for customData.foreign.services[windowService || dockingService][!ignoreTilingAndTabbingRequests || allowTabbing]\n\t\t\t\tlet showTabs = true;\n\t\t\t\tconst getOptionsCallback: StandardCallback = (_, opts) => {\n\t\t\t\t\tif (opts.customData && opts.customData.foreign && opts.customData.foreign.services) {\n\t\t\t\t\t\tif (opts.customData.foreign.services.windowService) {\n\t\t\t\t\t\t\tif (opts.customData.foreign.services.windowService.allowTabbing !== undefined) {\n\t\t\t\t\t\t\t\tshowTabs = opts.customData.foreign.services.windowService.allowTabbing;\n\t\t\t\t\t\t\t} else if (opts.customData.foreign.services.windowService.ignoreTilingAndTabbingRequests != undefined) {\n\t\t\t\t\t\t\t\tshowTabs = !opts.customData.foreign.services.windowService.ignoreTilingAndTabbingRequests;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (opts.customData.foreign.services.dockingService) {\n\t\t\t\t\t\t\tif (opts.customData.foreign.services.dockingService.allowTabbing !== undefined) {\n\t\t\t\t\t\t\t\tshowTabs = opts.customData.foreign.services.dockingService.allowTabbing;\n\t\t\t\t\t\t\t} else if (opts.customData.foreign.services.dockingService.ignoreTilingAndTabbingRequests != undefined) {\n\t\t\t\t\t\t\t\tshowTabs = !opts.customData.foreign.services.dockingService.ignoreTilingAndTabbingRequests;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\twindowTitleBarStore.setValue({\n\t\t\t\t\t\tfield: \"showTabs\",\n\t\t\t\t\t\tvalue: showTabs,\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t\tfinsembleWindow.getOptions(getOptionsCallback);\n\t\t\t}\n\t\t};\n\t\tFSBL.Clients.ConfigClient.getValues(\n\t\t\t[{ field: \"finsemble\" }, { field: \"finsemble-electron-adapter\" }],\n\t\t\tgetValuesCallback\n\t\t);\n\n\t\tActions.getInitialTabList((err, values) => {\n\t\t\tconst onParentSet = () => {\n\t\t\t\tActions.parentWrapper = null;\n\t\t\t\tActions.getInitialTabList(() => {\n\t\t\t\t\tFSBL.Clients.Logger.system.debug(\"docking group update after initial tab list\");\n\t\t\t\t\tonDockingGroupUpdate(null, {\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tgroupData: windowTitleBarStore.getValue({\n\t\t\t\t\t\t\t\tfield: \"Main.allDockingGroups\",\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onParentCleared = () => {\n\t\t\t\tActions.parentWrapper = null;\n\t\t\t\tFSBL.Clients.Logger.system.debug(\"ClearParent, setting tabs to null\");\n\t\t\t\tActions.stopListeningOnParentWrapper(() => {\n\t\t\t\t\tActions.parentWrapperStore = null;\n\t\t\t\t\tActions._setTabs(null);\n\t\t\t\t\tonDockingGroupUpdate(null, {\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tgroupData: windowTitleBarStore.getValue({\n\t\t\t\t\t\t\t\tfield: \"Main.allDockingGroups\",\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tfinsembleWindow?.addListener(\"setParent\", onParentSet);\n\t\t\tfinsembleWindow?.addListener(\"clearParent\", onParentCleared);\n\t\t\tif (err) {\n\t\t\t\treturn FSBL.Clients.Logger.system.error(\"Error in getInitialTabList.\", err);\n\t\t\t}\n\n\t\t\tif (values) Actions._setTabs(values);\n\t\t});\n\t},\n\t/**\n\t * Helper function to sift through all of the data coming from the windowService. Outputs an array of groups that the window belongs to.\n\t */\n\tgetMyDockingGroups: function (groupData) {\n\t\tlet myGroups = [];\n\t\tlet windowName = getWindowNameForDocking(finsembleWindow);\n\t\tif (finsembleWindow?.parentWindow) {\n\t\t\twindowName = finsembleWindow?.parentWindow.name;\n\t\t}\n\t\tFSBL.Clients.Logger.system.debug(\"Getting docking groups for \", windowName, groupData);\n\t\tif (groupData) {\n\t\t\tfor (let groupName in groupData) {\n\t\t\t\tgroupData[groupName].groupName = groupName;\n\t\t\t\tif (groupData[groupName].windowNames.includes(windowName)) {\n\t\t\t\t\tmyGroups.push(groupData[groupName]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn myGroups;\n\t},\n\tonTabListScrollPositionChanged: function (err, response) {\n\t\twindowTitleBarStore.setValue({\n\t\t\tfield: \"tabListTranslateX\",\n\t\t\tvalue: response.data.translateX,\n\t\t});\n\t},\n\tsetTabListScrollPosition: function (translateX) {\n\t\tFSBL.Clients.RouterClient.transmit(constants.TAB_SCROLL_POSITION_CHANGED, {\n\t\t\ttranslateX,\n\t\t});\n\t},\n\t/**\n\t * Handles messages coming from the windowClient.\n\t */\n\tremoteStateUpdate: function (command, state) {\n\t\tconst key = Object.keys(state)[0];\n\t\tconst field = `${command}.${key}`;\n\t\twindowTitleBarStore.setValue({ field: field, value: state[key] });\n\t},\n\t/**\n\t * Minimizes the window.\n\t */\n\tclickMinimize: function () {\n\t\tfinsembleWindow.minimize(() => {});\n\t},\n\t/**\n\t * Closes the window, allows for cleanup. Removes the window from workspace; this function is only invoked when the user clicks the close button.\n\t */\n\tclickClose: function () {\n\t\tFSBL.Clients.WindowClient.close({\n\t\t\tcloseWindow: true,\n\t\t\tremoveFromWorkspace: true, // this will cause the entire stack to close. Using this instead of a new parameter to ensure backwards compatibility\n\t\t\tuserInitiated: true,\n\t\t});\n\t},\n\t/**\n\t * Toggles group membership. If two windows are snapped, and this button is clicked, they become part of the same group that can be moved around together.\n\t */\n\ttoggleGroup: function () {\n\t\tconst groups = windowTitleBarStore.getValue({ field: \"Main.dockingGroups\" });\n\t\tconst isInMovableGroup = groups.some((group: any) => group.isMovable);\n\t\tif (isInMovableGroup) {\n\t\t\tfinsembleWindow.ejectFromGroup();\n\t\t} else {\n\t\t\tfinsembleWindow.formGroup();\n\t\t}\n\t},\n\t/**\n\t * Maximizes the window.\n\t */\n\tclickMaximize: function () {\n\t\tif (finsembleWindow.windowState !== finsembleWindow.WINDOWSTATE.MAXIMIZED)\n\t\t\treturn finsembleWindow.maximize(() => {\n\t\t\t\twindowTitleBarStore.setValue({\n\t\t\t\t\tfield: \"Maximize.maximized\",\n\t\t\t\t\tvalue: true,\n\t\t\t\t});\n\t\t\t});\n\n\t\treturn finsembleWindow.restore(() => {\n\t\t\twindowTitleBarStore.setValue({\n\t\t\t\tfield: \"Maximize.maximized\",\n\t\t\t\tvalue: false,\n\t\t\t});\n\t\t});\n\t},\n\n\tgetTabs() {\n\t\treturn windowTitleBarStore.getValue({ field: \"tabs\" }) as WindowIdentifier[];\n\t},\n\t_setTabs(tabs) {\n\t\tFSBL.Clients.Logger.system.debug(\"Set tabs\", tabs);\n\t\tlet activeIdentifier: any = finsembleWindow.identifier;\n\t\tactiveIdentifier.title = finsembleWindow.windowOptions.title;\n\t\treturn windowTitleBarStore.setValue({\n\t\t\tfield: \"tabs\",\n\t\t\tvalue: tabs || [activeIdentifier],\n\t\t});\n\t},\n\taddTabLocally: function (windowIdentifier, i) {\n\t\tlet tabs = Actions.getTabs();\n\t\tif (typeof i === \"undefined\") {\n\t\t\ti = tabs.length + 1;\n\t\t}\n\t\ttabs.splice(i, 0, windowIdentifier);\n\t\tActions._setTabs(tabs);\n\t},\n\tremoveTabsLocally: function () {\n\t\tActions._setTabs(null);\n\t},\n\tremoveTabLocally: function (windowIdentifier) {\n\t\tlet tabs = Actions.getTabs();\n\t\tlet i = tabs.findIndex((el) => el.windowName === windowIdentifier.windowName && el.uuid === windowIdentifier.uuid);\n\t\ttabs.splice(i, 1);\n\t\tActions._setTabs(tabs);\n\t},\n\treorderTabLocally: function (tab, newIndex) {\n\t\tlet tabs = Actions.getTabs();\n\t\tlet { currentIndex } = Actions.findTab(tab);\n\t\tif (currentIndex === newIndex) return;\n\t\tif (currentIndex === -1) {\n\t\t\treturn Actions.addTabLocally(tab, newIndex);\n\t\t}\n\t\ttabs.splice(currentIndex, 1);\n\t\ttabs.splice(newIndex, 0, tab);\n\n\t\tActions._setTabs(tabs);\n\t},\n\taddTab: function (windowIdentifier, i) {\n\t\tlet tabs = Actions.getTabs();\n\t\ttabs.push(windowIdentifier);\n\t\t// quick UI update\n\t\tActions._setTabs(tabs);\n\t\tlet callback = () => {\n\t\t\tActions.parentWrapper?.setVisibleWindow({ windowIdentifier });\n\t\t};\n\n\t\tif (!Actions.parentWrapper) {\n\t\t\treturn Actions.createParentWrapper({\n\t\t\t\twindowIdentifiers: finsembleWindow.identifier\n\t\t\t\t\t? [finsembleWindow.identifier, windowIdentifier]\n\t\t\t\t\t: [windowIdentifier],\n\t\t\t\tvisibleWindowIdentifier: windowIdentifier,\n\t\t\t\tcreate: true,\n\t\t\t});\n\t\t}\n\t\treturn Actions.parentWrapper.addWindow({ windowIdentifier, position: i }, callback);\n\t},\n\tremoveTab: function (windowIdentifier, i) {\n\t\treturn Actions.parentWrapper?.removeWindow({\n\t\t\twindowIdentifier,\n\t\t\tposition: i,\n\t\t});\n\t},\n\tcloseTab: function (windowIdentifier) {\n\t\tconst close: StandardCallback = (err, wrap) => {\n\t\t\twrap.close({ removeFromWorkspace: true });\n\t\t};\n\t\tFSBL.FinsembleWindow.getInstance(windowIdentifier, close);\n\t},\n\treorderTab: function (tab, newIndex) {\n\t\tlet tabs = Actions.getTabs();\n\t\tlet { currentIndex } = Actions.findTab(tab);\n\t\tif (currentIndex === -1 || !Actions.parentWrapper) {\n\t\t\treturn Actions.addTab(tab, newIndex);\n\t\t}\n\t\ttabs.splice(currentIndex, 1);\n\t\ttabs.splice(newIndex, 0, tab);\n\t\t// Local change, quickly updates the dom.\n\t\tActions._setTabs(tabs);\n\t\tActions.parentWrapper.reorder({ windowIdentifiers: tabs });\n\t},\n\tfindTab: function (tab) {\n\t\tlet tabs = this.getTabs();\n\t\tlet currentIndex = tabs.findIndex((el) => tab.windowName === el.windowName && tab.uuid === el.uuid);\n\t\treturn { tab, currentIndex };\n\t},\n\tsetActiveTab: function (windowIdentifier) {\n\t\tFSBL.Clients.Logger.system.debug(\"setActiveTab.visibleWindow\");\n\t\treturn finsembleWindow.parentWindow.setVisibleWindow({ windowIdentifier });\n\t},\n\tparentWrapper: null,\n\tonTabListChanged: function (err, response) {\n\t\tFSBL.Clients.Logger.system.debug(\"OnTabListChanged\", response.data);\n\t\tif (response.data && response.data.hasOwnProperty(constants.CHILD_WINDOW_FIELD)) {\n\t\t\tActions._setTabs(response.data[constants.CHILD_WINDOW_FIELD]);\n\t\t}\n\t},\n\tparentSubscriptions: [],\n\tstopListeningOnParentWrapper: function (cb) {\n\t\tActions.parentSubscriptions.forEach((sub) => {\n\t\t\tFSBL.Clients.RouterClient.unsubscribe(sub);\n\t\t});\n\t\tActions.parentSubscriptions = []; // remove the subscribeId\n\t\t// Syncs scroll state across all tabs in a stack.\n\t\tFSBL.Clients.RouterClient.removeListener(\n\t\t\tconstants.TAB_SCROLL_POSITION_CHANGED,\n\t\t\tActions.onTabListScrollPositionChanged\n\t\t);\n\t\tcb();\n\t},\n\tlistenOnParentWrapper: function () {\n\t\tlet TABLIST_SUBSCRIPTION = FSBL.Clients.RouterClient.subscribe(\n\t\t\tconstants.PARENT_WRAPPER_UPDATES,\n\t\t\tActions.onTabListChanged\n\t\t);\n\t\tFSBL.Clients.RouterClient.addListener(\n\t\t\tconstants.TAB_SCROLL_POSITION_CHANGED,\n\t\t\tActions.onTabListScrollPositionChanged\n\t\t);\n\t\tActions.parentSubscriptions.push(TABLIST_SUBSCRIPTION);\n\t},\n\tsetupStore: function (cb = Function.prototype) {\n\t\tconstants = {\n\t\t\tPARENT_WRAPPER_UPDATES: `Finsemble.StackedWindow.${Actions.parentWrapper?.identifier?.windowName}`,\n\t\t\tCHILD_WINDOW_FIELD: \"childWindowIdentifiers\",\n\t\t\tVISIBLE_WINDOW_FIELD: \"visibleWindowIdentifier\",\n\t\t\tTAB_SCROLL_POSITION_CHANGED: `${Actions.parentWrapper?.name}.tabListTabListScrollPositionChanged`,\n\t\t};\n\t\tActions.listenOnParentWrapper();\n\t\tcb();\n\t},\n\tgetInitialTabList: function (cb) {\n\t\tfinsembleWindow.getParent((err, parentWrapper) => {\n\t\t\tActions.parentWrapper = parentWrapper;\n\t\t\tif (Actions.parentWrapper) {\n\t\t\t\tFSBL.Clients.Logger.system.debug(\"GetInitialTabList, parent exists\");\n\t\t\t\tActions.setupStore(cb);\n\t\t\t} else {\n\t\t\t\tlet activeIdentifier: any = finsembleWindow.identifier;\n\t\t\t\tactiveIdentifier.title = finsembleWindow.windowOptions.title;\n\t\t\t\tlet tabs = [activeIdentifier];\n\t\t\t\tcb(null, tabs);\n\t\t\t}\n\t\t});\n\t},\n\tcreateParentWrapper(params: ParentParams, cb = Function.prototype) {\n\t\t(window as any).Actions = Actions;\n\t\tif (Actions.parentWrapper) {\n\t\t\tcb();\n\t\t} else {\n\t\t\tconst getStackedWindowCallback: StandardCallback = (err, wrap) => {\n\t\t\t\tif (err) {\n\t\t\t\t\tActions.parentWrapper = null;\n\t\t\t\t\tActions._setTabs(null);\n\t\t\t\t} else {\n\t\t\t\t\tActions.parentWrapper = wrap;\n\t\t\t\t\tActions.setupStore(cb);\n\t\t\t\t}\n\t\t\t};\n\t\t\tgetStackedWindow(params, getStackedWindowCallback);\n\t\t}\n\t},\n};\n\n/**\n * Initializes the store for the windowTitleBar.\n *\n * @param {any} cb\n */\nfunction initialize(cb: Function) {\n\tFSBL.Clients.DistributedStoreClient.createStore(\n\t\t{ store: \"windowTitleBarStore\", values: windowTitleBarStoreDefaults },\n\t\t(err, store) => {\n\t\t\tif (!err && store) {\n\t\t\t\twindowTitleBarStore = store;\n\t\t\t}\n\t\t\tActions.initialize();\n\t\t\treturn cb(store, Actions);\n\t\t}\n\t);\n}\n\nlet getStore = () => windowTitleBarStore;\n\nclass StoreManager {\n\tinitialized = false;\n\n\tinitializing = false;\n\n\tstore: StoreModel | null = null;\n\n\tcallbacks: Function[] = [];\n\n\tconstructor() {}\n\n\tinitialize() {\n\t\tif (this.initializing) return;\n\t\tthis.initializing = true;\n\t\tinitialize((store: StoreModel) => {\n\t\t\tthis.initialized = true;\n\t\t\tthis.store = store;\n\t\t\tthis.callbacks.forEach((cb) => cb(store));\n\t\t});\n\t}\n\n\taddInitializedListener(cb: Function) {\n\t\tif (this.initialized) return cb(this.store);\n\t\tthis.callbacks.push(cb);\n\t}\n\n\tremoveInitializedListener(cb: Function) {\n\t\tthis.callbacks = this.callbacks.filter((entry) => entry !== cb);\n\t}\n}\nconst storeManager = new StoreManager();\n\nexport { storeManager };\nexport { initialize };\nexport { windowTitleBarStore as Store };\nexport { Actions };\nexport { getStore };\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windowTitleBarStoreDefaults.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/stores/windowTitleBarStoreDefaults.ts"],"names":[],"mappings":"AAAA,eAAe;IACd,IAAI,EAAE;QACL,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,KAAK;QACzB,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,KAAK;QACrB,MAAM,EAAE;YACP,KAAK,EAAE;gBACN,KAAK,EAAE,EAAE;aACT;SACD;QACD,mBAAmB,EAAE,IAAI;KACzB;IACD,MAAM,EAAE;QACP,cAAc,EAAE,KAAK;QACrB,eAAe,EAAE,KAAK;QACtB,eAAe,EAAE,KAAK;KACtB;IACD,MAAM,EAAE;QACP,QAAQ,EAAE,EAAE;QACZ,WAAW,EAAE,EAAE;QACf,gBAAgB,EAAE,KAAK;KACvB;IACD,KAAK,EAAE;QACN,IAAI,EAAE,KAAK;KACX;IACD,QAAQ,EAAE;QACT,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;KACX;IACD,QAAQ,EAAE;QACT,IAAI,EAAE,KAAK;KACX;IACD,OAAO,EAAE;QACR,OAAO,EAAE,KAAK;KACd;IACD,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,KAAK;IAChB,UAAU,EAAE,KAAK;IACjB,IAAI,EAAE,EAAE;IACR,SAAS,EAAE,EAAE;CACb,CAAC","sourcesContent":["export default {\
|
|
1
|
+
{"version":3,"file":"windowTitleBarStoreDefaults.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/stores/windowTitleBarStoreDefaults.ts"],"names":[],"mappings":"AAAA,eAAe;IACd,IAAI,EAAE;QACL,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,KAAK;QACzB,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,KAAK;QACrB,MAAM,EAAE;YACP,KAAK,EAAE;gBACN,KAAK,EAAE,EAAE;aACT;SACD;QACD,mBAAmB,EAAE,IAAI;KACzB;IACD,MAAM,EAAE;QACP,cAAc,EAAE,KAAK;QACrB,eAAe,EAAE,KAAK;QACtB,eAAe,EAAE,KAAK;KACtB;IACD,MAAM,EAAE;QACP,QAAQ,EAAE,EAAE;QACZ,WAAW,EAAE,EAAE;QACf,gBAAgB,EAAE,KAAK;KACvB;IACD,KAAK,EAAE;QACN,IAAI,EAAE,KAAK;KACX;IACD,QAAQ,EAAE;QACT,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;KACX;IACD,QAAQ,EAAE;QACT,IAAI,EAAE,KAAK;KACX;IACD,OAAO,EAAE;QACR,OAAO,EAAE,KAAK;KACd;IACD,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,KAAK;IAChB,UAAU,EAAE,KAAK;IACjB,IAAI,EAAE,EAAE;IACR,SAAS,EAAE,EAAE;CACb,CAAC","sourcesContent":["export default {\n\tMain: {\n\t\twindowTitle: \"\",\n\t\tshowDockingTooltip: false,\n\t\tdockingIcon: false,\n\t\tdockingEnabled: false,\n\t\tmains2: {\n\t\t\tmain3: {\n\t\t\t\tmain4: {},\n\t\t\t},\n\t\t},\n\t\tuseDOMBasedMovement: true,\n\t},\n\tSharer: {\n\t\temitterEnabled: false,\n\t\treceiverEnabled: false,\n\t\treceiverHandler: false,\n\t},\n\tLinker: {\n\t\tchannels: {},\n\t\tallChannels: {},\n\t\tshowLinkerButton: false,\n\t},\n\tClose: {\n\t\thide: false,\n\t},\n\tMaximize: {\n\t\tmaximized: false,\n\t\thide: false,\n\t},\n\tMinimize: {\n\t\thide: false,\n\t},\n\tEjector: {\n\t\tenabled: false,\n\t},\n\tisSnapped: false,\n\tisGrouped: false,\n\tisTopRight: false,\n\ttabs: [],\n\tactiveTab: {},\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windowTitleBarContext.js","sourceRoot":"","sources":["../../../src/components/windowTitleBar/windowTitleBarContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAuB/B,MAAM,mBAAmB,GAA8B;IACtD,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,KAAK;IACvB,eAAe,EAAE,KAAK;IACtB,aAAa,EAAE,KAAK;IACpB,iBAAiB,EAAE,KAAK;IACxB,qBAAqB,EAAE,KAAK;IAC5B,kBAAkB,EAAE,KAAK;IACzB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,KAAK;IACtB,YAAY,EAAE,IAAW;IACzB,eAAe,EAAE,EAAE;IACnB,WAAW,EAAE,IAAW;IACxB,iBAAiB,EAAE,IAAW;IAC9B,IAAI,EAAE,IAAW;IACjB,cAAc,EAAE,IAAW;IAC3B,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,aAAa,CAA4B,mBAAmB,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\
|
|
1
|
+
{"version":3,"file":"windowTitleBarContext.js","sourceRoot":"","sources":["../../../src/components/windowTitleBar/windowTitleBarContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAuB/B,MAAM,mBAAmB,GAA8B;IACtD,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,KAAK;IACvB,eAAe,EAAE,KAAK;IACtB,aAAa,EAAE,KAAK;IACpB,iBAAiB,EAAE,KAAK;IACxB,qBAAqB,EAAE,KAAK;IAC5B,kBAAkB,EAAE,KAAK;IACzB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,KAAK;IACtB,YAAY,EAAE,IAAW;IACzB,eAAe,EAAE,EAAE;IACnB,WAAW,EAAE,IAAW;IACxB,iBAAiB,EAAE,IAAW;IAC9B,IAAI,EAAE,IAAW;IACjB,cAAc,EAAE,IAAW;IAC3B,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,aAAa,CAA4B,mBAAmB,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { TabProperties } from \"../../types/windowTitleBar\";\n\nexport interface WindowTitleBarContextType {\n\tshowDockingButton: string | false;\n\tuseDOMBasedMovement: boolean;\n\ttabs: TabProperties[];\n\tshowLinkerButton: boolean;\n\tshowShareButton: boolean;\n\tshowTabRegion: boolean;\n\tshowAlwaysOnTopButton: boolean;\n\tshowMinimizeButton: boolean;\n\tshowMaximizeButton: boolean;\n\tshowCloseButton: boolean;\n\tonTabDropped: Function;\n\tthisWindowTitle: string;\n\tboundingBox: any;\n\tlistenForDragOver: boolean;\n\tonTitleUpdated: Function;\n\tshowTabs: boolean;\n\talwaysOnTop: boolean;\n}\n\nconst defaultConfigValues: WindowTitleBarContextType = {\n\tuseDOMBasedMovement: true,\n\tshowLinkerButton: false,\n\tshowShareButton: false,\n\tshowTabRegion: false,\n\tshowDockingButton: false,\n\tshowAlwaysOnTopButton: false,\n\tshowMinimizeButton: false,\n\tshowMaximizeButton: false,\n\tshowCloseButton: false,\n\tonTabDropped: null as any,\n\tthisWindowTitle: \"\",\n\tboundingBox: null as any,\n\tlistenForDragOver: null as any,\n\ttabs: null as any,\n\tonTitleUpdated: null as any,\n\tshowTabs: false,\n\talwaysOnTop: false,\n};\n\nexport const WindowTitleBarContext = React.createContext<WindowTitleBarContextType>(defaultConfigValues);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timer.spec.js","sourceRoot":"","sources":["../../../src/components/yesNoDialog/Timer.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAElF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,KAAK,oBAAM,KAAK,CAAC,IAAe,EAAI,CAAC,CAAC;QAE7D,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,KAAK,oBAAM,KAAK,CAAC,IAAe,EAAI,CAAC,CAAC;QAE7D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACjE,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\
|
|
1
|
+
{"version":3,"file":"Timer.spec.js","sourceRoot":"","sources":["../../../src/components/yesNoDialog/Timer.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAElF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,KAAK,oBAAM,KAAK,CAAC,IAAe,EAAI,CAAC,CAAC;QAE7D,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,KAAK,oBAAM,KAAK,CAAC,IAAe,EAAI,CAAC,CAAC;QAE7D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACjE,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { Basic } from \"./Timer.stories\";\nimport { IProps } from \"./timer\";\nimport { accessibilityAssessor } from \"../smartDesktopDesigner/tests/a11y_helper\";\n\ndescribe(\"<Timer/>\", () => {\n\tit(\"should pass accessibility scans (Page)\", async () => {\n\t\tconst wrapper = mount(<Basic {...(Basic.args as IProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\tit(\"should display the text 'Time remaining: '\", async () => {\n\t\tconst wrapper = mount(<Basic {...(Basic.args as IProps)} />);\n\n\t\texpect(wrapper.find(\"div\").text()).to.contain(\"Time remaining:\");\n\t\twrapper.unmount();\n\t});\n});\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timer.stories.js","sourceRoot":"","sources":["../../../src/components/yesNoDialog/Timer.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAiB,MAAM,SAAS,CAAC;AAExC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACd,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,KAAK;CAChB,CAAC;AAEF,MAAM,QAAQ,GAAkB,CAAC,IAAY,EAAE,EAAE,CAAC,oBAAC,KAAK,oBAAK,IAAI,EAAI,CAAC;AAEtE,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,aAAa,EAAE,IAAI;IACnB,yBAAyB,EAAE,MAAM,CAAC,SAAS,CAAC;CAC5C,CAAC","sourcesContent":["import React from \"react\";\
|
|
1
|
+
{"version":3,"file":"Timer.stories.js","sourceRoot":"","sources":["../../../src/components/yesNoDialog/Timer.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAiB,MAAM,SAAS,CAAC;AAExC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACd,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,KAAK;CAChB,CAAC;AAEF,MAAM,QAAQ,GAAkB,CAAC,IAAY,EAAE,EAAE,CAAC,oBAAC,KAAK,oBAAK,IAAI,EAAI,CAAC;AAEtE,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,aAAa,EAAE,IAAI;IACnB,yBAAyB,EAAE,MAAM,CAAC,SAAS,CAAC;CAC5C,CAAC","sourcesContent":["import React from \"react\";\nimport Timer, { IProps } from \"./timer\";\nimport { Story } from \"@storybook/react/types-6-0\";\nimport \"../../assets/css/dialogs.css\";\nimport { action } from \"@storybook/addon-actions\";\n\nexport default {\n\ttitle: \"YesNoDialog/Timer\",\n\tcomponent: Timer,\n};\n\nconst Template: Story<IProps> = (args: IProps) => <Timer {...args} />;\n\nexport const Basic = Template.bind({});\nBasic.args = {\n\ttimerDuration: 1000,\n\tontimerDurationExpiration: action(\"Expired\"),\n};\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
body {
|
|
2
|
-
margin: 0px;
|
|
3
|
-
}
|
|
1
|
+
body {
|
|
2
|
+
margin: 0px;
|
|
3
|
+
}
|