@finsemble/finsemble-ui 6.6.1 → 7.0.0-beta-X

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (902) hide show
  1. package/package.json +31 -43
  2. package/react/actions/favoriteActions.d.ts +1 -0
  3. package/react/actions/favoriteActions.js +1 -0
  4. package/react/actions/favoriteActions.js.map +1 -1
  5. package/react/actions/menuActions.d.ts +1 -0
  6. package/react/actions/menuActions.js +1 -0
  7. package/react/actions/menuActions.js.map +1 -1
  8. package/react/actions/rootActions.d.ts +1 -0
  9. package/react/actions/rootActions.js +1 -0
  10. package/react/actions/rootActions.js.map +1 -1
  11. package/react/actions/searchActions.d.ts +1 -0
  12. package/react/actions/searchActions.js +1 -0
  13. package/react/actions/searchActions.js.map +1 -1
  14. package/react/actions/toolbarActions.d.ts +34 -0
  15. package/react/actions/toolbarActions.js +17 -0
  16. package/react/actions/toolbarActions.js.map +1 -1
  17. package/react/actions/workspaceActions.d.ts +1 -0
  18. package/react/actions/workspaceActions.js +1 -0
  19. package/react/actions/workspaceActions.js.map +1 -1
  20. package/react/assets/css/advancedAppLauncher.css +22 -19
  21. package/react/assets/css/appCatalog.css +67 -72
  22. package/react/assets/css/authentication.css +4 -3
  23. package/react/assets/css/button.css +4 -11
  24. package/react/assets/css/core/formElements.css +1 -1
  25. package/react/assets/css/core/icons.css +3 -2
  26. package/react/assets/css/core/notifications.css +2 -2
  27. package/react/assets/css/core/windowFrame.css +9 -9
  28. package/react/assets/css/dashbar.css +1 -1
  29. package/react/assets/css/defaultTheme.css +9 -53
  30. package/react/assets/css/dialogs.css +13 -11
  31. package/react/assets/css/favorites.css +3 -48
  32. package/react/assets/css/finsemble.css +6 -2
  33. package/react/assets/css/font-finance.css +233 -120
  34. package/react/assets/css/fonts/Open_Sans/OpenSans-Definition.css +10 -10
  35. package/react/assets/css/linkerWindow.css +15 -3
  36. package/react/assets/css/menus.css +12 -12
  37. package/react/assets/css/notificationsCenter.css +49 -33
  38. package/react/assets/css/processMonitor.css +7 -4
  39. package/react/assets/css/search.css +1 -1
  40. package/react/assets/css/shared/animations.css +10 -4
  41. package/react/assets/css/shared/common.css +40 -0
  42. package/react/assets/css/tags.css +10 -10
  43. package/react/assets/css/toolbar.css +22 -19
  44. package/react/assets/css/userPreferences.css +29 -26
  45. package/react/assets/css/windowTitleBar.css +86 -40
  46. package/react/assets/icons/server.svg +26 -0
  47. package/react/componentTemplateGenerator.js +3 -2
  48. package/react/componentTemplateGenerator.js.map +1 -1
  49. package/react/components/FinsembleProvider.d.ts +7 -0
  50. package/react/components/FinsembleProvider.js +2 -0
  51. package/react/components/FinsembleProvider.js.map +1 -1
  52. package/react/components/appCatalog/AppCatalog.d.ts +4 -0
  53. package/react/components/appCatalog/AppCatalog.js +4 -0
  54. package/react/components/appCatalog/AppCatalog.js.map +1 -1
  55. package/react/components/appCatalog/AppCatalogComponent.d.ts +58 -0
  56. package/react/components/appCatalog/AppCatalogComponent.js +70 -1
  57. package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
  58. package/react/components/appCatalog/components/AppCard.d.ts +35 -0
  59. package/react/components/appCatalog/components/AppCard.js +42 -0
  60. package/react/components/appCatalog/components/AppCard.js.map +1 -1
  61. package/react/components/appCatalog/components/AppResults.d.ts +10 -0
  62. package/react/components/appCatalog/components/AppResults.js +24 -0
  63. package/react/components/appCatalog/components/AppResults.js.map +1 -1
  64. package/react/components/appCatalog/components/Carousel.d.ts +26 -0
  65. package/react/components/appCatalog/components/Carousel.js +34 -0
  66. package/react/components/appCatalog/components/Carousel.js.map +1 -1
  67. package/react/components/appCatalog/components/EmptyResults.d.ts +4 -0
  68. package/react/components/appCatalog/components/EmptyResults.js +8 -0
  69. package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
  70. package/react/components/appCatalog/components/Hero.d.ts +15 -0
  71. package/react/components/appCatalog/components/Hero.js +15 -0
  72. package/react/components/appCatalog/components/Hero.js.map +1 -1
  73. package/react/components/appCatalog/components/Home.d.ts +6 -4
  74. package/react/components/appCatalog/components/Home.js +10 -0
  75. package/react/components/appCatalog/components/Home.js.map +1 -1
  76. package/react/components/appCatalog/components/SearchBar.d.ts +31 -0
  77. package/react/components/appCatalog/components/SearchBar.js +33 -0
  78. package/react/components/appCatalog/components/SearchBar.js.map +1 -1
  79. package/react/components/appCatalog/components/Showcase/AppDescription.d.ts +5 -0
  80. package/react/components/appCatalog/components/Showcase/AppDescription.js +9 -0
  81. package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
  82. package/react/components/appCatalog/components/Showcase/AppDevNotes.d.ts +7 -0
  83. package/react/components/appCatalog/components/Showcase/AppDevNotes.js +15 -0
  84. package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
  85. package/react/components/appCatalog/components/Showcase/AppShowcase.d.ts +17 -0
  86. package/react/components/appCatalog/components/Showcase/AppShowcase.js +25 -0
  87. package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
  88. package/react/components/appCatalog/components/Showcase/Header.d.ts +7 -0
  89. package/react/components/appCatalog/components/Showcase/Header.js +12 -0
  90. package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
  91. package/react/components/appCatalog/components/Showcase/ImageCarousel.d.ts +7 -0
  92. package/react/components/appCatalog/components/Showcase/ImageCarousel.js +11 -0
  93. package/react/components/appCatalog/components/Showcase/ImageCarousel.js.map +1 -1
  94. package/react/components/appCatalog/components/Showcase/Modal.d.ts +10 -0
  95. package/react/components/appCatalog/components/Showcase/Modal.js +10 -0
  96. package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
  97. package/react/components/appCatalog/components/Showcase/ReleaseNotes.d.ts +5 -0
  98. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js +9 -0
  99. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js.map +1 -1
  100. package/react/components/appCatalog/components/Showcase/SupportNotes.d.ts +6 -0
  101. package/react/components/appCatalog/components/Showcase/SupportNotes.js +11 -0
  102. package/react/components/appCatalog/components/Showcase/SupportNotes.js.map +1 -1
  103. package/react/components/appCatalog/components/Showcase/VersionNotes.d.ts +5 -0
  104. package/react/components/appCatalog/components/Showcase/VersionNotes.js +9 -0
  105. package/react/components/appCatalog/components/Showcase/VersionNotes.js.map +1 -1
  106. package/react/components/appCatalog/components/Tag.d.ts +6 -0
  107. package/react/components/appCatalog/components/Tag.js +10 -0
  108. package/react/components/appCatalog/components/Tag.js.map +1 -1
  109. package/react/components/appCatalog/components/Toast.d.ts +5 -0
  110. package/react/components/appCatalog/components/Toast.js +9 -0
  111. package/react/components/appCatalog/components/Toast.js.map +1 -1
  112. package/react/components/appCatalog/components/helpers.js +1 -0
  113. package/react/components/appCatalog/components/helpers.js.map +1 -1
  114. package/react/components/appCatalog/modules/AppDirectory.d.ts +5 -0
  115. package/react/components/appCatalog/modules/AppDirectory.js +5 -0
  116. package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
  117. package/react/components/appCatalog/modules/FDC3.d.ts +37 -0
  118. package/react/components/appCatalog/modules/FDC3.js +40 -0
  119. package/react/components/appCatalog/modules/FDC3.js.map +1 -1
  120. package/react/components/appCatalog/stores/appStore.js +1 -0
  121. package/react/components/appCatalog/stores/appStore.js.map +1 -1
  122. package/react/components/appCatalog/stores/storeActions.d.ts +91 -0
  123. package/react/components/appCatalog/stores/storeActions.js +116 -1
  124. package/react/components/appCatalog/stores/storeActions.js.map +1 -1
  125. package/react/components/common/ButtonIcon.js +1 -1
  126. package/react/components/common/ButtonIcon.js.map +1 -1
  127. package/react/components/common/ButtonRow.js +2 -2
  128. package/react/components/common/ButtonRow.js.map +1 -1
  129. package/react/components/common/Checkbox.d.ts +1 -0
  130. package/react/components/common/Checkbox.js +3 -3
  131. package/react/components/common/Checkbox.js.map +1 -1
  132. package/react/components/common/ColorPicker.d.ts +5 -0
  133. package/react/components/common/ColorPicker.js +56 -15
  134. package/react/components/common/ColorPicker.js.map +1 -1
  135. package/react/components/common/DropZone.d.ts +11 -0
  136. package/react/components/common/DropZone.js +21 -1
  137. package/react/components/common/DropZone.js.map +1 -1
  138. package/react/components/common/DropdownButton.d.ts +4 -0
  139. package/react/components/common/DropdownButton.js +4 -0
  140. package/react/components/common/DropdownButton.js.map +1 -1
  141. package/react/components/common/ErrorBoundary.d.ts +34 -0
  142. package/react/components/common/ErrorBoundary.js +43 -0
  143. package/react/components/common/ErrorBoundary.js.map +1 -0
  144. package/react/components/common/FileInput.d.ts +8 -1
  145. package/react/components/common/FileInput.js +19 -4
  146. package/react/components/common/FileInput.js.map +1 -1
  147. package/react/components/common/FinsembleIcon.d.ts +13 -2
  148. package/react/components/common/FinsembleIcon.js +61 -5
  149. package/react/components/common/FinsembleIcon.js.map +1 -1
  150. package/react/components/common/FinsembleLink.d.ts +6 -0
  151. package/react/components/common/FinsembleLink.js +12 -0
  152. package/react/components/common/FinsembleLink.js.map +1 -0
  153. package/react/components/common/FinsembleSelect.js +5 -1
  154. package/react/components/common/FinsembleSelect.js.map +1 -1
  155. package/react/components/common/FinsembleToggle.d.ts +1 -2
  156. package/react/components/common/FinsembleToggle.js +2 -6
  157. package/react/components/common/FinsembleToggle.js.map +1 -1
  158. package/react/components/common/FinsembleToggleButtonBar.d.ts +13 -0
  159. package/react/components/common/FinsembleToggleButtonBar.js +44 -0
  160. package/react/components/common/FinsembleToggleButtonBar.js.map +1 -0
  161. package/react/components/common/InputTable.d.ts +10 -3
  162. package/react/components/common/InputTable.js +20 -13
  163. package/react/components/common/InputTable.js.map +1 -1
  164. package/react/components/common/Tab.js +36 -5
  165. package/react/components/common/Tab.js.map +1 -1
  166. package/react/components/common/TimeSelect.js +34 -3
  167. package/react/components/common/TimeSelect.js.map +1 -1
  168. package/react/components/common/Tooltip.js +2 -0
  169. package/react/components/common/Tooltip.js.map +1 -1
  170. package/react/components/common/css/FinsembleToggle.css +22 -0
  171. package/react/components/common/css/accordion.css +9 -6
  172. package/react/components/common/css/application-edit-page.css +48 -45
  173. package/react/components/common/css/button.css +10 -5
  174. package/react/components/common/css/color-picker.css +3 -3
  175. package/react/components/common/css/drop-zone.css +2 -6
  176. package/react/components/common/css/file-input.css +5 -5
  177. package/react/components/common/css/header.css +3 -2
  178. package/react/components/common/css/icon.css +1 -1
  179. package/react/components/common/css/loading-spinner.css +7 -12
  180. package/react/components/common/css/selector.css +4 -4
  181. package/react/components/common/css/styles.css +22 -16
  182. package/react/components/common/css/tab.css +14 -14
  183. package/react/components/common/css/time-select.css +2 -1
  184. package/react/components/common/css/toggle.css +4 -12
  185. package/react/components/common/css/tooltip.css +2 -3
  186. package/react/components/common/file_helpers.js +2 -0
  187. package/react/components/common/file_helpers.js.map +1 -1
  188. package/react/components/common/helpers.js +12 -1
  189. package/react/components/common/helpers.js.map +1 -1
  190. package/react/components/common/stories/ColorPicker.stories.js +9 -11
  191. package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
  192. package/react/components/common/stories/FileInput.stories.d.ts +3 -1
  193. package/react/components/common/stories/FileInput.stories.js +12 -0
  194. package/react/components/common/stories/FileInput.stories.js.map +1 -1
  195. package/react/components/common/stories/FinsembleToggle.stories.d.ts +1 -2
  196. package/react/components/common/stories/FinsembleToggle.stories.js +0 -7
  197. package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
  198. package/react/components/common/stories/FinsembleToggleButtonBar.stories.d.ts +14 -0
  199. package/react/components/common/stories/FinsembleToggleButtonBar.stories.js +97 -0
  200. package/react/components/common/stories/FinsembleToggleButtonBar.stories.js.map +1 -0
  201. package/react/components/common/stories/InputTable.stories.d.ts +4 -3
  202. package/react/components/common/stories/InputTable.stories.js +18 -8
  203. package/react/components/common/stories/InputTable.stories.js.map +1 -1
  204. package/react/components/common/tests/Accordion.spec.js +6 -0
  205. package/react/components/common/tests/Accordion.spec.js.map +1 -1
  206. package/react/components/common/tests/ButtonRow.spec.js +5 -0
  207. package/react/components/common/tests/ButtonRow.spec.js.map +1 -1
  208. package/react/components/common/tests/Checkbox.spec.js +1 -0
  209. package/react/components/common/tests/Checkbox.spec.js.map +1 -1
  210. package/react/components/common/tests/ColorPicker.spec.js +6 -0
  211. package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
  212. package/react/components/common/tests/DropZone.spec.js +1 -0
  213. package/react/components/common/tests/DropZone.spec.js.map +1 -1
  214. package/react/components/common/tests/FileInput.spec.js +22 -0
  215. package/react/components/common/tests/FileInput.spec.js.map +1 -1
  216. package/react/components/common/tests/FinsembleSelect.spec.js +1 -0
  217. package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
  218. package/react/components/common/tests/FinsembleToggle.spec.js +2 -6
  219. package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
  220. package/react/components/common/tests/FinsembleToggleButtonBar.spec.d.ts +1 -0
  221. package/react/components/common/tests/FinsembleToggleButtonBar.spec.js +41 -0
  222. package/react/components/common/tests/FinsembleToggleButtonBar.spec.js.map +1 -0
  223. package/react/components/common/tests/InputTable.spec.js +3 -3
  224. package/react/components/common/tests/InputTable.spec.js.map +1 -1
  225. package/react/components/common/tests/TimeSelect.spec.js +4 -0
  226. package/react/components/common/tests/TimeSelect.spec.js.map +1 -1
  227. package/react/components/common/tests/Tooltip.spec.js +16 -0
  228. package/react/components/common/tests/Tooltip.spec.js.map +1 -1
  229. package/react/components/favorites/FavoriteMaker.d.ts +8 -0
  230. package/react/components/favorites/FavoriteMaker.js +10 -1
  231. package/react/components/favorites/FavoriteMaker.js.map +1 -1
  232. package/react/components/favorites/FavoritesShell.d.ts +4 -0
  233. package/react/components/favorites/FavoritesShell.js +13 -1
  234. package/react/components/favorites/FavoritesShell.js.map +1 -1
  235. package/react/components/favorites/FavoritesShell.spec.js +3 -0
  236. package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
  237. package/react/components/fdc3Resolver/ResolverContainer.js +12 -7
  238. package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
  239. package/react/components/fdc3Resolver/ResolverDialog.css +16 -3
  240. package/react/components/fdc3Resolver/ResolverDialog.js +7 -2
  241. package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
  242. package/react/components/fdc3Resolver/ResolverDialog.spec.js +3 -2
  243. package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
  244. package/react/components/fdc3Resolver/ResolverDialog.stories.js +2 -0
  245. package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
  246. package/react/components/icon/Icon.d.ts +14 -1
  247. package/react/components/icon/Icon.js +42 -1
  248. package/react/components/icon/Icon.js.map +1 -1
  249. package/react/components/legacyControls/FinsembleDialog.d.ts +4 -0
  250. package/react/components/legacyControls/FinsembleDialog.js +16 -1
  251. package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
  252. package/react/components/legacyControls/FinsembleDialogButton.d.ts +3 -0
  253. package/react/components/legacyControls/FinsembleDialogButton.js +6 -1
  254. package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
  255. package/react/components/legacyControls/FinsembleDialogQuestion.d.ts +7 -0
  256. package/react/components/legacyControls/FinsembleDialogQuestion.js +7 -0
  257. package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
  258. package/react/components/legacyControls/FinsembleDialogTextInput.d.ts +3 -0
  259. package/react/components/legacyControls/FinsembleDialogTextInput.js +14 -0
  260. package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
  261. package/react/components/legacyControls/FinsembleDnDContext.d.ts +19 -0
  262. package/react/components/legacyControls/FinsembleDnDContext.js +133 -8
  263. package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
  264. package/react/components/legacyControls/FinsembleDraggable.d.ts +3 -0
  265. package/react/components/legacyControls/FinsembleDraggable.js +3 -0
  266. package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
  267. package/react/components/legacyControls/FinsembleHoverDetector.d.ts +15 -0
  268. package/react/components/legacyControls/FinsembleHoverDetector.js +26 -1
  269. package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
  270. package/react/components/legacyControls/FinsembleMenuSection.d.ts +4 -0
  271. package/react/components/legacyControls/FinsembleMenuSection.js +38 -0
  272. package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
  273. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js +1 -0
  274. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
  275. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js +1 -0
  276. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
  277. package/react/components/linker/LinkerMenu.d.ts +3 -0
  278. package/react/components/linker/LinkerMenu.js +21 -0
  279. package/react/components/linker/LinkerMenu.js.map +1 -1
  280. package/react/components/linker/LinkerMenuDeprecated.d.ts +3 -0
  281. package/react/components/linker/LinkerMenuDeprecated.js +9 -0
  282. package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
  283. package/react/components/linker/remoteRedux.js +1 -0
  284. package/react/components/linker/remoteRedux.js.map +1 -1
  285. package/react/components/menu/Menu.d.ts +15 -0
  286. package/react/components/menu/Menu.js +15 -0
  287. package/react/components/menu/Menu.js.map +1 -1
  288. package/react/components/menu/MenuAutoResizer.d.ts +7 -0
  289. package/react/components/menu/MenuAutoResizer.js +27 -0
  290. package/react/components/menu/MenuAutoResizer.js.map +1 -1
  291. package/react/components/menu/MenuContent.d.ts +4 -0
  292. package/react/components/menu/MenuContent.js +4 -0
  293. package/react/components/menu/MenuContent.js.map +1 -1
  294. package/react/components/menu/MenuHotKey.d.ts +14 -0
  295. package/react/components/menu/MenuHotKey.js +15 -0
  296. package/react/components/menu/MenuHotKey.js.map +1 -1
  297. package/react/components/menu/MenuItem.d.ts +8 -0
  298. package/react/components/menu/MenuItem.js +13 -2
  299. package/react/components/menu/MenuItem.js.map +1 -1
  300. package/react/components/menu/MenuPortal.js +125 -24
  301. package/react/components/menu/MenuPortal.js.map +1 -1
  302. package/react/components/menu/MenuShell.d.ts +16 -0
  303. package/react/components/menu/MenuShell.js +26 -0
  304. package/react/components/menu/MenuShell.js.map +1 -1
  305. package/react/components/menu/MenuToggle.d.ts +3 -0
  306. package/react/components/menu/MenuToggle.js +5 -2
  307. package/react/components/menu/MenuToggle.js.map +1 -1
  308. package/react/components/menu/keyboardNavigation.d.ts +13 -22
  309. package/react/components/menu/keyboardNavigation.js +165 -160
  310. package/react/components/menu/keyboardNavigation.js.map +1 -1
  311. package/react/components/menu/menuContext.d.ts +6 -0
  312. package/react/components/menu/menuContext.js +6 -0
  313. package/react/components/menu/menuContext.js.map +1 -1
  314. package/react/components/menu/menuHelpers.d.ts +22 -0
  315. package/react/components/menu/menuHelpers.js +58 -1
  316. package/react/components/menu/menuHelpers.js.map +1 -1
  317. package/react/components/notifications/components/drawer/DrawerControls.js +47 -25
  318. package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
  319. package/react/components/notifications/components/drawer/DrawerHeader.js +5 -0
  320. package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
  321. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js +37 -6
  322. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
  323. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js +17 -10
  324. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
  325. package/react/components/notifications/components/shared/CheckButton.js +19 -8
  326. package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
  327. package/react/components/notifications/components/shared/NotificationCardShell.d.ts +9 -0
  328. package/react/components/notifications/components/shared/NotificationCardShell.js +15 -7
  329. package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
  330. package/react/components/notifications/components/shared/OverflowMenu.d.ts +4 -0
  331. package/react/components/notifications/components/shared/OverflowMenu.js +16 -2
  332. package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
  333. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js +2 -1
  334. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js.map +1 -1
  335. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js +2 -1
  336. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js.map +1 -1
  337. package/react/components/notifications/components/views/CardView.js +8 -3
  338. package/react/components/notifications/components/views/CardView.js.map +1 -1
  339. package/react/components/notifications/components/views/ListView.js +11 -1
  340. package/react/components/notifications/components/views/ListView.js.map +1 -1
  341. package/react/components/notifications/notificationsContext.d.ts +4 -0
  342. package/react/components/notifications/notificationsContext.js +4 -0
  343. package/react/components/notifications/notificationsContext.js.map +1 -1
  344. package/react/components/notifications/types.d.ts +6 -0
  345. package/react/components/notifications/types.js.map +1 -1
  346. package/react/components/notifications/utils.d.ts +4 -0
  347. package/react/components/notifications/utils.js +4 -0
  348. package/react/components/notifications/utils.js.map +1 -1
  349. package/react/components/processMonitor/ProcessMonitor.d.ts +3 -0
  350. package/react/components/processMonitor/ProcessMonitor.js +21 -3
  351. package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
  352. package/react/components/processMonitor/components/ChildWindow.d.ts +3 -0
  353. package/react/components/processMonitor/components/ChildWindow.js +5 -0
  354. package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
  355. package/react/components/processMonitor/components/ListHeader.d.ts +5 -0
  356. package/react/components/processMonitor/components/ListHeader.js +7 -0
  357. package/react/components/processMonitor/components/ListHeader.js.map +1 -1
  358. package/react/components/processMonitor/components/ProcessStatistics.js +12 -3
  359. package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
  360. package/react/components/processMonitor/constants.js +6 -0
  361. package/react/components/processMonitor/constants.js.map +1 -1
  362. package/react/components/processMonitor/helpers.d.ts +13 -0
  363. package/react/components/processMonitor/helpers.js +27 -6
  364. package/react/components/processMonitor/helpers.js.map +1 -1
  365. package/react/components/processMonitor/helpers.spec.js +7 -3
  366. package/react/components/processMonitor/helpers.spec.js.map +1 -1
  367. package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts +39 -0
  368. package/react/components/processMonitor/stores/ProcessMonitorStore.js +50 -0
  369. package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
  370. package/react/components/quickComponentForm/QuickComponentForm.d.ts +3 -0
  371. package/react/components/quickComponentForm/QuickComponentForm.js +20 -0
  372. package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
  373. package/react/components/quickComponentForm/quickComponent.css +1 -1
  374. package/react/components/sdd/AddApp.d.ts +7 -4
  375. package/react/components/sdd/AddApp.js +144 -34
  376. package/react/components/sdd/AddApp.js.map +1 -1
  377. package/react/components/sdd/AppEditAccess.d.ts +4 -3
  378. package/react/components/sdd/AppEditAccess.js +8 -0
  379. package/react/components/sdd/AppEditAccess.js.map +1 -1
  380. package/react/components/sdd/AppEditPage.d.ts +6 -4
  381. package/react/components/sdd/AppEditPage.js +205 -393
  382. package/react/components/sdd/AppEditPage.js.map +1 -1
  383. package/react/components/sdd/Appearance.css +1 -1
  384. package/react/components/sdd/Appearance.d.ts +2 -1
  385. package/react/components/sdd/Appearance.js +18 -7
  386. package/react/components/sdd/Appearance.js.map +1 -1
  387. package/react/components/sdd/Application.d.ts +5 -4
  388. package/react/components/sdd/Application.js +94 -44
  389. package/react/components/sdd/Application.js.map +1 -1
  390. package/react/components/sdd/Applications.d.ts +12 -11
  391. package/react/components/sdd/Applications.js +110 -15
  392. package/react/components/sdd/Applications.js.map +1 -1
  393. package/react/components/sdd/AssetsPage.css +3 -3
  394. package/react/components/sdd/Authentication.js +1 -6
  395. package/react/components/sdd/Authentication.js.map +1 -1
  396. package/react/components/sdd/AuthenticationProviderConfig.js +5 -3
  397. package/react/components/sdd/AuthenticationProviderConfig.js.map +1 -1
  398. package/react/components/sdd/EditPreload.d.ts +4 -3
  399. package/react/components/sdd/EditPreload.js +49 -22
  400. package/react/components/sdd/EditPreload.js.map +1 -1
  401. package/react/components/sdd/Export.d.ts +7 -6
  402. package/react/components/sdd/Export.js +4 -3
  403. package/react/components/sdd/Export.js.map +1 -1
  404. package/react/components/sdd/ExportCloud.js +4 -0
  405. package/react/components/sdd/ExportCloud.js.map +1 -1
  406. package/react/components/sdd/GettingStarted.js +3 -3
  407. package/react/components/sdd/GettingStarted.js.map +1 -1
  408. package/react/components/sdd/Navigation.js +28 -4
  409. package/react/components/sdd/Navigation.js.map +1 -1
  410. package/react/components/sdd/OptionalSettingsView.d.ts +6 -5
  411. package/react/components/sdd/OptionalSettingsView.js +2 -10
  412. package/react/components/sdd/OptionalSettingsView.js.map +1 -1
  413. package/react/components/sdd/ProjectErrors.js +1 -1
  414. package/react/components/sdd/ProjectErrors.js.map +1 -1
  415. package/react/components/sdd/Publish.js +4 -2
  416. package/react/components/sdd/Publish.js.map +1 -1
  417. package/react/components/sdd/PublishProgress.js +11 -1
  418. package/react/components/sdd/PublishProgress.js.map +1 -1
  419. package/react/components/sdd/SmartDesktopDesigner.d.ts +17 -16
  420. package/react/components/sdd/SmartDesktopDesigner.js +54 -34
  421. package/react/components/sdd/SmartDesktopDesigner.js.map +1 -1
  422. package/react/components/sdd/ThemePage.css +6 -23
  423. package/react/components/sdd/ThemePage.js +8 -5
  424. package/react/components/sdd/ThemePage.js.map +1 -1
  425. package/react/components/sdd/Themes.d.ts +2 -1
  426. package/react/components/sdd/Themes.js +4 -2
  427. package/react/components/sdd/Themes.js.map +1 -1
  428. package/react/components/sdd/Toolbar.d.ts +5 -4
  429. package/react/components/sdd/Toolbar.js +18 -9
  430. package/react/components/sdd/Toolbar.js.map +1 -1
  431. package/react/components/sdd/appEditPage/Behavior.d.ts +34 -0
  432. package/react/components/sdd/appEditPage/Behavior.js +134 -0
  433. package/react/components/sdd/appEditPage/Behavior.js.map +1 -0
  434. package/react/components/sdd/appEditPage/Component.d.ts +22 -0
  435. package/react/components/sdd/appEditPage/Component.js +76 -0
  436. package/react/components/sdd/appEditPage/Component.js.map +1 -0
  437. package/react/components/sdd/appEditPage/DebugToolkit.d.ts +9 -0
  438. package/react/components/sdd/appEditPage/DebugToolkit.js +20 -0
  439. package/react/components/sdd/appEditPage/DebugToolkit.js.map +1 -0
  440. package/react/components/sdd/appEditPage/Interop.d.ts +10 -0
  441. package/react/components/sdd/appEditPage/Interop.js +40 -0
  442. package/react/components/sdd/appEditPage/Interop.js.map +1 -0
  443. package/react/components/sdd/appEditPage/Position.d.ts +18 -0
  444. package/react/components/sdd/appEditPage/Position.js +72 -0
  445. package/react/components/sdd/appEditPage/Position.js.map +1 -0
  446. package/react/components/sdd/appEditPage/Preloads.d.ts +9 -0
  447. package/react/components/sdd/appEditPage/Preloads.js +16 -0
  448. package/react/components/sdd/appEditPage/Preloads.js.map +1 -0
  449. package/react/components/sdd/appEditPage/SelectConnect.d.ts +15 -0
  450. package/react/components/sdd/appEditPage/SelectConnect.js +28 -0
  451. package/react/components/sdd/appEditPage/SelectConnect.js.map +1 -0
  452. package/react/components/sdd/appEditPage/Workspace.d.ts +12 -0
  453. package/react/components/sdd/appEditPage/Workspace.js +30 -0
  454. package/react/components/sdd/appEditPage/Workspace.js.map +1 -0
  455. package/react/components/sdd/common/getCSSVars.js +7 -2
  456. package/react/components/sdd/common/getCSSVars.js.map +1 -1
  457. package/react/components/sdd/common/setPreloadDefaults.d.ts +1 -1
  458. package/react/components/sdd/common/setPreloadDefaults.js +9 -4
  459. package/react/components/sdd/common/setPreloadDefaults.js.map +1 -1
  460. package/react/components/sdd/common/views.js +7 -4
  461. package/react/components/sdd/common/views.js.map +1 -1
  462. package/react/components/sdd/css/addApp.css +65 -0
  463. package/react/components/sdd/css/appearance.css +6 -0
  464. package/react/components/sdd/css/applications.css +27 -34
  465. package/react/components/sdd/css/authentication.css +7 -6
  466. package/react/components/sdd/css/buttons.css +1 -1
  467. package/react/components/sdd/css/export.css +5 -3
  468. package/react/components/sdd/css/getting-started.css +2 -2
  469. package/react/components/sdd/css/nav.css +11 -14
  470. package/react/components/sdd/css/project-header.css +5 -7
  471. package/react/components/sdd/css/styles.css +29 -23
  472. package/react/components/sdd/css/views.css +4 -3
  473. package/react/components/sdd/fixtures/apps.js +12 -0
  474. package/react/components/sdd/fixtures/apps.js.map +1 -1
  475. package/react/components/sdd/fixtures/authenticationProps.js +15 -1
  476. package/react/components/sdd/fixtures/authenticationProps.js.map +1 -1
  477. package/react/components/sdd/fixtures/configTemplate.js +1 -0
  478. package/react/components/sdd/fixtures/configTemplate.js.map +1 -1
  479. package/react/components/sdd/fixtures/preloads.js +14 -12
  480. package/react/components/sdd/fixtures/preloads.js.map +1 -1
  481. package/react/components/sdd/fixtures/publishProgress.js +40 -0
  482. package/react/components/sdd/fixtures/publishProgress.js.map +1 -1
  483. package/react/components/sdd/sdd_helpers.d.ts +6 -0
  484. package/react/components/sdd/sdd_helpers.js +6 -0
  485. package/react/components/sdd/sdd_helpers.js.map +1 -1
  486. package/react/components/sdd/smartDesktopClient.d.ts +466 -0
  487. package/react/components/sdd/smartDesktopClient.js +906 -0
  488. package/react/components/sdd/smartDesktopClient.js.map +1 -0
  489. package/react/components/sdd/smartDesktopClient.spec.d.ts +1 -0
  490. package/react/components/sdd/smartDesktopClient.spec.js +64 -0
  491. package/react/components/sdd/smartDesktopClient.spec.js.map +1 -0
  492. package/react/components/sdd/stories/AddApp.stories.d.ts +11 -0
  493. package/react/components/sdd/stories/AddApp.stories.js +26 -0
  494. package/react/components/sdd/stories/AddApp.stories.js.map +1 -0
  495. package/react/components/sdd/stories/AppEditPage.stories.d.ts +5 -1
  496. package/react/components/sdd/stories/AppEditPage.stories.js +5 -0
  497. package/react/components/sdd/stories/AppEditPage.stories.js.map +1 -1
  498. package/react/components/sdd/stories/Appearance.stories.d.ts +1 -1
  499. package/react/components/sdd/stories/Appearance.stories.js +2 -0
  500. package/react/components/sdd/stories/Appearance.stories.js.map +1 -1
  501. package/react/components/sdd/stories/Authentication.stories.js +2 -16
  502. package/react/components/sdd/stories/Authentication.stories.js.map +1 -1
  503. package/react/components/sdd/stories/OptionalSettingsView.stories.js +1 -1
  504. package/react/components/sdd/stories/OptionalSettingsView.stories.js.map +1 -1
  505. package/react/components/sdd/stories/SmartDesktopDesigner.stories.d.ts +1 -1
  506. package/react/components/sdd/stories/SmartDesktopDesigner.stories.js +3 -0
  507. package/react/components/sdd/stories/SmartDesktopDesigner.stories.js.map +1 -1
  508. package/react/components/sdd/stories/Themes.stories.d.ts +1 -1
  509. package/react/components/sdd/stories/Themes.stories.js +1 -0
  510. package/react/components/sdd/stories/Themes.stories.js.map +1 -1
  511. package/react/components/sdd/tests/AddApp.spec.d.ts +1 -0
  512. package/react/components/sdd/tests/AddApp.spec.js +133 -0
  513. package/react/components/sdd/tests/AddApp.spec.js.map +1 -0
  514. package/react/components/sdd/tests/AppEditPage.spec.js +108 -23
  515. package/react/components/sdd/tests/AppEditPage.spec.js.map +1 -1
  516. package/react/components/sdd/tests/Application.spec.js +351 -369
  517. package/react/components/sdd/tests/Application.spec.js.map +1 -1
  518. package/react/components/sdd/tests/Applications.spec.d.ts +1 -1
  519. package/react/components/sdd/tests/Applications.spec.js +30 -50
  520. package/react/components/sdd/tests/Applications.spec.js.map +1 -1
  521. package/react/components/sdd/tests/Authentication.spec.js +8 -1
  522. package/react/components/sdd/tests/Authentication.spec.js.map +1 -1
  523. package/react/components/sdd/tests/ContentHeader.spec.js +2 -0
  524. package/react/components/sdd/tests/ContentHeader.spec.js.map +1 -1
  525. package/react/components/sdd/tests/EditPreload.spec.js +63 -7
  526. package/react/components/sdd/tests/EditPreload.spec.js.map +1 -1
  527. package/react/components/sdd/tests/Export.spec.js +8 -1
  528. package/react/components/sdd/tests/Export.spec.js.map +1 -1
  529. package/react/components/sdd/tests/ItemList.spec.js +4 -0
  530. package/react/components/sdd/tests/ItemList.spec.js.map +1 -1
  531. package/react/components/sdd/tests/Navigation.spec.js +2 -2
  532. package/react/components/sdd/tests/Navigation.spec.js.map +1 -1
  533. package/react/components/sdd/tests/OptionalSettingsView.spec.js +264 -0
  534. package/react/components/sdd/tests/OptionalSettingsView.spec.js.map +1 -1
  535. package/react/components/sdd/tests/ProjectErrors.spec.js +3 -1
  536. package/react/components/sdd/tests/ProjectErrors.spec.js.map +1 -1
  537. package/react/components/sdd/tests/SmartDesktopDesigner.spec.js +2 -2
  538. package/react/components/sdd/tests/SmartDesktopDesigner.spec.js.map +1 -1
  539. package/react/components/sdd/tests/Themes.spec.js +1 -1
  540. package/react/components/sdd/tests/Themes.spec.js.map +1 -1
  541. package/react/components/sdd/tests/Toolbar.spec.js +53 -0
  542. package/react/components/sdd/tests/Toolbar.spec.js.map +1 -1
  543. package/react/components/sdd/tests/a11y_helper.js +8 -0
  544. package/react/components/sdd/tests/a11y_helper.js.map +1 -1
  545. package/react/components/search/Highlight.d.ts +6 -0
  546. package/react/components/search/Highlight.js +19 -0
  547. package/react/components/search/Highlight.js.map +1 -1
  548. package/react/components/search/Highlight.stories.js +1 -1
  549. package/react/components/search/Highlight.stories.js.map +1 -1
  550. package/react/components/search/Search.js +1 -1
  551. package/react/components/search/Search.js.map +1 -1
  552. package/react/components/search/SearchBestMatch.d.ts +4 -0
  553. package/react/components/search/SearchBestMatch.js +11 -0
  554. package/react/components/search/SearchBestMatch.js.map +1 -1
  555. package/react/components/search/SearchInput.d.ts +5 -0
  556. package/react/components/search/SearchInput.js +6 -0
  557. package/react/components/search/SearchInput.js.map +1 -1
  558. package/react/components/search/SearchProviderResults.js +2 -0
  559. package/react/components/search/SearchProviderResults.js.map +1 -1
  560. package/react/components/search/SearchResult.d.ts +5 -0
  561. package/react/components/search/SearchResult.js +6 -0
  562. package/react/components/search/SearchResult.js.map +1 -1
  563. package/react/components/search/SearchResult.spec.d.ts +1 -0
  564. package/react/components/search/SearchResult.spec.js +46 -0
  565. package/react/components/search/SearchResult.spec.js.map +1 -0
  566. package/react/components/search/SearchResult.stories.d.ts +16 -0
  567. package/react/components/search/SearchResult.stories.js +113 -0
  568. package/react/components/search/SearchResult.stories.js.map +1 -0
  569. package/react/components/search/SearchResults.js +5 -1
  570. package/react/components/search/SearchResults.js.map +1 -1
  571. package/react/components/search/SearchResults.spec.d.ts +1 -0
  572. package/react/components/search/SearchResults.spec.js +35 -0
  573. package/react/components/search/SearchResults.spec.js.map +1 -0
  574. package/react/components/search/SearchResults.stories.d.ts +11 -0
  575. package/react/components/search/SearchResults.stories.js +458 -0
  576. package/react/components/search/SearchResults.stories.js.map +1 -0
  577. package/react/components/shared/Animate.d.ts +5 -0
  578. package/react/components/shared/Animate.js +12 -1
  579. package/react/components/shared/Animate.js.map +1 -1
  580. package/react/components/shared/DefaultDropdownButton.js +26 -6
  581. package/react/components/shared/DefaultDropdownButton.js.map +1 -1
  582. package/react/components/shared/Tag.d.ts +0 -4
  583. package/react/components/shared/Tag.js +4 -0
  584. package/react/components/shared/Tag.js.map +1 -1
  585. package/react/components/shared/TagsMenu.d.ts +6 -0
  586. package/react/components/shared/TagsMenu.js +7 -0
  587. package/react/components/shared/TagsMenu.js.map +1 -1
  588. package/react/components/shared/addProtocolToValidURL.d.ts +6 -0
  589. package/react/components/shared/addProtocolToValidURL.js +6 -0
  590. package/react/components/shared/addProtocolToValidURL.js.map +1 -1
  591. package/react/components/shared/openQuitConfirmationDialog.d.ts +1 -1
  592. package/react/components/shared/openQuitConfirmationDialog.js +4 -4
  593. package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
  594. package/react/components/shared/tests/DefaultDropdownButton.spec.js +12 -0
  595. package/react/components/shared/tests/DefaultDropdownButton.spec.js.map +1 -1
  596. package/react/components/shared/tests/addProtocolToValidURL.spec.js +1 -0
  597. package/react/components/shared/tests/addProtocolToValidURL.spec.js.map +1 -1
  598. package/react/components/shared/validateURL.d.ts +18 -0
  599. package/react/components/shared/validateURL.js +24 -5
  600. package/react/components/shared/validateURL.js.map +1 -1
  601. package/react/components/singleInputDialog/SingleInputDialog.css +1 -1
  602. package/react/components/singleInputDialog/SingleInputDialog.d.ts +3 -0
  603. package/react/components/singleInputDialog/SingleInputDialog.js +46 -0
  604. package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
  605. package/react/components/singleInputDialog/SingleInputDialog.stories.js +2 -2
  606. package/react/components/singleInputDialog/SingleInputDialog.stories.js.map +1 -1
  607. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.d.ts +1 -16
  608. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js +5 -3
  609. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
  610. package/react/components/system/System.d.ts +22 -0
  611. package/react/components/system/System.js +23 -1
  612. package/react/components/system/System.js.map +1 -1
  613. package/react/components/system/System.stories.js +1 -0
  614. package/react/components/system/System.stories.js.map +1 -1
  615. package/react/components/system/SystemTrayComponentShell.d.ts +6 -0
  616. package/react/components/system/SystemTrayComponentShell.js +9 -0
  617. package/react/components/system/SystemTrayComponentShell.js.map +1 -1
  618. package/react/components/toolbar/AutoArrange.d.ts +5 -0
  619. package/react/components/toolbar/AutoArrange.js +8 -1
  620. package/react/components/toolbar/AutoArrange.js.map +1 -1
  621. package/react/components/toolbar/AutoArrange.spec.js +10 -4
  622. package/react/components/toolbar/AutoArrange.spec.js.map +1 -1
  623. package/react/components/toolbar/AutoArrange.stories.js +1 -0
  624. package/react/components/toolbar/AutoArrange.stories.js.map +1 -1
  625. package/react/components/toolbar/DragHandle.d.ts +4 -0
  626. package/react/components/toolbar/DragHandle.js +11 -0
  627. package/react/components/toolbar/DragHandle.js.map +1 -1
  628. package/react/components/toolbar/DragHandle.spec.js +1 -0
  629. package/react/components/toolbar/DragHandle.spec.js.map +1 -1
  630. package/react/components/toolbar/DragHandle.stories.js +1 -0
  631. package/react/components/toolbar/DragHandle.stories.js.map +1 -1
  632. package/react/components/toolbar/MinimizeAll.d.ts +4 -0
  633. package/react/components/toolbar/MinimizeAll.js +7 -1
  634. package/react/components/toolbar/MinimizeAll.js.map +1 -1
  635. package/react/components/toolbar/MinimizeAll.spec.js +1 -0
  636. package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
  637. package/react/components/toolbar/MinimizeAll.stories.js +1 -0
  638. package/react/components/toolbar/MinimizeAll.stories.js.map +1 -1
  639. package/react/components/toolbar/NotificationControl.d.ts +5 -0
  640. package/react/components/toolbar/NotificationControl.js +8 -1
  641. package/react/components/toolbar/NotificationControl.js.map +1 -1
  642. package/react/components/toolbar/RevealAll.d.ts +4 -0
  643. package/react/components/toolbar/RevealAll.js +7 -1
  644. package/react/components/toolbar/RevealAll.js.map +1 -1
  645. package/react/components/toolbar/RevealAll.spec.js +1 -0
  646. package/react/components/toolbar/RevealAll.spec.js.map +1 -1
  647. package/react/components/toolbar/RevealAll.stories.js +1 -0
  648. package/react/components/toolbar/RevealAll.stories.js.map +1 -1
  649. package/react/components/toolbar/SddButton.d.ts +4 -0
  650. package/react/components/toolbar/SddButton.js +4 -0
  651. package/react/components/toolbar/SddButton.js.map +1 -1
  652. package/react/components/toolbar/ToolbarIcon.d.ts +4 -0
  653. package/react/components/toolbar/ToolbarIcon.js +6 -2
  654. package/react/components/toolbar/ToolbarIcon.js.map +1 -1
  655. package/react/components/toolbar/ToolbarSection.d.ts +8 -9
  656. package/react/components/toolbar/ToolbarSection.js +21 -7
  657. package/react/components/toolbar/ToolbarSection.js.map +1 -1
  658. package/react/components/toolbar/ToolbarShell.d.ts +5 -0
  659. package/react/components/toolbar/ToolbarShell.js +7 -0
  660. package/react/components/toolbar/ToolbarShell.js.map +1 -1
  661. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.d.ts +16 -0
  662. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js +20 -0
  663. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
  664. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.d.ts +52 -0
  665. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js +58 -0
  666. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
  667. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.d.ts +5 -0
  668. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js +5 -0
  669. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
  670. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.d.ts +27 -0
  671. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js +49 -0
  672. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
  673. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.d.ts +13 -0
  674. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js +21 -10
  675. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
  676. package/react/components/toolbar/advancedAppLauncher/components/Content.d.ts +5 -0
  677. package/react/components/toolbar/advancedAppLauncher/components/Content.js +19 -0
  678. package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
  679. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.d.ts +4 -0
  680. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js +4 -0
  681. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
  682. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.d.ts +16 -0
  683. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js +39 -0
  684. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
  685. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.d.ts +4 -0
  686. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js +9 -0
  687. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
  688. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js +3 -0
  689. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
  690. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.d.ts +6 -0
  691. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js +7 -0
  692. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
  693. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.d.ts +5 -0
  694. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js +5 -0
  695. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js.map +1 -1
  696. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.d.ts +5 -0
  697. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js +5 -0
  698. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
  699. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.d.ts +37 -0
  700. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js +40 -0
  701. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
  702. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.d.ts +3 -0
  703. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js +83 -1
  704. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
  705. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.d.ts +10 -0
  706. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js +12 -3
  707. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
  708. package/react/components/toolbar/appLauncher/AppLauncherMenu.d.ts +18 -0
  709. package/react/components/toolbar/appLauncher/AppLauncherMenu.js +20 -0
  710. package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
  711. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.d.ts +9 -0
  712. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js +12 -0
  713. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
  714. package/react/components/toolbar/appLauncher/appLauncher.css +1 -1
  715. package/react/components/toolbar/appLauncher/components/componentList.d.ts +3 -0
  716. package/react/components/toolbar/appLauncher/components/componentList.js +17 -3
  717. package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
  718. package/react/components/toolbar/appLauncher/stores/appLauncherStore.d.ts +6 -0
  719. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js +26 -0
  720. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
  721. package/react/components/toolbar/dashbar/Dashbar.js +91 -15
  722. package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
  723. package/react/components/toolbar/dashbar/DashbarItem.js +5 -0
  724. package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
  725. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.d.ts +8 -1
  726. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js +7 -0
  727. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
  728. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.d.ts +17 -1
  729. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js +21 -1
  730. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
  731. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.d.ts +26 -0
  732. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js +29 -0
  733. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
  734. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.d.ts +6 -1
  735. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js +6 -0
  736. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
  737. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.d.ts +78 -2
  738. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js +191 -40
  739. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
  740. package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +8 -18
  741. package/react/components/userPreferences/NotificationsPreferencesContext.d.ts +4 -0
  742. package/react/components/userPreferences/NotificationsPreferencesContext.js +4 -0
  743. package/react/components/userPreferences/NotificationsPreferencesContext.js.map +1 -1
  744. package/react/components/userPreferences/UserPreferenceTypes.d.ts +3 -0
  745. package/react/components/userPreferences/UserPreferences.d.ts +8 -0
  746. package/react/components/userPreferences/UserPreferences.js +8 -0
  747. package/react/components/userPreferences/UserPreferences.js.map +1 -1
  748. package/react/components/userPreferences/UserPreferencesBase.js +4 -0
  749. package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
  750. package/react/components/userPreferences/components/ContentSection.d.ts +5 -0
  751. package/react/components/userPreferences/components/ContentSection.js +1 -1
  752. package/react/components/userPreferences/components/ContentSection.js.map +1 -1
  753. package/react/components/userPreferences/components/LeftNav.d.ts +4 -0
  754. package/react/components/userPreferences/components/content/DashbarEditor.js +3 -0
  755. package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
  756. package/react/components/userPreferences/components/content/Notifications.js +3 -0
  757. package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
  758. package/react/components/userPreferences/components/content/Workspaces.d.ts +14 -2
  759. package/react/components/userPreferences/components/content/Workspaces.js +78 -38
  760. package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
  761. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js +7 -3
  762. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
  763. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js +3 -0
  764. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
  765. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js +3 -0
  766. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
  767. package/react/components/userPreferences/components/general/ScheduledClose.js +26 -5
  768. package/react/components/userPreferences/components/general/ScheduledClose.js.map +1 -1
  769. package/react/components/userPreferences/components/workspaces/WorkspaceButton.js +1 -1
  770. package/react/components/userPreferences/components/workspaces/WorkspaceButton.js.map +1 -1
  771. package/react/components/userPreferences/components/workspaces/WorkspaceItem.d.ts +1 -1
  772. package/react/components/userPreferences/components/workspaces/WorkspaceItem.js +20 -10
  773. package/react/components/userPreferences/components/workspaces/WorkspaceItem.js.map +1 -1
  774. package/react/components/userPreferences/stores/UserPreferencesStore.d.ts +18 -1
  775. package/react/components/userPreferences/stores/UserPreferencesStore.js +35 -6
  776. package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
  777. package/react/components/userPreferences/tests/LeftNav.spec.js +15 -1
  778. package/react/components/userPreferences/tests/LeftNav.spec.js.map +1 -1
  779. package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js +1 -0
  780. package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js.map +1 -1
  781. package/react/components/userPreferences/tests/UserPreferencesBase.spec.d.ts +1 -0
  782. package/react/components/userPreferences/tests/UserPreferencesBase.spec.js +42 -0
  783. package/react/components/userPreferences/tests/UserPreferencesBase.spec.js.map +1 -0
  784. package/react/components/userPreferences/tests/Workspace.spec.d.ts +1 -0
  785. package/react/components/userPreferences/tests/Workspace.spec.js +139 -0
  786. package/react/components/userPreferences/tests/Workspace.spec.js.map +1 -0
  787. package/react/components/windowTitleBar/WindowTitleBarShell.d.ts +130 -2
  788. package/react/components/windowTitleBar/WindowTitleBarShell.js +386 -27
  789. package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
  790. package/react/components/windowTitleBar/components/center/Tab.d.ts +3 -0
  791. package/react/components/windowTitleBar/components/center/Tab.js +3 -0
  792. package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
  793. package/react/components/windowTitleBar/components/center/TabList.d.ts +90 -0
  794. package/react/components/windowTitleBar/components/center/TabList.js +170 -4
  795. package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
  796. package/react/components/windowTitleBar/components/left/LinkerButton.d.ts +9 -1
  797. package/react/components/windowTitleBar/components/left/LinkerButton.js +27 -5
  798. package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
  799. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.d.ts +47 -0
  800. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js +76 -1
  801. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +1 -1
  802. package/react/components/windowTitleBar/components/left/LinkerGroups.d.ts +4 -0
  803. package/react/components/windowTitleBar/components/left/LinkerGroups.js +5 -0
  804. package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
  805. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.d.ts +18 -0
  806. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js +49 -0
  807. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
  808. package/react/components/windowTitleBar/components/left/ShareButton.d.ts +17 -0
  809. package/react/components/windowTitleBar/components/left/ShareButton.js +39 -0
  810. package/react/components/windowTitleBar/components/left/ShareButton.js.map +1 -1
  811. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js +4 -0
  812. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +1 -1
  813. package/react/components/windowTitleBar/components/right/CloseButton.d.ts +27 -0
  814. package/react/components/windowTitleBar/components/right/CloseButton.js +27 -0
  815. package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
  816. package/react/components/windowTitleBar/components/right/GroupingButton.d.ts +37 -0
  817. package/react/components/windowTitleBar/components/right/GroupingButton.js +40 -0
  818. package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
  819. package/react/components/windowTitleBar/components/right/MaximizeButton.d.ts +46 -0
  820. package/react/components/windowTitleBar/components/right/MaximizeButton.js +54 -0
  821. package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
  822. package/react/components/windowTitleBar/components/right/MinimizeButton.d.ts +26 -0
  823. package/react/components/windowTitleBar/components/right/MinimizeButton.js +26 -0
  824. package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
  825. package/react/components/windowTitleBar/components/windowTitle.d.ts +40 -0
  826. package/react/components/windowTitleBar/components/windowTitle.js +245 -48
  827. package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
  828. package/react/components/windowTitleBar/stores/windowTitleBarStore.d.ts +5 -0
  829. package/react/components/windowTitleBar/stores/windowTitleBarStore.js +81 -6
  830. package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
  831. package/react/components/yesNoDialog/YesNoDialog.css +1 -1
  832. package/react/components/yesNoDialog/YesNoDialog.d.ts +3 -0
  833. package/react/components/yesNoDialog/YesNoDialog.js +64 -1
  834. package/react/components/yesNoDialog/YesNoDialog.js.map +1 -1
  835. package/react/components/yesNoDialog/YesNoDialog.spec.js +4 -0
  836. package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
  837. package/react/components/yesNoDialog/YesNoDialog.stories.js +2 -2
  838. package/react/components/yesNoDialog/YesNoDialog.stories.js.map +1 -1
  839. package/react/components/yesNoDialog/timer.js +2 -0
  840. package/react/components/yesNoDialog/timer.js.map +1 -1
  841. package/react/enzymeSetup.js +10 -0
  842. package/react/enzymeSetup.js.map +1 -1
  843. package/react/hooks/useDashbar.js +10 -0
  844. package/react/hooks/useDashbar.js.map +1 -1
  845. package/react/hooks/useDeepEffect.d.ts +4 -0
  846. package/react/hooks/useDeepEffect.js +21 -0
  847. package/react/hooks/useDeepEffect.js.map +1 -1
  848. package/react/hooks/useFavorites.d.ts +15 -0
  849. package/react/hooks/useFavorites.js +3 -0
  850. package/react/hooks/useFavorites.js.map +1 -1
  851. package/react/hooks/useFavoritesShell.d.ts +4 -0
  852. package/react/hooks/useFavoritesShell.js +23 -0
  853. package/react/hooks/useFavoritesShell.js.map +1 -1
  854. package/react/hooks/useHotkey.d.ts +6 -0
  855. package/react/hooks/useHotkey.js +9 -0
  856. package/react/hooks/useHotkey.js.map +1 -1
  857. package/react/hooks/useLinker.js +14 -0
  858. package/react/hooks/useLinker.js.map +1 -1
  859. package/react/hooks/useMenu.d.ts +29 -0
  860. package/react/hooks/useMenu.js +12 -1
  861. package/react/hooks/useMenu.js.map +1 -1
  862. package/react/hooks/useNotifications.d.ts +44 -0
  863. package/react/hooks/useNotifications.js +104 -12
  864. package/react/hooks/useNotifications.js.map +1 -1
  865. package/react/hooks/useOutsideClickDetector.d.ts +3 -0
  866. package/react/hooks/useOutsideClickDetector.js +3 -0
  867. package/react/hooks/useOutsideClickDetector.js.map +1 -1
  868. package/react/hooks/usePubSub.d.ts +17 -0
  869. package/react/hooks/usePubSub.js +18 -0
  870. package/react/hooks/usePubSub.js.map +1 -1
  871. package/react/hooks/useSearch.d.ts +5 -0
  872. package/react/hooks/useSearch.js +30 -0
  873. package/react/hooks/useSearch.js.map +1 -1
  874. package/react/hooks/useToolbar.d.ts +1 -1
  875. package/react/hooks/useToolbar.js +54 -2
  876. package/react/hooks/useToolbar.js.map +1 -1
  877. package/react/reducers/favoriteReducer.d.ts +3 -0
  878. package/react/reducers/linkerReducer.d.ts +3 -0
  879. package/react/reducers/linkerReducer.js +4 -0
  880. package/react/reducers/linkerReducer.js.map +1 -1
  881. package/react/reducers/menuReducer.d.ts +28 -0
  882. package/react/reducers/menuReducer.js +34 -0
  883. package/react/reducers/menuReducer.js.map +1 -1
  884. package/react/reducers/rootReducer.d.ts +2 -2
  885. package/react/reducers/rootReducer.js +3 -0
  886. package/react/reducers/rootReducer.js.map +1 -1
  887. package/react/reducers/searchReducer.d.ts +7 -0
  888. package/react/reducers/searchReducer.js +6 -0
  889. package/react/reducers/searchReducer.js.map +1 -1
  890. package/react/reducers/workspaceReducer.js +1 -0
  891. package/react/reducers/workspaceReducer.js.map +1 -1
  892. package/react/store.d.ts +8 -4
  893. package/react/store.js +11 -0
  894. package/react/store.js.map +1 -1
  895. package/react/tsconfig.tsbuildinfo +1 -0
  896. package/react/types/fdc3.d.ts +2 -0
  897. package/react/types/linkerTypes.d.ts +13 -0
  898. package/react/types/linkerTypes.js +1 -0
  899. package/react/types/linkerTypes.js.map +1 -1
  900. package/react/types/smartDesktopDesignerTypes.d.ts +8 -0
  901. package/react/types/smartDesktopDesignerTypes.js.map +1 -1
  902. package/react/types/workspaceTypes.d.ts +8 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Applications.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/Applications.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { DefaultApplications, EmptyApplications } from \"../stories/Applications.stories\";\nimport { getApplicationsArgs } from \"../fixtures/apps\";\nimport { waitTick } from \"../sdd_helpers\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\nexport const ADD_NEW_APP_BUTTON = \".icon-before-add button\",\n\tACTIVE_TAB_APP_LIST_TABLE_ROW = \".app-list-row\",\n\tAPP_LIST_EMPTY_MESSAGE = \".app-list-empty\",\n\tPAGE_HEADER = \".view-title .leftSide\",\n\tPAGE_HEADER_BUTTON = \".view-title .leftSide button\",\n\tSETUP_WIZARD_BUTTON = \".tile-type-buttons .icon-wizard button\",\n\tSETUP_MANUAL_BUTTON = \".tile-type-buttons .icon-manual button\",\n\tAPP_ACCESS_RULE = \".app-edit-access-item\",\n\tAPP_ACCESS_BLOCKED = \".app-edit-access-blocked\",\n\tQUICK_ADD_APP = \".quick-add-app\",\n\tQUICK_ADD_APP_URL = \".quick-add-app #app-url\",\n\tQUICK_ADD_APP_BUTTON = \".save-button-container button\";\n\ndescribe(\"<Applications/>\", () => {\n\tit(\"should pass accessibility scans\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should pass accessibility scans (empty)\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should contain add button app list when not empty\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).length).to.equal(0);\n\t});\n\tit(\"should contain add button and empty message when empty\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(0);\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).first().text()).to.contain(\"nothing here\");\n\t});\n\tit(\"should be able to edit a web app\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"App list contains items\").to.be.greaterThan(0);\n\n\t\tconst app = wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first();\n\n\t\tconst appName = app.find(\".app-name\").text();\n\n\t\tconst newName = `${appName} modified`;\n\t\tapp.find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\tconst input = wrapper.find(\"input#app-name\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"change\", { target: { value: newName } });\n\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(\n\t\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).someWhere((node) => node.find(\".app-name\").text() === newName),\n\t\t\t\"App list contains newly renamed name\"\n\t\t).to.be.true;\n\t});\n\tit(\"should be able to grant selectConnect access between two apps\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"3 apps are listed in the table\").to.be.equal(3);\n\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first().find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\twrapper.find(\"input[name='interop-trust'][value='false']\").simulate(\"change\");\n\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"SelectConnect access rules visible initially\").to.equal(2);\n\n\t\texpect(wrapper.find(APP_ACCESS_BLOCKED).length, \"Inbound SelectConnect blocked\").to.equal(2);\n\n\t\twrapper.find(\".finsembleToggle input\").first().simulate(\"change\");\n\n\t\texpect(wrapper.find(\".finsembleToggle-on\").length, \"should be toggled on\").to.equal(2);\n\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(1).find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"input[name='interop-trust'][value='false']\").simulate(\"change\");\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"SelectConnect access rules visible\").to.equal(2);\n\t});\n});\n\ndescribe(\"<Applications/> - Quick Add\", () => {\n\tit(\"should be able to quick add a web app\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Everything starts the way I expect\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Start out with 3 items in the list\").to.equal(3);\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add doesn't display\").to.be.true;\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// expect quick add to display\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add displays\").to.be.false;\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.facebook.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Add button\n\t\twrapper.find(QUICK_ADD_APP_BUTTON).simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// expect updates\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add doesn't display\").to.be.true;\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"App list shows 4 items\").to.equal(4);\n\t\texpect(\n\t\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).filterWhere((node: any) => node.text().includes(\"Facebook\")).length,\n\t\t\t\"App list includes 'Facebook'\"\n\t\t);\n\t});\n\n\tit(\"if you add a URL, the App name should pre-fill with a generated name\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.google.com\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Pre-filled generated name\").to.equal(\"Google\");\n\t\texpect(wrapper.find(QUICK_ADD_APP_BUTTON).prop(\"disabled\"), \"Save button should be enabled\").to.be.false;\n\t});\n\n\tit(\"if you add a URL without an auto-name, the App name should be empty\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Pre-filled generated name\").to.equal(\"\");\n\t\texpect(wrapper.find(QUICK_ADD_APP_BUTTON).prop(\"disabled\"), \"Save button should be disabled\").to.be.true;\n\t});\n\n\tit(\"if you add a URL, the path field should be disabled\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\".file-input-container button\").prop(\"disabled\"), \"File input disabled\").to.be.true;\n\t});\n\n\tit(\"if you add a URL and then save it, the URL should be cleared on re-open\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Add button\n\t\twrapper.find(QUICK_ADD_APP_BUTTON).simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(QUICK_ADD_APP_URL).prop(\"value\")).to.be.empty;\n\t});\n\tit(\"if you add a URL and then close quick add, the URL should be cleared on re-open\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Close button\n\t\twrapper.find(\"button[title='Close']\").simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(QUICK_ADD_APP_URL).prop(\"value\")).to.be.empty;\n\t});\n});\n"]}
