@bigbinary/neeto-molecules 3.15.42 → 3.15.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/package.json +1 -1
  2. package/dist/AuditLogs.js +0 -539
  3. package/dist/AuditLogs.js.map +0 -1
  4. package/dist/BoardView.js +0 -394
  5. package/dist/BoardView.js.map +0 -1
  6. package/dist/Breadcrumbs.js +0 -46
  7. package/dist/Breadcrumbs.js.map +0 -1
  8. package/dist/BrowserPreview.js +0 -50
  9. package/dist/BrowserPreview.js.map +0 -1
  10. package/dist/BrowserSupport.js +0 -348
  11. package/dist/BrowserSupport.js.map +0 -1
  12. package/dist/Builder.js +0 -786
  13. package/dist/Builder.js.map +0 -1
  14. package/dist/ButtonGroup.js +0 -36
  15. package/dist/ButtonGroup.js.map +0 -1
  16. package/dist/CalendarView.js +0 -353
  17. package/dist/CalendarView.js.map +0 -1
  18. package/dist/CardLayout.js +0 -49
  19. package/dist/CardLayout.js.map +0 -1
  20. package/dist/Chevron-6dLkaXtR.js +0 -246
  21. package/dist/Chevron-6dLkaXtR.js.map +0 -1
  22. package/dist/Codeblock.js +0 -58
  23. package/dist/Codeblock.js.map +0 -1
  24. package/dist/Columns.js +0 -21
  25. package/dist/Columns.js.map +0 -1
  26. package/dist/ConfigurePageSidebar.js +0 -97
  27. package/dist/ConfigurePageSidebar.js.map +0 -1
  28. package/dist/ConfirmationModal.js +0 -110
  29. package/dist/ConfirmationModal.js.map +0 -1
  30. package/dist/Container.js +0 -38
  31. package/dist/Container.js.map +0 -1
  32. package/dist/CopyToClipboardButton.js +0 -82
  33. package/dist/CopyToClipboardButton.js.map +0 -1
  34. package/dist/Currency.js +0 -917
  35. package/dist/Currency.js.map +0 -1
  36. package/dist/DateFormat.js +0 -45
  37. package/dist/DateFormat.js.map +0 -1
  38. package/dist/DateRangeFilter.js +0 -178
  39. package/dist/DateRangeFilter.js.map +0 -1
  40. package/dist/DeleteArchiveModal.js +0 -98
  41. package/dist/DeleteArchiveModal.js.map +0 -1
  42. package/dist/DeviceIncompatibilityMessage.js +0 -95
  43. package/dist/DeviceIncompatibilityMessage.js.map +0 -1
  44. package/dist/DocumentEditor.js +0 -183
  45. package/dist/DocumentEditor.js.map +0 -1
  46. package/dist/DownloadMobileAppCallout.js +0 -40
  47. package/dist/DownloadMobileAppCallout.js.map +0 -1
  48. package/dist/DynamicVariables.js +0 -115
  49. package/dist/DynamicVariables.js.map +0 -1
  50. package/dist/EmailForm.js +0 -567
  51. package/dist/EmailForm.js.map +0 -1
  52. package/dist/EmailPreview.js +0 -140
  53. package/dist/EmailPreview.js.map +0 -1
  54. package/dist/EmojiPicker.js +0 -112
  55. package/dist/EmojiPicker.js.map +0 -1
  56. package/dist/EmojiReactions.js +0 -82
  57. package/dist/EmojiReactions.js.map +0 -1
  58. package/dist/Engagements.js +0 -292
  59. package/dist/Engagements.js.map +0 -1
  60. package/dist/ErrorPage.js +0 -1811
  61. package/dist/ErrorPage.js.map +0 -1
  62. package/dist/FileUpload.js +0 -595
  63. package/dist/FileUpload.js.map +0 -1
  64. package/dist/FinderModal.js +0 -280
  65. package/dist/FinderModal.js.map +0 -1
  66. package/dist/FloatingActionMenu.js +0 -854
  67. package/dist/FloatingActionMenu.js.map +0 -1
  68. package/dist/GoogleFontPicker.js +0 -581
  69. package/dist/GoogleFontPicker.js.map +0 -1
  70. package/dist/Header.js +0 -126
  71. package/dist/Header.js.map +0 -1
  72. package/dist/HelpPopover.js +0 -83
  73. package/dist/HelpPopover.js.map +0 -1
  74. package/dist/IconPicker.js +0 -1159
  75. package/dist/IconPicker.js.map +0 -1
  76. package/dist/ImageWithFallback.js +0 -49
  77. package/dist/ImageWithFallback.js.map +0 -1
  78. package/dist/InlineInput.js +0 -230
  79. package/dist/InlineInput.js.map +0 -1
  80. package/dist/Insights.js +0 -358
  81. package/dist/Insights.js.map +0 -1
  82. package/dist/IntegrationCard.js +0 -227
  83. package/dist/IntegrationCard.js.map +0 -1
  84. package/dist/IpRestriction.js +0 -3617
  85. package/dist/IpRestriction.js.map +0 -1
  86. package/dist/KeyboardShortcuts.js +0 -284
  87. package/dist/KeyboardShortcuts.js.map +0 -1
  88. package/dist/LoginPage.js +0 -184
  89. package/dist/LoginPage.js.map +0 -1
  90. package/dist/MadeWith.js +0 -41
  91. package/dist/MadeWith.js.map +0 -1
  92. package/dist/MenuBar.js +0 -1326
  93. package/dist/MenuBar.js.map +0 -1
  94. package/dist/Metadata.js +0 -218
  95. package/dist/Metadata.js.map +0 -1
  96. package/dist/MobilePreviewHeader.js +0 -25
  97. package/dist/MobilePreviewHeader.js.map +0 -1
  98. package/dist/MoreDropdown.js +0 -163
  99. package/dist/MoreDropdown.js.map +0 -1
  100. package/dist/NavigationHeader.js +0 -264
  101. package/dist/NavigationHeader.js.map +0 -1
  102. package/dist/NeetoWidget.js +0 -2867
  103. package/dist/NeetoWidget.js.map +0 -1
  104. package/dist/Onboarding.js +0 -246
  105. package/dist/Onboarding.js.map +0 -1
  106. package/dist/OptionFields.js +0 -717
  107. package/dist/OptionFields.js.map +0 -1
  108. package/dist/PageLoader.js +0 -40
  109. package/dist/PageLoader.js.map +0 -1
  110. package/dist/PhoneNumber.js +0 -75
  111. package/dist/PhoneNumber.js.map +0 -1
  112. package/dist/ProductEmbed.js +0 -884
  113. package/dist/ProductEmbed.js.map +0 -1
  114. package/dist/PublishBlock.js +0 -447
  115. package/dist/PublishBlock.js.map +0 -1
  116. package/dist/PublishYourItem.js +0 -58
  117. package/dist/PublishYourItem.js.map +0 -1
  118. package/dist/Rename.js +0 -366
  119. package/dist/Rename.js.map +0 -1
  120. package/dist/ResponsiveDevicePicker.js +0 -63
  121. package/dist/ResponsiveDevicePicker.js.map +0 -1
  122. package/dist/Schedule.js +0 -926
  123. package/dist/Schedule.js.map +0 -1
  124. package/dist/Scrollable.js +0 -42
  125. package/dist/Scrollable.js.map +0 -1
  126. package/dist/Search.js +0 -110
  127. package/dist/Search.js.map +0 -1
  128. package/dist/SendToFields.js +0 -2221
  129. package/dist/SendToFields.js.map +0 -1
  130. package/dist/SessionEnvironment.js +0 -431
  131. package/dist/SessionEnvironment.js.map +0 -1
  132. package/dist/Settings.js +0 -250
  133. package/dist/Settings.js.map +0 -1
  134. package/dist/ShareRecordingPane.js +0 -216
  135. package/dist/ShareRecordingPane.js.map +0 -1
  136. package/dist/ShareViaEmail.js +0 -416
  137. package/dist/ShareViaEmail.js.map +0 -1
  138. package/dist/ShareViaLink.js +0 -1556
  139. package/dist/ShareViaLink.js.map +0 -1
  140. package/dist/Sidebar.js +0 -294
  141. package/dist/Sidebar.js.map +0 -1
  142. package/dist/StatusDropdown.js +0 -109
  143. package/dist/StatusDropdown.js.map +0 -1
  144. package/dist/StickyRibbonsContainer.js +0 -131
  145. package/dist/StickyRibbonsContainer.js.map +0 -1
  146. package/dist/SubHeader.js +0 -209
  147. package/dist/SubHeader.js.map +0 -1
  148. package/dist/SubscriptionNotificationsContainer.js +0 -77
  149. package/dist/SubscriptionNotificationsContainer.js.map +0 -1
  150. package/dist/SuffixedInput.js +0 -111
  151. package/dist/SuffixedInput.js.map +0 -1
  152. package/dist/TableWrapper.js +0 -27
  153. package/dist/TableWrapper.js.map +0 -1
  154. package/dist/Taxonomy.js +0 -496
  155. package/dist/Taxonomy.js.map +0 -1
  156. package/dist/TimeFormat.js +0 -14
  157. package/dist/TimeFormat.js.map +0 -1
  158. package/dist/TimezoneMismatchModal.js +0 -138
  159. package/dist/TimezoneMismatchModal.js.map +0 -1
  160. package/dist/ToggleFeatureCard.js +0 -211
  161. package/dist/ToggleFeatureCard.js.map +0 -1
  162. package/dist/_commonjsHelpers-BFTU3MAI.js +0 -8
  163. package/dist/_commonjsHelpers-BFTU3MAI.js.map +0 -1
  164. package/dist/cjs/AuditLogs.js +0 -541
  165. package/dist/cjs/AuditLogs.js.map +0 -1
  166. package/dist/cjs/BoardView.js +0 -396
  167. package/dist/cjs/BoardView.js.map +0 -1
  168. package/dist/cjs/Breadcrumbs.js +0 -48
  169. package/dist/cjs/Breadcrumbs.js.map +0 -1
  170. package/dist/cjs/BrowserPreview.js +0 -52
  171. package/dist/cjs/BrowserPreview.js.map +0 -1
  172. package/dist/cjs/BrowserSupport.js +0 -350
  173. package/dist/cjs/BrowserSupport.js.map +0 -1
  174. package/dist/cjs/Builder.js +0 -794
  175. package/dist/cjs/Builder.js.map +0 -1
  176. package/dist/cjs/ButtonGroup.js +0 -38
  177. package/dist/cjs/ButtonGroup.js.map +0 -1
  178. package/dist/cjs/CalendarView.js +0 -355
  179. package/dist/cjs/CalendarView.js.map +0 -1
  180. package/dist/cjs/CardLayout.js +0 -51
  181. package/dist/cjs/CardLayout.js.map +0 -1
  182. package/dist/cjs/Chevron-wfVdaB4-.js +0 -256
  183. package/dist/cjs/Chevron-wfVdaB4-.js.map +0 -1
  184. package/dist/cjs/Codeblock.js +0 -60
  185. package/dist/cjs/Codeblock.js.map +0 -1
  186. package/dist/cjs/Columns.js +0 -35
  187. package/dist/cjs/Columns.js.map +0 -1
  188. package/dist/cjs/ConfigurePageSidebar.js +0 -99
  189. package/dist/cjs/ConfigurePageSidebar.js.map +0 -1
  190. package/dist/cjs/ConfirmationModal.js +0 -131
  191. package/dist/cjs/ConfirmationModal.js.map +0 -1
  192. package/dist/cjs/Container.js +0 -40
  193. package/dist/cjs/Container.js.map +0 -1
  194. package/dist/cjs/CopyToClipboardButton.js +0 -84
  195. package/dist/cjs/CopyToClipboardButton.js.map +0 -1
  196. package/dist/cjs/Currency.js +0 -920
  197. package/dist/cjs/Currency.js.map +0 -1
  198. package/dist/cjs/DateFormat.js +0 -47
  199. package/dist/cjs/DateFormat.js.map +0 -1
  200. package/dist/cjs/DateRangeFilter.js +0 -180
  201. package/dist/cjs/DateRangeFilter.js.map +0 -1
  202. package/dist/cjs/DeleteArchiveModal.js +0 -100
  203. package/dist/cjs/DeleteArchiveModal.js.map +0 -1
  204. package/dist/cjs/DeviceIncompatibilityMessage.js +0 -115
  205. package/dist/cjs/DeviceIncompatibilityMessage.js.map +0 -1
  206. package/dist/cjs/DocumentEditor.js +0 -185
  207. package/dist/cjs/DocumentEditor.js.map +0 -1
  208. package/dist/cjs/DownloadMobileAppCallout.js +0 -42
  209. package/dist/cjs/DownloadMobileAppCallout.js.map +0 -1
  210. package/dist/cjs/DynamicVariables.js +0 -117
  211. package/dist/cjs/DynamicVariables.js.map +0 -1
  212. package/dist/cjs/EmailForm.js +0 -593
  213. package/dist/cjs/EmailForm.js.map +0 -1
  214. package/dist/cjs/EmailPreview.js +0 -142
  215. package/dist/cjs/EmailPreview.js.map +0 -1
  216. package/dist/cjs/EmojiPicker.js +0 -114
  217. package/dist/cjs/EmojiPicker.js.map +0 -1
  218. package/dist/cjs/EmojiReactions.js +0 -84
  219. package/dist/cjs/EmojiReactions.js.map +0 -1
  220. package/dist/cjs/Engagements.js +0 -294
  221. package/dist/cjs/Engagements.js.map +0 -1
  222. package/dist/cjs/ErrorPage.js +0 -1831
  223. package/dist/cjs/ErrorPage.js.map +0 -1
  224. package/dist/cjs/FileUpload.js +0 -598
  225. package/dist/cjs/FileUpload.js.map +0 -1
  226. package/dist/cjs/FinderModal.js +0 -282
  227. package/dist/cjs/FinderModal.js.map +0 -1
  228. package/dist/cjs/FloatingActionMenu.js +0 -875
  229. package/dist/cjs/FloatingActionMenu.js.map +0 -1
  230. package/dist/cjs/GoogleFontPicker.js +0 -583
  231. package/dist/cjs/GoogleFontPicker.js.map +0 -1
  232. package/dist/cjs/Header.js +0 -128
  233. package/dist/cjs/Header.js.map +0 -1
  234. package/dist/cjs/HelpPopover.js +0 -85
  235. package/dist/cjs/HelpPopover.js.map +0 -1
  236. package/dist/cjs/IconPicker.js +0 -1161
  237. package/dist/cjs/IconPicker.js.map +0 -1
  238. package/dist/cjs/ImageWithFallback.js +0 -51
  239. package/dist/cjs/ImageWithFallback.js.map +0 -1
  240. package/dist/cjs/InlineInput.js +0 -233
  241. package/dist/cjs/InlineInput.js.map +0 -1
  242. package/dist/cjs/Insights.js +0 -360
  243. package/dist/cjs/Insights.js.map +0 -1
  244. package/dist/cjs/IntegrationCard.js +0 -229
  245. package/dist/cjs/IntegrationCard.js.map +0 -1
  246. package/dist/cjs/IpRestriction.js +0 -3638
  247. package/dist/cjs/IpRestriction.js.map +0 -1
  248. package/dist/cjs/KeyboardShortcuts.js +0 -286
  249. package/dist/cjs/KeyboardShortcuts.js.map +0 -1
  250. package/dist/cjs/LoginPage.js +0 -205
  251. package/dist/cjs/LoginPage.js.map +0 -1
  252. package/dist/cjs/MadeWith.js +0 -43
  253. package/dist/cjs/MadeWith.js.map +0 -1
  254. package/dist/cjs/MenuBar.js +0 -1328
  255. package/dist/cjs/MenuBar.js.map +0 -1
  256. package/dist/cjs/Metadata.js +0 -220
  257. package/dist/cjs/Metadata.js.map +0 -1
  258. package/dist/cjs/MobilePreviewHeader.js +0 -27
  259. package/dist/cjs/MobilePreviewHeader.js.map +0 -1
  260. package/dist/cjs/MoreDropdown.js +0 -165
  261. package/dist/cjs/MoreDropdown.js.map +0 -1
  262. package/dist/cjs/NavigationHeader.js +0 -266
  263. package/dist/cjs/NavigationHeader.js.map +0 -1
  264. package/dist/cjs/NeetoWidget.js +0 -2888
  265. package/dist/cjs/NeetoWidget.js.map +0 -1
  266. package/dist/cjs/Onboarding.js +0 -248
  267. package/dist/cjs/Onboarding.js.map +0 -1
  268. package/dist/cjs/OptionFields.js +0 -719
  269. package/dist/cjs/OptionFields.js.map +0 -1
  270. package/dist/cjs/PageLoader.js +0 -42
  271. package/dist/cjs/PageLoader.js.map +0 -1
  272. package/dist/cjs/PhoneNumber.js +0 -80
  273. package/dist/cjs/PhoneNumber.js.map +0 -1
  274. package/dist/cjs/ProductEmbed.js +0 -886
  275. package/dist/cjs/ProductEmbed.js.map +0 -1
  276. package/dist/cjs/PublishBlock.js +0 -449
  277. package/dist/cjs/PublishBlock.js.map +0 -1
  278. package/dist/cjs/PublishYourItem.js +0 -60
  279. package/dist/cjs/PublishYourItem.js.map +0 -1
  280. package/dist/cjs/Rename.js +0 -368
  281. package/dist/cjs/Rename.js.map +0 -1
  282. package/dist/cjs/ResponsiveDevicePicker.js +0 -65
  283. package/dist/cjs/ResponsiveDevicePicker.js.map +0 -1
  284. package/dist/cjs/Schedule.js +0 -947
  285. package/dist/cjs/Schedule.js.map +0 -1
  286. package/dist/cjs/Scrollable.js +0 -44
  287. package/dist/cjs/Scrollable.js.map +0 -1
  288. package/dist/cjs/Search.js +0 -112
  289. package/dist/cjs/Search.js.map +0 -1
  290. package/dist/cjs/SendToFields.js +0 -2223
  291. package/dist/cjs/SendToFields.js.map +0 -1
  292. package/dist/cjs/SessionEnvironment.js +0 -433
  293. package/dist/cjs/SessionEnvironment.js.map +0 -1
  294. package/dist/cjs/Settings.js +0 -252
  295. package/dist/cjs/Settings.js.map +0 -1
  296. package/dist/cjs/ShareRecordingPane.js +0 -218
  297. package/dist/cjs/ShareRecordingPane.js.map +0 -1
  298. package/dist/cjs/ShareViaEmail.js +0 -437
  299. package/dist/cjs/ShareViaEmail.js.map +0 -1
  300. package/dist/cjs/ShareViaLink.js +0 -1577
  301. package/dist/cjs/ShareViaLink.js.map +0 -1
  302. package/dist/cjs/Sidebar.js +0 -315
  303. package/dist/cjs/Sidebar.js.map +0 -1
  304. package/dist/cjs/StatusDropdown.js +0 -111
  305. package/dist/cjs/StatusDropdown.js.map +0 -1
  306. package/dist/cjs/StickyRibbonsContainer.js +0 -133
  307. package/dist/cjs/StickyRibbonsContainer.js.map +0 -1
  308. package/dist/cjs/SubHeader.js +0 -211
  309. package/dist/cjs/SubHeader.js.map +0 -1
  310. package/dist/cjs/SubscriptionNotificationsContainer.js +0 -79
  311. package/dist/cjs/SubscriptionNotificationsContainer.js.map +0 -1
  312. package/dist/cjs/SuffixedInput.js +0 -113
  313. package/dist/cjs/SuffixedInput.js.map +0 -1
  314. package/dist/cjs/TableWrapper.js +0 -29
  315. package/dist/cjs/TableWrapper.js.map +0 -1
  316. package/dist/cjs/Taxonomy.js +0 -517
  317. package/dist/cjs/Taxonomy.js.map +0 -1
  318. package/dist/cjs/TimeFormat.js +0 -16
  319. package/dist/cjs/TimeFormat.js.map +0 -1
  320. package/dist/cjs/TimezoneMismatchModal.js +0 -140
  321. package/dist/cjs/TimezoneMismatchModal.js.map +0 -1
  322. package/dist/cjs/ToggleFeatureCard.js +0 -213
  323. package/dist/cjs/ToggleFeatureCard.js.map +0 -1
  324. package/dist/cjs/_commonjsHelpers-BJu3ubxk.js +0 -11
  325. package/dist/cjs/_commonjsHelpers-BJu3ubxk.js.map +0 -1
  326. package/dist/cjs/index-JY2zVpnv.js +0 -1189
  327. package/dist/cjs/index-JY2zVpnv.js.map +0 -1
  328. package/dist/cjs/inject-css-vQvjPR2x.js +0 -6
  329. package/dist/cjs/inject-css-vQvjPR2x.js.map +0 -1
  330. package/dist/cjs/phone-number-BN-c0rfv.js +0 -320
  331. package/dist/cjs/phone-number-BN-c0rfv.js.map +0 -1
  332. package/dist/cjs/platform-BUcCb8Jx.js +0 -1254
  333. package/dist/cjs/platform-BUcCb8Jx.js.map +0 -1
  334. package/dist/cjs/useColumns-BP8c4PV-.js +0 -282
  335. package/dist/cjs/useColumns-BP8c4PV-.js.map +0 -1
  336. package/dist/index-DAYCJu79.js +0 -1187
  337. package/dist/index-DAYCJu79.js.map +0 -1
  338. package/dist/inject-css-DmrvuTKK.js +0 -4
  339. package/dist/inject-css-DmrvuTKK.js.map +0 -1
  340. package/dist/phone-number-CXCBroLh.js +0 -295
  341. package/dist/phone-number-CXCBroLh.js.map +0 -1
  342. package/dist/platform-F44zJ4Xh.js +0 -1252
  343. package/dist/platform-F44zJ4Xh.js.map +0 -1
  344. package/dist/styles/page-loader.css +0 -1
  345. package/dist/styles/page-loader.js +0 -3
  346. package/dist/useColumns-Db5uic1-.js +0 -274
  347. package/dist/useColumns-Db5uic1-.js.map +0 -1
  348. package/types/AuditLogs.d.ts +0 -22
  349. package/types/BoardView.d.ts +0 -149
  350. package/types/Breadcrumbs.d.ts +0 -30
  351. package/types/BrowserPreview.d.ts +0 -30
  352. package/types/BrowserSupport.d.ts +0 -110
  353. package/types/Builder.d.ts +0 -99
  354. package/types/ButtonGroup.d.ts +0 -45
  355. package/types/CalendarView.d.ts +0 -98
  356. package/types/CardLayout.d.ts +0 -34
  357. package/types/Codeblock.d.ts +0 -37
  358. package/types/Columns.d.ts +0 -168
  359. package/types/ConfigurePageSidebar.d.ts +0 -45
  360. package/types/ConfirmationModal.d.ts +0 -65
  361. package/types/Container.d.ts +0 -38
  362. package/types/CopyToClipboardButton.d.ts +0 -28
  363. package/types/Currency.d.ts +0 -50
  364. package/types/DateFormat.d.ts +0 -15
  365. package/types/DateRangeFilter.d.ts +0 -56
  366. package/types/DeleteArchiveModal.d.ts +0 -65
  367. package/types/DeviceIncompatibilityMessage.d.ts +0 -19
  368. package/types/DocumentEditor.d.ts +0 -61
  369. package/types/DownloadMobileAppCallout.d.ts +0 -35
  370. package/types/DynamicVariables.d.ts +0 -48
  371. package/types/EmailForm.d.ts +0 -165
  372. package/types/EmailFormProvider.d.ts +0 -48
  373. package/types/EmailPreview.d.ts +0 -43
  374. package/types/EmojiPicker.d.ts +0 -35
  375. package/types/EmojiReactions.d.ts +0 -62
  376. package/types/Engagements.d.ts +0 -131
  377. package/types/ErrorPage.d.ts +0 -22
  378. package/types/FileUpload.d.ts +0 -89
  379. package/types/FinderModal.d.ts +0 -66
  380. package/types/FloatingActionMenu.d.ts +0 -59
  381. package/types/GoogleFontPicker.d.ts +0 -68
  382. package/types/Header.d.ts +0 -37
  383. package/types/HelpPopover.d.ts +0 -45
  384. package/types/IconPicker.d.ts +0 -45
  385. package/types/ImageWithFallback.d.ts +0 -24
  386. package/types/InlineInput.d.ts +0 -87
  387. package/types/Insights.d.ts +0 -112
  388. package/types/IntegrationCard.d.ts +0 -60
  389. package/types/IpRestriction.d.ts +0 -25
  390. package/types/KeyboardShortcuts.d.ts +0 -149
  391. package/types/LoginPage.d.ts +0 -45
  392. package/types/MadeWith.d.ts +0 -18
  393. package/types/MenuBar.d.ts +0 -127
  394. package/types/Metadata.d.ts +0 -109
  395. package/types/MobilePreviewHeader.d.ts +0 -19
  396. package/types/MoreDropdown.d.ts +0 -52
  397. package/types/NavigationHeader.d.ts +0 -180
  398. package/types/NeetoWidget.d.ts +0 -43
  399. package/types/Onboarding.d.ts +0 -70
  400. package/types/OptionFields.d.ts +0 -70
  401. package/types/PageLoader.d.ts +0 -40
  402. package/types/PhoneNumber.d.ts +0 -112
  403. package/types/ProductEmbed.d.ts +0 -93
  404. package/types/PublishBlock.d.ts +0 -148
  405. package/types/Rename.d.ts +0 -73
  406. package/types/ResponsiveDevicePicker.d.ts +0 -32
  407. package/types/Schedule.d.ts +0 -146
  408. package/types/Scrollable.d.ts +0 -30
  409. package/types/Search.d.ts +0 -22
  410. package/types/SendToFields.d.ts +0 -67
  411. package/types/SessionEnvironment.d.ts +0 -170
  412. package/types/Settings.d.ts +0 -108
  413. package/types/ShareRecordingPane.d.ts +0 -85
  414. package/types/ShareViaEmail.d.ts +0 -99
  415. package/types/ShareViaLink.d.ts +0 -183
  416. package/types/Sidebar.d.ts +0 -51
  417. package/types/StatusDropdown.d.ts +0 -74
  418. package/types/StickyRibbonsContainer.d.ts +0 -28
  419. package/types/SubHeader.d.ts +0 -105
  420. package/types/SubscriptionNotificationsContainer.d.ts +0 -26
  421. package/types/SuffixedInput.d.ts +0 -45
  422. package/types/TableWrapper.d.ts +0 -40
  423. package/types/Taxonomy.d.ts +0 -59
  424. package/types/TimeFormat.d.ts +0 -13
  425. package/types/TimezoneMismatchModal.d.ts +0 -41
  426. package/types/ToggleFeatureCard.d.ts +0 -38
