@nlabs/gothamui 1.8.0

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 (426) hide show
  1. package/LICENSE +21 -0
  2. package/MIGRATION.md +36 -0
  3. package/README.md +768 -0
  4. package/docs/assets/gothamui-app-architecture.svg +159 -0
  5. package/docs/assets/gothamui-logo.png +0 -0
  6. package/docs/assets/gothamui-logo.svg +42 -0
  7. package/docs/render-performance.md +34 -0
  8. package/lib/actions/GothamActions.d.ts +42 -0
  9. package/lib/actions/GothamActions.js +67 -0
  10. package/lib/actions/MarkdownActions.d.ts +4 -0
  11. package/lib/actions/MarkdownActions.js +48 -0
  12. package/lib/app.d.ts +1 -0
  13. package/lib/app.js +198 -0
  14. package/lib/components/Alert/Alert.d.ts +8 -0
  15. package/lib/components/Alert/Alert.js +24 -0
  16. package/lib/components/Alert/Alert.stories.js +59 -0
  17. package/lib/components/AuthRoute/AuthRoute.d.ts +3 -0
  18. package/lib/components/AuthRoute/AuthRoute.js +21 -0
  19. package/lib/components/AuthRoute/AuthRoute.stories.js +45 -0
  20. package/lib/components/AutocompleteField/AutocompleteField.d.ts +24 -0
  21. package/lib/components/AutocompleteField/AutocompleteField.js +148 -0
  22. package/lib/components/AutocompleteField/AutocompleteField.stories.js +62 -0
  23. package/lib/components/Avatar/Avatar.d.ts +29 -0
  24. package/lib/components/Avatar/Avatar.js +154 -0
  25. package/lib/components/Avatar/Avatar.stories.js +105 -0
  26. package/lib/components/Badge/Badge.d.ts +9 -0
  27. package/lib/components/Badge/Badge.js +22 -0
  28. package/lib/components/Badge/Badge.stories.js +53 -0
  29. package/lib/components/Breadcrumbs/Breadcrumbs.d.ts +19 -0
  30. package/lib/components/Breadcrumbs/Breadcrumbs.js +74 -0
  31. package/lib/components/Breadcrumbs/Breadcrumbs.stories.js +95 -0
  32. package/lib/components/Button/Button.d.ts +25 -0
  33. package/lib/components/Button/Button.js +157 -0
  34. package/lib/components/Button/Button.stories.js +119 -0
  35. package/lib/components/Card/Card.d.ts +8 -0
  36. package/lib/components/Card/Card.js +39 -0
  37. package/lib/components/Card/Card.stories.js +60 -0
  38. package/lib/components/CategoryGrid/CategoryGrid.d.ts +15 -0
  39. package/lib/components/CategoryGrid/CategoryGrid.js +42 -0
  40. package/lib/components/CategoryGrid/CategoryGrid.stories.js +35 -0
  41. package/lib/components/Chat/AudioMessage/AudioMessage.css +1 -0
  42. package/lib/components/Chat/AudioMessage/AudioMessage.d.ts +3 -0
  43. package/lib/components/Chat/AudioMessage/AudioMessage.js +28 -0
  44. package/lib/components/Chat/Avatar/Avatar.css +1 -0
  45. package/lib/components/Chat/Avatar/Avatar.d.ts +3 -0
  46. package/lib/components/Chat/Avatar/Avatar.js +72 -0
  47. package/lib/components/Chat/Button/Button.css +1 -0
  48. package/lib/components/Chat/Button/Button.d.ts +3 -0
  49. package/lib/components/Chat/Button/Button.js +37 -0
  50. package/lib/components/Chat/Chat.stories.js +688 -0
  51. package/lib/components/Chat/ChatItem/ChatItem.css +1 -0
  52. package/lib/components/Chat/ChatItem/ChatItem.d.ts +3 -0
  53. package/lib/components/Chat/ChatItem/ChatItem.js +183 -0
  54. package/lib/components/Chat/ChatList/ChatList.css +1 -0
  55. package/lib/components/Chat/ChatList/ChatList.d.ts +3 -0
  56. package/lib/components/Chat/ChatList/ChatList.js +84 -0
  57. package/lib/components/Chat/Circle/Circle.d.ts +3 -0
  58. package/lib/components/Chat/Circle/Circle.js +27 -0
  59. package/lib/components/Chat/Dropdown/Dropdown.css +1 -0
  60. package/lib/components/Chat/Dropdown/Dropdown.d.ts +3 -0
  61. package/lib/components/Chat/Dropdown/Dropdown.js +66 -0
  62. package/lib/components/Chat/FileMessage/FileMessage.css +1 -0
  63. package/lib/components/Chat/FileMessage/FileMessage.d.ts +3 -0
  64. package/lib/components/Chat/FileMessage/FileMessage.js +77 -0
  65. package/lib/components/Chat/Input/Input.css +1 -0
  66. package/lib/components/Chat/Input/Input.d.ts +3 -0
  67. package/lib/components/Chat/Input/Input.js +108 -0
  68. package/lib/components/Chat/LocationMessage/LocationMessage.css +1 -0
  69. package/lib/components/Chat/LocationMessage/LocationMessage.d.ts +3 -0
  70. package/lib/components/Chat/LocationMessage/LocationMessage.js +36 -0
  71. package/lib/components/Chat/MeetingItem/MeetingItem.css +1 -0
  72. package/lib/components/Chat/MeetingItem/MeetingItem.d.ts +3 -0
  73. package/lib/components/Chat/MeetingItem/MeetingItem.js +106 -0
  74. package/lib/components/Chat/MeetingLink/MeetingLink.css +1 -0
  75. package/lib/components/Chat/MeetingLink/MeetingLink.d.ts +3 -0
  76. package/lib/components/Chat/MeetingLink/MeetingLink.js +26 -0
  77. package/lib/components/Chat/MeetingList/MeetingList.css +1 -0
  78. package/lib/components/Chat/MeetingList/MeetingList.d.ts +3 -0
  79. package/lib/components/Chat/MeetingList/MeetingList.js +52 -0
  80. package/lib/components/Chat/MeetingMessage/MeetingMessage.css +1 -0
  81. package/lib/components/Chat/MeetingMessage/MeetingMessage.d.ts +3 -0
  82. package/lib/components/Chat/MeetingMessage/MeetingMessage.js +227 -0
  83. package/lib/components/Chat/MessageBox/MessageBox.css +1 -0
  84. package/lib/components/Chat/MessageBox/MessageBox.d.ts +3 -0
  85. package/lib/components/Chat/MessageBox/MessageBox.js +263 -0
  86. package/lib/components/Chat/MessageList/MessageList.css +1 -0
  87. package/lib/components/Chat/MessageList/MessageList.d.ts +2 -0
  88. package/lib/components/Chat/MessageList/MessageList.js +196 -0
  89. package/lib/components/Chat/Navbar/Navbar.css +1 -0
  90. package/lib/components/Chat/Navbar/Navbar.d.ts +3 -0
  91. package/lib/components/Chat/Navbar/Navbar.js +21 -0
  92. package/lib/components/Chat/PhotoMessage/PhotoMessage.css +1 -0
  93. package/lib/components/Chat/PhotoMessage/PhotoMessage.d.ts +3 -0
  94. package/lib/components/Chat/PhotoMessage/PhotoMessage.js +73 -0
  95. package/lib/components/Chat/Popup/Popup.css +1 -0
  96. package/lib/components/Chat/Popup/Popup.d.ts +3 -0
  97. package/lib/components/Chat/Popup/Popup.js +45 -0
  98. package/lib/components/Chat/README.md +50 -0
  99. package/lib/components/Chat/ReplyMessage/ReplyMessage.css +1 -0
  100. package/lib/components/Chat/ReplyMessage/ReplyMessage.d.ts +3 -0
  101. package/lib/components/Chat/ReplyMessage/ReplyMessage.js +42 -0
  102. package/lib/components/Chat/SideBar/SideBar.css +1 -0
  103. package/lib/components/Chat/SideBar/SideBar.d.ts +3 -0
  104. package/lib/components/Chat/SideBar/SideBar.js +21 -0
  105. package/lib/components/Chat/SpotifyMessage/SpotifyMessage.css +1 -0
  106. package/lib/components/Chat/SpotifyMessage/SpotifyMessage.d.ts +3 -0
  107. package/lib/components/Chat/SpotifyMessage/SpotifyMessage.js +28 -0
  108. package/lib/components/Chat/SystemMessage/SystemMessage.css +1 -0
  109. package/lib/components/Chat/SystemMessage/SystemMessage.d.ts +3 -0
  110. package/lib/components/Chat/SystemMessage/SystemMessage.js +14 -0
  111. package/lib/components/Chat/VideoMessage/VideoMessage.css +1 -0
  112. package/lib/components/Chat/VideoMessage/VideoMessage.d.ts +3 -0
  113. package/lib/components/Chat/VideoMessage/VideoMessage.js +88 -0
  114. package/lib/components/Chat/assets/img/leftArrow.svg +6 -0
  115. package/lib/components/Chat/assets/img/rightArrow.svg +6 -0
  116. package/lib/components/Chat/index.d.ts +25 -0
  117. package/lib/components/Chat/index.js +27 -0
  118. package/lib/components/Chat/type.d.js +52 -0
  119. package/lib/components/Chat/utils/formatRelativeDate.d.ts +4 -0
  120. package/lib/components/Chat/utils/formatRelativeDate.js +110 -0
  121. package/lib/components/Checkbox/Checkbox.d.ts +15 -0
  122. package/lib/components/Checkbox/Checkbox.js +106 -0
  123. package/lib/components/Checkbox/Checkbox.stories.js +51 -0
  124. package/lib/components/ComponentUtils/renderWithAsChild.d.ts +9 -0
  125. package/lib/components/ComponentUtils/renderWithAsChild.js +27 -0
  126. package/lib/components/Container/Container.d.ts +7 -0
  127. package/lib/components/Container/Container.js +16 -0
  128. package/lib/components/Container/Container.stories.js +36 -0
  129. package/lib/components/DateField/DateField.d.ts +22 -0
  130. package/lib/components/DateField/DateField.js +145 -0
  131. package/lib/components/DateField/DateField.stories.js +125 -0
  132. package/lib/components/DateField/DatePicker.d.ts +9 -0
  133. package/lib/components/DateField/DatePicker.js +205 -0
  134. package/lib/components/DateField/DatePicker.stories.js +33 -0
  135. package/lib/components/DescriptionList/DescriptionList.d.ts +4 -0
  136. package/lib/components/DescriptionList/DescriptionList.js +19 -0
  137. package/lib/components/DescriptionList/DescriptionList.stories.js +34 -0
  138. package/lib/components/Dialog/Dialog.d.ts +25 -0
  139. package/lib/components/Dialog/Dialog.js +66 -0
  140. package/lib/components/Dialog/Dialog.stories.js +88 -0
  141. package/lib/components/DropUpload/DropUpload.d.ts +37 -0
  142. package/lib/components/DropUpload/DropUpload.js +323 -0
  143. package/lib/components/DropUpload/DropUpload.stories.js +48 -0
  144. package/lib/components/Empty/Empty.d.ts +11 -0
  145. package/lib/components/Empty/Empty.js +39 -0
  146. package/lib/components/Empty/Empty.stories.js +52 -0
  147. package/lib/components/EmptyState/EmptyState.d.ts +15 -0
  148. package/lib/components/EmptyState/EmptyState.js +44 -0
  149. package/lib/components/EmptyState/EmptyState.stories.js +36 -0
  150. package/lib/components/ErrorMessage/ErrorMessage.d.ts +7 -0
  151. package/lib/components/ErrorMessage/ErrorMessage.js +20 -0
  152. package/lib/components/ErrorMessage/ErrorMessage.stories.js +25 -0
  153. package/lib/components/FaqSection/FaqSection.d.ts +14 -0
  154. package/lib/components/FaqSection/FaqSection.js +37 -0
  155. package/lib/components/FaqSection/FaqSection.stories.js +31 -0
  156. package/lib/components/Fieldset/Fieldset.d.ts +21 -0
  157. package/lib/components/Fieldset/Fieldset.js +39 -0
  158. package/lib/components/Fieldset/Fieldset.stories.js +42 -0
  159. package/lib/components/Footer/Footer.d.ts +26 -0
  160. package/lib/components/Footer/Footer.js +119 -0
  161. package/lib/components/Footer/Footer.stories.js +184 -0
  162. package/lib/components/Form/Form.d.ts +42 -0
  163. package/lib/components/Form/Form.js +198 -0
  164. package/lib/components/Form/Form.stories.js +65 -0
  165. package/lib/components/Form/FormContext.d.ts +35 -0
  166. package/lib/components/Form/FormContext.js +71 -0
  167. package/lib/components/GothamRoute/GothamRoute.d.ts +0 -0
  168. package/lib/components/GothamRoute/GothamRoute.js +56 -0
  169. package/lib/components/GothamRouter/GothamRouter.d.ts +0 -0
  170. package/lib/components/GothamRouter/GothamRouter.js +52 -0
  171. package/lib/components/Heading/Heading.d.ts +7 -0
  172. package/lib/components/Heading/Heading.js +20 -0
  173. package/lib/components/Heading/Heading.stories.js +51 -0
  174. package/lib/components/IncentiveGrid/IncentiveGrid.d.ts +15 -0
  175. package/lib/components/IncentiveGrid/IncentiveGrid.js +34 -0
  176. package/lib/components/IncentiveGrid/IncentiveGrid.stories.js +41 -0
  177. package/lib/components/InputField/InputField.d.ts +25 -0
  178. package/lib/components/InputField/InputField.js +68 -0
  179. package/lib/components/InputField/InputField.stories.js +58 -0
  180. package/lib/components/Item/Item.d.ts +25 -0
  181. package/lib/components/Item/Item.js +79 -0
  182. package/lib/components/Item/Item.stories.js +94 -0
  183. package/lib/components/Kbd/Kbd.d.ts +2 -0
  184. package/lib/components/Kbd/Kbd.js +9 -0
  185. package/lib/components/Kbd/Kbd.stories.js +24 -0
  186. package/lib/components/Label/Label.d.ts +11 -0
  187. package/lib/components/Label/Label.js +23 -0
  188. package/lib/components/Label/Label.stories.js +38 -0
  189. package/lib/components/Link/Link.d.ts +7 -0
  190. package/lib/components/Link/Link.js +13 -0
  191. package/lib/components/Link/Link.stories.js +28 -0
  192. package/lib/components/ListContainer/ListContainer.d.ts +8 -0
  193. package/lib/components/ListContainer/ListContainer.js +14 -0
  194. package/lib/components/ListContainer/ListContainer.stories.js +45 -0
  195. package/lib/components/Loader/Loader.d.ts +9 -0
  196. package/lib/components/Loader/Loader.js +36 -0
  197. package/lib/components/Loader/Loader.stories.js +94 -0
  198. package/lib/components/LogoCloud/LogoCloud.d.ts +15 -0
  199. package/lib/components/LogoCloud/LogoCloud.js +43 -0
  200. package/lib/components/LogoCloud/LogoCloud.stories.js +28 -0
  201. package/lib/components/Markdown/Markdown.d.ts +8 -0
  202. package/lib/components/Markdown/Markdown.js +64 -0
  203. package/lib/components/Markdown/Markdown.stories.js +34 -0
  204. package/lib/components/MediaLightbox/MediaLightbox.d.ts +22 -0
  205. package/lib/components/MediaLightbox/MediaLightbox.js +80 -0
  206. package/lib/components/MediaObject/MediaObject.d.ts +8 -0
  207. package/lib/components/MediaObject/MediaObject.js +37 -0
  208. package/lib/components/MediaObject/MediaObject.stories.js +28 -0
  209. package/lib/components/Navbar/Navbar.d.ts +43 -0
  210. package/lib/components/Navbar/Navbar.js +213 -0
  211. package/lib/components/Navbar/Navbar.stories.js +235 -0
  212. package/lib/components/NotFound/NotFound.d.ts +34 -0
  213. package/lib/components/NotFound/NotFound.js +351 -0
  214. package/lib/components/NotFound/NotFound.stories.js +80 -0
  215. package/lib/components/Notify/Notify.d.ts +18 -0
  216. package/lib/components/Notify/Notify.js +178 -0
  217. package/lib/components/Notify/Notify.stories.js +148 -0
  218. package/lib/components/Notify/NotifyExample.d.ts +1 -0
  219. package/lib/components/Notify/NotifyExample.js +174 -0
  220. package/lib/components/Notify/README.md +103 -0
  221. package/lib/components/Pagination/Pagination.d.ts +18 -0
  222. package/lib/components/Pagination/Pagination.js +225 -0
  223. package/lib/components/Pagination/Pagination.stories.js +69 -0
  224. package/lib/components/PasswordStrengthMeter/PasswordStrengthMeter.d.ts +12 -0
  225. package/lib/components/PasswordStrengthMeter/PasswordStrengthMeter.js +88 -0
  226. package/lib/components/PasswordStrengthMeter/PasswordStrengthMeter.stories.js +16 -0
  227. package/lib/components/PaymentMethodPanel/PaymentMethodPanel.d.ts +18 -0
  228. package/lib/components/PaymentMethodPanel/PaymentMethodPanel.js +113 -0
  229. package/lib/components/PaymentMethodPanel/PaymentMethodPanel.stories.js +88 -0
  230. package/lib/components/Pricing/Pricing.d.ts +78 -0
  231. package/lib/components/Pricing/Pricing.js +764 -0
  232. package/lib/components/Pricing/Pricing.stories.js +146 -0
  233. package/lib/components/ProductGrid/ProductGrid.d.ts +23 -0
  234. package/lib/components/ProductGrid/ProductGrid.js +79 -0
  235. package/lib/components/ProductGrid/ProductGrid.stories.js +50 -0
  236. package/lib/components/ProgressSteps/ProgressSteps.d.ts +13 -0
  237. package/lib/components/ProgressSteps/ProgressSteps.js +51 -0
  238. package/lib/components/ProgressSteps/ProgressSteps.stories.js +35 -0
  239. package/lib/components/RadioField/RadioField.d.ts +16 -0
  240. package/lib/components/RadioField/RadioField.js +63 -0
  241. package/lib/components/RadioField/RadioField.stories.js +140 -0
  242. package/lib/components/ReviewList/ReviewList.d.ts +15 -0
  243. package/lib/components/ReviewList/ReviewList.js +51 -0
  244. package/lib/components/ReviewList/ReviewList.stories.js +29 -0
  245. package/lib/components/SectionHeader/SectionHeader.d.ts +9 -0
  246. package/lib/components/SectionHeader/SectionHeader.js +36 -0
  247. package/lib/components/SectionHeader/SectionHeader.stories.js +35 -0
  248. package/lib/components/SelectField/SelectField.d.ts +18 -0
  249. package/lib/components/SelectField/SelectField.js +145 -0
  250. package/lib/components/SelectField/SelectField.stories.js +155 -0
  251. package/lib/components/SelectField/SelectOption.d.ts +13 -0
  252. package/lib/components/SelectField/SelectOption.js +40 -0
  253. package/lib/components/SelectField/SelectOption.stories.js +40 -0
  254. package/lib/components/Separator/Separator.d.ts +6 -0
  255. package/lib/components/Separator/Separator.js +13 -0
  256. package/lib/components/Separator/Separator.stories.js +70 -0
  257. package/lib/components/Skeleton/Skeleton.d.ts +2 -0
  258. package/lib/components/Skeleton/Skeleton.js +9 -0
  259. package/lib/components/Skeleton/Skeleton.stories.js +24 -0
  260. package/lib/components/Svg/Svg.d.ts +9 -0
  261. package/lib/components/Svg/Svg.js +25 -0
  262. package/lib/components/Svg/Svg.stories.js +34 -0
  263. package/lib/components/Switch/Switch.d.ts +12 -0
  264. package/lib/components/Switch/Switch.js +54 -0
  265. package/lib/components/Switch/Switch.stories.js +61 -0
  266. package/lib/components/Table/Table.d.ts +18 -0
  267. package/lib/components/Table/Table.js +99 -0
  268. package/lib/components/Table/Table.stories.js +79 -0
  269. package/lib/components/Tabs/Tabs.d.ts +17 -0
  270. package/lib/components/Tabs/Tabs.js +85 -0
  271. package/lib/components/Tabs/Tabs.stories.js +45 -0
  272. package/lib/components/Text/Text.d.ts +5 -0
  273. package/lib/components/Text/Text.js +24 -0
  274. package/lib/components/Text/Text.stories.js +35 -0
  275. package/lib/components/TextField/TextField.d.ts +31 -0
  276. package/lib/components/TextField/TextField.js +91 -0
  277. package/lib/components/TextField/TextField.stories.js +158 -0
  278. package/lib/components/Textarea/Textarea.d.ts +5 -0
  279. package/lib/components/Textarea/Textarea.js +10 -0
  280. package/lib/components/Textarea/Textarea.stories.js +32 -0
  281. package/lib/components/index.d.ts +60 -0
  282. package/lib/components/index.js +62 -0
  283. package/lib/config/appConfig.d.ts +5 -0
  284. package/lib/config/appConfig.js +20 -0
  285. package/lib/constants/AuthConstants.d.ts +8 -0
  286. package/lib/constants/AuthConstants.js +9 -0
  287. package/lib/constants/GothamConstants.d.ts +24 -0
  288. package/lib/constants/GothamConstants.js +25 -0
  289. package/lib/constants/MarkdownConstants.d.ts +8 -0
  290. package/lib/constants/MarkdownConstants.js +9 -0
  291. package/lib/constants/MessageConstants.d.ts +10 -0
  292. package/lib/constants/MessageConstants.js +11 -0
  293. package/lib/docs/analytics.md +231 -0
  294. package/lib/docs/api-reference.md +364 -0
  295. package/lib/docs/comparison.md +83 -0
  296. package/lib/docs/containers.md +11 -0
  297. package/lib/docs/gettingStarted.md +338 -0
  298. package/lib/docs/payments.md +79 -0
  299. package/lib/editor/CodeEditor.d.ts +11 -0
  300. package/lib/editor/CodeEditor.js +15 -0
  301. package/lib/editor/CodeEditor.stories.js +24 -0
  302. package/lib/editor/index.d.ts +1 -0
  303. package/lib/editor/index.js +3 -0
  304. package/lib/errors/UserError.d.ts +8 -0
  305. package/lib/errors/UserError.js +12 -0
  306. package/lib/examples/OptimizedFormExample.d.ts +1 -0
  307. package/lib/examples/OptimizedFormExample.js +130 -0
  308. package/lib/form/index.d.ts +11 -0
  309. package/lib/form/index.js +13 -0
  310. package/lib/hooks/useIsMobile.d.ts +1 -0
  311. package/lib/hooks/useIsMobile.js +12 -0
  312. package/lib/i18n/index.d.ts +8 -0
  313. package/lib/i18n/index.js +7 -0
  314. package/lib/icons/Dual Ring-1s-100px.svg +1 -0
  315. package/lib/icons/gotham-logo.svg +17 -0
  316. package/lib/icons/gotham.svg +8 -0
  317. package/lib/icons/index.d.ts +5 -0
  318. package/lib/icons/index.js +6 -0
  319. package/lib/icons/pencil.svg +6 -0
  320. package/lib/img/arkhamjs-logo.png +0 -0
  321. package/lib/img/logo.png +0 -0
  322. package/lib/index.d.ts +25 -0
  323. package/lib/index.js +25 -0
  324. package/lib/router/index.d.ts +5 -0
  325. package/lib/router/index.js +6 -0
  326. package/lib/stores/GothamAppStore.d.ts +35 -0
  327. package/lib/stores/GothamAppStore.js +70 -0
  328. package/lib/stories/Button.d.ts +28 -0
  329. package/lib/stories/Button.js +22 -0
  330. package/lib/stories/Header.d.ts +12 -0
  331. package/lib/stories/Header.js +78 -0
  332. package/lib/stories/Page.d.ts +3 -0
  333. package/lib/stories/Page.js +108 -0
  334. package/lib/stories/assets/accessibility.png +0 -0
  335. package/lib/stories/assets/accessibility.svg +5 -0
  336. package/lib/stories/assets/addon-library.png +0 -0
  337. package/lib/stories/assets/assets.png +0 -0
  338. package/lib/stories/assets/context.png +0 -0
  339. package/lib/stories/assets/discord.svg +15 -0
  340. package/lib/stories/assets/docs.png +0 -0
  341. package/lib/stories/assets/figma-plugin.png +0 -0
  342. package/lib/stories/assets/github.svg +3 -0
  343. package/lib/stories/assets/share.png +0 -0
  344. package/lib/stories/assets/styling.png +0 -0
  345. package/lib/stories/assets/testing.png +0 -0
  346. package/lib/stories/assets/theming.png +0 -0
  347. package/lib/stories/assets/tutorials.svg +12 -0
  348. package/lib/stories/assets/youtube.svg +4 -0
  349. package/lib/stories/button.css +1 -0
  350. package/lib/stories/header.css +1 -0
  351. package/lib/stories/page.css +1 -0
  352. package/lib/styles/chat.css +1 -0
  353. package/lib/styles/index.css +2 -0
  354. package/lib/styles/tailwind.css +1 -0
  355. package/lib/types/assets.d.js +2 -0
  356. package/lib/types/gotham.d.ts +12 -0
  357. package/lib/types/gotham.js +3 -0
  358. package/lib/types/vitest-globals.d.js +3 -0
  359. package/lib/utils/GothamContext.d.ts +14 -0
  360. package/lib/utils/GothamContext.js +14 -0
  361. package/lib/utils/awsRum.d.ts +23 -0
  362. package/lib/utils/awsRum.js +50 -0
  363. package/lib/utils/colorUtils.d.ts +20 -0
  364. package/lib/utils/colorUtils.js +499 -0
  365. package/lib/utils/contentUtils.d.ts +2 -0
  366. package/lib/utils/contentUtils.js +18 -0
  367. package/lib/utils/i18nUtil.d.ts +1 -0
  368. package/lib/utils/i18nUtil.js +7 -0
  369. package/lib/utils/imageUtils.d.ts +5 -0
  370. package/lib/utils/imageUtils.js +48 -0
  371. package/lib/utils/interactionAnalytics.d.ts +10 -0
  372. package/lib/utils/interactionAnalytics.js +142 -0
  373. package/lib/utils/navEventQueue.d.ts +6 -0
  374. package/lib/utils/navEventQueue.js +50 -0
  375. package/lib/utils/refUtils.d.ts +2 -0
  376. package/lib/utils/refUtils.js +11 -0
  377. package/lib/utils/routeUtils.d.ts +12 -0
  378. package/lib/utils/routeUtils.js +109 -0
  379. package/lib/utils/sizeUtils.d.ts +5 -0
  380. package/lib/utils/sizeUtils.js +6 -0
  381. package/lib/utils/storyInteractions.d.ts +6 -0
  382. package/lib/utils/storyInteractions.js +45 -0
  383. package/lib/utils/storyUtils.d.ts +1 -0
  384. package/lib/utils/storyUtils.js +11 -0
  385. package/lib/utils/testUtils.d.ts +3 -0
  386. package/lib/utils/testUtils.js +56 -0
  387. package/lib/utils/timer.d.ts +21 -0
  388. package/lib/utils/timer.js +38 -0
  389. package/lib/utils/useBreakpoint.d.ts +6 -0
  390. package/lib/utils/useBreakpoint.js +56 -0
  391. package/lib/utils/viewPerformance.d.ts +34 -0
  392. package/lib/utils/viewPerformance.js +103 -0
  393. package/lib/utils/viewUtils.d.ts +9 -0
  394. package/lib/utils/viewUtils.js +44 -0
  395. package/lib/views/AuthSignInView/AuthSignInView.d.ts +20 -0
  396. package/lib/views/AuthSignInView/AuthSignInView.js +107 -0
  397. package/lib/views/AuthSignInView/AuthSignInView.stories.js +29 -0
  398. package/lib/views/AuthSignUpView/AuthSignUpView.d.ts +21 -0
  399. package/lib/views/AuthSignUpView/AuthSignUpView.js +146 -0
  400. package/lib/views/AuthSignUpView/AuthSignUpView.stories.js +30 -0
  401. package/lib/views/AuthView/AuthView.d.ts +16 -0
  402. package/lib/views/AuthView/AuthView.js +60 -0
  403. package/lib/views/AuthView/AuthView.stories.js +34 -0
  404. package/lib/views/DefaultView/DefaultView.d.ts +5 -0
  405. package/lib/views/DefaultView/DefaultView.js +134 -0
  406. package/lib/views/Gotham/Gotham.d.ts +44 -0
  407. package/lib/views/Gotham/Gotham.js +24 -0
  408. package/lib/views/Gotham/Gotham.stories.js +31 -0
  409. package/lib/views/Gotham/GothamListeners.d.ts +0 -0
  410. package/lib/views/Gotham/GothamListeners.js +2 -0
  411. package/lib/views/Gotham/GothamProvider.d.ts +43 -0
  412. package/lib/views/Gotham/GothamProvider.js +217 -0
  413. package/lib/views/Gotham/GothamRoot.d.ts +6 -0
  414. package/lib/views/Gotham/GothamRoot.js +69 -0
  415. package/lib/views/HomeView/HomeView.d.ts +10 -0
  416. package/lib/views/HomeView/HomeView.js +134 -0
  417. package/lib/views/LoaderView/LoaderView.d.ts +8 -0
  418. package/lib/views/LoaderView/LoaderView.js +30 -0
  419. package/lib/views/MenuView/MenuView.d.ts +13 -0
  420. package/lib/views/MenuView/MenuView.js +305 -0
  421. package/lib/views/NotFoundView/NotFoundView.d.ts +2 -0
  422. package/lib/views/NotFoundView/NotFoundView.js +12 -0
  423. package/lib/views/index.d.ts +11 -0
  424. package/lib/views/index.js +13 -0
  425. package/package.json +202 -0
  426. package/styles/tailwind.css +1 -0
