@finsemble/finsemble-ui 6.1.4 → 6.1.5

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 (504) hide show
  1. package/README.md +28 -28
  2. package/package.json +1 -1
  3. package/react/actions/favoriteActions.js.map +1 -1
  4. package/react/actions/linkerActions.js.map +1 -1
  5. package/react/actions/menuActions.js.map +1 -1
  6. package/react/actions/rootActions.js.map +1 -1
  7. package/react/actions/searchActions.js.map +1 -1
  8. package/react/actions/smartDesktopDesignerActions.js.map +1 -1
  9. package/react/actions/toolbarActions.js.map +1 -1
  10. package/react/actions/workspaceActions.js.map +1 -1
  11. package/react/assets/css/advancedAppLauncher.css +636 -636
  12. package/react/assets/css/appCatalog.css +1069 -1069
  13. package/react/assets/css/authentication.css +78 -78
  14. package/react/assets/css/button.css +219 -219
  15. package/react/assets/css/core/formElements.css +23 -23
  16. package/react/assets/css/core/icons.css +69 -69
  17. package/react/assets/css/core/notifications.css +75 -75
  18. package/react/assets/css/core/windowFrame.css +36 -36
  19. package/react/assets/css/dashbar.css +78 -78
  20. package/react/assets/css/defaultTheme.css +356 -356
  21. package/react/assets/css/dialogs.css +158 -158
  22. package/react/assets/css/favorites.css +101 -101
  23. package/react/assets/css/finsemble.css +38 -38
  24. package/react/assets/css/focus.css +4 -4
  25. package/react/assets/css/font-finance.css +385 -385
  26. package/react/assets/css/fonts/Open_Sans/LICENSE.txt +202 -202
  27. package/react/assets/css/fonts/Open_Sans/OpenSans-Definition.css +118 -118
  28. package/react/assets/css/fonts/font-finance.svg +124 -124
  29. package/react/assets/css/fonts/icons-reference.html +1174 -1174
  30. package/react/assets/css/linkerWindow.css +124 -124
  31. package/react/assets/css/menus.css +195 -195
  32. package/react/assets/css/notificationsCenter.css +594 -594
  33. package/react/assets/css/processMonitor.css +213 -213
  34. package/react/assets/css/search.css +128 -128
  35. package/react/assets/css/shared/animations.css +99 -99
  36. package/react/assets/css/tags.css +136 -136
  37. package/react/assets/css/toolbar.css +413 -413
  38. package/react/assets/css/userPreferences.css +565 -565
  39. package/react/assets/css/windowTitleBar.css +619 -619
  40. package/react/assets/icons/check.svg +3 -3
  41. package/react/assets/icons/chevron-left.svg +3 -3
  42. package/react/assets/icons/chevron-right.svg +3 -3
  43. package/react/assets/icons/copy.svg +10 -10
  44. package/react/assets/icons/exclamation-circle.svg +4 -4
  45. package/react/assets/icons/external-link.svg +12 -12
  46. package/react/assets/icons/flag.svg +10 -10
  47. package/react/assets/icons/folder.svg +3 -3
  48. package/react/assets/icons/font.svg +3 -3
  49. package/react/assets/icons/globe.svg +3 -3
  50. package/react/assets/icons/hdd.svg +9 -9
  51. package/react/assets/icons/key.svg +10 -10
  52. package/react/assets/icons/life-ring.svg +3 -3
  53. package/react/assets/icons/magic.svg +15 -15
  54. package/react/assets/icons/moon.svg +10 -10
  55. package/react/assets/icons/paint-roller.svg +3 -3
  56. package/react/assets/icons/pencil.svg +10 -10
  57. package/react/assets/icons/plus.svg +3 -3
  58. package/react/assets/icons/question-circle.svg +5 -5
  59. package/react/assets/icons/search.svg +3 -3
  60. package/react/assets/icons/sun.svg +9 -9
  61. package/react/assets/icons/times.svg +3 -3
  62. package/react/assets/icons/toggle-off.svg +6 -6
  63. package/react/assets/icons/toggle-on.svg +6 -6
  64. package/react/assets/icons/tools.svg +3 -3
  65. package/react/assets/icons/trash.svg +12 -12
  66. package/react/assets/icons/upload.svg +10 -10
  67. package/react/assets/icons/window.svg +3 -3
  68. package/react/componentTemplateGenerator.js +85 -85
  69. package/react/componentTemplateGenerator.js.map +1 -1
  70. package/react/components/FinsembleProvider.js.map +1 -1
  71. package/react/components/appCatalog/AppCatalog.js.map +1 -1
  72. package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
  73. package/react/components/appCatalog/components/AppCard.js.map +1 -1
  74. package/react/components/appCatalog/components/AppList.js.map +1 -1
  75. package/react/components/appCatalog/components/AppResults.js.map +1 -1
  76. package/react/components/appCatalog/components/Carousel.js.map +1 -1
  77. package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
  78. package/react/components/appCatalog/components/Hero.js.map +1 -1
  79. package/react/components/appCatalog/components/Home.js.map +1 -1
  80. package/react/components/appCatalog/components/SearchBar.js.map +1 -1
  81. package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
  82. package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
  83. package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
  84. package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
  85. package/react/components/appCatalog/components/Showcase/ImageCarousel.js.map +1 -1
  86. package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
  87. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js.map +1 -1
  88. package/react/components/appCatalog/components/Showcase/SupportNotes.js.map +1 -1
  89. package/react/components/appCatalog/components/Showcase/VersionNotes.js.map +1 -1
  90. package/react/components/appCatalog/components/Showcase/defaults.js.map +1 -1
  91. package/react/components/appCatalog/components/Tag.js.map +1 -1
  92. package/react/components/appCatalog/components/Toast.js.map +1 -1
  93. package/react/components/appCatalog/components/helpers.js.map +1 -1
  94. package/react/components/appCatalog/index.js.map +1 -1
  95. package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
  96. package/react/components/appCatalog/modules/FDC3.js.map +1 -1
  97. package/react/components/appCatalog/stores/appStore.js.map +1 -1
  98. package/react/components/appCatalog/stores/storeActions.js.map +1 -1
  99. package/react/components/common/Button.js.map +1 -1
  100. package/react/components/common/ButtonIcon.js.map +1 -1
  101. package/react/components/common/ButtonTile.js.map +1 -1
  102. package/react/components/common/ColorPicker.js.map +1 -1
  103. package/react/components/common/DropZone.js.map +1 -1
  104. package/react/components/common/DropdownButton.js.map +1 -1
  105. package/react/components/common/FileInput.js.map +1 -1
  106. package/react/components/common/FinsembleIcon.js.map +1 -1
  107. package/react/components/common/FinsembleSelect.js.map +1 -1
  108. package/react/components/common/FinsembleToggle.js.map +1 -1
  109. package/react/components/common/FontSizeSelector.js.map +1 -1
  110. package/react/components/common/Header.js.map +1 -1
  111. package/react/components/common/ImagePreview.js.map +1 -1
  112. package/react/components/common/LoadingSpinner.js.map +1 -1
  113. package/react/components/common/Tab.js.map +1 -1
  114. package/react/components/common/Tooltip.js.map +1 -1
  115. package/react/components/common/css/application-edit-page.css +117 -117
  116. package/react/components/common/css/application-list.css +47 -47
  117. package/react/components/common/css/button.css +164 -164
  118. package/react/components/common/css/color-picker.css +52 -52
  119. package/react/components/common/css/drop-zone.css +17 -17
  120. package/react/components/common/css/file-input.css +49 -49
  121. package/react/components/common/css/header.css +43 -43
  122. package/react/components/common/css/icon.css +13 -13
  123. package/react/components/common/css/image-preview.css +57 -57
  124. package/react/components/common/css/loading-spinner.css +39 -39
  125. package/react/components/common/css/selector.css +51 -51
  126. package/react/components/common/css/styles.css +128 -128
  127. package/react/components/common/css/tab.css +56 -56
  128. package/react/components/common/css/toggle.css +32 -32
  129. package/react/components/common/css/tooltip.css +68 -68
  130. package/react/components/common/file_helpers.js.map +1 -1
  131. package/react/components/common/fixtures/FinsembleIcon.css +4 -4
  132. package/react/components/common/helpers.js.map +1 -1
  133. package/react/components/common/stories/Button.stories.js.map +1 -1
  134. package/react/components/common/stories/ButtonIcon.stories.js.map +1 -1
  135. package/react/components/common/stories/ButtonTile.stories.js.map +1 -1
  136. package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
  137. package/react/components/common/stories/DropZone.stories.js.map +1 -1
  138. package/react/components/common/stories/FileInput.stories.js.map +1 -1
  139. package/react/components/common/stories/FinsembleIcon.stories.js.map +1 -1
  140. package/react/components/common/stories/FinsembleSelect.stories.js.map +1 -1
  141. package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
  142. package/react/components/common/stories/FontSizeSelector.stories.js.map +1 -1
  143. package/react/components/common/stories/Header.stories.js.map +1 -1
  144. package/react/components/common/stories/ImagePreview.stories.js.map +1 -1
  145. package/react/components/common/stories/LoadingSpinner.stories.js.map +1 -1
  146. package/react/components/common/stories/Tab.stories.js.map +1 -1
  147. package/react/components/common/stories/Tooltip.stories.js.map +1 -1
  148. package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
  149. package/react/components/common/tests/DropZone.spec.js.map +1 -1
  150. package/react/components/common/tests/FileInput.spec.js.map +1 -1
  151. package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
  152. package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
  153. package/react/components/common/tests/Header.spec.js.map +1 -1
  154. package/react/components/common/tests/ImagePreview.spec.js.map +1 -1
  155. package/react/components/common/tests/Tab.spec.js.map +1 -1
  156. package/react/components/common/tests/Tooltip.spec.js.map +1 -1
  157. package/react/components/favorites/FavoriteMaker.js.map +1 -1
  158. package/react/components/favorites/FavoritesShell.js.map +1 -1
  159. package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
  160. package/react/components/favorites/FavoritesShell.stories.js.map +1 -1
  161. package/react/components/favorites/index.js.map +1 -1
  162. package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
  163. package/react/components/fdc3Resolver/ResolverDialog.css +125 -125
  164. package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
  165. package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
  166. package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
  167. package/react/components/icon/Icon.js.map +1 -1
  168. package/react/components/icon/index.js.map +1 -1
  169. package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
  170. package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
  171. package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
  172. package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
  173. package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
  174. package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
  175. package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
  176. package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
  177. package/react/components/legacyControls/stories/FinsembleDialog.stories.js.map +1 -1
  178. package/react/components/legacyControls/stories/FinsembleDialogButton.stories.js.map +1 -1
  179. package/react/components/legacyControls/stories/FinsembleDialogQuestion.stories.js.map +1 -1
  180. package/react/components/legacyControls/stories/FinsembleDialogTextInput.stories.js.map +1 -1
  181. package/react/components/legacyControls/tests/FinsembleDialog.spec.js.map +1 -1
  182. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
  183. package/react/components/legacyControls/tests/FinsembleDialogQuestion.spec.js.map +1 -1
  184. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
  185. package/react/components/linker/LinkerMenu.js.map +1 -1
  186. package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
  187. package/react/components/linker/index.js.map +1 -1
  188. package/react/components/linker/remoteRedux.js.map +1 -1
  189. package/react/components/menu/Menu.js.map +1 -1
  190. package/react/components/menu/MenuAutoResizer.js.map +1 -1
  191. package/react/components/menu/MenuContent.js.map +1 -1
  192. package/react/components/menu/MenuHotKey.js.map +1 -1
  193. package/react/components/menu/MenuItem.js.map +1 -1
  194. package/react/components/menu/MenuPortal.js.map +1 -1
  195. package/react/components/menu/MenuShell.js.map +1 -1
  196. package/react/components/menu/MenuToggle.js.map +1 -1
  197. package/react/components/menu/index.js.map +1 -1
  198. package/react/components/menu/keyboardNavigation.js.map +1 -1
  199. package/react/components/menu/menuContext.js.map +1 -1
  200. package/react/components/menu/menuHelpers.js.map +1 -1
  201. package/react/components/notifications/components/NoNotifications.js.map +1 -1
  202. package/react/components/notifications/components/drawer/Drawer.js.map +1 -1
  203. package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
  204. package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
  205. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
  206. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
  207. package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
  208. package/react/components/notifications/components/shared/IconButton.js.map +1 -1
  209. package/react/components/notifications/components/shared/NotificationCardShell.js +1 -1
  210. package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
  211. package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
  212. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.js.map +1 -1
  213. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyContentLogo.js.map +1 -1
  214. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js.map +1 -1
  215. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.js.map +1 -1
  216. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderLogo.js.map +1 -1
  217. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js.map +1 -1
  218. package/react/components/notifications/components/views/CardView.js.map +1 -1
  219. package/react/components/notifications/components/views/ListView.js +1 -1
  220. package/react/components/notifications/components/views/ListView.js.map +1 -1
  221. package/react/components/notifications/components/views/NotificationDetailsView.js.map +1 -1
  222. package/react/components/notifications/constants.js.map +1 -1
  223. package/react/components/notifications/icons/Card.js.map +1 -1
  224. package/react/components/notifications/icons/Chevron.js.map +1 -1
  225. package/react/components/notifications/icons/CloseIcon.js.map +1 -1
  226. package/react/components/notifications/icons/EnvelopeClose.js.map +1 -1
  227. package/react/components/notifications/icons/EnvelopeOpen.js.map +1 -1
  228. package/react/components/notifications/icons/SnoozeIcon.js.map +1 -1
  229. package/react/components/notifications/index.js.map +1 -1
  230. package/react/components/notifications/notificationsContext.js.map +1 -1
  231. package/react/components/notifications/types.js.map +1 -1
  232. package/react/components/notifications/utils.js.map +1 -1
  233. package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
  234. package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
  235. package/react/components/processMonitor/components/ChildWindows.js.map +1 -1
  236. package/react/components/processMonitor/components/ListHeader.js.map +1 -1
  237. package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
  238. package/react/components/processMonitor/constants.js.map +1 -1
  239. package/react/components/processMonitor/helpers.js.map +1 -1
  240. package/react/components/processMonitor/index.js.map +1 -1
  241. package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
  242. package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
  243. package/react/components/quickComponentForm/index.js.map +1 -1
  244. package/react/components/quickComponentForm/quickComponent.css +3 -3
  245. package/react/components/search/Highlight.js.map +1 -1
  246. package/react/components/search/Highlight.spec.js.map +1 -1
  247. package/react/components/search/Highlight.stories.js.map +1 -1
  248. package/react/components/search/Search.js.map +1 -1
  249. package/react/components/search/SearchBestMatch.js.map +1 -1
  250. package/react/components/search/SearchInput.js.map +1 -1
  251. package/react/components/search/SearchProviderResults.js.map +1 -1
  252. package/react/components/search/SearchResult.js.map +1 -1
  253. package/react/components/search/SearchResults.js.map +1 -1
  254. package/react/components/search/index.js.map +1 -1
  255. package/react/components/shared/Animate.js.map +1 -1
  256. package/react/components/shared/BellIcon.js.map +1 -1
  257. package/react/components/shared/BellIconCrossed.js.map +1 -1
  258. package/react/components/shared/Button.js.map +1 -1
  259. package/react/components/shared/ConditionalWrapper.js.map +1 -1
  260. package/react/components/shared/DefaultDropdownButton.js.map +1 -1
  261. package/react/components/shared/NavigationButton.js.map +1 -1
  262. package/react/components/shared/Tag.js.map +1 -1
  263. package/react/components/shared/TagsMenu.js.map +1 -1
  264. package/react/components/shared/addProtocolToValidURL.js.map +1 -1
  265. package/react/components/shared/addProtocolToValidURL.spec.js.map +1 -1
  266. package/react/components/shared/linkerUtil.js.map +1 -1
  267. package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
  268. package/react/components/shared/validateURL.js.map +1 -1
  269. package/react/components/shared/validateURL.spec.js.map +1 -1
  270. package/react/components/singleInputDialog/SingleInputDialog.css +3 -3
  271. package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
  272. package/react/components/singleInputDialog/SingleInputDialog.spec.js.map +1 -1
  273. package/react/components/singleInputDialog/SingleInputDialog.stories.js.map +1 -1
  274. package/react/components/singleInputDialog/index.js.map +1 -1
  275. package/react/components/smartDesktopDesigner/AppEditPage.js.map +1 -1
  276. package/react/components/smartDesktopDesigner/Appearance.css +94 -94
  277. package/react/components/smartDesktopDesigner/Appearance.helpers.js.map +1 -1
  278. package/react/components/smartDesktopDesigner/Appearance.js.map +1 -1
  279. package/react/components/smartDesktopDesigner/Application.js.map +1 -1
  280. package/react/components/smartDesktopDesigner/ApplicationEdit.js.map +1 -1
  281. package/react/components/smartDesktopDesigner/ApplicationList.js.map +1 -1
  282. package/react/components/smartDesktopDesigner/ApplicationSetup.js.map +1 -1
  283. package/react/components/smartDesktopDesigner/Applications.js.map +1 -1
  284. package/react/components/smartDesktopDesigner/AssetsPage.css +26 -26
  285. package/react/components/smartDesktopDesigner/AssetsPage.js.map +1 -1
  286. package/react/components/smartDesktopDesigner/Authentication.js.map +1 -1
  287. package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js.map +1 -1
  288. package/react/components/smartDesktopDesigner/Content.js.map +1 -1
  289. package/react/components/smartDesktopDesigner/CurrentView.js.map +1 -1
  290. package/react/components/smartDesktopDesigner/Export.js.map +1 -1
  291. package/react/components/smartDesktopDesigner/ExportCloud.js.map +1 -1
  292. package/react/components/smartDesktopDesigner/ExportDeployInfo.js.map +1 -1
  293. package/react/components/smartDesktopDesigner/ExportZip.js.map +1 -1
  294. package/react/components/smartDesktopDesigner/GettingStarted.js.map +1 -1
  295. package/react/components/smartDesktopDesigner/Navigation.js.map +1 -1
  296. package/react/components/smartDesktopDesigner/ProjectErrors.js.map +1 -1
  297. package/react/components/smartDesktopDesigner/ProjectHeader.js.map +1 -1
  298. package/react/components/smartDesktopDesigner/Publish.js.map +1 -1
  299. package/react/components/smartDesktopDesigner/PublishProgress.js.map +1 -1
  300. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
  301. package/react/components/smartDesktopDesigner/ThemePage.css +110 -110
  302. package/react/components/smartDesktopDesigner/ThemePage.js.map +1 -1
  303. package/react/components/smartDesktopDesigner/Themes.js.map +1 -1
  304. package/react/components/smartDesktopDesigner/View.js.map +1 -1
  305. package/react/components/smartDesktopDesigner/common/fsbl_functions.js.map +1 -1
  306. package/react/components/smartDesktopDesigner/common/getCSSVars.js.map +1 -1
  307. package/react/components/smartDesktopDesigner/common/views.js +2 -2
  308. package/react/components/smartDesktopDesigner/common/views.js.map +1 -1
  309. package/react/components/smartDesktopDesigner/css/appearance.css +10 -10
  310. package/react/components/smartDesktopDesigner/css/applications.css +89 -89
  311. package/react/components/smartDesktopDesigner/css/authentication.css +125 -125
  312. package/react/components/smartDesktopDesigner/css/buttons.css +12 -12
  313. package/react/components/smartDesktopDesigner/css/export.css +163 -163
  314. package/react/components/smartDesktopDesigner/css/getting-started.css +6 -6
  315. package/react/components/smartDesktopDesigner/css/nav.css +93 -93
  316. package/react/components/smartDesktopDesigner/css/project-errors.css +15 -15
  317. package/react/components/smartDesktopDesigner/css/project-header.css +121 -121
  318. package/react/components/smartDesktopDesigner/css/styles.css +179 -179
  319. package/react/components/smartDesktopDesigner/css/views.css +16 -16
  320. package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.js.map +1 -1
  321. package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.js.map +1 -1
  322. package/react/components/smartDesktopDesigner/fixtures/applicationsProps.js.map +1 -1
  323. package/react/components/smartDesktopDesigner/fixtures/apps.js.map +1 -1
  324. package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js.map +1 -1
  325. package/react/components/smartDesktopDesigner/fixtures/configTemplate.js.map +1 -1
  326. package/react/components/smartDesktopDesigner/fixtures/exportProps.js.map +1 -1
  327. package/react/components/smartDesktopDesigner/fixtures/projectErrorsProps.js.map +1 -1
  328. package/react/components/smartDesktopDesigner/fixtures/publishProgress.js.map +1 -1
  329. package/react/components/smartDesktopDesigner/fixtures/themeProps.js.map +1 -1
  330. package/react/components/smartDesktopDesigner/fixtures/views.js.map +1 -1
  331. package/react/components/smartDesktopDesigner/sdd_helpers.js.map +1 -1
  332. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js.map +1 -1
  333. package/react/components/smartDesktopDesigner/stories/Appearance.stories.js.map +1 -1
  334. package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.js.map +1 -1
  335. package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js.map +1 -1
  336. package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.js.map +1 -1
  337. package/react/components/smartDesktopDesigner/stories/Applications.stories.js.map +1 -1
  338. package/react/components/smartDesktopDesigner/stories/AssetsPage.stories.js.map +1 -1
  339. package/react/components/smartDesktopDesigner/stories/Authentication.stories.js.map +1 -1
  340. package/react/components/smartDesktopDesigner/stories/Export.stories.js.map +1 -1
  341. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js.map +1 -1
  342. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js.map +1 -1
  343. package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js.map +1 -1
  344. package/react/components/smartDesktopDesigner/stories/Navigation.stories.js.map +1 -1
  345. package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js.map +1 -1
  346. package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.js.map +1 -1
  347. package/react/components/smartDesktopDesigner/stories/Publish.stories.js.map +1 -1
  348. package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js.map +1 -1
  349. package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js.map +1 -1
  350. package/react/components/smartDesktopDesigner/stories/ThemePage.stories.js.map +1 -1
  351. package/react/components/smartDesktopDesigner/stories/Themes.stories.js.map +1 -1
  352. package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js.map +1 -1
  353. package/react/components/smartDesktopDesigner/tests/ApplicationEdit.spec.js.map +1 -1
  354. package/react/components/smartDesktopDesigner/tests/ApplicationList.spec.js.map +1 -1
  355. package/react/components/smartDesktopDesigner/tests/ApplicationSetup.spec.js.map +1 -1
  356. package/react/components/smartDesktopDesigner/tests/Applications.spec.js.map +1 -1
  357. package/react/components/smartDesktopDesigner/tests/Authentication.spec.js.map +1 -1
  358. package/react/components/smartDesktopDesigner/tests/Export.spec.js.map +1 -1
  359. package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js.map +1 -1
  360. package/react/components/smartDesktopDesigner/tests/Navigation.spec.js.map +1 -1
  361. package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js.map +1 -1
  362. package/react/components/smartDesktopDesigner/tests/ProjectHeader.spec.js.map +1 -1
  363. package/react/components/smartDesktopDesigner/tests/Publish.spec.js.map +1 -1
  364. package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js.map +1 -1
  365. package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js.map +1 -1
  366. package/react/components/smartDesktopDesigner/tests/Themes.spec.js.map +1 -1
  367. package/react/components/smartDesktopDesigner/tests/a11y_helper.js +3 -3
  368. package/react/components/smartDesktopDesigner/tests/a11y_helper.js.map +1 -1
  369. package/react/components/smartDesktopDesigner/themeDefinitions.js.map +1 -1
  370. package/react/components/system/System.js.map +1 -1
  371. package/react/components/system/System.spec.js.map +1 -1
  372. package/react/components/system/System.stories.js.map +1 -1
  373. package/react/components/system/SystemTrayComponentShell.js.map +1 -1
  374. package/react/components/system/index.js.map +1 -1
  375. package/react/components/toolbar/AutoArrange.js.map +1 -1
  376. package/react/components/toolbar/DragHandle.js.map +1 -1
  377. package/react/components/toolbar/MinimizeAll.js.map +1 -1
  378. package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
  379. package/react/components/toolbar/MinimizeAll.stories.js.map +1 -1
  380. package/react/components/toolbar/NotificationControl.js.map +1 -1
  381. package/react/components/toolbar/RevealAll.js.map +1 -1
  382. package/react/components/toolbar/RevealAll.spec.js.map +1 -1
  383. package/react/components/toolbar/RevealAll.stories.js.map +1 -1
  384. package/react/components/toolbar/ToolbarIcon.js.map +1 -1
  385. package/react/components/toolbar/ToolbarSection.js.map +1 -1
  386. package/react/components/toolbar/ToolbarShell.js.map +1 -1
  387. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
  388. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.js.map +1 -1
  389. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
  390. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
  391. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
  392. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
  393. package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.js.map +1 -1
  394. package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
  395. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
  396. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
  397. package/react/components/toolbar/advancedAppLauncher/components/LeftNav.js.map +1 -1
  398. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
  399. package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.js.map +1 -1
  400. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
  401. package/react/components/toolbar/advancedAppLauncher/components/SortBy.js.map +1 -1
  402. package/react/components/toolbar/advancedAppLauncher/components/TagsList.js.map +1 -1
  403. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
  404. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js.map +1 -1
  405. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
  406. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
  407. package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.js.map +1 -1
  408. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
  409. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
  410. package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
  411. package/react/components/toolbar/appLauncher/DynamicAppLauncher.js.map +1 -1
  412. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
  413. package/react/components/toolbar/appLauncher/appLauncher.css +30 -30
  414. package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
  415. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
  416. package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
  417. package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
  418. package/react/components/toolbar/index.js.map +1 -1
  419. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
  420. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
  421. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
  422. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
  423. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
  424. package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +94 -94
  425. package/react/components/userPreferences/NotificationsPreferencesContext.js.map +1 -1
  426. package/react/components/userPreferences/UserPreferences.js.map +1 -1
  427. package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
  428. package/react/components/userPreferences/components/Checkbox.js.map +1 -1
  429. package/react/components/userPreferences/components/ContentSection.js.map +1 -1
  430. package/react/components/userPreferences/components/LeftNav.js.map +1 -1
  431. package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
  432. package/react/components/userPreferences/components/content/General.js.map +1 -1
  433. package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
  434. package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
  435. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
  436. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
  437. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
  438. package/react/components/userPreferences/components/content/notificationViews/notificationViewsUtils.js.map +1 -1
  439. package/react/components/userPreferences/components/general/ScheduledRestart.js.map +1 -1
  440. package/react/components/userPreferences/index.js.map +1 -1
  441. package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
  442. package/react/components/userPreferences/stories/DashbarEditor.stories.js.map +1 -1
  443. package/react/components/utils.js.map +1 -1
  444. package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
  445. package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
  446. package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
  447. package/react/components/windowTitleBar/components/center/TabRegion.js.map +1 -1
  448. package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
  449. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +1 -1
  450. package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
  451. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
  452. package/react/components/windowTitleBar/components/left/ShareButton.js.map +1 -1
  453. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +1 -1
  454. package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
  455. package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
  456. package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
  457. package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
  458. package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
  459. package/react/components/windowTitleBar/index.js.map +1 -1
  460. package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
  461. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js.map +1 -1
  462. package/react/components/windowTitleBar/windowTitleBarContext.js.map +1 -1
  463. package/react/components/yesNoDialog/Timer.spec.js.map +1 -1
  464. package/react/components/yesNoDialog/Timer.stories.js.map +1 -1
  465. package/react/components/yesNoDialog/YesNoDialog.css +3 -3
  466. package/react/components/yesNoDialog/YesNoDialog.js.map +1 -1
  467. package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
  468. package/react/components/yesNoDialog/YesNoDialog.stories.js.map +1 -1
  469. package/react/components/yesNoDialog/index.js.map +1 -1
  470. package/react/components/yesNoDialog/timer.js.map +1 -1
  471. package/react/enzymeSetup.js.map +1 -1
  472. package/react/hooks/index.js.map +1 -1
  473. package/react/hooks/useAuth.js.map +1 -1
  474. package/react/hooks/useDeepEffect.js.map +1 -1
  475. package/react/hooks/useFavorites.js.map +1 -1
  476. package/react/hooks/useFavoritesShell.js.map +1 -1
  477. package/react/hooks/useHotkey.js.map +1 -1
  478. package/react/hooks/useLinker.js.map +1 -1
  479. package/react/hooks/useMenu.js.map +1 -1
  480. package/react/hooks/useNotifications.js.map +1 -1
  481. package/react/hooks/useOutsideClickDetector.js.map +1 -1
  482. package/react/hooks/usePubSub.js.map +1 -1
  483. package/react/hooks/useSearch.js.map +1 -1
  484. package/react/hooks/useToolbar.js.map +1 -1
  485. package/react/hooks/useWorkspace.js.map +1 -1
  486. package/react/reducers/favoriteReducer.js.map +1 -1
  487. package/react/reducers/linkerReducer.js.map +1 -1
  488. package/react/reducers/menuReducer.js.map +1 -1
  489. package/react/reducers/rootReducer.js.map +1 -1
  490. package/react/reducers/searchReducer.js.map +1 -1
  491. package/react/reducers/smartDesktopDesignerReducer.js.map +1 -1
  492. package/react/reducers/toolbarReducer.js.map +1 -1
  493. package/react/reducers/workspaceReducer.js.map +1 -1
  494. package/react/store.js.map +1 -1
  495. package/react/types/advancedAppLauncherTypes.js.map +1 -1
  496. package/react/types/dashbarTypes.js.map +1 -1
  497. package/react/types/favoriteTypes.js.map +1 -1
  498. package/react/types/fdc3.js.map +1 -1
  499. package/react/types/hotkeyTypes.js.map +1 -1
  500. package/react/types/iconTypes.js.map +1 -1
  501. package/react/types/linkerTypes.js.map +1 -1
  502. package/react/types/searchTypes.js.map +1 -1
  503. package/react/types/smartDesktopDesignerTypes.js.map +1 -1
  504. package/react/types/workspaceTypes.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AppEditPage.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/AppEditPage.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC/B,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,SAAS,OAAM,SAAS,CAAC,IAAyB,GAAI,CAAC,CAAC;QAE/E,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QAClF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,SAAS,OAAM,SAAS,CAAC,IAAyB,GAAI,CAAC,CAAC;QAE/E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;QACpF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC1B,MAAM,EAAE;gBACP,KAAK,EAAE,MAAM;aACb;SACD,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IAC5E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC9E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,SAAS,OAAM,SAAS,CAAC,IAAyB,GAAI,CAAC,CAAC;QAE/E,OAAO;aACL,IAAI,CAAC,UAAU,CAAC;aAChB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,SAAS;aAChB;SACD,CAAC,CAAC;QAEJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACxE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC/E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,MAAM;aACb;SACD,CAAC,CAAC;QAEJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QAEJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAChF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,OAAO;aACL,IAAI,CAAC,aAAa,CAAC;aACnB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,MAAM;aACb;SACD,CAAC,CAAC;QAEJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC3E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,OAAO;aACL,IAAI,CAAC,aAAa,CAAC;aACnB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QAEJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC3E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QAClE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,SAAS,OAAM,SAAS,CAAC,IAAyB,GAAI,CAAC,CAAC;QAE/E,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IAClD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QACjE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,KAAK;aACZ;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC/C,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,QAAQ;aACf;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACjD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC1E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,WAAW,CAAC;aACjB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,KAAK;aACZ;SACD,CAAC,CAAC;QACJ,OAAO;aACL,IAAI,CAAC,UAAU,CAAC;aAChB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,KAAK;aACZ;SACD,CAAC,CAAC;QACJ,OAAO;aACL,IAAI,CAAC,UAAU,CAAC;aAChB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,aAAa,CAAC;aACnB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,MAAM;aACb;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,aAAa,CAAC;aACnB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,MAAM;aACb;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACtF,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,qGAAqG,EAAE,GAAG,EAAE;QAC9G,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,qBAAqB,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACxC,KAAK,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gGAAgG,EAAE,GAAG,EAAE;QACzG,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QAErE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACxC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACjD,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE,EAAE;YACR,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,WAAW,EAAE,EAAE;SACf,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACvE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,WAAW,CAAC;aACjB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC5F,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,WAAW,CAAC;aACjB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,GAAG;YACR,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IAC1C,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sFAAsF,EAAE,GAAG,EAAE;QAC/F,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,SAAS,OAAM,SAAS,CAAC,IAAyB,GAAI,CAAC,CAAC;QAC/E,OAAO;aACL,IAAI,CAAC,WAAW,CAAC;aACjB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IAC1C,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC/E,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QAClF,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,kBAAkB,CAAC;aACxB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC1E,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,UAAU,CAAC;aAChB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACxE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACzE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAwB,EAAE,UAAU,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAM,IAAI,CAAC,IAAyB,GAAI,CAAC,CAAC;QACrE,OAAO;aACL,IAAI,CAAC,aAAa,CAAC;aACnB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { afterEach, describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport sinon from \"sinon\";\r\nimport { AppEditPageProps } from \"../AppEditPage\";\r\nimport { Page, EmptyPage } from \"../stories/AppEditPage.stories\";\r\nimport { accessibilityAssessor } from \"./a11y_helper\";\r\n\r\ndescribe(\"<AppEditPage/>\", () => {\r\n\tafterEach(() => {\r\n\t\tsinon.restore();\r\n\t});\r\n\r\n\tit(\"should pass accessibility scans (Page)\", async () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should pass accessibility scans (EmptyPage)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should display starting name in Name field, if name field is set\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\texpect(wrapper.find(\"#app-name\").first().prop(\"value\")).to.equal(\"Test\");\r\n\t});\r\n\tit(\"should not display starting name in Name field, if no name field is set\", () => {\r\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\r\n\r\n\t\texpect(wrapper.find(\"#app-name\").first().prop(\"value\")).to.equal(\"\");\r\n\t});\r\n\tit(\"should display Name as a valid field, even if the given name is duplicate\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\tconst appName = wrapper.find(\"#app-name\").at(0);\r\n\t\tappName.simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"Used\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\texpect(wrapper.find(\"#app-name\").at(0).prop(\"value\")).to.equal(\"Used\");\r\n\t\texpect(!!wrapper.find(\"#app-name\").at(0).prop(\"aria-invalid\")).to.be.false;\r\n\t});\r\n\tit(\"should display invalid state for Web URL if provided URL is invalid\", () => {\r\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper\r\n\t\t\t.find(\"#app-url\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"invalid\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\texpect(wrapper.find(\"#app-url\").at(0).prop(\"aria-invalid\")).to.be.true;\r\n\t});\r\n\tit(\"should display invalid state for width if provided a negative number\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper\r\n\t\t\t.find(\"#app-width\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"-999\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\texpect(wrapper.find(\"#app-width\").at(0).prop(\"aria-invalid\")).to.be.true;\r\n\t});\r\n\tit(\"should display invalid state for width if provided an empty value\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper\r\n\t\t\t.find(\"#app-width\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\texpect(wrapper.find(\"#app-width\").at(0).prop(\"aria-invalid\")).to.be.true;\r\n\t});\r\n\tit(\"should display invalid state for height if provided a negative number\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper\r\n\t\t\t.find(\"#app-height\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"-999\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\texpect(wrapper.find(\"#app-height\").at(0).prop(\"aria-invalid\")).to.be.true;\r\n\t});\r\n\tit(\"should display invalid state for height if provided an empty value\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper\r\n\t\t\t.find(\"#app-height\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\texpect(wrapper.find(\"#app-height\").at(0).prop(\"aria-invalid\")).to.be.true;\r\n\t});\r\n\tit(\"should display App type field if isSetupWizard is false\", () => {\r\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\r\n\r\n\t\texpect(wrapper.contains(\"App type\")).to.be.false;\r\n\t});\r\n\tit(\"should display App type filed if isSetupWizard is true\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\texpect(wrapper.contains(\"App type\")).to.be.true;\r\n\t});\r\n\tit(\"should display only Web URL if App type = Web\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-type-web\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"web\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.contains(\"Web URL\")).to.be.true;\r\n\t\texpect(wrapper.contains(\"File Path\")).to.be.false;\r\n\t});\r\n\tit(\"should display only File Path if App type = Native\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-type-web\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"native\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.contains(\"File Path\")).to.be.true;\r\n\t\texpect(wrapper.contains(\"Web URL\")).to.be.false;\r\n\t});\r\n\r\n\tit(\"should have a disabled Save button if the name field is emptied\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"should have a disabled Save button if the Web URL field is emptied\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-type-web\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"web\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\twrapper\r\n\t\t\t.find(\"#app-url\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"should have a disabled Save button if the Web URL field is emptied\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-type-web\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"web\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\twrapper\r\n\t\t\t.find(\"#app-url\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"should have a disabled Save button if the width field is emptied\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-width\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"should have a disabled Save button if the height field is emptied\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-height\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"should have a disabled Save button if the width field is negative\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-width\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"-999\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"should have a disabled Save button if the height field is negative\", () => {\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-height\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"-999\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\r\n\tit(\"should call the passed-in cancel function when the cancel button is clicked\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"cancelFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should call the passed-in Remove Application function when the Remove Application button is clicked\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"removeApplicationFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper.find(\"button\").at(0).simulate(\"click\");\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t\tsinon.restore();\r\n\t});\r\n\tit(\"should call the passed-in submit function with relevant data when the submit button is clicked\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\r\n\t\twrapper.find(\"button\").at(2).simulate(\"click\");\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t\texpect(buttonSpy.firstCall.args[0]).to.deep.equal({\r\n\t\t\tname: \"Test\",\r\n\t\t\turl: \"http://www.google.com\",\r\n\t\t\tpath: \"\",\r\n\t\t\tappType: \"web\",\r\n\t\t\twidth: 1280,\r\n\t\t\theight: 600,\r\n\t\t\tdescription: \"\",\r\n\t\t});\r\n\t});\r\n\r\n\tit(\"should click submit button when pressing enter on Name field\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should not click submit button when pressing a key other than enter on Name field\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"a\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.false;\r\n\t});\r\n\tit(\"should not submit when pressing enter on Name field IF the submit button is disabled\", () => {\r\n\t\tconst buttonSpy = sinon.spy(EmptyPage.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.false;\r\n\t});\r\n\tit(\"should click submit button when pressing enter on App type web field\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-type-web\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should click submit button when pressing enter on App type native field\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-type-native\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should click submit button when pressing enter on Web URL field\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-url\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should click submit button when pressing enter on Width field\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-width\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should click submit button when pressing enter on Height field\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\r\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\"#app-height\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keydown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n});\r\n"]}
1
+ {"version":3,"file":"AppEditPage.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/AppEditPage.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { afterEach, describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport sinon from \"sinon\";\nimport { AppEditPageProps } from \"../AppEditPage\";\nimport { Page, EmptyPage } from \"../stories/AppEditPage.stories\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\ndescribe(\"<AppEditPage/>\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\n\tit(\"should pass accessibility scans (Page)\", async () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should pass accessibility scans (EmptyPage)\", async () => {\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should display starting name in Name field, if name field is set\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\texpect(wrapper.find(\"#app-name\").first().prop(\"value\")).to.equal(\"Test\");\n\t});\n\tit(\"should not display starting name in Name field, if no name field is set\", () => {\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\n\t\texpect(wrapper.find(\"#app-name\").first().prop(\"value\")).to.equal(\"\");\n\t});\n\tit(\"should display Name as a valid field, even if the given name is duplicate\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\tconst appName = wrapper.find(\"#app-name\").at(0);\n\t\tappName.simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"Used\",\n\t\t\t},\n\t\t});\n\n\t\texpect(wrapper.find(\"#app-name\").at(0).prop(\"value\")).to.equal(\"Used\");\n\t\texpect(!!wrapper.find(\"#app-name\").at(0).prop(\"aria-invalid\")).to.be.false;\n\t});\n\tit(\"should display invalid state for Web URL if provided URL is invalid\", () => {\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\n\t\twrapper\n\t\t\t.find(\"#app-url\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"invalid\",\n\t\t\t\t},\n\t\t\t});\n\n\t\texpect(wrapper.find(\"#app-url\").at(0).prop(\"aria-invalid\")).to.be.true;\n\t});\n\tit(\"should display invalid state for width if provided a negative number\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper\n\t\t\t.find(\"#app-width\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t},\n\t\t\t});\n\n\t\texpect(wrapper.find(\"#app-width\").at(0).prop(\"aria-invalid\")).to.be.true;\n\t});\n\tit(\"should display invalid state for width if provided an empty value\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper\n\t\t\t.find(\"#app-width\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\n\t\texpect(wrapper.find(\"#app-width\").at(0).prop(\"aria-invalid\")).to.be.true;\n\t});\n\tit(\"should display invalid state for height if provided a negative number\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper\n\t\t\t.find(\"#app-height\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t},\n\t\t\t});\n\n\t\texpect(wrapper.find(\"#app-height\").at(0).prop(\"aria-invalid\")).to.be.true;\n\t});\n\tit(\"should display invalid state for height if provided an empty value\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper\n\t\t\t.find(\"#app-height\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\n\t\texpect(wrapper.find(\"#app-height\").at(0).prop(\"aria-invalid\")).to.be.true;\n\t});\n\tit(\"should display App type field if isSetupWizard is false\", () => {\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\n\t\texpect(wrapper.contains(\"App type\")).to.be.false;\n\t});\n\tit(\"should display App type filed if isSetupWizard is true\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\texpect(wrapper.contains(\"App type\")).to.be.true;\n\t});\n\tit(\"should display only Web URL if App type = Web\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-type-web\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"web\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.contains(\"Web URL\")).to.be.true;\n\t\texpect(wrapper.contains(\"File Path\")).to.be.false;\n\t});\n\tit(\"should display only File Path if App type = Native\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-type-web\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"native\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.contains(\"File Path\")).to.be.true;\n\t\texpect(wrapper.contains(\"Web URL\")).to.be.false;\n\t});\n\n\tit(\"should have a disabled Save button if the name field is emptied\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\n\t});\n\tit(\"should have a disabled Save button if the Web URL field is emptied\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-type-web\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"web\",\n\t\t\t\t},\n\t\t\t});\n\t\twrapper\n\t\t\t.find(\"#app-url\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\n\t});\n\tit(\"should have a disabled Save button if the Web URL field is emptied\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-type-web\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"web\",\n\t\t\t\t},\n\t\t\t});\n\t\twrapper\n\t\t\t.find(\"#app-url\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\n\t});\n\tit(\"should have a disabled Save button if the width field is emptied\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-width\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\n\t});\n\tit(\"should have a disabled Save button if the height field is emptied\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-height\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\n\t});\n\tit(\"should have a disabled Save button if the width field is negative\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-width\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\n\t});\n\tit(\"should have a disabled Save button if the height field is negative\", () => {\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-height\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"-999\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(2).prop(\"disabled\")).to.be.true;\n\t});\n\n\tit(\"should call the passed-in cancel function when the cancel button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"cancelFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should call the passed-in Remove Application function when the Remove Application button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"removeApplicationFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper.find(\"button\").at(0).simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t\tsinon.restore();\n\t});\n\tit(\"should call the passed-in submit function with relevant data when the submit button is clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\n\t\twrapper.find(\"button\").at(2).simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t\texpect(buttonSpy.firstCall.args[0]).to.deep.equal({\n\t\t\tname: \"Test\",\n\t\t\turl: \"http://www.google.com\",\n\t\t\tpath: \"\",\n\t\t\tappType: \"web\",\n\t\t\twidth: 1280,\n\t\t\theight: 600,\n\t\t\tdescription: \"\",\n\t\t});\n\t});\n\n\tit(\"should click submit button when pressing enter on Name field\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-name\")\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 not click submit button when pressing a key other than enter on Name field\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"keydown\", {\n\t\t\t\tkey: \"a\",\n\t\t\t\tpreventDefault: () => {},\n\t\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.false;\n\t});\n\tit(\"should not submit when pressing enter on Name field IF the submit button is disabled\", () => {\n\t\tconst buttonSpy = sinon.spy(EmptyPage.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<EmptyPage {...(EmptyPage.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-name\")\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.false;\n\t});\n\tit(\"should click submit button when pressing enter on App type web field\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-type-web\")\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 click submit button when pressing enter on App type native field\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-type-native\")\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 click submit button when pressing enter on Web URL field\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-url\")\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 click submit button when pressing enter on Width field\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-width\")\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 click submit button when pressing enter on Height field\", () => {\n\t\tconst buttonSpy = sinon.spy(Page.args as AppEditPageProps, \"submitFn\");\n\t\tconst wrapper = mount(<Page {...(Page.args as AppEditPageProps)} />);\n\t\twrapper\n\t\t\t.find(\"#app-height\")\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});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationEdit.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/ApplicationEdit.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport { ApplicationEditProps } from \"../ApplicationEdit\";\r\nimport { AddApp, EditApp } from \"../stories/ApplicationEdit.stories\";\r\nimport { waitTick } from \"../sdd_helpers\";\r\n\r\nconst WEB_APP_INPUT_FIELDS = [\r\n\t{\r\n\t\tkey: \"name\",\r\n\t\tname: \"Name\",\r\n\t\tselector: \".app-edit-field #app-name\",\r\n\t\tdefaultValue: \"\",\r\n\t},\r\n\t{\r\n\t\tkey: \"url\",\r\n\t\tname: \"URL\",\r\n\t\tselector: \".app-edit-field #app-url\",\r\n\t\tdefaultValue: \"\",\r\n\t},\r\n\t{\r\n\t\tkey: \"description\",\r\n\t\tname: \"Description\",\r\n\t\tselector: \".app-edit-field #app-description\",\r\n\t\tdefaultValue: \"\",\r\n\t},\r\n\t{\r\n\t\tkey: \"width\",\r\n\t\tname: \"Width\",\r\n\t\tselector: \".app-edit-field #app-width\",\r\n\t\tdefaultValue: 1280,\r\n\t},\r\n\t{\r\n\t\tkey: \"height\",\r\n\t\tname: \"Height\",\r\n\t\tselector: \".app-edit-field #app-height\",\r\n\t\tdefaultValue: 600,\r\n\t},\r\n];\r\n\r\nconst SAVE_BUTTON = \".app-edit-actions .button-container-secondary button\",\r\n\tREMOVE_BUTTON = \".app-edit-actions .button-container-danger button\",\r\n\tSUCCESS_CONTAINER = \".app-edit-success\";\r\n\r\ndescribe(\"<ApplicationEdit/>\", () => {\r\n\tit(\"should have default field values when adding new\", async () => {\r\n\t\tconst wrapper = mount(<AddApp {...(AddApp.args as ApplicationEditProps)} />);\r\n\r\n\t\tWEB_APP_INPUT_FIELDS.forEach((field) => {\r\n\t\t\texpect(wrapper.find(field.selector).prop(\"value\"), field.name).to.equal(field.defaultValue);\r\n\t\t});\r\n\t});\r\n\r\n\tit(\"should have filled-in field values when editing existing\", async () => {\r\n\t\tconst wrapper = mount(<EditApp {...(EditApp.args as ApplicationEditProps)} />);\r\n\r\n\t\tWEB_APP_INPUT_FIELDS.forEach((field) => {\r\n\t\t\texpect(wrapper.find(field.selector).prop(\"value\"), field.name).to.equal((EditApp.args?.data as any)[field.key]);\r\n\t\t});\r\n\t});\r\n\r\n\tit(\"should have remove application button when editing existing\", async () => {\r\n\t\tconst wrapper = mount(<EditApp {...(EditApp.args as ApplicationEditProps)} />);\r\n\r\n\t\texpect(wrapper.find(REMOVE_BUTTON).length, \"Remove button\").to.equal(1);\r\n\t});\r\n\r\n\tit(\"should continue to the success screen\", async () => {\r\n\t\tconst wrapper = mount(<EditApp {...(EditApp.args as ApplicationEditProps)} />);\r\n\r\n\t\twrapper.find(SAVE_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(SUCCESS_CONTAINER).length, \"Success container\").to.equal(1);\r\n\t});\r\n});\r\n"]}
1
+ {"version":3,"file":"ApplicationEdit.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/ApplicationEdit.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 { ApplicationEditProps } from \"../ApplicationEdit\";\nimport { AddApp, EditApp } from \"../stories/ApplicationEdit.stories\";\nimport { waitTick } from \"../sdd_helpers\";\n\nconst WEB_APP_INPUT_FIELDS = [\n\t{\n\t\tkey: \"name\",\n\t\tname: \"Name\",\n\t\tselector: \".app-edit-field #app-name\",\n\t\tdefaultValue: \"\",\n\t},\n\t{\n\t\tkey: \"url\",\n\t\tname: \"URL\",\n\t\tselector: \".app-edit-field #app-url\",\n\t\tdefaultValue: \"\",\n\t},\n\t{\n\t\tkey: \"description\",\n\t\tname: \"Description\",\n\t\tselector: \".app-edit-field #app-description\",\n\t\tdefaultValue: \"\",\n\t},\n\t{\n\t\tkey: \"width\",\n\t\tname: \"Width\",\n\t\tselector: \".app-edit-field #app-width\",\n\t\tdefaultValue: 1280,\n\t},\n\t{\n\t\tkey: \"height\",\n\t\tname: \"Height\",\n\t\tselector: \".app-edit-field #app-height\",\n\t\tdefaultValue: 600,\n\t},\n];\n\nconst SAVE_BUTTON = \".app-edit-actions .button-container-secondary button\",\n\tREMOVE_BUTTON = \".app-edit-actions .button-container-danger button\",\n\tSUCCESS_CONTAINER = \".app-edit-success\";\n\ndescribe(\"<ApplicationEdit/>\", () => {\n\tit(\"should have default field values when adding new\", async () => {\n\t\tconst wrapper = mount(<AddApp {...(AddApp.args as ApplicationEditProps)} />);\n\n\t\tWEB_APP_INPUT_FIELDS.forEach((field) => {\n\t\t\texpect(wrapper.find(field.selector).prop(\"value\"), field.name).to.equal(field.defaultValue);\n\t\t});\n\t});\n\n\tit(\"should have filled-in field values when editing existing\", async () => {\n\t\tconst wrapper = mount(<EditApp {...(EditApp.args as ApplicationEditProps)} />);\n\n\t\tWEB_APP_INPUT_FIELDS.forEach((field) => {\n\t\t\texpect(wrapper.find(field.selector).prop(\"value\"), field.name).to.equal((EditApp.args?.data as any)[field.key]);\n\t\t});\n\t});\n\n\tit(\"should have remove application button when editing existing\", async () => {\n\t\tconst wrapper = mount(<EditApp {...(EditApp.args as ApplicationEditProps)} />);\n\n\t\texpect(wrapper.find(REMOVE_BUTTON).length, \"Remove button\").to.equal(1);\n\t});\n\n\tit(\"should continue to the success screen\", async () => {\n\t\tconst wrapper = mount(<EditApp {...(EditApp.args as ApplicationEditProps)} />);\n\n\t\twrapper.find(SAVE_BUTTON).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(SUCCESS_CONTAINER).length, \"Success container\").to.equal(1);\n\t});\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationList.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/ApplicationList.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACtH,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGtD,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACxD,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAEjC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACnC,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,YAAY,OAAM,YAAY,CAAC,IAA6B,GAAI,CAAC,CAAC;QAEzF,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,aAAa,OAAM,aAAa,CAAC,IAA6B,GAAI,CAAC,CAAC;QAE3F,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,YAAY,OAAM,YAAY,CAAC,IAA6B,GAAI,CAAC,CAAC;QAEzF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,YAAY,OAAM,YAAY,CAAC,IAA6B,GAAI,CAAC,CAAC;QAEzF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,qBAAqB,OAAM,qBAAqB,CAAC,IAA6B,GAAI,CAAC,CAAC;QAC3G,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACtD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,aAAa,OAAM,aAAa,CAAC,IAA6B,GAAI,CAAC,CAAC;QAC3F,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QACjE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAA4B,EAAE,WAAW,CAAC,CAAC;QACrF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,aAAa,OAAM,aAAa,CAAC,IAA6B,GAAI,CAAC,CAAC;QAC3F,OAAO;aACL,IAAI,CAAC,sBAAsB,CAAC;aAC5B,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACxE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAA4B,EAAE,UAAU,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,aAAa,OAAM,aAAa,CAAC,IAA6B,GAAI,CAAC,CAAC;QAC3F,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAC;QAClD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6FAA6F,EAAE,GAAG,EAAE;QACtG,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAA4B,EAAE,UAAU,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,aAAa,OAAM,aAAa,CAAC,IAA6B,GAAI,CAAC,CAAC;QAC3F,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,OAAO;YACZ,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,4FAA4F,EAAE,GAAG,EAAE;QACrG,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAA4B,EAAE,UAAU,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,aAAa,OAAM,aAAa,CAAC,IAA6B,GAAI,CAAC,CAAC;QAC3F,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,GAAG;YACR,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC3F,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAA4B,EAAE,WAAW,CAAC,CAAC;QACrF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,aAAa,OAAM,aAAa,CAAC,IAA6B,GAAI,CAAC,CAAC;QAC3F,OAAO;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,SAAS,EAAE;YACpB,GAAG,EAAE,QAAQ;YACb,eAAe,EAAE,GAAG,EAAE,GAAE,CAAC;SACzB,CAAC,CAAC;QACJ,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;AAIJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { afterEach, describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport sinon from \"sinon\";\r\nimport { ApplicationListProps } from \"../ApplicationList\";\r\nimport { EmptyAppList, OneAppInList, AppWithoutDisplayName, SampleAppList } from \"../stories/ApplicationList.stories\";\r\nimport { accessibilityAssessor } from \"./a11y_helper\";\r\n\r\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\r\nimport addons, { mockChannel } from \"@storybook/addons\";\r\naddons.setChannel(mockChannel());\r\n\r\ndescribe(\"<ApplicationList/>\", () => {\r\n\tafterEach(() => {\r\n\t\tsinon.restore();\r\n\t});\r\n\r\n\tit(\"should pass accessibility scans (when empty)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyAppList {...(EmptyAppList.args as ApplicationListProps)} />);\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should pass accessibility scans (Sample)\", async () => {\r\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should show a zero state message when there are no apps to display\", () => {\r\n\t\tconst wrapper = mount(<EmptyAppList {...(EmptyAppList.args as ApplicationListProps)} />);\r\n\r\n\t\texpect(wrapper.find(\".app-list-empty\").first().text()).to.contain(\"There’s nothing here\");\r\n\t});\r\n\r\n\tit(\"should show an app title and a delete icon when 1 app is provided\", () => {\r\n\t\tconst wrapper = mount(<OneAppInList {...(OneAppInList.args as ApplicationListProps)} />);\r\n\r\n\t\texpect(wrapper.find(\".app-list-row .app-name\").exists()).to.be.true;\r\n\t\texpect(wrapper.find(\".app-list-row .icon-delete\").exists()).to.be.true;\r\n\t});\r\n\r\n\tit(\"should show an appId if no displayname is provided\", () => {\r\n\t\tconst wrapper = mount(<AppWithoutDisplayName {...(AppWithoutDisplayName.args as ApplicationListProps)} />);\r\n\t\texpect(wrapper.find(\".app-list-row .app-name\").text()).to.equal(\"NoDisplayName\");\r\n\t});\r\n\tit(\"should show 3 apps when 3 apps are provided\", () => {\r\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\t\texpect(wrapper.find(\".app-list-row\")).to.have.lengthOf(3);\r\n\t});\r\n\tit(\"should delete an app when the delete button is clicked\", () => {\r\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ApplicationListProps, \"deleteApp\");\r\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\".app-list-row button\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"click\", { stopPropagation: () => {} });\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should perform the launch action when the app name is clicked\", () => {\r\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ApplicationListProps, \"clickApp\");\r\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\".app-list-row\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"click\", { preventDefault: () => {} });\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should perform the launch action when the app name is in focus and the Enter key is pressed\", () => {\r\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ApplicationListProps, \"clickApp\");\r\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\".app-list-row\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keyDown\", {\r\n\t\t\t\tkey: \"Enter\",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should perform the launch action when the app name is in focus and the spacebar is pressed\", () => {\r\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ApplicationListProps, \"clickApp\");\r\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\".app-list-row\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keyDown\", {\r\n\t\t\t\tkey: \" \",\r\n\t\t\t\tpreventDefault: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should delete an app when the app name is in focus and the delete key is pressed\", () => {\r\n\t\tconst buttonSpy = sinon.spy(SampleAppList.args as ApplicationListProps, \"deleteApp\");\r\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\t\twrapper\r\n\t\t\t.find(\".app-list-row\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"keyDown\", {\r\n\t\t\t\tkey: \"Delete\",\r\n\t\t\t\tstopPropagation: () => {},\r\n\t\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\t// it(\"should not perform the launch action when the delete name is clicked\", () => {\r\n\t// \tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\r\n\t// });\r\n});\r\n"]}
1
+ {"version":3,"file":"ApplicationList.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/ApplicationList.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 { ApplicationListProps } from \"../ApplicationList\";\nimport { EmptyAppList, OneAppInList, AppWithoutDisplayName, SampleAppList } from \"../stories/ApplicationList.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(\"<ApplicationList/>\", () => {\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 ApplicationListProps)} />);\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 ApplicationListProps)} />);\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 ApplicationListProps)} />);\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 ApplicationListProps)} />);\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 ApplicationListProps)} />);\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 ApplicationListProps)} />);\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 ApplicationListProps, \"deleteApp\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\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 ApplicationListProps, \"clickApp\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\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 ApplicationListProps, \"clickApp\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\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 ApplicationListProps, \"clickApp\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\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 ApplicationListProps, \"deleteApp\");\n\t\tconst wrapper = mount(<SampleAppList {...(SampleAppList.args as ApplicationListProps)} />);\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 +1 @@
1
- {"version":3,"file":"ApplicationSetup.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/ApplicationSetup.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,MAAM,cAAc,GAAG,kDAAkD,EACxE,kBAAkB,GAAG,qDAAqD,EAC1E,oBAAoB,GAAG,sEAAsE,EAC7F,qBAAqB,GAAG,mDAAmD,EAC3E,uBAAuB,GAAG,0BAA0B,EACpD,4BAA4B,GAAG,oBAAoB,CAAC;AAErD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,SAAS,OAAM,SAAS,CAAC,IAA8B,GAAI,CAAC,CAAC;QAEpF,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,SAAS,OAAM,SAAS,CAAC,IAA8B,GAAI,CAAC,CAAC;QAEpF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE3E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,eAAe,OAAM,eAAe,CAAC,IAA8B,GAAI,CAAC,CAAC;QAEhG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9G,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE3E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CACnF,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CACtC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,eAAe,OAAM,eAAe,CAAC,IAA8B,GAAI,CAAC,CAAC;QAEhG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAE9G,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAExD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvG,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport { AddNewApp, EditExistingApp } from \"../stories/ApplicationSetup.stories\";\r\nimport { ApplicationSetupProps } from \"../ApplicationSetup\";\r\nimport { accessibilityAssessor } from \"./a11y_helper\";\r\n\r\nconst TOGGLE_WEB_URL = \".app-edit .button-container-tile.icon-web button\",\r\n\tTOGGLE_NATIVE_PATH = \".app-edit .button-container-tile.icon-native button\",\r\n\tAPP_URL_WIZARD_INPUT = '.app-edit .app-setup-url-field .app-url-container input[type=\"text\"]',\r\n\tAPP_PATH_WIZARD_INPUT = '.app-edit .app-setup-url-field input[type=\"file\"]',\r\n\tNEXT_PAGE_WIZARD_BUTTON = \".app-edit-actions button\",\r\n\tAPP_EDIT_COMPONENT_CONTAINER = \".app-edit-fieldset\";\r\n\r\ndescribe(\"<ApplicationSetup/>\", () => {\r\n\tit(\"should pass accessibility scans\", async () => {\r\n\t\tconst wrapper = mount(<AddNewApp {...(AddNewApp.args as ApplicationSetupProps)} />);\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should not show empty inputs on new app until app type is toggled\", async () => {\r\n\t\tconst wrapper = mount(<AddNewApp {...(AddNewApp.args as ApplicationSetupProps)} />);\r\n\r\n\t\twrapper.find(TOGGLE_WEB_URL).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).prop(\"value\"), \"App URL\").to.equal(\"\");\r\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).length, \"App Path\").to.equal(0);\r\n\r\n\t\twrapper.find(TOGGLE_NATIVE_PATH).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).length, \"App URL\").to.equal(0);\r\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).prop(\"value\") || \"\", \"App Path\").to.equal(\"\");\r\n\t});\r\n\r\n\tit(\"should not show filled inputs on existing app until app type is toggled\", async () => {\r\n\t\tconst wrapper = mount(<EditExistingApp {...(EditExistingApp.args as ApplicationSetupProps)} />);\r\n\r\n\t\twrapper.find(TOGGLE_WEB_URL).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).prop(\"value\"), \"App URL\").to.equal(EditExistingApp.args?.data?.url);\r\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).length, \"App Path\").to.equal(0);\r\n\r\n\t\twrapper.find(TOGGLE_NATIVE_PATH).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).length, \"App URL\").to.equal(0);\r\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).prop(\"value\") || \"\", \"App Path\").to.equal(\r\n\t\t\tEditExistingApp.args?.data?.path || \"\"\r\n\t\t);\r\n\t});\r\n\r\n\tit(\"should continue to the AppEdit screen\", async () => {\r\n\t\tconst wrapper = mount(<EditExistingApp {...(EditExistingApp.args as ApplicationSetupProps)} />);\r\n\r\n\t\twrapper.find(TOGGLE_WEB_URL).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).prop(\"value\"), \"App URL\").to.equal(EditExistingApp.args?.data?.url);\r\n\r\n\t\twrapper.find(NEXT_PAGE_WIZARD_BUTTON).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(APP_EDIT_COMPONENT_CONTAINER).length, \"App Edit component container\").to.equal(1);\r\n\t});\r\n});\r\n"]}
1
+ {"version":3,"file":"ApplicationSetup.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/ApplicationSetup.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 { AddNewApp, EditExistingApp } from \"../stories/ApplicationSetup.stories\";\nimport { ApplicationSetupProps } from \"../ApplicationSetup\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\n\nconst TOGGLE_WEB_URL = \".app-edit .button-container-tile.icon-web button\",\n\tTOGGLE_NATIVE_PATH = \".app-edit .button-container-tile.icon-native button\",\n\tAPP_URL_WIZARD_INPUT = '.app-edit .app-setup-url-field .app-url-container input[type=\"text\"]',\n\tAPP_PATH_WIZARD_INPUT = '.app-edit .app-setup-url-field input[type=\"file\"]',\n\tNEXT_PAGE_WIZARD_BUTTON = \".app-edit-actions button\",\n\tAPP_EDIT_COMPONENT_CONTAINER = \".app-edit-fieldset\";\n\ndescribe(\"<ApplicationSetup/>\", () => {\n\tit(\"should pass accessibility scans\", async () => {\n\t\tconst wrapper = mount(<AddNewApp {...(AddNewApp.args as ApplicationSetupProps)} />);\n\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\n\t});\n\n\tit(\"should not show empty inputs on new app until app type is toggled\", async () => {\n\t\tconst wrapper = mount(<AddNewApp {...(AddNewApp.args as ApplicationSetupProps)} />);\n\n\t\twrapper.find(TOGGLE_WEB_URL).simulate(\"click\");\n\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).prop(\"value\"), \"App URL\").to.equal(\"\");\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).length, \"App Path\").to.equal(0);\n\n\t\twrapper.find(TOGGLE_NATIVE_PATH).simulate(\"click\");\n\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).length, \"App URL\").to.equal(0);\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).prop(\"value\") || \"\", \"App Path\").to.equal(\"\");\n\t});\n\n\tit(\"should not show filled inputs on existing app until app type is toggled\", async () => {\n\t\tconst wrapper = mount(<EditExistingApp {...(EditExistingApp.args as ApplicationSetupProps)} />);\n\n\t\twrapper.find(TOGGLE_WEB_URL).simulate(\"click\");\n\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).prop(\"value\"), \"App URL\").to.equal(EditExistingApp.args?.data?.url);\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).length, \"App Path\").to.equal(0);\n\n\t\twrapper.find(TOGGLE_NATIVE_PATH).simulate(\"click\");\n\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).length, \"App URL\").to.equal(0);\n\t\texpect(wrapper.find(APP_PATH_WIZARD_INPUT).prop(\"value\") || \"\", \"App Path\").to.equal(\n\t\t\tEditExistingApp.args?.data?.path || \"\"\n\t\t);\n\t});\n\n\tit(\"should continue to the AppEdit screen\", async () => {\n\t\tconst wrapper = mount(<EditExistingApp {...(EditExistingApp.args as ApplicationSetupProps)} />);\n\n\t\twrapper.find(TOGGLE_WEB_URL).simulate(\"click\");\n\n\t\texpect(wrapper.find(APP_URL_WIZARD_INPUT).prop(\"value\"), \"App URL\").to.equal(EditExistingApp.args?.data?.url);\n\n\t\twrapper.find(NEXT_PAGE_WIZARD_BUTTON).simulate(\"click\");\n\n\t\texpect(wrapper.find(APP_EDIT_COMPONENT_CONTAINER).length, \"App Edit component container\").to.equal(1);\n\t});\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Applications.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Applications.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,IAAI,GACJ,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAC;AAGrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,EAClD,kBAAkB,GAAG,eAAe,EACpC,6BAA6B,GAAG,wBAAwB,EACxD,sBAAsB,GAAG,iBAAiB,EAC1C,WAAW,GAAG,uBAAuB,EACrC,kBAAkB,GAAG,8BAA8B,EACnD,mBAAmB,GAAG,wCAAwC,EAC9D,mBAAmB,GAAG,wCAAwC,CAAC;AAEhE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAErE,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC;QAErD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAE3B,MAAM,OAAO,GAAG,GAAG,OAAO,WAAW,CAAC;QAEtC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEtB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAE7C,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxB,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAEzD,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEvF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE/D,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE/D,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxB,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC;QAEnE,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEvF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAElE,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEjF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,yBAAyB,OAAK,mBAAmB,CAAC,WAAW,CAAC,GAAI,CAAC,CAAC;QAE3F,MAAM,QAAQ,EAAE,CAAC;QAEjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG;IACnB,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;IACxB,eAAe,EAAE,GAAG,EAAE,GAAE,CAAC;CACzB,CAAC;AAEF,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAC/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAErD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1F,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAK,mBAAmB,CAAC,MAAM,CAAC,GAAI,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC9E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC1E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,mDAAmD,CAAC;IAC1E,MAAM,aAAa,GAAG,oDAAoD,CAAC;IAC3E,MAAM,aAAa,GAAG,qDAAqD,CAAC;IAC5E,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QACjF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QACjF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACtF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACtF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAG3D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACrG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gFAAgF,EAAE,GAAG,EAAE;QACzF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAGjG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAG3D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;QACzF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAGjG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAG3D,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,QAAQ;aACf;SACD,CAAC,CAAC;QAGJ,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGpE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QAGJ,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGpE,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGpE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3D,MAAM,QAAQ,EAAE,CAAC;QAEjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAGrE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,MAAM;aACb;SACD,CAAC,CAAC;QAGJ,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACtE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;QAG/E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAG7E,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAG7E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAGjE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACxG,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACxG,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,MAAM,EACxD,mDAAmD,CACnD,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,MAAM,EAC1D,+CAA+C,CAC/C,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEd,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC5C,MAAM,EAAE;gBACP,KAAK,EAAE,QAAQ;aACf;SACD,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;QAG1F,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,MAAM,EACxD,uCAAuC,CACvC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,MAAM,EAC1D,kDAAkD,CAClD,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;QAG1F,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;QAG/E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAEhE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,2CAA2C,CAAC,CAAC,QAAQ,CAC7G,+BAA+B,CAC/B,CAAC;QAGF,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,0CAA0C,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtG,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;QAG/E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,uBAAuB;aAC9B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC1G,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,oCAAoC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC1G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,OAAM,UAAU,CAAC,IAAkC,GAAI,CAAC,CAAC;QAE1F,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,uBAAuB;aAC9B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,OAAM,UAAU,CAAC,IAAkC,GAAI,CAAC,CAAC;QAE1F,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,uBAAuB;aAC9B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport {\r\n\tDefaultApplications,\r\n\tEmptyApplications,\r\n\tApplicationsWithTemporary,\r\n\tLong,\r\n} from \"../stories/Applications.stories\";\r\nimport { getApplicationsArgs } from \"../fixtures/apps\";\r\nimport { waitTick } from \"../sdd_helpers\";\r\nimport { accessibilityAssessor } from \"./a11y_helper\";\r\nimport { DefaultSDD } from \"../stories/SmartDesktopDesigner.stories\";\r\nimport { SmartDesktopDesignerProps } from \"../SmartDesktopDesigner\";\r\n\r\nexport const ADD_NEW_APP_BUTTON = \".visible button\",\r\n\tAPP_LIST_TABLE_ROW = \".app-list-row\",\r\n\tACTIVE_TAB_APP_LIST_TABLE_ROW = \".visible .app-list-row\",\r\n\tAPP_LIST_EMPTY_MESSAGE = \".app-list-empty\",\r\n\tPAGE_HEADER = \".view-title .leftSide\",\r\n\tPAGE_HEADER_BUTTON = \".view-title .leftSide button\",\r\n\tSETUP_WIZARD_BUTTON = \".tile-type-buttons .icon-wizard button\",\r\n\tSETUP_MANUAL_BUTTON = \".tile-type-buttons .icon-manual button\";\r\n\r\ndescribe(\"<Applications/>\", () => {\r\n\tit(\"should pass accessibility scans\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should pass accessibility scans (empty)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(await accessibilityAssessor(wrapper)).to.be.true;\r\n\t});\r\n\r\n\tit(\"should contain add button app list when not empty\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\r\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).length).to.equal(0);\r\n\t});\r\n\tit(\"should contain add button and empty message when empty\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".view-content button\").first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t\texpect(wrapper.find(APP_LIST_EMPTY_MESSAGE).first().text()).to.contain(\"nothing here\");\r\n\t});\r\n\tit(\"should be able to edit a web app\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\r\n\r\n\t\tconst app = wrapper.find(APP_LIST_TABLE_ROW).first();\r\n\r\n\t\tconst appName = app.text();\r\n\r\n\t\tconst newName = `${appName} modified`;\r\n\r\n\t\tapp.simulate(\"click\");\r\n\r\n\t\tconst input = wrapper.find(\"input#app-name\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: newName } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).someWhere((node) => node.text() === newName)).to.be.true;\r\n\t});\r\n\tit(\"should be able to add a web app with wizard\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".setup-type-heading\").length).to.equal(1);\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\r\n\r\n\t\tconst input = wrapper.find(\"input\");\r\n\r\n\t\tinput.simulate(\"focus\");\r\n\t\tinput.simulate(\"change\", { target: { value: \"http://test.com\" } });\r\n\r\n\t\twrapper.find(\".app-edit-actions .button-container-secondary button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t});\r\n\tit(\"should not display temporary apps\", async () => {\r\n\t\tconst wrapper = mount(<ApplicationsWithTemporary {...getApplicationsArgs(\"temporary\")} />);\r\n\r\n\t\tawait waitTick();\r\n\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.equal(1);\r\n\t});\r\n});\r\n\r\nconst preventable = {\r\n\tpreventDefault: () => {},\r\n\tstopPropagation: () => {},\r\n};\r\n\r\ndescribe(\"<Applications />, Menu section\", () => {\r\n\tit(\"should display empty state with 0 menus\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(ADD_NEW_APP_BUTTON).first().text()).to.contain(\"Add\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t\texpect(wrapper.find(\".visible .app-list-empty\").first().text()).to.contain(\"nothing here\");\r\n\t});\r\n\tit(\"should display menu name and delete button when there are 1+ menus\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first().text()).to.contain(\"Examples\");\r\n\t\texpect(wrapper.find(\".visible .app-list-row .icon-delete\").exists()).to.be.true;\r\n\t});\r\n\tit(\"MenuEdit: should have an empty Name field by default\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.equal(\"\");\r\n\t});\r\n\tit(\"should display disabled Add New button when there are 5 menus\", async () => {\r\n\t\tconst wrapper = mount(<Long {...getApplicationsArgs(\"long\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(5);\r\n\t\texpect(wrapper.find(ADD_NEW_APP_BUTTON).first().prop(\"disabled\")).to.be.true;\r\n\t});\r\n\tit(\"MenuEdit: should disable submit button when Name field is empty\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"button\").at(1).prop(\"disabled\")).to.be.true;\r\n\t});\r\n\r\n\tconst characters_49 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff\";\r\n\tconst characters_50 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!\";\r\n\tconst characters_51 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!?\";\r\n\tit(\"MenuEdit: when Name input receives 49 characters, it should display 49\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_49,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_49);\r\n\t});\r\n\tit(\"MenuEdit: when Name input receives 50 characters, it should display 50\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_50,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\r\n\t});\r\n\tit(\"MenuEdit: when Name input receives 51 characters, it should only display 50\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: characters_51,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\r\n\t});\r\n\tit(\"MenuEdit: back button should take users back to Applications page, Menu tab\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Click \"Back\" button\r\n\t\twrapper.find(\"button\").first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(\".visible div[data-label='Menus']\").exists(), \"Menus Tab is visible\").to.be.true;\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\r\n\t});\r\n\tit(\"MenuEdit: click Add New, then click Cancel, then see menu list has not changed\", () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Click \"Back\" button\r\n\t\twrapper.find(\"button\").first().simulate(\"click\");\r\n\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\r\n\t});\r\n\tit(\"MenuEdit: should show a new menu in the list after a menu has been added\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\t// Set name as \"Charts\"\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Charts\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Check \"Example Charts App\"\r\n\t\twrapper.find(\"input[type='checkbox']\").at(0).simulate(\"change\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Menu list shows 2 menus\").to.be.equal(2);\r\n\t});\r\n\tit(\"name change to a menu should persist\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click Examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Change name to Hello World\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Hello World\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Confirm name is Hello World\r\n\t\texpect(wrapper.find(\".visible [role='listitem']\").at(0).text()).contains(\"Hello World\");\r\n\t});\r\n\tit(\"selected applications changes to a menu should persist\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click Examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Select items\r\n\t\twrapper.find(\"input[type='checkbox']\").at(2).simulate(\"change\");\r\n\r\n\t\t// Click save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click examples\r\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\r\n\r\n\t\t// Confirm items still present\r\n\t\texpect(wrapper.find(\"input[type='checkbox']\").at(2).prop(\"checked\")).to.be.true;\r\n\t});\r\n\tit(\"should not persist menu name when saving multiple menus\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\t// Go to Menus tab\r\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\t// Confirm name field is empty\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\r\n\r\n\t\t// Change name to Test\r\n\t\twrapper\r\n\t\t\t.find(\"#menu-name\")\r\n\t\t\t.at(0)\r\n\t\t\t.simulate(\"change\", {\r\n\t\t\t\ttarget: {\r\n\t\t\t\t\tvalue: \"Test\",\r\n\t\t\t\t},\r\n\t\t\t});\r\n\r\n\t\t// Click save\r\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\t// Confirm name field is empty\r\n\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\r\n\t});\r\n});\r\n\r\ndescribe(\"<Applications/>, Navigation\", () => {\r\n\tit(\"should navigate as expected\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\t// wait for async effects to finish\r\n\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Add\" button should take you to the \"Add an app\" page\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Application Wizard\" should take you to \"Is your app web or native \"\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Web app\" should bring up the URL entry form and a disabled Next button\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".app-url-container\").exists()).to.be.true;\r\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\r\n\r\n\t\t// Clicking \"Native app\" should bring up a file path form and a disabled Next button\r\n\t\twrapper.find(\".icon-native button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".file-input-container\").exists()).to.be.true;\r\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an App\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Manual Setup (Advanced)\" should take you to the form\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\".view-container form\").exists()).to.be.true;\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Back\" should take you to the Applications landing page\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"clicking Cancel on the Application form (Manual) should return to the Applications List\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click the \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"clicking Cancel on the Application form (Wizard) should return to the Applications List\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click the \"Add\" button\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Cancel\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"clicking Return to List should return to the Applications List (advanced)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\twrapper.update();\r\n\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\r\n\t\t\t\"Confirm the App tab's App Table has 0 items in it\"\r\n\t\t).to.be.equal(0);\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\r\n\t\t\t\"Confirm the empty app list message is present\"\r\n\t\t).to.equal(1);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-name\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"Cosaic\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\r\n\t\t\t\"Confirm a row in the App Table exists\"\r\n\t\t).to.be.equal(1);\r\n\t\texpect(\r\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\r\n\t\t\t\"Confirm the empty app list message isn't visible\"\r\n\t\t).to.equal(0);\r\n\t});\r\n\r\n\tit(\"clicking Return to List should return to the Applications List (wizard)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t});\r\n\r\n\tit(\"should be able to back out of the application form (Wizard)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Is your app web or native?\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"should be able to back out of the application form (Advanced)\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Back\r\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Choose a method to add an application\"\r\n\t\texpect(wrapper.find(\".setup-type-heading\").at(0).text(), \"Setup header text contains expected title\").contains(\r\n\t\t\t\"Choose a method to add an app\"\r\n\t\t);\r\n\r\n\t\t// Click Back\r\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(PAGE_HEADER).text(), \"Page header text contains expected title\").contains(\"Apps\");\r\n\t\twrapper.unmount();\r\n\t});\r\n\r\n\tit(\"clicking Add Another Application should return to Add Applications form\", async () => {\r\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.cosaic.io\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Add Another Application\r\n\t\twrapper.find(\".app-edit-success-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\r\n\r\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\r\n\r\n\t\t// Clicking \"Back\" should take you to the Applications landing page\r\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\r\n\t}).timeout(5000);\r\n\r\n\tit(\"form should auto-populate from wizard (Web)\", async () => {\r\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(\"#app-url\").prop(\"value\"), \"Url is auto-populated\").to.equal(\"http://www.google.com\");\r\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Name is auto-populated to 'Google'\").to.equal(\"Google\");\r\n\t});\r\n\r\n\tit(\"should discard app on edit screens when user exits via external navigation\", async () => {\r\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\r\n\t});\r\n\r\n\tit(\"should save app on final screen when user exits via external navigation\", async () => {\r\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\r\n\t\t\ttarget: {\r\n\t\t\t\tvalue: \"http://www.google.com\",\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\t// Click Next\r\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\t// Click Save\r\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\r\n\t\tawait waitTick();\r\n\t\twrapper.update();\r\n\r\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\r\n\t});\r\n});\r\n"]}
1
+ {"version":3,"file":"Applications.spec.js","sourceRoot":"","sources":["../../../../src/components/smartDesktopDesigner/tests/Applications.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,IAAI,GACJ,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAC;AAGrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,EAClD,kBAAkB,GAAG,eAAe,EACpC,6BAA6B,GAAG,wBAAwB,EACxD,sBAAsB,GAAG,iBAAiB,EAC1C,WAAW,GAAG,uBAAuB,EACrC,kBAAkB,GAAG,8BAA8B,EACnD,mBAAmB,GAAG,wCAAwC,EAC9D,mBAAmB,GAAG,wCAAwC,CAAC;AAEhE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAErE,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC;QAErD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAE3B,MAAM,OAAO,GAAG,GAAG,OAAO,WAAW,CAAC;QAEtC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEtB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAE7C,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxB,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAEzD,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEvF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE/D,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE/D,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxB,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC;QAEnE,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEvF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAElE,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEjF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,yBAAyB,OAAK,mBAAmB,CAAC,WAAW,CAAC,GAAI,CAAC,CAAC;QAE3F,MAAM,QAAQ,EAAE,CAAC;QAEjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG;IACnB,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;IACxB,eAAe,EAAE,GAAG,EAAE,GAAE,CAAC;CACzB,CAAC;AAEF,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAC/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAErD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1F,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,IAAI,OAAK,mBAAmB,CAAC,MAAM,CAAC,GAAI,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC9E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC1E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE;aACT;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,mDAAmD,CAAC;IAC1E,MAAM,aAAa,GAAG,oDAAoD,CAAC;IAC3E,MAAM,aAAa,GAAG,qDAAqD,CAAC;IAC5E,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QACjF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QACjF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACtF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACtF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAG3D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACrG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gFAAgF,EAAE,GAAG,EAAE;QACzF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAGjG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAG3D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;QACzF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAGjG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAG3D,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,QAAQ;aACf;SACD,CAAC,CAAC;QAGJ,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGpE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,aAAa;aACpB;SACD,CAAC,CAAC;QAGJ,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGpE,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGpE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAGnF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAGrD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3D,MAAM,QAAQ,EAAE,CAAC;QAEjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAGrE,OAAO;aACL,IAAI,CAAC,YAAY,CAAC;aAClB,EAAE,CAAC,CAAC,CAAC;aACL,QAAQ,CAAC,QAAQ,EAAE;YACnB,MAAM,EAAE;gBACP,KAAK,EAAE,MAAM;aACb;SACD,CAAC,CAAC;QAGJ,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACtE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QAGjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;QAG/E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAG7E,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAG7E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAGjE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACxG,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACxG,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,MAAM,EACxD,mDAAmD,CACnD,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,MAAM,EAC1D,+CAA+C,CAC/C,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEd,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC5C,MAAM,EAAE;gBACP,KAAK,EAAE,QAAQ;aACf;SACD,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;QAG1F,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,MAAM,EACxD,uCAAuC,CACvC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,CACL,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,MAAM,EAC1D,kDAAkD,CAClD,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;QAG1F,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;QAG/E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAEhE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,2CAA2C,CAAC,CAAC,QAAQ,CAC7G,+BAA+B,CAC/B,CAAC;QAGF,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,0CAA0C,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtG,OAAO,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,iBAAiB,OAAK,mBAAmB,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,sBAAsB;aAC7B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;QAG/E,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAGhE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,mBAAmB,OAAK,mBAAmB,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC;QAEnF,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,uBAAuB;aAC9B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC1G,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,oCAAoC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC1G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,OAAM,UAAU,CAAC,IAAkC,GAAI,CAAC,CAAC;QAE1F,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,uBAAuB;aAC9B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,UAAU,OAAM,UAAU,CAAC,IAAkC,GAAI,CAAC,CAAC;QAE1F,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE;gBACP,KAAK,EAAE,uBAAuB;aAC9B;SACD,CAAC,CAAC;QAGH,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAGjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5E,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport {\n\tDefaultApplications,\n\tEmptyApplications,\n\tApplicationsWithTemporary,\n\tLong,\n} from \"../stories/Applications.stories\";\nimport { getApplicationsArgs } from \"../fixtures/apps\";\nimport { waitTick } from \"../sdd_helpers\";\nimport { accessibilityAssessor } from \"./a11y_helper\";\nimport { DefaultSDD } from \"../stories/SmartDesktopDesigner.stories\";\nimport { SmartDesktopDesignerProps } from \"../SmartDesktopDesigner\";\n\nexport const ADD_NEW_APP_BUTTON = \".visible button\",\n\tAPP_LIST_TABLE_ROW = \".app-list-row\",\n\tACTIVE_TAB_APP_LIST_TABLE_ROW = \".visible .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\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(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(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(APP_LIST_TABLE_ROW).length).to.be.greaterThan(0);\n\n\t\tconst app = wrapper.find(APP_LIST_TABLE_ROW).first();\n\n\t\tconst appName = app.text();\n\n\t\tconst newName = `${appName} modified`;\n\n\t\tapp.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(wrapper.find(APP_LIST_TABLE_ROW).someWhere((node) => node.text() === newName)).to.be.true;\n\t});\n\tit(\"should be able to add a web app with wizard\", 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(APP_LIST_TABLE_ROW).length).to.be.equal(0);\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).simulate(\"click\");\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(\".setup-type-heading\").length).to.equal(1);\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\twrapper.find(\".button-container-tile.icon-web button\").simulate(\"click\");\n\n\t\tconst input = wrapper.find(\"input\");\n\n\t\tinput.simulate(\"focus\");\n\t\tinput.simulate(\"change\", { target: { value: \"http://test.com\" } });\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\twrapper.find(\".app-edit-actions button\").last().simulate(\"click\");\n\n\t\tawait waitTick();\n\t\t// wait for async effects to finish\n\n\t\twrapper.update();\n\n\t\twrapper.find(\".app-edit-success-actions > :last-child button\").simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\n\t});\n\tit(\"should not display temporary apps\", async () => {\n\t\tconst wrapper = mount(<ApplicationsWithTemporary {...getApplicationsArgs(\"temporary\")} />);\n\n\t\tawait waitTick();\n\n\t\twrapper.update();\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.equal(1);\n\t});\n});\n\nconst preventable = {\n\tpreventDefault: () => {},\n\tstopPropagation: () => {},\n};\n\ndescribe(\"<Applications />, Menu section\", () => {\n\tit(\"should display empty state with 0 menus\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\n\t\texpect(wrapper.find(ADD_NEW_APP_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(\".visible .app-list-empty\").first().text()).to.contain(\"nothing here\");\n\t});\n\tit(\"should display menu name and delete button when there are 1+ menus\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(1);\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).first().text()).to.contain(\"Examples\");\n\t\texpect(wrapper.find(\".visible .app-list-row .icon-delete\").exists()).to.be.true;\n\t});\n\tit(\"MenuEdit: should have an empty Name field by default\", () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.equal(\"\");\n\t});\n\tit(\"should display disabled Add New button when there are 5 menus\", async () => {\n\t\tconst wrapper = mount(<Long {...getApplicationsArgs(\"long\")} />);\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length).to.be.equal(5);\n\t\texpect(wrapper.find(ADD_NEW_APP_BUTTON).first().prop(\"disabled\")).to.be.true;\n\t});\n\tit(\"MenuEdit: should disable submit button when Name field is empty\", () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\n\t\twrapper\n\t\t\t.find(\"#menu-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"button\").at(1).prop(\"disabled\")).to.be.true;\n\t});\n\n\tconst characters_49 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff\";\n\tconst characters_50 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!\";\n\tconst characters_51 = \"Hubert Blaine Wolfeschlegelsteinhausenbergerdorff!?\";\n\tit(\"MenuEdit: when Name input receives 49 characters, it should display 49\", () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\n\t\twrapper\n\t\t\t.find(\"#menu-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: characters_49,\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_49);\n\t});\n\tit(\"MenuEdit: when Name input receives 50 characters, it should display 50\", () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\n\t\twrapper\n\t\t\t.find(\"#menu-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: characters_50,\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\n\t});\n\tit(\"MenuEdit: when Name input receives 51 characters, it should only display 50\", () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\", preventable);\n\t\twrapper\n\t\t\t.find(\"#menu-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: characters_51,\n\t\t\t\t},\n\t\t\t});\n\t\texpect(wrapper.find(\"#menu-name\").prop(\"value\")).to.equal(characters_50);\n\t});\n\tit(\"MenuEdit: back button should take users back to Applications page, Menu tab\", () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\t// Go to Menus tab\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\n\t\t// Click \"Add\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\n\n\t\t// Click \"Back\" button\n\t\twrapper.find(\"button\").first().simulate(\"click\");\n\n\t\texpect(wrapper.find(\".visible div[data-label='Menus']\").exists(), \"Menus Tab is visible\").to.be.true;\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\n\t});\n\tit(\"MenuEdit: click Add New, then click Cancel, then see menu list has not changed\", () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\t// Go to Menus tab\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\n\n\t\t// Click \"Add\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\n\n\t\t// Click \"Back\" button\n\t\twrapper.find(\"button\").first().simulate(\"click\");\n\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Still only 1 menu in list\").to.be.equal(1);\n\t});\n\tit(\"MenuEdit: should show a new menu in the list after a menu has been added\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\t// Go to Menus tab\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Only 1 menu in list\").to.be.equal(1);\n\n\t\t// Click \"Add\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\n\n\t\t// Set name as \"Charts\"\n\t\twrapper\n\t\t\t.find(\"#menu-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Charts\",\n\t\t\t\t},\n\t\t\t});\n\n\t\t// Check \"Example Charts App\"\n\t\twrapper.find(\"input[type='checkbox']\").at(0).simulate(\"change\");\n\n\t\t// Click Save\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).length, \"Menu list shows 2 menus\").to.be.equal(2);\n\t});\n\tit(\"name change to a menu should persist\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\t// Go to Menus tab\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\n\t\t// Click Examples\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\n\n\t\t// Change name to Hello World\n\t\twrapper\n\t\t\t.find(\"#menu-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Hello World\",\n\t\t\t\t},\n\t\t\t});\n\n\t\t// Click Save\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Confirm name is Hello World\n\t\texpect(wrapper.find(\".visible [role='listitem']\").at(0).text()).contains(\"Hello World\");\n\t});\n\tit(\"selected applications changes to a menu should persist\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\t// Go to Menus tab\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\n\t\t// Click Examples\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\n\n\t\t// Select items\n\t\twrapper.find(\"input[type='checkbox']\").at(2).simulate(\"change\");\n\n\t\t// Click save\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click examples\n\t\twrapper.find(ACTIVE_TAB_APP_LIST_TABLE_ROW).at(0).simulate(\"click\");\n\n\t\t// Confirm items still present\n\t\texpect(wrapper.find(\"input[type='checkbox']\").at(2).prop(\"checked\")).to.be.true;\n\t});\n\tit(\"should not persist menu name when saving multiple menus\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\t// Go to Menus tab\n\t\twrapper.find(\"[role='tab']\").at(1).simulate(\"click\");\n\n\t\t// Click \"Add\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\n\n\t\tawait waitTick();\n\t\t// Confirm name field is empty\n\t\twrapper.update();\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\n\n\t\t// Change name to Test\n\t\twrapper\n\t\t\t.find(\"#menu-name\")\n\t\t\t.at(0)\n\t\t\t.simulate(\"change\", {\n\t\t\t\ttarget: {\n\t\t\t\t\tvalue: \"Test\",\n\t\t\t\t},\n\t\t\t});\n\n\t\t// Click save\n\t\twrapper.find(\"button\").at(1).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click \"Add\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).first().simulate(\"click\");\n\t\tawait waitTick();\n\t\t// Confirm name field is empty\n\n\t\twrapper.update();\n\t\texpect(wrapper.find(\"#menu-name\").first().prop(\"value\")).to.be.empty;\n\t});\n});\n\ndescribe(\"<Applications/>, Navigation\", () => {\n\tit(\"should navigate as expected\", 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\t// Clicking \"Add\" button should take you to the \"Add an app\" page\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\n\n\t\t// Clicking \"Application Wizard\" should take you to \"Is your app web or native \"\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\n\n\t\t// Clicking \"Web app\" should bring up the URL entry form and a disabled Next button\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(\".app-url-container\").exists()).to.be.true;\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\n\n\t\t// Clicking \"Native app\" should bring up a file path form and a disabled Next button\n\t\twrapper.find(\".icon-native button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(\".file-input-container\").exists()).to.be.true;\n\t\texpect(wrapper.find(\".app-edit-actions button\").prop(\"disabled\")).to.be.true;\n\n\t\t// Clicking \"Back\" should take you to \"Add an App\"\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\n\n\t\t// Clicking \"Manual Setup (Advanced)\" should take you to the form\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(\".view-container form\").exists()).to.be.true;\n\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\n\n\t\t// Clicking \"Back\" should take you to the Applications landing page\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\n\t\twrapper.unmount();\n\t});\n\n\tit(\"clicking Cancel on the Application form (Manual) should return to the Applications List\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\n\t});\n\n\tit(\"clicking Cancel on the Application form (Wizard) should return to the Applications List\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click the \"Add\" button\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cosaic.io\",\n\t\t\t},\n\t\t});\n\n\t\t// Click Next\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click Cancel\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\n\t});\n\n\tit(\"clicking Return to List should return to the Applications List (advanced)\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\twrapper.update();\n\n\t\texpect(\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\n\t\t\t\"Confirm the App tab's App Table has 0 items in it\"\n\t\t).to.be.equal(0);\n\t\texpect(\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\n\t\t\t\"Confirm the empty app list message is present\"\n\t\t).to.equal(1);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#app-name\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"Cosaic\",\n\t\t\t},\n\t\t});\n\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cosaic.io\",\n\t\t\t},\n\t\t});\n\n\t\t// Click Save\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\n\n\t\t// Click Save\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\n\t\texpect(\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-row\").length,\n\t\t\t\"Confirm a row in the App Table exists\"\n\t\t).to.be.equal(1);\n\t\texpect(\n\t\t\twrapper.find(\"[data-label='Apps'] .app-list-empty\").length,\n\t\t\t\"Confirm the empty app list message isn't visible\"\n\t\t).to.equal(0);\n\t});\n\n\tit(\"clicking Return to List should return to the Applications List (wizard)\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cosaic.io\",\n\t\t\t},\n\t\t});\n\n\t\t// Click Next\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click Save\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\".app-edit-success h2\").text()).contains(\"Your application is added\");\n\n\t\t// Click Save\n\t\twrapper.find(\".app-edit-success-actions button\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\n\t});\n\n\tit(\"should be able to back out of the application form (Wizard)\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cosaic.io\",\n\t\t\t},\n\t\t});\n\n\t\t// Click Next\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Clicking \"Back\" should take you to \"Is your app web or native?\"\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\n\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\n\n\t\twrapper.find(PAGE_HEADER_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\n\t\twrapper.unmount();\n\t});\n\n\tit(\"should be able to back out of the application form (Advanced)\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_MANUAL_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cosaic.io\",\n\t\t\t},\n\t\t});\n\n\t\t// Click Back\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Clicking \"Back\" should take you to \"Choose a method to add an application\"\n\t\texpect(wrapper.find(\".setup-type-heading\").at(0).text(), \"Setup header text contains expected title\").contains(\n\t\t\t\"Choose a method to add an app\"\n\t\t);\n\n\t\t// Click Back\n\t\twrapper.find(\".view-header button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(PAGE_HEADER).text(), \"Page header text contains expected title\").contains(\"Apps\");\n\t\twrapper.unmount();\n\t});\n\n\tit(\"clicking Add Another Application should return to Add Applications form\", async () => {\n\t\tconst wrapper = mount(<EmptyApplications {...getApplicationsArgs(\"empty\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#app-url\").simulate(\"change\", {\n\t\t\ttarget: {\n\t\t\t\tvalue: \"http://www.cosaic.io\",\n\t\t\t},\n\t\t});\n\n\t\t// Click Next\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click Save\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click Add Another Application\n\t\twrapper.find(\".app-edit-success-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\"h2\").at(0).text()).contains(\"Is your app web or native?\");\n\n\t\t// Clicking \"Back\" should take you to \"Add an app\"\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Add an app\");\n\n\t\t// Clicking \"Back\" should take you to the Applications landing page\n\t\twrapper.find(PAGE_HEADER_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\t\texpect(wrapper.find(PAGE_HEADER).text()).contains(\"Apps\");\n\t}).timeout(5000);\n\n\tit(\"form should auto-populate from wizard (Web)\", async () => {\n\t\tconst wrapper = mount(<DefaultApplications {...getApplicationsArgs(\"default\")} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#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\t// Click Next\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(\"#app-url\").prop(\"value\"), \"Url is auto-populated\").to.equal(\"http://www.google.com\");\n\t\texpect(wrapper.find(\"#app-name\").prop(\"value\"), \"Name is auto-populated to 'Google'\").to.equal(\"Google\");\n\t});\n\n\tit(\"should discard app on edit screens when user exits via external navigation\", async () => {\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#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\t// Click Next\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(0);\n\t});\n\n\tit(\"should save app on final screen when user exits via external navigation\", async () => {\n\t\tconst wrapper = mount(<DefaultSDD {...(DefaultSDD.args as SmartDesktopDesignerProps)} />);\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\n\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(ADD_NEW_APP_BUTTON).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(SETUP_WIZARD_BUTTON).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\".icon-web button\").simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(\"#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\t// Click Next\n\t\twrapper.find(\".app-edit-actions button\").at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\t// Click Save\n\t\twrapper.find(\".app-edit-actions button\").at(1).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(`.nav-item #getting-started-nav-link`).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\twrapper.find(`.nav-item #applications-nav-link`).at(0).simulate(\"click\");\n\t\tawait waitTick();\n\t\twrapper.update();\n\n\t\texpect(wrapper.find(APP_LIST_TABLE_ROW).length).to.be.equal(1);\n\t});\n});\n"]}