@finsemble/finsemble-ui 6.2.1 → 6.3.1-beta-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +27 -22
- package/react/actions/smartDesktopDesignerActions.d.ts +7 -8
- package/react/actions/smartDesktopDesignerActions.js.map +1 -1
- package/react/actions/toolbarActions.d.ts +2 -3
- package/react/actions/toolbarActions.js.map +1 -1
- package/react/assets/css/button.css +2 -1
- package/react/assets/css/notificationsCenter.css +4 -2
- package/react/assets/css/userPreferences.css +1 -0
- package/react/assets/css/windowTitleBar.css +33 -1
- package/react/componentTemplateGenerator.js.map +1 -1
- package/react/components/FinsembleProvider.js +1 -1
- package/react/components/FinsembleProvider.js.map +1 -1
- package/react/components/appCatalog/AppCatalogComponent.js +7 -13
- package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
- package/react/components/appCatalog/components/AppList.d.ts +7 -1
- package/react/components/appCatalog/components/AppList.js +1 -1
- package/react/components/appCatalog/components/AppList.js.map +1 -1
- package/react/components/appCatalog/components/AppResults.d.ts +10 -8
- package/react/components/appCatalog/components/AppResults.js +1 -1
- package/react/components/appCatalog/components/AppResults.js.map +1 -1
- package/react/components/appCatalog/components/Carousel.js +1 -1
- package/react/components/appCatalog/components/Carousel.js.map +1 -1
- package/react/components/appCatalog/components/EmptyResults.d.ts +2 -1
- package/react/components/appCatalog/components/EmptyResults.js +2 -4
- package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
- package/react/components/appCatalog/components/Hero.d.ts +24 -4
- package/react/components/appCatalog/components/Hero.js +2 -1
- package/react/components/appCatalog/components/Hero.js.map +1 -1
- package/react/components/appCatalog/components/Home.d.ts +18 -4
- package/react/components/appCatalog/components/Home.js.map +1 -1
- package/react/components/appCatalog/components/SearchBar.d.ts +20 -7
- package/react/components/appCatalog/components/SearchBar.js +4 -7
- package/react/components/appCatalog/components/SearchBar.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/AppDescription.d.ts +5 -3
- package/react/components/appCatalog/components/Showcase/AppDescription.js +4 -6
- package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/AppDevNotes.d.ts +5 -4
- package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/AppShowcase.js +1 -1
- package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/Header.d.ts +13 -5
- package/react/components/appCatalog/components/Showcase/Header.js +2 -2
- package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/Modal.d.ts +7 -4
- package/react/components/appCatalog/components/Showcase/Modal.js +6 -6
- package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
- package/react/components/appCatalog/components/Showcase/defaults.d.ts +3 -3
- package/react/components/appCatalog/components/Showcase/defaults.js.map +1 -1
- package/react/components/appCatalog/components/Tag.d.ts +6 -4
- package/react/components/appCatalog/components/Tag.js.map +1 -1
- package/react/components/appCatalog/components/Toast.d.ts +5 -3
- package/react/components/appCatalog/components/Toast.js +5 -5
- package/react/components/appCatalog/components/Toast.js.map +1 -1
- package/react/components/appCatalog/components/helpers.js +2 -1
- package/react/components/appCatalog/components/helpers.js.map +1 -1
- package/react/components/appCatalog/modules/AppDirectory.d.ts +5 -1
- package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
- package/react/components/appCatalog/modules/FDC3.d.ts +12 -11
- package/react/components/appCatalog/modules/FDC3.js +39 -48
- package/react/components/appCatalog/modules/FDC3.js.map +1 -1
- package/react/components/appCatalog/stores/appStore.d.ts +9 -2
- package/react/components/appCatalog/stores/appStore.js +10 -4
- package/react/components/appCatalog/stores/appStore.js.map +1 -1
- package/react/components/appCatalog/stores/storeActions.js +96 -98
- package/react/components/appCatalog/stores/storeActions.js.map +1 -1
- package/react/components/common/Button.d.ts +4 -4
- package/react/components/common/Button.js +1 -1
- package/react/components/common/Button.js.map +1 -1
- package/react/components/common/ButtonIcon.js +1 -1
- package/react/components/common/ButtonIcon.js.map +1 -1
- package/react/components/common/ColorPicker.js +1 -1
- package/react/components/common/ColorPicker.js.map +1 -1
- package/react/components/common/DropZone.d.ts +0 -5
- package/react/components/common/DropZone.js.map +1 -1
- package/react/components/common/DropdownButton.js +1 -1
- package/react/components/common/DropdownButton.js.map +1 -1
- package/react/components/common/FileInput.d.ts +0 -5
- package/react/components/common/FileInput.js +7 -9
- package/react/components/common/FileInput.js.map +1 -1
- package/react/components/common/FinsembleIcon.d.ts +2 -2
- package/react/components/common/FinsembleIcon.js.map +1 -1
- package/react/components/common/FinsembleSelect.js +2 -5
- package/react/components/common/FinsembleSelect.js.map +1 -1
- package/react/components/common/FinsembleToggle.js +2 -2
- package/react/components/common/FinsembleToggle.js.map +1 -1
- package/react/components/common/FontSizeSelector.js +2 -2
- package/react/components/common/FontSizeSelector.js.map +1 -1
- package/react/components/common/ImagePreview.js +2 -2
- package/react/components/common/ImagePreview.js.map +1 -1
- package/react/components/common/Tab.js +2 -1
- package/react/components/common/Tab.js.map +1 -1
- package/react/components/common/file_helpers.js +3 -2
- package/react/components/common/file_helpers.js.map +1 -1
- package/react/components/common/helpers.js +12 -10
- package/react/components/common/helpers.js.map +1 -1
- package/react/components/common/stories/Button.stories.js +1 -1
- package/react/components/common/stories/Button.stories.js.map +1 -1
- package/react/components/common/stories/ButtonIcon.stories.js +1 -1
- package/react/components/common/stories/ButtonIcon.stories.js.map +1 -1
- package/react/components/common/stories/ButtonRow.stories.js +2 -2
- package/react/components/common/stories/ButtonRow.stories.js.map +1 -1
- package/react/components/common/stories/ButtonTile.stories.js +1 -1
- package/react/components/common/stories/ButtonTile.stories.js.map +1 -1
- package/react/components/common/stories/Checkbox.stories.js +1 -1
- package/react/components/common/stories/Checkbox.stories.js.map +1 -1
- package/react/components/common/stories/ColorPicker.stories.js +1 -1
- package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
- package/react/components/common/stories/DropZone.stories.js +1 -1
- package/react/components/common/stories/DropZone.stories.js.map +1 -1
- package/react/components/common/stories/FinsembleIcon.stories.js.map +1 -1
- package/react/components/common/stories/FinsembleSelect.stories.js +1 -1
- package/react/components/common/stories/FinsembleSelect.stories.js.map +1 -1
- package/react/components/common/stories/FinsembleToggle.stories.js +3 -1
- package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
- package/react/components/common/stories/FontSizeSelector.stories.js +1 -1
- package/react/components/common/stories/FontSizeSelector.stories.js.map +1 -1
- package/react/components/common/stories/Header.stories.js +1 -1
- package/react/components/common/stories/Header.stories.js.map +1 -1
- package/react/components/common/tests/Checkbox.spec.js +4 -4
- package/react/components/common/tests/Checkbox.spec.js.map +1 -1
- package/react/components/common/tests/ColorPicker.spec.js +6 -6
- package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
- package/react/components/common/tests/DropZone.spec.js +4 -4
- package/react/components/common/tests/DropZone.spec.js.map +1 -1
- package/react/components/common/tests/FileInput.spec.js +5 -5
- package/react/components/common/tests/FileInput.spec.js.map +1 -1
- package/react/components/common/tests/FinsembleSelect.spec.js +12 -11
- package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
- package/react/components/common/tests/FinsembleToggle.spec.js +8 -2
- package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
- package/react/components/common/tests/Header.spec.js +3 -3
- package/react/components/common/tests/Header.spec.js.map +1 -1
- package/react/components/common/tests/ImagePreview.spec.js +8 -8
- package/react/components/common/tests/ImagePreview.spec.js.map +1 -1
- package/react/components/common/tests/Tab.spec.js +3 -3
- package/react/components/common/tests/Tab.spec.js.map +1 -1
- package/react/components/common/tests/Tooltip.spec.js +5 -5
- package/react/components/common/tests/Tooltip.spec.js.map +1 -1
- package/react/components/favorites/FavoriteMaker.d.ts +0 -5
- package/react/components/favorites/FavoriteMaker.js +1 -1
- package/react/components/favorites/FavoriteMaker.js.map +1 -1
- package/react/components/favorites/FavoritesShell.js +1 -1
- package/react/components/favorites/FavoritesShell.js.map +1 -1
- package/react/components/favorites/FavoritesShell.spec.js +7 -7
- package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
- package/react/components/favorites/FavoritesShell.stories.js +5 -4
- package/react/components/favorites/FavoritesShell.stories.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverContainer.js +2 -1
- package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.js +13 -13
- package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.spec.js +5 -5
- package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.stories.js +1 -1
- package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
- package/react/components/icon/Icon.js +5 -4
- package/react/components/icon/Icon.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialog.js +0 -1
- package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialogButton.d.ts +1 -1
- package/react/components/legacyControls/FinsembleDialogButton.js +4 -3
- package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialogQuestion.js +2 -1
- package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
- package/react/components/legacyControls/FinsembleDialogTextInput.d.ts +1 -1
- package/react/components/legacyControls/FinsembleDialogTextInput.js +8 -5
- package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
- package/react/components/legacyControls/FinsembleDnDContext.js +34 -22
- package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
- package/react/components/legacyControls/FinsembleDraggable.js +3 -3
- package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
- package/react/components/legacyControls/FinsembleHoverDetector.js +2 -1
- package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
- package/react/components/legacyControls/FinsembleMenuSection.js +9 -5
- package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialog.stories.js +1 -1
- package/react/components/legacyControls/stories/FinsembleDialog.stories.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogButton.stories.js +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogButton.stories.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogQuestion.stories.js +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogQuestion.stories.js.map +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogTextInput.stories.js +1 -1
- package/react/components/legacyControls/stories/FinsembleDialogTextInput.stories.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialog.spec.js +1 -1
- package/react/components/legacyControls/tests/FinsembleDialog.spec.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js +8 -7
- package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialogQuestion.spec.js +7 -5
- package/react/components/legacyControls/tests/FinsembleDialogQuestion.spec.js.map +1 -1
- package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js +13 -12
- package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
- package/react/components/linker/LinkerMenu.js +4 -3
- package/react/components/linker/LinkerMenu.js.map +1 -1
- package/react/components/linker/LinkerMenuDeprecated.js +1 -1
- package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
- package/react/components/linker/remoteRedux.d.ts +10 -42
- package/react/components/linker/remoteRedux.js.map +1 -1
- package/react/components/menu/Menu.d.ts +1 -1
- package/react/components/menu/Menu.js +1 -1
- package/react/components/menu/Menu.js.map +1 -1
- package/react/components/menu/MenuAutoResizer.js.map +1 -1
- package/react/components/menu/MenuContent.js +1 -2
- package/react/components/menu/MenuContent.js.map +1 -1
- package/react/components/menu/MenuHotKey.js +1 -1
- package/react/components/menu/MenuHotKey.js.map +1 -1
- package/react/components/menu/MenuPortal.js +7 -6
- package/react/components/menu/MenuPortal.js.map +1 -1
- package/react/components/menu/keyboardNavigation.js +14 -15
- package/react/components/menu/keyboardNavigation.js.map +1 -1
- package/react/components/notifications/components/NoNotifications.js +2 -4
- package/react/components/notifications/components/NoNotifications.js.map +1 -1
- package/react/components/notifications/components/drawer/Drawer.js +2 -4
- package/react/components/notifications/components/drawer/Drawer.js.map +1 -1
- package/react/components/notifications/components/drawer/DrawerControls.js +3 -5
- package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
- package/react/components/notifications/components/drawer/DrawerHeader.js +1 -4
- package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
- package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js +64 -79
- package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
- package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js +15 -13
- package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
- package/react/components/notifications/components/shared/CheckButton.d.ts +2 -2
- package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
- package/react/components/notifications/components/shared/IconButton.js +3 -5
- package/react/components/notifications/components/shared/IconButton.js.map +1 -1
- package/react/components/notifications/components/shared/NotificationCardShell.d.ts +3 -2
- package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
- package/react/components/notifications/components/shared/OverflowMenu.d.ts +2 -1
- package/react/components/notifications/components/shared/OverflowMenu.js +6 -5
- package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.d.ts +3 -2
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.js +2 -2
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.d.ts +3 -2
- package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.d.ts +3 -2
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.js +2 -4
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.js.map +1 -1
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.d.ts +3 -2
- package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js.map +1 -1
- package/react/components/notifications/components/views/CardView.js +15 -24
- package/react/components/notifications/components/views/CardView.js.map +1 -1
- package/react/components/notifications/components/views/ListView.d.ts +2 -2
- package/react/components/notifications/components/views/ListView.js +9 -9
- package/react/components/notifications/components/views/ListView.js.map +1 -1
- package/react/components/notifications/components/views/NotificationDetailsView.d.ts +2 -2
- package/react/components/notifications/components/views/NotificationDetailsView.js +2 -6
- package/react/components/notifications/components/views/NotificationDetailsView.js.map +1 -1
- package/react/components/notifications/constants.d.ts +0 -13
- package/react/components/notifications/constants.js.map +1 -1
- package/react/components/notifications/types.d.ts +7 -6
- package/react/components/notifications/types.js.map +1 -1
- package/react/components/notifications/utils.d.ts +6 -4
- package/react/components/notifications/utils.js +26 -32
- package/react/components/notifications/utils.js.map +1 -1
- package/react/components/processMonitor/ProcessMonitor.d.ts +3 -1
- package/react/components/processMonitor/ProcessMonitor.js +24 -14
- package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
- package/react/components/processMonitor/ProcessMonitorTypes.d.ts +33 -0
- package/react/components/processMonitor/ProcessMonitorTypes.js +6 -0
- package/react/components/processMonitor/ProcessMonitorTypes.js.map +1 -0
- package/react/components/processMonitor/components/ChildWindow.d.ts +10 -3
- package/react/components/processMonitor/components/ChildWindow.js +29 -10
- package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
- package/react/components/processMonitor/components/ListHeader.d.ts +18 -4
- package/react/components/processMonitor/components/ListHeader.js +11 -3
- package/react/components/processMonitor/components/ListHeader.js.map +1 -1
- package/react/components/processMonitor/components/ProcessStatistics.d.ts +11 -3
- package/react/components/processMonitor/components/ProcessStatistics.js +35 -18
- package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
- package/react/components/processMonitor/constants.d.ts +11 -16
- package/react/components/processMonitor/constants.js +6 -1
- package/react/components/processMonitor/constants.js.map +1 -1
- package/react/components/processMonitor/helpers.d.ts +14 -6
- package/react/components/processMonitor/helpers.js +31 -23
- package/react/components/processMonitor/helpers.js.map +1 -1
- package/react/components/processMonitor/helpers.spec.d.ts +1 -0
- package/react/components/processMonitor/helpers.spec.js +44 -0
- package/react/components/processMonitor/helpers.spec.js.map +1 -0
- package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts +31 -15
- package/react/components/processMonitor/stores/ProcessMonitorStore.js +104 -95
- package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
- package/react/components/quickComponentForm/QuickComponentForm.d.ts +4 -1
- package/react/components/quickComponentForm/QuickComponentForm.js +14 -15
- package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
- package/react/components/search/Highlight.js +2 -2
- package/react/components/search/Highlight.js.map +1 -1
- package/react/components/search/Highlight.spec.js +3 -3
- package/react/components/search/Highlight.spec.js.map +1 -1
- package/react/components/search/Highlight.stories.js +1 -1
- package/react/components/search/Highlight.stories.js.map +1 -1
- package/react/components/search/Search.js +17 -8
- package/react/components/search/Search.js.map +1 -1
- package/react/components/search/SearchBestMatch.js +3 -5
- package/react/components/search/SearchBestMatch.js.map +1 -1
- package/react/components/search/SearchProviderResults.js +4 -5
- package/react/components/search/SearchProviderResults.js.map +1 -1
- package/react/components/search/SearchResult.js +3 -2
- package/react/components/search/SearchResult.js.map +1 -1
- package/react/components/search/SearchResults.js +1 -1
- package/react/components/search/SearchResults.js.map +1 -1
- package/react/components/shared/Button.js +2 -4
- package/react/components/shared/Button.js.map +1 -1
- package/react/components/shared/DefaultDropdownButton.js +58 -13
- package/react/components/shared/DefaultDropdownButton.js.map +1 -1
- package/react/components/shared/NavigationButton.js +9 -11
- package/react/components/shared/NavigationButton.js.map +1 -1
- package/react/components/shared/Tag.d.ts +11 -1
- package/react/components/shared/Tag.js.map +1 -1
- package/react/components/shared/TagsMenu.d.ts +26 -6
- package/react/components/shared/TagsMenu.js.map +1 -1
- package/react/components/shared/linkerUtil.d.ts +3 -1
- package/react/components/shared/linkerUtil.js.map +1 -1
- package/react/components/shared/tests/DefaultDropdownButton.spec.js.map +1 -1
- package/react/components/shared/tests/addProtocolToValidURL.spec.js.map +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.js +0 -2
- package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.spec.js +6 -6
- package/react/components/singleInputDialog/SingleInputDialog.spec.js.map +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.stories.js +1 -1
- package/react/components/singleInputDialog/SingleInputDialog.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/AppEditAccess.d.ts +1 -1
- package/react/components/smartDesktopDesigner/AppEditAccess.js +17 -34
- package/react/components/smartDesktopDesigner/AppEditAccess.js.map +1 -1
- package/react/components/smartDesktopDesigner/AppEditPage.d.ts +4 -4
- package/react/components/smartDesktopDesigner/AppEditPage.js +2 -2
- package/react/components/smartDesktopDesigner/AppEditPage.js.map +1 -1
- package/react/components/smartDesktopDesigner/Appearance.js +3 -5
- package/react/components/smartDesktopDesigner/Appearance.js.map +1 -1
- package/react/components/smartDesktopDesigner/Application.d.ts +7 -5
- package/react/components/smartDesktopDesigner/Application.js +78 -92
- package/react/components/smartDesktopDesigner/Application.js.map +1 -1
- package/react/components/smartDesktopDesigner/ApplicationEdit.d.ts +4 -1
- package/react/components/smartDesktopDesigner/ApplicationEdit.js +68 -51
- package/react/components/smartDesktopDesigner/ApplicationEdit.js.map +1 -1
- package/react/components/smartDesktopDesigner/ApplicationList.d.ts +4 -2
- package/react/components/smartDesktopDesigner/ApplicationList.js +23 -20
- package/react/components/smartDesktopDesigner/ApplicationList.js.map +1 -1
- package/react/components/smartDesktopDesigner/ApplicationSetup.d.ts +4 -3
- package/react/components/smartDesktopDesigner/ApplicationSetup.js +8 -20
- package/react/components/smartDesktopDesigner/ApplicationSetup.js.map +1 -1
- package/react/components/smartDesktopDesigner/Applications.d.ts +3 -2
- package/react/components/smartDesktopDesigner/Applications.js +73 -62
- package/react/components/smartDesktopDesigner/Applications.js.map +1 -1
- package/react/components/smartDesktopDesigner/Authentication.js +2 -8
- package/react/components/smartDesktopDesigner/Authentication.js.map +1 -1
- package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js +1 -8
- package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js.map +1 -1
- package/react/components/smartDesktopDesigner/Content.js.map +1 -1
- package/react/components/smartDesktopDesigner/CurrentView.js +1 -1
- package/react/components/smartDesktopDesigner/CurrentView.js.map +1 -1
- package/react/components/smartDesktopDesigner/Export.js +3 -3
- package/react/components/smartDesktopDesigner/Export.js.map +1 -1
- package/react/components/smartDesktopDesigner/ExportCloud.js +1 -1
- package/react/components/smartDesktopDesigner/ExportCloud.js.map +1 -1
- package/react/components/smartDesktopDesigner/ExportDeployInfo.js +1 -1
- package/react/components/smartDesktopDesigner/ExportDeployInfo.js.map +1 -1
- package/react/components/smartDesktopDesigner/ExportZip.js +0 -1
- package/react/components/smartDesktopDesigner/ExportZip.js.map +1 -1
- package/react/components/smartDesktopDesigner/GettingStarted.d.ts +1 -1
- package/react/components/smartDesktopDesigner/GettingStarted.js +1 -1
- package/react/components/smartDesktopDesigner/GettingStarted.js.map +1 -1
- package/react/components/smartDesktopDesigner/ProjectHeader.d.ts +1 -1
- package/react/components/smartDesktopDesigner/ProjectHeader.js +1 -1
- package/react/components/smartDesktopDesigner/ProjectHeader.js.map +1 -1
- package/react/components/smartDesktopDesigner/Publish.js +1 -1
- package/react/components/smartDesktopDesigner/Publish.js.map +1 -1
- package/react/components/smartDesktopDesigner/SmartDesktopDesigner.d.ts +0 -11
- package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js +18 -31
- package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
- package/react/components/smartDesktopDesigner/Themes.js +2 -8
- package/react/components/smartDesktopDesigner/Themes.js.map +1 -1
- package/react/components/smartDesktopDesigner/View.js.map +1 -1
- package/react/components/smartDesktopDesigner/common/getCSSVars.d.ts +1 -2
- package/react/components/smartDesktopDesigner/common/getCSSVars.js +2 -2
- package/react/components/smartDesktopDesigner/common/getCSSVars.js.map +1 -1
- package/react/components/smartDesktopDesigner/common/views.d.ts +1 -1
- package/react/components/smartDesktopDesigner/common/views.js +8 -18
- package/react/components/smartDesktopDesigner/common/views.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.js +16 -24
- package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.js +8 -9
- package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/apps.d.ts +4 -70
- package/react/components/smartDesktopDesigner/fixtures/apps.js +20 -31
- package/react/components/smartDesktopDesigner/fixtures/apps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js +6 -9
- package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/exportProps.js +5 -5
- package/react/components/smartDesktopDesigner/fixtures/exportProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/publishProgress.d.ts +2 -1
- package/react/components/smartDesktopDesigner/fixtures/publishProgress.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/themeProps.d.ts +5 -5
- package/react/components/smartDesktopDesigner/fixtures/themeProps.js +6 -7
- package/react/components/smartDesktopDesigner/fixtures/themeProps.js.map +1 -1
- package/react/components/smartDesktopDesigner/fixtures/views.js +4 -4
- package/react/components/smartDesktopDesigner/fixtures/views.js.map +1 -1
- package/react/components/smartDesktopDesigner/sdd_helpers.js +2 -1
- package/react/components/smartDesktopDesigner/sdd_helpers.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.d.ts +3 -4
- package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js +14 -20
- package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Appearance.stories.js +7 -7
- package/react/components/smartDesktopDesigner/stories/Appearance.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.js +3 -7
- package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js +9 -2
- package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.js +3 -10
- package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Applications.stories.js +1 -1
- package/react/components/smartDesktopDesigner/stories/Applications.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Authentication.stories.js +18 -36
- package/react/components/smartDesktopDesigner/stories/Authentication.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Export.stories.js +2 -2
- package/react/components/smartDesktopDesigner/stories/Export.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js +2 -2
- package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js +5 -11
- package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.d.ts +1 -1
- package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js +1 -1
- package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Navigation.stories.js +1 -1
- package/react/components/smartDesktopDesigner/stories/Navigation.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js +2 -4
- package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.d.ts +1 -1
- package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.js +1 -1
- package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Publish.stories.js +13 -28
- package/react/components/smartDesktopDesigner/stories/Publish.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js +1 -1
- package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js +3 -3
- package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/stories/Themes.stories.js +1 -1
- package/react/components/smartDesktopDesigner/stories/Themes.stories.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js +32 -32
- package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ApplicationEdit.spec.js +6 -5
- package/react/components/smartDesktopDesigner/tests/ApplicationEdit.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ApplicationList.spec.js +11 -11
- package/react/components/smartDesktopDesigner/tests/ApplicationList.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ApplicationSetup.spec.js +9 -7
- package/react/components/smartDesktopDesigner/tests/ApplicationSetup.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Applications.spec.js +35 -35
- package/react/components/smartDesktopDesigner/tests/Applications.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Authentication.spec.js +6 -18
- package/react/components/smartDesktopDesigner/tests/Authentication.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Export.spec.js +14 -22
- package/react/components/smartDesktopDesigner/tests/Export.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js +2 -6
- package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Navigation.spec.js +2 -2
- package/react/components/smartDesktopDesigner/tests/Navigation.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js +2 -2
- package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/ProjectHeader.spec.js +2 -2
- package/react/components/smartDesktopDesigner/tests/ProjectHeader.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Publish.spec.js +3 -10
- package/react/components/smartDesktopDesigner/tests/Publish.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js +2 -6
- package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js +3 -3
- package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/Themes.spec.js +7 -7
- package/react/components/smartDesktopDesigner/tests/Themes.spec.js.map +1 -1
- package/react/components/smartDesktopDesigner/tests/a11y_helper.js +4 -5
- package/react/components/smartDesktopDesigner/tests/a11y_helper.js.map +1 -1
- package/react/components/system/System.spec.js +1 -1
- package/react/components/system/System.spec.js.map +1 -1
- package/react/components/system/SystemTrayComponentShell.js +1 -1
- package/react/components/system/SystemTrayComponentShell.js.map +1 -1
- package/react/components/toolbar/MinimizeAll.spec.js +5 -5
- package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
- package/react/components/toolbar/NotificationControl.js +3 -2
- package/react/components/toolbar/NotificationControl.js.map +1 -1
- package/react/components/toolbar/RevealAll.spec.js +5 -5
- package/react/components/toolbar/RevealAll.spec.js.map +1 -1
- package/react/components/toolbar/ToolbarIcon.js +14 -2
- package/react/components/toolbar/ToolbarIcon.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.d.ts +22 -5
- package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js +11 -6
- package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.js +21 -9
- package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.d.ts +33 -10
- package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js +41 -10
- package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.d.ts +3 -3
- package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js +0 -3
- package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.d.ts +24 -8
- package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js +4 -2
- package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.d.ts +18 -4
- package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js +7 -5
- package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.d.ts +14 -6
- package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.js +2 -3
- package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/Content.d.ts +30 -13
- package/react/components/toolbar/advancedAppLauncher/components/Content.js +35 -37
- package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/FilterSort.d.ts +15 -5
- package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js +4 -3
- package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/FoldersList.d.ts +38 -21
- package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js +14 -9
- package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.d.ts +18 -3
- package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js +8 -4
- package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.d.ts +10 -3
- package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.js +1 -3
- package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/SearchBox.d.ts +15 -6
- package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js +11 -6
- package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/SortBy.d.ts +11 -4
- package/react/components/toolbar/advancedAppLauncher/components/SortBy.js +3 -2
- package/react/components/toolbar/advancedAppLauncher/components/SortBy.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/TagsList.d.ts +18 -6
- package/react/components/toolbar/advancedAppLauncher/components/TagsList.js +2 -2
- package/react/components/toolbar/advancedAppLauncher/components/TagsList.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.d.ts +20 -4
- package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js +2 -4
- package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/modules/FDC3.d.ts +15 -10
- package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js +19 -30
- package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.d.ts +5 -2
- package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.js +1 -1
- package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.d.ts +87 -59
- package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js +51 -54
- package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
- package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.d.ts +7 -6
- package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js +11 -13
- package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
- package/react/components/toolbar/appLauncher/AppLauncherMenu.d.ts +3 -3
- package/react/components/toolbar/appLauncher/AppLauncherMenu.js +1 -1
- package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
- package/react/components/toolbar/appLauncher/DynamicAppLauncher.js.map +1 -1
- package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.d.ts +25 -3
- package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js +4 -11
- package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
- package/react/components/toolbar/appLauncher/components/componentList.d.ts +34 -6
- package/react/components/toolbar/appLauncher/components/componentList.js +25 -22
- package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
- package/react/components/toolbar/appLauncher/stores/appLauncherStore.d.ts +32 -32
- package/react/components/toolbar/appLauncher/stores/appLauncherStore.js +43 -65
- package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
- package/react/components/toolbar/dashbar/Dashbar.js +143 -125
- package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
- package/react/components/toolbar/dashbar/DashbarItem.js +4 -5
- package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.d.ts +28 -5
- package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js +17 -23
- package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/components/Workspace.d.ts +25 -3
- package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.d.ts +13 -8
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js +2 -2
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.d.ts +16 -8
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js +0 -3
- package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.d.ts +66 -11
- package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js +103 -153
- package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
- package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +0 -4
- package/react/components/userPreferences/UserPreferenceTypes.d.ts +5 -0
- package/react/components/userPreferences/UserPreferenceTypes.js +2 -0
- package/react/components/userPreferences/UserPreferenceTypes.js.map +1 -0
- package/react/components/userPreferences/UserPreferencesBase.js +2 -2
- package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
- package/react/components/userPreferences/UserPreferencesWrapper.js +1 -1
- package/react/components/userPreferences/UserPreferencesWrapper.js.map +1 -1
- package/react/components/userPreferences/components/ContentSection.js +1 -1
- package/react/components/userPreferences/components/ContentSection.js.map +1 -1
- package/react/components/userPreferences/components/LeftNav.d.ts +1 -1
- package/react/components/userPreferences/components/LeftNav.js +1 -1
- package/react/components/userPreferences/components/LeftNav.js.map +1 -1
- package/react/components/userPreferences/components/content/DashbarEditor.js +4 -4
- package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
- package/react/components/userPreferences/components/content/Notifications.js +2 -0
- package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
- package/react/components/userPreferences/components/content/Workspaces.d.ts +51 -14
- package/react/components/userPreferences/components/content/Workspaces.js +96 -90
- package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js +48 -51
- package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js +9 -9
- package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js +4 -6
- package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
- package/react/components/userPreferences/components/content/notificationViews/notificationViewsUtils.js +6 -6
- package/react/components/userPreferences/components/content/notificationViews/notificationViewsUtils.js.map +1 -1
- package/react/components/userPreferences/components/general/ScheduledRestart.js +0 -1
- package/react/components/userPreferences/components/general/ScheduledRestart.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceButton.d.ts +3 -4
- package/react/components/userPreferences/components/workspaces/WorkspaceButton.js +5 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceButton.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceComponents.js +8 -5
- package/react/components/userPreferences/components/workspaces/WorkspaceComponents.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceItem.d.ts +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceItem.js +24 -9
- package/react/components/userPreferences/components/workspaces/WorkspaceItem.js.map +1 -1
- package/react/components/userPreferences/components/workspaces/WorkspaceItemList.js +16 -2
- package/react/components/userPreferences/components/workspaces/WorkspaceItemList.js.map +1 -1
- package/react/components/userPreferences/stores/UserPreferencesStore.d.ts +12 -12
- package/react/components/userPreferences/stores/UserPreferencesStore.js +10 -17
- package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
- package/react/components/userPreferences/stories/DashbarEditor.stories.js +1 -1
- package/react/components/userPreferences/stories/DashbarEditor.stories.js.map +1 -1
- package/react/components/userPreferences/stories/DashbarEditorItem.stories.js +1 -1
- package/react/components/userPreferences/stories/DashbarEditorItem.stories.js.map +1 -1
- package/react/components/userPreferences/stories/General.stories.js.map +1 -1
- package/react/components/userPreferences/stories/NotificationsSourceTypes.stories.js +1 -1
- package/react/components/userPreferences/stories/NotificationsSourceTypes.stories.js.map +1 -1
- package/react/components/userPreferences/stories/NotificationsSources.stories.js +1 -1
- package/react/components/userPreferences/stories/NotificationsSources.stories.js.map +1 -1
- package/react/components/userPreferences/stories/UserPreferences.stories.d.ts +1 -1
- package/react/components/userPreferences/stories/UserPreferences.stories.js +1 -1
- package/react/components/userPreferences/stories/UserPreferences.stories.js.map +1 -1
- package/react/components/userPreferences/stories/WorkspaceButton.stories.d.ts +5 -9
- package/react/components/userPreferences/stories/WorkspaceButton.stories.js +10 -3
- package/react/components/userPreferences/stories/WorkspaceButton.stories.js.map +1 -1
- package/react/components/userPreferences/stories/WorkspaceItem.stories.js +2 -2
- package/react/components/userPreferences/stories/WorkspaceItem.stories.js.map +1 -1
- package/react/components/userPreferences/stories/WorkspaceItemList.stories.js.map +1 -1
- package/react/components/userPreferences/stories/Workspaces.stories.js +2 -2
- package/react/components/userPreferences/stories/Workspaces.stories.js.map +1 -1
- package/react/components/userPreferences/tests/ContentSection.spec.js.map +1 -1
- package/react/components/userPreferences/tests/DashbarEditor.spec.js.map +1 -1
- package/react/components/userPreferences/tests/DashbarEditorItem.spec.js.map +1 -1
- package/react/components/userPreferences/tests/General.spec.js.map +1 -1
- package/react/components/userPreferences/tests/LeftNav.spec.js.map +1 -1
- package/react/components/userPreferences/tests/NotificationSourceTypes.spec.js.map +1 -1
- package/react/components/userPreferences/tests/Notifications.spec.js.map +1 -1
- package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js.map +1 -1
- package/react/components/userPreferences/tests/NotificationsSourcesPreferences.spec.js.map +1 -1
- package/react/components/userPreferences/tests/ScheduledRestart.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceButton.spec.js +17 -3
- package/react/components/userPreferences/tests/WorkspaceButton.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceComponents.spec.js +1 -1
- package/react/components/userPreferences/tests/WorkspaceComponents.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceItem.spec.js.map +1 -1
- package/react/components/userPreferences/tests/WorkspaceItemList.spec.js.map +1 -1
- package/react/components/utils.js +1 -1
- package/react/components/utils.js.map +1 -1
- package/react/components/windowTitleBar/WindowTitleBarShell.d.ts +58 -31
- package/react/components/windowTitleBar/WindowTitleBarShell.js +47 -50
- package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
- package/react/components/windowTitleBar/components/center/Tab.d.ts +28 -7
- package/react/components/windowTitleBar/components/center/Tab.js +11 -4
- package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
- package/react/components/windowTitleBar/components/center/TabList.d.ts +43 -30
- package/react/components/windowTitleBar/components/center/TabList.js +179 -66
- package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerButton.js +5 -4
- package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.d.ts +1 -21
- package/react/components/windowTitleBar/components/left/LinkerGroups.js +6 -8
- package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
- package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js +2 -1
- package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
- package/react/components/windowTitleBar/components/left/ShareButton.d.ts +1 -21
- package/react/components/windowTitleBar/components/right/CloseButton.d.ts +12 -25
- package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/GroupingButton.d.ts +17 -26
- package/react/components/windowTitleBar/components/right/GroupingButton.js +2 -2
- package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/MaximizeButton.d.ts +16 -26
- package/react/components/windowTitleBar/components/right/MaximizeButton.js +7 -9
- package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
- package/react/components/windowTitleBar/components/right/MinimizeButton.d.ts +12 -25
- package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
- package/react/components/windowTitleBar/components/windowTitle.d.ts +2 -1
- package/react/components/windowTitleBar/components/windowTitle.js +22 -10
- package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
- package/react/components/windowTitleBar/stores/windowTitleBarStore.d.ts +56 -44
- package/react/components/windowTitleBar/stores/windowTitleBarStore.js +96 -64
- package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
- package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.d.ts +42 -44
- package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js.map +1 -1
- package/react/components/windowTitleBar/windowTitleBarContext.d.ts +9 -9
- package/react/components/windowTitleBar/windowTitleBarContext.js +2 -4
- package/react/components/windowTitleBar/windowTitleBarContext.js.map +1 -1
- package/react/components/yesNoDialog/Timer.spec.js +2 -2
- package/react/components/yesNoDialog/Timer.spec.js.map +1 -1
- package/react/components/yesNoDialog/Timer.stories.js +1 -1
- package/react/components/yesNoDialog/Timer.stories.js.map +1 -1
- package/react/components/yesNoDialog/YesNoDialog.spec.js +5 -5
- package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
- package/react/components/yesNoDialog/YesNoDialog.stories.js +1 -1
- package/react/components/yesNoDialog/YesNoDialog.stories.js.map +1 -1
- package/react/hooks/useFavoritesShell.js +1 -3
- package/react/hooks/useFavoritesShell.js.map +1 -1
- package/react/hooks/useLinker.js +4 -4
- package/react/hooks/useLinker.js.map +1 -1
- package/react/hooks/useMenu.js +2 -2
- package/react/hooks/useMenu.js.map +1 -1
- package/react/hooks/useNotifications.d.ts +8 -8
- package/react/hooks/useNotifications.js +30 -30
- package/react/hooks/useNotifications.js.map +1 -1
- package/react/hooks/usePubSub.js +3 -5
- package/react/hooks/usePubSub.js.map +1 -1
- package/react/hooks/useSearch.js +1 -1
- package/react/hooks/useSearch.js.map +1 -1
- package/react/hooks/useToolbar.js +16 -35
- package/react/hooks/useToolbar.js.map +1 -1
- package/react/hooks/useWorkspace.js +1 -1
- package/react/hooks/useWorkspace.js.map +1 -1
- package/react/reducers/favoriteReducer.js +1 -1
- package/react/reducers/favoriteReducer.js.map +1 -1
- package/react/reducers/linkerReducer.js.map +1 -1
- package/react/reducers/rootReducer.d.ts +3 -4
- package/react/reducers/toolbarReducer.js +1 -1
- package/react/reducers/toolbarReducer.js.map +1 -1
- package/react/store.d.ts +6 -7
- package/react/store.js.map +1 -1
- package/react/types/advancedAppLauncherTypes.d.ts +28 -1
- package/react/types/advancedAppLauncherTypes.js.map +1 -1
- package/react/types/favoriteTypes.d.ts +1 -1
- package/react/types/favoriteTypes.js.map +1 -1
- package/react/types/fdc3.d.ts +22 -0
- package/react/types/fdc3.js.map +1 -1
- package/react/types/searchTypes.d.ts +3 -0
- package/react/types/searchTypes.js.map +1 -1
- package/react/types/smartDesktopDesignerTypes.d.ts +11 -9
- package/react/types/smartDesktopDesignerTypes.js.map +1 -1
- package/react/types/windowTitleBar.d.ts +47 -0
- package/react/types/windowTitleBar.js +2 -0
- package/react/types/windowTitleBar.js.map +1 -0
- package/react/types/workspaceTypes.d.ts +19 -0
- package/react/types/workspaceTypes.js.map +1 -1
- package/react/components/processMonitor/components/ChildWindows.d.ts +0 -4
- package/react/components/processMonitor/components/ChildWindows.js +0 -11
- package/react/components/processMonitor/components/ChildWindows.js.map +0 -1
- package/react/components/smartDesktopDesigner/fixtures/applicationsProps.d.ts +0 -2
- package/react/components/smartDesktopDesigner/fixtures/applicationsProps.js +0 -88
- package/react/components/smartDesktopDesigner/fixtures/applicationsProps.js.map +0 -1
- package/react/components/toolbar/advancedAppLauncher/components/LeftNav.d.ts +0 -4
- package/react/components/toolbar/advancedAppLauncher/components/LeftNav.js +0 -14
- package/react/components/toolbar/advancedAppLauncher/components/LeftNav.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
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\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport {\r\n\tDefaultApplications,\r\n\tEmptyApplications,\r\n\tApplicationsWithTemporary,\r\n\tLong,\r\n} from \"../stories/Applications.stories\";\r\nimport { getApplicationsArgs } from \"../fixtures/apps\";\r\nimport { waitTick } from \"../sdd_helpers\";\r\nimport { accessibilityAssessor } from \"./a11y_helper\";\r\nimport { DefaultSDD } from \"../stories/SmartDesktopDesigner.stories\";\r\nimport { SmartDesktopDesignerProps } from \"../SmartDesktopDesigner\";\r\n\r\nexport const ADD_NEW_APP_BUTTON = \".visible .icon-before-add button\",\r\n\tAPP_LIST_TABLE_ROW = \".app-list-row\",\r\n\tACTIVE_TAB_APP_LIST_TABLE_ROW = \".visible .app-list-row\",\r\n\tAPP_LIST_EMPTY_MESSAGE = \".app-list-empty\",\r\n\tPAGE_HEADER = \".view-title .leftSide\",\r\n\tPAGE_HEADER_BUTTON = \".view-title .leftSide button\",\r\n\tSETUP_WIZARD_BUTTON = \".tile-type-buttons .icon-wizard button\",\r\n\tSETUP_MANUAL_BUTTON = \".tile-type-buttons .icon-manual button\",\r\n\tAPP_ACCESS_RULE = \".app-edit-access-item\",\r\n\tAPP_ACCESS_BLOCKED = \".app-edit-access-blocked\";\r\n\r\ndescribe(\"<Applications/>\", () => {\r\n\tit(\"should pass accessibility scans\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should pass accessibility scans (empty)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should contain add button app list when not empty\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\r\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).length).to.equal(0);\r\n\t});\r\n\tit(\"should contain add button and empty message when empty\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).first().text()).to.contain(\"nothing here\");\r\n\t});\r\n\tit(\"should be able to edit a web app\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\r\n\r\n\t\tconst app = wrapper.find(APP_LIST_TABLE_ROW).first();\r\n\r\n\t\tconst appName = app.text();\r\n\r\n\t\tconst newName = `${appName} modified`;\r\n\r\n\t\tapp.simulate(\"click\");\r\n\r\n\t\tconst input = wrapper.find(\"input#app-name\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: newName } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).someWhere((node) => node.text() === newName)).to.be.true;\r\n\t});\r\n\tit(\"should be able to add a web app with wizard\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".setup-type-heading\").length).to.equal(1);\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\r\n\r\n\t\tconst input = wrapper.find(\"input\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: \"http://test.com\" } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t});\r\n\tit(\"should be able to grant selectConnect access between two apps\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\t// ADD FIRST APP\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".setup-type-heading\").length).to.equal(1);\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\r\n\r\n\t\tlet input = wrapper.find(\"input\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: \"http://test1.com\" } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"No SelectConnect access rules visible\").to.equal(0);\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// ADD SECOND APP\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".setup-type-heading\").length).to.equal(1);\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\r\n\r\n\t\tinput = wrapper.find(\"input\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: \"http://test2.com\" } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"One SelectConnect access rule visible\").to.equal(1);\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(2);\r\n\r\n\t\twrapper.find(APP_LIST_TABLE_ROW).first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"One SelectConnect access rule visible\").to.equal(1);\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_BLOCKED).length, \"Inbound SelectConnect blocked\").to.equal(1);\r\n\r\n\t\twrapper.find(\".finsembleToggle input\").first().simulate(\"change\");\r\n\r\n\t\texpect(wrapper.find(\".finsembleToggle-on\").length, \"should be toggled on\").to.equal(1);\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(APP_LIST_TABLE_ROW).last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"One SelectConnect access rule visible\").to.equal(1);\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_BLOCKED).length, \"Inbound SelectConnect not blocked\").to.equal(0);\r\n\t});\r\n\tit(\"should not display temporary apps\", async () => {\r\n\t\tconst wrapper = mount(<ApplicationsWithTemporary {...getApplicationsArgs(\"temporary\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.equal(1);\r\n\t});\r\n});\r\n\r\nconst preventable = {\r\n\tpreventDefault: () => {},\r\n\tstopPropagation: () => {},\r\n};\r\n\r\ndescribe(\"<Applications />, Menu section\", () => {\r\n\tit(\"should display empty state with 0 menus\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(ADD_NEW_APP_BUTTON).first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t\texpect(wrapper.find(\".visible .app-list-empty\").first().text()).to.contain(\"nothing here\");\r\n\t});\r\n\tit(\"should display menu name and delete button when there are 1+ menus\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first().text()).to.contain(\"Examples\");\r\n\t\texpect(wrapper.find(\".visible .app-list-row .icon-delete\").exists()).to.be.true;\r\n\t});\r\n\tit(\"MenuEdit: should have an empty Name field by default\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.equal(\"\");\r\n\t});\r\n\tit(\"should display disabled Add New button when there are 5 menus\", async () => {\r\n\t\tconst wrapper = mount(<Long {...getApplicationsArgs(\"long\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(5);\r\n\t\texpect(wrapper.find(ADD_NEW_APP_BUTTON).first().prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"MenuEdit: should disable submit button when Name field is empty\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(1).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\r\n\tconst characters_49 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff\";\r\n\tconst characters_50 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!\";\r\n\tconst characters_51 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!?\";\r\n\tit(\"MenuEdit: when Name input receives 49 characters, it should display 49\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_49,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_49);\r\n\t});\r\n\tit(\"MenuEdit: when Name input receives 50 characters, it should display 50\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_50,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\r\n\t});\r\n\tit(\"MenuEdit: when Name input receives 51 characters, it should only display 50\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_51,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\r\n\t});\r\n\tit(\"MenuEdit: back button should take users back to Applications page, Menu tab\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Click \"Back\" button\r\n\t\twrapper.find(\"button\").first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(\".visible div[data-label='Menus']\").exists(), \"Menus Tab is visible\").to.be.true;\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\r\n\t});\r\n\tit(\"MenuEdit: click Add New, then click Cancel, then see menu list has not changed\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Click \"Back\" button\r\n\t\twrapper.find(\"button\").first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\r\n\t});\r\n\tit(\"MenuEdit: should show a new menu in the list after a menu has been added\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Set name as \"Charts\"\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Charts\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Check \"Example Charts App\"\r\n\t\twrapper.find(\"input[type='checkbox']\").at(0).simulate(\"change\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Menu list shows 2 menus\").to.be.equal(2);\r\n\t});\r\n\tit(\"name change to a menu should persist\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click Examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Change name to Hello World\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Hello World\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Confirm name is Hello World\r\n\t\texpect(wrapper.find(\".visible [role='listitem']\").at(0).text()).contains(\"Hello World\");\r\n\t});\r\n\tit(\"selected applications changes to a menu should persist\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click Examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Select items\r\n\t\twrapper.find(\"input[type='checkbox']\").at(2).simulate(\"change\");\r\n\r\n\t\t// Click save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Confirm items still present\r\n\t\texpect(wrapper.find(\"input[type='checkbox']\").at(2).prop(\"checked\")).to.be.true;\r\n\t});\r\n\tit(\"should not persist menu name when saving multiple menus\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// Confirm name field is empty\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\r\n\r\n\t\t// Change name to Test\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Test\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Click save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\t// Confirm name field is empty\r\n\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\r\n\t});\r\n});\r\n\r\ndescribe(\"<Applications/>, Navigation\", () => {\r\n\tit(\"should navigate as expected\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Add\" button should take you to the \"Add an app\" page\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Application Wizard\" should take you to \"Is your app web or native \"\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Web app\" should bring up the URL entry form and a disabled Next button\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".app-url-container\").exists()).to.be.true;\r\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\r\n\r\n\t\t// Clicking \"Native app\" should bring up a file path form and a disabled Next button\r\n\t\twrapper.find(\".icon-native button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".file-input-container\").exists()).to.be.true;\r\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an App\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Manual Setup (Advanced)\" should take you to the form\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".view-container form\").exists()).to.be.true;\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Back\" should take you to the Applications landing page\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"clicking Cancel on the Application form (Manual) should return to the Applications List\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click the \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"clicking Cancel on the Application form (Wizard) should return to the Applications List\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click the \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Cancel\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"clicking Return to List should return to the Applications List (advanced)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\r\n\t\t\t\"Confirm the App tab's App Table has 0 items in it\"\r\n\t\t).to.be.equal(0);\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\r\n\t\t\t\"Confirm the empty app list message is present\"\r\n\t\t).to.equal(1);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-name\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"Cosaic\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\r\n\t\t\t\"Confirm a row in the App Table exists\"\r\n\t\t).to.be.equal(1);\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\r\n\t\t\t\"Confirm the empty app list message isn't visible\"\r\n\t\t).to.equal(0);\r\n\t});\r\n\r\n\tit(\"clicking Return to List should return to the Applications List (wizard)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"should be able to back out of the application form (Wizard)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Is your app web or native?\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"should be able to back out of the application form (Advanced)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Back\r\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Choose a method to add an application\"\r\n\t\texpect(wrapper.find(\".setup-type-heading\").at(0).text(), \"Setup header text contains expected title\").contains(\r\n\t\t\t\"Choose a method to add an app\"\r\n\t\t);\r\n\r\n\t\t// Click Back\r\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text(), \"Page header text contains expected title\").contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"clicking Add Another Application should return to Add Applications form\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Add Another Application\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Back\" should take you to the Applications landing page\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t}).timeout(5000);\r\n\r\n\tit(\"form should auto-populate from wizard (Web)\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\"#app-url\").prop(\"value\"), \"Url is auto-populated\").to.equal(\"http://www.google.com\");\r\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Name is auto-populated to 'Google'\").to.equal(\"Google\");\r\n\t});\r\n\r\n\tit(\"should discard app on edit screens when user exits via external navigation\", async () => {\r\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t});\r\n\r\n\tit(\"should save app on final screen when user exits via external navigation\", async () => {\r\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t});\r\n});\r\n"]}
|
|
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\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport {\r\n\tDefaultApplications,\r\n\tEmptyApplications,\r\n\tApplicationsWithTemporary,\r\n\tLong,\r\n} from \"../stories/Applications.stories\";\r\nimport { getApplicationsArgs } from \"../fixtures/apps\";\r\nimport { waitTick } from \"../sdd_helpers\";\r\nimport { accessibilityAssessor } from \"./a11y_helper\";\r\nimport { DefaultSDD } from \"../stories/SmartDesktopDesigner.stories\";\r\nimport { SmartDesktopDesignerProps } from \"../SmartDesktopDesigner\";\r\n\r\nexport const ADD_NEW_APP_BUTTON = \".visible .icon-before-add button\",\r\n\tAPP_LIST_TABLE_ROW = \".app-list-row\",\r\n\tACTIVE_TAB_APP_LIST_TABLE_ROW = \".visible .app-list-row\",\r\n\tAPP_LIST_EMPTY_MESSAGE = \".app-list-empty\",\r\n\tPAGE_HEADER = \".view-title .leftSide\",\r\n\tPAGE_HEADER_BUTTON = \".view-title .leftSide button\",\r\n\tSETUP_WIZARD_BUTTON = \".tile-type-buttons .icon-wizard button\",\r\n\tSETUP_MANUAL_BUTTON = \".tile-type-buttons .icon-manual button\",\r\n\tAPP_ACCESS_RULE = \".app-edit-access-item\",\r\n\tAPP_ACCESS_BLOCKED = \".app-edit-access-blocked\";\r\n\r\ndescribe(\"<Applications/>\", () => {\r\n\tit(\"should pass accessibility scans\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should pass accessibility scans (empty)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should contain add button app list when not empty\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\r\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).length).to.equal(0);\r\n\t});\r\n\tit(\"should contain add button and empty message when empty\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).first().text()).to.contain(\"nothing here\");\r\n\t});\r\n\tit(\"should be able to edit a web app\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\r\n\r\n\t\tconst app = wrapper.find(APP_LIST_TABLE_ROW).first();\r\n\r\n\t\tconst appName = app.find(\".app-name\").text();\r\n\r\n\t\tconst newName = `${appName} modified`;\r\n\r\n\t\tapp.simulate(\"click\");\r\n\r\n\t\tconst input = wrapper.find(\"input#app-name\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: newName } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).someWhere((node) => node.find(\".app-name\").text() === newName)).to.be.true;\r\n\t});\r\n\tit(\"should be able to add a web app with wizard\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".setup-type-heading\").length).to.equal(1);\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\r\n\r\n\t\tconst input = wrapper.find(\"input\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: \"http://test.com\" } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t});\r\n\tit(\"should be able to grant selectConnect access between two apps\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\t// ADD FIRST APP\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".setup-type-heading\").length).to.equal(1);\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\r\n\r\n\t\tlet input = wrapper.find(\"input\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: \"http://test1.com\" } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"No SelectConnect access rules visible\").to.equal(0);\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// ADD SECOND APP\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".setup-type-heading\").length).to.equal(1);\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\r\n\r\n\t\tinput = wrapper.find(\"input\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: \"http://test2.com\" } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"One SelectConnect access rule visible\").to.equal(1);\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(2);\r\n\r\n\t\twrapper.find(APP_LIST_TABLE_ROW).first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"One SelectConnect access rule visible\").to.equal(1);\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_BLOCKED).length, \"Inbound SelectConnect blocked\").to.equal(1);\r\n\r\n\t\twrapper.find(\".finsembleToggle input\").first().simulate(\"change\");\r\n\r\n\t\texpect(wrapper.find(\".finsembleToggle-on\").length, \"should be toggled on\").to.equal(1);\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(APP_LIST_TABLE_ROW).last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"One SelectConnect access rule visible\").to.equal(1);\r\n\r\n\t\texpect(wrapper.find(APP_ACCESS_BLOCKED).length, \"Inbound SelectConnect not blocked\").to.equal(0);\r\n\t});\r\n\tit(\"should not display temporary apps\", async () => {\r\n\t\tconst wrapper = mount(<ApplicationsWithTemporary {...getApplicationsArgs(\"temporary\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.equal(1);\r\n\t});\r\n});\r\n\r\nconst preventable = {\r\n\tpreventDefault: () => {},\r\n\tstopPropagation: () => {},\r\n};\r\n\r\ndescribe(\"<Applications />, Menu section\", () => {\r\n\tit(\"should display empty state with 0 menus\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(ADD_NEW_APP_BUTTON).first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t\texpect(wrapper.find(\".visible .app-list-empty\").first().text()).to.contain(\"nothing here\");\r\n\t});\r\n\tit(\"should display menu name and delete button when there are 1+ menus\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first().text()).to.contain(\"Examples\");\r\n\t\texpect(wrapper.find(\".visible .app-list-row .icon-delete\").exists()).to.be.true;\r\n\t});\r\n\tit(\"MenuEdit: should have an empty Name field by default\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.equal(\"\");\r\n\t});\r\n\tit(\"should display disabled Add New button when there are 5 menus\", async () => {\r\n\t\tconst wrapper = mount(<Long {...getApplicationsArgs(\"long\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(5);\r\n\t\texpect(wrapper.find(ADD_NEW_APP_BUTTON).first().prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"MenuEdit: should disable submit button when Name field is empty\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(1).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\r\n\tconst characters_49 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff\";\r\n\tconst characters_50 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!\";\r\n\tconst characters_51 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!?\";\r\n\tit(\"MenuEdit: when Name input receives 49 characters, it should display 49\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_49,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_49);\r\n\t});\r\n\tit(\"MenuEdit: when Name input receives 50 characters, it should display 50\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_50,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\r\n\t});\r\n\tit(\"MenuEdit: when Name input receives 51 characters, it should only display 50\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_51,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\r\n\t});\r\n\tit(\"MenuEdit: back button should take users back to Applications page, Menu tab\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Click \"Back\" button\r\n\t\twrapper.find(\"button\").first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(\".visible div[data-label='Menus']\").exists(), \"Menus Tab is visible\").to.be.true;\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\r\n\t});\r\n\tit(\"MenuEdit: click Add New, then click Cancel, then see menu list has not changed\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Click \"Back\" button\r\n\t\twrapper.find(\"button\").first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\r\n\t});\r\n\tit(\"MenuEdit: should show a new menu in the list after a menu has been added\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Set name as \"Charts\"\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Charts\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Check \"Example Charts App\"\r\n\t\twrapper.find(\"input[type='checkbox']\").at(0).simulate(\"change\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Menu list shows 2 menus\").to.be.equal(2);\r\n\t});\r\n\tit(\"name change to a menu should persist\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click Examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Change name to Hello World\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Hello World\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Confirm name is Hello World\r\n\t\texpect(wrapper.find(\".visible [role='listitem']\").at(0).text()).contains(\"Hello World\");\r\n\t});\r\n\tit(\"selected applications changes to a menu should persist\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click Examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Select items\r\n\t\twrapper.find(\"input[type='checkbox']\").at(2).simulate(\"change\");\r\n\r\n\t\t// Click save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Confirm items still present\r\n\t\texpect(wrapper.find(\"input[type='checkbox']\").at(2).prop(\"checked\")).to.be.true;\r\n\t});\r\n\tit(\"should not persist menu name when saving multiple menus\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// Confirm name field is empty\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\r\n\r\n\t\t// Change name to Test\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Test\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Click save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\t// Confirm name field is empty\r\n\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\r\n\t});\r\n});\r\n\r\ndescribe(\"<Applications/>, Navigation\", () => {\r\n\tit(\"should navigate as expected\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Add\" button should take you to the \"Add an app\" page\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Application Wizard\" should take you to \"Is your app web or native \"\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Web app\" should bring up the URL entry form and a disabled Next button\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".app-url-container\").exists()).to.be.true;\r\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\r\n\r\n\t\t// Clicking \"Native app\" should bring up a file path form and a disabled Next button\r\n\t\twrapper.find(\".icon-native button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".file-input-container\").exists()).to.be.true;\r\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an App\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Manual Setup (Advanced)\" should take you to the form\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".view-container form\").exists()).to.be.true;\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Back\" should take you to the Applications landing page\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"clicking Cancel on the Application form (Manual) should return to the Applications List\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click the \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"clicking Cancel on the Application form (Wizard) should return to the Applications List\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click the \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Cancel\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"clicking Return to List should return to the Applications List (advanced)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\r\n\t\t\t\"Confirm the App tab's App Table has 0 items in it\"\r\n\t\t).to.be.equal(0);\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\r\n\t\t\t\"Confirm the empty app list message is present\"\r\n\t\t).to.equal(1);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-name\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"Cosaic\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\r\n\t\t\t\"Confirm a row in the App Table exists\"\r\n\t\t).to.be.equal(1);\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\r\n\t\t\t\"Confirm the empty app list message isn't visible\"\r\n\t\t).to.equal(0);\r\n\t});\r\n\r\n\tit(\"clicking Return to List should return to the Applications List (wizard)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"should be able to back out of the application form (Wizard)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Is your app web or native?\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"should be able to back out of the application form (Advanced)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Back\r\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Choose a method to add an application\"\r\n\t\texpect(wrapper.find(\".setup-type-heading\").at(0).text(), \"Setup header text contains expected title\").contains(\r\n\t\t\t\"Choose a method to add an app\"\r\n\t\t);\r\n\r\n\t\t// Click Back\r\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text(), \"Page header text contains expected title\").contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"clicking Add Another Application should return to Add Applications form\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Add Another Application\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Back\" should take you to the Applications landing page\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t}).timeout(5000);\r\n\r\n\tit(\"form should auto-populate from wizard (Web)\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\"#app-url\").prop(\"value\"), \"Url is auto-populated\").to.equal(\"http://www.google.com\");\r\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Name is auto-populated to 'Google'\").to.equal(\"Google\");\r\n\t});\r\n\r\n\tit(\"should discard app on edit screens when user exits via external navigation\", async () => {\r\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t});\r\n\r\n\tit(\"should save app on final screen when user exits via external navigation\", async () => {\r\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t});\r\n});\r\n"]}
|
|
@@ -7,15 +7,11 @@ import { waitTick } from "../sdd_helpers";
|
|
|
7
7
|
import { accessibilityAssessor } from "./a11y_helper";
|
|
8
8
|
describe("<Authentication/>", () => {
|
|
9
9
|
it("should pass accessibility scans (Page)", async () => {
|
|
10
|
-
const wrapper = mount(React.createElement(Authentication, {
|
|
11
|
-
...Authentication.args,
|
|
12
|
-
} }));
|
|
10
|
+
const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
|
|
13
11
|
expect(await accessibilityAssessor(wrapper)).to.be.true;
|
|
14
12
|
});
|
|
15
13
|
it("should allow adding auth settings", async () => {
|
|
16
|
-
const wrapper = mount(React.createElement(Authentication, {
|
|
17
|
-
...Authentication.args,
|
|
18
|
-
} }));
|
|
14
|
+
const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
|
|
19
15
|
wrapper
|
|
20
16
|
.find(".auth-setup-select-provider")
|
|
21
17
|
.at(0)
|
|
@@ -57,9 +53,7 @@ describe("<Authentication/>", () => {
|
|
|
57
53
|
});
|
|
58
54
|
it("toggling advanced options should not clear inputs", async () => {
|
|
59
55
|
const arbitrary_value = "my test";
|
|
60
|
-
const wrapper = mount(React.createElement(Authentication, {
|
|
61
|
-
...Authentication.args,
|
|
62
|
-
} }));
|
|
56
|
+
const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
|
|
63
57
|
wrapper
|
|
64
58
|
.find(".auth-setup-select-provider")
|
|
65
59
|
.at(0)
|
|
@@ -82,9 +76,7 @@ describe("<Authentication/>", () => {
|
|
|
82
76
|
});
|
|
83
77
|
it("should allow saving valid endpoint URL", async () => {
|
|
84
78
|
const arbitrary_value = "http://cosaic.io";
|
|
85
|
-
const wrapper = mount(React.createElement(Authentication, {
|
|
86
|
-
...Authentication.args,
|
|
87
|
-
} }));
|
|
79
|
+
const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
|
|
88
80
|
wrapper.find(".auth-setup-endpoint-url input").simulate("change", {
|
|
89
81
|
target: {
|
|
90
82
|
value: arbitrary_value,
|
|
@@ -95,9 +87,7 @@ describe("<Authentication/>", () => {
|
|
|
95
87
|
});
|
|
96
88
|
it("should not allow saving empty endpoint URL", async () => {
|
|
97
89
|
const arbitrary_value = "";
|
|
98
|
-
const wrapper = mount(React.createElement(Authentication, {
|
|
99
|
-
...Authentication.args,
|
|
100
|
-
} }));
|
|
90
|
+
const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
|
|
101
91
|
wrapper.find(".auth-setup-endpoint-url input").simulate("change", {
|
|
102
92
|
target: {
|
|
103
93
|
value: arbitrary_value,
|
|
@@ -108,9 +98,7 @@ describe("<Authentication/>", () => {
|
|
|
108
98
|
});
|
|
109
99
|
it("should not allow saving invalid endpoint URL", async () => {
|
|
110
100
|
const arbitrary_value = "";
|
|
111
|
-
const wrapper = mount(React.createElement(Authentication, {
|
|
112
|
-
...Authentication.args,
|
|
113
|
-
} }));
|
|
101
|
+
const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
|
|
114
102
|
wrapper.find(".auth-setup-endpoint-url input").simulate("change", {
|
|
115
103
|
target: {
|
|
116
104
|
value: arbitrary_value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Authentication.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Authentication.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,IAAI,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"Authentication.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Authentication.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,IAAI,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,cAAc,sCAET,cAAc,CAAC,IAA4B,GAE/C,CACF,CAAC;QAEF,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,cAAc,sCAET,cAAc,CAAC,IAA4B,GAE/C,CACF,CAAC;QAEF,OAAO;aACL,IAAI,CAAC,6BAA6B,CAAC;aACnC,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,QAAQ;aACf;SACD,CAAC,CAAC;QAEJ,MAAM,QAAQ,EAAE,CAAC;QAEjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEhE,MAAM,MAAM,GAAG;YACd;gBACC,QAAQ,EAAE,iDAAiD;gBAC3D,KAAK,EAAE,cAAc;aACrB;YACD;gBACC,QAAQ,EAAE,qDAAqD;gBAC/D,KAAK,EAAE,iBAAiB;aACxB;SACD,CAAC;QAEF,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAE3F,OAAO;iBACL,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;iBACpB,EAAE,CAAC,CAAC,CAAC;iBACL,QAAQ,CAAC,QAAQ,EAAE;gBACnB,MAAM,EAAE;oBACP,KAAK,EAAE,KAAK,CAAC,KAAK;iBAClB;aACD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,EAAE,CAAC;QAEjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7E,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,eAAe,GAAG,SAAS,CAAC;QAElC,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,cAAc,sCAET,cAAc,CAAC,IAA4B,GAE/C,CACF,CAAC;QAEF,OAAO;aACL,IAAI,CAAC,6BAA6B,CAAC;aACnC,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,QAAQ;aACf;SACD,CAAC,CAAC;QAEJ,MAAM,QAAQ,EAAE,CAAC;QAEjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC7D,MAAM,EAAE;gBACP,KAAK,EAAE,eAAe;aACtB;SACD,CAAC,CAAC;QACH,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGjE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,wCAAwC,CAAC,CAAC,EAAE,CAAC,KAAK,CAClH,eAAe,CACf,CAAC;QAGF,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,eAAe,GAAG,kBAAkB,CAAC;QAE3C,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,cAAc,sCAET,cAAc,CAAC,IAA4B,GAE/C,CACF,CAAC;QAGF,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACjE,MAAM,EAAE;gBACP,KAAK,EAAE,eAAe;aACtB;SACD,CAAC,CAAC;QAEH,MAAM,QAAQ,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,eAAe,GAAG,EAAE,CAAC;QAE3B,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,cAAc,sCAET,cAAc,CAAC,IAA4B,GAE/C,CACF,CAAC;QAGF,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACjE,MAAM,EAAE;gBACP,KAAK,EAAE,eAAe;aACtB;SACD,CAAC,CAAC;QAEH,MAAM,QAAQ,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACtF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,eAAe,GAAG,EAAE,CAAC;QAE3B,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,cAAc,sCAET,cAAc,CAAC,IAA4B,GAE/C,CACF,CAAC;QAGF,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACjE,MAAM,EAAE;gBACP,KAAK,EAAE,eAAe;aACtB;SACD,CAAC,CAAC;QAEH,MAAM,QAAQ,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACtF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport { Page as Authentication } from \"../stories/Authentication.stories\";\r\nimport { AuthenticationProps } from \"../Authentication\";\r\nimport { waitTick } from \"../sdd_helpers\";\r\nimport { accessibilityAssessor } from \"./a11y_helper\";\r\n\r\ndescribe(\"<Authentication/>\", () => {\r\n\tit(\"should pass accessibility scans (Page)\", async () => {\r\n\t\tconst wrapper = mount(\r\n\t\t\t<Authentication\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\tit(\"should allow adding auth settings\", async () => {\r\n\t\tconst wrapper = mount(\r\n\t\t\t<Authentication\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\twrapper\r\n\t\t\t.find(\".auth-setup-select-provider\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Custom\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\tawait waitTick();\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".auth-setup-provider\").length).to.equal(1);\r\n\r\n\t\tconst inputs = [\r\n\t\t\t{\r\n\t\t\t\tselector: \".auth-setup-provider .auth-setup-clientid input\",\r\n\t\t\t\tvalue: \"clientidTest\",\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tselector: \".auth-setup-provider .auth-setup-endpoint-url input\",\r\n\t\t\t\tvalue: \"http://test.com\",\r\n\t\t\t},\r\n\t\t];\r\n\r\n\t\tinputs.forEach((input) => {\r\n\t\t\texpect(wrapper.find(input.selector).length, `Find ${input.selector}`).to.be.greaterThan(0);\r\n\r\n\t\t\twrapper\r\n\t\t\t\t.find(input.selector)\r\n\t\t\t\t.at(0)\r\n\t\t\t\t.simulate(\"change\", {\r\n\t\t\t\t\ttarget: {\r\n\t\t\t\t\t\tvalue: input.value,\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\t\t});\r\n\r\n\t\tawait waitTick();\r\n\r\n\t\twrapper.update();\r\n\r\n\t\tinputs.forEach((input) => {\r\n\t\t\texpect(wrapper.find(input.selector).at(0).prop(\"value\")).to.equal(input.value);\r\n\t\t\texpect(wrapper.find(input.selector).at(0).prop(\"aria-invalid\")).to.be.false;\r\n\t\t});\r\n\t});\r\n\r\n\tit(\"toggling advanced options should not clear inputs\", async () => {\r\n\t\tconst arbitrary_value = \"my test\";\r\n\r\n\t\tconst wrapper = mount(\r\n\t\t\t<Authentication\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\twrapper\r\n\t\t\t.find(\".auth-setup-select-provider\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Custom\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\tawait waitTick();\r\n\r\n\t\twrapper.update();\r\n\r\n\t\t// Assign an arbitrary value to \"Client ID\"\r\n\t\twrapper.find(\".auth-setup-clientid input\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: arbitrary_value,\r\n\t\t\t},\r\n\t\t});\r\n\t\tawait waitTick();\r\n\r\n\t\t// Toggle the Advanced Options\r\n\t\twrapper.find(\".auth-setup-toggle-mode button\").simulate(\"click\");\r\n\r\n\t\t// Confirm that \"Client ID\" didn't change\r\n\t\texpect(wrapper.find(\".auth-setup-clientid input\").prop(\"value\"), `Confirm that \"Client ID\" didn't change`).to.equal(\r\n\t\t\tarbitrary_value\r\n\t\t);\r\n\r\n\t\t// Test accessibility of expanded options while we're at it\r\n\t\texpect(await accessibilityAssessor(wrapper), \"Accessibility scan\").to.be.true;\r\n\t});\r\n\r\n\tit(\"should allow saving valid endpoint URL\", async () => {\r\n\t\tconst arbitrary_value = \"http://cosaic.io\";\r\n\r\n\t\tconst wrapper = mount(\r\n\t\t\t<Authentication\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\t// Assign an arbitrary value to \"Client ID\"\r\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: arbitrary_value,\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\tawait waitTick();\r\n\r\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.false;\r\n\t});\r\n\r\n\tit(\"should not allow saving empty endpoint URL\", async () => {\r\n\t\tconst arbitrary_value = \"\";\r\n\r\n\t\tconst wrapper = mount(\r\n\t\t\t<Authentication\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\t// Assign an arbitrary value to \"Client ID\"\r\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: arbitrary_value,\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\tawait waitTick();\r\n\r\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\r\n\tit(\"should not allow saving invalid endpoint URL\", async () => {\r\n\t\tconst arbitrary_value = \"\";\r\n\r\n\t\tconst wrapper = mount(\r\n\t\t\t<Authentication\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\t// Assign an arbitrary value to \"Client ID\"\r\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: arbitrary_value,\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\tawait waitTick();\r\n\r\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.true;\r\n\t});\r\n});\r\n"]}
|
|
@@ -10,21 +10,17 @@ describe("<Export/>", () => {
|
|
|
10
10
|
const publishTest = publishTests.find((test) => test.name === "success");
|
|
11
11
|
let stateIndex = 0;
|
|
12
12
|
let lastHTML = "";
|
|
13
|
-
const wrapper = mount(React.createElement(DefaultExport, {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
expect(lastHTML).to.not.eql(html);
|
|
25
|
-
lastHTML = html;
|
|
26
|
-
}),
|
|
27
|
-
} }));
|
|
13
|
+
const wrapper = mount(React.createElement(DefaultExport, Object.assign({}, Object.assign(Object.assign({}, DefaultExport.args), { progressCheckInterval: 1, getPublishProgress: () => new Promise((resolve) => {
|
|
14
|
+
const publishState = publishTest === null || publishTest === void 0 ? void 0 : publishTest.states[stateIndex++];
|
|
15
|
+
if (!publishState || stateIndex >= publishTest.states.length) {
|
|
16
|
+
checkExportFinished();
|
|
17
|
+
}
|
|
18
|
+
resolve(publishState);
|
|
19
|
+
wrapper.update();
|
|
20
|
+
const html = wrapper.html();
|
|
21
|
+
expect(lastHTML).to.not.eql(html);
|
|
22
|
+
lastHTML = html;
|
|
23
|
+
}) }))));
|
|
28
24
|
function checkExportFinished() {
|
|
29
25
|
wrapper.update();
|
|
30
26
|
expect(wrapper.find(".export-publish-url").length).to.equal(1);
|
|
@@ -40,13 +36,9 @@ describe("<Export/>", () => {
|
|
|
40
36
|
});
|
|
41
37
|
it("should show publish url after upload step", async () => {
|
|
42
38
|
const publishTest = publishTests.find((test) => test.name === "step-4-started");
|
|
43
|
-
const wrapper = mount(React.createElement(DefaultExport, {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
getPublishProgress: () => new Promise((resolve, reject) => {
|
|
47
|
-
resolve(publishTest.states[0]);
|
|
48
|
-
}),
|
|
49
|
-
} }));
|
|
39
|
+
const wrapper = mount(React.createElement(DefaultExport, Object.assign({}, Object.assign(Object.assign({}, DefaultExport.args), { progressCheckInterval: 1, getPublishProgress: () => new Promise((resolve) => {
|
|
40
|
+
resolve(publishTest.states[0]);
|
|
41
|
+
}) }))));
|
|
50
42
|
const button = wrapper.find(".button-container-secondary button").at(0);
|
|
51
43
|
expect(button.text(), "Button with Publish text").to.contain("Publish");
|
|
52
44
|
button.simulate("click");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Export.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Export.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,yDAAyD,EAAE,CAAC,IAAI,EAAE,EAAE;QACtE,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAE,CAAC;QAE1E,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,QAAQ,GAAG,EAAE,CAAC;QAElB,MAAM,OAAO,GAAG,KAAK,CACpB,oBAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"Export.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Export.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport { DefaultExport } from \"../stories/Export.stories\";\r\nimport { ExportProps } from \"../Export\";\r\nimport publishTests from \"../fixtures/publishProgress\";\r\nimport { waitTick } from \"../sdd_helpers\";\r\n\r\ndescribe(\"<Export/>\", () => {\r\n\tit(\"should show publish url after successful publish action\", (done) => {\r\n\t\tconst publishTest = publishTests.find((test) => test.name === \"success\")!;\r\n\r\n\t\tlet stateIndex = 0;\r\n\t\tlet lastHTML = \"\";\r\n\r\n\t\tconst wrapper = mount(\r\n\t\t\t<DefaultExport\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(DefaultExport.args as ExportProps),\r\n\t\t\t\t\tprogressCheckInterval: 1,\r\n\t\t\t\t\tgetPublishProgress: () =>\r\n\t\t\t\t\t\tnew Promise((resolve) => {\r\n\t\t\t\t\t\t\tconst publishState = publishTest?.states[stateIndex++];\r\n\r\n\t\t\t\t\t\t\tif (!publishState || stateIndex >= publishTest.states.length) {\r\n\t\t\t\t\t\t\t\t// eslint-disable-next-line\r\n\t\t\t\t\t\t\t\tcheckExportFinished(); // requires definition of `const wrapper`\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tresolve(publishState);\r\n\r\n\t\t\t\t\t\t\twrapper.update();\r\n\r\n\t\t\t\t\t\t\tconst html = wrapper.html();\r\n\r\n\t\t\t\t\t\t\texpect(lastHTML).to.not.eql(html);\r\n\r\n\t\t\t\t\t\t\tlastHTML = html;\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\tfunction checkExportFinished() {\r\n\t\t\twrapper.update();\r\n\r\n\t\t\texpect(wrapper.find(\".export-publish-url\").length).to.equal(1);\r\n\t\t\texpect(wrapper.find(\".export-publish-url input\").at(0).prop(\"value\")).to.eql(\"https://cosaic.io/\");\r\n\r\n\t\t\twrapper.unmount();\r\n\r\n\t\t\tdone();\r\n\t\t}\r\n\r\n\t\tconst button = wrapper.find(\".button-container-secondary button\").at(0);\r\n\r\n\t\texpect(button.text(), \"Button with Publish text\").to.contain(\"Publish\");\r\n\r\n\t\tbutton.simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(\".export-publish-container h2\").text()).to.contain(\"Publishing\");\r\n\r\n\t\tlastHTML = wrapper.html();\r\n\t});\r\n\r\n\tit(\"should show publish url after upload step\", async () => {\r\n\t\tconst publishTest = publishTests.find((test) => test.name === \"step-4-started\")!;\r\n\r\n\t\tconst wrapper = mount(\r\n\t\t\t<DefaultExport\r\n\t\t\t\t{...{\r\n\t\t\t\t\t...(DefaultExport.args as ExportProps),\r\n\t\t\t\t\tprogressCheckInterval: 1,\r\n\t\t\t\t\tgetPublishProgress: () =>\r\n\t\t\t\t\t\tnew Promise((resolve) => {\r\n\t\t\t\t\t\t\tresolve(publishTest.states[0]);\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t);\r\n\r\n\t\tconst button = wrapper.find(\".button-container-secondary button\").at(0);\r\n\r\n\t\texpect(button.text(), \"Button with Publish text\").to.contain(\"Publish\");\r\n\r\n\t\tbutton.simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".publish-progress-success\").length).to.equal(3);\r\n\t\texpect(wrapper.find(\".publish-progress-indicator\").length).to.equal(1);\r\n\t\texpect(wrapper.find(\".export-publish-url\").length).to.equal(1);\r\n\t\texpect(wrapper.find(\".export-publish-url input\").at(0).prop(\"value\")).to.eql(\"https://cosaic.io/\");\r\n\r\n\t\twrapper.unmount();\r\n\t});\r\n});\r\n"]}
|
|
@@ -6,9 +6,7 @@ import { DefaultExportZip, ErrorExportZip } from "../stories/ExportZip.stories";
|
|
|
6
6
|
import { waitTick } from "../sdd_helpers";
|
|
7
7
|
describe("<ExportZip/>", () => {
|
|
8
8
|
it("should show file count after success publish", async () => {
|
|
9
|
-
const wrapper = mount(React.createElement(DefaultExportZip, {
|
|
10
|
-
...DefaultExportZip.args,
|
|
11
|
-
} }));
|
|
9
|
+
const wrapper = mount(React.createElement(DefaultExportZip, Object.assign({}, Object.assign({}, DefaultExportZip.args))));
|
|
12
10
|
wrapper.find(".export-method-button button").simulate("click");
|
|
13
11
|
await waitTick();
|
|
14
12
|
wrapper.update();
|
|
@@ -16,9 +14,7 @@ describe("<ExportZip/>", () => {
|
|
|
16
14
|
wrapper.unmount();
|
|
17
15
|
});
|
|
18
16
|
it("should error after failed publish", async () => {
|
|
19
|
-
const wrapper = mount(React.createElement(ErrorExportZip, {
|
|
20
|
-
...ErrorExportZip.args,
|
|
21
|
-
} }));
|
|
17
|
+
const wrapper = mount(React.createElement(ErrorExportZip, Object.assign({}, Object.assign({}, ErrorExportZip.args))));
|
|
22
18
|
wrapper.find(".export-method-button button").simulate("click");
|
|
23
19
|
await waitTick();
|
|
24
20
|
wrapper.update();
|