@finsemble/finsemble-ui 6.5.2 → 6.6.0-beta.3
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/index.d.ts +1 -0
- package/package.json +18 -15
- package/react/actions/smartDesktopDesignerActions.d.ts +3 -3
- package/react/actions/smartDesktopDesignerActions.js.map +1 -1
- package/react/assets/css/finsemble.css +0 -1
- package/react/assets/css/toolbar.css +0 -4
- package/react/assets/css/userPreferences.css +39 -4
- package/react/componentTemplateGenerator.js +1 -1
- package/react/componentTemplateGenerator.js.map +1 -1
- package/react/components/appCatalog/AppCatalogComponent.d.ts +1 -1
- package/react/components/appCatalog/components/Showcase/ImageCarousel.d.ts +3 -3
- package/react/components/appCatalog/components/Showcase/SupportNotes.d.ts +1 -1
- package/react/components/appCatalog/stores/storeActions.d.ts +1 -1
- package/react/components/common/DropdownButton.js.map +1 -1
- package/react/components/common/FileInput.d.ts +2 -1
- package/react/components/common/FileInput.js +2 -2
- package/react/components/common/FileInput.js.map +1 -1
- package/react/components/common/FinsembleToggle.d.ts +3 -1
- package/react/components/common/FinsembleToggle.js +12 -4
- package/react/components/common/FinsembleToggle.js.map +1 -1
- package/react/components/common/ImagePreview.js +1 -1
- package/react/components/common/ImagePreview.js.map +1 -1
- package/react/components/common/TimeSelect.d.ts +16 -0
- package/react/components/common/TimeSelect.js +143 -0
- package/react/components/common/TimeSelect.js.map +1 -0
- package/react/components/common/css/accordion.css +3 -5
- package/react/components/common/css/application-edit-page.css +4 -1
- package/react/components/common/css/time-select.css +8 -0
- package/react/components/common/css/toggle.css +39 -3
- package/react/components/common/helpers.js +1 -0
- package/react/components/common/helpers.js.map +1 -1
- package/react/components/common/stories/FileInput.stories.d.ts +2 -1
- package/react/components/common/stories/FileInput.stories.js +6 -0
- package/react/components/common/stories/FileInput.stories.js.map +1 -1
- package/react/components/common/stories/FinsembleToggle.stories.d.ts +3 -1
- package/react/components/common/stories/FinsembleToggle.stories.js +12 -0
- package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
- package/react/components/common/stories/TimeSelect.stories.d.ts +11 -0
- package/react/components/common/stories/TimeSelect.stories.js +20 -0
- package/react/components/common/stories/TimeSelect.stories.js.map +1 -0
- package/react/components/common/tests/Accordion.spec.js +1 -1
- package/react/components/common/tests/Accordion.spec.js.map +1 -1
- package/react/components/common/tests/FileInput.spec.js +8 -1
- package/react/components/common/tests/FileInput.spec.js.map +1 -1
- package/react/components/common/tests/FinsembleSelect.spec.js +1 -1
- package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
- package/react/components/common/tests/FinsembleToggle.spec.js +8 -3
- package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
- package/react/components/{smartDesktopDesigner/tests/AppEditPage.spec.d.ts → common/tests/TimeSelect.spec.d.ts} +0 -0
- package/react/components/common/tests/TimeSelect.spec.js +71 -0
- package/react/components/common/tests/TimeSelect.spec.js.map +1 -0
- package/react/components/favorites/FavoriteMaker.js.map +1 -1
- package/react/components/favorites/FavoritesShell.spec.js +1 -1
- package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.spec.js +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
- package/react/components/icon/Icon.d.ts +4 -3
- package/react/components/icon/Icon.js +22 -12
- package/react/components/icon/Icon.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js +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/menu/MenuPortal.js +1 -1
- package/react/components/menu/MenuPortal.js.map +1 -1
- package/react/components/processMonitor/ProcessMonitorTypes.d.ts +4 -11
- package/react/components/processMonitor/ProcessMonitorTypes.js.map +1 -1
- package/react/components/processMonitor/components/ChildWindow.js +5 -10
- package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
- package/react/components/processMonitor/components/ProcessStatistics.js +8 -10
- package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
- package/react/components/processMonitor/constants.d.ts +0 -2
- package/react/components/processMonitor/constants.js +0 -2
- package/react/components/processMonitor/constants.js.map +1 -1
- package/react/components/processMonitor/helpers.d.ts +0 -11
- package/react/components/processMonitor/helpers.js +1 -9
- package/react/components/processMonitor/helpers.js.map +1 -1
- package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts +3 -11
- package/react/components/processMonitor/stores/ProcessMonitorStore.js +22 -62
- package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
- package/react/components/{smartDesktopDesigner → sdd}/AddApp.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/AddApp.js +0 -0
- package/react/components/sdd/AddApp.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/AppEditAccess.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/AppEditAccess.js +0 -0
- package/react/components/sdd/AppEditAccess.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/AppEditPage.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/AppEditPage.js +7 -1
- package/react/components/sdd/AppEditPage.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Appearance.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Appearance.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Appearance.helpers.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Appearance.helpers.js +0 -0
- package/react/components/sdd/Appearance.helpers.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Appearance.js +0 -0
- package/react/components/sdd/Appearance.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Application.d.ts +1 -2
- package/react/components/{smartDesktopDesigner → sdd}/Application.js +37 -39
- package/react/components/sdd/Application.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Applications.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Applications.js +2 -2
- package/react/components/sdd/Applications.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/AssetsPage.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/AssetsPage.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/AssetsPage.js +0 -0
- package/react/components/sdd/AssetsPage.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Authentication.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Authentication.js +1 -1
- package/react/components/sdd/Authentication.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/AuthenticationProviderConfig.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/AuthenticationProviderConfig.js +0 -0
- package/react/components/sdd/AuthenticationProviderConfig.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Content.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Content.js +0 -0
- package/react/components/sdd/Content.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/ContentHeader.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ContentHeader.js +0 -0
- package/react/components/sdd/ContentHeader.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/CurrentView.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/CurrentView.js +0 -0
- package/react/components/sdd/CurrentView.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/EditPreload.d.ts +5 -7
- package/react/components/sdd/EditPreload.js +156 -0
- package/react/components/sdd/EditPreload.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Export.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Export.js +0 -0
- package/react/components/sdd/Export.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/ExportCloud.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ExportCloud.js +0 -0
- package/react/components/sdd/ExportCloud.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/ExportDeployInfo.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ExportDeployInfo.js +0 -0
- package/react/components/sdd/ExportDeployInfo.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/ExportZip.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ExportZip.js +0 -0
- package/react/components/sdd/ExportZip.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/GettingStarted.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/GettingStarted.js +0 -0
- package/react/components/sdd/GettingStarted.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/ItemList.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ItemList.js +0 -0
- package/react/components/sdd/ItemList.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Navigation.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Navigation.js +0 -0
- package/react/components/sdd/Navigation.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/OptionalSettingsView.d.ts +1 -3
- package/react/components/sdd/OptionalSettingsView.js +56 -0
- package/react/components/sdd/OptionalSettingsView.js.map +1 -0
- package/react/components/sdd/Preloads.d.ts +6 -0
- package/react/components/sdd/Preloads.js +24 -0
- package/react/components/sdd/Preloads.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/ProjectErrors.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ProjectErrors.js +0 -0
- package/react/components/sdd/ProjectErrors.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Publish.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Publish.js +0 -0
- package/react/components/sdd/Publish.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/PublishProgress.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/PublishProgress.js +0 -0
- package/react/components/sdd/PublishProgress.js.map +1 -0
- package/react/components/sdd/SmartDesktopDesigner.d.ts +29 -0
- package/react/components/sdd/SmartDesktopDesigner.js +122 -0
- package/react/components/sdd/SmartDesktopDesigner.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/ThemePage.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ThemePage.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/ThemePage.js +0 -0
- package/react/components/sdd/ThemePage.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Themes.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Themes.js +0 -0
- package/react/components/sdd/Themes.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/Toolbar.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/Toolbar.js +9 -7
- package/react/components/sdd/Toolbar.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/View.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/View.js +0 -0
- package/react/components/sdd/View.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/common/fsbl_functions.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/common/fsbl_functions.js +0 -0
- package/react/components/sdd/common/fsbl_functions.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/common/getCSSVars.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/common/getCSSVars.js +0 -0
- package/react/components/sdd/common/getCSSVars.js.map +1 -0
- package/react/components/sdd/common/setPreloadDefaults.d.ts +1 -0
- package/react/components/sdd/common/setPreloadDefaults.js +21 -0
- package/react/components/sdd/common/setPreloadDefaults.js.map +1 -0
- package/react/components/{smartDesktopDesigner/fixtures → sdd/common}/views.d.ts +0 -0
- package/react/components/sdd/common/views.js +202 -0
- package/react/components/sdd/common/views.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/appearance.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/applications.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/authentication.css +5 -1
- package/react/components/{smartDesktopDesigner → sdd}/css/buttons.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/export.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/getting-started.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/nav.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/project-errors.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/project-header.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/styles.css +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/css/views.css +0 -1
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/apps.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/apps.js +10 -10
- package/react/components/sdd/fixtures/apps.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/authenticationProps.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/authenticationProps.js +0 -0
- package/react/components/sdd/fixtures/authenticationProps.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/configTemplate.d.ts +1 -1
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/configTemplate.js +1 -1
- package/react/components/sdd/fixtures/configTemplate.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/exportProps.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/exportProps.js +0 -0
- package/react/components/sdd/fixtures/exportProps.js.map +1 -0
- package/react/components/sdd/fixtures/preloads.d.ts +3 -0
- package/react/components/sdd/fixtures/preloads.js +57 -0
- package/react/components/sdd/fixtures/preloads.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/projectErrorsProps.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/projectErrorsProps.js +0 -0
- package/react/components/sdd/fixtures/projectErrorsProps.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/publishProgress.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/publishProgress.js +0 -0
- package/react/components/sdd/fixtures/publishProgress.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/themeProps.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/themeProps.js +0 -0
- package/react/components/sdd/fixtures/themeProps.js.map +1 -0
- package/react/components/sdd/fixtures/views.d.ts +3 -0
- package/react/components/{smartDesktopDesigner → sdd}/fixtures/views.js +0 -0
- package/react/components/sdd/fixtures/views.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/sdd_helpers.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/sdd_helpers.js +0 -0
- package/react/components/sdd/sdd_helpers.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/AppEditPage.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/AppEditPage.stories.js +0 -0
- package/react/components/sdd/stories/AppEditPage.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Appearance.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Appearance.stories.js +0 -0
- package/react/components/sdd/stories/Appearance.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Applications.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Applications.stories.js +0 -0
- package/react/components/sdd/stories/Applications.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/AssetsPage.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/AssetsPage.stories.js +0 -0
- package/react/components/sdd/stories/AssetsPage.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Authentication.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Authentication.stories.js +0 -0
- package/react/components/sdd/stories/Authentication.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ContentHeader.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ContentHeader.stories.js +0 -0
- package/react/components/sdd/stories/ContentHeader.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Export.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Export.stories.js +0 -0
- package/react/components/sdd/stories/Export.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ExportCloud.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ExportCloud.stories.js +0 -0
- package/react/components/sdd/stories/ExportCloud.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ExportZip.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ExportZip.stories.js +0 -0
- package/react/components/sdd/stories/ExportZip.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/GettingStarted.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/GettingStarted.stories.js +0 -0
- package/react/components/sdd/stories/GettingStarted.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ItemList.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ItemList.stories.js +0 -0
- package/react/components/sdd/stories/ItemList.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Navigation.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Navigation.stories.js +0 -0
- package/react/components/sdd/stories/Navigation.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/OptionalSettingsView.stories.d.ts +3 -2
- package/react/components/sdd/stories/OptionalSettingsView.stories.js +27 -0
- package/react/components/sdd/stories/OptionalSettingsView.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ProjectErrors.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ProjectErrors.stories.js +0 -0
- package/react/components/sdd/stories/ProjectErrors.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Publish.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Publish.stories.js +0 -0
- package/react/components/sdd/stories/Publish.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/PublishProgress.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/PublishProgress.stories.js +0 -0
- package/react/components/sdd/stories/PublishProgress.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/SmartDesktopDesigner.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/SmartDesktopDesigner.stories.js +1 -0
- package/react/components/sdd/stories/SmartDesktopDesigner.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ThemePage.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/ThemePage.stories.js +0 -0
- package/react/components/sdd/stories/ThemePage.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Themes.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Themes.stories.js +0 -0
- package/react/components/sdd/stories/Themes.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Toolbar.stories.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/stories/Toolbar.stories.js +0 -0
- package/react/components/sdd/stories/Toolbar.stories.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/Application.spec.d.ts → sdd/tests/AppEditPage.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/AppEditPage.spec.js +0 -0
- package/react/components/sdd/tests/AppEditPage.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/Authentication.spec.d.ts → sdd/tests/Application.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Application.spec.js +13 -31
- package/react/components/sdd/tests/Application.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Applications.spec.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Applications.spec.js +0 -0
- package/react/components/sdd/tests/Applications.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/ContentHeader.spec.d.ts → sdd/tests/Authentication.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Authentication.spec.js +0 -0
- package/react/components/sdd/tests/Authentication.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/EditPreload.spec.d.ts → sdd/tests/ContentHeader.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/ContentHeader.spec.js +0 -0
- package/react/components/sdd/tests/ContentHeader.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/Export.spec.d.ts → sdd/tests/EditPreload.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/EditPreload.spec.js +8 -10
- package/react/components/sdd/tests/EditPreload.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/ExportZip.spec.d.ts → sdd/tests/Export.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Export.spec.js +0 -0
- package/react/components/sdd/tests/Export.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/ItemList.spec.d.ts → sdd/tests/ExportZip.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/ExportZip.spec.js +0 -0
- package/react/components/sdd/tests/ExportZip.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/Navigation.spec.d.ts → sdd/tests/ItemList.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/ItemList.spec.js +0 -0
- package/react/components/sdd/tests/ItemList.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/Preloads.spec.d.ts → sdd/tests/Navigation.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Navigation.spec.js +0 -0
- package/react/components/sdd/tests/Navigation.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/ProjectErrors.spec.d.ts → sdd/tests/OptionalSettingsView.spec.d.ts} +0 -0
- package/react/components/sdd/tests/OptionalSettingsView.spec.js +22 -0
- package/react/components/sdd/tests/OptionalSettingsView.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/Publish.spec.d.ts → sdd/tests/ProjectErrors.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/ProjectErrors.spec.js +0 -0
- package/react/components/sdd/tests/ProjectErrors.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/PublishProgess.spec.d.ts → sdd/tests/Publish.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Publish.spec.js +0 -0
- package/react/components/sdd/tests/Publish.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/SmartDesktopDesigner.spec.d.ts → sdd/tests/PublishProgess.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/PublishProgess.spec.js +0 -0
- package/react/components/sdd/tests/PublishProgess.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/Themes.spec.d.ts → sdd/tests/SmartDesktopDesigner.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/SmartDesktopDesigner.spec.js +1 -1
- package/react/components/sdd/tests/SmartDesktopDesigner.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner/tests/sdd_helpers.spec.d.ts → sdd/tests/Themes.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Themes.spec.js +0 -0
- package/react/components/sdd/tests/Themes.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Toolbar.spec.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/Toolbar.spec.js +0 -0
- package/react/components/sdd/tests/Toolbar.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/a11y_helper.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/a11y_helper.js +0 -0
- package/react/components/sdd/tests/a11y_helper.js.map +1 -0
- package/react/components/{userPreferences/tests/ScheduledRestart.spec.d.ts → sdd/tests/sdd_helpers.spec.d.ts} +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/tests/sdd_helpers.spec.js +0 -0
- package/react/components/sdd/tests/sdd_helpers.spec.js.map +1 -0
- package/react/components/{smartDesktopDesigner → sdd}/themeDefinitions.d.ts +0 -0
- package/react/components/{smartDesktopDesigner → sdd}/themeDefinitions.js +0 -0
- package/react/components/sdd/themeDefinitions.js.map +1 -0
- package/react/components/search/SearchBestMatch.js.map +1 -1
- package/react/components/search/SearchProviderResults.d.ts +3 -1
- package/react/components/search/SearchProviderResults.js.map +1 -1
- package/react/components/search/SearchResult.d.ts +3 -1
- package/react/components/search/SearchResult.js +9 -7
- package/react/components/search/SearchResult.js.map +1 -1
- package/react/components/shared/DefaultDropdownButton.js +5 -4
- package/react/components/shared/DefaultDropdownButton.js.map +1 -1
- package/react/components/shared/tests/DefaultDropdownButton.spec.js +9 -0
- package/react/components/shared/tests/DefaultDropdownButton.spec.js.map +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.spec.js +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/SmartDesktopDesigner.d.ts +0 -11
- package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js +2 -116
- package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
- package/react/components/smartDesktopDesigner/common/views.js +1 -203
- package/react/components/smartDesktopDesigner/common/views.js.map +1 -1
- package/react/components/toolbar/AutoArrange.js +1 -1
- package/react/components/toolbar/AutoArrange.js.map +1 -1
- package/react/components/toolbar/AutoArrange.spec.d.ts +1 -0
- package/react/components/toolbar/AutoArrange.spec.js +48 -0
- package/react/components/toolbar/AutoArrange.spec.js.map +1 -0
- package/react/components/toolbar/AutoArrange.stories.d.ts +11 -0
- package/react/components/toolbar/AutoArrange.stories.js +21 -0
- package/react/components/toolbar/AutoArrange.stories.js.map +1 -0
- package/react/components/toolbar/SddButton.d.ts +2 -0
- package/react/components/toolbar/SddButton.js +23 -0
- package/react/components/toolbar/SddButton.js.map +1 -0
- package/react/components/toolbar/ToolbarShell.js +4 -1
- package/react/components/toolbar/ToolbarShell.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js +2 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.d.ts +3 -2
- package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
- package/react/components/toolbar/appLauncher/AppLauncherMenu.js +15 -4
- package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
- package/react/components/toolbar/appLauncher/components/componentList.js +3 -4
- package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
- package/react/components/toolbar/dashbar/Dashbar.js +2 -0
- package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js +71 -12
- package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
- package/react/components/userPreferences/UserPreferenceTypes.d.ts +3 -2
- package/react/components/userPreferences/UserPreferenceTypes.js.map +1 -1
- package/react/components/userPreferences/components/content/General.d.ts +2 -5
- package/react/components/userPreferences/components/content/General.js +31 -11
- package/react/components/userPreferences/components/content/General.js.map +1 -1
- package/react/components/userPreferences/components/content/Workspaces.d.ts +5 -0
- package/react/components/userPreferences/components/content/Workspaces.js +58 -17
- package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
- package/react/components/userPreferences/components/general/ScheduledClose.d.ts +10 -0
- package/react/components/userPreferences/components/general/ScheduledClose.js +95 -0
- package/react/components/userPreferences/components/general/ScheduledClose.js.map +1 -0
- package/react/components/userPreferences/stores/UserPreferencesStore.d.ts +6 -2
- package/react/components/userPreferences/stores/UserPreferencesStore.js +19 -3
- package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
- package/react/components/userPreferences/stories/General.stories.d.ts +6 -2
- package/react/components/userPreferences/stories/ScheduledClose.stories.d.ts +12 -0
- package/react/components/userPreferences/stories/ScheduledClose.stories.js +53 -0
- package/react/components/userPreferences/stories/ScheduledClose.stories.js.map +1 -0
- package/react/components/userPreferences/tests/General.spec.js +4 -17
- package/react/components/userPreferences/tests/General.spec.js.map +1 -1
- package/react/components/userPreferences/tests/ScheduledClose.spec.d.ts +1 -0
- package/react/components/userPreferences/tests/ScheduledClose.spec.js +47 -0
- package/react/components/userPreferences/tests/ScheduledClose.spec.js.map +1 -0
- package/react/components/windowTitleBar/WindowTitleBarShell.d.ts +1 -0
- package/react/components/windowTitleBar/WindowTitleBarShell.js +16 -6
- package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
- package/react/components/windowTitleBar/components/center/TabList.js +2 -2
- package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
- package/react/components/windowTitleBar/components/windowTitle.js +11 -10
- package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
- package/react/components/windowTitleBar/stores/windowTitleBarStore.js +12 -9
- package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
- package/react/components/yesNoDialog/Timer.spec.js +1 -1
- package/react/components/yesNoDialog/Timer.spec.js.map +1 -1
- package/react/components/yesNoDialog/YesNoDialog.spec.js +1 -1
- package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
- package/react/hooks/useSearch.d.ts +2 -1
- package/react/hooks/useSearch.js.map +1 -1
- package/react/hooks/useToolbar.js +6 -0
- package/react/hooks/useToolbar.js.map +1 -1
- package/react/reducers/rootReducer.d.ts +1 -1
- package/react/reducers/smartDesktopDesignerReducer.js +1 -1
- package/react/reducers/smartDesktopDesignerReducer.js.map +1 -1
- package/react/store.d.ts +2 -2
- package/react/types/advancedAppLauncherTypes.d.ts +5 -3
- package/react/types/advancedAppLauncherTypes.js.map +1 -1
- package/react/types/favoriteTypes.d.ts +4 -2
- package/react/types/favoriteTypes.js.map +1 -1
- package/react/types/smartDesktopDesignerTypes.d.ts +9 -1
- package/react/types/smartDesktopDesignerTypes.js.map +1 -1
- package/react/components/smartDesktopDesigner/AddApp.js.map +0 -1
- package/react/components/smartDesktopDesigner/AppEditAccess.js.map +0 -1
- package/react/components/smartDesktopDesigner/AppEditPage.js.map +0 -1
- package/react/components/smartDesktopDesigner/Appearance.helpers.js.map +0 -1
- package/react/components/smartDesktopDesigner/Appearance.js.map +0 -1
- package/react/components/smartDesktopDesigner/Application.js.map +0 -1
- package/react/components/smartDesktopDesigner/Applications.js.map +0 -1
- package/react/components/smartDesktopDesigner/AssetsPage.js.map +0 -1
- package/react/components/smartDesktopDesigner/Authentication.js.map +0 -1
- package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js.map +0 -1
- package/react/components/smartDesktopDesigner/Content.js.map +0 -1
- package/react/components/smartDesktopDesigner/ContentHeader.js.map +0 -1
- package/react/components/smartDesktopDesigner/CurrentView.js.map +0 -1
- package/react/components/smartDesktopDesigner/EditPreload.js +0 -169
- package/react/components/smartDesktopDesigner/EditPreload.js.map +0 -1
- package/react/components/smartDesktopDesigner/Export.js.map +0 -1
- package/react/components/smartDesktopDesigner/ExportCloud.js.map +0 -1
- package/react/components/smartDesktopDesigner/ExportDeployInfo.js.map +0 -1
- package/react/components/smartDesktopDesigner/ExportZip.js.map +0 -1
- package/react/components/smartDesktopDesigner/GettingStarted.js.map +0 -1
- package/react/components/smartDesktopDesigner/ItemList.js.map +0 -1
- package/react/components/smartDesktopDesigner/Navigation.js.map +0 -1
- package/react/components/smartDesktopDesigner/OptionalSettingsView.js +0 -71
- package/react/components/smartDesktopDesigner/OptionalSettingsView.js.map +0 -1
- package/react/components/smartDesktopDesigner/Preloads.d.ts +0 -8
- package/react/components/smartDesktopDesigner/Preloads.js +0 -26
- package/react/components/smartDesktopDesigner/Preloads.js.map +0 -1
- package/react/components/smartDesktopDesigner/ProjectErrors.js.map +0 -1
- package/react/components/smartDesktopDesigner/Publish.js.map +0 -1
- package/react/components/smartDesktopDesigner/PublishProgress.js.map +0 -1
- package/react/components/smartDesktopDesigner/ThemePage.js.map +0 -1
- package/react/components/smartDesktopDesigner/Themes.js.map +0 -1
- package/react/components/smartDesktopDesigner/Toolbar.js.map +0 -1
- package/react/components/smartDesktopDesigner/View.js.map +0 -1
- package/react/components/smartDesktopDesigner/common/fsbl_functions.js.map +0 -1
- package/react/components/smartDesktopDesigner/common/getCSSVars.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/apps.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/configTemplate.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/exportProps.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/preloads.d.ts +0 -22
- package/react/components/smartDesktopDesigner/fixtures/preloads.js +0 -40
- package/react/components/smartDesktopDesigner/fixtures/preloads.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/projectErrorsProps.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/publishProgress.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/themeProps.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/views.js.map +0 -1
- package/react/components/smartDesktopDesigner/sdd_helpers.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Appearance.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Applications.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/AssetsPage.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Authentication.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/ContentHeader.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/EditPreload.stories.d.ts +0 -11
- package/react/components/smartDesktopDesigner/stories/EditPreload.stories.js +0 -35
- package/react/components/smartDesktopDesigner/stories/EditPreload.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Export.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/ItemList.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Navigation.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/OptionalSettingsView.stories.js +0 -28
- package/react/components/smartDesktopDesigner/stories/OptionalSettingsView.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Preloads.stories.d.ts +0 -11
- package/react/components/smartDesktopDesigner/stories/Preloads.stories.js +0 -31
- package/react/components/smartDesktopDesigner/stories/Preloads.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Publish.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/ThemePage.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Themes.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/stories/Toolbar.stories.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Application.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Applications.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Authentication.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/ContentHeader.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/EditPreload.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Export.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/ItemList.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Navigation.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Preloads.spec.js +0 -47
- package/react/components/smartDesktopDesigner/tests/Preloads.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Publish.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Themes.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/Toolbar.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/a11y_helper.js.map +0 -1
- package/react/components/smartDesktopDesigner/tests/sdd_helpers.spec.js.map +0 -1
- package/react/components/smartDesktopDesigner/themeDefinitions.js.map +0 -1
- package/react/components/toolbar/appLauncher/DynamicAppLauncher.d.ts +0 -6
- package/react/components/toolbar/appLauncher/DynamicAppLauncher.js +0 -23
- package/react/components/toolbar/appLauncher/DynamicAppLauncher.js.map +0 -1
- package/react/components/userPreferences/components/general/ScheduledRestart.d.ts +0 -27
- package/react/components/userPreferences/components/general/ScheduledRestart.js +0 -190
- package/react/components/userPreferences/components/general/ScheduledRestart.js.map +0 -1
- package/react/components/userPreferences/tests/ScheduledRestart.spec.js +0 -70
- package/react/components/userPreferences/tests/ScheduledRestart.spec.js.map +0 -1
- package/react/hooks/useWorkspace.d.ts +0 -5
- package/react/hooks/useWorkspace.js +0 -26
- package/react/hooks/useWorkspace.js.map +0 -1
- package/react/types/iconTypes.d.ts +0 -11
- package/react/types/iconTypes.js +0 -2
- package/react/types/iconTypes.js.map +0 -1
- package/react/types/searchTypes.d.ts +0 -22
- package/react/types/searchTypes.js +0 -2
- package/react/types/searchTypes.js.map +0 -1
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { Preloads } from "../Preloads";
|
|
3
|
-
import "../../../assets/css/finsemble.css";
|
|
4
|
-
const preloads = [
|
|
5
|
-
{
|
|
6
|
-
url: "http://localhost:3375/build/preloads/zoom.js",
|
|
7
|
-
alias: "zoom",
|
|
8
|
-
},
|
|
9
|
-
{
|
|
10
|
-
url: "http://localhost:3375/build/preloads/nativeOverrides.js",
|
|
11
|
-
alias: "native-overrides",
|
|
12
|
-
},
|
|
13
|
-
];
|
|
14
|
-
export default {
|
|
15
|
-
title: "Views/Preloads/List",
|
|
16
|
-
component: Preloads,
|
|
17
|
-
};
|
|
18
|
-
const Template = (args) => React.createElement(Preloads, Object.assign({}, args));
|
|
19
|
-
export const EmptyList = Template.bind({});
|
|
20
|
-
EmptyList.args = {
|
|
21
|
-
preloads: [],
|
|
22
|
-
};
|
|
23
|
-
export const PopulatedList = Template.bind({});
|
|
24
|
-
PopulatedList.args = {
|
|
25
|
-
preloads,
|
|
26
|
-
setEditView: console.log,
|
|
27
|
-
deletePreload: async (_preloadAlias) => {
|
|
28
|
-
return { err: null };
|
|
29
|
-
},
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=Preloads.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Preloads.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/Preloads.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAoB,MAAM,aAAa,CAAC;AAEzD,OAAO,mCAAmC,CAAC;AAE3C,MAAM,QAAQ,GAAG;IAChB;QACC,GAAG,EAAE,8CAA8C;QACnD,KAAK,EAAE,MAAM;KACb;IACD;QACC,GAAG,EAAE,yDAAyD;QAC9D,KAAK,EAAE,kBAAkB;KACzB;CACD,CAAC;AAEF,eAAe;IACd,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,QAAQ;CACnB,CAAC;AAEF,MAAM,QAAQ,GAA4B,CAAC,IAAsB,EAAE,EAAE,CAAC,oBAAC,QAAQ,oBAAK,IAAI,EAAI,CAAC;AAE7F,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3C,SAAS,CAAC,IAAI,GAAG;IAChB,QAAQ,EAAE,EAAE;CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/C,aAAa,CAAC,IAAI,GAAG;IACpB,QAAQ;IACR,WAAW,EAAE,OAAO,CAAC,GAAG;IACxB,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;QACtC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;CACD,CAAC","sourcesContent":["import React from \"react\";\nimport { Preloads, PreloadListProps } from \"../Preloads\";\nimport { Story } from \"@storybook/react/types-6-0\";\nimport \"../../../assets/css/finsemble.css\";\n\nconst preloads = [\n\t{\n\t\turl: \"http://localhost:3375/build/preloads/zoom.js\",\n\t\talias: \"zoom\",\n\t},\n\t{\n\t\turl: \"http://localhost:3375/build/preloads/nativeOverrides.js\",\n\t\talias: \"native-overrides\",\n\t},\n];\n\nexport default {\n\ttitle: \"Views/Preloads/List\",\n\tcomponent: Preloads,\n};\n\nconst Template: Story<PreloadListProps> = (args: PreloadListProps) => <Preloads {...args} />;\n\nexport const EmptyList = Template.bind({});\nEmptyList.args = {\n\tpreloads: [],\n};\n\nexport const PopulatedList = Template.bind({});\nPopulatedList.args = {\n\tpreloads,\n\tsetEditView: console.log,\n\tdeletePreload: async (_preloadAlias) => {\n\t\treturn { err: null };\n\t},\n};\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectErrors.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/ProjectErrors.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAsB,MAAM,kBAAkB,CAAC;AACrE,OAAO,mCAAmC,CAAC;AAC3C,OAAO,6BAA6B,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,oBAAoB,MAAM,gCAAgC,CAAC;AAElE,eAAe;IACd,KAAK,EAAE,sCAAsC;IAC7C,SAAS,EAAE,aAAa;CACxB,CAAC;AAEF,MAAM,QAAQ,GAA8B,CAAC,IAAwB,EAAE,EAAE;IACxE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEjB,OAAO,CACN,oBAAC,iBAAiB,IAAC,KAAK,EAAE,WAAW,EAAE;QACtC,oBAAC,aAAa,oBAAK,IAAI,EAAI,CACR,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACzC,OAAO,CAAC,IAAI,qBACR,oBAAoB,CACvB,CAAC","sourcesContent":["import React from \"react\";\nimport { ProjectErrors, ProjectErrorsProps } from \"../ProjectErrors\";\nimport \"../../../assets/css/finsemble.css\";\nimport \"../../common/css/styles.css\";\nimport { Story } from \"@storybook/react/types-6-0\";\nimport { initFSBL } from \"../../common/helpers\";\nimport { FinsembleProvider, createStore } from \"../../FinsembleProvider\";\nimport PROJECT_ERRORS_PROPS from \"../fixtures/projectErrorsProps\";\n\nexport default {\n\ttitle: \"Smart Desktop Designer/ProjectErrors\",\n\tcomponent: ProjectErrors,\n};\n\nconst Template: Story<ProjectErrorsProps> = (args: ProjectErrorsProps) => {\n\tinitFSBL(window);\n\n\treturn (\n\t\t<FinsembleProvider store={createStore()}>\n\t\t\t<ProjectErrors {...args} />\n\t\t</FinsembleProvider>\n\t);\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n\t...PROJECT_ERRORS_PROPS,\n};\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Publish.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/Publish.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\nimport { ExportProps } from \"../Export\";\nimport { Publish } from \"../Publish\";\nimport \"../../../assets/css/finsemble.css\";\nimport \"../../common/css/styles.css\";\nimport { Story } from \"@storybook/react/types-6-0\";\nimport { initFSBL } from \"../../common/helpers\";\nimport { FinsembleProvider } from \"../../FinsembleProvider\";\nimport publishTests from \"../fixtures/publishProgress\";\nimport { useDispatch } from \"../../../store\";\nimport { SmartDesktopDesignerActions } from \"../../../actions/smartDesktopDesignerActions\";\nimport { DEFAULT_PROPS } from \"../fixtures/exportProps\";\n\nexport default {\n\ttitle: \"Smart Desktop Designer/Publish\",\n\tcomponent: Publish,\n};\n\nconst Dispatcher = (props: ExportProps) => {\n\tconst dispatch = useDispatch();\n\n\tif (props.publishToCosaicCloud) {\n\t\tprops\n\t\t\t.publishToCosaicCloud()\n\t\t\t.then((currentDeployInfo) => dispatch(SmartDesktopDesignerActions.set_deploy_info(currentDeployInfo)))\n\t\t\t.catch((error) => dispatch(SmartDesktopDesignerActions.set_publish_error(error)));\n\t}\n\n\treturn <></>;\n};\n\nconst Template: Story<ExportProps> = (args: ExportProps) => {\n\tinitFSBL(window);\n\n\treturn (\n\t\t<FinsembleProvider>\n\t\t\t<Publish {...args} />\n\t\t\t<Dispatcher {...args} />\n\t\t</FinsembleProvider>\n\t);\n};\n\nexport const DefaultPublish = Template.bind({});\nDefaultPublish.args = { ...DEFAULT_PROPS };\n\nexport const Error1Publish = Template.bind({});\nError1Publish.args = {\n\t...DEFAULT_PROPS,\n\tgetPublishProgress: () =>\n\t\tnew Promise((resolve) => {\n\t\t\tresolve(publishTests.find((test) => test.name === \"step-1-fail\")!.states[0]);\n\t\t}),\n};\n\nexport const Error2Publish = Template.bind({});\nError2Publish.args = {\n\t...DEFAULT_PROPS,\n\tgetPublishProgress: () =>\n\t\tnew Promise((resolve) => {\n\t\t\tresolve(publishTests.find((test) => test.name === \"step-2-fail\")!.states[0]);\n\t\t}),\n};\n\nexport const Error3Publish = Template.bind({});\nError3Publish.args = {\n\t...DEFAULT_PROPS,\n\tgetPublishProgress: () =>\n\t\tnew Promise((resolve) => {\n\t\t\tresolve(publishTests.find((test) => test.name === \"step-3-fail\")!.states[0]);\n\t\t}),\n};\n\nexport const Error4Publish = Template.bind({});\nError4Publish.args = {\n\t...DEFAULT_PROPS,\n\tgetPublishProgress: () =>\n\t\tnew Promise((resolve) => {\n\t\t\tresolve(publishTests.find((test) => test.name === \"step-4-fail\")!.states[0]);\n\t\t}),\n};\n\nexport const SuccessPublish = Template.bind({});\nSuccessPublish.args = {\n\t...DEFAULT_PROPS,\n\tgetPublishProgress: () =>\n\t\tnew Promise((resolve) => {\n\t\t\tresolve(publishTests.find((test) => test.name === \"success\")!.states[0]);\n\t\t}),\n};\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PublishProgress.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/PublishProgress.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAwB,MAAM,oBAAoB,CAAC;AAC3E,OAAO,mCAAmC,CAAC;AAC3C,OAAO,6BAA6B,CAAC;AAGrC,eAAe;IACd,KAAK,EAAE,wCAAwC;IAC/C,SAAS,EAAE,eAAe;CAC1B,CAAC;AAEF,MAAM,QAAQ,GAAgC,CAAC,IAA0B,EAAE,EAAE,CAAC,oBAAC,eAAe,oBAAK,IAAI,EAAI,CAAC;AAE5G,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxD,sBAAsB,CAAC,IAAI,GAAG;IAC7B,eAAe,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxD,sBAAsB,CAAC,IAAI,GAAG;IAC7B,eAAe,EAAE,EAAE;CACnB,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrD,mBAAmB,CAAC,IAAI,GAAG;IAC1B,eAAe,EAAE,EAAE;CACnB,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrD,mBAAmB,CAAC,IAAI,GAAG;IAC1B,eAAe,EAAE,GAAG;CACpB,CAAC","sourcesContent":["import React from \"react\";\nimport { PublishProgress, PublishProgressProps } from \"../PublishProgress\";\nimport \"../../../assets/css/finsemble.css\";\nimport \"../../common/css/styles.css\";\nimport { Story } from \"@storybook/react/types-6-0\";\n\nexport default {\n\ttitle: \"Smart Desktop Designer/PublishProgress\",\n\tcomponent: PublishProgress,\n};\n\nconst Template: Story<PublishProgressProps> = (args: PublishProgressProps) => <PublishProgress {...args} />;\n\nexport const InitialPublishProgress = Template.bind({});\nInitialPublishProgress.args = {\n\tpercentComplete: 0,\n};\n\nexport const QuarterPublishProgress = Template.bind({});\nQuarterPublishProgress.args = {\n\tpercentComplete: 25,\n};\n\nexport const HalfPublishProgress = Template.bind({});\nHalfPublishProgress.args = {\n\tpercentComplete: 50,\n};\n\nexport const FullPublishProgress = Template.bind({});\nFullPublishProgress.args = {\n\tpercentComplete: 100,\n};\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SmartDesktopDesigner.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAA6B,MAAM,yBAAyB,CAAC;AAC1F,OAAO,mCAAmC,CAAC;AAC3C,OAAO,6BAA6B,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,MAAM,mBAAmB,CAAC;AAKtC,MAAM,aAAa,GAAG;IACrB,KAAK;IACL,SAAS,EAAE,CAAC,MAAW,EAAE,QAAa,EAAE,EAAE,CACzC,IAAI,OAAO,CAAoC,GAAG,EAAE;QACnD,QAAQ,CAAC,IAAI,EAAE;YACd,SAAS,EAAE;gBACV,MAAM,EAAE;oBACP,WAAW,EAAE,MAAM;iBACnB;aACD;SACD,CAAC,CAAC;IACJ,CAAC,CAAC;IACH,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,OAAO,CAAsB,GAAG,EAAE,GAAE,CAAC,CAAC;IAC9D,eAAe,EAAE,GAAG,EAAE,CACrB,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,EAAE;QACrC,OAAO,CAAC;YACP,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,mBAAmB;YACpC,aAAa,EAAE,EAAE;SACD,CAAC,CAAC;IACpB,CAAC,CAAC;IACH,kBAAkB,EAAE,GAAG,EAAE,CACxB,IAAI,OAAO,CASR,CAAC,OAAO,EAAE,EAAE;QACd,OAAO,CAAC;YACP,QAAQ,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,0FAA0F;aAChG;YACD,GAAG,EAAE,IAAI;SACT,CAAC,CAAC;IACJ,CAAC,CAAC;IACH,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,OAAO,CAAe,GAAG,EAAE,GAAE,CAAC,CAAC;IAChE,cAAc,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;IAC9B,iBAAiB,EAAE,GAAG,EAAE,CACvB,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;QAC/B,OAAO,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC,CAAC;IACH,gBAAgB,EAAE,GAAG,EAAE,GAAE,CAAC;CAC1B,CAAC;AAEF,eAAe;IACd,KAAK,EAAE,mCAAmC;IAC1C,SAAS,EAAE,oBAAoB;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,WAAW,CAA4B,oBAAoB,oBAAO,aAAa,EAAG,CAAC","sourcesContent":["import { SmartDesktopDesigner, SmartDesktopDesignerProps } from \"../SmartDesktopDesigner\";\nimport \"../../../assets/css/finsemble.css\";\nimport \"../../common/css/styles.css\";\nimport { createStory } from \"../../common/helpers\";\nimport views from \"../fixtures/views\";\nimport { FEA } from \"@finsemble/finsemble-api\";\n\ntype SDServerInfo = FEA.SDServerInfo;\n\nconst DEFAULT_PROPS = {\n\tviews,\n\tgetConfig: (params: any, callback: any) =>\n\t\tnew Promise<{ data: any; err: string | null }>(() => {\n\t\t\tcallback(null, {\n\t\t\t\tfinsemble: {\n\t\t\t\t\tsystem: {\n\t\t\t\t\t\tFSBLVersion: \"test\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\t\t}),\n\tresetProject: () => new Promise<[Error | null, any]>(() => {}),\n\tgetSDServerInfo: () =>\n\t\tnew Promise<SDServerInfo>((resolve) => {\n\t\t\tresolve({\n\t\t\t\tenabled: true,\n\t\t\t\tapplicationRoot: \"http://localhost/\",\n\t\t\t\tprojectConfig: {},\n\t\t\t} as SDServerInfo);\n\t\t}),\n\tgetProjectSettings: () =>\n\t\tnew Promise<{\n\t\t\tsettings: {\n\t\t\t\tname: string;\n\t\t\t\tpath?: string;\n\t\t\t\tversion?: string;\n\t\t\t\tauthors?: string;\n\t\t\t\tdescription?: string;\n\t\t\t};\n\t\t\terr: any;\n\t\t}>((resolve) => {\n\t\t\tresolve({\n\t\t\t\tsettings: {\n\t\t\t\t\tname: \"default\",\n\t\t\t\t\tpath: \"/Users/administrator/Library/Application Support/Electron/smartDesktops/projects/default\",\n\t\t\t\t},\n\t\t\t\terr: null,\n\t\t\t});\n\t\t}),\n\tupdateProjectSettings: () => new Promise<{ err: any }>(() => {}),\n\tonThemeUpdated: () => () => {},\n\tselectProjectPath: () =>\n\t\tnew Promise<string>((resolve) => {\n\t\t\tresolve(\"/tmp\");\n\t\t}),\n\trestartFinsemble: () => {},\n};\n\nexport default {\n\ttitle: \"Components/Smart Desktop Designer\",\n\tcomponent: SmartDesktopDesigner,\n};\n\nexport const DefaultSDD = createStory<SmartDesktopDesignerProps>(SmartDesktopDesigner, { ...DEFAULT_PROPS });\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ThemePage.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/ThemePage.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAkB,MAAM,cAAc,CAAC;AACzD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,6BAA6B,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,eAAe;IACd,KAAK,EAAE,kCAAkC;IACzC,SAAS,EAAE,SAAS;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAiB,SAAS,EAAE;IAC1D,KAAK,EAAE,SAAS;IAChB,YAAY,EAAE,CAAC,EAAU,EAAE,QAAgB,EAAE,EAAE;QAC9C,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;CACD,CAAC,CAAC","sourcesContent":["import { createStory } from \"../../common/helpers\";\nimport { ThemePage, ThemePageProps } from \"../ThemePage\";\nimport \"../../../assets/css/finsemble.css\";\nimport \"../../common/css/styles.css\";\nimport { darkTheme } from \"../themeDefinitions\";\n\nexport default {\n\ttitle: \"Smart Desktop Designer/ThemePage\",\n\tcomponent: ThemePage,\n};\n\nexport const Page = createStory<ThemePageProps>(ThemePage, {\n\ttheme: darkTheme,\n\tupdateThemes: (id: string, newValue: string) => {\n\t\tconsole.log(`ID: ${id}, Theme: ${newValue}`);\n\t},\n});\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Themes.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/Themes.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,WAAW,CAAC;AAC/C,OAAO,mCAAmC,CAAC;AAC3C,OAAO,6BAA6B,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,eAAe;IACd,KAAK,EAAE,cAAc;IACrB,SAAS,EAAE,MAAM;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAa,MAAM,EAAE;IACnD,eAAe,EAAE,CAAC,EAAY,EAAE,EAAE;QACjC,EAAE,CAAC;YACF,eAAe,EAAE,EAAE;YACnB,IAAI,EAAE,EAAE;YACR,IAAI,EAAE;gBACL,SAAS,EAAE,EAAE;gBACb,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,EAAE;aACT;YACD,MAAM,EAAE;gBACP,MAAM,EAAE,EAAE;gBACV,WAAW,EAAE,EAAE;gBACf,WAAW,EAAE,EAAE;gBACf,WAAW,EAAE,EAAE;gBACf,aAAa,EAAE,EAAE;gBACjB,WAAW,EAAE,EAAE;gBACf,cAAc,EAAE,EAAE;gBAClB,iBAAiB,EAAE,EAAE;aACrB;SACD,CAAC,CAAC;IACJ,CAAC;IACD,qBAAqB,EAAE,GAAG,EAAE,CAC3B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACvB,OAAO,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC;IACH,kBAAkB,EAAE,MAAM,CAAC,oBAAoB,CAAC;IAChD,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,CAAC;IAC9C,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,CAAC;IAC9C,oBAAoB,EAAE,MAAM,CAAC,sBAAsB,CAAC;IACpD,mBAAmB,EAAE,MAAM,CAAC,qBAAqB,CAAC;IAClD,UAAU,EAAE,CAAC,EAAY,EAAE,EAAE;QAC5B,EAAE,EAAE,CAAC;IACN,CAAC;IACD,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC;IACnC,KAAK,EAAE;QACN,MAAM,EAAE;YACP,OAAO,EAAE,SAAS;SAClB;KACD;CACD,CAAC,CAAC","sourcesContent":["import { Themes, ThemeProps } from \"../Themes\";\nimport \"../../../assets/css/finsemble.css\";\nimport \"../../common/css/styles.css\";\nimport { action } from \"@storybook/addon-actions\";\nimport { darkTheme } from \"../themeDefinitions\";\nimport { createStory } from \"../../common/helpers\";\n\nexport default {\n\ttitle: \"Views/Themes\",\n\tcomponent: Themes,\n};\n\nexport const Page = createStory<ThemeProps>(Themes, {\n\tgetSDServerInfo: (cb: Function) => {\n\t\tcb({\n\t\t\tapplicationRoot: \"\",\n\t\t\tname: \"\",\n\t\t\tuser: {\n\t\t\t\tfirstName: \"\",\n\t\t\t\tlastName: \"\",\n\t\t\t\tcompany: \"\",\n\t\t\t\temail: \"\",\n\t\t\t},\n\t\t\texport: {\n\t\t\t\tauthor: \"\",\n\t\t\t\tcompanyName: \"\",\n\t\t\t\tdescription: \"\",\n\t\t\t\ttoolbarIcon: \"\",\n\t\t\t\tinstallerIcon: \"\",\n\t\t\t\ttaskbarIcon: \"\",\n\t\t\t\tsystemTrayIcon: \"\",\n\t\t\t\tsplashScreenImage: \"\",\n\t\t\t},\n\t\t});\n\t},\n\tupdateProjectSettings: () =>\n\t\tnew Promise((resolve) => {\n\t\t\tresolve({ err: undefined });\n\t\t}),\n\tupdateSplashScreen: action(\"updateSplashScreen\"),\n\tupdateToolbarIcon: action(\"updateToolbarIcon\"),\n\tupdateTaskbarIcon: action(\"updateTaskbarIcon\"),\n\tupdateSystemTrayIcon: action(\"updateSystemTrayIcon\"),\n\tupdateInstallerIcon: action(\"updateInstallerIcon\"),\n\tareYouSure: (cb: Function) => {\n\t\tcb();\n\t},\n\tupdateThemes: action(\"updateTheme\"),\n\ttheme: {\n\t\tthemes: {\n\t\t\tDefault: darkTheme,\n\t\t},\n\t},\n});\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbar.stories.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/stories/Toolbar.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAgB,MAAM,YAAY,CAAC;AACnD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,6BAA6B,CAAC;AAGrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,eAAe;IACd,KAAK,EAAE,eAAe;IACtB,SAAS,EAAE,OAAO;CAClB,CAAC;AAEF,MAAM,QAAQ,GAAwB,CAAC,IAAkB,EAAE,EAAE;IAC5D,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEjB,OAAO,CACN,oBAAC,iBAAiB,IAAC,KAAK,EAAE,WAAW,EAAE;QACtC,oBAAC,OAAO,oBAAK,IAAI,EAAI,CACF,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE;IACtC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpC,SAAS,CAAC,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAE9C,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC,EAAE,CAAC;AAEL,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE;IACxC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpC,SAAS,CAAC,IAAI,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAEhD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC,EAAE,CAAC;AAEL,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE;IACzB,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpC,SAAS,CAAC,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAE7C,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC,EAAE,CAAC;AAEL,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE;IAC9C,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpC,SAAS,CAAC,IAAI,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAElD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC,EAAE,CAAC","sourcesContent":["import React from \"react\";\nimport { Toolbar, ToolbarProps } from \"../Toolbar\";\nimport \"../../../assets/css/finsemble.css\";\nimport \"../../common/css/styles.css\";\nimport { Story } from \"@storybook/react/types-6-0\";\n\nimport { FinsembleProvider } from \"../../FinsembleProvider\";\nimport { initFSBL } from \"../../common/helpers\";\nimport { getApplicationsArgs } from \"../fixtures/apps\";\nimport { createStore } from \"../../../store\";\n\nexport default {\n\ttitle: \"Views/Toolbar\",\n\tcomponent: Toolbar,\n};\n\nconst Template: Story<ToolbarProps> = (args: ToolbarProps) => {\n\tinitFSBL(window);\n\n\treturn (\n\t\t<FinsembleProvider store={createStore()}>\n\t\t\t<Toolbar {...args} />\n\t\t</FinsembleProvider>\n\t);\n};\n\nexport const EmptyApplications = (() => {\n\tconst Component = Template.bind({});\n\n\tComponent.args = getApplicationsArgs(\"empty\");\n\n\treturn Component;\n})();\n\nexport const DefaultApplications = (() => {\n\tconst Component = Template.bind({});\n\n\tComponent.args = getApplicationsArgs(\"default\");\n\n\treturn Component;\n})();\n\nexport const Long = (() => {\n\tconst Component = Template.bind({});\n\n\tComponent.args = getApplicationsArgs(\"long\");\n\n\treturn Component;\n})();\n\nexport const ApplicationsWithTemporary = (() => {\n\tconst Component = Template.bind({});\n\n\tComponent.args = getApplicationsArgs(\"temporary\");\n\n\treturn Component;\n})();\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AppEditPage.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/AppEditPage.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { afterEach, describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport sinon from \"sinon\";\nimport { AppEditPageProps } from \"../AppEditPage\";\nimport { Page, EmptyPage, NativePage, PageWithIconURL } from \"../stories/AppEditPage.stories\";\n\nconst defaults = {\n\tname: \"Test\",\n\tabstractPosition: 0,\n\taddToWorkspace: true,\n\tallowAutoArrange: true,\n\tallowGrouping: true,\n\tallowMaximize: true,\n\tallowMinimize: true,\n\tallowSnapping: true,\n\tallowTabbing: true,\n\tallowTiling: true,\n\talwaysOnTop: false,\n\tappArguments: \"\",\n\tappType: \"web\",\n\tautoConnect: false,\n\tdescription: \"\",\n\tenableAOT: false,\n\tenableTitleBar: true,\n\theight: 600,\n\thideClose: false,\n\thideMaximize: false,\n\thideMinimize: false,\n\ticonURL: \"\",\n\tintents: [],\n\tisEvergreen: false,\n\tlaunchableByUser: true,\n\tnative_windowSpawnTimeout: 30,\n\topacity: 1,\n\tpath: \"\",\n\tpersistPath: true,\n\tpersistURL: true,\n\tpreloads: [],\n\tresizable: true,\n\trules: [],\n\tsecurity: \"trusted\",\n\tsingleton: false,\n\tspawnOnStartup: false,\n\turl: \"http://www.google.com\",\n\twidth: 1280,\n};\n\nconst testPresetInputValue = (appDataKey: string, selector: string, starter = Page, presetValue = \"Test\") => {\n\tconst args = {\n\t\t...starter.args,\n\t\tappData: {\n\t\t\t...starter.args?.appData,\n\t\t\t[appDataKey]: presetValue,\n\t\t},\n\t} as AppEditPageProps;\n\tconst wrapper = mount(<Page {...args} />);\n\n\texpect(wrapper.find(selector).prop(\"value\")).to.equal(presetValue);\n};\nconst testSaveInputValue = (\n\tappDataKey: string,\n\tselector: string,\n\tnative = false,\n\tnewValue: string | number = \"New value\"\n) => {\n\tconst starter = native ? NativePage : Page;\n\tconst buttonSpy = sinon.spy(starter.args as AppEditPageProps, \"submitFn\");\n\tconst wrapper = mount(<Page {...(starter.args as AppEditPageProps)} />);\n\twrapper\n\t\t.find(selector)\n\t\t.at(0)\n\t\t.simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: newValue,\n\t\t\t},\n\t\t});\n\n\tconst collection = wrapper.find(\"button\");\n\tcollection.at(collection.length - 1).simulate(\"click\");\n\texpect(buttonSpy.args[0][0]).to.deep.equal({\n\t\t...defaults,\n\t\t...(native\n\t\t\t? {\n\t\t\t\t\tappType: \"native\",\n\t\t\t\t\tpath: \"test.exe\",\n\t\t\t }\n\t\t\t: {}),\n\t\t[appDataKey]: newValue,\n\t});\n};\nconst testSubmitOnEnter = (selector: string, starter = Page) => {\n\tconst buttonSpy = sinon.spy(starter.args as AppEditPageProps, \"submitFn\");\n\tconst wrapper = mount(<Page {...(starter.args as AppEditPageProps)} />);\n\twrapper\n\t\t.find(selector)\n\t\t.at(0)\n\t\t.simulate(\"keydown\", {\n\t\t\tkey: \"Enter\",\n\t\t\tpreventDefault: () => {},\n\t\t});\n\texpect(buttonSpy.calledOnce).to.be.true;\n};\nconst flipCheckbox = (appDataKey: string, label: string, presetValue: boolean) => {\n\tconst args = {\n\t\t...Page.args,\n\t\tappData: {\n\t\t\t...Page.args?.appData,\n\t\t\t[appDataKey]: presetValue,\n\t\t},\n\t} as AppEditPageProps;\n\tconst buttonSpy = sinon.spy(args as AppEditPageProps, \"submitFn\");\n\tconst wrapper = mount(<Page {...args} />);\n\n\twrapper.find(`[role='checkbox'][aria-label='${label}']`).simulate(\"click\");\n\tconst collection = wrapper.find(\"button\");\n\tconst saveButton = collection.at(collection.length - 1);\n\tsaveButton.simulate(\"click\");\n\texpect(buttonSpy.args[0][0]).to.deep.equal({\n\t\t...defaults,\n\t\t[appDataKey]: !presetValue,\n\t});\n};\nconst presetCheckbox = (\n\tappDataKey: string,\n\tlabel: string,\n\tpresetValue: boolean = true,\n\texpectedValue: boolean = true\n) => {\n\tconst args = {\n\t\t...Page.args,\n\t\tappData: {\n\t\t\t...Page.args?.appData,\n\t\t\t[appDataKey]: presetValue,\n\t\t},\n\t} as AppEditPageProps;\n\tconst wrapper = mount(<Page {...args} />);\n\n\texpect(wrapper.find(`[role='checkbox'][aria-label='${label}']`).prop(\"aria-checked\")).to.equal(expectedValue);\n};\nconst checkUniqueRadioButtons = (name: string, numberOfButtons: number, starter = Page) => {\n\tconst wrapper = mount(<Page {...(starter.args as AppEditPageProps)} />);\n\n\tconst locator = `input[type='radio'][name='${name}']`;\n\n\tfor (let i = 0; i < numberOfButtons; i++) {\n\t\twrapper.find(locator).at(i).simulate(\"change\");\n\n\t\tfor (let j = 0; j < numberOfButtons; j++) {\n\t\t\texpect(\n\t\t\t\twrapper.find(locator).at(j).prop(\"checked\"),\n\t\t\t\t`When radio #${i + 1} is clicked, is radio #${j + 1} checked?`\n\t\t\t).to.equal(i === j);\n\t\t}\n\t}\n};\nconst presetRadioButtons = (name: string, presetData: { [key: string]: any }, radioChecked: boolean[]) => {\n\tconst args = {\n\t\t...Page.args,\n\t\tappData: {\n\t\t\t...Page.args?.appData,\n\t\t\t...presetData,\n\t\t},\n\t} as AppEditPageProps;\n\tconst wrapper = mount(<Page {...args} />);\n\n\tradioChecked.forEach((radioButton, key) => {\n\t\texpect(wrapper.find(`input[type='radio'][name='${name}']`).at(key).prop(\"checked\")).to.equal(radioButton);\n\t});\n};\nconst saveRadioButton = (\n\tname: string,\n\tbuttonNumberChecked: number,\n\tsavedValues: { [key: string]: any },\n\tstarter = Page\n) => {\n\tconst buttonSpy = sinon.spy(starter.args as AppEditPageProps, \"submitFn\");\n\tconst wrapper = mount(<Page {...(starter.args as AppEditPageProps)} />);\n\twrapper.find(`input[type='radio'][name='${name}']`).at(buttonNumberChecked).simulate(\"change\");\n\n\tconst collection = wrapper.find(\"button\");\n\tconst saveButton = collection.at(collection.length - 1);\n\tsaveButton.simulate(\"click\");\n\n\tconst savedValue = buttonSpy.args[0][0];\n\tfor (let key in savedValues) {\n\t\t// @ts-ignore\n\t\texpect(savedValue[key]).to.equal(savedValues[key]);\n\t}\n};\n\ndescribe(\"<AppEditPage/>\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\n\t// Not using accessibility scans on this page, since the parent component <Applications /> is running them\n\n\tit(\"should call the passed-in cancel function when the cancel button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"cancelFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\tconst collection = wrapper.find(\"button\");\n\t\tcollection.at(collection.length - 2).simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should call the passed-in Remove Application function when the Remove Application button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"removeApplicationFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\tconst collection = wrapper.find(\"button\");\n\t\tcollection.at(collection.length - 3).simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t\tsinon.restore();\n\t});\n\tit(\"should call the passed-in submit function with relevant data when the submit button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper.find(\"button\").last().simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t\texpect(buttonSpy.firstCall.args[0]).to.deep.equal(defaults);\n\t});\n\n\tdescribe(\"Web versus native apps\", () => {\n\t\tit(\"If App type = web, show web-only apps and don't show native-only apps\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\texpect(wrapper.contains(\"App URL\")).to.be.true;\n\t\t\texpect(wrapper.contains(\"File path\")).to.be.false;\n\t\t\texpect(wrapper.contains(\"Arguments\")).to.be.false;\n\t\t\texpect(wrapper.contains(\"API access\")).to.be.false;\n\t\t\texpect(wrapper.contains(\"Launch timeout\")).to.be.false;\n\t\t\texpect(wrapper.find(\"#persist-url\").exists()).to.be.true;\n\t\t\texpect(wrapper.find(\"#persist-path\").exists()).to.be.false;\n\t\t});\n\t\tit(\"If App type = native, show native-only apps and don't show web-only apps\", () => {\n\t\t\tconst wrapper = mount(<NativePage {...(NativePage.args as AppEditPageProps)} />);\n\t\t\texpect(wrapper.contains(\"App URL\")).to.be.false;\n\t\t\texpect(wrapper.contains(\"File path\")).to.be.true;\n\t\t\texpect(wrapper.contains(\"Arguments\")).to.be.true;\n\t\t\texpect(wrapper.contains(\"API access\")).to.be.true;\n\t\t\texpect(wrapper.contains(\"Launch timeout\")).to.be.true;\n\t\t\texpect(wrapper.find(\"#persist-url\").exists()).to.be.false;\n\t\t\texpect(wrapper.find(\"#persist-path\").exists()).to.be.true;\n\t\t});\n\t});\n\n\tdescribe(\"Name\", () => {\n\t\tafterEach(() => {\n\t\t\tsinon.restore();\n\t\t});\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(\"name\", \"#app-name\");\n\t\t});\n\t\tit(\"should display starting name in Name field, if name field is set\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(\"#app-name\").first().prop(\"value\")).to.equal(\"Test\");\n\t\t});\n\t\tit(\"should not display starting name in Name field, if no name field is set\", () => {\n\t\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(\"#app-name\").first().prop(\"value\")).to.equal(\"\");\n\t\t});\n\t\tit(\"should display Name as a valid field, even if the given name is duplicate\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\tconst appName = wrapper.find(\"#app-name\").at(0);\n\t\t\tappName.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Used\",\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texpect(wrapper.find(\"#app-name\").at(0).prop(\"value\")).to.equal(\"Used\");\n\t\t\texpect(!!wrapper.find(\"#app-name\").at(0).prop(\"aria-invalid\")).to.be.false;\n\t\t});\n\t\tit(\"should have a disabled Save button if the name field is emptied\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(\"#app-name\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\")).to.be.true;\n\t\t});\n\t\tit(\"should click submit button when pressing enter on Name field\", () => {\n\t\t\ttestSubmitOnEnter(\"#app-name\");\n\t\t});\n\t\tit(\"should not click submit button when pressing a key other than enter on Name field\", () => {\n\t\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(\"#app-name\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"keydown\", {\n\t\t\t\t\tkey: \"a\",\n\t\t\t\t\tpreventDefault: () => {},\n\t\t\t\t});\n\t\t\texpect(buttonSpy.calledOnce).to.be.false;\n\t\t});\n\t\tit(\"should not submit when pressing enter on Name field IF the submit button is disabled\", () => {\n\t\t\tconst buttonSpy = sinon.spy(EmptyPage.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(\"#app-name\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"keydown\", {\n\t\t\t\t\tkey: \"Enter\",\n\t\t\t\t\tpreventDefault: () => {},\n\t\t\t\t});\n\t\t\texpect(buttonSpy.calledOnce).to.be.false;\n\t\t});\n\t});\n\tdescribe(\"Icon URL\", () => {\n\t\tconst appDataKey = \"iconURL\";\n\t\tconst selector = \"#app-icon-url\";\n\t\tconst imageSelector = \".app-icon\";\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(appDataKey, selector);\n\t\t});\n\t\tit(\"should display pre-set values\", () => {\n\t\t\ttestPresetInputValue(appDataKey, selector);\n\t\t});\n\t\tit(\"should submit on enter\", () => {\n\t\t\ttestSubmitOnEnter(selector);\n\t\t});\n\t\tit(\"should display icon when icon url is provided\", () => {\n\t\t\tconst wrapper = mount(<PageWithIconURL {...(PageWithIconURL.args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(imageSelector).exists()).to.be.true;\n\t\t});\n\t\tit(\"should not display icon when no icon url is provided\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(imageSelector).exists()).to.be.false;\n\t\t});\n\t\tit(\"when icon url field is emptied, the icon should disappear\", () => {\n\t\t\tconst wrapper = mount(<PageWithIconURL {...(PageWithIconURL.args as AppEditPageProps)} />);\n\n\t\t\twrapper.find(selector).simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texpect(wrapper.find(imageSelector).exists()).to.be.false;\n\t\t});\n\t\tit(\"when icon url field gets a value, the icon should start displaying\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper.find(selector).simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"https://assets.finsemble.com/components/fdc3-workbench/fdc3-icon-256.png\",\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texpect(wrapper.find(imageSelector).exists()).to.be.true;\n\t\t});\n\t});\n\tdescribe(\"API Access\", () => {\n\t\tafterEach(() => {\n\t\t\tsinon.restore();\n\t\t});\n\n\t\tconst name = \"api-access\";\n\t\tconst nativeParams = {\n\t\t\tappType: \"native\",\n\t\t};\n\t\tconst assimilationParams = {\n\t\t\tappType: \"assimilation\",\n\t\t};\n\t\tit.skip(\"should display correctly when preset: With API Access\", () => {\n\t\t\tpresetRadioButtons(name, nativeParams, [true, false]);\n\t\t});\n\t\tit.skip(\"should display correctly when preset: Without API Access\", () => {\n\t\t\tpresetRadioButtons(name, assimilationParams, [false, true]);\n\t\t});\n\t\tit(\"should save correctly when edited: With API Access\", () => {\n\t\t\tsaveRadioButton(name, 0, nativeParams, NativePage);\n\t\t});\n\t\tit(\"should save correctly when edited: Without API Access\", () => {\n\t\t\tsaveRadioButton(name, 1, assimilationParams, NativePage);\n\t\t});\n\t\tit(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(name, 2, NativePage);\n\t\t});\n\t\tit(\"should submit on enter: Yes\", () => {\n\t\t\ttestSubmitOnEnter(\"#api-access-yes\", NativePage);\n\t\t});\n\t\tit(\"should submit on enter: No\", () => {\n\t\t\ttestSubmitOnEnter(\"#api-access-no\", NativePage);\n\t\t});\n\t});\n\tdescribe(\"App URL\", () => {\n\t\tconst appDataKey = \"url\";\n\t\tconst selector = \"#app-url\";\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(appDataKey, selector);\n\t\t});\n\t\tit.skip(\"should display pre-set values\", () => {\n\t\t\ttestPresetInputValue(appDataKey, selector);\n\t\t});\n\t\tit(\"should submit on enter\", () => {\n\t\t\ttestSubmitOnEnter(selector);\n\t\t});\n\t\tit(\"should have a disabled Save button if the App URL field is emptied\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(\"#app-url\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\")).to.be.true;\n\t\t});\n\t\tit(\"should display invalid state for App URL if provided URL is invalid\", () => {\n\t\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\n\t\t\twrapper\n\t\t\t\t.find(\"#app-url\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"invalid\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\texpect(wrapper.find(\"#app-url\").at(0).prop(\"aria-invalid\")).to.be.true;\n\t\t});\n\t\tit(\"should click submit button when pressing enter on App URL field\", () => {\n\t\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(\"#app-url\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"keydown\", {\n\t\t\t\t\tkey: \"Enter\",\n\t\t\t\t\tpreventDefault: () => {},\n\t\t\t\t});\n\t\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t\t});\n\t});\n\tdescribe.skip(\"File path\", () => {\n\t\t// Couldn't get tests for manipulating input[type=file] to work right\n\t\t// should save correctly when edited\n\t\t// should display pre-set values\n\t\t// is required (enables/disables Save button when invalid)\n\t\t// shows invalid state\n\t});\n\tdescribe(\"Arguments\", () => {\n\t\tconst appDataKey = \"appArguments\";\n\t\tconst selector = \"#app-arguments\";\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(appDataKey, selector, true);\n\t\t});\n\t\tit(\"should display pre-set values\", () => {\n\t\t\ttestPresetInputValue(appDataKey, selector, NativePage);\n\t\t});\n\t\tit(\"should submit on enter\", () => {\n\t\t\ttestSubmitOnEnter(selector, NativePage);\n\t\t});\n\t\tit(\"is not required (Save button is enabled if empty)\", () => {\n\t\t\tconst wrapper = mount(<NativePage {...(NativePage.args as AppEditPageProps)} />);\n\t\t\texpect(wrapper.find(selector).prop(\"value\")).to.be.empty;\n\t\t\tconst collection = wrapper.find(\"button\");\n\t\t\tconst saveButton = collection.at(collection.length - 1);\n\t\t\texpect(saveButton.prop(\"disabled\")).to.be.false;\n\t\t});\n\t});\n\tdescribe(\"Description\", () => {\n\t\tconst appDataKey = \"description\";\n\t\tconst selector = \"#app-description\";\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(appDataKey, selector);\n\t\t});\n\t\tit(\"should display pre-set values\", () => {\n\t\t\ttestPresetInputValue(appDataKey, selector);\n\t\t});\n\t\tit(\"is not required (Save button is enabled if empty)\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\texpect(wrapper.find(selector).prop(\"value\")).to.be.empty;\n\t\t\tconst collection = wrapper.find(\"button\");\n\t\t\tconst saveButton = collection.at(collection.length - 1);\n\t\t\texpect(saveButton.prop(\"disabled\")).to.be.false;\n\t\t});\n\t});\n\tdescribe(\"Select Connect\", () => {\n\t\t// @todo write test: should save correctly when edited (radio buttons and box) - issue with how <AppEditAccess /> is set up, so it always appears empty in tests\n\t\tit(\"should display preset value (undefined rules)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\trules: undefined,\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(\n\t\t\t\twrapper.find(\"input[name='interop-trust'][value='true']\").prop(\"checked\"),\n\t\t\t\t\"Radio button 'trust all apps' is checked\"\n\t\t\t).to.be.true;\n\t\t\texpect(wrapper.find(\".app-edit-access\").exists(), \"Display SelectConnect listbox\").to.be.false;\n\t\t});\n\t\tit(\"should display preset value (empty rules)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\trules: [],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(\n\t\t\t\twrapper.find(\"input[name='interop-trust'][value='true']\").prop(\"checked\"),\n\t\t\t\t\"Radio button 'trust all apps' is checked\"\n\t\t\t).to.be.true;\n\t\t\texpect(wrapper.find(\".app-edit-access\").exists(), \"Display SelectConnect listbox\").to.be.false;\n\t\t});\n\t\tit(\"should display preset value (rules without authorize)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\trules: [\n\t\t\t\t\t\t{ contextType: \"fdc3.instrument\", cc: \"#Workspace\" },\n\t\t\t\t\t\t{ contextType: \"layout\", fwd: \"#Workspace\" },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(\n\t\t\t\twrapper.find(\"input[name='interop-trust'][value='true']\").prop(\"checked\"),\n\t\t\t\t\"Radio button 'trust all apps' is checked\"\n\t\t\t).to.be.true;\n\t\t\texpect(wrapper.find(\".app-edit-access\").exists(), \"Display SelectConnect listbox\").to.be.false;\n\t\t});\n\t\tit(\"should display preset value (rules with authorize)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\trules: [{ authorize: [{ name: \"ChartIQ Example App\" }] }],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(\n\t\t\t\twrapper.find(\"input[name='interop-trust'][value='false']\").prop(\"checked\"),\n\t\t\t\t\"Radio button 'trust selected apps' is checked\"\n\t\t\t).to.be.true;\n\t\t\texpect(wrapper.find(\".app-edit-access\").exists(), \"Display SelectConnect listbox\").to.be.true;\n\t\t\t// AppEditAccess is tested independently (and can't be tested on this level because it comes up as empty because it doesn't have a list of apps)\n\t\t});\n\t\tit(\"should display preset value (rules with empty authorize)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\trules: [{ authorize: [] }],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(\n\t\t\t\twrapper.find(\"input[name='interop-trust'][value='false']\").prop(\"checked\"),\n\t\t\t\t\"Radio button 'trust selected apps' is checked\"\n\t\t\t).to.be.true;\n\t\t\texpect(wrapper.find(\".app-edit-access\").exists(), \"Display SelectConnect listbox\").to.be.true;\n\t\t\t// AppEditAccess is tested independently\n\t\t});\n\t\tit.skip(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(\"interop-trust\", 2);\n\t\t});\n\t});\n\tdescribe(\"Width\", () => {\n\t\tconst appDataKey = \"width\";\n\t\tconst selector = \"#app-width\";\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(appDataKey, selector, false, 200);\n\t\t});\n\t\tit(\"should display pre-set values\", () => {\n\t\t\ttestPresetInputValue(appDataKey, selector, Page, \"200\");\n\t\t});\n\t\tit(\"should display invalid state for width if provided a negative number\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\texpect(wrapper.find(selector).at(0).prop(\"aria-invalid\")).to.be.true;\n\t\t});\n\t\tit(\"should display invalid state for width if provided an empty value\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\texpect(wrapper.find(selector).at(0).prop(\"aria-invalid\")).to.be.true;\n\t\t});\n\t\tit(\"should display invalid state for non-numeric value\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"abc\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\texpect(wrapper.find(selector).at(0).prop(\"aria-invalid\")).to.be.true;\n\t\t});\n\t\tit(\"should have a disabled Save button if the width field is emptied\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\")).to.be.true;\n\t\t});\n\t\tit(\"should have a disabled Save button if the width field is negative\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\")).to.be.true;\n\t\t});\n\t});\n\tdescribe(\"Height\", () => {\n\t\tconst appDataKey = \"height\";\n\t\tconst selector = \"#app-height\";\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(appDataKey, selector, false, 200);\n\t\t});\n\t\tit(\"should display pre-set values\", () => {\n\t\t\ttestPresetInputValue(appDataKey, selector, Page, \"200\");\n\t\t});\n\t\tit(\"should display invalid state for width if provided a negative number\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\texpect(wrapper.find(selector).at(0).prop(\"aria-invalid\")).to.be.true;\n\t\t});\n\t\tit(\"should display invalid state for width if provided an empty value\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\texpect(wrapper.find(selector).at(0).prop(\"aria-invalid\")).to.be.true;\n\t\t});\n\t\tit(\"should display invalid state for non-numeric value\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"abc\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\texpect(wrapper.find(\"#app-height\").at(0).prop(\"aria-invalid\")).to.be.true;\n\t\t});\n\t\tit(\"should have a disabled Save button if the height field is emptied\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\")).to.be.true;\n\t\t});\n\t\tit(\"should have a disabled Save button if the height field is negative\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\")).to.be.true;\n\t\t});\n\t});\n\tdescribe(\"Lock dimensions\", () => {\n\t\tconst label = \"Lock dimensions\";\n\t\tconst appDataKey = \"resizable\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, false);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Position\", () => {\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\t\twrapper.find(\".position-entry [role='combobox']\").simulate(\"click\");\n\t\t\twrapper.find(\".position-entry .finsemble-dropdown__btn-option\").at(4).simulate(\"click\");\n\n\t\t\tconst collection = wrapper.find(\"button\");\n\t\t\tcollection.at(collection.length - 1).simulate(\"click\");\n\t\t\texpect(buttonSpy.args[0][0]).to.deep.equal({\n\t\t\t\t...defaults,\n\t\t\t\tabstractPosition: 4,\n\t\t\t});\n\t\t});\n\t\tit(\"should display pre-set values\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\tabstractPosition: 5,\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(\".position-entry .finsemble-dropdown__btn-label\").text()).to.equal(\"Center\");\n\t\t});\n\t});\n\tdescribe(\"Opacity\", () => {\n\t\tconst appDataKey = \"opacity\";\n\t\tconst rangeSelector = \".app-edit-range\";\n\t\tconst inputSelector = \"#app-opacity\";\n\t\tit(\"should display correctly when preset (input range)\", () => {\n\t\t\ttestPresetInputValue(appDataKey, rangeSelector, Page, \"30\");\n\t\t});\n\t\tit(\"should display correctly when preset (input field)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\t[appDataKey]: 0.3,\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...args} />);\n\n\t\t\texpect(wrapper.find(inputSelector).prop(\"value\")).to.equal(30);\n\t\t});\n\t\tit(\"should save correctly when edited (input range)\", () => {\n\t\t\ttestSaveInputValue(appDataKey, rangeSelector, false, 30);\n\t\t});\n\t\tit(\"should save correctly when edited (input field) - value saved is 1/100 of what is entered\", () => {\n\t\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(inputSelector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: 30,\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\tconst collection = wrapper.find(\"button\");\n\t\t\tcollection.at(collection.length - 1).simulate(\"click\");\n\t\t\texpect(buttonSpy.args[0][0]).to.deep.equal({\n\t\t\t\t...defaults,\n\t\t\t\t[appDataKey]: 0.3,\n\t\t\t});\n\t\t});\n\t\tit(\"When editing the range field, the text box updates\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(inputSelector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: 70,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(rangeSelector).prop(\"value\")).to.equal(0.7);\n\t\t});\n\t\tit(\"When editing the text box, the range field updates\", () => {\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(rangeSelector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: 0.7,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\texpect(wrapper.find(inputSelector).prop(\"value\")).to.equal(70);\n\t\t});\n\t});\n\tdescribe(\"Auto arrange\", () => {\n\t\tconst label = \"Auto arrange\";\n\t\tconst appDataKey = \"allowAutoArrange\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Grouping\", () => {\n\t\tconst label = \"Grouping\";\n\t\tconst appDataKey = \"allowGrouping\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Snapping\", () => {\n\t\tconst label = \"Snapping\";\n\t\tconst appDataKey = \"allowSnapping\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Tabs\", () => {\n\t\tconst label = \"Tabs\";\n\t\tconst appDataKey = \"allowTabbing\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Tiling\", () => {\n\t\tconst label = \"Tiling\";\n\t\tconst appDataKey = \"allowTiling\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Show title bar\", () => {\n\t\tconst label = \"Show title bar\";\n\t\tconst appDataKey = \"enableTitleBar\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Always on top\", () => {\n\t\tconst name = \"alwaysOnTop\";\n\t\tconst enableParams = {\n\t\t\talwaysOnTop: true,\n\t\t\tenableAOT: false,\n\t\t};\n\t\tconst showParams = {\n\t\t\talwaysOnTop: false,\n\t\t\tenableAOT: true,\n\t\t};\n\t\tconst disableParams = {\n\t\t\talwaysOnTop: false,\n\t\t\tenableAOT: false,\n\t\t};\n\t\tit(\"should display correctly when preset: Enable\", () => {\n\t\t\tpresetRadioButtons(name, enableParams, [true, false, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Show in titlebar\", () => {\n\t\t\tpresetRadioButtons(name, showParams, [false, true, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Disable\", () => {\n\t\t\tpresetRadioButtons(name, disableParams, [false, false, true]);\n\t\t});\n\t\tit(\"should save correctly when edited: Enable\", () => {\n\t\t\tsaveRadioButton(name, 0, enableParams);\n\t\t});\n\t\tit(\"should save correctly when edited: Show in titlebar\", () => {\n\t\t\tsaveRadioButton(name, 1, showParams);\n\t\t});\n\t\tit(\"should save correctly when edited: Disable\", () => {\n\t\t\tsaveRadioButton(name, 2, disableParams);\n\t\t});\n\t\tit(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(name, 3);\n\t\t});\n\t});\n\tdescribe(\"Minimize\", () => {\n\t\tconst name = \"minimize\";\n\t\tconst enableParams = {\n\t\t\tallowMinimize: true,\n\t\t\thideMinimize: false,\n\t\t};\n\t\tconst hideParams = {\n\t\t\tallowMinimize: true,\n\t\t\thideMinimize: true,\n\t\t};\n\t\tconst disableParams = {\n\t\t\tallowMinimize: false,\n\t\t\thideMinimize: true,\n\t\t};\n\t\tit(\"should display correctly when preset: Enable\", () => {\n\t\t\tpresetRadioButtons(name, enableParams, [true, false, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Hide from titlebar\", () => {\n\t\t\tpresetRadioButtons(name, hideParams, [false, true, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Disable\", () => {\n\t\t\tpresetRadioButtons(name, disableParams, [false, false, true]);\n\t\t});\n\t\tit(\"should save correctly when edited: Enable\", () => {\n\t\t\tsaveRadioButton(name, 0, enableParams);\n\t\t});\n\t\tit(\"should save correctly when edited: Hide from titlebar\", () => {\n\t\t\tsaveRadioButton(name, 1, hideParams);\n\t\t});\n\t\tit(\"should save correctly when edited: Disable\", () => {\n\t\t\tsaveRadioButton(name, 2, disableParams);\n\t\t});\n\t\tit(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(name, 3);\n\t\t});\n\t});\n\tdescribe(\"Maximize\", () => {\n\t\tconst name = \"maximize\";\n\t\tconst enableParams = {\n\t\t\tallowMaximize: true,\n\t\t\thideMaximize: false,\n\t\t};\n\t\tconst hideParams = {\n\t\t\tallowMaximize: true,\n\t\t\thideMaximize: true,\n\t\t};\n\t\tconst disableParams = {\n\t\t\tallowMaximize: false,\n\t\t\thideMaximize: true,\n\t\t};\n\t\tit(\"should display correctly when preset: Enable\", () => {\n\t\t\tpresetRadioButtons(name, enableParams, [true, false, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Hide from titlebar\", () => {\n\t\t\tpresetRadioButtons(name, hideParams, [false, true, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Disable\", () => {\n\t\t\tpresetRadioButtons(name, disableParams, [false, false, true]);\n\t\t});\n\t\tit(\"should save correctly when edited: Enable\", () => {\n\t\t\tsaveRadioButton(name, 0, enableParams);\n\t\t});\n\t\tit(\"should save correctly when edited: Hide from titlebar\", () => {\n\t\t\tsaveRadioButton(name, 1, hideParams);\n\t\t});\n\t\tit(\"should save correctly when edited: Disable\", () => {\n\t\t\tsaveRadioButton(name, 2, disableParams);\n\t\t});\n\t\tit(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(name, 3);\n\t\t});\n\t});\n\tdescribe(\"Close\", () => {\n\t\tconst name = \"close\";\n\t\tconst enableParams = {\n\t\t\thideClose: false,\n\t\t};\n\t\tconst disableParams = {\n\t\t\thideClose: true,\n\t\t};\n\t\tit(\"should display correctly when preset: Enable\", () => {\n\t\t\tpresetRadioButtons(name, enableParams, [true, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Disable\", () => {\n\t\t\tpresetRadioButtons(name, disableParams, [false, true]);\n\t\t});\n\t\tit(\"should save correctly when edited: Enable\", () => {\n\t\t\tsaveRadioButton(name, 0, enableParams);\n\t\t});\n\t\tit(\"should save correctly when edited: Disable\", () => {\n\t\t\tsaveRadioButton(name, 1, disableParams);\n\t\t});\n\t\tit(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(name, 2);\n\t\t});\n\t});\n\tdescribe(\"Display linker\", () => {\n\t\tconst name = \"linker\";\n\t\tconst enableParams = {\n\t\t\tautoConnect: true,\n\t\t};\n\t\tconst disableParams = {\n\t\t\tautoConnect: false,\n\t\t};\n\t\tit(\"should display correctly when preset: Always\", () => {\n\t\t\tpresetRadioButtons(name, enableParams, [true, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: FDC3 API use\", () => {\n\t\t\tpresetRadioButtons(name, disableParams, [false, true]);\n\t\t});\n\t\tit(\"should save correctly when edited: Always\", () => {\n\t\t\tsaveRadioButton(name, 0, enableParams);\n\t\t});\n\t\tit(\"should save correctly when edited: FDC3 API use\", () => {\n\t\t\tsaveRadioButton(name, 1, disableParams);\n\t\t});\n\t\tit(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(name, 2);\n\t\t});\n\t});\n\tdescribe(\"Intents\", () => {\n\t\tit(\"should save correctly when edited (adding an intent)\", () => {\n\t\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(\".inputTable input\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"ViewChart\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\twrapper\n\t\t\t\t.find(\".inputTable input\")\n\t\t\t\t.at(1)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"View Chart\",\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\twrapper\n\t\t\t\t.find(\".inputTable input\")\n\t\t\t\t.at(2)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"fdc3.instrument\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\tconst collection = wrapper.find(\"button\");\n\t\t\tcollection.at(collection.length - 1).simulate(\"click\");\n\t\t\texpect(buttonSpy.args[0][0]).to.deep.equal({\n\t\t\t\t...defaults,\n\t\t\t\tintents: [{ name: \"ViewChart\", displayName: \"View Chart\", contexts: [\"fdc3.instrument\"] }],\n\t\t\t});\n\t\t});\n\t\tit(\"should save correctly when edited (adding just an intent name)\", () => {\n\t\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\t\twrapper\n\t\t\t\t.find(\".inputTable input\")\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: \"ViewChart\",\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\tconst collection = wrapper.find(\"button\");\n\t\t\tcollection.at(collection.length - 1).simulate(\"click\");\n\t\t\texpect(buttonSpy.args[0][0]).to.deep.equal({\n\t\t\t\t...defaults,\n\t\t\t\tintents: [{ name: \"ViewChart\", displayName: \"\", contexts: [\"\"] }],\n\t\t\t});\n\t\t});\n\t\tit(\"should save correctly when edited (removing an intent)\", () => {\n\t\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\tintents: [{ name: \"ViewChart\", displayName: \"View Chart\", contexts: [\"fdc3.instrument\"] }],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\t\t\twrapper.find(\".inputTable button[title='Remove row']\").at(0).simulate(\"click\");\n\n\t\t\tconst collection = wrapper.find(\"button\");\n\t\t\tcollection.at(collection.length - 1).simulate(\"click\");\n\t\t\texpect(buttonSpy.args[0][0]).to.deep.equal({\n\t\t\t\t...defaults,\n\t\t\t\tintents: [],\n\t\t\t});\n\t\t});\n\t\tit(\"should display preset values (empty list of intents)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\tintents: [],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(\".inputTable tr\"), \"List of rows\").to.be.lengthOf(2);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(0).prop(\"value\"), \"Intent table, input field 1\").to.be.empty;\n\t\t\texpect(wrapper.find(\".inputTable input\").at(1).prop(\"value\"), \"Intent table, input field 2\").to.be.empty;\n\t\t\texpect(wrapper.find(\".inputTable input\").at(2).prop(\"value\"), \"Intent table, input field 3\").to.be.empty;\n\t\t});\n\t\tit(\"should display preset values (with 1 intent)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\tintents: [{ name: \"ViewChart\", displayName: \"View Chart\", contexts: [\"fdc3.instrument\"] }],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(\".inputTable tr\"), \"List of rows\").to.be.lengthOf(3);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(0).prop(\"value\"), \"Intent table, input field 1\").to.equal(\n\t\t\t\t\"ViewChart\"\n\t\t\t);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(1).prop(\"value\"), \"Intent table, input field 2\").to.equal(\n\t\t\t\t\"View Chart\"\n\t\t\t);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(2).prop(\"value\"), \"Intent table, input field 3\").to.equal(\n\t\t\t\t\"fdc3.instrument\"\n\t\t\t);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(3).prop(\"value\"), \"Intent table, input field 4\").to.be.empty;\n\t\t\texpect(wrapper.find(\".inputTable input\").at(4).prop(\"value\"), \"Intent table, input field 5\").to.be.empty;\n\t\t\texpect(wrapper.find(\".inputTable input\").at(5).prop(\"value\"), \"Intent table, input field 6\").to.be.empty;\n\t\t});\n\t\tit(\"should display preset values (multiple contexts for an intent)\", () => {\n\t\t\tconst args = {\n\t\t\t\t...Page.args,\n\t\t\t\tappData: {\n\t\t\t\t\t...Page.args?.appData,\n\t\t\t\t\tintents: [{ name: \"ViewChart\", displayName: \"View Chart\", contexts: [\"fdc3.instrument\", \"custom.symbol\"] }],\n\t\t\t\t},\n\t\t\t} as AppEditPageProps;\n\t\t\tconst wrapper = mount(<Page {...(args as AppEditPageProps)} />);\n\n\t\t\texpect(wrapper.find(\".inputTable tr\"), \"List of rows\").to.be.lengthOf(3);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(0).prop(\"value\"), \"Intent table, input field 1\").to.equal(\n\t\t\t\t\"ViewChart\"\n\t\t\t);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(1).prop(\"value\"), \"Intent table, input field 2\").to.equal(\n\t\t\t\t\"View Chart\"\n\t\t\t);\n\t\t\texpect(wrapper.find(\".inputTable input\").at(2).prop(\"value\"), \"Intent table, input field 3\").to.equal(\n\t\t\t\t\"fdc3.instrument, custom.symbol\"\n\t\t\t);\n\t\t});\n\t});\n\tdescribe(\"Set security\", () => {\n\t\tconst name = \"security\";\n\t\tconst enableParams = {\n\t\t\tsecurity: \"trusted\",\n\t\t};\n\t\tconst disableParams = {\n\t\t\tsecurity: \"untrusted\",\n\t\t};\n\t\tit(\"should display correctly when preset: Trusted\", () => {\n\t\t\tpresetRadioButtons(name, enableParams, [true, false]);\n\t\t});\n\t\tit(\"should display correctly when preset: Untrusted\", () => {\n\t\t\tpresetRadioButtons(name, disableParams, [false, true]);\n\t\t});\n\t\tit(\"should save correctly when edited: Trusted\", () => {\n\t\t\tsaveRadioButton(name, 0, enableParams);\n\t\t});\n\t\tit.skip(\"should save correctly when edited: Untrusted\", () => {\n\t\t\tsaveRadioButton(name, 1, disableParams);\n\t\t});\n\t\tit.skip(\"confirm that the radio buttons stay independent\", () => {\n\t\t\tcheckUniqueRadioButtons(name, 2);\n\t\t});\n\t});\n\tdescribe(\"Launch timeout\", () => {\n\t\tconst appDataKey = \"native_windowSpawnTimeout\";\n\t\tconst selector = \"#launch-timeout\";\n\t\tit(\"should save correctly when edited\", () => {\n\t\t\ttestSaveInputValue(appDataKey, selector, true, 200);\n\t\t});\n\t\tit(\"should display pre-set values\", () => {\n\t\t\ttestPresetInputValue(appDataKey, selector, NativePage, \"200\");\n\t\t});\n\t});\n\tdescribe(\"Only one instance\", () => {\n\t\tconst label = \"Only one instance\";\n\t\tconst appDataKey = \"singleton\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Launch at startup\", () => {\n\t\tconst label = \"Launch at startup\";\n\t\tconst appDataKey = \"spawnOnStartup\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Include in Apps menu\", () => {\n\t\tconst label = \"Include in Apps menu\";\n\t\tconst appDataKey = \"launchableByUser\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Persist across workspaces\", () => {\n\t\tconst label = \"Persist across workspaces\";\n\t\tconst appDataKey = \"isEvergreen\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Add to workspaces\", () => {\n\t\tconst label = \"Add to workspace\";\n\t\tconst appDataKey = \"addToWorkspace\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n\tdescribe(\"Persist the location\", () => {\n\t\tconst label = \"Persist the location\";\n\t\tconst appDataKey = \"persistURL\";\n\t\tit(\"should display pre-set value: checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, true, true);\n\t\t});\n\t\tit(\"should display pre-set value: not checked\", () => {\n\t\t\tpresetCheckbox(appDataKey, label, false, false);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, true);\n\t\t});\n\t\tit(\"should save correctly (change to true)\", () => {\n\t\t\tflipCheckbox(appDataKey, label, false);\n\t\t});\n\t});\n});\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Application.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Application.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { expect } from \"chai\";\nimport {\n\tAppDefinition,\n\tgenAbstractPositionFromAppConfig,\n\tgenWindowParamsFromAbstractPosition,\n\tappConfigToAppData,\n\tappDataToAppConfig,\n} from \"../Application\";\nimport * as Types from \"../../../types/smartDesktopDesignerTypes\";\n\ndescribe(\"genAbstractPositionFromAppConfig\", () => {\n\tit(\"should identify top left\", () => {\n\t\tconst appConfig = {\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\tposition: \"monitor\",\n\t\t\t\t\ttop: \"0\",\n\t\t\t\t\tleft: \"0\",\n\t\t\t\t},\n\t\t\t},\n\t\t} as AppDefinition;\n\n\t\texpect(genAbstractPositionFromAppConfig(appConfig)).to.equal(1);\n\t});\n\tit(\"should identify bottom right\", () => {\n\t\tconst appConfig = {\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\tposition: \"monitor\",\n\t\t\t\t\tbottom: \"0\",\n\t\t\t\t\tright: \"0\",\n\t\t\t\t},\n\t\t\t},\n\t\t} as AppDefinition;\n\n\t\texpect(genAbstractPositionFromAppConfig(appConfig)).to.equal(9);\n\t});\n\tit(\"should identify dead center\", () => {\n\t\tconst appConfig = {\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\tposition: \"monitor\",\n\t\t\t\t\ttop: \"center\",\n\t\t\t\t\tleft: \"center\",\n\t\t\t\t},\n\t\t\t},\n\t\t} as AppDefinition;\n\n\t\texpect(genAbstractPositionFromAppConfig(appConfig)).to.equal(5);\n\t});\n\tit(\"should identify default if no position is defined\", () => {\n\t\tconst appConfig = {\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\ttop: \"0\",\n\t\t\t\t\tleft: \"0\",\n\t\t\t\t},\n\t\t\t},\n\t\t} as AppDefinition;\n\n\t\texpect(genAbstractPositionFromAppConfig(appConfig)).to.equal(0);\n\t});\n\tit(\"should identify default if no manifest assigned\", () => {\n\t\tconst appConfig = {} as AppDefinition;\n\n\t\texpect(genAbstractPositionFromAppConfig(appConfig)).to.equal(0);\n\t});\n\tit(\"should identify default if no window assigned\", () => {\n\t\tconst appConfig = {\n\t\t\tmanifest: {},\n\t\t} as AppDefinition;\n\n\t\texpect(genAbstractPositionFromAppConfig(appConfig)).to.equal(0);\n\t});\n\tit(\"should return -1 if invalid value combination\", () => {\n\t\tconst appConfig = {\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\tposition: \"monitor\",\n\t\t\t\t\ttop: \"0\",\n\t\t\t\t\tbottom: \"0\",\n\t\t\t\t},\n\t\t\t},\n\t\t} as AppDefinition;\n\n\t\texpect(genAbstractPositionFromAppConfig(appConfig)).to.equal(-1);\n\t});\n});\n\ndescribe(\"genWindowParamsFromAbstractPosition\", () => {\n\tit(\"should handle default\", () => {\n\t\texpect(genWindowParamsFromAbstractPosition(1)).to.deep.equal({\n\t\t\tposition: \"monitor\",\n\t\t\ttop: \"0\",\n\t\t\tleft: \"0\",\n\t\t});\n\t});\n\tit(\"should handle top left\", () => {\n\t\texpect(genWindowParamsFromAbstractPosition(1)).to.deep.equal({\n\t\t\tposition: \"monitor\",\n\t\t\ttop: \"0\",\n\t\t\tleft: \"0\",\n\t\t});\n\t});\n\tit(\"should handle dead center\", () => {\n\t\texpect(genWindowParamsFromAbstractPosition(5)).to.deep.equal({\n\t\t\tposition: \"monitor\",\n\t\t\ttop: \"center\",\n\t\t\tleft: \"center\",\n\t\t});\n\t});\n\tit(\"should handle bottom right\", () => {\n\t\texpect(genWindowParamsFromAbstractPosition(9)).to.deep.equal({\n\t\t\tposition: \"monitor\",\n\t\t\tbottom: \"0\",\n\t\t\tright: \"0\",\n\t\t});\n\t});\n});\n\ndescribe(\"appConfigToAppData\", () => {\n\tit(\"kitchen sink\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"test ID\",\n\t\t\tname: \"test\",\n\t\t\tdescription: \"test\",\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tdisplayName: \"Test displayName\",\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t\tpreload: [\"zoom\"],\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\turl: \"\",\n\t\t\t\t\tpath: \"\",\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\twindowType: \"application\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonURL: \"\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tFSBLHeader: false, // true, false, object\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tintents: [],\n\t\t\t},\n\t\t} as AppDefinition;\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"application\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistURL: true,\n\t\t\tpersistPath: false,\n\t\t\tpreloads: [\"zoom\"],\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t});\n\t});\n\tit(\"defaults: FDC3 Workbench\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"FDC3 workbench\",\n\t\t\tname: \"FDC3 workbench\",\n\t\t\tdescription: \"Development and test tool for FDC3 desktop agents and apps\",\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\turl: \"http://fdc3.finos.org/toolbox/fdc3-workbench\",\n\t\t\t\t\twidth: 800,\n\t\t\t\t\theight: 750,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tminWidth: 75,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": { launchableByUser: true },\n\t\t\t\t\t\tToolbar: { iconURL: \"http://fdc3.finos.org/toolbox/fdc3-workbench/fdc3-icon-256.png\" },\n\t\t\t\t\t\t\"Window Manager\": { FSBLHeader: true, persistWindowState: true },\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {},\n\t\t\t},\n\t\t\tversion: \"1.0.0\",\n\t\t\ttooltip: \"FDC3 Workbench\",\n\t\t\timages: [\n\t\t\t\t{\n\t\t\t\t\turl: \"http://fdc3.finos.org/toolbox/fdc3-workbench/fdc3-icon-256.png\",\n\t\t\t\t\ttooltip: \"FDC3 logo\",\n\t\t\t\t},\n\t\t\t],\n\t\t\ttags: [\"fdc3\", \"interop\", \"interoperabilty\", \"developer tool\"],\n\t\t\tcontactEmail: \"info@cosaic.io\",\n\t\t\tsupportEmail: \"support@finsemble.com\",\n\t\t\tpublisher: \"Cosaic\",\n\t\t\ticons: [\n\t\t\t\t{\n\t\t\t\t\turl: \"http://fdc3.finos.org/toolbox/fdc3-workbench/fdc3-icon-256.png\",\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: false,\n\t\t\tappArguments: undefined,\n\t\t\tappType: undefined,\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"Development and test tool for FDC3 desktop agents and apps\",\n\t\t\tenableAOT: false,\n\t\t\tenableTitleBar: true,\n\t\t\theight: 750,\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"http://fdc3.finos.org/toolbox/fdc3-workbench/fdc3-icon-256.png\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: false,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"FDC3 workbench\",\n\t\t\tnative_windowSpawnTimeout: 30,\n\t\t\topacity: 1,\n\t\t\tpath: undefined,\n\t\t\tpersistPath: false,\n\t\t\tpersistURL: false,\n\t\t\tresizable: true,\n\t\t\trules: undefined,\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: false,\n\t\t\tspawnOnStartup: false,\n\t\t\tpreloads: [],\n\t\t\turl: \"http://fdc3.finos.org/toolbox/fdc3-workbench\",\n\t\t\twidth: 800,\n\t\t});\n\t});\n\tit(\"defaults: ChartIQ\", () => {\n\t\tconst appConfig = {\n\t\t\tname: \"ChartIQ Example App\",\n\t\t\tappId: \"ChartIQ Example App\",\n\t\t\tdescription: \"Visualize market data in the leading FDC3 compliant technical chart.\",\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\turl: \"https://assets.finsemble.com/components/chart/technical-analysis-chart.html\",\n\t\t\t\t\twidth: 800,\n\t\t\t\t\theight: 600,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tminWidth: 75,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonClass: \"ff-chart-advanced\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\tFSBLHeader: true,\n\t\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tselectConnect: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcontextType: \"layout\",\n\t\t\t\t\t\t\tfwd: \"#Workspace\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcontextType: \"fdc3.instrument\",\n\t\t\t\t\t\t\tcc: \"#Workspace\",\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\tversion: \"1.0.0\",\n\t\t\ttooltip: \"ChartIQ Technical Chart\",\n\t\t\timages: [\n\t\t\t\t{\n\t\t\t\t\turl: \"https://i.imgur.com/10C3LdH.png\",\n\t\t\t\t\ttooltip: \"ChartIQ FDC3 compatible chart\",\n\t\t\t\t},\n\t\t\t],\n\t\t\ttags: [\"charts\", \"market data\", \"visualization\", \"graphics\", \"fdc3\"],\n\t\t\tcontactEmail: \"info@cosaic.io\",\n\t\t\tsupportEmail: \"support@finsemble.com\",\n\t\t\tpublisher: \"Cosaic\",\n\t\t\ticons: [\n\t\t\t\t{\n\t\t\t\t\turl: \"https://i.imgur.com/mpBdiHd.png\",\n\t\t\t\t},\n\t\t\t],\n\t\t\tintents: [\n\t\t\t\t{\n\t\t\t\t\tname: \"ViewChart\",\n\t\t\t\t\tdisplayName: \"View Chart\",\n\t\t\t\t\tcontexts: [\"fdc3.instrument\"],\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: false,\n\t\t\tappArguments: undefined,\n\t\t\tappType: undefined,\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"Visualize market data in the leading FDC3 compliant technical chart.\",\n\t\t\tenableAOT: false,\n\t\t\tenableTitleBar: true,\n\t\t\theight: 600,\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: undefined,\n\t\t\tintents: [\n\t\t\t\t{\n\t\t\t\t\tcontexts: [\"fdc3.instrument\"],\n\t\t\t\t\tdisplayName: \"View Chart\",\n\t\t\t\t\tname: \"ViewChart\",\n\t\t\t\t},\n\t\t\t],\n\t\t\tisEvergreen: false,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"ChartIQ Example App\",\n\t\t\tnative_windowSpawnTimeout: 30,\n\t\t\topacity: 1,\n\t\t\tpath: undefined,\n\t\t\tpersistPath: false,\n\t\t\tpersistURL: false,\n\t\t\tpreloads: [],\n\t\t\tresizable: true,\n\t\t\trules: [\n\t\t\t\t{\n\t\t\t\t\tcontextType: \"layout\",\n\t\t\t\t\tfwd: \"#Workspace\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcc: \"#Workspace\",\n\t\t\t\t\tcontextType: \"fdc3.instrument\",\n\t\t\t\t},\n\t\t\t],\n\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: false,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"https://assets.finsemble.com/components/chart/technical-analysis-chart.html\",\n\t\t\twidth: 800,\n\t\t});\n\t});\n\tit(\"defaults: Grid\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"AG-Grid Example Blotter\",\n\t\t\tname: \"AG-Grid Example Blotter\",\n\t\t\tdescription: \"Organize data with FDC3 compliant blotters built on AG Grid\",\n\t\t\tmanifest: {\n\t\t\t\twindow: {\n\t\t\t\t\turl: \"https://assets.finsemble.com/components/ag-grid/index.html\",\n\t\t\t\t\twidth: 1000,\n\t\t\t\t\theight: 600,\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonURL: \"https://assets.finsemble.com/components/ag-grid/ag-grid-logo.png\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\tFSBLHeader: true,\n\t\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tselectConnect: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcontextType: \"fdc3.instrument\",\n\t\t\t\t\t\t\tcc: \"#Workspace\",\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\tversion: \"1.0.0\",\n\t\t\ttooltip: \"AG Grid FDC3 compatible blotter\",\n\t\t\ttags: [\"grid\", \"ag-grid\", \"blotter\", \"fdc3\"],\n\t\t\tcontactEmail: \"info@cosaic.io\",\n\t\t\tsupportEmail: \"support@finsemble.com\",\n\t\t\tpublisher: \"Cosaic\",\n\t\t\ticons: [\n\t\t\t\t{\n\t\t\t\t\turl: \"https://assets.finsemble.com/components/ag-grid/ag-grid-logo.png\",\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: false,\n\t\t\tappArguments: undefined,\n\t\t\tappType: undefined,\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"Organize data with FDC3 compliant blotters built on AG Grid\",\n\t\t\tenableAOT: false,\n\t\t\tenableTitleBar: true,\n\t\t\theight: 600,\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"https://assets.finsemble.com/components/ag-grid/ag-grid-logo.png\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: false,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"AG-Grid Example Blotter\",\n\t\t\tnative_windowSpawnTimeout: 30,\n\t\t\topacity: 1,\n\t\t\tpath: undefined,\n\t\t\tpersistPath: false,\n\t\t\tpersistURL: false,\n\t\t\tpreloads: [],\n\t\t\tresizable: true,\n\t\t\trules: [\n\t\t\t\t{\n\t\t\t\t\tcc: \"#Workspace\",\n\t\t\t\t\tcontextType: \"fdc3.instrument\",\n\t\t\t\t},\n\t\t\t],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: false,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"https://assets.finsemble.com/components/ag-grid/index.html\",\n\t\t\twidth: 1000,\n\t\t});\n\t});\n\tit(\"with no manifest\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"test ID\",\n\t\t\tname: \"test\",\n\t\t\tdescription: \"test\",\n\t\t} as AppDefinition;\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: false,\n\t\t\tappArguments: undefined,\n\t\t\tappType: undefined,\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: false,\n\t\t\tenableTitleBar: true,\n\t\t\theight: undefined,\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: undefined,\n\t\t\tintents: [],\n\t\t\tisEvergreen: false,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 30,\n\t\t\topacity: 1,\n\t\t\tpath: undefined,\n\t\t\tpersistPath: false,\n\t\t\tpersistURL: false,\n\t\t\tpreloads: [],\n\t\t\tresizable: true,\n\t\t\trules: undefined,\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: false,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: undefined,\n\t\t\twidth: undefined,\n\t\t});\n\t});\n\tit(\"with no manifest.window\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"test ID\",\n\t\t\tname: \"test\",\n\t\t\tdescription: \"test\",\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tdisplayName: \"Test displayName\",\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonURL: \"\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tFSBLHeader: false, // true, false, object\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tintents: [],\n\t\t\t},\n\t\t} as AppDefinition;\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: false,\n\t\t\tappArguments: undefined,\n\t\t\tappType: undefined,\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: undefined,\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: false,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 30,\n\t\t\topacity: 1,\n\t\t\tpath: undefined,\n\t\t\tpersistPath: false,\n\t\t\tpersistURL: true,\n\t\t\tpreloads: [],\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: undefined,\n\t\t\twidth: undefined,\n\t\t});\n\t});\n\tit(\"with no description\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"test ID\",\n\t\t\tname: \"test\",\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tdisplayName: \"Test displayName\",\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\turl: \"\",\n\t\t\t\t\tpath: \"\",\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\twindowType: \"application\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonURL: \"\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tFSBLHeader: false, // true, false, object\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tintents: [],\n\t\t\t},\n\t\t} as AppDefinition;\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"application\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistURL: true,\n\t\t\tpersistPath: false,\n\t\t\tpreloads: [],\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t});\n\t});\n\tit(\"with no intents\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"test ID\",\n\t\t\tname: \"test\",\n\t\t\tdescription: \"test\",\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tdisplayName: \"Test displayName\",\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\turl: \"\",\n\t\t\t\t\tpath: \"\",\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\twindowType: \"application\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonURL: \"\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tFSBLHeader: false, // true, false, object\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\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} as AppDefinition;\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"application\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistPath: false,\n\t\t\tpersistURL: true,\n\t\t\tpreloads: [],\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t});\n\t});\n\tit(\"with undefined addToWorkspace/allow/enable\", () => {\n\t\tconst appConfig = {\n\t\t\tappId: \"test ID\",\n\t\t\tname: \"test\",\n\t\t\tdescription: \"test\",\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tdisplayName: \"Test displayName\",\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\turl: \"\",\n\t\t\t\t\tpath: \"\",\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\twindowType: \"application\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonURL: \"\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tFSBLHeader: false, // true, false, object\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\twindowService: {},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tintents: [],\n\t\t\t},\n\t\t} as AppDefinition;\n\t\texpect(appConfigToAppData(appConfig)).to.deep.equal({\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"application\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistPath: false,\n\t\t\tpersistURL: true,\n\t\t\tpreloads: [],\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t});\n\t});\n});\n\ndescribe(\"appDataToAppConfig\", () => {\n\tconst configTemplate = {\n\t\tappId: \"123\",\n\t\tname: \"\",\n\t\tmanifest: {\n\t\t\twindow: {\n\t\t\t\turl: \"\",\n\t\t\t\twidth: 1280,\n\t\t\t\theight: 600,\n\t\t\t},\n\t\t\tforeign: {\n\t\t\t\tcomponents: {\n\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t},\n\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\tFSBLHeader: true,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tmanifestType: \"finsemble\",\n\t\tversion: \"1\",\n\t};\n\tit(\"appType: web\", () => {\n\t\tconst appData = {\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"web\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistURL: true,\n\t\t\tpersistPath: false,\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"http://www.google.com\",\n\t\t\twidth: \"\",\n\t\t\tpreloads: [\"zoom\"],\n\t\t} as Types.ApplicationSaveData;\n\n\t\texpect(appDataToAppConfig(configTemplate, appData, \"123\")).to.deep.equal({\n\t\t\tappId: \"123\",\n\t\t\tdescription: \"test\",\n\t\t\tintents: [],\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t\tpreload: [\"zoom\"],\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tToolbar: {},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\tFSBLHeader: false,\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistPath: false,\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\theight: \"\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\turl: \"http://www.google.com\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmanifestType: \"finsemble\",\n\t\t\tname: \"test\",\n\t\t\tversion: \"1\",\n\t\t});\n\t});\n\tit(\"appType: native\", () => {\n\t\tconst appData = {\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"native\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"blah blah blah\",\n\t\t\tpersistURL: true,\n\t\t\tpersistPath: false,\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t\tpreloads: [],\n\t\t} as Types.ApplicationSaveData;\n\n\t\texpect(appDataToAppConfig(configTemplate, appData, \"123\")).to.deep.equal({\n\t\t\tappId: \"123\",\n\t\t\tdescription: \"test\",\n\t\t\tintents: [],\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t\tpreload: [],\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tToolbar: {},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\tFSBLHeader: false,\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistPath: false,\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t\tpath: \"blah blah blah\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\twindowType: \"native\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmanifestType: \"finsemble\",\n\t\t\tname: \"test\",\n\t\t\tversion: \"1\",\n\t\t});\n\t});\n\tit(\"appType: assimilation + default position + empty icon URL\", () => {\n\t\tconst appData = {\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"application\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistURL: true,\n\t\t\tpersistPath: false,\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t\tpreloads: [],\n\t\t} as Types.ApplicationSaveData;\n\n\t\texpect(appDataToAppConfig(configTemplate, appData, \"123\")).to.deep.equal({\n\t\t\tappId: \"123\",\n\t\t\tdescription: \"test\",\n\t\t\tintents: [],\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t\tpreload: [],\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tToolbar: {},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\tFSBLHeader: false,\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistPath: false,\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t\tpath: \"\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\twindowType: \"assimilation\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmanifestType: \"finsemble\",\n\t\t\tname: \"test\",\n\t\t\tversion: \"1\",\n\t\t});\n\t});\n\tit(\"set abstract position\", () => {\n\t\tconst appData = {\n\t\t\tabstractPosition: 4,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"application\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistURL: true,\n\t\t\tpersistPath: false,\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t\tpreloads: [],\n\t\t} as Types.ApplicationSaveData;\n\n\t\texpect(appDataToAppConfig(configTemplate, appData, \"123\")).to.deep.equal({\n\t\t\tappId: \"123\",\n\t\t\tdescription: \"test\",\n\t\t\tintents: [],\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t\tpreload: [],\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tToolbar: {},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\tFSBLHeader: false,\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistPath: false,\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\tleft: \"0\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t\tpath: \"\",\n\t\t\t\t\tposition: \"monitor\",\n\t\t\t\t\ttop: \"center\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\twindowType: \"assimilation\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmanifestType: \"finsemble\",\n\t\t\tname: \"test\",\n\t\t\tversion: \"1\",\n\t\t});\n\t});\n\tit(\"specified iconURL\", () => {\n\t\tconst appData = {\n\t\t\tabstractPosition: 0,\n\t\t\taddToWorkspace: true,\n\t\t\tallowAutoArrange: true,\n\t\t\tallowGrouping: true,\n\t\t\tallowMaximize: true,\n\t\t\tallowMinimize: true,\n\t\t\tallowSnapping: true,\n\t\t\tallowTabbing: true,\n\t\t\tallowTiling: true,\n\t\t\talwaysOnTop: true,\n\t\t\tappArguments: \"\",\n\t\t\tappType: \"application\",\n\t\t\tautoConnect: true,\n\t\t\tdescription: \"test\",\n\t\t\tenableAOT: true,\n\t\t\tenableTitleBar: false,\n\t\t\theight: \"\",\n\t\t\thideClose: false,\n\t\t\thideMaximize: false,\n\t\t\thideMinimize: false,\n\t\t\ticonURL: \"blah blah blah\",\n\t\t\tintents: [],\n\t\t\tisEvergreen: true,\n\t\t\tlaunchableByUser: true,\n\t\t\tname: \"test\",\n\t\t\tnative_windowSpawnTimeout: 60,\n\t\t\topacity: 1,\n\t\t\tpath: \"\",\n\t\t\tpersistURL: true,\n\t\t\tpersistPath: false,\n\t\t\tresizable: true,\n\t\t\trules: [],\n\t\t\tsecurity: \"trusted\",\n\t\t\tsingleton: true,\n\t\t\tspawnOnStartup: false,\n\t\t\turl: \"\",\n\t\t\twidth: \"\",\n\t\t\tpreloads: [],\n\t\t} as Types.ApplicationSaveData;\n\n\t\texpect(appDataToAppConfig(configTemplate, appData, \"123\")).to.deep.equal({\n\t\t\tappId: \"123\",\n\t\t\tdescription: \"test\",\n\t\t\tintents: [],\n\t\t\tmanifest: {\n\t\t\t\tcomponent: {\n\t\t\t\t\tsingleton: true,\n\t\t\t\t\tspawnOnStartup: false,\n\t\t\t\t\tpreload: [],\n\t\t\t\t},\n\t\t\t\tforeign: {\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\"App Launcher\": {\n\t\t\t\t\t\t\tlaunchableByUser: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tToolbar: {\n\t\t\t\t\t\t\ticonURL: \"blah blah blah\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"Window Manager\": {\n\t\t\t\t\t\t\tFSBLHeader: false,\n\t\t\t\t\t\t\talwaysOnTopIcon: true,\n\t\t\t\t\t\t\tpersistWindowState: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tservices: {\n\t\t\t\t\t\twindowService: {\n\t\t\t\t\t\t\tallowAutoArrange: true,\n\t\t\t\t\t\t\tallowGrouping: true,\n\t\t\t\t\t\t\tallowMaximize: true,\n\t\t\t\t\t\t\tallowMinimize: true,\n\t\t\t\t\t\t\tallowSnapping: true,\n\t\t\t\t\t\t\tallowTabbing: true,\n\t\t\t\t\t\t\tallowTiling: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tworkspace: {\n\t\t\t\t\t\t\tpersistPath: false,\n\t\t\t\t\t\t\tpersistURL: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tinterop: {\n\t\t\t\t\tautoConnect: true,\n\t\t\t\t\tselectConnect: [],\n\t\t\t\t},\n\t\t\t\twindow: {\n\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\targuments: \"\",\n\t\t\t\t\theight: \"\",\n\t\t\t\t\toptions: {\n\t\t\t\t\t\talwaysOnTop: true,\n\t\t\t\t\t\tisEvergreen: true,\n\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\tresizable: true,\n\t\t\t\t\t\tsecurityPolicy: \"trusted\",\n\t\t\t\t\t\twindowSpawnTimeout: 60,\n\t\t\t\t\t},\n\t\t\t\t\tpath: \"\",\n\t\t\t\t\twidth: \"\",\n\t\t\t\t\twindowType: \"assimilation\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tmanifestType: \"finsemble\",\n\t\t\tname: \"test\",\n\t\t\tversion: \"1\",\n\t\t});\n\t});\n});\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Applications.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Applications.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { DefaultApplications, EmptyApplications } from \"../stories/Applications.stories\";\nimport { getApplicationsArgs } from \"../fixtures/apps\";\nimport { waitTick } from \"../sdd_helpers\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\nexport const ADD_NEW_APP_BUTTON = \".icon-before-add button\",\n\tACTIVE_TAB_APP_LIST_TABLE_ROW = \".app-list-row\",\n\tAPP_LIST_EMPTY_MESSAGE = \".app-list-empty\",\n\tPAGE_HEADER = \".view-title .leftSide\",\n\tPAGE_HEADER_BUTTON = \".view-title .leftSide button\",\n\tSETUP_WIZARD_BUTTON = \".tile-type-buttons .icon-wizard button\",\n\tSETUP_MANUAL_BUTTON = \".tile-type-buttons .icon-manual button\",\n\tAPP_ACCESS_RULE = \".app-edit-access-item\",\n\tAPP_ACCESS_BLOCKED = \".app-edit-access-blocked\",\n\tQUICK_ADD_APP = \".quick-add-app\",\n\tQUICK_ADD_APP_URL = \".quick-add-app #app-url\",\n\tQUICK_ADD_APP_BUTTON = \".save-button-container button\";\n\ndescribe(\"<Applications/>\", () => {\n\tit(\"should pass accessibility scans\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should pass accessibility scans (empty)\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should contain add button app list when not empty\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).length).to.equal(0);\n\t});\n\tit(\"should contain add button and empty message when empty\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(0);\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).first().text()).to.contain(\"nothing here\");\n\t});\n\tit(\"should be able to edit a web app\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"App list contains items\").to.be.greaterThan(0);\n\n\t\tconst app = wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first();\n\n\t\tconst appName = app.find(\".app-name\").text();\n\n\t\tconst newName = `${appName} modified`;\n\t\tapp.find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\tconst input = wrapper.find(\"input#app-name\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"change\", { target: { value: newName } });\n\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(\n\t\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).someWhere((node) => node.find(\".app-name\").text() === newName),\n\t\t\t\"App list contains newly renamed name\"\n\t\t).to.be.true;\n\t});\n\tit(\"should be able to grant selectConnect access between two apps\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"3 apps are listed in the table\").to.be.equal(3);\n\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first().find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\twrapper.find(\"input[name='interop-trust'][value='false']\").simulate(\"change\");\n\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"SelectConnect access rules visible initially\").to.equal(2);\n\n\t\texpect(wrapper.find(APP_ACCESS_BLOCKED).length, \"Inbound SelectConnect blocked\").to.equal(2);\n\n\t\twrapper.find(\".finsembleToggle input\").first().simulate(\"change\");\n\n\t\texpect(wrapper.find(\".finsembleToggle-on\").length, \"should be toggled on\").to.equal(2);\n\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(1).find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"input[name='interop-trust'][value='false']\").simulate(\"change\");\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"SelectConnect access rules visible\").to.equal(2);\n\t});\n});\n\ndescribe(\"<Applications/> - Quick Add\", () => {\n\tit(\"should be able to quick add a web app\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Everything starts the way I expect\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Start out with 3 items in the list\").to.equal(3);\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add doesn't display\").to.be.true;\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// expect quick add to display\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add displays\").to.be.false;\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.facebook.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Add button\n\t\twrapper.find(QUICK_ADD_APP_BUTTON).simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// expect updates\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add doesn't display\").to.be.true;\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"App list shows 4 items\").to.equal(4);\n\t\texpect(\n\t\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).filterWhere((node: any) => node.text().includes(\"Facebook\")).length,\n\t\t\t\"App list includes 'Facebook'\"\n\t\t);\n\t});\n\n\tit(\"if you add a URL, the App name should pre-fill with a generated name\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.google.com\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Pre-filled generated name\").to.equal(\"Google\");\n\t\texpect(wrapper.find(QUICK_ADD_APP_BUTTON).prop(\"disabled\"), \"Save button should be enabled\").to.be.false;\n\t});\n\n\tit(\"if you add a URL without an auto-name, the App name should be empty\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Pre-filled generated name\").to.equal(\"\");\n\t\texpect(wrapper.find(QUICK_ADD_APP_BUTTON).prop(\"disabled\"), \"Save button should be disabled\").to.be.true;\n\t});\n\n\tit(\"if you add a URL, the path field should be disabled\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\".file-input-container button\").prop(\"disabled\"), \"File input disabled\").to.be.true;\n\t});\n\n\tit(\"if you add a URL and then save it, the URL should be cleared on re-open\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Add button\n\t\twrapper.find(QUICK_ADD_APP_BUTTON).simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(QUICK_ADD_APP_URL).prop(\"value\")).to.be.empty;\n\t});\n\tit(\"if you add a URL and then close quick add, the URL should be cleared on re-open\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Close button\n\t\twrapper.find(\"button[title='Close']\").simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(QUICK_ADD_APP_URL).prop(\"value\")).to.be.empty;\n\t});\n});\n"]}
|