1
+ {"version":3,"file":"Applications.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/Applications.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { DefaultApplications, EmptyApplications } from \"../stories/Applications.stories\";\nimport { getApplicationsArgs } from \"../fixtures/apps\";\nimport { waitTick } from \"../sdd_helpers\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\nexport const ADD_NEW_APP_BUTTON = \".visible .icon-before-add button\",\n\tACTIVE_TAB_APP_LIST_TABLE_ROW = \".visible .app-list-row\",\n\tAPP_LIST_EMPTY_MESSAGE = \".visible .app-list-empty\",\n\tPAGE_HEADER = \".view-title .leftSide\",\n\tPAGE_HEADER_BUTTON = \".view-title .leftSide button\",\n\tSETUP_WIZARD_BUTTON = \".tile-type-buttons .icon-wizard button\",\n\tSETUP_MANUAL_BUTTON = \".tile-type-buttons .icon-manual button\",\n\tAPP_ACCESS_RULE = \".app-edit-access-item\",\n\tAPP_ACCESS_BLOCKED = \".app-edit-access-blocked\",\n\tQUICK_ADD_APP = \".visible .quick-add-app\",\n\tQUICK_ADD_APP_URL = \".visible .quick-add-app [id^='app-url']\",\n\tQUICK_ADD_APP_BUTTON = \".visible .save-button-container button\";\n\ndescribe(\"<Applications/>\", () => {\n\tit(\"should pass accessibility scans\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t}).timeout(10e3);\n\n\tit(\"should pass accessibility scans (empty)\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should contain add button app list when not empty\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).length).to.equal(0);\n\t});\n\tit(\"should contain add button and empty message when empty\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(0);\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).first().text()).to.contain(\"nothing here\");\n\t});\n\tit(\"should be able to edit a web app\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"App list contains items\").to.be.greaterThan(0);\n\n\t\tconst app = wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first();\n\n\t\tconst appName = app.find(\".app-name\").text();\n\n\t\tconst newName = `${appName} modified`;\n\t\tapp.find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\tconst input = wrapper.find(\"input#app-name\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"change\", { target: { value: newName } });\n\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(\n\t\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).someWhere((node) => node.find(\".app-name\").text() === newName),\n\t\t\t\"App list contains newly renamed name\"\n\t\t).to.be.true;\n\t});\n\tit(\"should be able to grant selectConnect access between two apps\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"3 apps are listed in the table\").to.be.equal(3);\n\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first().find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\twrapper.find(\"input[name='interop-trust'][value='false']\").simulate(\"change\");\n\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"SelectConnect access rules visible initially\").to.equal(3);\n\n\t\texpect(wrapper.find(APP_ACCESS_BLOCKED).length, \"Inbound SelectConnect blocked\").to.equal(3);\n\n\t\twrapper.find(\".finsembleToggle input\").first().simulate(\"change\");\n\n\t\texpect(wrapper.find(\".finsembleToggle-on\").length, \"should be toggled on\").to.equal(2);\n\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(1).find(\".icon-edit button\").at(0).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"input[name='interop-trust'][value='false']\").simulate(\"change\");\n\t\texpect(wrapper.find(APP_ACCESS_RULE).length, \"SelectConnect access rules visible\").to.equal(3);\n\t});\n});\n\ndescribe(\"<Applications/> - Quick Add\", () => {\n\tit(\"should be able to quick add a web app\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Everything starts the way I expect\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Start out with 3 items in the list\").to.equal(3);\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add doesn't display\").to.be.true;\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// expect quick add to display\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add displays\").to.be.false;\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.facebook.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Add button\n\t\twrapper.find(QUICK_ADD_APP_BUTTON).simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// expect updates\n\t\texpect(wrapper.find(QUICK_ADD_APP).is(\".collapsed\"), \"Quick Add doesn't display\").to.be.true;\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"App list shows 4 items\").to.equal(4);\n\t\texpect(\n\t\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).filterWhere((node: any) => node.text().includes(\"Facebook\")).length,\n\t\t\t\"App list includes 'Facebook'\"\n\t\t);\n\t});\n\n\tit(\"if you add a URL and then save it, the URL should be cleared on re-open\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Add button\n\t\twrapper.find(QUICK_ADD_APP_BUTTON).simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(QUICK_ADD_APP_URL).prop(\"value\")).to.be.empty;\n\t});\n\tit(\"if you add a URL and then close quick add, the URL should be cleared on re-open\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// in the URL input, add \"http://www.facebook.com\"\n\t\twrapper.find(QUICK_ADD_APP_URL).simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cnn.com\",\n\t\t\t},\n\t\t});\n\n\t\t// click the Close button\n\t\twrapper.find(\".visible button[title='Close']\").simulate(\"click\");\n\n\t\t// wait tick\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add App\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(QUICK_ADD_APP_URL).prop(\"value\")).to.be.empty;\n\t});\n});\n"]}
@@ -64,19 +64,24 @@ describe("<Authentication/>", () => {
64
64
  });