@@ -1,1577 +0,0 @@
1
- 'use strict';
2
-
3
- var neetoCist = require('@bigbinary/neeto-cist');
4
- var ramda = require('ramda');
5
- var classnames = require('classnames');
6
- var Typography = require('@bigbinary/neetoui/Typography');
7
- var reactI18next = require('react-i18next');
8
- var jsxRuntime = require('react/jsx-runtime');
9
- var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
10
- var React = require('react');
11
- var ExternalLink = require('@bigbinary/neeto-icons/ExternalLink');
12
- var Button = require('@bigbinary/neetoui/Button');
13
- var CopyToClipboardButton = require('./CopyToClipboardButton.js');
14
- var MoreDropdown = require('./MoreDropdown.js');
15
- var formik = require('formik');
16
- var Pane = require('@bigbinary/neetoui/Pane');
17
- var Input = require('@bigbinary/neetoui/formik/Input');
18
- var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
19
- var i18next = require('i18next');
20
- var Facebook = require('@bigbinary/neeto-icons/Facebook');
21
- var Linkedin = require('@bigbinary/neeto-icons/Linkedin');
22
- var Twitter = require('@bigbinary/neeto-icons/Twitter');
23
- var yup = require('yup');
24
- var general = require('@bigbinary/neeto-commons-frontend/utils/general');
25
- var injectCss = require('./inject-css-vQvjPR2x.js');
26
- var utils = require('@bigbinary/neeto-commons-frontend/utils');
27
- var Help = require('@bigbinary/neeto-icons/Help');
28
- var Modal = require('@bigbinary/neetoui/Modal');
29
- var Input$1 = require('@bigbinary/neetoui/Input');
30
- var Select = require('@bigbinary/neetoui/Select');
31
- var DatePicker = require('@bigbinary/neetoui/DatePicker');
32
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
33
- var reactRouterDom = require('react-router-dom');
34
- require('@babel/runtime/helpers/objectWithoutProperties');
35
- require('@bigbinary/neeto-icons/Copy');
36
- require('@bigbinary/neeto-icons/Check');
37
- require('@bigbinary/neeto-icons/MenuHorizontal');
38
- require('@bigbinary/neeto-icons/MenuVertical');
39
- require('@bigbinary/neetoui/Dropdown');
40
- require('@bigbinary/neetoui/Tooltip');
41
-
42
- function _interopNamespaceDefault(e) {
43
- var n = Object.create(null);
44
- if (e) {
45
- Object.keys(e).forEach(function (k) {
46
- if (k !== 'default') {
47
- var d = Object.getOwnPropertyDescriptor(e, k);
48
- Object.defineProperty(n, k, d.get ? d : {
49
- enumerable: true,
50
- get: function () { return e[k]; }
51
- });
52
- }
53
- });
54
- }
55
- n.default = e;
56
- return Object.freeze(n);
57
- }
58
-
59
- var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
60
-
61
- var ExpiryNotice = function ExpiryNotice(_ref) {
62
- var expiryConfiguration = _ref.expiryConfiguration;
63
- var _useTranslation = reactI18next.useTranslation(),
64
- t = _useTranslation.t;
65
- var daysBeforeExpiry = expiryConfiguration.daysBeforeExpiry;
66
- var notice = t("neetoMolecules.shareViaLink.expiryNotice.daysRemaining", {
67
- count: daysBeforeExpiry
68
- });
69
- if (daysBeforeExpiry < 1) {
70
- notice = t("neetoMolecules.shareViaLink.expiryNotice.expiresToday");
71
- }
72
- if (daysBeforeExpiry <= 0) {
73
- notice = t("neetoMolecules.shareViaLink.expiryNotice.expired");
74
- }
75
- return /*#__PURE__*/jsxRuntime.jsx(Typography, {
76
- "data-testid": "expiry-notice",
77
- lineHeight: "normal",
78
- style: "body3",
79
- className: classnames("ml-1", {
80
- "neeto-ui-text-error-800": daysBeforeExpiry <= 1,
81
- "neeto-ui-text-gray-700": daysBeforeExpiry > 1
82
- }),
83
- children: notice
84
- });
85
- };
86
-
87
- var facebookShareLink = function facebookShareLink(_ref) {
88
- var url = _ref.url;
89
- return general.buildUrl("https://www.facebook.com/sharer/sharer.php", {
90
- u: url
91
- });
92
- };
93
- var linkedInShareLink = function linkedInShareLink(_ref2) {
94
- var url = _ref2.url,
95
- title = _ref2.title;
96
- return general.buildUrl("https://www.linkedin.com/sharing/share-offsite", {
97
- mini: true,
98
- text: "".concat(title, " ").concat(url)
99
- });
100
- };
101
- var twitterShareLink = function twitterShareLink(_ref3) {
102
- var url = _ref3.url,
103
- title = _ref3.title;
104
- return general.buildUrl("http://twitter.com/share", {
105
- text: title,
106
- url: url
107
- });
108
- };
109
- var downloadCanvas = function downloadCanvas(canvas) {
110
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
111
- var _options$name = options.name,
112
- name = _options$name === void 0 ? "image" : _options$name,
113
- _options$extension = options.extension,
114
- extension = _options$extension === void 0 ? "png" : _options$extension;
115
- var canvasUrl = canvas.toDataURL("image/".concat(extension));
116
- var element = document.createElement("a");
117
- element.href = canvasUrl;
118
- element.download = "".concat(name, ".").concat(extension);
119
- element.click();
120
- element.remove();
121
- };
122
- var getPathname = function getPathname(url) {
123
- return new URL(url).pathname.slice(1);
124
- };
125
- var getPrefixFromUrl = function getPrefixFromUrl(url) {
126
- return "".concat(new URL(url).origin, "/");
127
- };
128
- var truncatePrefix = function truncatePrefix(inputElement, prefixText) {
129
- var parentElement = inputElement.parentElement;
130
- var prefixElement = parentElement.querySelector(".neeto-ui-input__prefix");
131
- var _getComputedStyle = getComputedStyle(inputElement),
132
- fontSize = _getComputedStyle.fontSize;
133
- var averageCharWidth = parseFloat(fontSize) * 0.6;
134
- var requiredInputWidth = inputElement.value.length * averageCharWidth;
135
- var prefixWidth = parentElement.offsetWidth - requiredInputWidth;
136
- var maxPrefixChars = Math.max(Math.floor(prefixWidth / averageCharWidth), 5);
137
- prefixElement.textContent = maxPrefixChars < prefixText.length ? "...".concat(prefixText.slice(-maxPrefixChars)) : prefixText;
138
- };
139
-
140
- var SOCIAL_MEDIA_OPTIONS = {
141
- FACEBOOK: {
142
- label: i18next.t("neetoMolecules.shareViaLink.socialMediaShare.facebook"),
143
- icon: Facebook,
144
- generateShareUrl: facebookShareLink
145
- },
146
- LINKEDIN: {
147
- label: i18next.t("neetoMolecules.shareViaLink.socialMediaShare.linkedIn"),
148
- icon: Linkedin,
149
- generateShareUrl: linkedInShareLink
150
- },
151
- TWITTER: {
152
- label: i18next.t("neetoMolecules.shareViaLink.socialMediaShare.twitter"),
153
- icon: Twitter,
154
- generateShareUrl: twitterShareLink
155
- }
156
- };
157
- var PATH_VALIDATION_SCHEMA = yup__namespace.object().shape({
158
- path: yup__namespace.string().required(i18next.t("neetoMolecules.shareViaLink.editUrl.validationError")).matches(/^[A-Za-z0-9]([\w/-])*$/, i18next.t("neetoMolecules.shareViaLink.editUrl.validationError"))
159
- });
160
-
161
- var css = ".no-padding .neeto-ui-input.neeto-ui-input--medium input{padding:0}.no-padding .neeto-ui-input__prefix{color:rgb(var(--neeto-ui-gray-600))!important}";
162
- injectCss.n(css,{});
163
-
164
- var Header = Pane.Header,
165
- Body = Pane.Body,
166
- Footer = Pane.Footer;
167
- var EditURL = function EditURL(_ref) {
168
- var editUrlProps = _ref.editUrlProps,
169
- isOpen = _ref.isOpen,
170
- onClose = _ref.onClose,
171
- url = _ref.url,
172
- isLoading = _ref.isLoading,
173
- handleEdit = _ref.handleEdit;
174
- var _useTranslation = reactI18next.useTranslation(),
175
- t = _useTranslation.t;
176
- var focusRef = React.useRef(null);
177
- var prevIsLoadingRef = React.useRef(isLoading);
178
- var prefixText = (editUrlProps === null || editUrlProps === void 0 ? void 0 : editUrlProps.prefix) || getPrefixFromUrl(url);
179
- var observerRef = React.useRef(new ResizeObserver(function (_ref2) {
180
- var _ref3 = _slicedToArray(_ref2, 1),
181
- entry = _ref3[0];
182
- return requestAnimationFrame(function () {
183
- return truncatePrefix(entry.target, prefixText);
184
- });
185
- }));
186
- var inputRef = React.useCallback(function (inputElement) {
187
- focusRef.current = inputElement;
188
- inputElement ? observerRef.current.observe(inputElement) : observerRef.current.disconnect();
189
- }, []);
190
- React.useEffect(function () {
191
- if (prevIsLoadingRef.current && !isLoading) onClose();
192
- prevIsLoadingRef.current = isLoading;
193
- }, [isLoading]);
194
- return /*#__PURE__*/jsxRuntime.jsxs(Pane, {
195
- isOpen: isOpen,
196
- onClose: onClose,
197
- "data-testid": "edit-url-modal",
198
- initialFocusRef: focusRef,
199
- size: "large",
200
- children: [/*#__PURE__*/jsxRuntime.jsx(Header, {
201
- children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
202
- lineHeight: "normal",
203
- style: "h2",
204
- weight: "semibold",
205
- children: t("neetoMolecules.shareViaLink.editUrl.title")
206
- })
207
- }), /*#__PURE__*/jsxRuntime.jsx(formik.Formik, {
208
- enableReinitialize: true,
209
- initialValues: {
210
- path: (editUrlProps === null || editUrlProps === void 0 ? void 0 : editUrlProps.editablePath) || getPathname(url)
211
- },
212
- validationSchema: PATH_VALIDATION_SCHEMA,
213
- onSubmit: function onSubmit(_ref4) {
214
- var path = _ref4.path;
215
- return handleEdit(path);
216
- },
217
- children: function children(_ref5) {
218
- var isSubmitting = _ref5.isSubmitting,
219
- dirty = _ref5.dirty;
220
- return /*#__PURE__*/jsxRuntime.jsxs(formik.Form, {
221
- children: [/*#__PURE__*/jsxRuntime.jsxs(Body, {
222
- className: "space-y-6",
223
- children: [/*#__PURE__*/jsxRuntime.jsx(Input, {
224
- className: "no-padding w-full flex-grow-0",
225
- "data-testid": "edit-url-input",
226
- label: t("neetoMolecules.shareViaLink.editUrl.inputLabel"),
227
- maxLength: editUrlProps === null || editUrlProps === void 0 ? void 0 : editUrlProps.maxLength,
228
- name: "path",
229
- prefix: prefixText,
230
- ref: inputRef
231
- }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
232
- className: "neeto-ui-text-gray-700",
233
- lineHeight: "normal",
234
- style: "body2",
235
- children: t("neetoMolecules.shareViaLink.editUrl.description")
236
- })]
237
- }), /*#__PURE__*/jsxRuntime.jsx(Footer, {
238
- className: "space-x-2",
239
- children: /*#__PURE__*/jsxRuntime.jsx(ActionBlock, {
240
- className: "flex items-center space-x-2",
241
- cancelButtonProps: {
242
- onClick: onClose,
243
- disabled: isSubmitting,
244
- "data-testid": "edit-url-cancel-button"
245
- },
246
- submitButtonProps: {
247
- disabled: isSubmitting || !dirty,
248
- loading: isLoading,
249
- "data-testid": "edit-url-confirm-button"
250
- }
251
- })
252
- })]
253
- });
254
- }
255
- })]
256
- });
257
- };
258
-
259
- var RegenerateURL = function RegenerateURL(_ref) {
260
- var _regenerateConfig$exp, _regenerateConfig$exp2, _globalProps$user$dat, _globalProps;
261
- var isOpen = _ref.isOpen,
262
- onClose = _ref.onClose,
263
- url = _ref.url,
264
- isLoading = _ref.isLoading,
265
- handleRegenerate = _ref.handleRegenerate,
266
- _ref$regenerateConfig = _ref.regenerateConfig,
267
- regenerateConfig = _ref$regenerateConfig === void 0 ? {
268
- expiresInOptions: [],
269
- helpUrl: null
270
- } : _ref$regenerateConfig;
271
- var _useTranslation = reactI18next.useTranslation(),
272
- t = _useTranslation.t;
273
- var prevIsLoadingRef = React.useRef(isLoading);
274
- var regenerateStrategy = neetoCist.isPresent(regenerateConfig === null || regenerateConfig === void 0 ? void 0 : regenerateConfig.expiresInOptions) ? "expiryBased" : "basic";
275
- var defaultExpiresInOption = regenerateConfig === null || regenerateConfig === void 0 || (_regenerateConfig$exp = regenerateConfig.expiresInOptions) === null || _regenerateConfig$exp === void 0 || (_regenerateConfig$exp = _regenerateConfig$exp[0]) === null || _regenerateConfig$exp === void 0 ? void 0 : _regenerateConfig$exp.value;
276
- var _useState = React.useState(defaultExpiresInOption),
277
- _useState2 = _slicedToArray(_useState, 2),
278
- selectedExpiresInOption = _useState2[0],
279
- setSelectedExpiresInOption = _useState2[1];
280
- var defaultExpiresOnDate = utils.dayjs().add(10, "day").toDate();
281
- var _useState3 = React.useState(defaultExpiresOnDate),
282
- _useState4 = _slicedToArray(_useState3, 2),
283
- selectedExpiresOnDate = _useState4[0],
284
- setSelectedExpiresOnDate = _useState4[1];
285
- var isSelectedExpiresInOptionNever = selectedExpiresInOption === "never";
286
- var isSelectedExpiresInOptionCustom = selectedExpiresInOption === "custom";
287
- var isSelectedExpiresInOptionValidNumberOfDays = neetoCist.isPresent(selectedExpiresInOption) && !isSelectedExpiresInOptionCustom && !isSelectedExpiresInOptionNever;
288
- var isValidExpiryConfig = isSelectedExpiresInOptionNever || isSelectedExpiresInOptionCustom && neetoCist.isPresent(selectedExpiresOnDate) || isSelectedExpiresInOptionValidNumberOfDays;
289
- var expiryConfigPayload = isSelectedExpiresInOptionValidNumberOfDays ? {
290
- expiresInDays: selectedExpiresInOption
291
- } : {
292
- expiresOnDate: selectedExpiresOnDate
293
- };
294
- var onSubmit = function onSubmit() {
295
- return regenerateStrategy === "basic" || isSelectedExpiresInOptionNever ? handleRegenerate() : handleRegenerate({
296
- payload: expiryConfigPayload
297
- });
298
- };
299
- React.useEffect(function () {
300
- if (prevIsLoadingRef.current && !isLoading) onClose();
301
- prevIsLoadingRef.current = isLoading;
302
- }, [isLoading]);
303
- React.useEffect(function () {
304
- if (!isOpen) return;
305
- setSelectedExpiresInOption(defaultExpiresInOption);
306
- setSelectedExpiresOnDate(defaultExpiresOnDate);
307
- }, [isOpen]);
308
- return /*#__PURE__*/jsxRuntime.jsxs(Modal, {
309
- isOpen: isOpen,
310
- onClose: onClose,
311
- "data-testid": "regenerate-url-modal",
312
- size: regenerateStrategy === "basic" ? "medium" : "large",
313
- children: [/*#__PURE__*/jsxRuntime.jsx(Modal.Header, {
314
- children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
315
- lineHeight: "normal",
316
- style: "h2",
317
- weight: "semibold",
318
- children: regenerateStrategy === "expiryBased" ? t("neetoMolecules.shareViaLink.regenerateUrl.titleForExpiryBasedRegeneration") : t("neetoMolecules.shareViaLink.regenerateUrl.title")
319
- })
320
- }), /*#__PURE__*/jsxRuntime.jsx(Modal.Body, {
321
- children: /*#__PURE__*/jsxRuntime.jsxs("div", {
322
- className: "w-full space-y-6",
323
- children: [regenerateStrategy === "basic" && /*#__PURE__*/jsxRuntime.jsx(Input$1, {
324
- disabled: true,
325
- label: t("neetoMolecules.shareViaLink.regenerateUrl.inputLabel"),
326
- value: url
327
- }), regenerateStrategy === "expiryBased" && /*#__PURE__*/jsxRuntime.jsxs("div", {
328
- className: "flex flex-row gap-2",
329
- children: [/*#__PURE__*/jsxRuntime.jsx(Select, {
330
- "data-testid": "expires-in-select",
331
- defaultValue: (_regenerateConfig$exp2 = regenerateConfig.expiresInOptions) === null || _regenerateConfig$exp2 === void 0 ? void 0 : _regenerateConfig$exp2[0],
332
- options: regenerateConfig.expiresInOptions,
333
- className: classnames({
334
- "w-1/2": isSelectedExpiresInOptionCustom,
335
- "w-full": !isSelectedExpiresInOptionCustom
336
- }),
337
- label: t("neetoMolecules.shareViaLink.regenerateUrl.expiresInLabel"),
338
- labelProps: {
339
- helpIconProps: neetoCist.isPresent(regenerateConfig === null || regenerateConfig === void 0 ? void 0 : regenerateConfig.helpUrl) && {
340
- icon: Help,
341
- className: "cursor-pointer opacity-75 hover:opacity-100 transition-opacity duration-300 ease-in-out",
342
- popoverProps: {
343
- title: t("neetoMolecules.shareViaLink.regenerateUrl.expiresInHelpTitle"),
344
- helpLinkProps: {
345
- label: t("neetoMolecules.shareViaLink.regenerateUrl.helpLinkLabel"),
346
- href: regenerateConfig === null || regenerateConfig === void 0 ? void 0 : regenerateConfig.helpUrl,
347
- target: "_blank"
348
- }
349
- }
350
- }
351
- },
352
- onChange: function onChange(option) {
353
- return setSelectedExpiresInOption(option.value);
354
- }
355
- }), isSelectedExpiresInOptionCustom && /*#__PURE__*/jsxRuntime.jsx(DatePicker, {
356
- "data-testid": "expires-on-date-picker",
357
- dateFormat: (_globalProps$user$dat = (_globalProps = globalProps) === null || _globalProps === void 0 || (_globalProps = _globalProps.user) === null || _globalProps === void 0 ? void 0 : _globalProps.dateFormat) !== null && _globalProps$user$dat !== void 0 ? _globalProps$user$dat : undefined,
358
- disabledDate: function disabledDate(d) {
359
- return !d || d.isBefore(utils.dayjs());
360
- },
361
- picker: "date",
362
- type: "date",
363
- value: selectedExpiresOnDate,
364
- label: t("neetoMolecules.shareViaLink.regenerateUrl.expiresOnLabel"),
365
- onChange: setSelectedExpiresOnDate
366
- })]
367
- }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
368
- className: "neeto-ui-text-gray-700",
369
- lineHeight: "normal",
370
- style: "body2",
371
- children: t("neetoMolecules.shareViaLink.regenerateUrl.description")
372
- })]
373
- })
374
- }), /*#__PURE__*/jsxRuntime.jsxs(Modal.Footer, {
375
- className: "space-x-2",
376
- children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
377
- "data-cy": "regenerate-url-confirm-button",
378
- "data-testid": "regenerate-url-confirm-button",
379
- loading: isLoading,
380
- disabled: regenerateStrategy === "expiryBased" && !isValidExpiryConfig,
381
- label: t("neetoMolecules.shareViaLink.regenerateUrl.submitButtonLabel"),
382
- onClick: onSubmit
383
- }), /*#__PURE__*/jsxRuntime.jsx(Button, {
384
- "data-cy": "regenerate-url-cancel-button",
385
- "data-testid": "regenerate-url-cancel-button",
386
- style: "text",
387
- label: t("neetoMolecules.shareViaLink.regenerateUrl.cancelButtonLabel"),
388
- onClick: onClose
389
- })]
390
- })]
391
- });
392
- };
393
-
394
- var Link = function Link(_ref) {
395
- var editUrlProps = _ref.editUrlProps,
396
- enabledOptions = _ref.enabledOptions,
397
- entityName = _ref.entityName,
398
- handleEdit = _ref.handleEdit,
399
- handleRegenerate = _ref.handleRegenerate,
400
- isLoading = _ref.isLoading,
401
- previewUrl = _ref.previewUrl,
402
- url = _ref.url;
403
- var _useState = React.useState(false),
404
- _useState2 = _slicedToArray(_useState, 2),
405
- isRegenerateURLModalOpen = _useState2[0],
406
- setIsRegenerateURLModalOpen = _useState2[1];
407
- var _useState3 = React.useState(false),
408
- _useState4 = _slicedToArray(_useState3, 2),
409
- isEditURLModalOpen = _useState4[0],
410
- setIsEditURLModalOpen = _useState4[1];
411
- var _useTranslation = reactI18next.useTranslation(),
412
- t = _useTranslation.t;
413
- var isDropdownEnabled = enabledOptions.regenerate || enabledOptions.edit;
414
- return /*#__PURE__*/jsxRuntime.jsx("div", {
415
- className: "space-y-4",
416
- "data-cy": "link-block",
417
- "data-testid": "link-block",
418
- children: /*#__PURE__*/jsxRuntime.jsxs("div", {
419
- className: "flex flex-col gap-2 sm:flex-row sm:items-center sm:gap-1",
420
- children: [/*#__PURE__*/jsxRuntime.jsx("div", {
421
- className: "neeto-ui-rounded-md neeto-ui-border-gray-200 relative min-w-0 flex-grow truncate border p-2 leading-none",
422
- "data-cy": "nui-input-field",
423
- children: url
424
- }), /*#__PURE__*/jsxRuntime.jsxs("div", {
425
- className: "flex w-full flex-shrink-0 items-center gap-1 sm:w-auto",
426
- children: [/*#__PURE__*/jsxRuntime.jsx(CopyToClipboardButton, {
427
- "data-cy": "link-copy-button",
428
- "data-testid": "link-copy-button",
429
- label: t("neetoMolecules.shareViaLink.copyLink"),
430
- value: url
431
- }), /*#__PURE__*/jsxRuntime.jsx(Button, {
432
- "data-cy": "preview-button",
433
- "data-testid": "preview-button",
434
- href: previewUrl || url,
435
- icon: ExternalLink,
436
- style: "secondary",
437
- target: "_blank",
438
- tooltipProps: {
439
- content: t("neetoMolecules.shareViaLink.view", {
440
- entity: entityName
441
- }),
442
- position: "top",
443
- touch: ["hold", 500]
444
- }
445
- }), isDropdownEnabled && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
446
- children: [/*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
447
- menuItems: [{
448
- isVisible: enabledOptions.regenerate || neetoCist.isPresent(enabledOptions.regenerate),
449
- "data-testid": "regenerate-url-button",
450
- "data-cy": "regenerate-url-button",
451
- onClick: function onClick() {
452
- return setIsRegenerateURLModalOpen(true);
453
- },
454
- label: t("neetoMolecules.shareViaLink.regenerateUrl.title"),
455
- key: "regenerate-url-option"
456
- }, {
457
- isVisible: enabledOptions.edit,
458
- "data-testid": "edit-url-button",
459
- "data-cy": "edit-url-button",
460
- onClick: function onClick() {
461
- return setIsEditURLModalOpen(true);
462
- },
463
- label: t("neetoMolecules.shareViaLink.editUrl.title"),
464
- key: "edit-url-option"
465
- }]
466
- }), /*#__PURE__*/jsxRuntime.jsx(RegenerateURL, {
467
- handleRegenerate: handleRegenerate,
468
- isLoading: isLoading,
469
- url: url,
470
- isOpen: isRegenerateURLModalOpen,
471
- regenerateConfig: enabledOptions.regenerate,
472
- onClose: function onClose() {
473
- return setIsRegenerateURLModalOpen(false);
474
- }
475
- }), /*#__PURE__*/jsxRuntime.jsx(EditURL, {
476
- editUrlProps: editUrlProps,
477
- handleEdit: handleEdit,
478
- isLoading: isLoading,
479
- url: url,
480
- isOpen: isEditURLModalOpen,
481
- onClose: function onClose() {
482
- return setIsEditURLModalOpen(false);
483
- }
484
- })]
485
- })]
486
- })]
487
- })
488
- });
489
- };
490
-
491
- var __defProp = Object.defineProperty;
492
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
493
- var __hasOwnProp = Object.prototype.hasOwnProperty;
494
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
495
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
496
- var __spreadValues = (a, b) => {
497
- for (var prop in b || (b = {}))
498
- if (__hasOwnProp.call(b, prop))
499
- __defNormalProp(a, prop, b[prop]);
500
- if (__getOwnPropSymbols)
501
- for (var prop of __getOwnPropSymbols(b)) {
502
- if (__propIsEnum.call(b, prop))
503
- __defNormalProp(a, prop, b[prop]);
504
- }
505
- return a;
506
- };
507
- var __objRest = (source, exclude) => {
508
- var target = {};
509
- for (var prop in source)
510
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
511
- target[prop] = source[prop];
512
- if (source != null && __getOwnPropSymbols)
513
- for (var prop of __getOwnPropSymbols(source)) {
514
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
515
- target[prop] = source[prop];
516
- }
517
- return target;
518
- };
519
-
520
- // src/third-party/qrcodegen/index.ts
521
- /**
522
- * @license QR Code generator library (TypeScript)
523
- * Copyright (c) Project Nayuki.
524
- * SPDX-License-Identifier: MIT
525
- */
526
- var qrcodegen;
527
- ((qrcodegen2) => {
528
- const _QrCode = class {
529
- constructor(version, errorCorrectionLevel, dataCodewords, msk) {
530
- this.version = version;
531
- this.errorCorrectionLevel = errorCorrectionLevel;
532
- this.modules = [];
533
- this.isFunction = [];
534
- if (version < _QrCode.MIN_VERSION || version > _QrCode.MAX_VERSION)
535
- throw new RangeError("Version value out of range");
536
- if (msk < -1 || msk > 7)
537
- throw new RangeError("Mask value out of range");
538
- this.size = version * 4 + 17;
539
- let row = [];
540
- for (let i = 0; i < this.size; i++)
541
- row.push(false);
542
- for (let i = 0; i < this.size; i++) {
543
- this.modules.push(row.slice());
544
- this.isFunction.push(row.slice());
545
- }
546
- this.drawFunctionPatterns();
547
- const allCodewords = this.addEccAndInterleave(dataCodewords);
548
- this.drawCodewords(allCodewords);
549
- if (msk == -1) {
550
- let minPenalty = 1e9;
551
- for (let i = 0; i < 8; i++) {
552
- this.applyMask(i);
553
- this.drawFormatBits(i);
554
- const penalty = this.getPenaltyScore();
555
- if (penalty < minPenalty) {
556
- msk = i;
557
- minPenalty = penalty;
558
- }
559
- this.applyMask(i);
560
- }
561
- }
562
- assert(0 <= msk && msk <= 7);
563
- this.mask = msk;
564
- this.applyMask(msk);
565
- this.drawFormatBits(msk);
566
- this.isFunction = [];
567
- }
568
- static encodeText(text, ecl) {
569
- const segs = qrcodegen2.QrSegment.makeSegments(text);
570
- return _QrCode.encodeSegments(segs, ecl);
571
- }
572
- static encodeBinary(data, ecl) {
573
- const seg = qrcodegen2.QrSegment.makeBytes(data);
574
- return _QrCode.encodeSegments([seg], ecl);
575
- }
576
- static encodeSegments(segs, ecl, minVersion = 1, maxVersion = 40, mask = -1, boostEcl = true) {
577
- if (!(_QrCode.MIN_VERSION <= minVersion && minVersion <= maxVersion && maxVersion <= _QrCode.MAX_VERSION) || mask < -1 || mask > 7)
578
- throw new RangeError("Invalid value");
579
- let version;
580
- let dataUsedBits;
581
- for (version = minVersion; ; version++) {
582
- const dataCapacityBits2 = _QrCode.getNumDataCodewords(version, ecl) * 8;
583
- const usedBits = QrSegment.getTotalBits(segs, version);
584
- if (usedBits <= dataCapacityBits2) {
585
- dataUsedBits = usedBits;
586
- break;
587
- }
588
- if (version >= maxVersion)
589
- throw new RangeError("Data too long");
590
- }
591
- for (const newEcl of [_QrCode.Ecc.MEDIUM, _QrCode.Ecc.QUARTILE, _QrCode.Ecc.HIGH]) {
592
- if (boostEcl && dataUsedBits <= _QrCode.getNumDataCodewords(version, newEcl) * 8)
593
- ecl = newEcl;
594
- }
595
- let bb = [];
596
- for (const seg of segs) {
597
- appendBits(seg.mode.modeBits, 4, bb);
598
- appendBits(seg.numChars, seg.mode.numCharCountBits(version), bb);
599
- for (const b of seg.getData())
600
- bb.push(b);
601
- }
602
- assert(bb.length == dataUsedBits);
603
- const dataCapacityBits = _QrCode.getNumDataCodewords(version, ecl) * 8;
604
- assert(bb.length <= dataCapacityBits);
605
- appendBits(0, Math.min(4, dataCapacityBits - bb.length), bb);
606
- appendBits(0, (8 - bb.length % 8) % 8, bb);
607
- assert(bb.length % 8 == 0);
608
- for (let padByte = 236; bb.length < dataCapacityBits; padByte ^= 236 ^ 17)
609
- appendBits(padByte, 8, bb);
610
- let dataCodewords = [];
611
- while (dataCodewords.length * 8 < bb.length)
612
- dataCodewords.push(0);
613
- bb.forEach((b, i) => dataCodewords[i >>> 3] |= b << 7 - (i & 7));
614
- return new _QrCode(version, ecl, dataCodewords, mask);
615
- }
616
- getModule(x, y) {
617
- return 0 <= x && x < this.size && 0 <= y && y < this.size && this.modules[y][x];
618
- }
619
- getModules() {
620
- return this.modules;
621
- }
622
- drawFunctionPatterns() {
623
- for (let i = 0; i < this.size; i++) {
624
- this.setFunctionModule(6, i, i % 2 == 0);
625
- this.setFunctionModule(i, 6, i % 2 == 0);
626
- }
627
- this.drawFinderPattern(3, 3);
628
- this.drawFinderPattern(this.size - 4, 3);
629
- this.drawFinderPattern(3, this.size - 4);
630
- const alignPatPos = this.getAlignmentPatternPositions();
631
- const numAlign = alignPatPos.length;
632
- for (let i = 0; i < numAlign; i++) {
633
- for (let j = 0; j < numAlign; j++) {
634
- if (!(i == 0 && j == 0 || i == 0 && j == numAlign - 1 || i == numAlign - 1 && j == 0))
635
- this.drawAlignmentPattern(alignPatPos[i], alignPatPos[j]);
636
- }
637
- }
638
- this.drawFormatBits(0);
639
- this.drawVersion();
640
- }
641
- drawFormatBits(mask) {
642
- const data = this.errorCorrectionLevel.formatBits << 3 | mask;
643
- let rem = data;
644
- for (let i = 0; i < 10; i++)
645
- rem = rem << 1 ^ (rem >>> 9) * 1335;
646
- const bits = (data << 10 | rem) ^ 21522;
647
- assert(bits >>> 15 == 0);
648
- for (let i = 0; i <= 5; i++)
649
- this.setFunctionModule(8, i, getBit(bits, i));
650
- this.setFunctionModule(8, 7, getBit(bits, 6));
651
- this.setFunctionModule(8, 8, getBit(bits, 7));
652
- this.setFunctionModule(7, 8, getBit(bits, 8));
653
- for (let i = 9; i < 15; i++)
654
- this.setFunctionModule(14 - i, 8, getBit(bits, i));
655
- for (let i = 0; i < 8; i++)
656
- this.setFunctionModule(this.size - 1 - i, 8, getBit(bits, i));
657
- for (let i = 8; i < 15; i++)
658
- this.setFunctionModule(8, this.size - 15 + i, getBit(bits, i));
659
- this.setFunctionModule(8, this.size - 8, true);
660
- }
661
- drawVersion() {
662
- if (this.version < 7)
663
- return;
664
- let rem = this.version;
665
- for (let i = 0; i < 12; i++)
666
- rem = rem << 1 ^ (rem >>> 11) * 7973;
667
- const bits = this.version << 12 | rem;
668
- assert(bits >>> 18 == 0);
669
- for (let i = 0; i < 18; i++) {
670
- const color = getBit(bits, i);
671
- const a = this.size - 11 + i % 3;
672
- const b = Math.floor(i / 3);
673
- this.setFunctionModule(a, b, color);
674
- this.setFunctionModule(b, a, color);
675
- }
676
- }
677
- drawFinderPattern(x, y) {
678
- for (let dy = -4; dy <= 4; dy++) {
679
- for (let dx = -4; dx <= 4; dx++) {
680
- const dist = Math.max(Math.abs(dx), Math.abs(dy));
681
- const xx = x + dx;
682
- const yy = y + dy;
683
- if (0 <= xx && xx < this.size && 0 <= yy && yy < this.size)
684
- this.setFunctionModule(xx, yy, dist != 2 && dist != 4);
685
- }
686
- }
687
- }
688
- drawAlignmentPattern(x, y) {
689
- for (let dy = -2; dy <= 2; dy++) {
690
- for (let dx = -2; dx <= 2; dx++)
691
- this.setFunctionModule(x + dx, y + dy, Math.max(Math.abs(dx), Math.abs(dy)) != 1);
692
- }
693
- }
694
- setFunctionModule(x, y, isDark) {
695
- this.modules[y][x] = isDark;
696
- this.isFunction[y][x] = true;
697
- }
698
- addEccAndInterleave(data) {
699
- const ver = this.version;
700
- const ecl = this.errorCorrectionLevel;
701
- if (data.length != _QrCode.getNumDataCodewords(ver, ecl))
702
- throw new RangeError("Invalid argument");
703
- const numBlocks = _QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver];
704
- const blockEccLen = _QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver];
705
- const rawCodewords = Math.floor(_QrCode.getNumRawDataModules(ver) / 8);
706
- const numShortBlocks = numBlocks - rawCodewords % numBlocks;
707
- const shortBlockLen = Math.floor(rawCodewords / numBlocks);
708
- let blocks = [];
709
- const rsDiv = _QrCode.reedSolomonComputeDivisor(blockEccLen);
710
- for (let i = 0, k = 0; i < numBlocks; i++) {
711
- let dat = data.slice(k, k + shortBlockLen - blockEccLen + (i < numShortBlocks ? 0 : 1));
712
- k += dat.length;
713
- const ecc = _QrCode.reedSolomonComputeRemainder(dat, rsDiv);
714
- if (i < numShortBlocks)
715
- dat.push(0);
716
- blocks.push(dat.concat(ecc));
717
- }
718
- let result = [];
719
- for (let i = 0; i < blocks[0].length; i++) {
720
- blocks.forEach((block, j) => {
721
- if (i != shortBlockLen - blockEccLen || j >= numShortBlocks)
722
- result.push(block[i]);
723
- });
724
- }
725
- assert(result.length == rawCodewords);
726
- return result;
727
- }
728
- drawCodewords(data) {
729
- if (data.length != Math.floor(_QrCode.getNumRawDataModules(this.version) / 8))
730
- throw new RangeError("Invalid argument");
731
- let i = 0;
732
- for (let right = this.size - 1; right >= 1; right -= 2) {
733
- if (right == 6)
734
- right = 5;
735
- for (let vert = 0; vert < this.size; vert++) {
736
- for (let j = 0; j < 2; j++) {
737
- const x = right - j;
738
- const upward = (right + 1 & 2) == 0;
739
- const y = upward ? this.size - 1 - vert : vert;
740
- if (!this.isFunction[y][x] && i < data.length * 8) {
741
- this.modules[y][x] = getBit(data[i >>> 3], 7 - (i & 7));
742
- i++;
743
- }
744
- }
745
- }
746
- }
747
- assert(i == data.length * 8);
748
- }
749
- applyMask(mask) {
750
- if (mask < 0 || mask > 7)
751
- throw new RangeError("Mask value out of range");
752
- for (let y = 0; y < this.size; y++) {
753
- for (let x = 0; x < this.size; x++) {
754
- let invert;
755
- switch (mask) {
756
- case 0:
757
- invert = (x + y) % 2 == 0;
758
- break;
759
- case 1:
760
- invert = y % 2 == 0;
761
- break;
762
- case 2:
763
- invert = x % 3 == 0;
764
- break;
765
- case 3:
766
- invert = (x + y) % 3 == 0;
767
- break;
768
- case 4:
769
- invert = (Math.floor(x / 3) + Math.floor(y / 2)) % 2 == 0;
770
- break;
771
- case 5:
772
- invert = x * y % 2 + x * y % 3 == 0;
773
- break;
774
- case 6:
775
- invert = (x * y % 2 + x * y % 3) % 2 == 0;
776
- break;
777
- case 7:
778
- invert = ((x + y) % 2 + x * y % 3) % 2 == 0;
779
- break;
780
- default:
781
- throw new Error("Unreachable");
782
- }
783
- if (!this.isFunction[y][x] && invert)
784
- this.modules[y][x] = !this.modules[y][x];
785
- }
786
- }
787
- }
788
- getPenaltyScore() {
789
- let result = 0;
790
- for (let y = 0; y < this.size; y++) {
791
- let runColor = false;
792
- let runX = 0;
793
- let runHistory = [0, 0, 0, 0, 0, 0, 0];
794
- for (let x = 0; x < this.size; x++) {
795
- if (this.modules[y][x] == runColor) {
796
- runX++;
797
- if (runX == 5)
798
- result += _QrCode.PENALTY_N1;
799
- else if (runX > 5)
800
- result++;
801
- } else {
802
- this.finderPenaltyAddHistory(runX, runHistory);
803
- if (!runColor)
804
- result += this.finderPenaltyCountPatterns(runHistory) * _QrCode.PENALTY_N3;
805
- runColor = this.modules[y][x];
806
- runX = 1;
807
- }
808
- }
809
- result += this.finderPenaltyTerminateAndCount(runColor, runX, runHistory) * _QrCode.PENALTY_N3;
810
- }
811
- for (let x = 0; x < this.size; x++) {
812
- let runColor = false;
813
- let runY = 0;
814
- let runHistory = [0, 0, 0, 0, 0, 0, 0];
815
- for (let y = 0; y < this.size; y++) {
816
- if (this.modules[y][x] == runColor) {
817
- runY++;
818
- if (runY == 5)
819
- result += _QrCode.PENALTY_N1;
820
- else if (runY > 5)
821
- result++;
822
- } else {
823
- this.finderPenaltyAddHistory(runY, runHistory);
824
- if (!runColor)
825
- result += this.finderPenaltyCountPatterns(runHistory) * _QrCode.PENALTY_N3;
826
- runColor = this.modules[y][x];
827
- runY = 1;
828
- }
829
- }
830
- result += this.finderPenaltyTerminateAndCount(runColor, runY, runHistory) * _QrCode.PENALTY_N3;
831
- }
832
- for (let y = 0; y < this.size - 1; y++) {
833
- for (let x = 0; x < this.size - 1; x++) {
834
- const color = this.modules[y][x];
835
- if (color == this.modules[y][x + 1] && color == this.modules[y + 1][x] && color == this.modules[y + 1][x + 1])
836
- result += _QrCode.PENALTY_N2;
837
- }
838
- }
839
- let dark = 0;
840
- for (const row of this.modules)
841
- dark = row.reduce((sum, color) => sum + (color ? 1 : 0), dark);
842
- const total = this.size * this.size;
843
- const k = Math.ceil(Math.abs(dark * 20 - total * 10) / total) - 1;
844
- assert(0 <= k && k <= 9);
845
- result += k * _QrCode.PENALTY_N4;
846
- assert(0 <= result && result <= 2568888);
847
- return result;
848
- }
849
- getAlignmentPatternPositions() {
850
- if (this.version == 1)
851
- return [];
852
- else {
853
- const numAlign = Math.floor(this.version / 7) + 2;
854
- const step = this.version == 32 ? 26 : Math.ceil((this.version * 4 + 4) / (numAlign * 2 - 2)) * 2;
855
- let result = [6];
856
- for (let pos = this.size - 7; result.length < numAlign; pos -= step)
857
- result.splice(1, 0, pos);
858
- return result;
859
- }
860
- }
861
- static getNumRawDataModules(ver) {
862
- if (ver < _QrCode.MIN_VERSION || ver > _QrCode.MAX_VERSION)
863
- throw new RangeError("Version number out of range");
864
- let result = (16 * ver + 128) * ver + 64;
865
- if (ver >= 2) {
866
- const numAlign = Math.floor(ver / 7) + 2;
867
- result -= (25 * numAlign - 10) * numAlign - 55;
868
- if (ver >= 7)
869
- result -= 36;
870
- }
871
- assert(208 <= result && result <= 29648);
872
- return result;
873
- }
874
- static getNumDataCodewords(ver, ecl) {
875
- return Math.floor(_QrCode.getNumRawDataModules(ver) / 8) - _QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver] * _QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver];
876
- }
877
- static reedSolomonComputeDivisor(degree) {
878
- if (degree < 1 || degree > 255)
879
- throw new RangeError("Degree out of range");
880
- let result = [];
881
- for (let i = 0; i < degree - 1; i++)
882
- result.push(0);
883
- result.push(1);
884
- let root = 1;
885
- for (let i = 0; i < degree; i++) {
886
- for (let j = 0; j < result.length; j++) {
887
- result[j] = _QrCode.reedSolomonMultiply(result[j], root);
888
- if (j + 1 < result.length)
889
- result[j] ^= result[j + 1];
890
- }
891
- root = _QrCode.reedSolomonMultiply(root, 2);
892
- }
893
- return result;
894
- }
895
- static reedSolomonComputeRemainder(data, divisor) {
896
- let result = divisor.map((_) => 0);
897
- for (const b of data) {
898
- const factor = b ^ result.shift();
899
- result.push(0);
900
- divisor.forEach((coef, i) => result[i] ^= _QrCode.reedSolomonMultiply(coef, factor));
901
- }
902
- return result;
903
- }
904
- static reedSolomonMultiply(x, y) {
905
- if (x >>> 8 != 0 || y >>> 8 != 0)
906
- throw new RangeError("Byte out of range");
907
- let z = 0;
908
- for (let i = 7; i >= 0; i--) {
909
- z = z << 1 ^ (z >>> 7) * 285;
910
- z ^= (y >>> i & 1) * x;
911
- }
912
- assert(z >>> 8 == 0);
913
- return z;
914
- }
915
- finderPenaltyCountPatterns(runHistory) {
916
- const n = runHistory[1];
917
- assert(n <= this.size * 3);
918
- const core = n > 0 && runHistory[2] == n && runHistory[3] == n * 3 && runHistory[4] == n && runHistory[5] == n;
919
- return (core && runHistory[0] >= n * 4 && runHistory[6] >= n ? 1 : 0) + (core && runHistory[6] >= n * 4 && runHistory[0] >= n ? 1 : 0);
920
- }
921
- finderPenaltyTerminateAndCount(currentRunColor, currentRunLength, runHistory) {
922
- if (currentRunColor) {
923
- this.finderPenaltyAddHistory(currentRunLength, runHistory);
924
- currentRunLength = 0;
925
- }
926
- currentRunLength += this.size;
927
- this.finderPenaltyAddHistory(currentRunLength, runHistory);
928
- return this.finderPenaltyCountPatterns(runHistory);
929
- }
930
- finderPenaltyAddHistory(currentRunLength, runHistory) {
931
- if (runHistory[0] == 0)
932
- currentRunLength += this.size;
933
- runHistory.pop();
934
- runHistory.unshift(currentRunLength);
935
- }
936
- };
937
- let QrCode = _QrCode;
938
- QrCode.MIN_VERSION = 1;
939
- QrCode.MAX_VERSION = 40;
940
- QrCode.PENALTY_N1 = 3;
941
- QrCode.PENALTY_N2 = 3;
942
- QrCode.PENALTY_N3 = 40;
943
- QrCode.PENALTY_N4 = 10;
944
- QrCode.ECC_CODEWORDS_PER_BLOCK = [
945
- [-1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],
946
- [-1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28],
947
- [-1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],
948
- [-1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30]
949
- ];
950
- QrCode.NUM_ERROR_CORRECTION_BLOCKS = [
951
- [-1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 24, 25],
952
- [-1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, 38, 40, 43, 45, 47, 49],
953
- [-1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, 53, 56, 59, 62, 65, 68],
954
- [-1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, 60, 63, 66, 70, 74, 77, 81]
955
- ];
956
- qrcodegen2.QrCode = QrCode;
957
- function appendBits(val, len, bb) {
958
- if (len < 0 || len > 31 || val >>> len != 0)
959
- throw new RangeError("Value out of range");
960
- for (let i = len - 1; i >= 0; i--)
961
- bb.push(val >>> i & 1);
962
- }
963
- function getBit(x, i) {
964
- return (x >>> i & 1) != 0;
965
- }
966
- function assert(cond) {
967
- if (!cond)
968
- throw new Error("Assertion error");
969
- }
970
- const _QrSegment = class {
971
- constructor(mode, numChars, bitData) {
972
- this.mode = mode;
973
- this.numChars = numChars;
974
- this.bitData = bitData;
975
- if (numChars < 0)
976
- throw new RangeError("Invalid argument");
977
- this.bitData = bitData.slice();
978
- }
979
- static makeBytes(data) {
980
- let bb = [];
981
- for (const b of data)
982
- appendBits(b, 8, bb);
983
- return new _QrSegment(_QrSegment.Mode.BYTE, data.length, bb);
984
- }
985
- static makeNumeric(digits) {
986
- if (!_QrSegment.isNumeric(digits))
987
- throw new RangeError("String contains non-numeric characters");
988
- let bb = [];
989
- for (let i = 0; i < digits.length; ) {
990
- const n = Math.min(digits.length - i, 3);
991
- appendBits(parseInt(digits.substr(i, n), 10), n * 3 + 1, bb);
992
- i += n;
993
- }
994
- return new _QrSegment(_QrSegment.Mode.NUMERIC, digits.length, bb);
995
- }
996
- static makeAlphanumeric(text) {
997
- if (!_QrSegment.isAlphanumeric(text))
998
- throw new RangeError("String contains unencodable characters in alphanumeric mode");
999
- let bb = [];
1000
- let i;
1001
- for (i = 0; i + 2 <= text.length; i += 2) {
1002
- let temp = _QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)) * 45;
1003
- temp += _QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i + 1));
1004
- appendBits(temp, 11, bb);
1005
- }
1006
- if (i < text.length)
1007
- appendBits(_QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)), 6, bb);
1008
- return new _QrSegment(_QrSegment.Mode.ALPHANUMERIC, text.length, bb);
1009
- }
1010
- static makeSegments(text) {
1011
- if (text == "")
1012
- return [];
1013
- else if (_QrSegment.isNumeric(text))
1014
- return [_QrSegment.makeNumeric(text)];
1015
- else if (_QrSegment.isAlphanumeric(text))
1016
- return [_QrSegment.makeAlphanumeric(text)];
1017
- else
1018
- return [_QrSegment.makeBytes(_QrSegment.toUtf8ByteArray(text))];
1019
- }
1020
- static makeEci(assignVal) {
1021
- let bb = [];
1022
- if (assignVal < 0)
1023
- throw new RangeError("ECI assignment value out of range");
1024
- else if (assignVal < 1 << 7)
1025
- appendBits(assignVal, 8, bb);
1026
- else if (assignVal < 1 << 14) {
1027
- appendBits(2, 2, bb);
1028
- appendBits(assignVal, 14, bb);
1029
- } else if (assignVal < 1e6) {
1030
- appendBits(6, 3, bb);
1031
- appendBits(assignVal, 21, bb);
1032
- } else
1033
- throw new RangeError("ECI assignment value out of range");
1034
- return new _QrSegment(_QrSegment.Mode.ECI, 0, bb);
1035
- }
1036
- static isNumeric(text) {
1037
- return _QrSegment.NUMERIC_REGEX.test(text);
1038
- }
1039
- static isAlphanumeric(text) {
1040
- return _QrSegment.ALPHANUMERIC_REGEX.test(text);
1041
- }
1042
- getData() {
1043
- return this.bitData.slice();
1044
- }
1045
- static getTotalBits(segs, version) {
1046
- let result = 0;
1047
- for (const seg of segs) {
1048
- const ccbits = seg.mode.numCharCountBits(version);
1049
- if (seg.numChars >= 1 << ccbits)
1050
- return Infinity;
1051
- result += 4 + ccbits + seg.bitData.length;
1052
- }
1053
- return result;
1054
- }
1055
- static toUtf8ByteArray(str) {
1056
- str = encodeURI(str);
1057
- let result = [];
1058
- for (let i = 0; i < str.length; i++) {
1059
- if (str.charAt(i) != "%")
1060
- result.push(str.charCodeAt(i));
1061
- else {
1062
- result.push(parseInt(str.substr(i + 1, 2), 16));
1063
- i += 2;
1064
- }
1065
- }
1066
- return result;
1067
- }
1068
- };
1069
- let QrSegment = _QrSegment;
1070
- QrSegment.NUMERIC_REGEX = /^[0-9]*$/;
1071
- QrSegment.ALPHANUMERIC_REGEX = /^[A-Z0-9 $%*+.\/:-]*$/;
1072
- QrSegment.ALPHANUMERIC_CHARSET = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:";
1073
- qrcodegen2.QrSegment = QrSegment;
1074
- })(qrcodegen || (qrcodegen = {}));
1075
- ((qrcodegen2) => {
1076
- ((QrCode2) => {
1077
- const _Ecc = class {
1078
- constructor(ordinal, formatBits) {
1079
- this.ordinal = ordinal;
1080
- this.formatBits = formatBits;
1081
- }
1082
- };
1083
- let Ecc = _Ecc;
1084
- Ecc.LOW = new _Ecc(0, 1);
1085
- Ecc.MEDIUM = new _Ecc(1, 0);
1086
- Ecc.QUARTILE = new _Ecc(2, 3);
1087
- Ecc.HIGH = new _Ecc(3, 2);
1088
- QrCode2.Ecc = Ecc;
1089
- })(qrcodegen2.QrCode || (qrcodegen2.QrCode = {}));
1090
- })(qrcodegen || (qrcodegen = {}));
1091
- ((qrcodegen2) => {
1092
- ((QrSegment2) => {
1093
- const _Mode = class {
1094
- constructor(modeBits, numBitsCharCount) {
1095
- this.modeBits = modeBits;
1096
- this.numBitsCharCount = numBitsCharCount;
1097
- }
1098
- numCharCountBits(ver) {
1099
- return this.numBitsCharCount[Math.floor((ver + 7) / 17)];
1100
- }
1101
- };
1102
- let Mode = _Mode;
1103
- Mode.NUMERIC = new _Mode(1, [10, 12, 14]);
1104
- Mode.ALPHANUMERIC = new _Mode(2, [9, 11, 13]);
1105
- Mode.BYTE = new _Mode(4, [8, 16, 16]);
1106
- Mode.KANJI = new _Mode(8, [8, 10, 12]);
1107
- Mode.ECI = new _Mode(7, [0, 0, 0]);
1108
- QrSegment2.Mode = Mode;
1109
- })(qrcodegen2.QrSegment || (qrcodegen2.QrSegment = {}));
1110
- })(qrcodegen || (qrcodegen = {}));
1111
- var qrcodegen_default = qrcodegen;
1112
-
1113
- // src/index.tsx
1114
- /**
1115
- * @license qrcode.react
1116
- * Copyright (c) Paul O'Shannessy
1117
- * SPDX-License-Identifier: ISC
1118
- */
1119
- var ERROR_LEVEL_MAP = {
1120
- L: qrcodegen_default.QrCode.Ecc.LOW,
1121
- M: qrcodegen_default.QrCode.Ecc.MEDIUM,
1122
- Q: qrcodegen_default.QrCode.Ecc.QUARTILE,
1123
- H: qrcodegen_default.QrCode.Ecc.HIGH
1124
- };
1125
- var DEFAULT_SIZE = 128;
1126
- var DEFAULT_LEVEL = "L";
1127
- var DEFAULT_BGCOLOR = "#FFFFFF";
1128
- var DEFAULT_FGCOLOR = "#000000";
1129
- var DEFAULT_INCLUDEMARGIN = false;
1130
- var MARGIN_SIZE = 4;
1131
- var DEFAULT_IMG_SCALE = 0.1;
1132
- function generatePath(modules, margin = 0) {
1133
- const ops = [];
1134
- modules.forEach(function(row, y) {
1135
- let start = null;
1136
- row.forEach(function(cell, x) {
1137
- if (!cell && start !== null) {
1138
- ops.push(`M${start + margin} ${y + margin}h${x - start}v1H${start + margin}z`);
1139
- start = null;
1140
- return;
1141
- }
1142
- if (x === row.length - 1) {
1143
- if (!cell) {
1144
- return;
1145
- }
1146
- if (start === null) {
1147
- ops.push(`M${x + margin},${y + margin} h1v1H${x + margin}z`);
1148
- } else {
1149
- ops.push(`M${start + margin},${y + margin} h${x + 1 - start}v1H${start + margin}z`);
1150
- }
1151
- return;
1152
- }
1153
- if (cell && start === null) {
1154
- start = x;
1155
- }
1156
- });
1157
- });
1158
- return ops.join("");
1159
- }
1160
- function excavateModules(modules, excavation) {
1161
- return modules.slice().map((row, y) => {
1162
- if (y < excavation.y || y >= excavation.y + excavation.h) {
1163
- return row;
1164
- }
1165
- return row.map((cell, x) => {
1166
- if (x < excavation.x || x >= excavation.x + excavation.w) {
1167
- return cell;
1168
- }
1169
- return false;
1170
- });
1171
- });
1172
- }
1173
- function getImageSettings(cells, size, includeMargin, imageSettings) {
1174
- if (imageSettings == null) {
1175
- return null;
1176
- }
1177
- const margin = includeMargin ? MARGIN_SIZE : 0;
1178
- const numCells = cells.length + margin * 2;
1179
- const defaultSize = Math.floor(size * DEFAULT_IMG_SCALE);
1180
- const scale = numCells / size;
1181
- const w = (imageSettings.width || defaultSize) * scale;
1182
- const h = (imageSettings.height || defaultSize) * scale;
1183
- const x = imageSettings.x == null ? cells.length / 2 - w / 2 : imageSettings.x * scale;
1184
- const y = imageSettings.y == null ? cells.length / 2 - h / 2 : imageSettings.y * scale;
1185
- let excavation = null;
1186
- if (imageSettings.excavate) {
1187
- let floorX = Math.floor(x);
1188
- let floorY = Math.floor(y);
1189
- let ceilW = Math.ceil(w + x - floorX);
1190
- let ceilH = Math.ceil(h + y - floorY);
1191
- excavation = { x: floorX, y: floorY, w: ceilW, h: ceilH };
1192
- }
1193
- return { x, y, h, w, excavation };
1194
- }
1195
- var SUPPORTS_PATH2D = function() {
1196
- try {
1197
- new Path2D().addPath(new Path2D());
1198
- } catch (e) {
1199
- return false;
1200
- }
1201
- return true;
1202
- }();
1203
- function QRCodeCanvas(props) {
1204
- const _a = props, {
1205
- value,
1206
- size = DEFAULT_SIZE,
1207
- level = DEFAULT_LEVEL,
1208
- bgColor = DEFAULT_BGCOLOR,
1209
- fgColor = DEFAULT_FGCOLOR,
1210
- includeMargin = DEFAULT_INCLUDEMARGIN,
1211
- style,
1212
- imageSettings
1213
- } = _a, otherProps = __objRest(_a, [
1214
- "value",
1215
- "size",
1216
- "level",
1217
- "bgColor",
1218
- "fgColor",
1219
- "includeMargin",
1220
- "style",
1221
- "imageSettings"
1222
- ]);
1223
- const imgSrc = imageSettings == null ? void 0 : imageSettings.src;
1224
- const _canvas = React.useRef(null);
1225
- const _image = React.useRef(null);
1226
- const [isImgLoaded, setIsImageLoaded] = React.useState(false);
1227
- React.useEffect(() => {
1228
- if (_canvas.current != null) {
1229
- const canvas = _canvas.current;
1230
- const ctx = canvas.getContext("2d");
1231
- if (!ctx) {
1232
- return;
1233
- }
1234
- let cells = qrcodegen_default.QrCode.encodeText(value, ERROR_LEVEL_MAP[level]).getModules();
1235
- const margin = includeMargin ? MARGIN_SIZE : 0;
1236
- const numCells = cells.length + margin * 2;
1237
- const calculatedImageSettings = getImageSettings(cells, size, includeMargin, imageSettings);
1238
- const image = _image.current;
1239
- const haveImageToRender = calculatedImageSettings != null && image !== null && image.complete && image.naturalHeight !== 0 && image.naturalWidth !== 0;
1240
- if (haveImageToRender) {
1241
- if (calculatedImageSettings.excavation != null) {
1242
- cells = excavateModules(cells, calculatedImageSettings.excavation);
1243
- }
1244
- }
1245
- const pixelRatio = window.devicePixelRatio || 1;
1246
- canvas.height = canvas.width = size * pixelRatio;
1247
- const scale = size / numCells * pixelRatio;
1248
- ctx.scale(scale, scale);
1249
- ctx.fillStyle = bgColor;
1250
- ctx.fillRect(0, 0, numCells, numCells);
1251
- ctx.fillStyle = fgColor;
1252
- if (SUPPORTS_PATH2D) {
1253
- ctx.fill(new Path2D(generatePath(cells, margin)));
1254
- } else {
1255
- cells.forEach(function(row, rdx) {
1256
- row.forEach(function(cell, cdx) {
1257
- if (cell) {
1258
- ctx.fillRect(cdx + margin, rdx + margin, 1, 1);
1259
- }
1260
- });
1261
- });
1262
- }
1263
- if (haveImageToRender) {
1264
- ctx.drawImage(image, calculatedImageSettings.x + margin, calculatedImageSettings.y + margin, calculatedImageSettings.w, calculatedImageSettings.h);
1265
- }
1266
- }
1267
- });
1268
- React.useEffect(() => {
1269
- setIsImageLoaded(false);
1270
- }, [imgSrc]);
1271
- const canvasStyle = __spreadValues({ height: size, width: size }, style);
1272
- let img = null;
1273
- if (imgSrc != null) {
1274
- img = /* @__PURE__ */ React.createElement("img", {
1275
- src: imgSrc,
1276
- key: imgSrc,
1277
- style: { display: "none" },
1278
- onLoad: () => {
1279
- setIsImageLoaded(true);
1280
- },
1281
- ref: _image
1282
- });
1283
- }
1284
- return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("canvas", __spreadValues({
1285
- style: canvasStyle,
1286
- height: size,
1287
- width: size,
1288
- ref: _canvas
1289
- }, otherProps)), img);
1290
- }
1291
- function QRCodeSVG(props) {
1292
- const _a = props, {
1293
- value,
1294
- size = DEFAULT_SIZE,
1295
- level = DEFAULT_LEVEL,
1296
- bgColor = DEFAULT_BGCOLOR,
1297
- fgColor = DEFAULT_FGCOLOR,
1298
- includeMargin = DEFAULT_INCLUDEMARGIN,
1299
- imageSettings
1300
- } = _a, otherProps = __objRest(_a, [
1301
- "value",
1302
- "size",
1303
- "level",
1304
- "bgColor",
1305
- "fgColor",
1306
- "includeMargin",
1307
- "imageSettings"
1308
- ]);
1309
- let cells = qrcodegen_default.QrCode.encodeText(value, ERROR_LEVEL_MAP[level]).getModules();
1310
- const margin = includeMargin ? MARGIN_SIZE : 0;
1311
- const numCells = cells.length + margin * 2;
1312
- const calculatedImageSettings = getImageSettings(cells, size, includeMargin, imageSettings);
1313
- let image = null;
1314
- if (imageSettings != null && calculatedImageSettings != null) {
1315
- if (calculatedImageSettings.excavation != null) {
1316
- cells = excavateModules(cells, calculatedImageSettings.excavation);
1317
- }
1318
- image = /* @__PURE__ */ React.createElement("image", {
1319
- xlinkHref: imageSettings.src,
1320
- height: calculatedImageSettings.h,
1321
- width: calculatedImageSettings.w,
1322
- x: calculatedImageSettings.x + margin,
1323
- y: calculatedImageSettings.y + margin,
1324
- preserveAspectRatio: "none"
1325
- });
1326
- }
1327
- const fgPath = generatePath(cells, margin);
1328
- return /* @__PURE__ */ React.createElement("svg", __spreadValues({
1329
- height: size,
1330
- width: size,
1331
- viewBox: `0 0 ${numCells} ${numCells}`
1332
- }, otherProps), /* @__PURE__ */ React.createElement("path", {
1333
- fill: bgColor,
1334
- d: `M0,0 h${numCells}v${numCells}H0z`,
1335
- shapeRendering: "crispEdges"
1336
- }), /* @__PURE__ */ React.createElement("path", {
1337
- fill: fgColor,
1338
- d: fgPath,
1339
- shapeRendering: "crispEdges"
1340
- }), image);
1341
- }
1342
- var QRCode$1 = (props) => {
1343
- const _a = props, { renderAs } = _a, otherProps = __objRest(_a, ["renderAs"]);
1344
- if (renderAs === "svg") {
1345
- return /* @__PURE__ */ React.createElement(QRCodeSVG, __spreadValues({}, otherProps));
1346
- }
1347
- return /* @__PURE__ */ React.createElement(QRCodeCanvas, __spreadValues({}, otherProps));
1348
- };
1349
-
1350
- var QRCode = function QRCode(_ref) {
1351
- var entity = _ref.entity,
1352
- url = _ref.url;
1353
- if (!entity) return null;
1354
- var id = entity.id,
1355
- name = entity.name;
1356
- var canvasId = "qrcode-share-".concat(id);
1357
- var handleDownload = function handleDownload() {
1358
- var canvas = document.getElementById(canvasId);
1359
- if (canvas) downloadCanvas(canvas, {
1360
- name: neetoCist.slugify(name)
1361
- });
1362
- };
1363
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
1364
- className: "neeto-ui-border-gray-200 flex flex-col justify-start space-y-2 border-t py-3 pl-8 sm:space-y-4 sm:border-l sm:py-2 sm:pl-6",
1365
- "data-cy": "qr-download-block",
1366
- "data-testid": "qr-download-block",
1367
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
1368
- lineHeight: "normal",
1369
- style: "body2",
1370
- weight: "medium",
1371
- children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
1372
- i18nKey: "neetoMolecules.shareViaLink.socialMediaShare.qrCodeInfo",
1373
- components: {
1374
- button: /*#__PURE__*/jsxRuntime.jsx(Button, {
1375
- "data-cy": "qr-code-download-button",
1376
- "data-testid": "qr-code-download-button",
1377
- style: "link",
1378
- onClick: handleDownload
1379
- })
1380
- }
1381
- })
1382
- }), /*#__PURE__*/jsxRuntime.jsx(QRCode$1, {
1383
- className: "cursor-pointer",
1384
- "data-cy": "qr-code-image",
1385
- "data-testid": canvasId,
1386
- id: canvasId,
1387
- size: 256,
1388
- style: {
1389
- width: 80,
1390
- height: 80
1391
- },
1392
- value: url,
1393
- onClick: handleDownload
1394
- })]
1395
- });
1396
- };
1397
-
1398
- var Subtitle = function Subtitle(_ref) {
1399
- var link = _ref.link,
1400
- dataCy = _ref.dataCy,
1401
- _onClick = _ref.onClick,
1402
- subtitle = _ref.subtitle;
1403
- var Component = neetoCist.isPresent(link) ? reactRouterDom.Link : "div";
1404
- return /*#__PURE__*/jsxRuntime.jsx(Component, {
1405
- "data-cy": dataCy,
1406
- to: link,
1407
- onClick: function onClick(event) {
1408
- event.preventDefault();
1409
- _onClick === null || _onClick === void 0 || _onClick(event);
1410
- },
1411
- children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
1412
- style: "body3",
1413
- weight: "medium",
1414
- className: classnames("break-words", {
1415
- "neeto-ui-text-accent-800": neetoCist.isPresent(_onClick) || neetoCist.isPresent(link)
1416
- }),
1417
- children: subtitle
1418
- })
1419
- });
1420
- };
1421
-
1422
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1423
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1424
- var ShareBlock = function ShareBlock(_ref) {
1425
- var entity = _ref.entity,
1426
- postTitle = _ref.postTitle,
1427
- url = _ref.url,
1428
- moreOptions = _ref.moreOptions,
1429
- disableShareSocialMedia = _ref.disableShareSocialMedia,
1430
- disableQRDownload = _ref.disableQRDownload;
1431
- var _useTranslation = reactI18next.useTranslation(),
1432
- t = _useTranslation.t;
1433
- var socialMediaButtonClasses = "neeto-ui-bg-gray-200 hover:neeto-ui-bg-gray-300 flex h-10 w-10 cursor-pointer items-center justify-center neeto-ui-rounded-md transition-colors duration-300 ease-in-out";
1434
- var hasMoreOptions = neetoCist.isPresent(moreOptions);
1435
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
1436
- className: "flex flex-col divide-y sm:flex-row sm:gap-6 sm:divide-x sm:divide-y-0",
1437
- children: [hasMoreOptions && /*#__PURE__*/jsxRuntime.jsx("div", {
1438
- className: "max-w-md divide-y",
1439
- children: moreOptions.map(function (_ref2, index) {
1440
- var title = _ref2.title,
1441
- link = _ref2.link,
1442
- Icon = _ref2.icon,
1443
- onClick = _ref2.onClick,
1444
- dataCy = _ref2.dataCy,
1445
- subtitleProps = _ref2.subtitleProps;
1446
- var Component = neetoCist.isPresent(link) ? reactRouterDom.Link : "div";
1447
- return /*#__PURE__*/React.createElement(Component, {
1448
- onClick: onClick,
1449
- "data-cy": dataCy,
1450
- key: link,
1451
- to: link,
1452
- className: classnames("neeto-ui-border-gray-200 flex cursor-pointer items-center gap-x-2 border-t py-3", {
1453
- "border-none": index === 0
1454
- })
1455
- }, /*#__PURE__*/jsxRuntime.jsxs("div", {
1456
- className: "flex flex-row gap-2",
1457
- children: [/*#__PURE__*/jsxRuntime.jsx(Icon, {
1458
- className: "neeto-ui-text-gray-500 flex-shrink-0",
1459
- size: 24
1460
- }), /*#__PURE__*/jsxRuntime.jsxs("div", {
1461
- className: "flex flex-col gap-1",
1462
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
1463
- className: "group-hover:underline",
1464
- style: "body2",
1465
- weight: "medium",
1466
- children: title
1467
- }), subtitleProps && /*#__PURE__*/jsxRuntime.jsx(Subtitle, _objectSpread({}, subtitleProps))]
1468
- })]
1469
- }));
1470
- })
1471
- }), !disableShareSocialMedia && /*#__PURE__*/jsxRuntime.jsxs("div", {
1472
- "data-cy": "social-media-block",
1473
- "data-testid": "social-media-block",
1474
- className: classnames("neeto-ui-border-gray-200 space-y-2 border-t py-3 sm:space-y-4 sm:border-l sm:py-2", {
1475
- "pl-8 sm:pl-6": hasMoreOptions
1476
- }),
1477
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
1478
- className: "neeto-ui-text-gray-800",
1479
- lineHeight: "normal",
1480
- style: "body2",
1481
- weight: "medium",
1482
- children: t("neetoMolecules.shareViaLink.socialMediaShare.title")
1483
- }), /*#__PURE__*/jsxRuntime.jsx("div", {
1484
- className: "flex gap-4",
1485
- children: Object.entries(SOCIAL_MEDIA_OPTIONS).map(function (_ref3) {
1486
- var _ref4 = _slicedToArray(_ref3, 2),
1487
- key = _ref4[0],
1488
- _ref4$ = _ref4[1],
1489
- label = _ref4$.label,
1490
- Icon = _ref4$.icon,
1491
- generateShareUrl = _ref4$.generateShareUrl;
1492
- return /*#__PURE__*/jsxRuntime.jsx("a", {
1493
- className: socialMediaButtonClasses,
1494
- "data-cy": "social-media-button-".concat(key),
1495
- "data-testid": "social-media-button-".concat(key),
1496
- href: generateShareUrl({
1497
- url: url,
1498
- title: postTitle
1499
- }),
1500
- rel: "noopener noreferrer",
1501
- target: "_blank",
1502
- title: label,
1503
- children: /*#__PURE__*/jsxRuntime.jsx(Icon, {
1504
- size: 24
1505
- })
1506
- }, key);
1507
- })
1508
- })]
1509
- }), !disableQRDownload && /*#__PURE__*/jsxRuntime.jsx(QRCode, {
1510
- entity: entity,
1511
- url: url
1512
- })]
1513
- });
1514
- };
1515
-
1516
- var ShareViaLink = function ShareViaLink(_ref) {
1517
- var _ref$isLoading = _ref.isLoading,
1518
- isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
1519
- _ref$enabledOptions = _ref.enabledOptions,
1520
- enabledOptions = _ref$enabledOptions === void 0 ? {
1521
- regenerate: false,
1522
- edit: false
1523
- } : _ref$enabledOptions,
1524
- _ref$urls = _ref.urls,
1525
- urls = _ref$urls === void 0 ? [] : _ref$urls,
1526
- entity = _ref.entity,
1527
- entityName = _ref.entityName,
1528
- _ref$handleEdit = _ref.handleEdit,
1529
- handleEdit = _ref$handleEdit === void 0 ? neetoCist.noop : _ref$handleEdit,
1530
- _ref$handleRegenerate = _ref.handleRegenerate,
1531
- handleRegenerate = _ref$handleRegenerate === void 0 ? neetoCist.noop : _ref$handleRegenerate,
1532
- socialMediaPostTitle = _ref.socialMediaPostTitle,
1533
- moreOptions = _ref.moreOptions,
1534
- _ref$isOtherShareOpti = _ref.isOtherShareOptionsEnabled,
1535
- isOtherShareOptionsEnabled = _ref$isOtherShareOpti === void 0 ? true : _ref$isOtherShareOpti,
1536
- _ref$disableShareSoci = _ref.disableShareSocialMedia,
1537
- disableShareSocialMedia = _ref$disableShareSoci === void 0 ? false : _ref$disableShareSoci,
1538
- _ref$disableQRDownloa = _ref.disableQRDownload,
1539
- disableQRDownload = _ref$disableQRDownloa === void 0 ? false : _ref$disableQRDownloa,
1540
- _ref$publicLinkExpiry = _ref.publicLinkExpiryConfiguration,
1541
- publicLinkExpiryConfiguration = _ref$publicLinkExpiry === void 0 ? {} : _ref$publicLinkExpiry;
1542
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
1543
- className: "neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white col-span-2 space-y-4 border p-6 sm:p-8",
1544
- "data-testid": "share-via-link",
1545
- children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
1546
- className: "space-y-1",
1547
- children: [/*#__PURE__*/jsxRuntime.jsx("div", {
1548
- className: "space-y-4",
1549
- children: urls.map(function (urlOption) {
1550
- return /*#__PURE__*/React.createElement(Link, {
1551
- enabledOptions: enabledOptions,
1552
- entityName: entityName,
1553
- handleEdit: handleEdit,
1554
- handleRegenerate: handleRegenerate,
1555
- isLoading: isLoading,
1556
- editUrlProps: ramda.omit(["url"], urlOption),
1557
- key: urlOption.url,
1558
- previewUrl: urlOption.previewUrl,
1559
- url: urlOption.url
1560
- });
1561
- })
1562
- }), neetoCist.isPresent(publicLinkExpiryConfiguration) && /*#__PURE__*/jsxRuntime.jsx(ExpiryNotice, {
1563
- expiryConfiguration: publicLinkExpiryConfiguration
1564
- })]
1565
- }), isOtherShareOptionsEnabled && /*#__PURE__*/jsxRuntime.jsx(ShareBlock, {
1566
- disableQRDownload: disableQRDownload,
1567
- disableShareSocialMedia: disableShareSocialMedia,
1568
- entity: entity,
1569
- moreOptions: moreOptions,
1570
- postTitle: socialMediaPostTitle,
1571
- url: urls[0].url
1572
- })]
1573
- });
1574
- };
1575
-
1576
- module.exports = ShareViaLink;
1577
- //# sourceMappingURL=ShareViaLink.js.map