@@ -0,0 +1,178 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2018-Present, Nitrogen Labs, Inc.
4
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
5
+ */ import { Transition } from '@headlessui/react';
6
+ import { useFluxListener } from '@nlabs/arkhamjs-utils-react';
7
+ import { cn } from '@nlabs/utils';
8
+ import { Fragment, useEffect, useRef, useState } from 'react';
9
+ import { GothamConstants } from '../../constants/GothamConstants.js';
10
+ import { Svg } from '../Svg/Svg.js';
11
+ // Custom Button component
12
+ const Button = ({ children, onClick, className = '' })=>/*#__PURE__*/ _jsx("button", {
13
+ className: cn('inline-flex items-center px-4 py-2 border border-transparent text-sm font-medium rounded-md shadow-sm', 'text-white bg-indigo-600 hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500', className),
14
+ onClick: onClick,
15
+ type: "button",
16
+ children: children
17
+ });
18
+ // Custom IconButton component
19
+ const IconButton = ({ children, onClick, className = '' })=>/*#__PURE__*/ _jsx("button", {
20
+ className: cn('p-1 rounded-full hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500', className),
21
+ onClick: onClick,
22
+ type: "button",
23
+ children: children
24
+ });
25
+ // Custom Alert component
26
+ const Alert = ({ children, severity, onClose })=>{
27
+ const bgColors = {
28
+ error: 'bg-red-500',
29
+ info: 'bg-blue-500',
30
+ success: 'bg-green-500',
31
+ warning: 'bg-yellow-500'
32
+ };
33
+ return /*#__PURE__*/ _jsxs("div", {
34
+ className: cn('rounded-md p-4 w-full flex items-start justify-between gap-3', bgColors[severity] || 'bg-gray-500', 'text-white'),
35
+ children: [
36
+ /*#__PURE__*/ _jsx("div", {
37
+ className: "min-w-0 whitespace-normal break-words leading-relaxed [overflow-wrap:anywhere]",
38
+ children: children
39
+ }),
40
+ onClose && /*#__PURE__*/ _jsx("button", {
41
+ "aria-label": "Dismiss",
42
+ className: "-mx-1.5 -my-1.5 inline-flex shrink-0 rounded-md p-1.5 text-white hover:bg-black/20 focus:outline-none focus:ring-2 focus:ring-white",
43
+ onClick: onClose,
44
+ type: "button",
45
+ children: /*#__PURE__*/ _jsx("svg", {
46
+ className: "h-5 w-5",
47
+ fill: "currentColor",
48
+ viewBox: "0 0 20 20",
49
+ xmlns: "http://www.w3.org/2000/svg",
50
+ children: /*#__PURE__*/ _jsx("path", {
51
+ clipRule: "evenodd",
52
+ d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",
53
+ fillRule: "evenodd"
54
+ })
55
+ })
56
+ })
57
+ ]
58
+ });
59
+ };
60
+ export const Notify = ()=>{
61
+ const [isOpen, setOpen] = useState(false);
62
+ const [isHovered, setHovered] = useState(false);
63
+ const [notification, setNotification] = useState({});
64
+ const remainingDurationRef = useRef(undefined);
65
+ const timerStartedAtRef = useRef(0);
66
+ const notifyClose = ()=>{
67
+ remainingDurationRef.current = undefined;
68
+ timerStartedAtRef.current = 0;
69
+ setOpen(false);
70
+ };
71
+ useEffect(()=>{
72
+ if (isOpen && notification.autoHideDuration && !isHovered) {
73
+ const duration = remainingDurationRef.current ?? notification.autoHideDuration;
74
+ timerStartedAtRef.current = Date.now();
75
+ const id = setTimeout(()=>{
76
+ notifyClose();
77
+ }, duration);
78
+ return ()=>{
79
+ clearTimeout(id);
80
+ remainingDurationRef.current = Math.max(0, duration - (Date.now() - timerStartedAtRef.current));
81
+ };
82
+ }
83
+ return undefined;
84
+ }, [
85
+ isHovered,
86
+ isOpen,
87
+ notification.autoHideDuration
88
+ ]);
89
+ const notifyOpen = ({ actions = [], autoHideDuration = 15000, message, severity, anchorOrigin = {
90
+ horizontal: 'left',
91
+ vertical: 'bottom'
92
+ }, ...restProps })=>{
93
+ remainingDurationRef.current = autoHideDuration;
94
+ setHovered(false);
95
+ setNotification({
96
+ ...restProps,
97
+ actions,
98
+ anchorOrigin,
99
+ autoHideDuration,
100
+ message: severity ? /*#__PURE__*/ _jsx(Alert, {
101
+ onClose: notifyClose,
102
+ severity: severity,
103
+ children: message
104
+ }) : message,
105
+ severity
106
+ });
107
+ setOpen(true);
108
+ };
109
+ useFluxListener(GothamConstants.NOTIFY_OPEN, notifyOpen);
110
+ useFluxListener(GothamConstants.NOTIFY_CLOSE, notifyClose);
111
+ const positionClasses = (()=>{
112
+ const { horizontal = 'left', vertical = 'bottom' } = notification.anchorOrigin || {};
113
+ const positions = {
114
+ bottom: {
115
+ center: 'bottom-4 left-1/2 transform -translate-x-1/2',
116
+ left: 'bottom-4 left-4',
117
+ right: 'bottom-4 right-4'
118
+ },
119
+ top: {
120
+ center: 'top-4 left-1/2 transform -translate-x-1/2',
121
+ left: 'top-4 left-4',
122
+ right: 'top-4 right-4'
123
+ }
124
+ };
125
+ return positions[vertical][horizontal];
126
+ })();
127
+ return /*#__PURE__*/ _jsx(Transition, {
128
+ as: Fragment,
129
+ enter: "transform ease-out duration-300 transition",
130
+ enterFrom: "translate-y-2 opacity-0 sm:translate-y-0 sm:translate-x-2",
131
+ enterTo: "translate-y-0 opacity-100 sm:translate-x-0",
132
+ leave: "transition ease-in duration-100",
133
+ leaveFrom: "opacity-100",
134
+ leaveTo: "opacity-0",
135
+ show: isOpen,
136
+ children: /*#__PURE__*/ _jsx("div", {
137
+ className: cn('fixed z-50 w-[min(960px,calc(100vw-2rem))] max-w-[min(960px,calc(100vw-2rem))] shadow-lg rounded-lg pointer-events-auto overflow-hidden', positionClasses),
138
+ onMouseEnter: ()=>setHovered(true),
139
+ onMouseLeave: ()=>setHovered(false),
140
+ children: /*#__PURE__*/ _jsx("div", {
141
+ className: "ring-1 ring-black ring-opacity-5 bg-white",
142
+ children: !notification.severity ? /*#__PURE__*/ _jsx("div", {
143
+ className: "p-4",
144
+ children: /*#__PURE__*/ _jsxs("div", {
145
+ className: "flex items-start",
146
+ children: [
147
+ /*#__PURE__*/ _jsx("div", {
148
+ className: "flex-1",
149
+ children: notification.message
150
+ }),
151
+ notification.actions?.length && /*#__PURE__*/ _jsx("div", {
152
+ className: "ml-4 shrink-0 flex",
153
+ children: notification.actions.map(({ icon, label, onClick }, index)=>/*#__PURE__*/ _jsx(Fragment, {
154
+ children: icon ? /*#__PURE__*/ _jsx(IconButton, {
155
+ onClick: ()=>onClick('notification'),
156
+ children: /*#__PURE__*/ _jsx(Svg, {
157
+ color: "inherit",
158
+ height: 24,
159
+ name: icon,
160
+ width: 24
161
+ })
162
+ }) : /*#__PURE__*/ _jsx(Button, {
163
+ onClick: ()=>onClick('notification'),
164
+ children: label
165
+ })
166
+ }, index))
167
+ })
168
+ ]
169
+ })
170
+ }) : /*#__PURE__*/ _jsx("div", {
171
+ children: notification.message
172
+ })
173
+ })
174
+ })
175
+ });
176
+ };
177
+
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL05vdGlmeS9Ob3RpZnkudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge1RyYW5zaXRpb259IGZyb20gJ0BoZWFkbGVzc3VpL3JlYWN0JztcbmltcG9ydCB7dXNlRmx1eExpc3RlbmVyfSBmcm9tICdAbmxhYnMvYXJraGFtanMtdXRpbHMtcmVhY3QnO1xuaW1wb3J0IHtjbn0gZnJvbSAnQG5sYWJzL3V0aWxzJztcbmltcG9ydCB7RnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQge0dvdGhhbUNvbnN0YW50c30gZnJvbSAnLi4vLi4vY29uc3RhbnRzL0dvdGhhbUNvbnN0YW50cy5qcyc7XG5pbXBvcnQge1N2Z30gZnJvbSAnLi4vU3ZnL1N2Zy5qcyc7XG5cbmltcG9ydCB0eXBlIHtSZWFjdEVsZW1lbnR9IGZyb20gJ3JlYWN0JztcblxuZXhwb3J0IGludGVyZmFjZSBHb3RoYW1Ob3RpZnlBY3Rpb24ge1xuICByZWFkb25seSBpY29uPzogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbD86IHN0cmluZztcbiAgcmVhZG9ubHkgb25DbGljazogKGtleTogc3RyaW5nKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBHb3RoYW1TZXZlcml0eSA9ICdlcnJvcicgfCAnaW5mbycgfCAnc3VjY2VzcycgfCAnd2FybmluZyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR290aGFtTm90aWZ5UGFyYW1zIHtcbiAgcmVhZG9ubHkgYWN0aW9ucz86IEdvdGhhbU5vdGlmeUFjdGlvbltdO1xuICByZWFkb25seSBhbmNob3JPcmlnaW4/OiB7XG4gICAgdmVydGljYWw6ICd0b3AnIHwgJ2JvdHRvbSc7XG4gICAgaG9yaXpvbnRhbDogJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnO1xuICB9O1xuICByZWFkb25seSBhdXRvSGlkZUR1cmF0aW9uPzogbnVtYmVyO1xuICByZWFkb25seSBtZXNzYWdlPzogUmVhY3RFbGVtZW50IHwgc3RyaW5nO1xuICByZWFkb25seSBzZXZlcml0eT86IEdvdGhhbVNldmVyaXR5O1xufVxuXG4vLyBDdXN0b20gQnV0dG9uIGNvbXBvbmVudFxuY29uc3QgQnV0dG9uID0gKHtjaGlsZHJlbiwgb25DbGljaywgY2xhc3NOYW1lID0gJyd9KSA9PiAoXG4gIDxidXR0b25cbiAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgJ2lubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBweC00IHB5LTIgYm9yZGVyIGJvcmRlci10cmFuc3BhcmVudCB0ZXh0LXNtIGZvbnQtbWVkaXVtIHJvdW5kZWQtbWQgc2hhZG93LXNtJyxcbiAgICAgICd0ZXh0LXdoaXRlIGJnLWluZGlnby02MDAgaG92ZXI6YmctaW5kaWdvLTcwMCBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctb2Zmc2V0LTIgZm9jdXM6cmluZy1pbmRpZ28tNTAwJyxcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgb25DbGljaz17b25DbGlja31cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9idXR0b24+XG4pO1xuXG4vLyBDdXN0b20gSWNvbkJ1dHRvbiBjb21wb25lbnRcbmNvbnN0IEljb25CdXR0b24gPSAoe2NoaWxkcmVuLCBvbkNsaWNrLCBjbGFzc05hbWUgPSAnJ30pID0+IChcbiAgPGJ1dHRvblxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAncC0xIHJvdW5kZWQtZnVsbCBob3ZlcjpiZy1ncmF5LTIwMCBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctb2Zmc2V0LTIgZm9jdXM6cmluZy1pbmRpZ28tNTAwJyxcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgb25DbGljaz17b25DbGlja31cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9idXR0b24+XG4pO1xuXG4vLyBDdXN0b20gQWxlcnQgY29tcG9uZW50XG5jb25zdCBBbGVydCA9ICh7Y2hpbGRyZW4sIHNldmVyaXR5LCBvbkNsb3NlfSkgPT4ge1xuICBjb25zdCBiZ0NvbG9ycyA9IHtcbiAgICBlcnJvcjogJ2JnLXJlZC01MDAnLFxuICAgIGluZm86ICdiZy1ibHVlLTUwMCcsXG4gICAgc3VjY2VzczogJ2JnLWdyZWVuLTUwMCcsXG4gICAgd2FybmluZzogJ2JnLXllbGxvdy01MDAnXG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y24oXG4gICAgICAncm91bmRlZC1tZCBwLTQgdy1mdWxsIGZsZXggaXRlbXMtc3RhcnQganVzdGlmeS1iZXR3ZWVuIGdhcC0zJyxcbiAgICAgIGJnQ29sb3JzW3NldmVyaXR5XSB8fCAnYmctZ3JheS01MDAnLFxuICAgICAgJ3RleHQtd2hpdGUnXG4gICAgKX0+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1pbi13LTAgd2hpdGVzcGFjZS1ub3JtYWwgYnJlYWstd29yZHMgbGVhZGluZy1yZWxheGVkIFtvdmVyZmxvdy13cmFwOmFueXdoZXJlXVwiPntjaGlsZHJlbn08L2Rpdj5cbiAgICAgIHtvbkNsb3NlICYmIChcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJEaXNtaXNzXCJcbiAgICAgICAgICBjbGFzc05hbWU9XCItbXgtMS41IC1teS0xLjUgaW5saW5lLWZsZXggc2hyaW5rLTAgcm91bmRlZC1tZCBwLTEuNSB0ZXh0LXdoaXRlIGhvdmVyOmJnLWJsYWNrLzIwIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy13aGl0ZVwiXG4gICAgICAgICAgb25DbGljaz17b25DbG9zZX1cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzdmcgY2xhc3NOYW1lPVwiaC01IHctNVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgPHBhdGggY2xpcFJ1bGU9XCJldmVub2RkXCIgZD1cIk00LjI5MyA0LjI5M2ExIDEgMCAwMTEuNDE0IDBMMTAgOC41ODZsNC4yOTMtNC4yOTNhMSAxIDAgMTExLjQxNCAxLjQxNEwxMS40MTQgMTBsNC4yOTMgNC4yOTNhMSAxIDAgMDEtMS40MTQgMS40MTRMMTAgMTEuNDE0bC00LjI5MyA0LjI5M2ExIDEgMCAwMS0xLjQxNC0xLjQxNEw4LjU4NiAxMCA0LjI5MyA1LjcwN2ExIDEgMCAwMTAtMS40MTR6XCIgZmlsbFJ1bGU9XCJldmVub2RkXCIgLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IE5vdGlmeSA9ICgpID0+IHtcbiAgY29uc3QgW2lzT3Blbiwgc2V0T3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc0hvdmVyZWQsIHNldEhvdmVyZWRdID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbbm90aWZpY2F0aW9uLCBzZXROb3RpZmljYXRpb25dID0gdXNlU3RhdGU8R290aGFtTm90aWZ5UGFyYW1zPih7fSk7XG4gIGNvbnN0IHJlbWFpbmluZ0R1cmF0aW9uUmVmID0gdXNlUmVmPG51bWJlciB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgY29uc3QgdGltZXJTdGFydGVkQXRSZWYgPSB1c2VSZWYoMCk7XG5cbiAgY29uc3Qgbm90aWZ5Q2xvc2UgPSAoKSA9PiB7XG4gICAgcmVtYWluaW5nRHVyYXRpb25SZWYuY3VycmVudCA9IHVuZGVmaW5lZDtcbiAgICB0aW1lclN0YXJ0ZWRBdFJlZi5jdXJyZW50ID0gMDtcbiAgICBzZXRPcGVuKGZhbHNlKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmKGlzT3BlbiAmJiBub3RpZmljYXRpb24uYXV0b0hpZGVEdXJhdGlvbiAmJiAhaXNIb3ZlcmVkKSB7XG4gICAgICBjb25zdCBkdXJhdGlvbiA9IHJlbWFpbmluZ0R1cmF0aW9uUmVmLmN1cnJlbnQgPz8gbm90aWZpY2F0aW9uLmF1dG9IaWRlRHVyYXRpb247XG4gICAgICB0aW1lclN0YXJ0ZWRBdFJlZi5jdXJyZW50ID0gRGF0ZS5ub3coKTtcbiAgICAgIGNvbnN0IGlkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIG5vdGlmeUNsb3NlKCk7XG4gICAgICB9LCBkdXJhdGlvbik7XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGNsZWFyVGltZW91dChpZCk7XG4gICAgICAgIHJlbWFpbmluZ0R1cmF0aW9uUmVmLmN1cnJlbnQgPSBNYXRoLm1heCgwLCBkdXJhdGlvbiAtIChEYXRlLm5vdygpIC0gdGltZXJTdGFydGVkQXRSZWYuY3VycmVudCkpO1xuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9LCBbaXNIb3ZlcmVkLCBpc09wZW4sIG5vdGlmaWNhdGlvbi5hdXRvSGlkZUR1cmF0aW9uXSk7XG5cbiAgY29uc3Qgbm90aWZ5T3BlbiA9ICh7XG4gICAgYWN0aW9ucyA9IFtdLFxuICAgIGF1dG9IaWRlRHVyYXRpb24gPSAxNTAwMCxcbiAgICBtZXNzYWdlLFxuICAgIHNldmVyaXR5LFxuICAgIGFuY2hvck9yaWdpbiA9IHtob3Jpem9udGFsOiAnbGVmdCcsIHZlcnRpY2FsOiAnYm90dG9tJ30sXG4gICAgLi4ucmVzdFByb3BzXG4gIH06IEdvdGhhbU5vdGlmeVBhcmFtcykgPT4ge1xuICAgIHJlbWFpbmluZ0R1cmF0aW9uUmVmLmN1cnJlbnQgPSBhdXRvSGlkZUR1cmF0aW9uO1xuICAgIHNldEhvdmVyZWQoZmFsc2UpO1xuICAgIHNldE5vdGlmaWNhdGlvbih7XG4gICAgICAuLi5yZXN0UHJvcHMsXG4gICAgICBhY3Rpb25zLFxuICAgICAgYW5jaG9yT3JpZ2luLFxuICAgICAgYXV0b0hpZGVEdXJhdGlvbixcbiAgICAgIG1lc3NhZ2U6IHNldmVyaXR5ID8gKFxuICAgICAgICA8QWxlcnRcbiAgICAgICAgICBvbkNsb3NlPXtub3RpZnlDbG9zZX1cbiAgICAgICAgICBzZXZlcml0eT17c2V2ZXJpdHl9XG4gICAgICAgID5cbiAgICAgICAgICB7bWVzc2FnZX1cbiAgICAgICAgPC9BbGVydD5cbiAgICAgICkgOiBtZXNzYWdlLFxuICAgICAgc2V2ZXJpdHlcbiAgICB9KTtcbiAgICBzZXRPcGVuKHRydWUpO1xuICB9O1xuXG4gIHVzZUZsdXhMaXN0ZW5lcihHb3RoYW1Db25zdGFudHMuTk9USUZZX09QRU4sIG5vdGlmeU9wZW4pO1xuICB1c2VGbHV4TGlzdGVuZXIoR290aGFtQ29uc3RhbnRzLk5PVElGWV9DTE9TRSwgbm90aWZ5Q2xvc2UpO1xuXG4gIGNvbnN0IHBvc2l0aW9uQ2xhc3NlcyA9ICgoKSA9PiB7XG4gICAgY29uc3Qge2hvcml6b250YWwgPSAnbGVmdCcsIHZlcnRpY2FsID0gJ2JvdHRvbSd9ID0gbm90aWZpY2F0aW9uLmFuY2hvck9yaWdpbiB8fCB7fTtcblxuICAgIGNvbnN0IHBvc2l0aW9ucyA9IHtcbiAgICAgIGJvdHRvbToge1xuICAgICAgICBjZW50ZXI6ICdib3R0b20tNCBsZWZ0LTEvMiB0cmFuc2Zvcm0gLXRyYW5zbGF0ZS14LTEvMicsXG4gICAgICAgIGxlZnQ6ICdib3R0b20tNCBsZWZ0LTQnLFxuICAgICAgICByaWdodDogJ2JvdHRvbS00IHJpZ2h0LTQnXG4gICAgICB9LFxuICAgICAgdG9wOiB7XG4gICAgICAgIGNlbnRlcjogJ3RvcC00IGxlZnQtMS8yIHRyYW5zZm9ybSAtdHJhbnNsYXRlLXgtMS8yJyxcbiAgICAgICAgbGVmdDogJ3RvcC00IGxlZnQtNCcsXG4gICAgICAgIHJpZ2h0OiAndG9wLTQgcmlnaHQtNCdcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIHBvc2l0aW9uc1t2ZXJ0aWNhbF1baG9yaXpvbnRhbF07XG4gIH0pKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8VHJhbnNpdGlvblxuICAgICAgYXM9e0ZyYWdtZW50fVxuICAgICAgZW50ZXI9XCJ0cmFuc2Zvcm0gZWFzZS1vdXQgZHVyYXRpb24tMzAwIHRyYW5zaXRpb25cIlxuICAgICAgZW50ZXJGcm9tPVwidHJhbnNsYXRlLXktMiBvcGFjaXR5LTAgc206dHJhbnNsYXRlLXktMCBzbTp0cmFuc2xhdGUteC0yXCJcbiAgICAgIGVudGVyVG89XCJ0cmFuc2xhdGUteS0wIG9wYWNpdHktMTAwIHNtOnRyYW5zbGF0ZS14LTBcIlxuICAgICAgbGVhdmU9XCJ0cmFuc2l0aW9uIGVhc2UtaW4gZHVyYXRpb24tMTAwXCJcbiAgICAgIGxlYXZlRnJvbT1cIm9wYWNpdHktMTAwXCJcbiAgICAgIGxlYXZlVG89XCJvcGFjaXR5LTBcIlxuICAgICAgc2hvdz17aXNPcGVufVxuICAgID5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgJ2ZpeGVkIHotNTAgdy1bbWluKDk2MHB4LGNhbGMoMTAwdnctMnJlbSkpXSBtYXgtdy1bbWluKDk2MHB4LGNhbGMoMTAwdnctMnJlbSkpXSBzaGFkb3ctbGcgcm91bmRlZC1sZyBwb2ludGVyLWV2ZW50cy1hdXRvIG92ZXJmbG93LWhpZGRlbicsXG4gICAgICAgIHBvc2l0aW9uQ2xhc3Nlc1xuICAgICAgKX1cbiAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4gc2V0SG92ZXJlZCh0cnVlKX1cbiAgICAgIG9uTW91c2VMZWF2ZT17KCkgPT4gc2V0SG92ZXJlZChmYWxzZSl9XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicmluZy0xIHJpbmctYmxhY2sgcmluZy1vcGFjaXR5LTUgYmctd2hpdGVcIj5cbiAgICAgICAgICB7IW5vdGlmaWNhdGlvbi5zZXZlcml0eSA/IChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicC00XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1zdGFydFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleC0xXCI+XG4gICAgICAgICAgICAgICAgICB7bm90aWZpY2F0aW9uLm1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAge25vdGlmaWNhdGlvbi5hY3Rpb25zPy5sZW5ndGggJiYgKFxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtbC00IHNocmluay0wIGZsZXhcIj5cbiAgICAgICAgICAgICAgICAgICAge25vdGlmaWNhdGlvbi5hY3Rpb25zLm1hcCgoe2ljb24sIGxhYmVsLCBvbkNsaWNrfSwgaW5kZXgpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICA8RnJhZ21lbnQga2V5PXtpbmRleH0+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aWNvbiA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEljb25CdXR0b24gb25DbGljaz17KCkgPT4gb25DbGljaygnbm90aWZpY2F0aW9uJyl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdmcgY29sb3I9XCJpbmhlcml0XCIgaGVpZ2h0PXsyNH0gbmFtZT17aWNvbn0gd2lkdGg9ezI0fSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIG9uQ2xpY2s9eygpID0+IG9uQ2xpY2soJ25vdGlmaWNhdGlvbicpfT57bGFiZWx9PC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDwvRnJhZ21lbnQ+XG4gICAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAge25vdGlmaWNhdGlvbi5tZXNzYWdlIGFzIFJlYWN0RWxlbWVudH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9UcmFuc2l0aW9uPlxuICApO1xufTtcbiJdLCJuYW1lcyI6WyJUcmFuc2l0aW9uIiwidXNlRmx1eExpc3RlbmVyIiwiY24iLCJGcmFnbWVudCIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZVN0YXRlIiwiR290aGFtQ29uc3RhbnRzIiwiU3ZnIiwiQnV0dG9uIiwiY2hpbGRyZW4iLCJvbkNsaWNrIiwiY2xhc3NOYW1lIiwiYnV0dG9uIiwidHlwZSIsIkljb25CdXR0b24iLCJBbGVydCIsInNldmVyaXR5Iiwib25DbG9zZSIsImJnQ29sb3JzIiwiZXJyb3IiLCJpbmZvIiwic3VjY2VzcyIsIndhcm5pbmciLCJkaXYiLCJhcmlhLWxhYmVsIiwic3ZnIiwiZmlsbCIsInZpZXdCb3giLCJ4bWxucyIsInBhdGgiLCJjbGlwUnVsZSIsImQiLCJmaWxsUnVsZSIsIk5vdGlmeSIsImlzT3BlbiIsInNldE9wZW4iLCJpc0hvdmVyZWQiLCJzZXRIb3ZlcmVkIiwibm90aWZpY2F0aW9uIiwic2V0Tm90aWZpY2F0aW9uIiwicmVtYWluaW5nRHVyYXRpb25SZWYiLCJ1bmRlZmluZWQiLCJ0aW1lclN0YXJ0ZWRBdFJlZiIsIm5vdGlmeUNsb3NlIiwiY3VycmVudCIsImF1dG9IaWRlRHVyYXRpb24iLCJkdXJhdGlvbiIsIkRhdGUiLCJub3ciLCJpZCIsInNldFRpbWVvdXQiLCJjbGVhclRpbWVvdXQiLCJNYXRoIiwibWF4Iiwibm90aWZ5T3BlbiIsImFjdGlvbnMiLCJtZXNzYWdlIiwiYW5jaG9yT3JpZ2luIiwiaG9yaXpvbnRhbCIsInZlcnRpY2FsIiwicmVzdFByb3BzIiwiTk9USUZZX09QRU4iLCJOT1RJRllfQ0xPU0UiLCJwb3NpdGlvbkNsYXNzZXMiLCJwb3NpdGlvbnMiLCJib3R0b20iLCJjZW50ZXIiLCJsZWZ0IiwicmlnaHQiLCJ0b3AiLCJhcyIsImVudGVyIiwiZW50ZXJGcm9tIiwiZW50ZXJUbyIsImxlYXZlIiwibGVhdmVGcm9tIiwibGVhdmVUbyIsInNob3ciLCJvbk1vdXNlRW50ZXIiLCJvbk1vdXNlTGVhdmUiLCJsZW5ndGgiLCJtYXAiLCJpY29uIiwibGFiZWwiLCJpbmRleCIsImNvbG9yIiwiaGVpZ2h0IiwibmFtZSIsIndpZHRoIl0sIm1hcHBpbmdzIjoiO0FBQUE7OztDQUdDLEdBQ0QsU0FBUUEsVUFBVSxRQUFPLG9CQUFvQjtBQUM3QyxTQUFRQyxlQUFlLFFBQU8sOEJBQThCO0FBQzVELFNBQVFDLEVBQUUsUUFBTyxlQUFlO0FBQ2hDLFNBQVFDLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxNQUFNLEVBQUVDLFFBQVEsUUFBTyxRQUFRO0FBRTVELFNBQVFDLGVBQWUsUUFBTyxxQ0FBcUM7QUFDbkUsU0FBUUMsR0FBRyxRQUFPLGdCQUFnQjtBQXVCbEMsMEJBQTBCO0FBQzFCLE1BQU1DLFNBQVMsQ0FBQyxFQUFDQyxRQUFRLEVBQUVDLE9BQU8sRUFBRUMsWUFBWSxFQUFFLEVBQUMsaUJBQ2pELEtBQUNDO1FBQ0NELFdBQVdWLEdBQ1QseUdBQ0EsMEhBQ0FVO1FBRUZELFNBQVNBO1FBQ1RHLE1BQUs7a0JBRUpKOztBQUlMLDhCQUE4QjtBQUM5QixNQUFNSyxhQUFhLENBQUMsRUFBQ0wsUUFBUSxFQUFFQyxPQUFPLEVBQUVDLFlBQVksRUFBRSxFQUFDLGlCQUNyRCxLQUFDQztRQUNDRCxXQUFXVixHQUNULGdIQUNBVTtR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
@@ -0,0 +1,148 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect } from 'react';
3
+ import { Flux } from '@nlabs/arkhamjs';
4
+ import { FluxProvider } from '@nlabs/arkhamjs-utils-react';
5
+ import { GothamActions } from '../../actions/GothamActions.js';
6
+ import { interactWithCanvas } from '../../utils/storyInteractions.js';
7
+ import { Notify } from './Notify.js';
8
+ import { NotifyExample } from './NotifyExample.js';
9
+ if (!Flux.isInit) {
10
+ void Flux.init({
11
+ name: 'gothamui-storybook'
12
+ });
13
+ }
14
+ const NotifyTrigger = ({ notification })=>{
15
+ useEffect(()=>()=>{
16
+ GothamActions.notifyClose();
17
+ }, []);
18
+ return /*#__PURE__*/ _jsx("div", {
19
+ className: "flex min-h-64 items-center justify-center p-8",
20
+ children: /*#__PURE__*/ _jsx("button", {
21
+ className: "cursor-pointer rounded-md bg-primary px-4 py-2 text-sm font-semibold text-white shadow-sm hover:bg-primary-700 focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2",
22
+ onClick: ()=>GothamActions.notify(notification),
23
+ type: "button",
24
+ children: "Open"
25
+ })
26
+ });
27
+ };
28
+ const meta = {
29
+ argTypes: {
30
+ anchorOrigin: {
31
+ control: 'object'
32
+ },
33
+ message: {
34
+ control: 'text'
35
+ },
36
+ severity: {
37
+ control: 'select',
38
+ options: [
39
+ 'error',
40
+ 'info',
41
+ 'success',
42
+ 'warning'
43
+ ]
44
+ }
45
+ },
46
+ component: Notify,
47
+ decorators: [
48
+ (Story)=>/*#__PURE__*/ _jsxs(FluxProvider, {
49
+ flux: Flux,
50
+ children: [
51
+ /*#__PURE__*/ _jsx(Story, {}),
52
+ /*#__PURE__*/ _jsx(Notify, {})
53
+ ]
54
+ })
55
+ ],
56
+ parameters: {
57
+ layout: 'fullscreen'
58
+ },
59
+ title: 'Components/Notify'
60
+ };
61
+ export default meta;
62
+ export const Basic = {
63
+ play: interactWithCanvas,
64
+ render: ()=>/*#__PURE__*/ _jsx(NotifyTrigger, {
65
+ notification: {
66
+ autoHideDuration: 5000,
67
+ message: 'This is a basic notification'
68
+ }
69
+ })
70
+ };
71
+ export const Success = {
72
+ play: interactWithCanvas,
73
+ render: ()=>/*#__PURE__*/ _jsx(NotifyTrigger, {
74
+ notification: {
75
+ message: 'Operation completed successfully',
76
+ severity: 'success'
77
+ }
78
+ })
79
+ };
80
+ export const Error = {
81
+ play: interactWithCanvas,
82
+ render: ()=>/*#__PURE__*/ _jsx(NotifyTrigger, {
83
+ notification: {
84
+ message: 'An error occurred',
85
+ severity: 'error'
86
+ }
87
+ })
88
+ };
89
+ export const Warning = {
90
+ play: interactWithCanvas,
91
+ render: ()=>/*#__PURE__*/ _jsx(NotifyTrigger, {
92
+ notification: {
93
+ message: 'This is a warning message',
94
+ severity: 'warning'
95
+ }
96
+ })
97
+ };
98
+ export const Info = {
99
+ play: interactWithCanvas,
100
+ render: ()=>/*#__PURE__*/ _jsx(NotifyTrigger, {
101
+ notification: {
102
+ message: 'This is an informational message',
103
+ severity: 'info'
104
+ }
105
+ })
106
+ };
107
+ export const TopRight = {
108
+ play: interactWithCanvas,
109
+ render: ()=>/*#__PURE__*/ _jsx(NotifyTrigger, {
110
+ notification: {
111
+ anchorOrigin: {
112
+ horizontal: 'right',
113
+ vertical: 'top'
114
+ },
115
+ message: 'This appears in the top right'
116
+ }
117
+ })
118
+ };
119
+ export const WithActions = {
120
+ play: interactWithCanvas,
121
+ render: ()=>/*#__PURE__*/ _jsx(NotifyTrigger, {
122
+ notification: {
123
+ actions: [
124
+ {
125
+ label: 'Undo',
126
+ onClick: (key)=>{
127
+ console.log('Undo clicked', key);
128
+ // Perform undo action
129
+ }
130
+ },
131
+ {
132
+ icon: 'close',
133
+ onClick: (key)=>{
134
+ console.log('Close clicked', key);
135
+ GothamActions.notifyClose();
136
+ }
137
+ }
138
+ ],
139
+ message: 'Would you like to undo?'
140
+ }
141
+ })
142
+ };
143
+ export const Examples = {
144
+ play: interactWithCanvas,
145
+ render: ()=>/*#__PURE__*/ _jsx(NotifyExample, {})
146
+ };
147
+
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL05vdGlmeS9Ob3RpZnkuc3Rvcmllcy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt1c2VFZmZlY3R9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7Rmx1eH0gZnJvbSAnQG5sYWJzL2Fya2hhbWpzJztcbmltcG9ydCB7Rmx1eFByb3ZpZGVyfSBmcm9tICdAbmxhYnMvYXJraGFtanMtdXRpbHMtcmVhY3QnO1xuXG5pbXBvcnQge0dvdGhhbUFjdGlvbnN9IGZyb20gJy4uLy4uL2FjdGlvbnMvR290aGFtQWN0aW9ucy5qcyc7XG5pbXBvcnQge2ludGVyYWN0V2l0aENhbnZhc30gZnJvbSAnLi4vLi4vdXRpbHMvc3RvcnlJbnRlcmFjdGlvbnMuanMnO1xuaW1wb3J0IHtOb3RpZnl9IGZyb20gJy4vTm90aWZ5LmpzJztcbmltcG9ydCB7Tm90aWZ5RXhhbXBsZX0gZnJvbSAnLi9Ob3RpZnlFeGFtcGxlLmpzJztcblxuaW1wb3J0IHR5cGUge01ldGEsIFN0b3J5T2JqfSBmcm9tICdAbmxhYnMvbGV4L3N0b3J5Ym9vayc7XG5pbXBvcnQgdHlwZSB7R290aGFtTm90aWZ5UGFyYW1zfSBmcm9tICcuL05vdGlmeS5qcyc7XG5cbmlmICghKEZsdXggYXMgYW55KS5pc0luaXQpIHtcbiAgdm9pZCBGbHV4LmluaXQoe25hbWU6ICdnb3RoYW11aS1zdG9yeWJvb2snfSk7XG59XG5cbmNvbnN0IE5vdGlmeVRyaWdnZXIgPSAoe25vdGlmaWNhdGlvbn06IHtyZWFkb25seSBub3RpZmljYXRpb246IEdvdGhhbU5vdGlmeVBhcmFtc30pID0+IHtcbiAgdXNlRWZmZWN0KCgpID0+ICgpID0+IHtcbiAgICBHb3RoYW1BY3Rpb25zLm5vdGlmeUNsb3NlKCk7XG4gIH0sIFtdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBtaW4taC02NCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcC04XCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzTmFtZT1cImN1cnNvci1wb2ludGVyIHJvdW5kZWQtbWQgYmctcHJpbWFyeSBweC00IHB5LTIgdGV4dC1zbSBmb250LXNlbWlib2xkIHRleHQtd2hpdGUgc2hhZG93LXNtIGhvdmVyOmJnLXByaW1hcnktNzAwIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy1wcmltYXJ5IGZvY3VzOnJpbmctb2Zmc2V0LTJcIlxuICAgICAgICBvbkNsaWNrPXsoKSA9PiBHb3RoYW1BY3Rpb25zLm5vdGlmeShub3RpZmljYXRpb24pfVxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgID5cbiAgICAgICAgT3BlblxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5jb25zdCBtZXRhOiBNZXRhPHR5cGVvZiBOb3RpZnk+ID0ge1xuICBhcmdUeXBlczoge1xuICAgIGFuY2hvck9yaWdpbjoge1xuICAgICAgY29udHJvbDogJ29iamVjdCdcbiAgICB9LFxuICAgIG1lc3NhZ2U6IHtcbiAgICAgIGNvbnRyb2w6ICd0ZXh0J1xuICAgIH0sXG4gICAgc2V2ZXJpdHk6IHtcbiAgICAgIGNvbnRyb2w6ICdzZWxlY3QnLFxuICAgICAgb3B0aW9uczogWydlcnJvcicsICdpbmZvJywgJ3N1Y2Nlc3MnLCAnd2FybmluZyddXG4gICAgfVxuICB9LFxuICBjb21wb25lbnQ6IE5vdGlmeSxcbiAgZGVjb3JhdG9yczogW1xuICAgIChTdG9yeSkgPT4gKFxuICAgICAgPEZsdXhQcm92aWRlciBmbHV4PXtGbHV4fT5cbiAgICAgICAgPFN0b3J5IC8+XG4gICAgICAgIDxOb3RpZnkgLz5cbiAgICAgIDwvRmx1eFByb3ZpZGVyPlxuICAgIClcbiAgXSxcbiAgcGFyYW1ldGVyczoge1xuICAgIGxheW91dDogJ2Z1bGxzY3JlZW4nXG4gIH0sXG4gIHRpdGxlOiAnQ29tcG9uZW50cy9Ob3RpZnknXG59O1xuXG5leHBvcnQgZGVmYXVsdCBtZXRhO1xudHlwZSBTdG9yeSA9IFN0b3J5T2JqPHR5cGVvZiBOb3RpZnk+O1xuXG5leHBvcnQgY29uc3QgQmFzaWM6IFN0b3J5ID0ge1xuICBwbGF5OiBpbnRlcmFjdFdpdGhDYW52YXMsXG4gIHJlbmRlcjogKCkgPT4gKFxuICAgIDxOb3RpZnlUcmlnZ2VyXG4gICAgICBub3RpZmljYXRpb249e3tcbiAgICAgICAgYXV0b0hpZGVEdXJhdGlvbjogNTAwMCxcbiAgICAgICAgbWVzc2FnZTogJ1RoaXMgaXMgYSBiYXNpYyBub3RpZmljYXRpb24nXG4gICAgICB9fVxuICAgIC8+XG4gIClcbn07XG5cbmV4cG9ydCBjb25zdCBTdWNjZXNzOiBTdG9yeSA9IHtcbiAgcGxheTogaW50ZXJhY3RXaXRoQ2FudmFzLFxuICByZW5kZXI6ICgpID0+IChcbiAgICA8Tm90aWZ5VHJpZ2dlclxuICAgICAgbm90aWZpY2F0aW9uPXt7XG4gICAgICAgIG1lc3NhZ2U6ICdPcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseScsXG4gICAgICAgIHNldmVyaXR5OiAnc3VjY2VzcydcbiAgICAgIH19XG4gICAgLz5cbiAgKVxufTtcblxuZXhwb3J0IGNvbnN0IEVycm9yOiBTdG9yeSA9IHtcbiAgcGxheTogaW50ZXJhY3RXaXRoQ2FudmFzLFxuICByZW5kZXI6ICgpID0+IChcbiAgICA8Tm90aWZ5VHJpZ2dlclxuICAgICAgbm90aWZpY2F0aW9uPXt7XG4gICAgICAgIG1lc3NhZ2U6ICdBbiBlcnJvciBvY2N1cnJlZCcsXG4gICAgICAgIHNldmVyaXR5OiAnZXJyb3InXG4gICAgICB9fVxuICAgIC8+XG4gIClcbn07XG5cbmV4cG9ydCBjb25zdCBXYXJuaW5nOiBTdG9yeSA9IHtcbiAgcGxheTogaW50ZXJhY3RXaXRoQ2FudmFzLFxuICByZW5kZXI6ICgpID0+IChcbiAgICA8Tm90aWZ5VHJpZ2dlclxuICAgICAgbm90aWZpY2F0aW9uPXt7XG4gICAgICAgIG1lc3NhZ2U6ICdUaGlzIGlzIGEgd2FybmluZyBtZXNzYWdlJyxcbiAgICAgICAgc2V2ZXJpdHk6ICd3YXJuaW5nJ1xuICAgICAgfX1cbiAgICAvPlxuICApXG59O1xuXG5leHBvcnQgY29uc3QgSW5mbzogU3RvcnkgPSB7XG4gIHBsYXk6IGludGVyYWN0V2l0aENhbnZhcyxcbiAgcmVuZGVyOiAoKSA9PiAoXG4gICAgPE5vdGlmeVRyaWdnZXJcbiAgICAgIG5vdGlmaWNhdGlvbj17e1xuICAgICAgICBtZXNzYWdlOiAnVGhpcyBpcyBhbiBpbmZvcm1hdGlvbmFsIG1lc3NhZ2UnLFxuICAgICAgICBzZXZlcml0eTogJ2luZm8nXG4gICAgICB9fVxuICAgIC8+XG4gIClcbn07XG5cbmV4cG9ydCBjb25zdCBUb3BSaWdodDogU3RvcnkgPSB7XG4gIHBsYXk6IGludGVyYWN0V2l0aENhbnZhcyxcbiAgcmVuZGVyOiAoKSA9PiAoXG4gICAgPE5vdGlmeVRyaWdnZXJcbiAgICAgIG5vdGlmaWNhdGlvbj17e1xuICAgICAgICBhbmNob3JPcmlnaW46IHtcbiAgICAgICAgICBob3Jpem9udGFsOiAncmlnaHQnLFxuICAgICAgICAgIHZlcnRpY2FsOiAndG9wJ1xuICAgICAgICB9LFxuICAgICAgICBtZXNzYWdlOiAnVGhpcyBhcHBlYXJzIGluIHRoZSB0b3AgcmlnaHQnXG4gICAgICB9fVxuICAgIC8+XG4gIClcbn07XG5cbmV4cG9ydCBjb25zdCBXaXRoQWN0aW9uczogU3RvcnkgPSB7XG4gIHBsYXk6IGludGVyYWN0V2l0aENhbnZhcyxcbiAgcmVuZGVyOiAoKSA9PiAoXG4gICAgPE5vdGlmeVRyaWdnZXJcbiAgICAgIG5vdGlmaWNhdGlvbj17e1xuICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6ICdVbmRvJyxcbiAgICAgICAgICAgIG9uQ2xpY2s6IChrZXkpID0+IHtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coJ1VuZG8gY2xpY2tlZCcsIGtleSk7XG4gICAgICAgICAgICAgIC8vIFBlcmZvcm0gdW5kbyBhY3Rpb25cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGljb246ICdjbG9zZScsXG4gICAgICAgICAgICBvbkNsaWNrOiAoa2V5KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdDbG9zZSBjbGlja2VkJywga2V5KTtcbiAgICAgICAgICAgICAgR290aGFtQWN0aW9ucy5ub3RpZnlDbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgbWVzc2FnZTogJ1dvdWxkIHlvdSBsaWtlIHRvIHVuZG8/J1xuICAgICAgfX1cbiAgICAvPlxuICApXG59O1xuXG5leHBvcnQgY29uc3QgRXhhbXBsZXM6IFN0b3J5ID0ge1xuICBwbGF5OiBpbnRlcmFjdFdpdGhDYW52YXMsXG4gIHJlbmRlcjogKCkgPT4gPE5vdGlmeUV4YW1wbGUgLz5cbn07XG4iXSwibmFtZXMiOlsidXNlRWZmZWN0IiwiRmx1eCIsIkZsdXhQcm92aWRlciIsIkdvdGhhbUFjdGlvbnMiLCJpbnRlcmFjdFdpdGhDYW52YXMiLCJOb3RpZnkiLCJOb3RpZnlFeGFtcGxlIiwiaXNJbml0IiwiaW5pdCIsIm5hbWUiLCJOb3RpZnlUcmlnZ2VyIiwibm90aWZpY2F0aW9uIiwibm90aWZ5Q2xvc2UiLCJkaXYiLCJjbGFzc05hbWUiLCJidXR0b24iLCJvbkNsaWNrIiwibm90aWZ5IiwidHlwZSIsIm1ldGEiLCJhcmdUeXBlcyIsImFuY2hvck9yaWdpbiIsImNvbnRyb2wiLCJtZXNzYWdlIiwic2V2ZXJpdHkiLCJvcHRpb25zIiwiY29tcG9uZW50IiwiZGVjb3JhdG9ycyIsIlN0b3J5IiwiZmx1eCIsInBhcmFtZXRlcnMiLCJsYXlvdXQiLCJ0aXRsZSIsIkJhc2ljIiwicGxheSIsInJlbmRlciIsImF1dG9IaWRlRHVyYXRpb24iLCJTdWNjZXNzIiwiRXJyb3IiLCJXYXJuaW5nIiwiSW5mbyIsIlRvcFJpZ2h0IiwiaG9yaXpvbnRhbCIsInZlcnRpY2FsIiwiV2l0aEFjdGlvbnMiLCJhY3Rpb25zIiwibGFiZWwiLCJrZXkiLCJjb25zb2xlIiwibG9nIiwiaWNvbiIsIkV4YW1wbGVzIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUUEsU0FBUyxRQUFPLFFBQVE7QUFDaEMsU0FBUUMsSUFBSSxRQUFPLGtCQUFrQjtBQUNyQyxTQUFRQyxZQUFZLFFBQU8sOEJBQThCO0FBRXpELFNBQVFDLGFBQWEsUUFBTyxpQ0FBaUM7QUFDN0QsU0FBUUMsa0JBQWtCLFFBQU8sbUNBQW1DO0FBQ3BFLFNBQVFDLE1BQU0sUUFBTyxjQUFjO0FBQ25DLFNBQVFDLGFBQWEsUUFBTyxxQkFBcUI7QUFLakQsSUFBSSxDQUFDLEFBQUNMLEtBQWFNLE1BQU0sRUFBRTtJQUN6QixLQUFLTixLQUFLTyxJQUFJLENBQUM7UUFBQ0MsTUFBTTtJQUFvQjtBQUM1QztBQUVBLE1BQU1DLGdCQUFnQixDQUFDLEVBQUNDLFlBQVksRUFBOEM7SUFDaEZYLFVBQVUsSUFBTTtZQUNkRyxjQUFjUyxXQUFXO1FBQzNCLEdBQUcsRUFBRTtJQUVMLHFCQUNFLEtBQUNDO1FBQUlDLFdBQVU7a0JBQ2IsY0FBQSxLQUFDQztZQUNDRCxXQUFVO1lBQ1ZFLFNBQVMsSUFBTWIsY0FBY2MsTUFBTSxDQUFDTjtZQUNwQ08sTUFBSztzQkFDTjs7O0FBS1A7QUFFQSxNQUFNQyxPQUE0QjtJQUNoQ0MsVUFBVTtRQUNSQyxjQUFjO1lBQ1pDLFNBQVM7UUFDWDtRQUNBQyxTQUFTO1lBQ1BELFNBQVM7UUFDWDtRQUNBRSxVQUFVO1lBQ1JGLFNBQVM7WUFDVEcsU0FBUztnQkFBQztnQkFBUztnQkFBUTtnQkFBVzthQUFVO1FBQ2xEO0lBQ0Y7SUFDQUMsV0FBV3JCO0lBQ1hzQixZQUFZO1FBQ1YsQ0FBQ0Msc0JBQ0MsTUFBQzFCO2dCQUFhMkIsTUFBTTVCOztrQ0FDbEIsS0FBQzJCO2tDQUNELEtBQUN2Qjs7O0tBR047SUFDRHlCLFlBQVk7UUFDVkMsUUFBUTtJQUNWO0lBQ0FDLE9BQU87QUFDVDtBQUVBLGVBQWViLEtBQUs7QUFHcEIsT0FBTyxNQUFNYyxRQUFlO0lBQzFCQyxNQUFNOUI7SUFDTitCLFFBQVEsa0JBQ04sS0FBQ3pCO1lBQ0NDLGNBQWM7Z0JBQ1p5QixrQkFBa0I7Z0JBQ2xCYixTQUFTO1lBQ1g7O0FBR04sRUFBRTtBQUVGLE9BQU8sTUFBTWMsVUFBaUI7SUFDNUJILE1BQU05QjtJQUNOK0IsUUFBUSxrQkFDTixLQUFDekI7WUFDQ0MsY0FBYztnQkFDWlksU0FBUztnQkFDVEMsVUFBVTtZQUNaOztBQUdOLEVBQUU7QUFFRixPQUFPLE1BQU1jLFFBQWU7SUFDMUJKLE1BQU05QjtJQUNOK0IsUUFBUSxrQkFDTixLQUFDekI7WUFDQ0MsY0FBYztnQkFDWlksU0FBUztnQkFDVEMsVUFBVTtZQUNaOztBQUdOLEVBQUU7QUFFRixPQUFPLE1BQU1lLFVBQWlCO0lBQzVCTCxNQUFNOUI7SUFDTitCLFFBQVEsa0JBQ04sS0FBQ3pCO1lBQ0NDLGNBQWM7Z0JBQ1pZLFNBQVM7Z0JBQ1RDLFVBQVU7WUFDWjs7QUFHTixFQUFFO0FBRUYsT0FBTyxNQUFNZ0IsT0FBYztJQUN6Qk4sTUFBTTlCO0lBQ04rQixRQUFRLGtCQUNOLEtBQUN6QjtZQUNDQyxjQUFjO2dCQUNaWSxTQUFTO2dCQUNUQyxVQUFVO1lBQ1o7O0FBR04sRUFBRTtBQUVGLE9BQU8sTUFBTWlCLFdBQWtCO0lBQzdCUCxNQUFNOUI7SUFDTitCLFFBQVEsa0JBQ04sS0FBQ3pCO1lBQ0NDLGNBQWM7Z0JBQ1pVLGNBQWM7b0JBQ1pxQixZQUFZO29CQUNaQyxVQUFVO2dCQUNaO2dCQUNBcEIsU0FBUztZQUNYOztBQUdOLEVBQUU7QUFFRixPQUFPLE1BQU1xQixjQUFxQjtJQUNoQ1YsTUFBTTlCO0lBQ04rQixRQUFRLGtCQUNOLEtBQUN6QjtZQUNDQyxjQUFjO2dCQUNaa0MsU0FBUztvQkFDUDt3QkFDRUMsT0FBTzt3QkFDUDlCLFNBQVMsQ0FBQytCOzRCQUNSQyxRQUFRQyxHQUFHLENBQUMsZ0JBQWdCRjt3QkFDNUIsc0JBQXNCO3dCQUN4QjtvQkFDRjtvQkFDQTt3QkFDRUcsTUFBTTt3QkFDTmxDLFNBQVMsQ0FBQytCOzRCQUNSQyxRQUFRQyxHQUFHLENBQUMsaUJBQWlCRjs0QkFDN0I1QyxjQUFjUyxXQUFXO3dCQUMzQjtvQkFDRjtpQkFDRDtnQkFDRFcsU0FBUztZQUNYOztBQUdOLEVBQUU7QUFFRixPQUFPLE1BQU00QixXQUFrQjtJQUM3QmpCLE1BQU05QjtJQUNOK0IsUUFBUSxrQkFBTSxLQUFDN0I7QUFDakIsRUFBRSJ9
@@ -0,0 +1 @@
1
+ export declare const NotifyExample: () => import("react").JSX.Element;
@@ -0,0 +1,174 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { GothamActions } from '../../actions/GothamActions.js';
3
+ export const NotifyExample = ()=>{
4
+ // Basic notification
5
+ const showBasicNotification = ()=>{
6
+ GothamActions.notify({
7
+ autoHideDuration: 5000,
8
+ message: 'This is a basic notification'
9
+ });
10
+ };
11
+ // Success notification
12
+ const showSuccessNotification = ()=>{
13
+ GothamActions.notify({
14
+ message: 'Operation completed successfully',
15
+ severity: 'success'
16
+ });
17
+ };
18
+ // Error notification
19
+ const showErrorNotification = ()=>{
20
+ GothamActions.notify({
21
+ message: 'An error occurred',
22
+ severity: 'error'
23
+ });
24
+ };
25
+ // Warning notification
26
+ const showWarningNotification = ()=>{
27
+ GothamActions.notify({
28
+ message: 'This is a warning message',
29
+ severity: 'warning'
30
+ });
31
+ };
32
+ // Info notification
33
+ const showInfoNotification = ()=>{
34
+ GothamActions.notify({
35
+ message: 'This is an informational message',
36
+ severity: 'info'
37
+ });
38
+ };
39
+ // Notification with custom position
40
+ const showTopRightNotification = ()=>{
41
+ GothamActions.notify({
42
+ anchorOrigin: {
43
+ horizontal: 'right',
44
+ vertical: 'top'
45
+ },
46
+ message: 'This appears in the top right'
47
+ });
48
+ };
49
+ // Notification with actions
50
+ const showActionNotification = ()=>{
51
+ GothamActions.notify({
52
+ actions: [
53
+ {
54
+ label: 'Undo',
55
+ onClick: (key)=>{
56
+ console.log('Undo clicked', key);
57
+ // Perform undo action
58
+ }
59
+ },
60
+ {
61
+ icon: 'close',
62
+ onClick: (key)=>{
63
+ console.log('Close clicked', key);
64
+ GothamActions.notifyClose();
65
+ }
66
+ }
67
+ ],
68
+ message: 'Would you like to undo?'
69
+ });
70
+ };
71
+ return /*#__PURE__*/ _jsxs("div", {
72
+ className: "p-6 max-w-4xl mx-auto",
73
+ children: [
74
+ /*#__PURE__*/ _jsx("h1", {
75
+ className: "text-3xl font-bold mb-6",
76
+ children: "Notify Component Examples"
77
+ }),
78
+ /*#__PURE__*/ _jsxs("div", {
79
+ className: "grid grid-cols-1 md:grid-cols-2 gap-4",
80
+ children: [
81
+ /*#__PURE__*/ _jsxs("div", {
82
+ className: "p-4 border rounded-lg shadow-sm",
83
+ children: [
84
+ /*#__PURE__*/ _jsx("h2", {
85
+ className: "text-xl font-semibold mb-4",
86
+ children: "Basic Notifications"
87
+ }),
88
+ /*#__PURE__*/ _jsxs("div", {
89
+ className: "space-y-2",
90
+ children: [
91
+ /*#__PURE__*/ _jsx("button", {
92
+ onClick: showBasicNotification,
93
+ className: "w-full px-4 py-2 bg-gray-200 hover:bg-gray-300 rounded-md",
94
+ children: "Basic Notification"
95
+ }),
96
+ /*#__PURE__*/ _jsx("button", {
97
+ onClick: showSuccessNotification,
98
+ className: "w-full px-4 py-2 bg-green-100 hover:bg-green-200 text-green-800 rounded-md",
99
+ children: "Success Notification"
100
+ }),
101
+ /*#__PURE__*/ _jsx("button", {
102
+ onClick: showErrorNotification,
103
+ className: "w-full px-4 py-2 bg-red-100 hover:bg-red-200 text-red-800 rounded-md",
104
+ children: "Error Notification"
105
+ }),
106
+ /*#__PURE__*/ _jsx("button", {
107
+ onClick: showWarningNotification,
108
+ className: "w-full px-4 py-2 bg-yellow-100 hover:bg-yellow-200 text-yellow-800 rounded-md",
109
+ children: "Warning Notification"
110
+ }),
111
+ /*#__PURE__*/ _jsx("button", {
112
+ onClick: showInfoNotification,
113
+ className: "w-full px-4 py-2 bg-blue-100 hover:bg-blue-200 text-blue-800 rounded-md",
114
+ children: "Info Notification"
115
+ })
116
+ ]
117
+ })
118
+ ]
119
+ }),
120
+ /*#__PURE__*/ _jsxs("div", {
121
+ className: "p-4 border rounded-lg shadow-sm",
122
+ children: [
123
+ /*#__PURE__*/ _jsx("h2", {
124
+ className: "text-xl font-semibold mb-4",
125
+ children: "Advanced Options"
126
+ }),
127
+ /*#__PURE__*/ _jsxs("div", {
128
+ className: "space-y-2",
129
+ children: [
130
+ /*#__PURE__*/ _jsx("button", {
131
+ onClick: showTopRightNotification,
132
+ className: "w-full px-4 py-2 bg-purple-100 hover:bg-purple-200 text-purple-800 rounded-md",
133
+ children: "Top Right Position"
134
+ }),
135
+ /*#__PURE__*/ _jsx("button", {
136
+ onClick: showActionNotification,
137
+ className: "w-full px-4 py-2 bg-indigo-100 hover:bg-indigo-200 text-indigo-800 rounded-md",
138
+ children: "With Action Buttons"
139
+ })
140
+ ]
141
+ })
142
+ ]
143
+ })
144
+ ]
145
+ }),
146
+ /*#__PURE__*/ _jsxs("div", {
147
+ className: "mt-8 p-4 bg-gray-50 rounded-lg",
148
+ children: [
149
+ /*#__PURE__*/ _jsx("h2", {
150
+ className: "text-xl font-semibold mb-2",
151
+ children: "Implementation Example"
152
+ }),
153
+ /*#__PURE__*/ _jsx("pre", {
154
+ className: "bg-gray-800 text-gray-100 p-4 rounded-md overflow-x-auto",
155
+ children: `// Import the GothamActions
156
+ import {GothamActions} from '@actions/GothamActions';
157
+
158
+ // Show a notification
159
+ GothamActions.notify({
160
+ message: 'Hello World',
161
+ severity: 'success',
162
+ autoHideDuration: 5000
163
+ });
164
+
165
+ // Close all notifications
166
+ GothamActions.notifyClose();`
167
+ })
168
+ ]
169
+ })
170
+ ]
171
+ });
172
+ };
173
+
174
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL05vdGlmeS9Ob3RpZnlFeGFtcGxlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0dvdGhhbUFjdGlvbnN9IGZyb20gJy4uLy4uL2FjdGlvbnMvR290aGFtQWN0aW9ucy5qcyc7XG5cbmV4cG9ydCBjb25zdCBOb3RpZnlFeGFtcGxlID0gKCkgPT4ge1xuICAvLyBCYXNpYyBub3RpZmljYXRpb25cbiAgY29uc3Qgc2hvd0Jhc2ljTm90aWZpY2F0aW9uID0gKCkgPT4ge1xuICAgIEdvdGhhbUFjdGlvbnMubm90aWZ5KHtcbiAgICAgIGF1dG9IaWRlRHVyYXRpb246IDUwMDAsXG4gICAgICBtZXNzYWdlOiAnVGhpcyBpcyBhIGJhc2ljIG5vdGlmaWNhdGlvbidcbiAgICB9KTtcbiAgfTtcblxuICAvLyBTdWNjZXNzIG5vdGlmaWNhdGlvblxuICBjb25zdCBzaG93U3VjY2Vzc05vdGlmaWNhdGlvbiA9ICgpID0+IHtcbiAgICBHb3RoYW1BY3Rpb25zLm5vdGlmeSh7XG4gICAgICBtZXNzYWdlOiAnT3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknLFxuICAgICAgc2V2ZXJpdHk6ICdzdWNjZXNzJ1xuICAgIH0pO1xuICB9O1xuXG4gIC8vIEVycm9yIG5vdGlmaWNhdGlvblxuICBjb25zdCBzaG93RXJyb3JOb3RpZmljYXRpb24gPSAoKSA9PiB7XG4gICAgR290aGFtQWN0aW9ucy5ub3RpZnkoe1xuICAgICAgbWVzc2FnZTogJ0FuIGVycm9yIG9jY3VycmVkJyxcbiAgICAgIHNldmVyaXR5OiAnZXJyb3InXG4gICAgfSk7XG4gIH07XG5cbiAgLy8gV2FybmluZyBub3RpZmljYXRpb25cbiAgY29uc3Qgc2hvd1dhcm5pbmdOb3RpZmljYXRpb24gPSAoKSA9PiB7XG4gICAgR290aGFtQWN0aW9ucy5ub3RpZnkoe1xuICAgICAgbWVzc2FnZTogJ1RoaXMgaXMgYSB3YXJuaW5nIG1lc3NhZ2UnLFxuICAgICAgc2V2ZXJpdHk6ICd3YXJuaW5nJ1xuICAgIH0pO1xuICB9O1xuXG4gIC8vIEluZm8gbm90aWZpY2F0aW9uXG4gIGNvbnN0IHNob3dJbmZvTm90aWZpY2F0aW9uID0gKCkgPT4ge1xuICAgIEdvdGhhbUFjdGlvbnMubm90aWZ5KHtcbiAgICAgIG1lc3NhZ2U6ICdUaGlzIGlzIGFuIGluZm9ybWF0aW9uYWwgbWVzc2FnZScsXG4gICAgICBzZXZlcml0eTogJ2luZm8nXG4gICAgfSk7XG4gIH07XG5cbiAgLy8gTm90aWZpY2F0aW9uIHdpdGggY3VzdG9tIHBvc2l0aW9uXG4gIGNvbnN0IHNob3dUb3BSaWdodE5vdGlmaWNhdGlvbiA9ICgpID0+IHtcbiAgICBHb3RoYW1BY3Rpb25zLm5vdGlmeSh7XG4gICAgICBhbmNob3JPcmlnaW46IHtcbiAgICAgICAgaG9yaXpvbnRhbDogJ3JpZ2h0JyxcbiAgICAgICAgdmVydGljYWw6ICd0b3AnXG4gICAgICB9LFxuICAgICAgbWVzc2FnZTogJ1RoaXMgYXBwZWFycyBpbiB0aGUgdG9wIHJpZ2h0J1xuICAgIH0pO1xuICB9O1xuXG4gIC8vIE5vdGlmaWNhdGlvbiB3aXRoIGFjdGlvbnNcbiAgY29uc3Qgc2hvd0FjdGlvbk5vdGlmaWNhdGlvbiA9ICgpID0+IHtcbiAgICBHb3RoYW1BY3Rpb25zLm5vdGlmeSh7XG4gICAgICBhY3Rpb25zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogJ1VuZG8nLFxuICAgICAgICAgIG9uQ2xpY2s6IChrZXkpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdVbmRvIGNsaWNrZWQnLCBrZXkpO1xuICAgICAgICAgICAgLy8gUGVyZm9ybSB1bmRvIGFjdGlvblxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGljb246ICdjbG9zZScsXG4gICAgICAgICAgb25DbGljazogKGtleSkgPT4ge1xuICAgICAgICAgICAgY29uc29sZS5sb2coJ0Nsb3NlIGNsaWNrZWQnLCBrZXkpO1xuICAgICAgICAgICAgR290aGFtQWN0aW9ucy5ub3RpZnlDbG9zZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgXSxcbiAgICAgIG1lc3NhZ2U6ICdXb3VsZCB5b3UgbGlrZSB0byB1bmRvPydcbiAgICB9KTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwicC02IG1heC13LTR4bCBteC1hdXRvXCI+XG4gICAgICA8aDEgY2xhc3NOYW1lPVwidGV4dC0zeGwgZm9udC1ib2xkIG1iLTZcIj5Ob3RpZnkgQ29tcG9uZW50IEV4YW1wbGVzPC9oMT5cblxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJncmlkIGdyaWQtY29scy0xIG1kOmdyaWQtY29scy0yIGdhcC00XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicC00IGJvcmRlciByb3VuZGVkLWxnIHNoYWRvdy1zbVwiPlxuICAgICAgICAgIDxoMiBjbGFzc05hbWU9XCJ0ZXh0LXhsIGZvbnQtc2VtaWJvbGQgbWItNFwiPkJhc2ljIE5vdGlmaWNhdGlvbnM8L2gyPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic3BhY2UteS0yXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIG9uQ2xpY2s9e3Nob3dCYXNpY05vdGlmaWNhdGlvbn1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidy1mdWxsIHB4LTQgcHktMiBiZy1ncmF5LTIwMCBob3ZlcjpiZy1ncmF5LTMwMCByb3VuZGVkLW1kXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgQmFzaWMgTm90aWZpY2F0aW9uXG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgb25DbGljaz17c2hvd1N1Y2Nlc3NOb3RpZmljYXRpb259XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cInctZnVsbCBweC00IHB5LTIgYmctZ3JlZW4tMTAwIGhvdmVyOmJnLWdyZWVuLTIwMCB0ZXh0LWdyZWVuLTgwMCByb3VuZGVkLW1kXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgU3VjY2VzcyBOb3RpZmljYXRpb25cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBvbkNsaWNrPXtzaG93RXJyb3JOb3RpZmljYXRpb259XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cInctZnVsbCBweC00IHB5LTIgYmctcmVkLTEwMCBob3ZlcjpiZy1yZWQtMjAwIHRleHQtcmVkLTgwMCByb3VuZGVkLW1kXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgRXJyb3IgTm90aWZpY2F0aW9uXG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgb25DbGljaz17c2hvd1dhcm5pbmdOb3RpZmljYXRpb259XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cInctZnVsbCBweC00IHB5LTIgYmcteWVsbG93LTEwMCBob3ZlcjpiZy15ZWxsb3ctMjAwIHRleHQteWVsbG93LTgwMCByb3VuZGVkLW1kXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgV2FybmluZyBOb3RpZmljYXRpb25cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBvbkNsaWNrPXtzaG93SW5mb05vdGlmaWNhdGlvbn1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidy1mdWxsIHB4LTQgcHktMiBiZy1ibHVlLTEwMCBob3ZlcjpiZy1ibHVlLTIwMCB0ZXh0LWJsdWUtODAwIHJvdW5kZWQtbWRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBJbmZvIE5vdGlmaWNhdGlvblxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicC00IGJvcmRlciByb3VuZGVkLWxnIHNoYWRvdy1zbVwiPlxuICAgICAgICAgIDxoMiBjbGFzc05hbWU9XCJ0ZXh0LXhsIGZvbnQtc2VtaWJvbGQgbWItNFwiPkFkdmFuY2VkIE9wdGlvbnM8L2gyPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic3BhY2UteS0yXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIG9uQ2xpY2s9e3Nob3dUb3BSaWdodE5vdGlmaWNhdGlvbn1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidy1mdWxsIHB4LTQgcHktMiBiZy1wdXJwbGUtMTAwIGhvdmVyOmJnLXB1cnBsZS0yMDAgdGV4dC1wdXJwbGUtODAwIHJvdW5kZWQtbWRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBUb3AgUmlnaHQgUG9zaXRpb25cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBvbkNsaWNrPXtzaG93QWN0aW9uTm90aWZpY2F0aW9ufVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ3LWZ1bGwgcHgtNCBweS0yIGJnLWluZGlnby0xMDAgaG92ZXI6YmctaW5kaWdvLTIwMCB0ZXh0LWluZGlnby04MDAgcm91bmRlZC1tZFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIFdpdGggQWN0aW9uIEJ1dHRvbnNcbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIm10LTggcC00IGJnLWdyYXktNTAgcm91bmRlZC1sZ1wiPlxuICAgICAgICA8aDIgY2xhc3NOYW1lPVwidGV4dC14bCBmb250LXNlbWlib2xkIG1iLTJcIj5JbXBsZW1lbnRhdGlvbiBFeGFtcGxlPC9oMj5cbiAgICAgICAgPHByZSBjbGFzc05hbWU9XCJiZy1ncmF5LTgwMCB0ZXh0LWdyYXktMTAwIHAtNCByb3VuZGVkLW1kIG92ZXJmbG93LXgtYXV0b1wiPlxuICAgICAgICAgIHtgLy8gSW1wb3J0IHRoZSBHb3RoYW1BY3Rpb25zXG5pbXBvcnQge0dvdGhhbUFjdGlvbnN9IGZyb20gJ0BhY3Rpb25zL0dvdGhhbUFjdGlvbnMnO1xuXG4vLyBTaG93IGEgbm90aWZpY2F0aW9uXG5Hb3RoYW1BY3Rpb25zLm5vdGlmeSh7XG4gIG1lc3NhZ2U6ICdIZWxsbyBXb3JsZCcsXG4gIHNldmVyaXR5OiAnc3VjY2VzcycsXG4gIGF1dG9IaWRlRHVyYXRpb246IDUwMDBcbn0pO1xuXG4vLyBDbG9zZSBhbGwgbm90aWZpY2F0aW9uc1xuR290aGFtQWN0aW9ucy5ub3RpZnlDbG9zZSgpO2B9XG4gICAgICAgIDwvcHJlPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59OyJdLCJuYW1lcyI6WyJHb3RoYW1BY3Rpb25zIiwiTm90aWZ5RXhhbXBsZSIsInNob3dCYXNpY05vdGlmaWNhdGlvbiIsIm5vdGlmeSIsImF1dG9IaWRlRHVyYXRpb24iLCJtZXNzYWdlIiwic2hvd1N1Y2Nlc3NOb3RpZmljYXRpb24iLCJzZXZlcml0eSIsInNob3dFcnJvck5vdGlmaWNhdGlvbiIsInNob3dXYXJuaW5nTm90aWZpY2F0aW9uIiwic2hvd0luZm9Ob3RpZmljYXRpb24iLCJzaG93VG9wUmlnaHROb3RpZmljYXRpb24iLCJhbmNob3JPcmlnaW4iLCJob3Jpem9udGFsIiwidmVydGljYWwiLCJzaG93QWN0aW9uTm90aWZpY2F0aW9uIiwiYWN0aW9ucyIsImxhYmVsIiwib25DbGljayIsImtleSIsImNvbnNvbGUiLCJsb2ciLCJpY29uIiwibm90aWZ5Q2xvc2UiLCJkaXYiLCJjbGFzc05hbWUiLCJoMSIsImgyIiwiYnV0dG9uIiwicHJlIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUUEsYUFBYSxRQUFPLGlDQUFpQztBQUU3RCxPQUFPLE1BQU1DLGdCQUFnQjtJQUMzQixxQkFBcUI7SUFDckIsTUFBTUMs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