@bigbinary/neeto-molecules 1.1.10 → 1.1.12

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 (477) hide show
  1. package/dist/AutoSaveInput/autosaveinput.scss +15 -0
  2. package/dist/AutoSaveInput/constants.js +13 -0
  3. package/dist/AutoSaveInput/index.js +124 -0
  4. package/dist/AutoSaveInput/utils.js +10 -0
  5. package/dist/Breadcrumbs/breadcrumbs.scss +33 -0
  6. package/dist/Breadcrumbs/index.js +31 -0
  7. package/dist/BrowserSupport/Callout.js +15 -0
  8. package/dist/BrowserSupport/ContactUs.js +21 -0
  9. package/dist/BrowserSupport/DownloadLink.js +17 -0
  10. package/dist/BrowserSupport/PartialSupportedBrowserVersion.js +17 -0
  11. package/dist/BrowserSupport/UnknownBrowser.js +13 -0
  12. package/dist/BrowserSupport/UnsupportedBrowser.js +24 -0
  13. package/dist/BrowserSupport/UnsupportedBrowserMessage.js +22 -0
  14. package/dist/BrowserSupport/UnsupportedBrowserVersion.js +27 -0
  15. package/dist/BrowserSupport/UnsupportedVersionMessage.js +30 -0
  16. package/dist/BrowserSupport/browsersupport.scss +71 -0
  17. package/dist/BrowserSupport/constants.js +63 -0
  18. package/dist/BrowserSupport/index.js +58 -0
  19. package/dist/BrowserSupport/utils.js +32 -0
  20. package/dist/CalendarView/CustomDatePicker.js +87 -0
  21. package/dist/CalendarView/Header.js +53 -0
  22. package/dist/CalendarView/constants.js +19 -0
  23. package/dist/CalendarView/index.js +83 -0
  24. package/dist/CalendarView/utils.js +50 -0
  25. package/dist/Codeblock/index.js +30 -0
  26. package/dist/{Columns.js → Columns/index.js} +13 -130
  27. package/dist/Columns/utils.js +20 -0
  28. package/dist/ConfirmationModal/constants.js +3 -0
  29. package/dist/{ConfirmationModal.js → ConfirmationModal/index.js} +7 -23
  30. package/dist/ConfirmationModal/utils.js +10 -0
  31. package/dist/Container/container.scss +21 -0
  32. package/dist/Container/index.js +23 -0
  33. package/dist/CopyToClipboardButton/constants.js +13 -0
  34. package/dist/CopyToClipboardButton/copyToClipboard.scss +22 -0
  35. package/dist/CopyToClipboardButton/index.js +59 -0
  36. package/dist/CustomDomain/index.js +98 -0
  37. package/dist/CustomDomainDashboard/DeleteAlert.js +28 -0
  38. package/dist/CustomDomainDashboard/Header.js +32 -0
  39. package/dist/CustomDomainDashboard/Manage/Record.js +42 -0
  40. package/dist/CustomDomainDashboard/Manage/StatusInfo.js +21 -0
  41. package/dist/CustomDomainDashboard/Manage/TagBlock.js +36 -0
  42. package/dist/CustomDomainDashboard/Manage/constants.js +4 -0
  43. package/dist/CustomDomainDashboard/Manage/index.js +124 -0
  44. package/dist/CustomDomainDashboard/Manage/utils.js +8 -0
  45. package/dist/CustomDomainDashboard/api.js +35 -0
  46. package/dist/CustomDomainDashboard/constants.js +2 -0
  47. package/dist/CustomDomainDashboard/index.js +118 -0
  48. package/dist/CustomDomainDashboard/useCustomDomainApi.js +71 -0
  49. package/dist/CustomDomainDashboard/utils.js +84 -0
  50. package/dist/{DateFormat.js → DateFormat/index.js} +8 -25
  51. package/dist/DateRangeFilter/index.js +60 -0
  52. package/dist/DateRangeFilter/utils.js +113 -0
  53. package/dist/DynamicVariables/dynamic-variables.scss +34 -0
  54. package/dist/DynamicVariables/index.js +59 -0
  55. package/dist/DynamicVariables/utils.js +37 -0
  56. package/dist/EmailForm/EmailForm.js +97 -0
  57. package/dist/EmailForm/EmailFormProvider.js +45 -0
  58. package/dist/EmailForm/EmailPreview.js +129 -0
  59. package/dist/EmailForm/ReplyToField.js +55 -0
  60. package/dist/EmailForm/SendToField.js +27 -0
  61. package/dist/EmailForm/SubjectField.js +64 -0
  62. package/dist/EmailForm/constants.js +33 -0
  63. package/dist/EmailForm/contexts/EmailForm.js +7 -0
  64. package/dist/EmailForm/index.js +4 -0
  65. package/dist/EmailForm/utils.js +10 -0
  66. package/dist/EmailPreview/index.js +2 -0
  67. package/dist/{ErrorPage.js → ErrorPage/constants.js} +36 -175
  68. package/dist/ErrorPage/index.js +78 -0
  69. package/dist/Header/Breadcrumbs.js +31 -0
  70. package/dist/Header/Dropdown.js +12 -0
  71. package/dist/Header/constants.js +6 -0
  72. package/dist/Header/header.scss +121 -0
  73. package/dist/Header/index.js +61 -0
  74. package/dist/IconPicker/Icon.js +34 -0
  75. package/dist/IconPicker/NoResults.js +12 -0
  76. package/dist/IconPicker/constants.js +8 -0
  77. package/dist/IconPicker/icon-picker.scss +1 -0
  78. package/dist/IconPicker/index.js +164 -0
  79. package/dist/ImageWithFallback/ImagePlaceholder.js +16 -0
  80. package/dist/ImageWithFallback/index.js +31 -0
  81. package/dist/IntegrationCard/Dropdown.js +45 -0
  82. package/dist/IntegrationCard/Status.js +25 -0
  83. package/dist/IntegrationCard/index.js +128 -0
  84. package/dist/IntegrationDisconnectAlert/index.js +36 -0
  85. package/dist/{IntegrationWalkthroughModal.js → IntegrationWalkthroughModal/index.js} +6 -8
  86. package/dist/IpRestriction/AllowedIpRanges.js +75 -0
  87. package/dist/IpRestriction/CurrentIp.js +26 -0
  88. package/dist/IpRestriction/FormRow.js +84 -0
  89. package/dist/IpRestriction/Row.js +91 -0
  90. package/dist/IpRestriction/apis/allowed_ip_ranges.js +28 -0
  91. package/dist/IpRestriction/apis/current_ip.js +11 -0
  92. package/dist/IpRestriction/apis/ip_restriction.js +16 -0
  93. package/dist/IpRestriction/constants.js +20 -0
  94. package/dist/IpRestriction/hooks/reactQuery/useAllowedIpRanges.js +34 -0
  95. package/dist/IpRestriction/hooks/reactQuery/useCurrentIp.js +10 -0
  96. package/dist/IpRestriction/hooks/reactQuery/useIpRestrictions.js +18 -0
  97. package/dist/IpRestriction/index.js +102 -0
  98. package/dist/IpRestriction/utils.js +85 -0
  99. package/dist/KeyboardShortcuts/Pane/HotKey.js +44 -0
  100. package/dist/KeyboardShortcuts/Pane/HotKeyList.js +42 -0
  101. package/dist/KeyboardShortcuts/Pane/constants.js +25 -0
  102. package/dist/KeyboardShortcuts/Pane/index.js +61 -0
  103. package/dist/KeyboardShortcuts/Pane/keyboard-shortcuts.scss +5 -0
  104. package/dist/KeyboardShortcuts/Pane/utils.js +66 -0
  105. package/dist/KeyboardShortcuts/hooks/useKeyboardShortcutsPaneState.js +31 -0
  106. package/dist/KeyboardShortcuts/index.js +9 -0
  107. package/dist/LoginPage/Form.js +57 -0
  108. package/dist/LoginPage/constants.js +12 -0
  109. package/dist/LoginPage/index.js +103 -0
  110. package/dist/MenuBar/AddNew.js +25 -0
  111. package/dist/MenuBar/Block.js +60 -0
  112. package/dist/MenuBar/Item.js +32 -0
  113. package/dist/MenuBar/Search.js +39 -0
  114. package/dist/MenuBar/SubTitle.js +23 -0
  115. package/dist/MenuBar/index.js +46 -0
  116. package/dist/MenuBar/menubar.scss +154 -0
  117. package/dist/Metadata/Block.js +30 -0
  118. package/dist/Metadata/DetailsBlock.js +86 -0
  119. package/dist/Metadata/constants.js +9 -0
  120. package/dist/Metadata/index.js +29 -0
  121. package/dist/Metadata/metadata.scss +15 -0
  122. package/dist/MoreDropdown/constants.js +25 -0
  123. package/dist/{MoreDropdown.js → MoreDropdown/index.js} +9 -102
  124. package/dist/NavigationHeader/LeftBlock.js +32 -0
  125. package/dist/NavigationHeader/Navigation.js +24 -0
  126. package/dist/NavigationHeader/RightBlock.js +68 -0
  127. package/dist/NavigationHeader/constants.js +11 -0
  128. package/dist/NavigationHeader/index.js +19 -0
  129. package/dist/NavigationHeader/navigation-header.scss +3 -0
  130. package/dist/NeetoWidget/CodeBlock.js +57 -0
  131. package/dist/NeetoWidget/CodeSnippet.js +119 -0
  132. package/dist/NeetoWidget/EmbedCode.js +281 -0
  133. package/dist/NeetoWidget/Main.js +19 -0
  134. package/dist/NeetoWidget/SelectionSwitches/TooltipSwitch.js +25 -0
  135. package/dist/NeetoWidget/SelectionSwitches/index.js +44 -0
  136. package/dist/NeetoWidget/SyntaxHighlighter.js +17 -0
  137. package/dist/NeetoWidget/api.js +20 -0
  138. package/dist/NeetoWidget/constants.js +62 -0
  139. package/dist/NeetoWidget/hooks/useForceUpdate.js +14 -0
  140. package/dist/NeetoWidget/index.js +7 -0
  141. package/dist/NeetoWidget/mutations.js +9 -0
  142. package/dist/NeetoWidget/queries.js +32 -0
  143. package/dist/NeetoWidget/utils.js +83 -0
  144. package/dist/PageLoader/index.js +81 -0
  145. package/dist/PageLoader/page-loader.scss +95 -0
  146. package/dist/PhoneNumber/CountryPicker/SingleValue.js +21 -0
  147. package/dist/PhoneNumber/CountryPicker/constants.js +26 -0
  148. package/dist/PhoneNumber/CountryPicker/index.js +59 -0
  149. package/dist/PhoneNumber/FormikPhoneNumberInput.js +21 -0
  150. package/dist/PhoneNumber/PhoneNumber.js +30 -0
  151. package/dist/PhoneNumber/PhoneNumberInput.js +79 -0
  152. package/dist/PhoneNumber/index.js +5 -0
  153. package/dist/PhoneNumber/utils.js +55 -0
  154. package/dist/PublishBlock/AlertBlock.js +14 -0
  155. package/dist/PublishBlock/index.js +100 -0
  156. package/dist/PublishBlock/publish-block.scss +25 -0
  157. package/dist/Rename/DummySpan.js +21 -0
  158. package/dist/Rename/constants.js +1 -0
  159. package/dist/Rename/index.js +191 -0
  160. package/dist/Rename/rename.scss +69 -0
  161. package/dist/Rename/utils.js +10 -0
  162. package/dist/ResponsiveDevicePicker/constants.js +19 -0
  163. package/dist/ResponsiveDevicePicker/index.js +36 -0
  164. package/dist/Schedule/DisplayAvailability.js +58 -0
  165. package/dist/Schedule/Fields.js +43 -0
  166. package/dist/Schedule/Form/ScheduleRow.js +125 -0
  167. package/dist/Schedule/Form/constants.js +20 -0
  168. package/dist/Schedule/Form/index.js +144 -0
  169. package/dist/Schedule/Form/utils.js +63 -0
  170. package/dist/Schedule/Header.js +76 -0
  171. package/dist/Schedule/ScheduleContext.js +8 -0
  172. package/dist/Schedule/constants.js +8 -0
  173. package/dist/Schedule/dayjsExtended/constants.js +1 -0
  174. package/dist/Schedule/dayjsExtended/index.js +14 -0
  175. package/dist/Schedule/dayjsExtended/range.js +73 -0
  176. package/dist/Schedule/index.js +80 -0
  177. package/dist/Schedule/utils.js +152 -0
  178. package/dist/Scrollable/constants.js +8 -0
  179. package/dist/Scrollable/index.js +26 -0
  180. package/dist/Scrollable/scrollable.scss +32 -0
  181. package/dist/Search/index.js +52 -0
  182. package/dist/Security/AllowedKeywords/Add.js +38 -0
  183. package/dist/Security/AllowedKeywords/index.js +38 -0
  184. package/dist/Security/PasswordBlock.js +31 -0
  185. package/dist/Security/RadioBlock.js +38 -0
  186. package/dist/Security/api.js +12 -0
  187. package/dist/Security/constants.js +58 -0
  188. package/dist/Security/index.js +68 -0
  189. package/dist/Security/useSecurityApi.js +22 -0
  190. package/dist/Security/utils.js +31 -0
  191. package/dist/SendToFields/FilePicker.js +34 -0
  192. package/dist/SendToFields/constants.js +6 -0
  193. package/dist/SendToFields/index.js +102 -0
  194. package/dist/SendToFields/utils.js +54 -0
  195. package/dist/Settings/Category.js +30 -0
  196. package/dist/Settings/Item.js +38 -0
  197. package/dist/Settings/index.js +37 -0
  198. package/dist/Settings/utils.js +4 -0
  199. package/dist/ShareViaEmail/EmailBodyEditor.js +22 -0
  200. package/dist/ShareViaEmail/FilePicker.js +43 -0
  201. package/dist/ShareViaEmail/Form.js +101 -0
  202. package/dist/ShareViaEmail/FormikDatePicker.js +24 -0
  203. package/dist/ShareViaEmail/constants.js +14 -0
  204. package/dist/ShareViaEmail/index.js +89 -0
  205. package/dist/ShareViaEmail/utils.js +72 -0
  206. package/dist/ShareViaLink/EditURL.js +74 -0
  207. package/dist/ShareViaLink/Link.js +105 -0
  208. package/dist/ShareViaLink/QRCode.js +41 -0
  209. package/dist/ShareViaLink/RegenerateURL.js +47 -0
  210. package/dist/ShareViaLink/SocialMedia.js +52 -0
  211. package/dist/ShareViaLink/constants.js +25 -0
  212. package/dist/ShareViaLink/edit-url.scss +8 -0
  213. package/dist/ShareViaLink/index.js +46 -0
  214. package/dist/ShareViaLink/utils.js +47 -0
  215. package/dist/Sidebar/AppSwitcher/AppLink.js +45 -0
  216. package/dist/Sidebar/AppSwitcher/Backdrop.js +13 -0
  217. package/dist/Sidebar/AppSwitcher/Body.js +65 -0
  218. package/dist/Sidebar/AppSwitcher/Portal.js +27 -0
  219. package/dist/Sidebar/AppSwitcher/appswitcher.scss +164 -0
  220. package/dist/Sidebar/AppSwitcher/index.js +47 -0
  221. package/dist/Sidebar/AppSwitcher/utils.js +25 -0
  222. package/dist/Sidebar/Chevron.js +14 -0
  223. package/dist/Sidebar/FeaturedTooltip.js +19 -0
  224. package/dist/Sidebar/Footer/AppSwitcherButton.js +48 -0
  225. package/dist/Sidebar/Footer/ProfileButton.js +30 -0
  226. package/dist/Sidebar/Footer/index.js +56 -0
  227. package/dist/Sidebar/Footer/utils.js +39 -0
  228. package/dist/Sidebar/Header.js +33 -0
  229. package/dist/Sidebar/HelpSection/HelpSectionMenu.js +52 -0
  230. package/dist/Sidebar/HelpSection/index.js +32 -0
  231. package/dist/Sidebar/Links.js +112 -0
  232. package/dist/Sidebar/NavIconWrapper.js +20 -0
  233. package/dist/Sidebar/ProfileSection/LinkSection.js +36 -0
  234. package/dist/Sidebar/ProfileSection/ProfileMenu.js +48 -0
  235. package/dist/Sidebar/ProfileSection/index.js +42 -0
  236. package/dist/Sidebar/constants.js +40 -0
  237. package/dist/Sidebar/index.js +94 -0
  238. package/dist/Sidebar/sidebar.scss +379 -0
  239. package/dist/Sidebar/utils.js +18 -0
  240. package/dist/SubHeader/RightBlock/Columns.js +35 -0
  241. package/dist/SubHeader/RightBlock/Download.js +28 -0
  242. package/dist/SubHeader/RightBlock/Filter.js +31 -0
  243. package/dist/SubHeader/RightBlock/index.js +21 -0
  244. package/dist/SubHeader/RightBlock/utils.js +13 -0
  245. package/dist/SubHeader/index.js +28 -0
  246. package/dist/SubHeader/subheader.scss +78 -0
  247. package/dist/TableWrapper/index.js +18 -0
  248. package/dist/ThemeSidebar/Customize/Logo.js +39 -0
  249. package/dist/ThemeSidebar/Customize/Properties.js +170 -0
  250. package/dist/ThemeSidebar/Customize/index.js +66 -0
  251. package/dist/ThemeSidebar/Themes/ThemeCard.js +135 -0
  252. package/dist/ThemeSidebar/Themes/index.js +110 -0
  253. package/dist/ThemeSidebar/TitleBar.js +62 -0
  254. package/dist/ThemeSidebar/constants.js +127 -0
  255. package/dist/ThemeSidebar/fields/AlignmentBlock.js +50 -0
  256. package/dist/ThemeSidebar/fields/Card.js +19 -0
  257. package/dist/ThemeSidebar/fields/ColorBlock.js +19 -0
  258. package/dist/ThemeSidebar/fields/FontPickerBlock.js +35 -0
  259. package/dist/ThemeSidebar/fields/ImageBlock/ImageUploader.js +67 -0
  260. package/dist/ThemeSidebar/fields/ImageBlock/ProgressBar.js +22 -0
  261. package/dist/ThemeSidebar/fields/ImageBlock/index.js +55 -0
  262. package/dist/ThemeSidebar/fields/SelectBlock.js +24 -0
  263. package/dist/ThemeSidebar/fields/SliderBlock.js +30 -0
  264. package/dist/ThemeSidebar/fields/SwitchBlock.js +17 -0
  265. package/dist/ThemeSidebar/fields/TextBlock.js +13 -0
  266. package/dist/ThemeSidebar/fields/slider.scss +199 -0
  267. package/dist/ThemeSidebar/hooks/useDirectUploadDropzone.js +149 -0
  268. package/dist/ThemeSidebar/index.js +118 -0
  269. package/dist/ThemeSidebar/themeSidebar.scss +45 -0
  270. package/dist/ThemeSidebar/utils.js +169 -0
  271. package/dist/TimeFormat/index.js +3 -0
  272. package/dist/TimezoneMismatchModal/apis/time_zone.js +9 -0
  273. package/dist/TimezoneMismatchModal/index.js +83 -0
  274. package/dist/TimezoneMismatchModal/useTimeZoneApi.js +10 -0
  275. package/dist/TimezoneMismatchModal/utils.js +12 -0
  276. package/dist/ToggleFeatureCard/ToolTipSwitch.js +31 -0
  277. package/dist/ToggleFeatureCard/constants.js +5 -0
  278. package/dist/ToggleFeatureCard/hooks/useScrollIntoView.js +11 -0
  279. package/dist/ToggleFeatureCard/index.js +148 -0
  280. package/dist/ToggleFeatureCard/toggleFeatureCard.scss +4 -0
  281. package/package.json +28 -34
  282. package/src/translations/en.json +5 -1
  283. package/types/Search.d.ts +19 -0
  284. package/dist/AutoSaveInput.cjs.js +0 -724
  285. package/dist/AutoSaveInput.cjs.js.map +0 -1
  286. package/dist/AutoSaveInput.js +0 -718
  287. package/dist/AutoSaveInput.js.map +0 -1
  288. package/dist/Breadcrumbs.cjs.js +0 -44
  289. package/dist/Breadcrumbs.cjs.js.map +0 -1
  290. package/dist/Breadcrumbs.js +0 -38
  291. package/dist/Breadcrumbs.js.map +0 -1
  292. package/dist/BrowserSupport.cjs.js +0 -1731
  293. package/dist/BrowserSupport.cjs.js.map +0 -1
  294. package/dist/BrowserSupport.js +0 -1725
  295. package/dist/BrowserSupport.js.map +0 -1
  296. package/dist/CalendarView.cjs.js +0 -610
  297. package/dist/CalendarView.cjs.js.map +0 -1
  298. package/dist/CalendarView.js +0 -598
  299. package/dist/CalendarView.js.map +0 -1
  300. package/dist/Codeblock.cjs.js +0 -302
  301. package/dist/Codeblock.cjs.js.map +0 -1
  302. package/dist/Codeblock.js +0 -296
  303. package/dist/Codeblock.js.map +0 -1
  304. package/dist/Columns.cjs.js +0 -248
  305. package/dist/Columns.cjs.js.map +0 -1
  306. package/dist/Columns.js.map +0 -1
  307. package/dist/ConfirmationModal.cjs.js +0 -87
  308. package/dist/ConfirmationModal.cjs.js.map +0 -1
  309. package/dist/ConfirmationModal.js.map +0 -1
  310. package/dist/Container.cjs.js +0 -1277
  311. package/dist/Container.cjs.js.map +0 -1
  312. package/dist/Container.js +0 -1271
  313. package/dist/Container.js.map +0 -1
  314. package/dist/CopyToClipboardButton.cjs.js +0 -275
  315. package/dist/CopyToClipboardButton.cjs.js.map +0 -1
  316. package/dist/CopyToClipboardButton.js +0 -269
  317. package/dist/CopyToClipboardButton.js.map +0 -1
  318. package/dist/CustomDomain.cjs.js +0 -774
  319. package/dist/CustomDomain.cjs.js.map +0 -1
  320. package/dist/CustomDomain.js +0 -747
  321. package/dist/CustomDomain.js.map +0 -1
  322. package/dist/CustomDomainDashboard.cjs.js +0 -2370
  323. package/dist/CustomDomainDashboard.cjs.js.map +0 -1
  324. package/dist/CustomDomainDashboard.js +0 -2342
  325. package/dist/CustomDomainDashboard.js.map +0 -1
  326. package/dist/DateFormat.cjs.js +0 -51
  327. package/dist/DateFormat.cjs.js.map +0 -1
  328. package/dist/DateFormat.js.map +0 -1
  329. package/dist/DateRangeFilter.cjs.js +0 -236
  330. package/dist/DateRangeFilter.cjs.js.map +0 -1
  331. package/dist/DateRangeFilter.js +0 -229
  332. package/dist/DateRangeFilter.js.map +0 -1
  333. package/dist/DynamicVariables.cjs.js +0 -189
  334. package/dist/DynamicVariables.cjs.js.map +0 -1
  335. package/dist/DynamicVariables.js +0 -183
  336. package/dist/DynamicVariables.js.map +0 -1
  337. package/dist/EmailForm.cjs.js +0 -4295
  338. package/dist/EmailForm.cjs.js.map +0 -1
  339. package/dist/EmailForm.js +0 -4265
  340. package/dist/EmailForm.js.map +0 -1
  341. package/dist/EmailPreview.cjs.js +0 -1419
  342. package/dist/EmailPreview.cjs.js.map +0 -1
  343. package/dist/EmailPreview.js +0 -1413
  344. package/dist/EmailPreview.js.map +0 -1
  345. package/dist/ErrorPage.cjs.js +0 -226
  346. package/dist/ErrorPage.cjs.js.map +0 -1
  347. package/dist/ErrorPage.js.map +0 -1
  348. package/dist/Header.cjs.js +0 -188
  349. package/dist/Header.cjs.js.map +0 -1
  350. package/dist/Header.js +0 -182
  351. package/dist/Header.js.map +0 -1
  352. package/dist/IconPicker.cjs.js +0 -1308
  353. package/dist/IconPicker.cjs.js.map +0 -1
  354. package/dist/IconPicker.js +0 -1302
  355. package/dist/IconPicker.js.map +0 -1
  356. package/dist/ImageWithFallback.cjs.js +0 -247
  357. package/dist/ImageWithFallback.cjs.js.map +0 -1
  358. package/dist/ImageWithFallback.js +0 -241
  359. package/dist/ImageWithFallback.js.map +0 -1
  360. package/dist/IntegrationCard.cjs.js +0 -409
  361. package/dist/IntegrationCard.cjs.js.map +0 -1
  362. package/dist/IntegrationCard.js +0 -403
  363. package/dist/IntegrationCard.js.map +0 -1
  364. package/dist/IntegrationDisconnectAlert.cjs.js +0 -89
  365. package/dist/IntegrationDisconnectAlert.cjs.js.map +0 -1
  366. package/dist/IntegrationDisconnectAlert.js +0 -80
  367. package/dist/IntegrationDisconnectAlert.js.map +0 -1
  368. package/dist/IntegrationWalkthroughModal.cjs.js +0 -50
  369. package/dist/IntegrationWalkthroughModal.cjs.js.map +0 -1
  370. package/dist/IntegrationWalkthroughModal.js.map +0 -1
  371. package/dist/IpRestriction.cjs.js +0 -3931
  372. package/dist/IpRestriction.cjs.js.map +0 -1
  373. package/dist/IpRestriction.js +0 -3905
  374. package/dist/IpRestriction.js.map +0 -1
  375. package/dist/KeyboardShortcuts.cjs.js +0 -2263
  376. package/dist/KeyboardShortcuts.cjs.js.map +0 -1
  377. package/dist/KeyboardShortcuts.js +0 -2256
  378. package/dist/KeyboardShortcuts.js.map +0 -1
  379. package/dist/LoginPage.cjs.js +0 -618
  380. package/dist/LoginPage.cjs.js.map +0 -1
  381. package/dist/LoginPage.js +0 -593
  382. package/dist/LoginPage.js.map +0 -1
  383. package/dist/MenuBar.cjs.js +0 -34273
  384. package/dist/MenuBar.cjs.js.map +0 -1
  385. package/dist/MenuBar.js +0 -34267
  386. package/dist/MenuBar.js.map +0 -1
  387. package/dist/Metadata.cjs.js +0 -272
  388. package/dist/Metadata.cjs.js.map +0 -1
  389. package/dist/Metadata.js +0 -266
  390. package/dist/Metadata.js.map +0 -1
  391. package/dist/MoreDropdown.cjs.js +0 -168
  392. package/dist/MoreDropdown.cjs.js.map +0 -1
  393. package/dist/MoreDropdown.js.map +0 -1
  394. package/dist/NavigationHeader.cjs.js +0 -756
  395. package/dist/NavigationHeader.cjs.js.map +0 -1
  396. package/dist/NavigationHeader.js +0 -750
  397. package/dist/NavigationHeader.js.map +0 -1
  398. package/dist/NeetoWidget.cjs.js +0 -3375
  399. package/dist/NeetoWidget.cjs.js.map +0 -1
  400. package/dist/NeetoWidget.js +0 -3348
  401. package/dist/NeetoWidget.js.map +0 -1
  402. package/dist/PageLoader.cjs.js +0 -158
  403. package/dist/PageLoader.cjs.js.map +0 -1
  404. package/dist/PageLoader.js +0 -134
  405. package/dist/PageLoader.js.map +0 -1
  406. package/dist/PhoneNumber.cjs.js +0 -7021
  407. package/dist/PhoneNumber.cjs.js.map +0 -1
  408. package/dist/PhoneNumber.js +0 -6989
  409. package/dist/PhoneNumber.js.map +0 -1
  410. package/dist/PublishBlock.cjs.js +0 -224
  411. package/dist/PublishBlock.cjs.js.map +0 -1
  412. package/dist/PublishBlock.js +0 -218
  413. package/dist/PublishBlock.js.map +0 -1
  414. package/dist/Rename.cjs.js +0 -516
  415. package/dist/Rename.cjs.js.map +0 -1
  416. package/dist/Rename.js +0 -510
  417. package/dist/Rename.js.map +0 -1
  418. package/dist/ResponsiveDevicePicker.cjs.js +0 -260
  419. package/dist/ResponsiveDevicePicker.cjs.js.map +0 -1
  420. package/dist/ResponsiveDevicePicker.js +0 -254
  421. package/dist/ResponsiveDevicePicker.js.map +0 -1
  422. package/dist/Schedule.cjs.js +0 -1077
  423. package/dist/Schedule.cjs.js.map +0 -1
  424. package/dist/Schedule.js +0 -1046
  425. package/dist/Schedule.js.map +0 -1
  426. package/dist/Scrollable.cjs.js +0 -188
  427. package/dist/Scrollable.cjs.js.map +0 -1
  428. package/dist/Scrollable.js +0 -182
  429. package/dist/Scrollable.js.map +0 -1
  430. package/dist/Security.cjs.js +0 -1921
  431. package/dist/Security.cjs.js.map +0 -1
  432. package/dist/Security.js +0 -1895
  433. package/dist/Security.js.map +0 -1
  434. package/dist/SendToFields.cjs.js +0 -2524
  435. package/dist/SendToFields.cjs.js.map +0 -1
  436. package/dist/SendToFields.js +0 -2517
  437. package/dist/SendToFields.js.map +0 -1
  438. package/dist/Settings.cjs.js +0 -501
  439. package/dist/Settings.cjs.js.map +0 -1
  440. package/dist/Settings.js +0 -495
  441. package/dist/Settings.js.map +0 -1
  442. package/dist/ShareViaEmail.cjs.js +0 -4272
  443. package/dist/ShareViaEmail.cjs.js.map +0 -1
  444. package/dist/ShareViaEmail.js +0 -4246
  445. package/dist/ShareViaEmail.js.map +0 -1
  446. package/dist/ShareViaLink.cjs.js +0 -1512
  447. package/dist/ShareViaLink.cjs.js.map +0 -1
  448. package/dist/ShareViaLink.js +0 -1486
  449. package/dist/ShareViaLink.js.map +0 -1
  450. package/dist/Sidebar.cjs.js +0 -34985
  451. package/dist/Sidebar.cjs.js.map +0 -1
  452. package/dist/Sidebar.js +0 -34959
  453. package/dist/Sidebar.js.map +0 -1
  454. package/dist/SubHeader.cjs.js +0 -283
  455. package/dist/SubHeader.cjs.js.map +0 -1
  456. package/dist/SubHeader.js +0 -276
  457. package/dist/SubHeader.js.map +0 -1
  458. package/dist/TableWrapper.cjs.js +0 -87
  459. package/dist/TableWrapper.cjs.js.map +0 -1
  460. package/dist/TableWrapper.js +0 -81
  461. package/dist/TableWrapper.js.map +0 -1
  462. package/dist/ThemeSidebar.cjs.js +0 -13705
  463. package/dist/ThemeSidebar.cjs.js.map +0 -1
  464. package/dist/ThemeSidebar.js +0 -13680
  465. package/dist/ThemeSidebar.js.map +0 -1
  466. package/dist/TimeFormat.cjs.js +0 -53
  467. package/dist/TimeFormat.cjs.js.map +0 -1
  468. package/dist/TimeFormat.js +0 -47
  469. package/dist/TimeFormat.js.map +0 -1
  470. package/dist/TimezoneMismatchModal.cjs.js +0 -176
  471. package/dist/TimezoneMismatchModal.cjs.js.map +0 -1
  472. package/dist/TimezoneMismatchModal.js +0 -168
  473. package/dist/TimezoneMismatchModal.js.map +0 -1
  474. package/dist/ToggleFeatureCard.cjs.js +0 -389
  475. package/dist/ToggleFeatureCard.cjs.js.map +0 -1
  476. package/dist/ToggleFeatureCard.js +0 -383
  477. package/dist/ToggleFeatureCard.js.map +0 -1