65
65
  await waitTick();
66
66
  wrapper.update();
67
+ // Assign an arbitrary value to "Client ID"
67
68
  wrapper.find(".auth-setup-clientid input").simulate("change", {
68
69
  target: {
69
70
  value: arbitrary_value,
70
71
  },
71
72
  });
72
73
  await waitTick();
73
- wrapper.find(".auth-setup-toggle-mode button").simulate("click");
74
+ // Toggle the Advanced Options
75
+ wrapper.find("#accordion-control-authentication-advanced").simulate("click");
76
+ // Confirm that "Client ID" didn't change
74
77
  expect(wrapper.find(".auth-setup-clientid input").prop("value"), `Confirm that "Client ID" didn't change`).to.equal(arbitrary_value);
78
+ // Test accessibility of expanded options while we're at it
75
79
  expect(await accessibilityAssessor(wrapper), "Accessibility scan").to.be.true;
76
80
  });
77
81
  it("should allow saving valid endpoint URL", async () => {
78
82
  const arbitrary_value = "http://cosaic.io";
79
83
  const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
84
+ // Assign an arbitrary value to "Client ID"
80
85
  wrapper.find(".auth-setup-endpoint-url input").simulate("change", {
81
86
  target: {
82
87
  value: arbitrary_value,
@@ -88,6 +93,7 @@ describe("<Authentication/>", () => {
88
93
  it("should not allow saving empty endpoint URL", async () => {
89
94
  const arbitrary_value = "";
90
95
  const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
96
+ // Assign an arbitrary value to "Client ID"
91
97
  wrapper.find(".auth-setup-endpoint-url input").simulate("change", {
92
98
  target: {
93
99
  value: arbitrary_value,
@@ -99,6 +105,7 @@ describe("<Authentication/>", () => {
99
105
  it("should not allow saving invalid endpoint URL", async () => {
100
106
  const arbitrary_value = "";
101
107
  const wrapper = mount(React.createElement(Authentication, Object.assign({}, Object.assign({}, Authentication.args))));
108
+ // Assign an arbitrary value to "Client ID"
102
109
  wrapper.find(".auth-setup-endpoint-url input").simulate("change", {
103
110
  target: {
104
111
  value: arbitrary_value,
@@ -1 +1 @@
1
- {"version":3,"file":"Authentication.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/Authentication.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { Page as Authentication } from \"../stories/Authentication.stories\";\nimport { AuthenticationProps } from \"../Authentication\";\nimport { waitTick } from \"../sdd_helpers\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\ndescribe(\"<Authentication/>\", () => {\n\tit(\"should pass accessibility scans (Page)\", async () => {\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\tit(\"should allow adding auth settings\", async () => {\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\twrapper\n\t\t\t.find(\".auth-setup-select-provider\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Custom\",\n\t\t\t\t},\n\t\t\t});\n\n\t\tawait waitTick();\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".auth-setup-provider\").length).to.equal(1);\n\n\t\tconst inputs = [\n\t\t\t{\n\t\t\t\tselector: \".auth-setup-provider .auth-setup-clientid input\",\n\t\t\t\tvalue: \"clientidTest\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tselector: \".auth-setup-provider .auth-setup-endpoint-url input\",\n\t\t\t\tvalue: \"http://test.com\",\n\t\t\t},\n\t\t];\n\n\t\tinputs.forEach((input) => {\n\t\t\texpect(wrapper.find(input.selector).length, `Find ${input.selector}`).to.be.greaterThan(0);\n\n\t\t\twrapper\n\t\t\t\t.find(input.selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: input.value,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t});\n\n\t\tawait waitTick();\n\n\t\twrapper.update();\n\n\t\tinputs.forEach((input) => {\n\t\t\texpect(wrapper.find(input.selector).at(0).prop(\"value\")).to.equal(input.value);\n\t\t\texpect(wrapper.find(input.selector).at(0).prop(\"aria-invalid\")).to.be.false;\n\t\t});\n\t});\n\n\tit(\"toggling advanced options should not clear inputs\", async () => {\n\t\tconst arbitrary_value = \"my test\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\twrapper\n\t\t\t.find(\".auth-setup-select-provider\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Custom\",\n\t\t\t\t},\n\t\t\t});\n\n\t\tawait waitTick();\n\n\t\twrapper.update();\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-clientid input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\t\tawait waitTick();\n\n\t\t// Toggle the Advanced Options\n\t\twrapper.find(\".auth-setup-toggle-mode button\").simulate(\"click\");\n\n\t\t// Confirm that \"Client ID\" didn't change\n\t\texpect(wrapper.find(\".auth-setup-clientid input\").prop(\"value\"), `Confirm that \"Client ID\" didn't change`).to.equal(\n\t\t\tarbitrary_value\n\t\t);\n\n\t\t// Test accessibility of expanded options while we're at it\n\t\texpect(await accessibilityAssessor(wrapper), \"Accessibility scan\").to.be.true;\n\t});\n\n\tit(\"should allow saving valid endpoint URL\", async () => {\n\t\tconst arbitrary_value = \"http://cosaic.io\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\n\t\tawait waitTick();\n\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.false;\n\t});\n\n\tit(\"should not allow saving empty endpoint URL\", async () => {\n\t\tconst arbitrary_value = \"\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\n\t\tawait waitTick();\n\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.true;\n\t});\n\n\tit(\"should not allow saving invalid endpoint URL\", async () => {\n\t\tconst arbitrary_value = \"\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\n\t\tawait waitTick();\n\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.true;\n\t});\n});\n"]}
1
+ {"version":3,"file":"Authentication.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/Authentication.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { Page as Authentication } from \"../stories/Authentication.stories\";\nimport { AuthenticationProps } from \"../Authentication\";\nimport { waitTick } from \"../sdd_helpers\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\ndescribe(\"<Authentication/>\", () => {\n\tit(\"should pass accessibility scans (Page)\", async () => {\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\tit(\"should allow adding auth settings\", async () => {\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\twrapper\n\t\t\t.find(\".auth-setup-select-provider\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Custom\",\n\t\t\t\t},\n\t\t\t});\n\n\t\tawait waitTick();\n\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".auth-setup-provider\").length).to.equal(1);\n\n\t\tconst inputs = [\n\t\t\t{\n\t\t\t\tselector: \".auth-setup-provider .auth-setup-clientid input\",\n\t\t\t\tvalue: \"clientidTest\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tselector: \".auth-setup-provider .auth-setup-endpoint-url input\",\n\t\t\t\tvalue: \"http://test.com\",\n\t\t\t},\n\t\t];\n\n\t\tinputs.forEach((input) => {\n\t\t\texpect(wrapper.find(input.selector).length, `Find ${input.selector}`).to.be.greaterThan(0);\n\n\t\t\twrapper\n\t\t\t\t.find(input.selector)\n\t\t\t\t.at(0)\n\t\t\t\t.simulate(\"change\", {\n\t\t\t\t\ttarget: {\n\t\t\t\t\t\tvalue: input.value,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t});\n\n\t\tawait waitTick();\n\n\t\twrapper.update();\n\n\t\tinputs.forEach((input) => {\n\t\t\texpect(wrapper.find(input.selector).at(0).prop(\"value\")).to.equal(input.value);\n\t\t\texpect(wrapper.find(input.selector).at(0).prop(\"aria-invalid\")).to.be.false;\n\t\t});\n\t});\n\n\tit(\"toggling advanced options should not clear inputs\", async () => {\n\t\tconst arbitrary_value = \"my test\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\twrapper\n\t\t\t.find(\".auth-setup-select-provider\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Custom\",\n\t\t\t\t},\n\t\t\t});\n\n\t\tawait waitTick();\n\n\t\twrapper.update();\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-clientid input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\t\tawait waitTick();\n\n\t\t// Toggle the Advanced Options\n\t\twrapper.find(\"#accordion-control-authentication-advanced\").simulate(\"click\");\n\n\t\t// Confirm that \"Client ID\" didn't change\n\t\texpect(wrapper.find(\".auth-setup-clientid input\").prop(\"value\"), `Confirm that \"Client ID\" didn't change`).to.equal(\n\t\t\tarbitrary_value\n\t\t);\n\n\t\t// Test accessibility of expanded options while we're at it\n\t\texpect(await accessibilityAssessor(wrapper), \"Accessibility scan\").to.be.true;\n\t});\n\n\tit(\"should allow saving valid endpoint URL\", async () => {\n\t\tconst arbitrary_value = \"http://cosaic.io\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\n\t\tawait waitTick();\n\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.false;\n\t});\n\n\tit(\"should not allow saving empty endpoint URL\", async () => {\n\t\tconst arbitrary_value = \"\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\n\t\tawait waitTick();\n\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.true;\n\t});\n\n\tit(\"should not allow saving invalid endpoint URL\", async () => {\n\t\tconst arbitrary_value = \"\";\n\n\t\tconst wrapper = mount(\n\t\t\t<Authentication\n\t\t\t\t{...{\n\t\t\t\t\t...(Authentication.args as AuthenticationProps),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\t// Assign an arbitrary value to \"Client ID\"\n\t\twrapper.find(\".auth-setup-endpoint-url input\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: arbitrary_value,\n\t\t\t},\n\t\t});\n\n\t\tawait waitTick();\n\n\t\texpect(wrapper.find(\".auth-setup-actions button\").at(0).prop(\"disabled\")).to.be.true;\n\t});\n});\n"]}
@@ -3,7 +3,9 @@ import { mount } from "enzyme";
3
3
  import { describe, it } from "mocha";
4
4
  import { expect } from "chai";
5
5
  import { BasicStory } from "../stories/ContentHeader.stories";
6
+ // For running accessibility scans
6
7
  import { accessibilityAssessor } from "./a11y_helper";
8
+ // Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)
7
9
  import addons, { mockChannel } from "@storybook/addons";
8
10
  addons.setChannel(mockChannel());
9
11
  describe("<Header/>", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"ContentHeader.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/ContentHeader.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,EAAa,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAG9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAKtD,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACxD,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAEjC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAM,UAAU,CAAC,IAAoB,EAAI,CAAC,CAAC;QAE5E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC5C,MAAM,KAAK,mCAAS,UAAU,CAAC,IAAoB,KAAE,IAAI,EAAE,aAAa,GAAE,CAAC;QAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAK,KAAK,EAAI,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAAE,EAAE,yBAAyB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5F,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACtC,MAAM,KAAK,mCAAS,UAAU,CAAC,IAAoB,KAAE,IAAI,EAAE,SAAS,GAAE,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAK,KAAK,EAAI,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAM,UAAU,CAAC,IAAoB,EAAI,CAAC,CAAC;QAE5E,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it, afterEach } from \"mocha\";\nimport { expect } from \"chai\";\nimport { HeaderProps } from \"../ContentHeader\";\nimport { BasicStory } from \"../stories/ContentHeader.stories\";\n\n// For running accessibility scans\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\n// For testing user interactions (like click events):\nimport sinon from \"sinon\";\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\nimport addons, { mockChannel } from \"@storybook/addons\";\naddons.setChannel(mockChannel());\n\ndescribe(\"<Header/>\", () => {\n\tit(\"should display text\", () => {\n\t\tconst wrapper = mount(<BasicStory {...(BasicStory.args as HeaderProps)} />);\n\n\t\texpect(wrapper.find(\".project-title-icon\").text(), \"The icon is set\").to.equal(\"P\");\n\t\texpect(wrapper.find(\".project-name\").text(), \"The text matches\").to.equal(\"Project Title\");\n\t});\n\n\tit(\"should have a capital Letter Icon\", () => {\n\t\tconst props = { ...(BasicStory.args as HeaderProps), name: \"hello Worms\" };\n\t\tconst wrapper = mount(<BasicStory {...props} />);\n\n\t\texpect(wrapper.find(\".project-title-icon\").text(), \"The icon is capitalised\").to.equal(\"H\");\n\t\texpect(wrapper.find(\".project-name\").text(), \"The text matches\").to.equal(\"hello Worms\");\n\t});\n\n\tit(\"should display default text\", () => {\n\t\tconst props = { ...(BasicStory.args as HeaderProps), name: \"default\" };\n\t\tconst wrapper = mount(<BasicStory {...props} />);\n\n\t\texpect(wrapper.find(\".project-name\").text(), \"The text matches\").to.equal(\"Untitled project\");\n\t});\n\n\tit(\"should pass accessibility scans\", async () => {\n\t\tconst wrapper = mount(<BasicStory {...(BasicStory.args as HeaderProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n});\n"]}
1
+ {"version":3,"file":"ContentHeader.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/ContentHeader.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,EAAa,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,kCAAkC;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAItD,2GAA2G;AAC3G,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACxD,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAEjC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAM,UAAU,CAAC,IAAoB,EAAI,CAAC,CAAC;QAE5E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC5C,MAAM,KAAK,mCAAS,UAAU,CAAC,IAAoB,KAAE,IAAI,EAAE,aAAa,GAAE,CAAC;QAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAK,KAAK,EAAI,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAAE,EAAE,yBAAyB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5F,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACtC,MAAM,KAAK,mCAAS,UAAU,CAAC,IAAoB,KAAE,IAAI,EAAE,SAAS,GAAE,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAK,KAAK,EAAI,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,oBAAM,UAAU,CAAC,IAAoB,EAAI,CAAC,CAAC;QAE5E,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it, afterEach } from \"mocha\";\nimport { expect } from \"chai\";\nimport { HeaderProps } from \"../ContentHeader\";\nimport { BasicStory } from \"../stories/ContentHeader.stories\";\n\n// For running accessibility scans\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\n// For testing user interactions (like click events):\nimport sinon from \"sinon\";\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\nimport addons, { mockChannel } from \"@storybook/addons\";\naddons.setChannel(mockChannel());\n\ndescribe(\"<Header/>\", () => {\n\tit(\"should display text\", () => {\n\t\tconst wrapper = mount(<BasicStory {...(BasicStory.args as HeaderProps)} />);\n\n\t\texpect(wrapper.find(\".project-title-icon\").text(), \"The icon is set\").to.equal(\"P\");\n\t\texpect(wrapper.find(\".project-name\").text(), \"The text matches\").to.equal(\"Project Title\");\n\t});\n\n\tit(\"should have a capital Letter Icon\", () => {\n\t\tconst props = { ...(BasicStory.args as HeaderProps), name: \"hello Worms\" };\n\t\tconst wrapper = mount(<BasicStory {...props} />);\n\n\t\texpect(wrapper.find(\".project-title-icon\").text(), \"The icon is capitalised\").to.equal(\"H\");\n\t\texpect(wrapper.find(\".project-name\").text(), \"The text matches\").to.equal(\"hello Worms\");\n\t});\n\n\tit(\"should display default text\", () => {\n\t\tconst props = { ...(BasicStory.args as HeaderProps), name: \"default\" };\n\t\tconst wrapper = mount(<BasicStory {...props} />);\n\n\t\texpect(wrapper.find(\".project-name\").text(), \"The text matches\").to.equal(\"Untitled project\");\n\t});\n\n\tit(\"should pass accessibility scans\", async () => {\n\t\tconst wrapper = mount(<BasicStory {...(BasicStory.args as HeaderProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n});\n"]}
@@ -1,17 +1,13 @@
1
1
  import * as React from "react";
2
2
  import { mount } from "enzyme";
3
- import { describe, it, afterEach } from "mocha";
3
+ import { describe, it } from "mocha";
4
4
  import { expect } from "chai";
5
5
  import { Default } from "../stories/OptionalSettingsView.stories";
6
- import sinon from "sinon";
7
- import addons, { mockChannel } from "@storybook/addons";
8
- addons.setChannel(mockChannel());
6
+ import { waitTick } from "../sdd_helpers";
9
7
  describe("<EditPreload/>", () => {
10
- afterEach(() => {
11
- sinon.restore();
12
- });
13
8
  it("should have initial state", () => {
14
9
  const wrapper = mount(React.createElement(Default, Object.assign({}, Default.args)));
10
+ // Click the "Add" button
15
11
  wrapper.find(".button-container-primary button").simulate("click");
16
12
  expect(wrapper.find("h2").exists(), "The heading exists").to.be.true;
17
13
  expect(wrapper.find("h2").text(), "The heading text").to.equal("Untitled preload");
@@ -24,6 +20,7 @@ describe("<EditPreload/>", () => {
24
20
  });
25
21
  it('should hide and show app list based on "Load for" value ', async () => {
26
22
  const wrapper = mount(React.createElement(Default, Object.assign({}, Default.args)));
23
+ // Click the "Add" button
27
24
  wrapper.find(".button-container-primary button").simulate("click");
28
25
  expect(wrapper.find(".emperorSelectContainer").exists(), "App select should be shown").to.be.true;
29
26
  wrapper
@@ -38,6 +35,7 @@ describe("<EditPreload/>", () => {
38
35
  });
39
36
  it("should change the alias", async () => {
40
37
  const wrapper = mount(React.createElement(Default, Object.assign({}, Default.args)));
38
+ // Click the "Add" button
41
39
  wrapper.find(".button-container-primary button").simulate("click");
42
40
  expect(wrapper.find("h2").text(), "The heading text").to.equal("Untitled preload");
43
41
  expect(wrapper.find(".preload-edit-actions button").last().prop("disabled"), "Save button is disabled").to.be.true;
@@ -55,5 +53,63 @@ describe("<EditPreload/>", () => {
55
53
  expect(wrapper.find(".preload-edit-actions button").last().prop("disabled"), "Save button no longer disabled").to.be
56
54
  .false;
57
55
  });
56
+ it("check that radio buttons are unique", async () => {
57
+ const wrapper = mount(React.createElement(Default, Object.assign({}, Default.args)));
58
+ // Click the "Add" button
59
+ wrapper.find(".button-container-primary button").simulate("click");
60
+ const name = "preload-usage";
61
+ const numberOfButtons = 3;
62
+ const locator = `input[type='radio'][name='${name}']`;
63
+ for (let i = 0; i < numberOfButtons; i++) {
64
+ wrapper.find(locator).at(i).simulate("change");
65
+ for (let j = 0; j < numberOfButtons; j++) {
66
+ expect(wrapper.find(locator).at(j).prop("checked"), `When radio #${i + 1} is clicked, is radio #${j + 1} checked?`).to.equal(i === j);
67
+ }
68
+ }
69
+ });
70
+ it("should not show any error messages by default (Editing)", async () => {
71
+ const wrapper = mount(React.createElement(Default, Object.assign({}, Default.args)));
72
+ await waitTick();
73
+ wrapper.update();
74
+ wrapper.find(".app-list-row").at(1).simulate("click");
75
+ expect(wrapper.find("[aria-invalid='true']").length, "No invalid fields by default").to.equal(0);
76
+ expect(wrapper.find(".invalid-message").length, "No error messages by default").to.equal(0);
77
+ expect(wrapper.find("button").last().prop("disabled"), "Save button is enabled").to.be.false;
78
+ });
79
+ it("should not show any error messages by default (Adding)", async () => {
80
+ const wrapper = mount(React.createElement(Default, Object.assign({}, Default.args)));
81
+ // Click the "Add" button
82
+ wrapper.find(".button-container-primary button").simulate("click");
83
+ expect(wrapper.find("[aria-invalid='true']").length, "No invalid fields by default").to.equal(0);
84
+ expect(wrapper.find(".invalid-message").length, "No error messages by default").to.equal(0);
85
+ expect(wrapper.find("button").last().prop("disabled"), "Save button is disabled").to.be.true;
86
+ });
87
+ it("Trying to name an app with invalid characters causes error messages (Adding)", async () => {
88
+ const wrapper = mount(React.createElement(Default, Object.assign({}, Default.args)));
89
+ // Click the "Add" button
90
+ wrapper.find(".button-container-primary button").simulate("click");
91
+ wrapper.find("#preload-alias").simulate("change", {
92
+ target: {
93
+ value: "what!?",
94
+ },
95
+ });
96
+ wrapper.find("#preload-url").simulate("change", {
97
+ target: {
98
+ value: "http://www.example.com/preload.js",
99
+ },
100
+ });
101
+ await waitTick();
102
+ expect(wrapper.find("#preload-alias").prop("aria-invalid"), "Name is marked as invalid").to.be.true;
103
+ expect(wrapper.find("#preload-alias-error-message").exists(), "There's an error message after alias").to.be.true;
104
+ expect(wrapper.find("#preload-alias-error-message").text(), "The exact error message after alias").to.equal("Name can only use letters, numbers, and dashes.");
105
+ expect(wrapper.find("button").last().prop("disabled"), "Save button is disabled").to.be.true;
106
+ });
58
107
  });
108
+ /*
109
+ Other tests to write...
110
+
111
+ Adding an app:
112
+ type reused name - see invalid + msg, disabled save button
113
+ invalid url - see invalid + msg, disabled save button
114
+ */
59
115
  //# sourceMappingURL=EditPreload.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditPreload.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/EditPreload.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it, afterEach } from \"mocha\";\nimport { expect } from \"chai\";\nimport { OptionalSettingsViewProps } from \"../OptionalSettingsView\";\nimport { Default } from \"../stories/OptionalSettingsView.stories\";\n\n// For testing user interactions (like click events):\nimport sinon from \"sinon\";\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\nimport addons, { mockChannel } from \"@storybook/addons\";\naddons.setChannel(mockChannel());\n\ndescribe(\"<EditPreload/>\", () => {\n\t// Used to clear after each interactive test using sinon\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\n\tit(\"should have initial state\", () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\texpect(wrapper.find(\"h2\").exists(), \"The heading exists\").to.be.true;\n\t\texpect(wrapper.find(\"h2\").text(), \"The heading text\").to.equal(\"Untitled preload\");\n\t\tconst buttons = wrapper.find(\".preload-edit-actions button\");\n\t\texpect(buttons, \"No remove button\").to.have.lengthOf(2);\n\t\texpect(buttons.last().text(), \"Has save button\").to.equal(\"Save\");\n\t\texpect(buttons.last().prop(\"disabled\"), \"Save button is disabled\").to.be.true;\n\t\texpect(wrapper.find({ value: \"none\" }).prop(\"checked\"), \"Selected apps is selected\").to.be.true;\n\t\texpect(wrapper.find(\".emperorOption input[checked]\"), \"No checked apps\").to.have.lengthOf(0);\n\t});\n\n\tit('should hide and show app list based on \"Load for\" value ', async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\texpect(wrapper.find(\".emperorSelectContainer\").exists(), \"App select should be shown\").to.be.true;\n\n\t\twrapper\n\t\t\t.find(\"input[name='preload-usage']\")\n\t\t\t.first()\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tchecked: true,\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\".emperorSelectContainer\").exists(), \"App select should not be shown\").to.be.false;\n\t});\n\n\tit(\"should change the alias\", async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\texpect(wrapper.find(\"h2\").text(), \"The heading text\").to.equal(\"Untitled preload\");\n\t\texpect(wrapper.find(\".preload-edit-actions button\").last().prop(\"disabled\"), \"Save button is disabled\").to.be.true;\n\t\twrapper.find(\"#preload-alias\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"test-alias\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\"h2\").text(), \"The heading text\").to.equal(\"test-alias\");\n\n\t\twrapper.find(\"#preload-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.example.com/preload.js\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\".preload-edit-actions button\").last().prop(\"disabled\"), \"Save button no longer disabled\").to.be\n\t\t\t.false;\n\t});\n});\n"]}
1
+ {"version":3,"file":"EditPreload.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/EditPreload.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { OptionalSettingsViewProps } from \"../OptionalSettingsView\";\nimport { Default } from \"../stories/OptionalSettingsView.stories\";\nimport { waitTick } from \"../sdd_helpers\";\n\ndescribe(\"<EditPreload/>\", () => {\n\tit(\"should have initial state\", () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\texpect(wrapper.find(\"h2\").exists(), \"The heading exists\").to.be.true;\n\t\texpect(wrapper.find(\"h2\").text(), \"The heading text\").to.equal(\"Untitled preload\");\n\t\tconst buttons = wrapper.find(\".preload-edit-actions button\");\n\t\texpect(buttons, \"No remove button\").to.have.lengthOf(2);\n\t\texpect(buttons.last().text(), \"Has save button\").to.equal(\"Save\");\n\t\texpect(buttons.last().prop(\"disabled\"), \"Save button is disabled\").to.be.true;\n\t\texpect(wrapper.find({ value: \"none\" }).prop(\"checked\"), \"Selected apps is selected\").to.be.true;\n\t\texpect(wrapper.find(\".emperorOption input[checked]\"), \"No checked apps\").to.have.lengthOf(0);\n\t});\n\n\tit('should hide and show app list based on \"Load for\" value ', async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\texpect(wrapper.find(\".emperorSelectContainer\").exists(), \"App select should be shown\").to.be.true;\n\n\t\twrapper\n\t\t\t.find(\"input[name='preload-usage']\")\n\t\t\t.first()\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tchecked: true,\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\".emperorSelectContainer\").exists(), \"App select should not be shown\").to.be.false;\n\t});\n\n\tit(\"should change the alias\", async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\texpect(wrapper.find(\"h2\").text(), \"The heading text\").to.equal(\"Untitled preload\");\n\t\texpect(wrapper.find(\".preload-edit-actions button\").last().prop(\"disabled\"), \"Save button is disabled\").to.be.true;\n\t\twrapper.find(\"#preload-alias\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"test-alias\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\"h2\").text(), \"The heading text\").to.equal(\"test-alias\");\n\n\t\twrapper.find(\"#preload-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.example.com/preload.js\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\".preload-edit-actions button\").last().prop(\"disabled\"), \"Save button no longer disabled\").to.be\n\t\t\t.false;\n\t});\n\n\tit(\"check that radio buttons are unique\", async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\tconst name = \"preload-usage\";\n\t\tconst numberOfButtons = 3;\n\t\tconst locator = `input[type='radio'][name='${name}']`;\n\n\t\tfor (let i = 0; i < numberOfButtons; i++) {\n\t\t\twrapper.find(locator).at(i).simulate(\"change\");\n\n\t\t\tfor (let j = 0; j < numberOfButtons; j++) {\n\t\t\t\texpect(\n\t\t\t\t\twrapper.find(locator).at(j).prop(\"checked\"),\n\t\t\t\t\t`When radio #${i + 1} is clicked, is radio #${j + 1} checked?`\n\t\t\t\t).to.equal(i === j);\n\t\t\t}\n\t\t}\n\t});\n\n\tit(\"should not show any error messages by default (Editing)\", async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".app-list-row\").at(1).simulate(\"click\");\n\n\t\texpect(wrapper.find(\"[aria-invalid='true']\").length, \"No invalid fields by default\").to.equal(0);\n\t\texpect(wrapper.find(\".invalid-message\").length, \"No error messages by default\").to.equal(0);\n\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\"), \"Save button is enabled\").to.be.false;\n\t});\n\tit(\"should not show any error messages by default (Adding)\", async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\texpect(wrapper.find(\"[aria-invalid='true']\").length, \"No invalid fields by default\").to.equal(0);\n\t\texpect(wrapper.find(\".invalid-message\").length, \"No error messages by default\").to.equal(0);\n\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\"), \"Save button is disabled\").to.be.true;\n\t});\n\tit(\"Trying to name an app with invalid characters causes error messages (Adding)\", async () => {\n\t\tconst wrapper = mount(<Default {...(Default.args as OptionalSettingsViewProps)} />);\n\t\t// Click the \"Add\" button\n\t\twrapper.find(\".button-container-primary button\").simulate(\"click\");\n\n\t\twrapper.find(\"#preload-alias\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"what!?\",\n\t\t\t},\n\t\t});\n\t\twrapper.find(\"#preload-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.example.com/preload.js\",\n\t\t\t},\n\t\t});\n\t\tawait waitTick();\n\n\t\texpect(wrapper.find(\"#preload-alias\").prop(\"aria-invalid\"), \"Name is marked as invalid\").to.be.true;\n\n\t\texpect(wrapper.find(\"#preload-alias-error-message\").exists(), \"There's an error message after alias\").to.be.true;\n\t\texpect(wrapper.find(\"#preload-alias-error-message\").text(), \"The exact error message after alias\").to.equal(\n\t\t\t\"Name can only use letters, numbers, and dashes.\"\n\t\t);\n\n\t\texpect(wrapper.find(\"button\").last().prop(\"disabled\"), \"Save button is disabled\").to.be.true;\n\t});\n});\n\n/*\nOther tests to write...\n\nAdding an app: \n\ttype reused name - see invalid + msg, disabled save button\n\tinvalid url - see invalid + msg, disabled save button\n */\n"]}
@@ -6,6 +6,7 @@ import { DefaultExport } from "../stories/Export.stories";
6
6
  import publishTests from "../fixtures/publishProgress";
7
7
  import { waitTick } from "../sdd_helpers";
8
8
  import sinon from "sinon";
9
+ import { accessibilityAssessor } from "./a11y_helper";
9
10
  const validName = "New Name 123";
10
11
  const invalidName = " (Inv@l!d- Project)[] 123";
11
12
  const locators = {
@@ -18,6 +19,11 @@ describe("<Export /> - saving project name", () => {
18
19
  afterEach(() => {
19
20
  sinon.restore();
20
21
  });
22
+ it("should pass accessibility scans", async () => {
23
+ const wrapper = mount(React.createElement(DefaultExport, Object.assign({}, DefaultExport.args)));
24
+ expect(await accessibilityAssessor(wrapper)).to.be.true;
25
+ wrapper.unmount();
26
+ });
21
27
  it("should allow not saving invalid name", () => {
22
28
  const spy = sinon.spy();
23
29
  const updateProjectSettings = () => new Promise((resolve) => {
@@ -142,7 +148,8 @@ describe("<Export/>", () => {
142
148
  const wrapper = mount(React.createElement(DefaultExport, Object.assign({}, Object.assign(Object.assign({}, DefaultExport.args), { progressCheckInterval: 1, getPublishProgress: () => new Promise((resolve) => {
143
149
  const publishState = publishTest === null || publishTest === void 0 ? void 0 : publishTest.states[stateIndex++];
144
150
  if (!publishState || stateIndex >= publishTest.states.length) {
145
- checkExportFinished();
151
+ // eslint-disable-next-line
152
+ checkExportFinished(); // requires definition of `const wrapper`
146
153
  }
147
154
  resolve(publishState);
148
155
  wrapper.update();
@@ -1 +1 @@
1
- {"version":3,"file":"Export.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/Export.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { DefaultExport } from \"../stories/Export.stories\";\nimport { ExportProps } from \"../Export\";\nimport publishTests from \"../fixtures/publishProgress\";\nimport { waitTick } from \"../sdd_helpers\";\nimport sinon from \"sinon\";\n\nconst validName = \"New Name 123\";\nconst invalidName = \" (Inv@l!d- Project)[] 123\";\n\nconst locators = {\n\tprojectName: \"input[type='text']\",\n\tpublishButton: \".package-project button\",\n\texportButton: \".export-method-button button\",\n\tcheckbox: \".complex-menu-checkbox\",\n};\n\ndescribe(\"<Export /> - saving project name\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\tit(\"should allow not saving invalid name\", () => {\n\t\tconst spy = sinon.spy();\n\t\tconst updateProjectSettings = () =>\n\t\t\tnew Promise<{ err: null }>((resolve) => {\n\t\t\t\tspy();\n\t\t\t\tresolve({ err: null });\n\t\t\t});\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} {...{ updateProjectSettings }} />);\n\n\t\tconst input = wrapper.find(\"input\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: \" (Inv@l!d- Project)[] 123\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(spy.calledOnce).to.be.false;\n\t\twrapper.unmount();\n\t});\n\tit(\"should allow saving valid name\", () => {\n\t\tconst spy = sinon.spy();\n\t\tconst updateProjectSettings = () =>\n\t\t\tnew Promise<{ err: null }>((resolve) => {\n\t\t\t\tspy();\n\t\t\t\tresolve({ err: null });\n\t\t\t});\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} {...{ updateProjectSettings }} />);\n\n\t\tconst input = wrapper.find(\"input\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: \"New Name 123\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(spy.calledOnce).to.be.true;\n\t\twrapper.unmount();\n\t});\n});\n\ndescribe(\"<Export /> - enabling publish button\", () => {\n\tit(\"if project name is valid, publish should be enabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\tconst input = wrapper.find(locators.projectName);\n\t\tinput.simulate(\"input\", { target: { value: \"\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: validName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should be enabled\").to.be.false;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is invalid, publish should be disabled\", async () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\tconst input = wrapper.find(locators.projectName);\n\t\tinput.simulate(\"input\", { target: { value: \"\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: invalidName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should still be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n});\n\ndescribe(\"<Export /> - enabling export button\", () => {\n\tit(\"if project name is valid and checkbox is checked, export should be enabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tconst input = wrapper.find(locators.projectName);\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: validName } });\n\t\tinput.simulate(\"blur\");\n\n\t\tconst checkbox = wrapper.find(locators.checkbox);\n\t\tcheckbox.simulate(\"click\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be enabled\").to.be.false;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is invalid and checkbox is checked, export should be disabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\tconst input = wrapper.find(locators.projectName);\n\t\tinput.simulate(\"input\", { target: { value: \"\" } });\n\t\tinput.simulate(\"blur\");\n\t\tconst checkbox = wrapper.find(locators.checkbox);\n\t\tif (checkbox.is(\".checked\")) {\n\t\t\tcheckbox.simulate(\"click\");\n\t\t}\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: invalidName } });\n\t\tinput.simulate(\"blur\");\n\n\t\tcheckbox.simulate(\"click\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is valid and checkbox is not checked, export should be disabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tconst input = wrapper.find(locators.projectName);\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: validName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is invalid and checkbox is not checked, export should be disabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tconst input = wrapper.find(locators.projectName);\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: invalidName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n});\n\ndescribe(\"<Export/>\", () => {\n\tit(\"should show publish url after successful publish action\", (done) => {\n\t\tconst publishTest = publishTests.find((test) => test.name === \"success\")!;\n\n\t\tlet stateIndex = 0;\n\t\tlet lastHTML = \"\";\n\n\t\tconst wrapper = mount(\n\t\t\t<DefaultExport\n\t\t\t\t{...{\n\t\t\t\t\t...(DefaultExport.args as ExportProps),\n\t\t\t\t\tprogressCheckInterval: 1,\n\t\t\t\t\tgetPublishProgress: () =>\n\t\t\t\t\t\tnew Promise((resolve) => {\n\t\t\t\t\t\t\tconst publishState = publishTest?.states[stateIndex++];\n\n\t\t\t\t\t\t\tif (!publishState || stateIndex >= publishTest.states.length) {\n\t\t\t\t\t\t\t\t// eslint-disable-next-line\n\t\t\t\t\t\t\t\tcheckExportFinished(); // requires definition of `const wrapper`\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tresolve(publishState);\n\n\t\t\t\t\t\t\twrapper.update();\n\n\t\t\t\t\t\t\tconst html = wrapper.html();\n\n\t\t\t\t\t\t\texpect(lastHTML).to.not.eql(html);\n\n\t\t\t\t\t\t\tlastHTML = html;\n\t\t\t\t\t\t}),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\tfunction checkExportFinished() {\n\t\t\twrapper.update();\n\n\t\t\texpect(wrapper.find(\".export-publish-url\").length).to.equal(1);\n\t\t\texpect(wrapper.find(\".export-publish-url input\").at(0).prop(\"value\")).to.eql(\"https://cosaic.io/\");\n\n\t\t\twrapper.unmount();\n\n\t\t\tdone();\n\t\t}\n\n\t\tconst button = wrapper.find(\".button-container-secondary button\").at(0);\n\n\t\texpect(button.text(), \"Button with Publish text\").to.contain(\"Publish\");\n\n\t\tbutton.simulate(\"click\");\n\n\t\texpect(wrapper.find(\".export-publish-container h2\").text()).to.contain(\"Publishing\");\n\n\t\tlastHTML = wrapper.html();\n\t});\n\n\tit(\"should show publish url after upload step\", async () => {\n\t\tconst publishTest = publishTests.find((test) => test.name === \"step-4-started\")!;\n\n\t\tconst wrapper = mount(\n\t\t\t<DefaultExport\n\t\t\t\t{...{\n\t\t\t\t\t...(DefaultExport.args as ExportProps),\n\t\t\t\t\tprogressCheckInterval: 1,\n\t\t\t\t\tgetPublishProgress: () =>\n\t\t\t\t\t\tnew Promise((resolve) => {\n\t\t\t\t\t\t\tresolve(publishTest.states[0]);\n\t\t\t\t\t\t}),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\tconst button = wrapper.find(\".button-container-secondary button\").at(0);\n\n\t\texpect(button.text(), \"Button with Publish text\").to.contain(\"Publish\");\n\n\t\tbutton.simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".publish-progress-success\").length).to.equal(3);\n\t\texpect(wrapper.find(\".publish-progress-indicator\").length).to.equal(1);\n\t\texpect(wrapper.find(\".export-publish-url\").length).to.equal(1);\n\t\texpect(wrapper.find(\".export-publish-url input\").at(0).prop(\"value\")).to.eql(\"https://cosaic.io/\");\n\n\t\twrapper.unmount();\n\t});\n});\n"]}
1
+ {"version":3,"file":"Export.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/Export.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { DefaultExport } from \"../stories/Export.stories\";\nimport { ExportProps } from \"../Export\";\nimport publishTests from \"../fixtures/publishProgress\";\nimport { waitTick } from \"../sdd_helpers\";\nimport sinon from \"sinon\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\nconst validName = \"New Name 123\";\nconst invalidName = \" (Inv@l!d- Project)[] 123\";\n\nconst locators = {\n\tprojectName: \"input[type='text']\",\n\tpublishButton: \".package-project button\",\n\texportButton: \".export-method-button button\",\n\tcheckbox: \".complex-menu-checkbox\",\n};\n\ndescribe(\"<Export /> - saving project name\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\tit(\"should pass accessibility scans\", async () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t\twrapper.unmount();\n\t});\n\n\tit(\"should allow not saving invalid name\", () => {\n\t\tconst spy = sinon.spy();\n\t\tconst updateProjectSettings = () =>\n\t\t\tnew Promise<{ err: null }>((resolve) => {\n\t\t\t\tspy();\n\t\t\t\tresolve({ err: null });\n\t\t\t});\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} {...{ updateProjectSettings }} />);\n\n\t\tconst input = wrapper.find(\"input\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: \" (Inv@l!d- Project)[] 123\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(spy.calledOnce).to.be.false;\n\t\twrapper.unmount();\n\t});\n\tit(\"should allow saving valid name\", () => {\n\t\tconst spy = sinon.spy();\n\t\tconst updateProjectSettings = () =>\n\t\t\tnew Promise<{ err: null }>((resolve) => {\n\t\t\t\tspy();\n\t\t\t\tresolve({ err: null });\n\t\t\t});\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} {...{ updateProjectSettings }} />);\n\n\t\tconst input = wrapper.find(\"input\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: \"New Name 123\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(spy.calledOnce).to.be.true;\n\t\twrapper.unmount();\n\t});\n});\n\ndescribe(\"<Export /> - enabling publish button\", () => {\n\tit(\"if project name is valid, publish should be enabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\tconst input = wrapper.find(locators.projectName);\n\t\tinput.simulate(\"input\", { target: { value: \"\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: validName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should be enabled\").to.be.false;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is invalid, publish should be disabled\", async () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\tconst input = wrapper.find(locators.projectName);\n\t\tinput.simulate(\"input\", { target: { value: \"\" } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: invalidName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.publishButton).prop(\"disabled\"), \"Publish button should still be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n});\n\ndescribe(\"<Export /> - enabling export button\", () => {\n\tit(\"if project name is valid and checkbox is checked, export should be enabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tconst input = wrapper.find(locators.projectName);\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: validName } });\n\t\tinput.simulate(\"blur\");\n\n\t\tconst checkbox = wrapper.find(locators.checkbox);\n\t\tcheckbox.simulate(\"click\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be enabled\").to.be.false;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is invalid and checkbox is checked, export should be disabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\tconst input = wrapper.find(locators.projectName);\n\t\tinput.simulate(\"input\", { target: { value: \"\" } });\n\t\tinput.simulate(\"blur\");\n\t\tconst checkbox = wrapper.find(locators.checkbox);\n\t\tif (checkbox.is(\".checked\")) {\n\t\t\tcheckbox.simulate(\"click\");\n\t\t}\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: invalidName } });\n\t\tinput.simulate(\"blur\");\n\n\t\tcheckbox.simulate(\"click\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is valid and checkbox is not checked, export should be disabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tconst input = wrapper.find(locators.projectName);\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: validName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n\tit(\"if project name is invalid and checkbox is not checked, export should be disabled\", () => {\n\t\tconst wrapper = mount(<DefaultExport {...(DefaultExport.args as ExportProps)} />);\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be initially disabled\").to.be\n\t\t\t.true;\n\t\texpect(wrapper.find(locators.checkbox).is(\".checked\"), \"Checkbox should be initially unchecked\").to.be.false;\n\n\t\tconst input = wrapper.find(locators.projectName);\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"input\", { target: { value: invalidName } });\n\t\tinput.simulate(\"blur\");\n\n\t\texpect(wrapper.find(locators.exportButton).prop(\"disabled\"), \"Publish button should be disabled\").to.be.true;\n\n\t\twrapper.unmount();\n\t});\n});\n\ndescribe(\"<Export/>\", () => {\n\tit(\"should show publish url after successful publish action\", (done) => {\n\t\tconst publishTest = publishTests.find((test) => test.name === \"success\")!;\n\n\t\tlet stateIndex = 0;\n\t\tlet lastHTML = \"\";\n\n\t\tconst wrapper = mount(\n\t\t\t<DefaultExport\n\t\t\t\t{...{\n\t\t\t\t\t...(DefaultExport.args as ExportProps),\n\t\t\t\t\tprogressCheckInterval: 1,\n\t\t\t\t\tgetPublishProgress: () =>\n\t\t\t\t\t\tnew Promise((resolve) => {\n\t\t\t\t\t\t\tconst publishState = publishTest?.states[stateIndex++];\n\n\t\t\t\t\t\t\tif (!publishState || stateIndex >= publishTest.states.length) {\n\t\t\t\t\t\t\t\t// eslint-disable-next-line\n\t\t\t\t\t\t\t\tcheckExportFinished(); // requires definition of `const wrapper`\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tresolve(publishState);\n\n\t\t\t\t\t\t\twrapper.update();\n\n\t\t\t\t\t\t\tconst html = wrapper.html();\n\n\t\t\t\t\t\t\texpect(lastHTML).to.not.eql(html);\n\n\t\t\t\t\t\t\tlastHTML = html;\n\t\t\t\t\t\t}),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\tfunction checkExportFinished() {\n\t\t\twrapper.update();\n\n\t\t\texpect(wrapper.find(\".export-publish-url\").length).to.equal(1);\n\t\t\texpect(wrapper.find(\".export-publish-url input\").at(0).prop(\"value\")).to.eql(\"https://cosaic.io/\");\n\n\t\t\twrapper.unmount();\n\n\t\t\tdone();\n\t\t}\n\n\t\tconst button = wrapper.find(\".button-container-secondary button\").at(0);\n\n\t\texpect(button.text(), \"Button with Publish text\").to.contain(\"Publish\");\n\n\t\tbutton.simulate(\"click\");\n\n\t\texpect(wrapper.find(\".export-publish-container h2\").text()).to.contain(\"Publishing\");\n\n\t\tlastHTML = wrapper.html();\n\t});\n\n\tit(\"should show publish url after upload step\", async () => {\n\t\tconst publishTest = publishTests.find((test) => test.name === \"step-4-started\")!;\n\n\t\tconst wrapper = mount(\n\t\t\t<DefaultExport\n\t\t\t\t{...{\n\t\t\t\t\t...(DefaultExport.args as ExportProps),\n\t\t\t\t\tprogressCheckInterval: 1,\n\t\t\t\t\tgetPublishProgress: () =>\n\t\t\t\t\t\tnew Promise((resolve) => {\n\t\t\t\t\t\t\tresolve(publishTest.states[0]);\n\t\t\t\t\t\t}),\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\n\t\tconst button = wrapper.find(\".button-container-secondary button\").at(0);\n\n\t\texpect(button.text(), \"Button with Publish text\").to.contain(\"Publish\");\n\n\t\tbutton.simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".publish-progress-success\").length).to.equal(3);\n\t\texpect(wrapper.find(\".publish-progress-indicator\").length).to.equal(1);\n\t\texpect(wrapper.find(\".export-publish-url\").length).to.equal(1);\n\t\texpect(wrapper.find(\".export-publish-url input\").at(0).prop(\"value\")).to.eql(\"https://cosaic.io/\");\n\n\t\twrapper.unmount();\n\t});\n});\n"]}
@@ -5,6 +5,7 @@ import { expect } from "chai";
5
5
  import sinon from "sinon";
6
6
  import { EmptyAppList, OneAppInList, AppWithoutDisplayName, SampleAppList } from "../stories/ItemList.stories";
7
7
  import { accessibilityAssessor } from "./a11y_helper";
8
+ // Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)
8
9
  import addons, { mockChannel } from "@storybook/addons";
9
10
  addons.setChannel(mockChannel());
10
11
  describe("<ItemList/>", () => {
@@ -90,5 +91,8 @@ describe("<ItemList/>", () => {
90
91
  });
91
92
  expect(buttonSpy.calledOnce).to.be.true;
92
93
  });
94
+ // it("should not perform the launch action when the delete name is clicked", () => {
95
+ // const wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);
96
+ // });
93
97
  });
94
98
  //# sourceMappingURL=ItemList.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ItemList.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/ItemList.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { afterEach, describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport sinon from \"sinon\";\nimport { ItemListProps } from \"../ItemList\";\nimport { EmptyAppList, OneAppInList, AppWithoutDisplayName, SampleAppList } from \"../stories/ItemList.stories\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\nimport addons, { mockChannel } from \"@storybook/addons\";\naddons.setChannel(mockChannel());\n\ndescribe(\"<ItemList/>\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\n\tit(\"should pass accessibility scans (when empty)\", async () => {\n\t\tconst wrapper = mount(<EmptyAppList {...(EmptyAppList.args as ItemListProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should pass accessibility scans (Sample)\", async () => {\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should show a zero state message when there are no apps to display\", () => {\n\t\tconst wrapper = mount(<EmptyAppList {...(EmptyAppList.args as ItemListProps)} />);\n\n\t\texpect(wrapper.find(\".app-list-empty\").first().text()).to.contain(\"There’s nothing here\");\n\t});\n\n\tit(\"should show an app title and a delete icon when 1 app is provided\", () => {\n\t\tconst wrapper = mount(<OneAppInList {...(OneAppInList.args as ItemListProps)} />);\n\n\t\texpect(wrapper.find(\".app-list-row .app-name\").exists()).to.be.true;\n\t\texpect(wrapper.find(\".app-list-row .icon-delete\").exists()).to.be.true;\n\t});\n\n\tit(\"should show an appId if no displayname is provided\", () => {\n\t\tconst wrapper = mount(<AppWithoutDisplayName {...(AppWithoutDisplayName.args as ItemListProps)} />);\n\t\texpect(wrapper.find(\".app-list-row .app-name\").text()).to.equal(\"NoDisplayName\");\n\t});\n\tit(\"should show 3 apps when 3 apps are provided\", () => {\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\texpect(wrapper.find(\".app-list-row\")).to.have.lengthOf(3);\n\t});\n\tit(\"should delete an app when the delete button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"deleteItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row button\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"click\", { stopPropagation: () => {} });\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should perform the launch action when the app name is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"clickItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"click\", { preventDefault: () => {} });\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should perform the launch action when the app name is in focus and the Enter key is pressed\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"clickItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"keyDown\", {\n\t\t\t\tkey: \"Enter\",\n\t\t\t\tpreventDefault: () => {},\n\t\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should perform the launch action when the app name is in focus and the spacebar is pressed\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"clickItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"keyDown\", {\n\t\t\t\tkey: \" \",\n\t\t\t\tpreventDefault: () => {},\n\t\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should delete an app when the app name is in focus and the delete key is pressed\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"deleteItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"keyDown\", {\n\t\t\t\tkey: \"Delete\",\n\t\t\t\tstopPropagation: () => {},\n\t\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\t// it(\"should not perform the launch action when the delete name is clicked\", () => {\n\t// \tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\n\t// });\n});\n"]}
1
+ {"version":3,"file":"ItemList.spec.js","sourceRoot":"","sources":["../../../../src/components/sdd/tests/ItemList.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { afterEach, describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport sinon from \"sinon\";\nimport { ItemListProps } from \"../ItemList\";\nimport { EmptyAppList, OneAppInList, AppWithoutDisplayName, SampleAppList } from \"../stories/ItemList.stories\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\nimport addons, { mockChannel } from \"@storybook/addons\";\naddons.setChannel(mockChannel());\n\ndescribe(\"<ItemList/>\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\n\tit(\"should pass accessibility scans (when empty)\", async () => {\n\t\tconst wrapper = mount(<EmptyAppList {...(EmptyAppList.args as ItemListProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should pass accessibility scans (Sample)\", async () => {\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should show a zero state message when there are no apps to display\", () => {\n\t\tconst wrapper = mount(<EmptyAppList {...(EmptyAppList.args as ItemListProps)} />);\n\n\t\texpect(wrapper.find(\".app-list-empty\").first().text()).to.contain(\"There’s nothing here\");\n\t});\n\n\tit(\"should show an app title and a delete icon when 1 app is provided\", () => {\n\t\tconst wrapper = mount(<OneAppInList {...(OneAppInList.args as ItemListProps)} />);\n\n\t\texpect(wrapper.find(\".app-list-row .app-name\").exists()).to.be.true;\n\t\texpect(wrapper.find(\".app-list-row .icon-delete\").exists()).to.be.true;\n\t});\n\n\tit(\"should show an appId if no displayname is provided\", () => {\n\t\tconst wrapper = mount(<AppWithoutDisplayName {...(AppWithoutDisplayName.args as ItemListProps)} />);\n\t\texpect(wrapper.find(\".app-list-row .app-name\").text()).to.equal(\"NoDisplayName\");\n\t});\n\tit(\"should show 3 apps when 3 apps are provided\", () => {\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\texpect(wrapper.find(\".app-list-row\")).to.have.lengthOf(3);\n\t});\n\tit(\"should delete an app when the delete button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"deleteItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row button\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"click\", { stopPropagation: () => {} });\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should perform the launch action when the app name is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"clickItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"click\", { preventDefault: () => {} });\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should perform the launch action when the app name is in focus and the Enter key is pressed\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"clickItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"keyDown\", {\n\t\t\t\tkey: \"Enter\",\n\t\t\t\tpreventDefault: () => {},\n\t\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should perform the launch action when the app name is in focus and the spacebar is pressed\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"clickItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"keyDown\", {\n\t\t\t\tkey: \" \",\n\t\t\t\tpreventDefault: () => {},\n\t\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should delete an app when the app name is in focus and the delete key is pressed\", () => {\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ItemListProps, \"deleteItem\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ItemListProps)} />);\n\t\twrapper\n\t\t\t.find(\".app-list-row\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"keyDown\", {\n\t\t\t\tkey: \"Delete\",\n\t\t\t\tstopPropagation: () => {},\n\t\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\t// it(\"should not perform the launch action when the delete name is clicked\", () => {\n\t// \tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\n\t// });\n});\n"]}