@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
@@ -1,1302 +0,0 @@
1
- import React, { createElement, PureComponent, useState, useRef, useEffect } from 'react';
2
- import { humanize, isNotEmpty, noop } from '@bigbinary/neeto-commons-frontend/pure';
3
- import { useDebounce } from '@bigbinary/neeto-commons-frontend/react-utils';
4
- import { Close } from '@bigbinary/neeto-icons';
5
- import { Tooltip, Typography, Label, Dropdown, Input, Button } from '@bigbinary/neetoui';
6
- import { useTranslation } from 'react-i18next';
7
-
8
- function _extends() {
9
- _extends = Object.assign ? Object.assign.bind() : function (target) {
10
- for (var i = 1; i < arguments.length; i++) {
11
- var source = arguments[i];
12
- for (var key in source) {
13
- if (Object.prototype.hasOwnProperty.call(source, key)) {
14
- target[key] = source[key];
15
- }
16
- }
17
- }
18
- return target;
19
- };
20
- return _extends.apply(this, arguments);
21
- }
22
-
23
- function _arrayWithHoles(arr) {
24
- if (Array.isArray(arr)) return arr;
25
- }
26
-
27
- function _iterableToArrayLimit(arr, i) {
28
- var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
29
- if (null != _i) {
30
- var _s,
31
- _e,
32
- _x,
33
- _r,
34
- _arr = [],
35
- _n = !0,
36
- _d = !1;
37
- try {
38
- if (_x = (_i = _i.call(arr)).next, 0 === i) {
39
- if (Object(_i) !== _i) return;
40
- _n = !1;
41
- } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
42
- } catch (err) {
43
- _d = !0, _e = err;
44
- } finally {
45
- try {
46
- if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return;
47
- } finally {
48
- if (_d) throw _e;
49
- }
50
- }
51
- return _arr;
52
- }
53
- }
54
-
55
- function _arrayLikeToArray(arr, len) {
56
- if (len == null || len > arr.length) len = arr.length;
57
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
58
- return arr2;
59
- }
60
-
61
- function _unsupportedIterableToArray(o, minLen) {
62
- if (!o) return;
63
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
64
- var n = Object.prototype.toString.call(o).slice(8, -1);
65
- if (n === "Object" && o.constructor) n = o.constructor.name;
66
- if (n === "Map" || n === "Set") return Array.from(o);
67
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
68
- }
69
-
70
- function _nonIterableRest() {
71
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
72
- }
73
-
74
- function _slicedToArray(arr, i) {
75
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
76
- }
77
-
78
- function _objectWithoutPropertiesLoose(source, excluded) {
79
- if (source == null) return {};
80
- var target = {};
81
- var sourceKeys = Object.keys(source);
82
- var key, i;
83
- for (i = 0; i < sourceKeys.length; i++) {
84
- key = sourceKeys[i];
85
- if (excluded.indexOf(key) >= 0) continue;
86
- target[key] = source[key];
87
- }
88
- return target;
89
- }
90
-
91
- function _objectWithoutProperties(source, excluded) {
92
- if (source == null) return {};
93
- var target = _objectWithoutPropertiesLoose(source, excluded);
94
- var key, i;
95
- if (Object.getOwnPropertySymbols) {
96
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
97
- for (i = 0; i < sourceSymbolKeys.length; i++) {
98
- key = sourceSymbolKeys[i];
99
- if (excluded.indexOf(key) >= 0) continue;
100
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
101
- target[key] = source[key];
102
- }
103
- }
104
- return target;
105
- }
106
-
107
- var classnames$1 = {exports: {}};
108
-
109
- /*!
110
- Copyright (c) 2018 Jed Watson.
111
- Licensed under the MIT License (MIT), see
112
- http://jedwatson.github.io/classnames
113
- */
114
-
115
- (function (module) {
116
- /* global define */
117
-
118
- (function () {
119
-
120
- var hasOwn = {}.hasOwnProperty;
121
-
122
- function classNames() {
123
- var classes = [];
124
-
125
- for (var i = 0; i < arguments.length; i++) {
126
- var arg = arguments[i];
127
- if (!arg) continue;
128
-
129
- var argType = typeof arg;
130
-
131
- if (argType === 'string' || argType === 'number') {
132
- classes.push(arg);
133
- } else if (Array.isArray(arg)) {
134
- if (arg.length) {
135
- var inner = classNames.apply(null, arg);
136
- if (inner) {
137
- classes.push(inner);
138
- }
139
- }
140
- } else if (argType === 'object') {
141
- if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {
142
- classes.push(arg.toString());
143
- continue;
144
- }
145
-
146
- for (var key in arg) {
147
- if (hasOwn.call(arg, key) && arg[key]) {
148
- classes.push(key);
149
- }
150
- }
151
- }
152
- }
153
-
154
- return classes.join(' ');
155
- }
156
-
157
- if (module.exports) {
158
- classNames.default = classNames;
159
- module.exports = classNames;
160
- } else {
161
- window.classNames = classNames;
162
- }
163
- }());
164
- } (classnames$1));
165
-
166
- var classnames = classnames$1.exports;
167
-
168
- function _assertThisInitialized(self) {
169
- if (self === void 0) {
170
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
171
- }
172
- return self;
173
- }
174
-
175
- function _setPrototypeOf(o, p) {
176
- _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
177
- o.__proto__ = p;
178
- return o;
179
- };
180
- return _setPrototypeOf(o, p);
181
- }
182
-
183
- function _inheritsLoose(subClass, superClass) {
184
- subClass.prototype = Object.create(superClass.prototype);
185
- subClass.prototype.constructor = subClass;
186
- _setPrototypeOf(subClass, superClass);
187
- }
188
-
189
- var safeIsNaN = Number.isNaN ||
190
- function ponyfill(value) {
191
- return typeof value === 'number' && value !== value;
192
- };
193
- function isEqual(first, second) {
194
- if (first === second) {
195
- return true;
196
- }
197
- if (safeIsNaN(first) && safeIsNaN(second)) {
198
- return true;
199
- }
200
- return false;
201
- }
202
- function areInputsEqual(newInputs, lastInputs) {
203
- if (newInputs.length !== lastInputs.length) {
204
- return false;
205
- }
206
- for (var i = 0; i < newInputs.length; i++) {
207
- if (!isEqual(newInputs[i], lastInputs[i])) {
208
- return false;
209
- }
210
- }
211
- return true;
212
- }
213
-
214
- function memoizeOne(resultFn, isEqual) {
215
- if (isEqual === void 0) { isEqual = areInputsEqual; }
216
- var lastThis;
217
- var lastArgs = [];
218
- var lastResult;
219
- var calledOnce = false;
220
- function memoized() {
221
- var newArgs = [];
222
- for (var _i = 0; _i < arguments.length; _i++) {
223
- newArgs[_i] = arguments[_i];
224
- }
225
- if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {
226
- return lastResult;
227
- }
228
- lastResult = resultFn.apply(this, newArgs);
229
- calledOnce = true;
230
- lastThis = this;
231
- lastArgs = newArgs;
232
- return lastResult;
233
- }
234
- return memoized;
235
- }
236
-
237
- // Animation frame based implementation of setTimeout.
238
- // Inspired by Joe Lambert, https://gist.github.com/joelambert/1002116#file-requesttimeout-js
239
- var hasNativePerformanceNow = typeof performance === 'object' && typeof performance.now === 'function';
240
- var now = hasNativePerformanceNow ? function () {
241
- return performance.now();
242
- } : function () {
243
- return Date.now();
244
- };
245
- function cancelTimeout(timeoutID) {
246
- cancelAnimationFrame(timeoutID.id);
247
- }
248
- function requestTimeout(callback, delay) {
249
- var start = now();
250
-
251
- function tick() {
252
- if (now() - start >= delay) {
253
- callback.call(null);
254
- } else {
255
- timeoutID.id = requestAnimationFrame(tick);
256
- }
257
- }
258
-
259
- var timeoutID = {
260
- id: requestAnimationFrame(tick)
261
- };
262
- return timeoutID;
263
- }
264
-
265
- var size = -1; // This utility copied from "dom-helpers" package.
266
-
267
- function getScrollbarSize(recalculate) {
268
- if (recalculate === void 0) {
269
- recalculate = false;
270
- }
271
-
272
- if (size === -1 || recalculate) {
273
- var div = document.createElement('div');
274
- var style = div.style;
275
- style.width = '50px';
276
- style.height = '50px';
277
- style.overflow = 'scroll';
278
- document.body.appendChild(div);
279
- size = div.offsetWidth - div.clientWidth;
280
- document.body.removeChild(div);
281
- }
282
-
283
- return size;
284
- }
285
- var cachedRTLResult = null; // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.
286
- // Chrome does not seem to adhere; its scrollLeft values are positive (measured relative to the left).
287
- // Safari's elastic bounce makes detecting this even more complicated wrt potential false positives.
288
- // The safest way to check this is to intentionally set a negative offset,
289
- // and then verify that the subsequent "scroll" event matches the negative offset.
290
- // If it does not match, then we can assume a non-standard RTL scroll implementation.
291
-
292
- function getRTLOffsetType(recalculate) {
293
- if (recalculate === void 0) {
294
- recalculate = false;
295
- }
296
-
297
- if (cachedRTLResult === null || recalculate) {
298
- var outerDiv = document.createElement('div');
299
- var outerStyle = outerDiv.style;
300
- outerStyle.width = '50px';
301
- outerStyle.height = '50px';
302
- outerStyle.overflow = 'scroll';
303
- outerStyle.direction = 'rtl';
304
- var innerDiv = document.createElement('div');
305
- var innerStyle = innerDiv.style;
306
- innerStyle.width = '100px';
307
- innerStyle.height = '100px';
308
- outerDiv.appendChild(innerDiv);
309
- document.body.appendChild(outerDiv);
310
-
311
- if (outerDiv.scrollLeft > 0) {
312
- cachedRTLResult = 'positive-descending';
313
- } else {
314
- outerDiv.scrollLeft = 1;
315
-
316
- if (outerDiv.scrollLeft === 0) {
317
- cachedRTLResult = 'negative';
318
- } else {
319
- cachedRTLResult = 'positive-ascending';
320
- }
321
- }
322
-
323
- document.body.removeChild(outerDiv);
324
- return cachedRTLResult;
325
- }
326
-
327
- return cachedRTLResult;
328
- }
329
-
330
- var IS_SCROLLING_DEBOUNCE_INTERVAL = 150;
331
-
332
- var defaultItemKey = function defaultItemKey(_ref) {
333
- var columnIndex = _ref.columnIndex;
334
- _ref.data;
335
- var rowIndex = _ref.rowIndex;
336
- return rowIndex + ":" + columnIndex;
337
- }; // In DEV mode, this Set helps us only log a warning once per component instance.
338
- // This avoids spamming the console every time a render happens.
339
-
340
-
341
- var devWarningsOverscanCount = null;
342
- var devWarningsOverscanRowsColumnsCount = null;
343
- var devWarningsTagName = null;
344
-
345
- if (process.env.NODE_ENV !== 'production') {
346
- if (typeof window !== 'undefined' && typeof window.WeakSet !== 'undefined') {
347
- devWarningsOverscanCount = /*#__PURE__*/new WeakSet();
348
- devWarningsOverscanRowsColumnsCount = /*#__PURE__*/new WeakSet();
349
- devWarningsTagName = /*#__PURE__*/new WeakSet();
350
- }
351
- }
352
-
353
- function createGridComponent(_ref2) {
354
- var _class;
355
-
356
- var getColumnOffset = _ref2.getColumnOffset,
357
- getColumnStartIndexForOffset = _ref2.getColumnStartIndexForOffset,
358
- getColumnStopIndexForStartIndex = _ref2.getColumnStopIndexForStartIndex,
359
- getColumnWidth = _ref2.getColumnWidth,
360
- getEstimatedTotalHeight = _ref2.getEstimatedTotalHeight,
361
- getEstimatedTotalWidth = _ref2.getEstimatedTotalWidth,
362
- getOffsetForColumnAndAlignment = _ref2.getOffsetForColumnAndAlignment,
363
- getOffsetForRowAndAlignment = _ref2.getOffsetForRowAndAlignment,
364
- getRowHeight = _ref2.getRowHeight,
365
- getRowOffset = _ref2.getRowOffset,
366
- getRowStartIndexForOffset = _ref2.getRowStartIndexForOffset,
367
- getRowStopIndexForStartIndex = _ref2.getRowStopIndexForStartIndex,
368
- initInstanceProps = _ref2.initInstanceProps,
369
- shouldResetStyleCacheOnItemSizeChange = _ref2.shouldResetStyleCacheOnItemSizeChange,
370
- validateProps = _ref2.validateProps;
371
- return _class = /*#__PURE__*/function (_PureComponent) {
372
- _inheritsLoose(Grid, _PureComponent);
373
-
374
- // Always use explicit constructor for React components.
375
- // It produces less code after transpilation. (#26)
376
- // eslint-disable-next-line no-useless-constructor
377
- function Grid(props) {
378
- var _this;
379
-
380
- _this = _PureComponent.call(this, props) || this;
381
- _this._instanceProps = initInstanceProps(_this.props, _assertThisInitialized(_this));
382
- _this._resetIsScrollingTimeoutId = null;
383
- _this._outerRef = void 0;
384
- _this.state = {
385
- instance: _assertThisInitialized(_this),
386
- isScrolling: false,
387
- horizontalScrollDirection: 'forward',
388
- scrollLeft: typeof _this.props.initialScrollLeft === 'number' ? _this.props.initialScrollLeft : 0,
389
- scrollTop: typeof _this.props.initialScrollTop === 'number' ? _this.props.initialScrollTop : 0,
390
- scrollUpdateWasRequested: false,
391
- verticalScrollDirection: 'forward'
392
- };
393
- _this._callOnItemsRendered = void 0;
394
- _this._callOnItemsRendered = memoizeOne(function (overscanColumnStartIndex, overscanColumnStopIndex, overscanRowStartIndex, overscanRowStopIndex, visibleColumnStartIndex, visibleColumnStopIndex, visibleRowStartIndex, visibleRowStopIndex) {
395
- return _this.props.onItemsRendered({
396
- overscanColumnStartIndex: overscanColumnStartIndex,
397
- overscanColumnStopIndex: overscanColumnStopIndex,
398
- overscanRowStartIndex: overscanRowStartIndex,
399
- overscanRowStopIndex: overscanRowStopIndex,
400
- visibleColumnStartIndex: visibleColumnStartIndex,
401
- visibleColumnStopIndex: visibleColumnStopIndex,
402
- visibleRowStartIndex: visibleRowStartIndex,
403
- visibleRowStopIndex: visibleRowStopIndex
404
- });
405
- });
406
- _this._callOnScroll = void 0;
407
- _this._callOnScroll = memoizeOne(function (scrollLeft, scrollTop, horizontalScrollDirection, verticalScrollDirection, scrollUpdateWasRequested) {
408
- return _this.props.onScroll({
409
- horizontalScrollDirection: horizontalScrollDirection,
410
- scrollLeft: scrollLeft,
411
- scrollTop: scrollTop,
412
- verticalScrollDirection: verticalScrollDirection,
413
- scrollUpdateWasRequested: scrollUpdateWasRequested
414
- });
415
- });
416
- _this._getItemStyle = void 0;
417
-
418
- _this._getItemStyle = function (rowIndex, columnIndex) {
419
- var _this$props = _this.props,
420
- columnWidth = _this$props.columnWidth,
421
- direction = _this$props.direction,
422
- rowHeight = _this$props.rowHeight;
423
-
424
- var itemStyleCache = _this._getItemStyleCache(shouldResetStyleCacheOnItemSizeChange && columnWidth, shouldResetStyleCacheOnItemSizeChange && direction, shouldResetStyleCacheOnItemSizeChange && rowHeight);
425
-
426
- var key = rowIndex + ":" + columnIndex;
427
- var style;
428
-
429
- if (itemStyleCache.hasOwnProperty(key)) {
430
- style = itemStyleCache[key];
431
- } else {
432
- var _offset = getColumnOffset(_this.props, columnIndex, _this._instanceProps);
433
-
434
- var isRtl = direction === 'rtl';
435
- itemStyleCache[key] = style = {
436
- position: 'absolute',
437
- left: isRtl ? undefined : _offset,
438
- right: isRtl ? _offset : undefined,
439
- top: getRowOffset(_this.props, rowIndex, _this._instanceProps),
440
- height: getRowHeight(_this.props, rowIndex, _this._instanceProps),
441
- width: getColumnWidth(_this.props, columnIndex, _this._instanceProps)
442
- };
443
- }
444
-
445
- return style;
446
- };
447
-
448
- _this._getItemStyleCache = void 0;
449
- _this._getItemStyleCache = memoizeOne(function (_, __, ___) {
450
- return {};
451
- });
452
-
453
- _this._onScroll = function (event) {
454
- var _event$currentTarget = event.currentTarget,
455
- clientHeight = _event$currentTarget.clientHeight,
456
- clientWidth = _event$currentTarget.clientWidth,
457
- scrollLeft = _event$currentTarget.scrollLeft,
458
- scrollTop = _event$currentTarget.scrollTop,
459
- scrollHeight = _event$currentTarget.scrollHeight,
460
- scrollWidth = _event$currentTarget.scrollWidth;
461
-
462
- _this.setState(function (prevState) {
463
- if (prevState.scrollLeft === scrollLeft && prevState.scrollTop === scrollTop) {
464
- // Scroll position may have been updated by cDM/cDU,
465
- // In which case we don't need to trigger another render,
466
- // And we don't want to update state.isScrolling.
467
- return null;
468
- }
469
-
470
- var direction = _this.props.direction; // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.
471
- // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).
472
- // It's also easier for this component if we convert offsets to the same format as they would be in for ltr.
473
- // So the simplest solution is to determine which browser behavior we're dealing with, and convert based on it.
474
-
475
- var calculatedScrollLeft = scrollLeft;
476
-
477
- if (direction === 'rtl') {
478
- switch (getRTLOffsetType()) {
479
- case 'negative':
480
- calculatedScrollLeft = -scrollLeft;
481
- break;
482
-
483
- case 'positive-descending':
484
- calculatedScrollLeft = scrollWidth - clientWidth - scrollLeft;
485
- break;
486
- }
487
- } // Prevent Safari's elastic scrolling from causing visual shaking when scrolling past bounds.
488
-
489
-
490
- calculatedScrollLeft = Math.max(0, Math.min(calculatedScrollLeft, scrollWidth - clientWidth));
491
- var calculatedScrollTop = Math.max(0, Math.min(scrollTop, scrollHeight - clientHeight));
492
- return {
493
- isScrolling: true,
494
- horizontalScrollDirection: prevState.scrollLeft < scrollLeft ? 'forward' : 'backward',
495
- scrollLeft: calculatedScrollLeft,
496
- scrollTop: calculatedScrollTop,
497
- verticalScrollDirection: prevState.scrollTop < scrollTop ? 'forward' : 'backward',
498
- scrollUpdateWasRequested: false
499
- };
500
- }, _this._resetIsScrollingDebounced);
501
- };
502
-
503
- _this._outerRefSetter = function (ref) {
504
- var outerRef = _this.props.outerRef;
505
- _this._outerRef = ref;
506
-
507
- if (typeof outerRef === 'function') {
508
- outerRef(ref);
509
- } else if (outerRef != null && typeof outerRef === 'object' && outerRef.hasOwnProperty('current')) {
510
- outerRef.current = ref;
511
- }
512
- };
513
-
514
- _this._resetIsScrollingDebounced = function () {
515
- if (_this._resetIsScrollingTimeoutId !== null) {
516
- cancelTimeout(_this._resetIsScrollingTimeoutId);
517
- }
518
-
519
- _this._resetIsScrollingTimeoutId = requestTimeout(_this._resetIsScrolling, IS_SCROLLING_DEBOUNCE_INTERVAL);
520
- };
521
-
522
- _this._resetIsScrolling = function () {
523
- _this._resetIsScrollingTimeoutId = null;
524
-
525
- _this.setState({
526
- isScrolling: false
527
- }, function () {
528
- // Clear style cache after state update has been committed.
529
- // This way we don't break pure sCU for items that don't use isScrolling param.
530
- _this._getItemStyleCache(-1);
531
- });
532
- };
533
-
534
- return _this;
535
- }
536
-
537
- Grid.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {
538
- validateSharedProps(nextProps, prevState);
539
- validateProps(nextProps);
540
- return null;
541
- };
542
-
543
- var _proto = Grid.prototype;
544
-
545
- _proto.scrollTo = function scrollTo(_ref3) {
546
- var scrollLeft = _ref3.scrollLeft,
547
- scrollTop = _ref3.scrollTop;
548
-
549
- if (scrollLeft !== undefined) {
550
- scrollLeft = Math.max(0, scrollLeft);
551
- }
552
-
553
- if (scrollTop !== undefined) {
554
- scrollTop = Math.max(0, scrollTop);
555
- }
556
-
557
- this.setState(function (prevState) {
558
- if (scrollLeft === undefined) {
559
- scrollLeft = prevState.scrollLeft;
560
- }
561
-
562
- if (scrollTop === undefined) {
563
- scrollTop = prevState.scrollTop;
564
- }
565
-
566
- if (prevState.scrollLeft === scrollLeft && prevState.scrollTop === scrollTop) {
567
- return null;
568
- }
569
-
570
- return {
571
- horizontalScrollDirection: prevState.scrollLeft < scrollLeft ? 'forward' : 'backward',
572
- scrollLeft: scrollLeft,
573
- scrollTop: scrollTop,
574
- scrollUpdateWasRequested: true,
575
- verticalScrollDirection: prevState.scrollTop < scrollTop ? 'forward' : 'backward'
576
- };
577
- }, this._resetIsScrollingDebounced);
578
- };
579
-
580
- _proto.scrollToItem = function scrollToItem(_ref4) {
581
- var _ref4$align = _ref4.align,
582
- align = _ref4$align === void 0 ? 'auto' : _ref4$align,
583
- columnIndex = _ref4.columnIndex,
584
- rowIndex = _ref4.rowIndex;
585
- var _this$props2 = this.props,
586
- columnCount = _this$props2.columnCount,
587
- height = _this$props2.height,
588
- rowCount = _this$props2.rowCount,
589
- width = _this$props2.width;
590
- var _this$state = this.state,
591
- scrollLeft = _this$state.scrollLeft,
592
- scrollTop = _this$state.scrollTop;
593
- var scrollbarSize = getScrollbarSize();
594
-
595
- if (columnIndex !== undefined) {
596
- columnIndex = Math.max(0, Math.min(columnIndex, columnCount - 1));
597
- }
598
-
599
- if (rowIndex !== undefined) {
600
- rowIndex = Math.max(0, Math.min(rowIndex, rowCount - 1));
601
- }
602
-
603
- var estimatedTotalHeight = getEstimatedTotalHeight(this.props, this._instanceProps);
604
- var estimatedTotalWidth = getEstimatedTotalWidth(this.props, this._instanceProps); // The scrollbar size should be considered when scrolling an item into view,
605
- // to ensure it's fully visible.
606
- // But we only need to account for its size when it's actually visible.
607
-
608
- var horizontalScrollbarSize = estimatedTotalWidth > width ? scrollbarSize : 0;
609
- var verticalScrollbarSize = estimatedTotalHeight > height ? scrollbarSize : 0;
610
- this.scrollTo({
611
- scrollLeft: columnIndex !== undefined ? getOffsetForColumnAndAlignment(this.props, columnIndex, align, scrollLeft, this._instanceProps, verticalScrollbarSize) : scrollLeft,
612
- scrollTop: rowIndex !== undefined ? getOffsetForRowAndAlignment(this.props, rowIndex, align, scrollTop, this._instanceProps, horizontalScrollbarSize) : scrollTop
613
- });
614
- };
615
-
616
- _proto.componentDidMount = function componentDidMount() {
617
- var _this$props3 = this.props,
618
- initialScrollLeft = _this$props3.initialScrollLeft,
619
- initialScrollTop = _this$props3.initialScrollTop;
620
-
621
- if (this._outerRef != null) {
622
- var outerRef = this._outerRef;
623
-
624
- if (typeof initialScrollLeft === 'number') {
625
- outerRef.scrollLeft = initialScrollLeft;
626
- }
627
-
628
- if (typeof initialScrollTop === 'number') {
629
- outerRef.scrollTop = initialScrollTop;
630
- }
631
- }
632
-
633
- this._callPropsCallbacks();
634
- };
635
-
636
- _proto.componentDidUpdate = function componentDidUpdate() {
637
- var direction = this.props.direction;
638
- var _this$state2 = this.state,
639
- scrollLeft = _this$state2.scrollLeft,
640
- scrollTop = _this$state2.scrollTop,
641
- scrollUpdateWasRequested = _this$state2.scrollUpdateWasRequested;
642
-
643
- if (scrollUpdateWasRequested && this._outerRef != null) {
644
- // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.
645
- // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).
646
- // So we need to determine which browser behavior we're dealing with, and mimic it.
647
- var outerRef = this._outerRef;
648
-
649
- if (direction === 'rtl') {
650
- switch (getRTLOffsetType()) {
651
- case 'negative':
652
- outerRef.scrollLeft = -scrollLeft;
653
- break;
654
-
655
- case 'positive-ascending':
656
- outerRef.scrollLeft = scrollLeft;
657
- break;
658
-
659
- default:
660
- var clientWidth = outerRef.clientWidth,
661
- scrollWidth = outerRef.scrollWidth;
662
- outerRef.scrollLeft = scrollWidth - clientWidth - scrollLeft;
663
- break;
664
- }
665
- } else {
666
- outerRef.scrollLeft = Math.max(0, scrollLeft);
667
- }
668
-
669
- outerRef.scrollTop = Math.max(0, scrollTop);
670
- }
671
-
672
- this._callPropsCallbacks();
673
- };
674
-
675
- _proto.componentWillUnmount = function componentWillUnmount() {
676
- if (this._resetIsScrollingTimeoutId !== null) {
677
- cancelTimeout(this._resetIsScrollingTimeoutId);
678
- }
679
- };
680
-
681
- _proto.render = function render() {
682
- var _this$props4 = this.props,
683
- children = _this$props4.children,
684
- className = _this$props4.className,
685
- columnCount = _this$props4.columnCount,
686
- direction = _this$props4.direction,
687
- height = _this$props4.height,
688
- innerRef = _this$props4.innerRef,
689
- innerElementType = _this$props4.innerElementType,
690
- innerTagName = _this$props4.innerTagName,
691
- itemData = _this$props4.itemData,
692
- _this$props4$itemKey = _this$props4.itemKey,
693
- itemKey = _this$props4$itemKey === void 0 ? defaultItemKey : _this$props4$itemKey,
694
- outerElementType = _this$props4.outerElementType,
695
- outerTagName = _this$props4.outerTagName,
696
- rowCount = _this$props4.rowCount,
697
- style = _this$props4.style,
698
- useIsScrolling = _this$props4.useIsScrolling,
699
- width = _this$props4.width;
700
- var isScrolling = this.state.isScrolling;
701
-
702
- var _this$_getHorizontalR = this._getHorizontalRangeToRender(),
703
- columnStartIndex = _this$_getHorizontalR[0],
704
- columnStopIndex = _this$_getHorizontalR[1];
705
-
706
- var _this$_getVerticalRan = this._getVerticalRangeToRender(),
707
- rowStartIndex = _this$_getVerticalRan[0],
708
- rowStopIndex = _this$_getVerticalRan[1];
709
-
710
- var items = [];
711
-
712
- if (columnCount > 0 && rowCount) {
713
- for (var _rowIndex = rowStartIndex; _rowIndex <= rowStopIndex; _rowIndex++) {
714
- for (var _columnIndex = columnStartIndex; _columnIndex <= columnStopIndex; _columnIndex++) {
715
- items.push(createElement(children, {
716
- columnIndex: _columnIndex,
717
- data: itemData,
718
- isScrolling: useIsScrolling ? isScrolling : undefined,
719
- key: itemKey({
720
- columnIndex: _columnIndex,
721
- data: itemData,
722
- rowIndex: _rowIndex
723
- }),
724
- rowIndex: _rowIndex,
725
- style: this._getItemStyle(_rowIndex, _columnIndex)
726
- }));
727
- }
728
- }
729
- } // Read this value AFTER items have been created,
730
- // So their actual sizes (if variable) are taken into consideration.
731
-
732
-
733
- var estimatedTotalHeight = getEstimatedTotalHeight(this.props, this._instanceProps);
734
- var estimatedTotalWidth = getEstimatedTotalWidth(this.props, this._instanceProps);
735
- return createElement(outerElementType || outerTagName || 'div', {
736
- className: className,
737
- onScroll: this._onScroll,
738
- ref: this._outerRefSetter,
739
- style: _extends({
740
- position: 'relative',
741
- height: height,
742
- width: width,
743
- overflow: 'auto',
744
- WebkitOverflowScrolling: 'touch',
745
- willChange: 'transform',
746
- direction: direction
747
- }, style)
748
- }, createElement(innerElementType || innerTagName || 'div', {
749
- children: items,
750
- ref: innerRef,
751
- style: {
752
- height: estimatedTotalHeight,
753
- pointerEvents: isScrolling ? 'none' : undefined,
754
- width: estimatedTotalWidth
755
- }
756
- }));
757
- };
758
-
759
- _proto._callPropsCallbacks = function _callPropsCallbacks() {
760
- var _this$props5 = this.props,
761
- columnCount = _this$props5.columnCount,
762
- onItemsRendered = _this$props5.onItemsRendered,
763
- onScroll = _this$props5.onScroll,
764
- rowCount = _this$props5.rowCount;
765
-
766
- if (typeof onItemsRendered === 'function') {
767
- if (columnCount > 0 && rowCount > 0) {
768
- var _this$_getHorizontalR2 = this._getHorizontalRangeToRender(),
769
- _overscanColumnStartIndex = _this$_getHorizontalR2[0],
770
- _overscanColumnStopIndex = _this$_getHorizontalR2[1],
771
- _visibleColumnStartIndex = _this$_getHorizontalR2[2],
772
- _visibleColumnStopIndex = _this$_getHorizontalR2[3];
773
-
774
- var _this$_getVerticalRan2 = this._getVerticalRangeToRender(),
775
- _overscanRowStartIndex = _this$_getVerticalRan2[0],
776
- _overscanRowStopIndex = _this$_getVerticalRan2[1],
777
- _visibleRowStartIndex = _this$_getVerticalRan2[2],
778
- _visibleRowStopIndex = _this$_getVerticalRan2[3];
779
-
780
- this._callOnItemsRendered(_overscanColumnStartIndex, _overscanColumnStopIndex, _overscanRowStartIndex, _overscanRowStopIndex, _visibleColumnStartIndex, _visibleColumnStopIndex, _visibleRowStartIndex, _visibleRowStopIndex);
781
- }
782
- }
783
-
784
- if (typeof onScroll === 'function') {
785
- var _this$state3 = this.state,
786
- _horizontalScrollDirection = _this$state3.horizontalScrollDirection,
787
- _scrollLeft = _this$state3.scrollLeft,
788
- _scrollTop = _this$state3.scrollTop,
789
- _scrollUpdateWasRequested = _this$state3.scrollUpdateWasRequested,
790
- _verticalScrollDirection = _this$state3.verticalScrollDirection;
791
-
792
- this._callOnScroll(_scrollLeft, _scrollTop, _horizontalScrollDirection, _verticalScrollDirection, _scrollUpdateWasRequested);
793
- }
794
- } // Lazily create and cache item styles while scrolling,
795
- // So that pure component sCU will prevent re-renders.
796
- // We maintain this cache, and pass a style prop rather than index,
797
- // So that List can clear cached styles and force item re-render if necessary.
798
- ;
799
-
800
- _proto._getHorizontalRangeToRender = function _getHorizontalRangeToRender() {
801
- var _this$props6 = this.props,
802
- columnCount = _this$props6.columnCount,
803
- overscanColumnCount = _this$props6.overscanColumnCount,
804
- overscanColumnsCount = _this$props6.overscanColumnsCount,
805
- overscanCount = _this$props6.overscanCount,
806
- rowCount = _this$props6.rowCount;
807
- var _this$state4 = this.state,
808
- horizontalScrollDirection = _this$state4.horizontalScrollDirection,
809
- isScrolling = _this$state4.isScrolling,
810
- scrollLeft = _this$state4.scrollLeft;
811
- var overscanCountResolved = overscanColumnCount || overscanColumnsCount || overscanCount || 1;
812
-
813
- if (columnCount === 0 || rowCount === 0) {
814
- return [0, 0, 0, 0];
815
- }
816
-
817
- var startIndex = getColumnStartIndexForOffset(this.props, scrollLeft, this._instanceProps);
818
- var stopIndex = getColumnStopIndexForStartIndex(this.props, startIndex, scrollLeft, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.
819
- // If there isn't at least one extra item, tab loops back around.
820
-
821
- var overscanBackward = !isScrolling || horizontalScrollDirection === 'backward' ? Math.max(1, overscanCountResolved) : 1;
822
- var overscanForward = !isScrolling || horizontalScrollDirection === 'forward' ? Math.max(1, overscanCountResolved) : 1;
823
- return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(columnCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];
824
- };
825
-
826
- _proto._getVerticalRangeToRender = function _getVerticalRangeToRender() {
827
- var _this$props7 = this.props,
828
- columnCount = _this$props7.columnCount,
829
- overscanCount = _this$props7.overscanCount,
830
- overscanRowCount = _this$props7.overscanRowCount,
831
- overscanRowsCount = _this$props7.overscanRowsCount,
832
- rowCount = _this$props7.rowCount;
833
- var _this$state5 = this.state,
834
- isScrolling = _this$state5.isScrolling,
835
- verticalScrollDirection = _this$state5.verticalScrollDirection,
836
- scrollTop = _this$state5.scrollTop;
837
- var overscanCountResolved = overscanRowCount || overscanRowsCount || overscanCount || 1;
838
-
839
- if (columnCount === 0 || rowCount === 0) {
840
- return [0, 0, 0, 0];
841
- }
842
-
843
- var startIndex = getRowStartIndexForOffset(this.props, scrollTop, this._instanceProps);
844
- var stopIndex = getRowStopIndexForStartIndex(this.props, startIndex, scrollTop, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.
845
- // If there isn't at least one extra item, tab loops back around.
846
-
847
- var overscanBackward = !isScrolling || verticalScrollDirection === 'backward' ? Math.max(1, overscanCountResolved) : 1;
848
- var overscanForward = !isScrolling || verticalScrollDirection === 'forward' ? Math.max(1, overscanCountResolved) : 1;
849
- return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(rowCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];
850
- };
851
-
852
- return Grid;
853
- }(PureComponent), _class.defaultProps = {
854
- direction: 'ltr',
855
- itemData: undefined,
856
- useIsScrolling: false
857
- }, _class;
858
- }
859
-
860
- var validateSharedProps = function validateSharedProps(_ref5, _ref6) {
861
- var children = _ref5.children,
862
- direction = _ref5.direction,
863
- height = _ref5.height,
864
- innerTagName = _ref5.innerTagName,
865
- outerTagName = _ref5.outerTagName,
866
- overscanColumnsCount = _ref5.overscanColumnsCount,
867
- overscanCount = _ref5.overscanCount,
868
- overscanRowsCount = _ref5.overscanRowsCount,
869
- width = _ref5.width;
870
- var instance = _ref6.instance;
871
-
872
- if (process.env.NODE_ENV !== 'production') {
873
- if (typeof overscanCount === 'number') {
874
- if (devWarningsOverscanCount && !devWarningsOverscanCount.has(instance)) {
875
- devWarningsOverscanCount.add(instance);
876
- console.warn('The overscanCount prop has been deprecated. ' + 'Please use the overscanColumnCount and overscanRowCount props instead.');
877
- }
878
- }
879
-
880
- if (typeof overscanColumnsCount === 'number' || typeof overscanRowsCount === 'number') {
881
- if (devWarningsOverscanRowsColumnsCount && !devWarningsOverscanRowsColumnsCount.has(instance)) {
882
- devWarningsOverscanRowsColumnsCount.add(instance);
883
- console.warn('The overscanColumnsCount and overscanRowsCount props have been deprecated. ' + 'Please use the overscanColumnCount and overscanRowCount props instead.');
884
- }
885
- }
886
-
887
- if (innerTagName != null || outerTagName != null) {
888
- if (devWarningsTagName && !devWarningsTagName.has(instance)) {
889
- devWarningsTagName.add(instance);
890
- console.warn('The innerTagName and outerTagName props have been deprecated. ' + 'Please use the innerElementType and outerElementType props instead.');
891
- }
892
- }
893
-
894
- if (children == null) {
895
- throw Error('An invalid "children" prop has been specified. ' + 'Value should be a React component. ' + ("\"" + (children === null ? 'null' : typeof children) + "\" was specified."));
896
- }
897
-
898
- switch (direction) {
899
- case 'ltr':
900
- case 'rtl':
901
- // Valid values
902
- break;
903
-
904
- default:
905
- throw Error('An invalid "direction" prop has been specified. ' + 'Value should be either "ltr" or "rtl". ' + ("\"" + direction + "\" was specified."));
906
- }
907
-
908
- if (typeof width !== 'number') {
909
- throw Error('An invalid "width" prop has been specified. ' + 'Grids must specify a number for width. ' + ("\"" + (width === null ? 'null' : typeof width) + "\" was specified."));
910
- }
911
-
912
- if (typeof height !== 'number') {
913
- throw Error('An invalid "height" prop has been specified. ' + 'Grids must specify a number for height. ' + ("\"" + (height === null ? 'null' : typeof height) + "\" was specified."));
914
- }
915
- }
916
- };
917
-
918
- if (process.env.NODE_ENV !== 'production') ;
919
-
920
- var FixedSizeGrid = /*#__PURE__*/createGridComponent({
921
- getColumnOffset: function getColumnOffset(_ref, index) {
922
- var columnWidth = _ref.columnWidth;
923
- return index * columnWidth;
924
- },
925
- getColumnWidth: function getColumnWidth(_ref2, index) {
926
- var columnWidth = _ref2.columnWidth;
927
- return columnWidth;
928
- },
929
- getRowOffset: function getRowOffset(_ref3, index) {
930
- var rowHeight = _ref3.rowHeight;
931
- return index * rowHeight;
932
- },
933
- getRowHeight: function getRowHeight(_ref4, index) {
934
- var rowHeight = _ref4.rowHeight;
935
- return rowHeight;
936
- },
937
- getEstimatedTotalHeight: function getEstimatedTotalHeight(_ref5) {
938
- var rowCount = _ref5.rowCount,
939
- rowHeight = _ref5.rowHeight;
940
- return rowHeight * rowCount;
941
- },
942
- getEstimatedTotalWidth: function getEstimatedTotalWidth(_ref6) {
943
- var columnCount = _ref6.columnCount,
944
- columnWidth = _ref6.columnWidth;
945
- return columnWidth * columnCount;
946
- },
947
- getOffsetForColumnAndAlignment: function getOffsetForColumnAndAlignment(_ref7, columnIndex, align, scrollLeft, instanceProps, scrollbarSize) {
948
- var columnCount = _ref7.columnCount,
949
- columnWidth = _ref7.columnWidth,
950
- width = _ref7.width;
951
- var lastColumnOffset = Math.max(0, columnCount * columnWidth - width);
952
- var maxOffset = Math.min(lastColumnOffset, columnIndex * columnWidth);
953
- var minOffset = Math.max(0, columnIndex * columnWidth - width + scrollbarSize + columnWidth);
954
-
955
- if (align === 'smart') {
956
- if (scrollLeft >= minOffset - width && scrollLeft <= maxOffset + width) {
957
- align = 'auto';
958
- } else {
959
- align = 'center';
960
- }
961
- }
962
-
963
- switch (align) {
964
- case 'start':
965
- return maxOffset;
966
-
967
- case 'end':
968
- return minOffset;
969
-
970
- case 'center':
971
- // "Centered" offset is usually the average of the min and max.
972
- // But near the edges of the list, this doesn't hold true.
973
- var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);
974
-
975
- if (middleOffset < Math.ceil(width / 2)) {
976
- return 0; // near the beginning
977
- } else if (middleOffset > lastColumnOffset + Math.floor(width / 2)) {
978
- return lastColumnOffset; // near the end
979
- } else {
980
- return middleOffset;
981
- }
982
-
983
- case 'auto':
984
- default:
985
- if (scrollLeft >= minOffset && scrollLeft <= maxOffset) {
986
- return scrollLeft;
987
- } else if (minOffset > maxOffset) {
988
- // Because we only take into account the scrollbar size when calculating minOffset
989
- // this value can be larger than maxOffset when at the end of the list
990
- return minOffset;
991
- } else if (scrollLeft < minOffset) {
992
- return minOffset;
993
- } else {
994
- return maxOffset;
995
- }
996
-
997
- }
998
- },
999
- getOffsetForRowAndAlignment: function getOffsetForRowAndAlignment(_ref8, rowIndex, align, scrollTop, instanceProps, scrollbarSize) {
1000
- var rowHeight = _ref8.rowHeight,
1001
- height = _ref8.height,
1002
- rowCount = _ref8.rowCount;
1003
- var lastRowOffset = Math.max(0, rowCount * rowHeight - height);
1004
- var maxOffset = Math.min(lastRowOffset, rowIndex * rowHeight);
1005
- var minOffset = Math.max(0, rowIndex * rowHeight - height + scrollbarSize + rowHeight);
1006
-
1007
- if (align === 'smart') {
1008
- if (scrollTop >= minOffset - height && scrollTop <= maxOffset + height) {
1009
- align = 'auto';
1010
- } else {
1011
- align = 'center';
1012
- }
1013
- }
1014
-
1015
- switch (align) {
1016
- case 'start':
1017
- return maxOffset;
1018
-
1019
- case 'end':
1020
- return minOffset;
1021
-
1022
- case 'center':
1023
- // "Centered" offset is usually the average of the min and max.
1024
- // But near the edges of the list, this doesn't hold true.
1025
- var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);
1026
-
1027
- if (middleOffset < Math.ceil(height / 2)) {
1028
- return 0; // near the beginning
1029
- } else if (middleOffset > lastRowOffset + Math.floor(height / 2)) {
1030
- return lastRowOffset; // near the end
1031
- } else {
1032
- return middleOffset;
1033
- }
1034
-
1035
- case 'auto':
1036
- default:
1037
- if (scrollTop >= minOffset && scrollTop <= maxOffset) {
1038
- return scrollTop;
1039
- } else if (minOffset > maxOffset) {
1040
- // Because we only take into account the scrollbar size when calculating minOffset
1041
- // this value can be larger than maxOffset when at the end of the list
1042
- return minOffset;
1043
- } else if (scrollTop < minOffset) {
1044
- return minOffset;
1045
- } else {
1046
- return maxOffset;
1047
- }
1048
-
1049
- }
1050
- },
1051
- getColumnStartIndexForOffset: function getColumnStartIndexForOffset(_ref9, scrollLeft) {
1052
- var columnWidth = _ref9.columnWidth,
1053
- columnCount = _ref9.columnCount;
1054
- return Math.max(0, Math.min(columnCount - 1, Math.floor(scrollLeft / columnWidth)));
1055
- },
1056
- getColumnStopIndexForStartIndex: function getColumnStopIndexForStartIndex(_ref10, startIndex, scrollLeft) {
1057
- var columnWidth = _ref10.columnWidth,
1058
- columnCount = _ref10.columnCount,
1059
- width = _ref10.width;
1060
- var left = startIndex * columnWidth;
1061
- var numVisibleColumns = Math.ceil((width + scrollLeft - left) / columnWidth);
1062
- return Math.max(0, Math.min(columnCount - 1, startIndex + numVisibleColumns - 1 // -1 is because stop index is inclusive
1063
- ));
1064
- },
1065
- getRowStartIndexForOffset: function getRowStartIndexForOffset(_ref11, scrollTop) {
1066
- var rowHeight = _ref11.rowHeight,
1067
- rowCount = _ref11.rowCount;
1068
- return Math.max(0, Math.min(rowCount - 1, Math.floor(scrollTop / rowHeight)));
1069
- },
1070
- getRowStopIndexForStartIndex: function getRowStopIndexForStartIndex(_ref12, startIndex, scrollTop) {
1071
- var rowHeight = _ref12.rowHeight,
1072
- rowCount = _ref12.rowCount,
1073
- height = _ref12.height;
1074
- var top = startIndex * rowHeight;
1075
- var numVisibleRows = Math.ceil((height + scrollTop - top) / rowHeight);
1076
- return Math.max(0, Math.min(rowCount - 1, startIndex + numVisibleRows - 1 // -1 is because stop index is inclusive
1077
- ));
1078
- },
1079
- initInstanceProps: function initInstanceProps(props) {// Noop
1080
- },
1081
- shouldResetStyleCacheOnItemSizeChange: true,
1082
- validateProps: function validateProps(_ref13) {
1083
- var columnWidth = _ref13.columnWidth,
1084
- rowHeight = _ref13.rowHeight;
1085
-
1086
- if (process.env.NODE_ENV !== 'production') {
1087
- if (typeof columnWidth !== 'number') {
1088
- throw Error('An invalid "columnWidth" prop has been specified. ' + 'Value should be a number. ' + ("\"" + (columnWidth === null ? 'null' : typeof columnWidth) + "\" was specified."));
1089
- }
1090
-
1091
- if (typeof rowHeight !== 'number') {
1092
- throw Error('An invalid "rowHeight" prop has been specified. ' + 'Value should be a number. ' + ("\"" + (rowHeight === null ? 'null' : typeof rowHeight) + "\" was specified."));
1093
- }
1094
- }
1095
- }
1096
- });
1097
-
1098
- var GRID_PROPERTIES = {
1099
- gridWidth: 300,
1100
- gridHeight: 300,
1101
- columnWidth: 100,
1102
- rowHeight: 100,
1103
- columnCount: 3
1104
- };
1105
- var ICONS_LIST = ["10k", "10mp", "11mp", "123", "12mp", "13mp", "14mp", "15mp", "16mp", "17mp", "18_up_rating", "18mp", "19mp", "1k", "1k_plus", "1x_mobiledata", "1x_mobiledata_badge", "20mp", "21mp", "22mp", "23mp", "24mp", "2k", "2k_plus", "2mp", "30fps", "30fps_select", "360", "3d_rotation", "3g_mobiledata", "3g_mobiledata_badge", "3k", "3k_plus", "3mp", "3p", "4g_mobiledata", "4g_mobiledata_badge", "4g_plus_mobiledata", "4k", "4k_plus", "4mp", "50mp", "5g", "5g_mobiledata_badge", "5k", "5k_plus", "5mp", "60fps", "60fps_select", "6_ft_apart", "6k", "6k_plus", "6mp", "7k", "7k_plus", "7mp", "8k", "8k_plus", "8mp", "9k", "9k_plus", "9mp", "abc", "ac_unit", "accessibility", "accessibility_new", "accessible", "accessible_forward", "account_balance", "account_balance_wallet", "account_box", "account_circle", "account_circle_off", "account_tree", "activity_zone", "acute", "ad_off", "ad_units", "adb", "add", "add_a_photo", "add_alert", "add_box", "add_business", "add_call", "add_card", "add_chart", "add_circle", "add_comment", "add_home", "add_home_work", "add_link", "add_location", "add_location_alt", "add_moderator", "add_notes", "add_photo_alternate", "add_reaction", "add_road", "add_shopping_cart", "add_task", "add_to_drive", "add_to_home_screen", "add_to_photos", "add_to_queue", "adf_scanner", "adjust", "admin_meds", "admin_panel_settings", "ads_click", "agender", "agriculture", "air", "air_freshener", "air_purifier_gen", "airline_seat_flat", "airline_seat_flat_angled", "airline_seat_individual_suite", "airline_seat_legroom_extra", "airline_seat_legroom_normal", "airline_seat_legroom_reduced", "airline_seat_recline_extra", "airline_seat_recline_normal", "airline_stops", "airlines", "airplane_ticket", "airplanemode_active", "airplanemode_inactive", "airplay", "airport_shuttle", "airware", "airwave", "alarm", "alarm_add", "alarm_off", "alarm_on", "alarm_smart_wake", "album", "align_center", "align_end", "align_flex_center", "align_flex_end", "align_flex_start", "align_horizontal_center", "align_horizontal_left", "align_horizontal_right", "align_items_stretch", "align_justify_center", "align_justify_flex_end", "align_justify_flex_start", "align_justify_space_around", "align_justify_space_between", "align_justify_space_even", "align_justify_stretch", "align_self_stretch", "align_space_around", "align_space_between", "align_space_even", "align_start", "align_stretch", "align_vertical_bottom", "align_vertical_center", "align_vertical_top", "all_inbox", "all_inclusive", "all_match", "all_out", "allergies", "allergy", "alt_route", "alternate_email", "altitude", "ambient_screen", "ambulance", "amend", "amp_stories", "analytics", "anchor", "android", "animation", "aod", "aod_tablet", "aod_watch", "apartment", "api", "apk_document", "apk_install", "app_badging", "app_blocking", "app_registration", "app_shortcut", "approval", "approval_delegation", "apps", "apps_outage", "architecture", "archive", "area_chart", "arming_countdown", "arrow_and_edge", "arrow_back", "arrow_back_ios", "arrow_back_ios_new", "arrow_circle_down", "arrow_circle_left", "arrow_circle_right", "arrow_circle_up", "arrow_downward", "arrow_drop_down", "arrow_drop_down_circle", "arrow_drop_up", "arrow_forward", "arrow_forward_ios", "arrow_insert", "arrow_left", "arrow_or_edge", "arrow_outward", "arrow_range", "arrow_right", "arrow_right_alt", "arrow_selector_tool", "arrow_top_left", "arrow_top_right", "arrow_upward", "arrows_more_down", "arrows_more_up", "arrows_outward", "art_track", "article", "aspect_ratio", "assignment", "assignment_add", "assignment_ind", "assignment_late", "assignment_return", "assignment_returned", "assignment_turned_in", "assist_walker", "assistant", "assistant_direction", "assistant_navigation", "assistant_on_hub", "assured_workload", "astrophotography_auto", "astrophotography_off", "atm", "atr", "attach_email", "attach_file", "attach_file_add", "attach_money", "attachment", "attractions", "attribution", "audio_file", "audio_video_receiver", "auto_activity_zone", "auto_awesome", "auto_awesome_mosaic", "auto_awesome_motion", "auto_delete", "auto_detect_voice", "auto_fix", "auto_fix_high", "auto_fix_normal", "auto_fix_off", "auto_graph", "auto_label", "auto_meeting_room", "auto_mode", "auto_read_pause", "auto_read_play", "auto_schedule", "auto_stories", "auto_videocam", "autofps_select", "autopause", "autopay", "autoplay", "autorenew", "autostop", "av_timer", "avg_pace", "avg_time", "award_star", "azm", "baby_changing_station", "back_hand", "back_to_tab", "background_dot_large", "background_grid_small", "background_replace", "backlight_high", "backlight_low", "backpack", "backspace", "backup", "backup_table", "badge", "badge_critical_battery", "bakery_dining", "balance", "balcony", "ballot", "bar_chart", "bar_chart_4_bars", "barcode", "barcode_reader", "barcode_scanner", "barefoot", "batch_prediction", "bath_outdoor", "bath_private", "bath_public_large", "bathroom", "bathtub", "battery_0_bar", "battery_1_bar", "battery_20", "battery_2_bar", "battery_30", "battery_3_bar", "battery_4_bar", "battery_50", "battery_5_bar", "battery_60", "battery_6_bar", "battery_80", "battery_90", "battery_alert", "battery_change", "battery_charging_20", "battery_charging_30", "battery_charging_50", "battery_charging_60", "battery_charging_80", "battery_charging_90", "battery_charging_full", "battery_error", "battery_full", "battery_full_alt", "battery_horiz_000", "battery_horiz_050", "battery_horiz_075", "battery_low", "battery_plus", "battery_profile", "battery_saver", "battery_share", "battery_status_good", "battery_unknown", "battery_vert_005", "battery_vert_020", "battery_vert_050", "battery_very_low", "beach_access", "bed", "bedroom_baby", "bedroom_child", "bedroom_parent", "bedtime", "bedtime_off", "beenhere", "bento", "bia", "bike_scooter", "biotech", "blanket", "blender", "blind", "blinds", "blinds_closed", "block", "blood_pressure", "bloodtype", "bluetooth", "bluetooth_connected", "bluetooth_disabled", "bluetooth_drive", "bluetooth_searching", "blur_circular", "blur_linear", "blur_medium", "blur_off", "blur_on", "blur_short", "body_fat", "body_system", "bolt", "book", "book_online", "bookmark", "bookmark_add", "bookmark_added", "bookmark_manager", "bookmark_remove", "bookmarks", "border_all", "border_bottom", "border_clear", "border_color", "border_horizontal", "border_inner", "border_left", "border_outer", "border_right", "border_style", "border_top", "border_vertical", "bottom_panel_close", "bottom_panel_open", "bottom_right_click", "boy", "branding_watermark", "breakfast_dining", "breaking_news_alt_1", "breastfeeding", "brightness_1", "brightness_2", "brightness_3", "brightness_4", "brightness_5", "brightness_6", "brightness_7", "brightness_auto", "brightness_empty", "brightness_high", "brightness_low", "brightness_medium", "bring_your_own_ip", "broadcast_on_home", "broadcast_on_personal", "broken_image", "browse_activity", "browse_gallery", "browser_updated", "brunch_dining", "brush", "bubble_chart", "bubbles", "bug_report", "build", "build_circle", "bungalow", "burst_mode", "bus_alert", "business_center", "business_chip", "cabin", "cable", "cached", "cake", "cake_add", "calculate", "calendar_add_on", "calendar_apps_script", "calendar_month", "calendar_today", "calendar_view_day", "calendar_view_month", "calendar_view_week", "call", "call_end", "call_log", "call_made", "call_merge", "call_missed", "call_missed_outgoing", "call_quality", "call_received", "call_split", "call_to_action", "camera", "camera_enhance", "camera_front", "camera_indoor", "camera_outdoor", "camera_rear", "camera_roll", "camera_video", "cameraswitch", "campaign", "camping", "cancel", "cancel_presentation", "cancel_schedule_send", "candlestick_chart", "captive_portal", "capture", "car_crash", "car_rental", "car_repair", "card_membership", "card_travel", "cardiology", "carpenter", "cases", "casino", "cast", "cast_connected", "cast_for_education", "cast_pause", "cast_warning", "castle", "category", "celebration", "cell_merge", "cell_tower", "cell_wifi", "center_focus_strong", "center_focus_weak", "chair", "chair_alt", "chalet", "change_circle", "change_history", "charger", "charging_station", "chart_data", "chat", "chat_add_on", "chat_apps_script", "chat_bubble", "chat_error", "chat_paste_go", "check", "check_box", "check_box_outline_blank", "check_circle", "check_in_out", "check_indeterminate_small", "check_small", "checklist", "checklist_rtl", "checkroom", "cheer", "chess", "chevron_left", "chevron_right", "child_care", "child_friendly", "chip_extraction", "chrome_reader_mode", "chromecast_2", "chromecast_device", "chronic", "church", "cinematic_blur", "circle", "circle_notifications", "clarify", "clean_hands", "cleaning_bucket", "cleaning_services", "clear_all", "clear_day", "clear_night", "climate_mini_split", "clinical_notes", "clock_loader_10", "clock_loader_20", "clock_loader_40", "clock_loader_60", "clock_loader_80", "clock_loader_90", "close", "close_fullscreen", "closed_caption", "closed_caption_disabled", "cloud", "cloud_circle", "cloud_done", "cloud_download", "cloud_off", "cloud_queue", "cloud_sync", "cloud_upload", "cloudy", "cloudy_snowing", "co2", "co_present", "code", "code_blocks", "code_off", "coffee", "coffee_maker", "cognition", "collections_bookmark", "colorize", "comic_bubble", "comment", "comment_bank", "comments_disabled", "commit", "communication", "commute", "compare", "compare_arrows", "compass_calibration", "component_exchange", "compost", "compress", "computer", "conditions", "confirmation_number", "congenital", "connect_without_contact", "connected_tv", "connecting_airports", "construction", "contact_emergency", "contact_mail", "contact_page", "contact_phone", "contact_support", "contactless", "contactless_off", "contacts", "content_copy", "content_cut", "content_paste", "content_paste_go", "content_paste_off", "content_paste_search", "contrast", "contrast_rtl_off", "control_camera", "control_point_duplicate", "controller_gen", "conversion_path", "conversion_path_off", "conveyor_belt", "cookie", "cookie_off", "cooking", "cool_to_dry", "copy_all", "copyright", "coronavirus", "corporate_fare", "cottage", "counter_0", "counter_1", "counter_2", "counter_3", "counter_4", "counter_5", "counter_6", "counter_7", "counter_8", "counter_9", "countertops", "create_new_folder", "credit_card", "credit_card_off", "credit_score", "crib", "crisis_alert", "crop", "crop_16_9", "crop_3_2", "crop_5_4", "crop_7_5", "crop_free", "crop_landscape", "crop_portrait", "crop_rotate", "crop_square", "crossword", "cruelty_free", "css", "currency_bitcoin", "currency_exchange", "currency_franc", "currency_lira", "currency_pound", "currency_ruble", "currency_rupee", "currency_yen", "currency_yuan", "curtains", "curtains_closed", "cut", "cycle", "cyclone", "dangerous", "dark_mode", "dashboard", "dashboard_customize", "data_alert", "data_array", "data_check", "data_exploration", "data_info_alert", "data_object", "data_saver_on", "data_thresholding", "data_usage", "database", "dataset", "dataset_linked", "date_range", "deblur", "deceased", "decimal_decrease", "decimal_increase", "deck", "dehaze", "delete", "delete_forever", "delete_sweep", "demography", "density_large", "density_medium", "density_small", "dentistry", "departure_board", "deployed_code", "deployed_code_alert", "deployed_code_history", "deployed_code_update", "dermatology", "description", "deselect", "design_services", "desk", "deskphone", "desktop_access_disabled", "desktop_mac", "desktop_windows", "details", "detection_and_zone", "detector", "detector_alarm", "detector_battery", "detector_co", "detector_offline", "detector_smoke", "detector_status", "developer_board", "developer_board_off", "developer_mode", "device_hub", "device_reset", "device_thermostat", "device_unknown", "devices", "devices_fold", "devices_off", "devices_other", "devices_wearables", "dew_point", "diagnosis", "dialer_sip", "dialpad", "diamond", "difference", "digital_out_of_home", "dining", "dinner_dining", "directions", "directions_alt", "directions_alt_off", "directions_bike", "directions_boat", "directions_bus", "directions_car", "directions_off", "directions_railway", "directions_run", "directions_subway", "directions_walk", "dirty_lens", "disabled_by_default", "disabled_visible", "disc_full", "discover_tune", "dishwasher_gen", "display_external_input", "display_settings", "distance", "diversity_1", "diversity_2", "diversity_3", "diversity_4", "dns", "do_not_disturb_off", "do_not_disturb_on", "do_not_disturb_on_total_silence", "do_not_step", "do_not_touch", "dock", "dock_to_bottom", "dock_to_left", "dock_to_right", "docs_add_on", "docs_apps_script", "document_scanner", "domain", "domain_add", "domain_disabled", "domain_verification", "domain_verification_off", "domino_mask", "done", "done_all", "done_outline", "donut_large", "donut_small", "door_back", "door_front", "door_open", "door_sensor", "door_sliding", "doorbell", "doorbell_3p", "doorbell_chime", "double_arrow", "downhill_skiing", "download", "download_done", "download_for_offline", "downloading", "draft", "draft_orders", "drafts", "drag_click", "drag_handle", "drag_indicator", "drag_pan", "draw", "draw_abstract", "draw_collage", "dresser", "drive_file_move", "drive_folder_upload", "dry", "dry_cleaning", "dual_screen", "duo", "dvr", "dynamic_feed", "dynamic_form", "e911_avatar", "e911_emergency", "e_mobiledata", "e_mobiledata_badge", "earbuds", "earbuds_battery", "early_on", "earthquake", "east", "ecg", "ecg_heart", "eco", "eda", "edgesensor_high", "edgesensor_low", "edit", "edit_attributes", "edit_calendar", "edit_document", "edit_location", "edit_location_alt", "edit_note", "edit_notifications", "edit_off", "edit_road", "edit_square", "egg", "egg_alt", "eject", "elderly", "elderly_woman", "electric_bike", "electric_bolt", "electric_car", "electric_meter", "electric_moped", "electric_rickshaw", "electric_scooter", "electrical_services", "elevation", "elevator", "emergency", "emergency_heat", "emergency_home", "emergency_recording", "emergency_share", "emoji_flags", "emoji_food_beverage", "emoji_nature", "emoji_objects", "emoji_people", "emoji_symbols", "emoji_transportation", "emoticon", "empty_dashboard", "enable", "endocrinology", "energy_program_saving", "energy_program_time_used", "energy_savings_leaf", "engineering", "enhanced_encryption", "ent", "equal", "equalizer", "error", "error_med", "escalator", "escalator_warning", "euro", "euro_symbol", "ev_charger", "ev_mobiledata_badge", "ev_shadow", "ev_station", "event", "event_available", "event_busy", "event_list", "event_note", "event_repeat", "event_seat", "event_upcoming", "exclamation", "exercise", "exit_to_app", "expand", "expand_circle_down", "expand_circle_up", "expand_content", "expand_less", "expand_more", "explicit", "explore", "explore_off", "explosion", "export_notes", "exposure", "exposure_neg_1", "exposure_neg_2", "exposure_plus_1", "exposure_plus_2", "exposure_zero", "extension", "extension_off", "eyeglasses", "face", "face_2", "face_3", "face_4", "face_5", "face_6", "face_retouching_natural", "face_retouching_off", "fact_check", "factory", "falling", "familiar_face_and_zone", "family_history", "family_restroom", "fast_forward", "fast_rewind", "fastfood", "faucet", "favorite", "fax", "featured_play_list", "featured_video", "feed", "female", "femur", "femur_alt", "fence", "fertile", "festival", "fiber_dvr", "fiber_manual_record", "fiber_new", "fiber_pin", "fiber_smart_record", "file_copy", "file_download_done", "file_download_off", "file_open", "file_present", "file_upload_off", "filter", "filter_1", "filter_2", "filter_3", "filter_4", "filter_5", "filter_6", "filter_7", "filter_8", "filter_9", "filter_9_plus", "filter_alt", "filter_alt_off", "filter_b_and_w", "filter_center_focus", "filter_drama", "filter_frames", "filter_hdr", "filter_list", "filter_list_off", "filter_none", "filter_tilt_shift", "filter_vintage", "finance_chip", "find_in_page", "find_replace", "fingerprint", "fire_extinguisher", "fire_hydrant", "fire_truck", "fireplace", "first_page", "fit_page", "fit_screen", "fit_width", "fitness_center", "flag", "flag_circle", "flaky", "flare", "flash_auto", "flash_off", "flash_on", "flashlight_off", "flashlight_on", "flatware", "flex_direction", "flex_no_wrap", "flex_wrap", "flight", "flight_class", "flight_land", "flight_takeoff", "flip", "flip_camera_android", "flip_camera_ios", "flip_to_back", "flip_to_front", "flood", "floor", "floor_lamp", "flowsheet", "fluid", "fluid_balance", "fluid_med", "fluorescent", "flutter_dash", "fmd_bad", "foggy", "folded_hands", "folder", "folder_copy", "folder_delete", "folder_managed", "folder_off", "folder_open", "folder_shared", "folder_special", "folder_supervised", "folder_zip", "follow_the_signs", "font_download", "font_download_off", "food_bank", "foot_bones", "footprint", "forest", "fork_left", "fork_right", "forklift", "format_align_center", "format_align_justify", "format_align_left", "format_align_right", "format_bold", "format_clear", "format_color_fill", "format_color_reset", "format_color_text", "format_h1", "format_h2", "format_h3", "format_h4", "format_h5", "format_h6", "format_image_left", "format_image_right", "format_indent_decrease", "format_indent_increase", "format_ink_highlighter", "format_italic", "format_letter_spacing", "format_letter_spacing_2", "format_letter_spacing_standard", "format_letter_spacing_wide", "format_letter_spacing_wider", "format_line_spacing", "format_list_bulleted", "format_list_bulleted_add", "format_list_numbered", "format_list_numbered_rtl", "format_overline", "format_paint", "format_paragraph", "format_quote", "format_shapes", "format_size", "format_strikethrough", "format_text_clip", "format_text_overflow", "format_text_wrap", "format_textdirection_l_to_r", "format_textdirection_r_to_l", "format_underlined", "format_underlined_squiggle", "forms_add_on", "forms_apps_script", "fort", "forum", "forward", "forward_10", "forward_30", "forward_5", "forward_circle", "forward_media", "forward_to_inbox", "foundation", "frame_inspect", "frame_person", "frame_person_off", "frame_reload", "frame_source", "free_cancellation", "front_hand", "front_loader", "full_stacked_bar_chart", "fullscreen", "fullscreen_exit", "function", "functions", "g_mobiledata", "g_mobiledata_badge", "g_translate", "gallery_thumbnail", "gamepad", "garage", "garage_home", "garden_cart", "gas_meter", "gastroenterology", "gate", "gavel", "generating_tokens", "genetics", "gesture", "gesture_select", "gif", "gif_box", "girl", "gite", "glass_cup", "globe_asia", "globe_uk", "glucose", "glyphs", "go_to_line", "golf_course", "google_tv_remote", "google_wifi", "gpp_bad", "gpp_maybe", "grade", "gradient", "grading", "grain", "graphic_eq", "grass", "grid_3x3", "grid_3x3_off", "grid_4x4", "grid_goldenratio", "grid_guides", "grid_off", "grid_on", "grid_view", "group", "group_add", "group_off", "group_remove", "group_work", "grouped_bar_chart", "groups", "groups_2", "groups_3", "gynecology", "h_mobiledata", "h_mobiledata_badge", "h_plus_mobiledata", "h_plus_mobiledata_badge", "hail", "hand_bones", "hand_gesture", "handshake", "handyman", "hard_drive", "hard_drive_2", "hardware", "hd", "hdr_auto", "hdr_auto_select", "hdr_enhanced_select", "hdr_off", "hdr_off_select", "hdr_on", "hdr_on_select", "hdr_plus", "hdr_strong", "hdr_weak", "headphones", "headphones_battery", "headset_mic", "headset_off", "healing", "health_and_safety", "health_metrics", "heap_snapshot_large", "heap_snapshot_multiple", "heap_snapshot_thumbnail", "hearing", "hearing_disabled", "heart_broken", "heart_check", "heart_minus", "heart_plus", "heat_pump", "heat_pump_balance", "height", "helicopter", "help", "help_center", "help_clinic", "hematology", "hevc", "hexagon", "hide", "hide_image", "hide_source", "high_density", "high_quality", "highlight", "highlighter_size_1", "highlighter_size_2", "highlighter_size_3", "highlighter_size_4", "highlighter_size_5", "hiking", "history", "history_edu", "history_toggle_off", "hive", "hls", "hls_off", "holiday_village", "home", "home_app_logo", "home_health", "home_iot_device", "home_max", "home_max_dots", "home_mini", "home_pin", "home_repair_service", "home_speaker", "home_storage", "home_work", "horizontal_distribute", "horizontal_rule", "horizontal_split", "hot_tub", "hotel", "hotel_class", "hourglass_bottom", "hourglass_disabled", "hourglass_empty", "hourglass_full", "hourglass_top", "house", "house_siding", "house_with_shield", "houseboat", "how_to_reg", "how_to_vote", "hr_resting", "html", "http", "hub", "humerus", "humerus_alt", "humidity_high", "humidity_low", "humidity_mid", "humidity_percentage", "hvac", "ice_skating", "icecream", "iframe", "iframe_off", "image", "image_aspect_ratio", "image_not_supported", "image_search", "imagesearch_roller", "imagesmode", "immunology", "import_contacts", "important_devices", "in_home_mode", "inactive_order", "inbox", "inbox_customize", "incomplete_circle", "indeterminate_check_box", "info", "infrared", "inpatient", "input", "input_circle", "insert_chart", "insert_page_break", "insert_text", "insights", "install_desktop", "install_mobile", "integration_instructions", "interactive_space", "interests", "interpreter_mode", "inventory", "inventory_2", "invert_colors", "invert_colors_off", "ios_share", "iron", "javascript", "join", "join_full", "join_inner", "join_left", "join_right", "joystick", "jump_to_element", "kayaking", "kebab_dining", "kettle", "key", "key_off", "key_visualizer", "keyboard", "keyboard_alt", "keyboard_arrow_down", "keyboard_arrow_left", "keyboard_arrow_right", "keyboard_arrow_up", "keyboard_backspace", "keyboard_capslock", "keyboard_capslock_badge", "keyboard_command_key", "keyboard_control_key", "keyboard_double_arrow_down", "keyboard_double_arrow_left", "keyboard_double_arrow_right", "keyboard_double_arrow_up", "keyboard_external_input", "keyboard_full", "keyboard_hide", "keyboard_keys", "keyboard_off", "keyboard_onscreen", "keyboard_option_key", "keyboard_previous_language", "keyboard_return", "keyboard_tab", "keyboard_tab_rtl", "keyboard_voice", "king_bed", "kitchen", "kitesurfing", "lab_panel", "lab_profile", "lab_research", "label", "label_important", "label_off", "labs", "lan", "landscape", "landslide", "language", "language_chinese_array", "language_chinese_cangjie", "language_chinese_dayi", "language_chinese_pinyin", "language_chinese_quick", "language_chinese_wubi", "language_french", "language_gb_english", "language_international", "language_korean_latin", "language_pinyin", "language_spanish", "language_us", "language_us_colemak", "language_us_dvorak", "laps", "laptop_chromebook", "laptop_mac", "laptop_windows", "last_page", "laundry", "layers", "layers_clear", "lda", "leaderboard", "leak_add", "leak_remove", "left_click", "left_panel_close", "left_panel_open", "legend_toggle", "lens", "lens_blur", "letter_switch", "library_add", "library_add_check", "library_books", "library_music", "lift_to_talk", "light", "light_group", "light_mode", "lightbulb", "lightbulb_circle", "line_axis", "line_curve", "line_end", "line_end_arrow", "line_end_arrow_notch", "line_end_circle", "line_end_diamond", "line_end_square", "line_start", "line_start_arrow", "line_start_arrow_notch", "line_start_circle", "line_start_diamond", "line_start_square", "line_style", "line_weight", "linear_scale", "link", "link_off", "linked_camera", "liquor", "list", "list_alt", "list_alt_add", "live_help", "live_tv", "living", "local_activity", "local_atm", "local_bar", "local_cafe", "local_car_wash", "local_convenience_store", "local_dining", "local_drink", "local_fire_department", "local_florist", "local_gas_station", "local_hospital", "local_laundry_service", "local_library", "local_mall", "local_parking", "local_pharmacy", "local_pizza", "local_police", "local_post_office", "local_see", "local_shipping", "local_taxi", "location_automation", "location_away", "location_chip", "location_city", "location_disabled", "location_home", "location_off", "location_on", "location_searching", "lock", "lock_clock", "lock_open", "lock_open_right", "lock_person", "lock_reset", "login", "logo_dev", "logout", "looks", "looks_3", "looks_4", "looks_5", "looks_6", "looks_one", "looks_two", "loupe", "low_density", "low_priority", "loyalty", "lte_mobiledata", "lte_mobiledata_badge", "lte_plus_mobiledata", "lte_plus_mobiledata_badge", "luggage", "lunch_dining", "lyrics", "macro_auto", "macro_off", "magic_button", "magic_exchange", "magic_tether", "magnification_large", "magnification_small", "magnify_docked", "magnify_fullscreen", "mail", "mail_lock", "male", "man", "man_2", "man_3", "man_4", "manage_accounts", "manage_history", "manage_search", "manga", "map", "maps_ugc", "margin", "mark_as_unread", "mark_chat_read", "mark_chat_unread", "mark_email_read", "mark_email_unread", "mark_unread_chat_alt", "markunread_mailbox", "masks", "match_case", "match_word", "matter", "maximize", "measuring_tape", "media_bluetooth_off", "media_bluetooth_on", "media_link", "mediation", "medical_information", "medical_mask", "medical_services", "medication", "medication_liquid", "meeting_room", "memory", "memory_alt", "menstrual_health", "menu", "menu_book", "menu_open", "merge", "merge_type", "metabolism", "mfg_nest_yale_lock", "mic", "mic_double", "mic_external_off", "mic_external_on", "mic_off", "microbiology", "microwave", "microwave_gen", "military_tech", "mindfulness", "minimize", "minor_crash", "missed_video_call", "mist", "mixture_med", "mms", "mobile_friendly", "mobile_off", "mobile_screen_share", "mobiledata_off", "mode_comment", "mode_cool", "mode_cool_off", "mode_fan", "mode_fan_off", "mode_heat", "mode_heat_cool", "mode_heat_off", "mode_night", "mode_of_travel", "mode_off_on", "mode_standby", "model_training", "monetization_on", "money", "money_off", "monitor", "monitor_heart", "monitor_weight", "monitor_weight_gain", "monitor_weight_loss", "monitoring", "monochrome_photos", "mood", "mood_bad", "mop", "more", "more_down", "more_horiz", "more_time", "more_up", "more_vert", "mosque", "motion_blur", "motion_mode", "motion_photos_auto", "motion_photos_off", "motion_photos_paused", "motion_sensor_active", "motion_sensor_alert", "motion_sensor_idle", "motion_sensor_urgent", "motorcycle", "mountain_flag", "mouse", "move", "move_down", "move_group", "move_location", "move_selection_down", "move_selection_left", "move_selection_right", "move_selection_up", "move_to_inbox", "move_up", "movie", "movie_edit", "movie_filter", "moving", "moving_beds", "moving_ministry", "mp", "multicooker", "multiline_chart", "multiple_stop", "museum", "music_note", "music_off", "music_video", "my_location", "mystery", "nat", "nature", "nature_people", "navigate_before", "navigate_next", "navigation", "near_me", "near_me_disabled", "nearby_error", "nearby_off", "nephrology", "nest_audio", "nest_cam_floodlight", "nest_cam_indoor", "nest_cam_iq", "nest_cam_iq_outdoor", "nest_cam_magnet_mount", "nest_cam_outdoor", "nest_cam_stand", "nest_cam_wall_mount", "nest_cam_wired_stand", "nest_clock_farsight_analog", "nest_clock_farsight_digital", "nest_connect", "nest_detect", "nest_display", "nest_display_max", "nest_doorbell_visitor", "nest_eco_leaf", "nest_farsight_weather", "nest_found_savings", "nest_heat_link_e", "nest_heat_link_gen_3", "nest_hello_doorbell", "nest_mini", "nest_multi_room", "nest_remote", "nest_remote_comfort_sensor", "nest_secure_alarm", "nest_sunblock", "nest_tag", "nest_thermostat_e_eu", "nest_thermostat_gen_3", "nest_thermostat_sensor", "nest_thermostat_sensor_eu", "nest_thermostat_zirconium_eu", "nest_true_radiant", "nest_wake_on_approach", "nest_wake_on_press", "nest_wifi_gale", "nest_wifi_point", "nest_wifi_router", "network_cell", "network_check", "network_intelligence_history", "network_intelligence_update", "network_locked", "network_manage", "network_ping", "network_wifi", "network_wifi_1_bar", "network_wifi_2_bar", "network_wifi_3_bar", "neurology", "new_label", "new_releases", "new_window", "newspaper", "next_plan", "next_week", "nfc", "night_shelter", "night_sight_auto", "night_sight_auto_off", "night_sight_max", "nightlife", "nightlight", "nightlight_off", "nights_stay", "no_accounts", "no_adult_content", "no_backpack", "no_crash", "no_drinks", "no_encryption", "no_flash", "no_food", "no_luggage", "no_meals", "no_meeting_room", "no_photography", "no_sim", "no_stroller", "no_transfer", "noise_aware", "noise_control_off", "noise_control_on", "nordic_walking", "north", "north_east", "north_west", "not_accessible", "not_listed_location", "not_started", "note", "note_add", "note_alt", "notes", "notification_add", "notification_important", "notifications", "notifications_active", "notifications_off", "notifications_paused", "numbers", "nutrition", "offline_bolt", "offline_pin", "offline_share", "oil_barrel", "on_device_training", "oncology", "online_prediction", "onsen", "opacity", "open_in_browser", "open_in_full", "open_in_new", "open_in_new_down", "open_in_new_off", "open_with", "ophthalmology", "oral_disease", "order_approve", "order_play", "orthopedics", "other_admission", "other_houses", "outbound", "outbox", "outdoor_garden", "outdoor_grill", "outgoing_mail", "outlet", "outpatient", "outpatient_med", "output", "output_circle", "oven_gen", "overview", "overview_key", "oxygen_saturation", "pace", "pacemaker", "package", "padding", "page_info", "pages", "pageview", "paid", "palette", "pallet", "pan_tool", "pan_tool_alt", "pan_zoom", "panorama", "panorama_fish_eye", "panorama_horizontal", "panorama_photosphere", "panorama_vertical", "panorama_wide_angle", "paragliding", "park", "partly_cloudy_day", "partly_cloudy_night", "partner_exchange", "party_mode", "password", "patient_list", "pattern", "pause", "pause_circle", "pause_presentation", "payments", "pedal_bike", "pediatrics", "pen_size_1", "pen_size_2", "pen_size_3", "pen_size_4", "pen_size_5", "pending", "pending_actions", "pentagon", "percent", "pergola", "perm_camera_mic", "perm_contact_calendar", "perm_data_setting", "perm_device_information", "perm_media", "perm_phone_msg", "perm_scan_wifi", "person", "person_2", "person_3", "person_4", "person_add", "person_add_disabled", "person_book", "person_celebrate", "person_off", "person_pin", "person_pin_circle", "person_play", "person_remove", "person_search", "personal_injury", "pest_control", "pest_control_rodent", "pets", "phishing", "phone_android", "phone_bluetooth_speaker", "phone_callback", "phone_disabled", "phone_enabled", "phone_forwarded", "phone_in_talk", "phone_iphone", "phone_locked", "phone_missed", "phone_paused", "phonelink_erase", "phonelink_lock", "phonelink_off", "phonelink_ring", "phonelink_ring_off", "phonelink_setup", "photo", "photo_album", "photo_camera", "photo_camera_back", "photo_camera_front", "photo_filter", "photo_frame", "photo_library", "photo_size_select_large", "photo_size_select_small", "php", "physical_therapy", "piano", "piano_off", "picture_as_pdf", "picture_in_picture", "picture_in_picture_alt", "pie_chart", "pill", "pill_off", "pin", "pin_drop", "pin_end", "pin_invoke", "pinch", "pinch_zoom_in", "pinch_zoom_out", "pip", "pip_exit", "pivot_table_chart", "place_item", "plagiarism", "play_arrow", "play_circle", "play_disabled", "play_for_work", "play_lesson", "play_pause", "play_shapes", "playing_cards", "playlist_add", "playlist_add_check", "playlist_add_check_circle", "playlist_add_circle", "playlist_play", "playlist_remove", "plumbing", "podcasts", "podiatry", "podium", "point_of_sale", "point_scan", "policy", "polyline", "polymer", "pool", "portable_wifi_off", "position_bottom_left", "position_bottom_right", "position_top_right", "post_add", "potted_plant", "power", "power_input", "power_off", "power_rounded", "power_settings_new", "prayer_times", "precision_manufacturing", "pregnancy", "pregnant_woman", "preliminary", "prescriptions", "present_to_all", "preview", "preview_off", "price_change", "price_check", "print", "print_add", "print_connect", "print_disabled", "print_error", "print_lock", "priority", "priority_high", "privacy", "privacy_tip", "private_connectivity", "problem", "procedure", "process_chart", "production_quantity_limits", "productivity", "propane", "propane_tank", "psychiatry", "psychology", "psychology_alt", "public", "public_off", "publish", "published_with_changes", "pulmonology", "punch_clock", "push_pin", "qr_code", "qr_code_2", "qr_code_2_add", "qr_code_scanner", "query_stats", "question_exchange", "question_mark", "queue_music", "queue_play_next", "quick_phrases", "quick_reference", "quick_reference_all", "quickreply", "quiet_time", "quiet_time_active", "quiz", "r_mobiledata", "radar", "radio", "radio_button_checked", "radio_button_unchecked", "radiology", "railway_alert", "rainy", "rainy_heavy", "rainy_light", "rainy_snow", "ramen_dining", "ramp_left", "ramp_right", "range_hood", "rate_review", "raw_off", "raw_on", "read_more", "readiness_score", "real_estate_agent", "rear_camera", "rebase", "rebase_edit", "receipt", "receipt_long", "recent_actors", "recent_patient", "recommend", "record_voice_over", "rectangle", "recycling", "redeem", "redo", "reduce_capacity", "refresh", "regular_expression", "relax", "release_alert", "remember_me", "remote_gen", "remove", "remove_done", "remove_from_queue", "remove_moderator", "remove_road", "remove_shopping_cart", "reopen_window", "reorder", "repartition", "repeat", "repeat_on", "repeat_one", "repeat_one_on", "replay", "replay_10", "replay_30", "replay_5", "reply", "reply_all", "report", "report_off", "request_page", "request_quote", "reset_image", "reset_tv", "resize", "respiratory_rate", "restart_alt", "restaurant", "restaurant_menu", "restore_from_trash", "restore_page", "resume", "reviews", "rheumatology", "rib_cage", "rice_bowl", "right_click", "right_panel_close", "right_panel_open", "ring_volume", "robot", "rocket", "rocket_launch", "roller_shades", "roller_shades_closed", "roller_skating", "roofing", "room_preferences", "room_service", "rotate_90_degrees_ccw", "rotate_90_degrees_cw", "rotate_left", "rotate_right", "roundabout_left", "roundabout_right", "rounded_corner", "route", "router", "routine", "rowing", "rss_feed", "rsvp", "rtt", "rule", "rule_folder", "rule_settings", "run_circle", "running_with_errors", "rv_hookup", "safety_check", "safety_divider", "sailing", "salinity", "sanitizer", "satellite", "satellite_alt", "sauna", "save", "save_as", "saved_search", "savings", "scale", "scan", "scan_delete", "scanner", "scatter_plot", "scene", "schedule", "schedule_send", "schema", "school", "science", "score", "scoreboard", "screen_lock_landscape", "screen_lock_portrait", "screen_lock_rotation", "screen_record", "screen_rotation", "screen_rotation_alt", "screen_rotation_up", "screen_search_desktop", "screen_share", "screenshot", "screenshot_frame", "screenshot_keyboard", "screenshot_monitor", "screenshot_region", "screenshot_tablet", "scuba_diving", "sd", "sd_card", "sd_card_alert", "search", "search_check", "search_off", "security", "security_update_good", "security_update_warning", "segment", "select", "select_all", "select_check_box", "select_to_speak", "self_care", "self_improvement", "sell", "send", "send_and_archive", "send_time_extension", "send_to_mobile", "sensor_door", "sensor_occupied", "sensor_window", "sensors", "sensors_off", "sentiment_calm", "sentiment_content", "sentiment_dissatisfied", "sentiment_excited", "sentiment_extremely_dissatisfied", "sentiment_frustrated", "sentiment_neutral", "sentiment_sad", "sentiment_satisfied", "sentiment_stressed", "sentiment_very_dissatisfied", "sentiment_very_satisfied", "sentiment_worried", "set_meal", "settings", "settings_accessibility", "settings_account_box", "settings_alert", "settings_applications", "settings_b_roll", "settings_backup_restore", "settings_bluetooth", "settings_brightness", "settings_cell", "settings_cinematic_blur", "settings_ethernet", "settings_input_antenna", "settings_input_component", "settings_input_hdmi", "settings_input_svideo", "settings_motion_mode", "settings_night_sight", "settings_overscan", "settings_panorama", "settings_phone", "settings_photo_camera", "settings_power", "settings_remote", "settings_slow_motion", "settings_suggest", "settings_system_daydream", "settings_timelapse", "settings_video_camera", "settings_voice", "settop_component", "severe_cold", "shape_line", "shapes", "share", "share_location", "share_off", "share_reviews", "share_windows", "sheets_rtl", "shelf_auto_hide", "shelf_position", "shelves", "shield", "shield_lock", "shield_moon", "shield_person", "shield_with_heart", "shield_with_house", "shift", "shift_lock", "shop", "shop_two", "shopping_bag", "shopping_basket", "shopping_cart", "shopping_cart_checkout", "short_stay", "short_text", "show_chart", "shower", "shuffle", "shuffle_on", "shutter_speed", "sick", "sign_language", "signal_cellular_0_bar", "signal_cellular_1_bar", "signal_cellular_2_bar", "signal_cellular_3_bar", "signal_cellular_4_bar", "signal_cellular_add", "signal_cellular_alt", "signal_cellular_alt_1_bar", "signal_cellular_alt_2_bar", "signal_cellular_connected_no_internet_0_bar", "signal_cellular_connected_no_internet_4_bar", "signal_cellular_nodata", "signal_cellular_null", "signal_cellular_off", "signal_disconnected", "signal_wifi_0_bar", "signal_wifi_4_bar", "signal_wifi_bad", "signal_wifi_off", "signal_wifi_statusbar_not_connected", "signal_wifi_statusbar_null", "signature", "signpost", "sim_card", "sim_card_download", "single_bed", "sip", "skateboarding", "skeleton", "skip_next", "skip_previous", "skull", "sledding", "sleep", "sleep_score", "slide_library", "slideshow", "slow_motion_video", "smart_button", "smart_display", "smart_outlet", "smart_screen", "smart_toy", "smartphone", "smb_share", "smoke_free", "smoking_rooms", "sms", "sms_failed", "snippet_folder", "snooze", "snowboarding", "snowing", "snowing_heavy", "snowmobile", "snowshoeing", "soap", "social_distance", "social_leaderboard", "solar_power", "sort", "sort_by_alpha", "sos", "sound_detection_dog_barking", "sound_detection_glass_break", "sound_detection_loud_sound", "sound_sampler", "soup_kitchen", "source_notes", "south", "south_america", "south_east", "south_west", "spa", "space_bar", "space_dashboard", "spatial_audio", "spatial_audio_off", "spatial_tracking", "speaker", "speaker_group", "speaker_notes", "speaker_notes_off", "speaker_phone", "special_character", "specific_gravity", "speech_to_text", "speed", "spellcheck", "splitscreen", "splitscreen_bottom", "splitscreen_left", "splitscreen_right", "splitscreen_top", "spo2", "spoke", "sports", "sports_bar", "sports_baseball", "sports_basketball", "sports_cricket", "sports_esports", "sports_football", "sports_golf", "sports_gymnastics", "sports_handball", "sports_hockey", "sports_kabaddi", "sports_martial_arts", "sports_mma", "sports_motorsports", "sports_rugby", "sports_score", "sports_soccer", "sports_tennis", "sports_volleyball", "sprinkler", "sprint", "square", "square_foot", "ssid_chart", "stack", "stack_off", "stack_star", "stacked_bar_chart", "stacked_line_chart", "stadia_controller", "stadium", "stairs", "star", "star_half", "star_rate", "star_rate_half", "stars", "start", "stay_current_landscape", "stay_current_portrait", "stay_primary_landscape", "stay_primary_portrait", "step", "step_into", "step_out", "step_over", "steps", "stethoscope", "stethoscope_arrow", "stethoscope_check", "sticky_note_2", "stop", "stop_circle", "stop_screen_share", "storage", "store", "storefront", "storm", "straight", "straighten", "strategy", "stream", "stream_apps", "streetview", "stress_management", "strikethrough_s", "stroke_full", "stroke_partial", "stroller", "style", "styler", "stylus", "stylus_laser_pointer", "stylus_note", "subdirectory_arrow_left", "subdirectory_arrow_right", "subject", "subscript", "subscriptions", "subtitles", "subtitles_off", "subway", "summarize", "sunny", "sunny_snowing", "superscript", "supervised_user_circle", "supervised_user_circle_off", "supervisor_account", "support", "support_agent", "surfing", "surgical", "surround_sound", "swap_calls", "swap_horiz", "swap_horizontal_circle", "swap_vert", "swap_vertical_circle", "swipe", "swipe_down", "swipe_down_alt", "swipe_left", "swipe_left_alt", "swipe_right", "swipe_right_alt", "swipe_up", "swipe_up_alt", "swipe_vertical", "switch", "switch_access", "switch_access_shortcut", "switch_access_shortcut_add", "switch_account", "switch_camera", "switch_left", "switch_right", "switch_video", "sword_rose", "swords", "symptoms", "synagogue", "sync", "sync_alt", "sync_disabled", "sync_lock", "sync_problem", "sync_saved_locally", "syringe", "system_update", "system_update_alt", "tab", "tab_close", "tab_close_right", "tab_duplicate", "tab_group", "tab_move", "tab_new_right", "tab_recent", "tab_unselected", "table", "table_bar", "table_chart", "table_chart_view", "table_lamp", "table_restaurant", "table_rows", "table_rows_narrow", "table_view", "tablet", "tablet_android", "tablet_mac", "tag", "takeout_dining", "tamper_detection_off", "tamper_detection_on", "tap_and_play", "tapas", "task", "task_alt", "taunt", "taxi_alert", "team_dashboard", "temp_preferences_custom", "temp_preferences_eco", "temple_buddhist", "temple_hindu", "tenancy", "terminal", "text_decrease", "text_fields", "text_format", "text_increase", "text_rotate_up", "text_rotate_vertical", "text_rotation_angledown", "text_rotation_angleup", "text_rotation_down", "text_rotation_none", "text_select_end", "text_select_jump_to_beginning", "text_select_jump_to_end", "text_select_move_back_character", "text_select_move_back_word", "text_select_move_down", "text_select_move_forward_character", "text_select_move_forward_word", "text_select_move_up", "text_select_start", "text_snippet", "text_to_speech", "texture", "theater_comedy", "theaters", "thermometer", "thermometer_gain", "thermometer_loss", "thermostat", "thermostat_auto", "thermostat_carbon", "thumb_down", "thumb_up", "thumbnail_bar", "thumbs_up_down", "thunderstorm", "tibia", "tibia_alt", "time_auto", "timelapse", "timeline", "timer", "timer_10", "timer_10_alt_1", "timer_10_select", "timer_3", "timer_3_alt_1", "timer_3_select", "timer_off", "tips_and_updates", "tire_repair", "title", "toc", "today", "toggle_off", "toggle_on", "token", "toll", "tonality", "tools_flat_head", "tools_installation_kit", "tools_ladder", "tools_level", "tools_phillips", "tools_pliers_wire_stripper", "tools_power_drill", "top_panel_close", "top_panel_open", "topic", "tornado", "total_dissolved_solids", "touch_app", "touchpad_mouse", "tour", "toys", "toys_fan", "track_changes", "traffic", "trail_length", "trail_length_medium", "trail_length_short", "train", "tram", "transcribe", "transfer_within_a_station", "transform", "transgender", "transit_enterexit", "translate", "transportation", "travel_explore", "trending_down", "trending_flat", "trending_up", "trip_origin", "trolley", "tsunami", "tty", "tune", "turn_left", "turn_right", "turn_sharp_left", "turn_sharp_right", "turn_slight_left", "turn_slight_right", "tv", "tv_gen", "tv_off", "tv_remote", "tv_with_assistant", "two_wheeler", "type_specimen", "u_turn_left", "u_turn_right", "ulna_radius", "ulna_radius_alt", "umbrella", "unarchive", "undo", "unfold_less", "unfold_less_double", "unfold_more", "unfold_more_double", "ungroup", "unknown_document", "unknown_med", "unpublished", "unsubscribe", "upcoming", "update", "update_disabled", "upgrade", "upload", "upload_file", "urology", "usb", "usb_off", "vaccines", "valve", "vape_free", "vaping_rooms", "variables", "ventilator", "verified", "verified_user", "vertical_align_bottom", "vertical_align_center", "vertical_align_top", "vertical_distribute", "vertical_shades", "vertical_shades_closed", "vertical_split", "vibration", "video_call", "video_camera_back", "video_camera_front", "video_camera_front_off", "video_chat", "video_file", "video_label", "video_library", "video_settings", "video_stable", "videocam", "videocam_off", "videogame_asset", "videogame_asset_off", "view_agenda", "view_array", "view_carousel", "view_column", "view_column_2", "view_comfy", "view_comfy_alt", "view_compact", "view_compact_alt", "view_cozy", "view_day", "view_headline", "view_in_ar", "view_in_ar_off", "view_kanban", "view_list", "view_module", "view_quilt", "view_sidebar", "view_stream", "view_timeline", "view_week", "vignette", "villa", "visibility", "visibility_lock", "visibility_off", "vital_signs", "voice_chat", "voice_over_off", "voicemail", "volcano", "volume_down", "volume_down_alt", "volume_mute", "volume_off", "volume_up", "volunteer_activism", "voting_chip", "vpn_key", "vpn_key_alert", "vpn_key_off", "vpn_lock", "vrpano", "wall_lamp", "wallet", "wallpaper", "wallpaper_slideshow", "ward", "warehouse", "warning", "warning_off", "wash", "watch", "watch_button_press", "watch_off", "watch_screentime", "watch_wake", "water", "water_bottle", "water_bottle_large", "water_damage", "water_do", "water_drop", "water_ec", "water_full", "water_heater", "water_lock", "water_loss", "water_lux", "water_medium", "water_orp", "water_ph", "water_pump", "water_voc", "waterfall_chart", "waves", "waving_hand", "wb_auto", "wb_incandescent", "wb_iridescent", "wb_shade", "wb_sunny", "wb_twilight", "wc", "weather_hail", "weather_mix", "weather_snowy", "web", "web_asset", "web_asset_off", "web_stories", "webhook", "weekend", "weight", "west", "whatshot", "wheelchair_pickup", "where_to_vote", "widgets", "width", "width_full", "width_normal", "width_wide", "wifi", "wifi_1_bar", "wifi_2_bar", "wifi_add", "wifi_calling", "wifi_calling_1", "wifi_calling_2", "wifi_calling_3", "wifi_channel", "wifi_find", "wifi_home", "wifi_lock", "wifi_notification", "wifi_off", "wifi_password", "wifi_protected_setup", "wifi_proxy", "wifi_tethering", "wifi_tethering_error", "wifi_tethering_off", "wind_power", "window", "window_closed", "window_open", "window_sensor", "wine_bar", "woman", "woman_2", "work", "work_alert", "work_history", "work_update", "workspace_premium", "workspaces", "wounds_injuries", "wrap_text", "wrist", "wrong_location", "wysiwyg", "yard", "youtube_activity", "youtube_searched_for", "zone_person_alert", "zone_person_idle", "zone_person_urgent", "zoom_in", "zoom_in_map", "zoom_out", "zoom_out_map"];
1106
-
1107
- var Icon = function Icon(_ref) {
1108
- var active = _ref.active,
1109
- icon = _ref.icon,
1110
- _onClick = _ref.onClick,
1111
- symbolsStyle = _ref.symbolsStyle,
1112
- style = _ref.style;
1113
- return /*#__PURE__*/React.createElement(Tooltip, {
1114
- content: humanize(icon),
1115
- position: "bottom"
1116
- }, /*#__PURE__*/React.createElement("div", {
1117
- "data-testid": "icon-picker-icon-".concat(icon),
1118
- style: style,
1119
- className: classnames("neeto-ui-rounded-md flex cursor-pointer items-center justify-center", {
1120
- "neeto-ui-text-gray-700 hover:neeto-ui-bg-gray-100": !active,
1121
- "neeto-ui-text-white neeto-ui-bg-primary-500": active
1122
- }),
1123
- onClick: function onClick() {
1124
- return _onClick(icon);
1125
- }
1126
- }, /*#__PURE__*/React.createElement("div", {
1127
- className: "flex w-11/12 flex-col justify-center p-1",
1128
- style: symbolsStyle
1129
- }, /*#__PURE__*/React.createElement("span", {
1130
- className: "material-symbols-rounded mx-auto"
1131
- }, icon), /*#__PURE__*/React.createElement(Typography, {
1132
- className: "text-center line-clamp-2",
1133
- style: "body3"
1134
- }, humanize(icon)))));
1135
- };
1136
-
1137
- var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
1138
-
1139
- var css = "@import url(\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@24,300,0..1,0\");";
1140
- n(css,{});
1141
-
1142
- var NoResults = function NoResults() {
1143
- var _useTranslation = useTranslation(),
1144
- t = _useTranslation.t;
1145
- return /*#__PURE__*/React.createElement(Typography, {
1146
- className: "neeto-ui-text-gray-400 flex h-64 items-center justify-center text-lg",
1147
- "data-cy": "no-icon-results-found-text"
1148
- }, t("neetoMolecules.iconPicker.dropdown.noResults"));
1149
- };
1150
- var NoResults$1 = /*#__PURE__*/React.memo(NoResults);
1151
-
1152
- var _excluded = ["filled", "label", "value", "onClick", "className"];
1153
- var IconPicker = function IconPicker(_ref) {
1154
- var _ref$filled = _ref.filled,
1155
- filled = _ref$filled === void 0 ? false : _ref$filled,
1156
- label = _ref.label,
1157
- _ref$value = _ref.value,
1158
- value = _ref$value === void 0 ? "" : _ref$value,
1159
- _ref$onClick = _ref.onClick,
1160
- onClick = _ref$onClick === void 0 ? noop : _ref$onClick,
1161
- _ref$className = _ref.className,
1162
- className = _ref$className === void 0 ? "" : _ref$className,
1163
- otherProps = _objectWithoutProperties(_ref, _excluded);
1164
- var _useState = useState(""),
1165
- _useState2 = _slicedToArray(_useState, 2),
1166
- searchTerm = _useState2[0],
1167
- setSearchTerm = _useState2[1];
1168
- var _useState3 = useState([]),
1169
- _useState4 = _slicedToArray(_useState3, 2),
1170
- iconList = _useState4[0],
1171
- setIconList = _useState4[1];
1172
- var _useState5 = useState(value),
1173
- _useState6 = _slicedToArray(_useState5, 2),
1174
- activeIcon = _useState6[0],
1175
- setActiveIcon = _useState6[1];
1176
- var gridRef = useRef(null);
1177
- var debouncedSearchTerm = useDebounce(searchTerm);
1178
- var _useTranslation = useTranslation(),
1179
- t = _useTranslation.t;
1180
- var handleSearch = function handleSearch(term) {
1181
- var _gridRef$current;
1182
- var searchTerm = term.toLowerCase().trim().replace(/\s+/g, "_");
1183
- var filteredIcons = ICONS_LIST.filter(function (icon) {
1184
- return icon.toLowerCase().includes(searchTerm);
1185
- });
1186
- setIconList(filteredIcons);
1187
- (_gridRef$current = gridRef.current) === null || _gridRef$current === void 0 ? void 0 : _gridRef$current.scrollToItem({
1188
- rowIndex: 0
1189
- });
1190
- };
1191
- var handleRemoveClick = function handleRemoveClick() {
1192
- onClick("");
1193
- setActiveIcon("");
1194
- };
1195
- var handleDropdownClick = function handleDropdownClick() {
1196
- var _gridRef$current2;
1197
- (_gridRef$current2 = gridRef.current) === null || _gridRef$current2 === void 0 ? void 0 : _gridRef$current2.scrollToItem({
1198
- rowIndex: iconList.findIndex(function (icon) {
1199
- return icon === activeIcon;
1200
- }) / GRID_PROPERTIES.columnCount
1201
- });
1202
- setSearchTerm("");
1203
- };
1204
- var symbolsStyle = {
1205
- fontVariationSettings: "'FILL' ".concat(filled ? 1 : 0)
1206
- };
1207
- useEffect(function () {
1208
- handleSearch(debouncedSearchTerm);
1209
- }, [debouncedSearchTerm]);
1210
- var renderGridCell = function renderGridCell(_ref2) {
1211
- var columnIndex = _ref2.columnIndex,
1212
- rowIndex = _ref2.rowIndex,
1213
- style = _ref2.style,
1214
- data = _ref2.data;
1215
- var iconIndex = rowIndex * GRID_PROPERTIES.columnCount + columnIndex;
1216
- var icon = data[iconIndex];
1217
- var handleIconClick = function handleIconClick(icon) {
1218
- onClick(icon);
1219
- setActiveIcon(icon);
1220
- };
1221
- return icon ? /*#__PURE__*/React.createElement(Icon, {
1222
- active: icon === activeIcon,
1223
- icon: icon,
1224
- style: style,
1225
- symbolsStyle: symbolsStyle,
1226
- onClick: handleIconClick
1227
- }) : null;
1228
- };
1229
- return /*#__PURE__*/React.createElement("div", {
1230
- className: "flex flex-col items-start gap-2"
1231
- }, label && /*#__PURE__*/React.createElement(Label, null, label), /*#__PURE__*/React.createElement(Dropdown, _extends({
1232
- buttonSize: "small",
1233
- buttonStyle: "secondary",
1234
- closeOnSelect: false,
1235
- dropdownProps: {
1236
- className: classnames("h-96", className)
1237
- },
1238
- position: "bottom-start",
1239
- strategy: "fixed",
1240
- buttonProps: {
1241
- "data-testid": "icon-picker-dropdown",
1242
- onClick: handleDropdownClick
1243
- },
1244
- label: /*#__PURE__*/React.createElement("span", {
1245
- className: "flex items-center gap-2",
1246
- style: symbolsStyle
1247
- }, value && /*#__PURE__*/React.createElement("span", {
1248
- className: "material-symbols-rounded neeto-ui-text-base mx-auto"
1249
- }, value), /*#__PURE__*/React.createElement(Typography, {
1250
- style: "body2"
1251
- }, humanize(value) || t("neetoMolecules.iconPicker.dropdown.label"))),
1252
- onClose: function onClose() {
1253
- return setSearchTerm("");
1254
- }
1255
- }, otherProps), /*#__PURE__*/React.createElement("div", {
1256
- className: "w-80 flex-grow p-2"
1257
- }, /*#__PURE__*/React.createElement("div", {
1258
- className: "mb-1 space-y-2"
1259
- }, /*#__PURE__*/React.createElement(Input, {
1260
- autoFocus: true,
1261
- autoComplete: "off",
1262
- "data-cy": "pick-icon-text-field",
1263
- value: searchTerm,
1264
- placeholder: t("neetoMolecules.common.search", {
1265
- entity: t("neetoMolecules.iconPicker.entity")
1266
- }),
1267
- suffix: /*#__PURE__*/React.createElement(Button, {
1268
- icon: Close,
1269
- size: "small",
1270
- style: "link",
1271
- onClick: function onClick() {
1272
- return setSearchTerm("");
1273
- }
1274
- }),
1275
- onChange: function onChange(e) {
1276
- return setSearchTerm(e.target.value);
1277
- }
1278
- }), value && /*#__PURE__*/React.createElement("div", {
1279
- className: "neeto-ui-bg-white flex justify-center"
1280
- }, /*#__PURE__*/React.createElement(Button, {
1281
- className: "text-sm",
1282
- "data-cy": "icon-remove-button",
1283
- "data-testid": "icon-remove-button",
1284
- icon: Close,
1285
- label: t("neetoMolecules.iconPicker.dropdown.removeButton"),
1286
- style: "link",
1287
- onClick: handleRemoveClick
1288
- }))), isNotEmpty(iconList) ? /*#__PURE__*/React.createElement(FixedSizeGrid, {
1289
- className: "overflow-x-hidden",
1290
- columnCount: GRID_PROPERTIES.columnCount,
1291
- columnWidth: GRID_PROPERTIES.columnWidth,
1292
- height: GRID_PROPERTIES.gridHeight,
1293
- itemData: iconList,
1294
- ref: gridRef,
1295
- rowHeight: GRID_PROPERTIES.rowHeight,
1296
- width: GRID_PROPERTIES.gridWidth,
1297
- rowCount: Math.ceil(iconList.length / GRID_PROPERTIES.columnCount)
1298
- }, renderGridCell) : /*#__PURE__*/React.createElement(NoResults$1, null))));
1299
- };
1300
-
1301
- export { IconPicker as default };
1302
- //# sourceMappingURL=IconPicker.js.map