@@ -0,0 +1,19 @@
1
+ import React from "react";
2
+ import { Typography } from "@bigbinary/neetoui";
3
+ var FeaturedTooltip = function FeaturedTooltip(_ref) {
4
+ var label = _ref.label,
5
+ description = _ref.description;
6
+ return /*#__PURE__*/React.createElement("div", {
7
+ className: "neeto-ui-flex neeto-ui-flex-col sidebar-featured-tooltip"
8
+ }, /*#__PURE__*/React.createElement(Typography, {
9
+ className: "neeto-ui-text-center sidebar-featured-tooltip__title",
10
+ lineHeight: "tight",
11
+ style: "h5",
12
+ weight: "semibold"
13
+ }, label), description && /*#__PURE__*/React.createElement(Typography, {
14
+ className: "neeto-ui-text-center neeto-ui-text-gray-400 sidebar-featured-tooltip__description",
15
+ lineHeight: "normal",
16
+ style: "body3"
17
+ }, description));
18
+ };
19
+ export default /*#__PURE__*/React.memo(FeaturedTooltip);
@@ -0,0 +1,48 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import React, { useState } from "react";
3
+ import { useFetchNeetoApps } from "@bigbinary/neeto-commons-frontend/react-utils";
4
+ import { AppSwitcher as NeetoUIAppSwitcherIcon } from "@bigbinary/neeto-icons";
5
+ import { Typography, Spinner } from "@bigbinary/neetoui";
6
+ import { useTranslation } from "react-i18next";
7
+ import "../sidebar.scss";
8
+ var AppSwitcherButton = function AppSwitcherButton(_ref) {
9
+ var onAppSwitcherToggle = _ref.onAppSwitcherToggle;
10
+ var _useTranslation = useTranslation(),
11
+ t = _useTranslation.t;
12
+ var _useState = useState(false),
13
+ _useState2 = _slicedToArray(_useState, 2),
14
+ hasHovered = _useState2[0],
15
+ setHasHovered = _useState2[1];
16
+ var _useFetchNeetoApps = useFetchNeetoApps(),
17
+ data = _useFetchNeetoApps.data,
18
+ refetchNeetoApps = _useFetchNeetoApps.refetch,
19
+ isStale = _useFetchNeetoApps.isStale,
20
+ isLoading = _useFetchNeetoApps.isLoading;
21
+ var handleAppSwitcherToggle = function handleAppSwitcherToggle(event) {
22
+ if (!data) event.stopPropagation();else onAppSwitcherToggle();
23
+ };
24
+ return /*#__PURE__*/React.createElement("button", {
25
+ className: "neeto-molecules-sidebar__link neeto-molecules-sidebar__link--app-switcher neeto-molecules-sidebar__link--button neeto-ui-flex neeto-ui-w-full neeto-ui-select-none neeto-ui-items-center neeto-ui-justify-start neeto-ui-shadow-none",
26
+ "data-cy": "app-switcher-button",
27
+ "data-testid": "app-switcher-button",
28
+ onClick: handleAppSwitcherToggle,
29
+ onMouseEnter: function onMouseEnter() {
30
+ if (!hasHovered && isStale) {
31
+ refetchNeetoApps();
32
+ setHasHovered(true);
33
+ }
34
+ }
35
+ }, /*#__PURE__*/React.createElement("span", {
36
+ className: "neeto-molecules-sidebar__link-icon neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center h-6 w-6"
37
+ }, hasHovered && isLoading ? /*#__PURE__*/React.createElement("span", {
38
+ "data-testid": "app-switcher-button-loader"
39
+ }, /*#__PURE__*/React.createElement(Spinner, null)) : /*#__PURE__*/React.createElement(NeetoUIAppSwitcherIcon, {
40
+ size: 24
41
+ })), /*#__PURE__*/React.createElement(Typography, {
42
+ className: "neeto-molecules-sidebar__link-label",
43
+ component: "span",
44
+ style: "body2",
45
+ weight: "normal"
46
+ }, t("neetoMolecules.sidebar.productSwitcher")));
47
+ };
48
+ export default AppSwitcherButton;
@@ -0,0 +1,30 @@
1
+ import React from "react";
2
+ import { useFetchNeetoApps } from "@bigbinary/neeto-commons-frontend/react-utils";
3
+ import { Tooltip } from "@bigbinary/neetoui";
4
+ import { getProfileInfo } from "./utils";
5
+ import ProfileSection from "../ProfileSection";
6
+ import ProfileMenu from "../ProfileSection/ProfileMenu";
7
+ var ProfileButton = function ProfileButton(_ref) {
8
+ var extraTopLinks = _ref.extraTopLinks,
9
+ profileInfoOverrides = _ref.profileInfoOverrides;
10
+ var _useFetchNeetoApps = useFetchNeetoApps(),
11
+ data = _useFetchNeetoApps.data;
12
+ var profileInfo = getProfileInfo(data === null || data === void 0 ? void 0 : data.isOwner, profileInfoOverrides);
13
+ return /*#__PURE__*/React.createElement(Tooltip, {
14
+ interactive: true,
15
+ className: "neeto-molecules-profile-popup-wrapper",
16
+ content: /*#__PURE__*/React.createElement(ProfileMenu, {
17
+ extraTopLinks: extraTopLinks,
18
+ profileInfo: profileInfo
19
+ }),
20
+ disabled: !data,
21
+ hideOnClick: false,
22
+ interactiveDebounce: 20,
23
+ offset: [0, -70],
24
+ position: "right",
25
+ theme: "light"
26
+ }, /*#__PURE__*/React.createElement(ProfileSection, {
27
+ profileInfo: profileInfo
28
+ }));
29
+ };
30
+ export default ProfileButton;
@@ -0,0 +1,56 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import React, { useEffect, useState } from "react";
3
+ import { Tooltip } from "@bigbinary/neetoui";
4
+ import AppSwitcherButton from "./AppSwitcherButton";
5
+ import ProfileButton from "./ProfileButton";
6
+ import HelpSection from "../HelpSection";
7
+ import HelpSectionMenu from "../HelpSection/HelpSectionMenu";
8
+ import "../sidebar.scss";
9
+ var Footer = function Footer(_ref) {
10
+ var extraTopLinks = _ref.extraTopLinks,
11
+ helpLinkOverrides = _ref.helpLinkOverrides,
12
+ profileInfoOverrides = _ref.profileInfoOverrides,
13
+ _ref$showAppSwitcher = _ref.showAppSwitcher,
14
+ showAppSwitcher = _ref$showAppSwitcher === void 0 ? false : _ref$showAppSwitcher,
15
+ onAppSwitcherToggle = _ref.onAppSwitcherToggle;
16
+ var _useState = useState(null),
17
+ _useState2 = _slicedToArray(_useState, 2),
18
+ changesCount = _useState2[0],
19
+ setChangesCount = _useState2[1];
20
+ useEffect(function () {
21
+ var Nv = {
22
+ onReceiveData: function onReceiveData(data) {
23
+ if (data.unreadCount) {
24
+ setChangesCount(data.unreadCount);
25
+ }
26
+ },
27
+ onShow: function onShow() {
28
+ setChangesCount(null);
29
+ }
30
+ };
31
+ window.Nv = window.Nv ? Object.assign(window.Nv, Nv) : Nv;
32
+ }, []);
33
+ return /*#__PURE__*/React.createElement("div", {
34
+ className: "neeto-molecules-sidebar__footer neeto-molecules-sidebar__no-shrinkable"
35
+ }, /*#__PURE__*/React.createElement(Tooltip, {
36
+ interactive: true,
37
+ className: "neeto-molecules-help-popup-wrapper",
38
+ content: /*#__PURE__*/React.createElement(HelpSectionMenu, {
39
+ changesCount: changesCount,
40
+ helpLinkOverrides: helpLinkOverrides
41
+ }),
42
+ hideOnClick: false,
43
+ interactiveDebounce: 20,
44
+ offset: [0, -70],
45
+ position: "right",
46
+ theme: "light"
47
+ }, /*#__PURE__*/React.createElement(HelpSection, {
48
+ changesCount: changesCount
49
+ })), showAppSwitcher && /*#__PURE__*/React.createElement(AppSwitcherButton, {
50
+ onAppSwitcherToggle: onAppSwitcherToggle
51
+ }), /*#__PURE__*/React.createElement(ProfileButton, {
52
+ extraTopLinks: extraTopLinks,
53
+ profileInfoOverrides: profileInfoOverrides
54
+ }));
55
+ };
56
+ export default Footer;
@@ -0,0 +1,39 @@
1
+ import { t } from "i18next";
2
+ import { resetAuthTokens } from "@bigbinary/neeto-commons-frontend/utils";
3
+ import { User, Settings, LeftArrow } from "@bigbinary/neeto-icons";
4
+ import { mergeDeepLeft } from "ramda";
5
+ import { MY_PROFILE_URL, MY_ORGANIZATION_URL } from "../constants";
6
+ import { getSidebarStateLocalStorageKey } from "../utils";
7
+ export var getProfileInfo = function getProfileInfo(isOwner, profileInfoOverrides) {
8
+ var _globalProps$user, _globalProps$user2, _globalProps$user3, _globalProps$user4, _globalProps$user5;
9
+ return mergeDeepLeft(profileInfoOverrides, {
10
+ name: "".concat((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.firstName, " ").concat((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.lastName),
11
+ imageUrl: (_globalProps$user3 = globalProps.user) === null || _globalProps$user3 === void 0 ? void 0 : _globalProps$user3.profileImageUrl,
12
+ email: ((_globalProps$user4 = globalProps.user) === null || _globalProps$user4 === void 0 ? void 0 : _globalProps$user4.email) || ((_globalProps$user5 = globalProps.user) === null || _globalProps$user5 === void 0 ? void 0 : _globalProps$user5.phoneNumber),
13
+ topLinks: [{
14
+ label: t("neetoMolecules.sidebar.myProfile"),
15
+ icon: User,
16
+ onClick: function onClick() {
17
+ return window.open(MY_PROFILE_URL, "_blank");
18
+ },
19
+ "data-cy": "my-profile-button"
20
+ }, isOwner && {
21
+ label: t("neetoMolecules.sidebar.myOrganization"),
22
+ icon: Settings,
23
+ onClick: function onClick() {
24
+ return window.open(MY_ORGANIZATION_URL, "_blank");
25
+ },
26
+ "data-cy": "profile-organization-settings-button"
27
+ }].filter(Boolean),
28
+ bottomLinks: [{
29
+ icon: LeftArrow,
30
+ label: t("neetoMolecules.sidebar.logout"),
31
+ onClick: function onClick() {
32
+ resetAuthTokens();
33
+ localStorage.removeItem(getSidebarStateLocalStorageKey());
34
+ window.location.href = "/logout";
35
+ },
36
+ "data-cy": "profile-logout-button"
37
+ }]
38
+ });
39
+ };
@@ -0,0 +1,33 @@
1
+ import React from "react";
2
+ import { capitalize, findBy } from "@bigbinary/neeto-commons-frontend/pure";
3
+ import { useFetchNeetoApps } from "@bigbinary/neeto-commons-frontend/react-utils";
4
+ import { Neeto } from "@bigbinary/neeto-icons/typeface-logos";
5
+ import * as ProductTypefaceLogos from "@bigbinary/neeto-icons/typeface-logos";
6
+ import { Link } from "react-router-dom";
7
+ var Header = function Header(_ref) {
8
+ var _ProductTypefaceLogos;
9
+ var customLogo = _ref.customLogo;
10
+ var productName = globalProps.appName.substr(5);
11
+ var logoName = "Neeto".concat(capitalize(productName.toLowerCase()));
12
+ var ProductTypefaceLogo = (_ProductTypefaceLogos = ProductTypefaceLogos[logoName]) !== null && _ProductTypefaceLogos !== void 0 ? _ProductTypefaceLogos : Neeto;
13
+ var LogoComponent = customLogo !== null && customLogo !== void 0 ? customLogo : ProductTypefaceLogo;
14
+ var _useFetchNeetoApps = useFetchNeetoApps(),
15
+ data = _useFetchNeetoApps.data;
16
+ var homePath = "/";
17
+ if (data !== null && data !== void 0 && data.neetoApps) {
18
+ var thisApp = findBy({
19
+ name: productName
20
+ }, data.neetoApps);
21
+ if (thisApp !== null && thisApp !== void 0 && thisApp.url) {
22
+ homePath = new URL(thisApp === null || thisApp === void 0 ? void 0 : thisApp.url).pathname;
23
+ }
24
+ }
25
+ return /*#__PURE__*/React.createElement("div", {
26
+ className: "neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable",
27
+ "data-cy": "sidebar-info"
28
+ }, /*#__PURE__*/React.createElement(Link, {
29
+ className: "neeto-molecules-sidebar__logo neeto-ui-w-full",
30
+ to: homePath
31
+ }, /*#__PURE__*/React.createElement(LogoComponent, null)));
32
+ };
33
+ export default /*#__PURE__*/React.memo(Header);
@@ -0,0 +1,52 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
+ var _excluded = ["label"];
6
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
+ import React from "react";
9
+ import { isPresent } from "@bigbinary/neeto-commons-frontend/pure";
10
+ import { Button } from "@bigbinary/neetoui";
11
+ import KeyboardShortcuts from "../../KeyboardShortcuts";
12
+ import { DEFAULT_HELP_LINK_PROPS } from "../constants";
13
+ import "../sidebar.scss";
14
+ var HelpSectionMenu = function HelpSectionMenu(_ref) {
15
+ var helpLinkOverrides = _ref.helpLinkOverrides,
16
+ changesCount = _ref.changesCount;
17
+ var _KeyboardShortcuts$us = KeyboardShortcuts.usePaneState(),
18
+ _KeyboardShortcuts$us2 = _slicedToArray(_KeyboardShortcuts$us, 2),
19
+ setIsOpen = _KeyboardShortcuts$us2[1];
20
+ var helpLinks = Object.keys(DEFAULT_HELP_LINK_PROPS).map(function (key) {
21
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, DEFAULT_HELP_LINK_PROPS[key]), helpLinkOverrides[key]), key === "keyboardShortcutProps" && {
22
+ onClick: function onClick() {
23
+ return setIsOpen(true);
24
+ }
25
+ }), key === "changelogProps" && changesCount && {
26
+ changesCount: changesCount
27
+ });
28
+ }).filter(function (_ref2) {
29
+ var hide = _ref2.hide;
30
+ return !hide;
31
+ });
32
+ return /*#__PURE__*/React.createElement("ul", {
33
+ className: "neeto-molecules-help-sublist"
34
+ }, helpLinks.map(function (_ref3, idx) {
35
+ var label = _ref3.label,
36
+ buttonProps = _objectWithoutProperties(_ref3, _excluded);
37
+ return /*#__PURE__*/React.createElement("li", {
38
+ className: "neeto-molecules-help-sublist__item",
39
+ key: idx
40
+ }, /*#__PURE__*/React.createElement(Button, _extends({
41
+ fullWidth: true,
42
+ className: "neeto-molecules-help-sublist__item-btn",
43
+ iconPosition: "left",
44
+ iconSize: 18,
45
+ style: "text"
46
+ }, buttonProps), label, isPresent(buttonProps.changesCount) && /*#__PURE__*/React.createElement("span", {
47
+ className: "neeto-molecules-help-sublist__item-btn-count",
48
+ "data-testid": "help-section-menu-changes-count"
49
+ }, buttonProps.changesCount)));
50
+ }));
51
+ };
52
+ export default HelpSectionMenu;
@@ -0,0 +1,32 @@
1
+ import React, { forwardRef } from "react";
2
+ import { isPresent } from "@bigbinary/neeto-commons-frontend/pure";
3
+ import { Help } from "@bigbinary/neeto-icons";
4
+ import { Typography } from "@bigbinary/neetoui";
5
+ import { useTranslation } from "react-i18next";
6
+ import "../sidebar.scss";
7
+
8
+ // Rule can be enabled once the ticket - https://github.com/bigbinary/neeto-commons-frontend/issues/905 is closed.
9
+ // eslint-disable-next-line @bigbinary/neeto/no-dumb-components-with-use-translation
10
+ var HelpSection = function HelpSection(_ref, ref) {
11
+ var changesCount = _ref.changesCount;
12
+ var _useTranslation = useTranslation(),
13
+ t = _useTranslation.t;
14
+ return /*#__PURE__*/React.createElement("button", {
15
+ className: "neeto-molecules-sidebar__link neeto-molecules-sidebar__link--button neeto-ui-shadow-none neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none",
16
+ "data-cy": "help-button",
17
+ ref: ref
18
+ }, /*#__PURE__*/React.createElement("span", {
19
+ className: "neeto-molecules-sidebar__link-icon neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center"
20
+ }, /*#__PURE__*/React.createElement(Help, {
21
+ size: 24
22
+ }), isPresent(changesCount) && /*#__PURE__*/React.createElement("span", {
23
+ className: "neeto-molecules-sidebar__notif-count",
24
+ "data-testid": "help-icon-changes-count"
25
+ }, changesCount)), /*#__PURE__*/React.createElement(Typography, {
26
+ className: "neeto-molecules-sidebar__link-label",
27
+ component: "span",
28
+ style: "body2",
29
+ weight: "normal"
30
+ }, t("neetoMolecules.sidebar.helpLinks.helpCenter")));
31
+ };
32
+ export default /*#__PURE__*/forwardRef(HelpSection);
@@ -0,0 +1,112 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
+ var _excluded = ["label", "to", "icon", "items"],
6
+ _excluded2 = ["label", "to", "count", "dataCy"];
7
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9
+ import React, { useState } from "react";
10
+ import classnames from "classnames";
11
+ import { globalProps } from "@bigbinary/neeto-commons-frontend/initializers";
12
+ import { isNotPresent } from "@bigbinary/neeto-commons-frontend/pure";
13
+ import { Down } from "@bigbinary/neeto-icons";
14
+ import { Typography } from "@bigbinary/neetoui";
15
+ import { __, curry, includes, is, not } from "ramda";
16
+ import { NavLink, useLocation } from "react-router-dom";
17
+ import { isSubRouteActive } from "./utils";
18
+ var Links = function Links(_ref) {
19
+ var navLinks = _ref.navLinks;
20
+ var location = useLocation();
21
+ var _useState = useState(true),
22
+ _useState2 = _slicedToArray(_useState, 2),
23
+ isActiveLinkExpanded = _useState2[0],
24
+ setIsActiveLinkExpanded = _useState2[1];
25
+ var filterByPermissions = curry(function (_ref2) {
26
+ var permissions = _ref2.permissions;
27
+ if (permissions) {
28
+ return is(Array, permissions) ? permissions.some(includes(__, globalProps.permissions)) : globalProps.permissions.includes(permissions);
29
+ }
30
+ return true;
31
+ });
32
+ var handleNavLinkClick = function handleNavLinkClick(event, isActive, items) {
33
+ if (isNotPresent(items)) return;
34
+ if (isActive()) {
35
+ setIsActiveLinkExpanded(not);
36
+ event.preventDefault();
37
+ return;
38
+ }
39
+ setIsActiveLinkExpanded(true);
40
+ };
41
+ return /*#__PURE__*/React.createElement("div", {
42
+ className: "neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable"
43
+ }, navLinks.filter(filterByPermissions).map(function (_ref3, mainIndex) {
44
+ var label = _ref3.label,
45
+ to = _ref3.to,
46
+ icon = _ref3.icon,
47
+ items = _ref3.items,
48
+ otherProps = _objectWithoutProperties(_ref3, _excluded);
49
+ var IconSVG = icon;
50
+ var url = new URL(to, window.location.href);
51
+ var isActive = function isActive() {
52
+ return is(Function, otherProps.isActive) ? otherProps.isActive() : location.pathname.startsWith(url.pathname);
53
+ };
54
+ var isMenuExpanded = isActive() && isActiveLinkExpanded;
55
+ return /*#__PURE__*/React.createElement(React.Fragment, {
56
+ key: mainIndex
57
+ }, /*#__PURE__*/React.createElement(NavLink, _extends({
58
+ activeClassName: "active",
59
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link",
60
+ onClick: function onClick(event) {
61
+ return handleNavLinkClick(event, isActive, items);
62
+ }
63
+ }, _objectSpread({
64
+ isActive: isActive,
65
+ to: to
66
+ }, otherProps)), icon && /*#__PURE__*/React.createElement("span", {
67
+ className: "neeto-molecules-sidebar__link-icon",
68
+ "data-testid": label
69
+ }, /*#__PURE__*/React.createElement(IconSVG, null)), /*#__PURE__*/React.createElement(Typography, {
70
+ className: "neeto-molecules-sidebar__link-label",
71
+ component: "span",
72
+ style: "body2",
73
+ weight: "normal"
74
+ }, label), items && /*#__PURE__*/React.createElement("span", {
75
+ className: classnames("neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret", {
76
+ "neeto-molecules-sidebar__link-icon--rotate": isMenuExpanded
77
+ })
78
+ }, /*#__PURE__*/React.createElement(Down, {
79
+ size: 16
80
+ }))), items && isMenuExpanded && /*#__PURE__*/React.createElement("div", {
81
+ className: "neeto-molecules-sidebar__sublink-wrapper",
82
+ "data-cy": "sidebar-sub-link-wrapper"
83
+ }, items.filter(filterByPermissions).map(function (_ref4, subIndex) {
84
+ var subLabel = _ref4.label,
85
+ subRoute = _ref4.to,
86
+ count = _ref4.count,
87
+ dataCy = _ref4.dataCy,
88
+ otherProps = _objectWithoutProperties(_ref4, _excluded2);
89
+ return /*#__PURE__*/React.createElement(NavLink, _extends({
90
+ activeClassName: "active",
91
+ className: "neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none",
92
+ "data-cy": "".concat(dataCy, "-sub-link"),
93
+ isActive: function isActive() {
94
+ return isSubRouteActive(subRoute, location);
95
+ },
96
+ key: subIndex,
97
+ to: subRoute
98
+ }, otherProps), /*#__PURE__*/React.createElement(Typography, {
99
+ className: "neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow",
100
+ component: "span",
101
+ "data-cy": "".concat(dataCy, "-sub-link-label"),
102
+ style: "body2"
103
+ }, subLabel), /*#__PURE__*/React.createElement(Typography, {
104
+ className: "neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0",
105
+ component: "span",
106
+ "data-cy": "".concat(dataCy, "-sub-link-count"),
107
+ style: "body2"
108
+ }, count > 999 ? "999+" : count));
109
+ })));
110
+ }));
111
+ };
112
+ export default Links;
@@ -0,0 +1,20 @@
1
+ import React from "react";
2
+ import { Tooltip } from "@bigbinary/neetoui";
3
+ import FeaturedTooltip from "./FeaturedTooltip";
4
+ var NavIconWrapper = function NavIconWrapper(_ref) {
5
+ var description = _ref.description,
6
+ label = _ref.label,
7
+ children = _ref.children;
8
+ return /*#__PURE__*/React.createElement(Tooltip, {
9
+ className: "sidebar-featured-tooltip__content",
10
+ content: /*#__PURE__*/React.createElement(FeaturedTooltip, {
11
+ description: description,
12
+ label: label
13
+ }),
14
+ delay: [400, 40],
15
+ distance: "20rem",
16
+ duration: [200, 200],
17
+ position: "right"
18
+ }, children);
19
+ };
20
+ export default NavIconWrapper;
@@ -0,0 +1,36 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
+ var _excluded = ["onClick", "label", "icon"];
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
+ import React from "react";
8
+ import { Button } from "@bigbinary/neetoui";
9
+ import "../sidebar.scss";
10
+ var LinkSection = function LinkSection(_ref) {
11
+ var links = _ref.links;
12
+ return /*#__PURE__*/React.createElement("ul", {
13
+ className: "neeto-molecules-profile-sublist"
14
+ }, links.map(function (_ref2, idx) {
15
+ var onClick = _ref2.onClick,
16
+ label = _ref2.label,
17
+ _ref2$icon = _ref2.icon,
18
+ icon = _ref2$icon === void 0 ? null : _ref2$icon,
19
+ otherProps = _objectWithoutProperties(_ref2, _excluded);
20
+ return /*#__PURE__*/React.createElement("li", {
21
+ className: "neeto-molecules-profile-sublist__item",
22
+ key: idx
23
+ }, /*#__PURE__*/React.createElement(Button, _extends({
24
+ fullWidth: true,
25
+ className: "neeto-molecules-profile-sublist__item-btn",
26
+ iconPosition: "left",
27
+ iconSize: 18,
28
+ style: "text"
29
+ }, _objectSpread({
30
+ icon: icon,
31
+ label: label,
32
+ onClick: onClick
33
+ }, otherProps))));
34
+ }));
35
+ };
36
+ export default LinkSection;
@@ -0,0 +1,48 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
+ import React from "react";
3
+ import classnames from "classnames";
4
+ import { truncate } from "@bigbinary/neeto-commons-frontend/pure";
5
+ import { Avatar, Typography } from "@bigbinary/neetoui";
6
+ import LinkSection from "./LinkSection";
7
+ import "../sidebar.scss";
8
+ var ProfileMenu = function ProfileMenu(_ref) {
9
+ var profileInfo = _ref.profileInfo,
10
+ extraTopLinks = _ref.extraTopLinks;
11
+ var name = profileInfo.name,
12
+ email = profileInfo.email,
13
+ topLinks = profileInfo.topLinks,
14
+ bottomLinks = profileInfo.bottomLinks,
15
+ customContent = profileInfo.customContent;
16
+ return /*#__PURE__*/React.createElement("div", {
17
+ className: "neeto-ui-flex neeto-ui-flex-col neeto-molecules-profile-popup",
18
+ "data-cy": "profile-popup",
19
+ "data-testid": "profile-popup"
20
+ }, /*#__PURE__*/React.createElement("div", {
21
+ className: classnames("neeto-ui-relative neeto-ui-flex neeto-ui-items-center neeto-ui-p-3 neeto-ui-bg-primary-100 neeto-molecules-profile-popup__top-section")
22
+ }, /*#__PURE__*/React.createElement("div", {
23
+ className: "top-0 left-0"
24
+ }, /*#__PURE__*/React.createElement(Avatar, {
25
+ size: "large",
26
+ user: profileInfo
27
+ })), /*#__PURE__*/React.createElement("div", {
28
+ className: "neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-grow neeto-ui-min-w-0 neeto-ui-pl-3"
29
+ }, /*#__PURE__*/React.createElement(Typography, {
30
+ className: "neeto-ui-m-0",
31
+ component: "h2",
32
+ lineHeight: "tight",
33
+ style: "h5",
34
+ title: name,
35
+ weight: "semibold"
36
+ }, truncate(name, 18)), email && /*#__PURE__*/React.createElement(Typography, {
37
+ className: "neeto-ui-w-full neeto-ui-truncate neeto-ui-text-gray-700",
38
+ lineHeight: "tight",
39
+ style: "body3"
40
+ }, email))), /*#__PURE__*/React.createElement("div", {
41
+ className: "neeto-molecules-sidebar__profile-wrapper-custom-content"
42
+ }, customContent), topLinks && /*#__PURE__*/React.createElement(LinkSection, {
43
+ links: [].concat(_toConsumableArray(extraTopLinks), _toConsumableArray(topLinks))
44
+ }), bottomLinks && /*#__PURE__*/React.createElement(LinkSection, {
45
+ links: bottomLinks
46
+ }));
47
+ };
48
+ export default ProfileMenu;
@@ -0,0 +1,42 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import React, { forwardRef, useState } from "react";
3
+ import { truncate } from "@bigbinary/neeto-commons-frontend/pure";
4
+ import { useFetchNeetoApps } from "@bigbinary/neeto-commons-frontend/react-utils";
5
+ import { Avatar, Typography, Spinner } from "@bigbinary/neetoui";
6
+ import "../sidebar.scss";
7
+ var ProfileSection = function ProfileSection(_ref, ref) {
8
+ var profileInfo = _ref.profileInfo;
9
+ var _useState = useState(false),
10
+ _useState2 = _slicedToArray(_useState, 2),
11
+ hasHovered = _useState2[0],
12
+ setHasHovered = _useState2[1];
13
+ var _useFetchNeetoApps = useFetchNeetoApps(),
14
+ refetchNeetoApps = _useFetchNeetoApps.refetch,
15
+ isLoading = _useFetchNeetoApps.isLoading,
16
+ isStale = _useFetchNeetoApps.isStale;
17
+ return /*#__PURE__*/React.createElement("button", {
18
+ className: "neeto-molecules-sidebar__link neeto-molecules-sidebar__link--button neeto-ui-shadow-none neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none",
19
+ "data-cy": "profile-section",
20
+ "data-testid": "profile-section",
21
+ ref: ref,
22
+ onMouseEnter: function onMouseEnter() {
23
+ if (!hasHovered && isStale) {
24
+ refetchNeetoApps();
25
+ setHasHovered(true);
26
+ }
27
+ }
28
+ }, isLoading && hasHovered ? /*#__PURE__*/React.createElement("span", {
29
+ "data-testid": "profile-avatar-loader"
30
+ }, /*#__PURE__*/React.createElement(Spinner, null)) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Avatar, {
31
+ className: "neeto-ui-flex-shrink-0 neeto-molecules-sidebar__profile-avatar",
32
+ "data-testid": "profile-avatar",
33
+ size: "small",
34
+ user: profileInfo
35
+ }), /*#__PURE__*/React.createElement(Typography, {
36
+ className: "neeto-molecules-sidebar__link-label",
37
+ component: "span",
38
+ style: "body2",
39
+ weight: "normal"
40
+ }, truncate(profileInfo.name, 18))));
41
+ };
42
+ export default /*#__PURE__*/forwardRef(ProfileSection);
@@ -0,0 +1,40 @@
1
+ import { t } from "i18next";
2
+ import { Book, Keyboard, Gift, ChatEmpty } from "@bigbinary/neeto-icons";
3
+ import { toLower } from "ramda";
4
+ export var MY_PROFILE_URL = "/auth/profile/edit";
5
+ export var MY_ORGANIZATION_URL = "/auth/organization/edit";
6
+ export var CHANGELOG_WIDGET_TRIGGER_ID = "neetochangelog-trigger";
7
+ export var PRODUCT_LOGO_WIDTH = 40;
8
+ export var PRODUCT_LOGO_HEIGHT = 40;
9
+ export var DEFAULT_HELP_LINK_PROPS = {
10
+ liveChatProps: {
11
+ label: t("neetoMolecules.sidebar.helpLinks.liveChat"),
12
+ icon: ChatEmpty,
13
+ "data-cy": "help-link-live-chat-button",
14
+ onClick: function onClick() {
15
+ var _window$NeetoChat, _window$NeetoChat$con, _window$NeetoChat2, _window$NeetoChat2$co;
16
+ (_window$NeetoChat = window.NeetoChat) === null || _window$NeetoChat === void 0 ? void 0 : (_window$NeetoChat$con = _window$NeetoChat.contextualHelp) === null || _window$NeetoChat$con === void 0 ? void 0 : _window$NeetoChat$con.maximizeWidget();
17
+ (_window$NeetoChat2 = window.NeetoChat) === null || _window$NeetoChat2 === void 0 ? void 0 : (_window$NeetoChat2$co = _window$NeetoChat2.contextualHelp) === null || _window$NeetoChat2$co === void 0 ? void 0 : _window$NeetoChat2$co.openWidget();
18
+ }
19
+ },
20
+ helpCenterProps: {
21
+ label: t("neetoMolecules.sidebar.helpLinks.helpArticles"),
22
+ icon: Book,
23
+ "data-cy": "help-link-help-center-button",
24
+ href: "https://help.".concat(toLower(globalProps.appName), ".com/"),
25
+ target: "_blank"
26
+ },
27
+ changelogProps: {
28
+ id: CHANGELOG_WIDGET_TRIGGER_ID,
29
+ label: t("neetoMolecules.sidebar.helpLinks.whatsNew"),
30
+ icon: Gift,
31
+ "data-cy": "help-link-changelog-button"
32
+ },
33
+ keyboardShortcutProps: {
34
+ label: t("neetoMolecules.sidebar.helpLinks.keyboardShortcuts"),
35
+ icon: Keyboard,
36
+ "data-cy": "help-link-keyboard-shortcut-button"
37
+ }
38
+ };
39
+ export var QUERY_CACHE_KEY = "queryCache";
40
+ export var NEETO_APPS_QUERY_KEY = "neeto-apps-list";