@ntbjs/react-components 2.0.0-rc.13 → 2.0.0-rc.26

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 (556) hide show
  1. package/build/ActionButton-03dc5f67.js +92 -0
  2. package/build/Alert-8a511bdc.js +138 -0
  3. package/build/AssetAction-d081e4b7.js +2377 -0
  4. package/build/AssetPreviewTopBar-623cfa18.js +152 -0
  5. package/build/Badge-aa4cd9c1.js +221 -0
  6. package/build/Button-2e26f5da.js +449 -0
  7. package/build/Checkbox-0b8faf49.js +220 -0
  8. package/build/CompactAutocompleteSelect-797778cb.js +555 -0
  9. package/build/CompactStarRating-da21b53f.js +436 -0
  10. package/build/CompactTextInput-d56aec71.js +541 -0
  11. package/build/ContextMenu-82f9d728.js +33 -0
  12. package/build/ContextMenuItem-3967010d.js +152 -0
  13. package/build/InfoCard-d0fdf377.js +132 -0
  14. package/build/InputGroup-8d4a4644.js +30 -0
  15. package/build/Instructions-af191987.js +274 -0
  16. package/build/MultiLevelCheckboxSelect-d229cf98.js +632 -0
  17. package/build/MultiSelect-d7920eb1.js +470 -0
  18. package/build/Popover-c4be47ea.js +241 -0
  19. package/build/ProgressBar-2d26c1fb.js +217 -0
  20. package/build/Radio-150fb2c9.js +141 -0
  21. package/build/SectionSeparator-e06c7660.js +38 -0
  22. package/build/Switch-d2d6e9ec.js +167 -0
  23. package/build/Tab-ccbca1f2.js +39 -0
  24. package/build/Tabs-b06c0e24.js +166 -0
  25. package/build/TextArea-26d3c8a1.js +619 -0
  26. package/build/TextInput-3a567daa.js +372 -0
  27. package/build/Tooltip-d5882b82.js +73 -0
  28. package/build/VerificationStatusIcon-9876b68f.js +120 -0
  29. package/{esm/node_modules/@babel/runtime/helpers/esm/extends.js → build/_rollupPluginBabelHelpers-4b342fad.js} +3 -1
  30. package/build/arrow-forward-d7c77ae3.js +37 -0
  31. package/build/close-1751121a.js +37 -0
  32. package/build/data/Alert/index.js +12 -0
  33. package/build/data/Badge/index.js +11 -0
  34. package/build/data/Popover/index.js +16 -0
  35. package/build/data/Tab/index.js +11 -0
  36. package/build/data/Tabs/index.js +13 -0
  37. package/build/data/Tooltip/index.js +13 -0
  38. package/build/data/index.js +30 -0
  39. package/{esm/node_modules/prop-types/factoryWithTypeCheckers.js → build/defaultTheme-d9a7342e.js} +582 -17
  40. package/build/edit-note-cefe2215.js +37 -0
  41. package/build/expand-more-d74e2bd2.js +37 -0
  42. package/build/icons/add-circle.svg +3 -0
  43. package/build/icons/add.svg +3 -0
  44. package/build/icons/album.svg +3 -0
  45. package/build/icons/arrow-back.svg +4 -0
  46. package/build/icons/arrow-drop-down.svg +4 -0
  47. package/build/icons/arrow-forward.svg +3 -0
  48. package/build/icons/audio.svg +3 -0
  49. package/build/icons/bell.svg +3 -0
  50. package/build/icons/check-circle-filled.svg +3 -0
  51. package/build/icons/check-rectangle-filled.svg +3 -0
  52. package/build/icons/check.svg +3 -0
  53. package/build/icons/clear-circle-filled.svg +14 -0
  54. package/build/icons/close.svg +4 -0
  55. package/build/icons/corporate.svg +3 -0
  56. package/build/icons/delete-context-menu.svg +4 -0
  57. package/build/icons/delete.svg +3 -0
  58. package/build/icons/design-services.svg +4 -0
  59. package/build/icons/download.svg +3 -0
  60. package/build/icons/edit-note.svg +4 -0
  61. package/build/icons/edit.svg +3 -0
  62. package/build/icons/expand-more.svg +4 -0
  63. package/build/icons/file.svg +3 -0
  64. package/build/icons/ftp.svg +3 -0
  65. package/build/icons/gear.svg +3 -0
  66. package/build/icons/headset.svg +1 -0
  67. package/build/icons/index.js +79 -0
  68. package/build/icons/layers.svg +3 -0
  69. package/build/icons/library-add.svg +3 -0
  70. package/build/icons/link.svg +4 -0
  71. package/build/icons/pdf.svg +3 -0
  72. package/build/icons/play.svg +3 -0
  73. package/build/icons/remove-circle.svg +3 -0
  74. package/build/icons/search.svg +3 -0
  75. package/build/icons/share.svg +3 -0
  76. package/build/icons/shopping_cart_add.svg +3 -0
  77. package/build/icons/star-filled.svg +3 -0
  78. package/build/icons/star.svg +3 -0
  79. package/build/icons/triangle-right.svg +4 -0
  80. package/build/icons/verification.svg +3 -0
  81. package/build/icons/warning-circle.svg +3 -0
  82. package/build/icons/warning-triangle.svg +3 -0
  83. package/build/inputs/ActionButton/index.js +12 -0
  84. package/build/inputs/Button/index.js +19 -0
  85. package/build/inputs/Checkbox/index.js +12 -0
  86. package/build/inputs/CompactAutocompleteSelect/index.js +29 -0
  87. package/build/inputs/CompactStarRating/index.js +23 -0
  88. package/build/inputs/CompactTextInput/index.js +25 -0
  89. package/build/inputs/MultiSelect/index.js +16 -0
  90. package/build/inputs/Radio/index.js +13 -0
  91. package/build/inputs/Switch/index.js +12 -0
  92. package/build/inputs/TextArea/index.js +26 -0
  93. package/build/inputs/TextInput/index.js +15 -0
  94. package/build/inputs/index.js +60 -0
  95. package/build/layout/InputGroup/index.js +11 -0
  96. package/build/layout/SectionSeparator/index.js +11 -0
  97. package/build/layout/index.js +15 -0
  98. package/build/shift-away-subtle-158617af.js +9 -0
  99. package/build/styles/all.scss +3 -0
  100. package/build/styles/config.scss +38 -0
  101. package/{styles/utils/.colors.scss → build/styles/utils/colors.scss} +1 -1
  102. package/build/styles/utils/theme.scss +33 -0
  103. package/build/widgets/AssetGallery/index.js +55 -0
  104. package/build/widgets/AssetPreview/AssetPreviewTopBar/index.js +12 -0
  105. package/build/widgets/ContextMenu/ContextMenuItem/index.js +11 -0
  106. package/build/widgets/ContextMenu/ContextMenuItemsGroup/index.js +44 -0
  107. package/build/widgets/ContextMenu/index.js +11 -0
  108. package/build/widgets/InfoCard/index.js +12 -0
  109. package/build/widgets/Instructions/index.js +33 -0
  110. package/build/widgets/ProgressBar/index.js +12 -0
  111. package/build/widgets/index.js +65 -0
  112. package/package.json +49 -56
  113. package/styles/all.scss +3 -3
  114. package/styles/config.scss +38 -0
  115. package/styles/utils/colors.scss +15 -0
  116. package/styles/utils/theme.scss +0 -2
  117. package/.eslintrc +0 -19
  118. package/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -84
  119. package/cjs/_virtual/index.js +0 -7
  120. package/cjs/_virtual/index2.js +0 -7
  121. package/cjs/_virtual/index3.js +0 -7
  122. package/cjs/_virtual/index4.js +0 -7
  123. package/cjs/_virtual/index5.js +0 -7
  124. package/cjs/_virtual/react-dom.development.js +0 -7
  125. package/cjs/_virtual/react-dom.production.js +0 -7
  126. package/cjs/_virtual/react-is.development.js +0 -7
  127. package/cjs/_virtual/react-is.development2.js +0 -7
  128. package/cjs/_virtual/react-is.production.min.js +0 -7
  129. package/cjs/_virtual/react-is.production.min2.js +0 -7
  130. package/cjs/_virtual/react.development.js +0 -7
  131. package/cjs/_virtual/react.production.js +0 -7
  132. package/cjs/components/data/Alert/Alert.js +0 -79
  133. package/cjs/components/data/Alert/Alert.styled.js +0 -79
  134. package/cjs/components/data/Alert/data/Alert/index.js +0 -9
  135. package/cjs/components/data/Badge/Badge.js +0 -93
  136. package/cjs/components/data/Badge/Badge.styled.js +0 -167
  137. package/cjs/components/data/Badge/data/Badge/index.js +0 -9
  138. package/cjs/components/data/Popover/Popover.js +0 -104
  139. package/cjs/components/data/Popover/Popover.styled.js +0 -159
  140. package/cjs/components/data/Popover/data/Popover/index.js +0 -9
  141. package/cjs/components/data/Tab/Tab.js +0 -31
  142. package/cjs/components/data/Tab/Tab.styled.js +0 -27
  143. package/cjs/components/data/Tab/data/Tab/index.js +0 -9
  144. package/cjs/components/data/Tabs/Tabs.js +0 -101
  145. package/cjs/components/data/Tabs/Tabs.styled.js +0 -110
  146. package/cjs/components/data/Tabs/data/Tabs/index.js +0 -9
  147. package/cjs/components/data/Tooltip/Tooltip.js +0 -52
  148. package/cjs/components/data/Tooltip/Tooltip.styled.js +0 -38
  149. package/cjs/components/data/Tooltip/data/Tooltip/index.js +0 -9
  150. package/cjs/components/data/VerificationStatusIcon/VerificationStatusIcon.js +0 -42
  151. package/cjs/components/data/VerificationStatusIcon/VerificationStatusIcon.styled.js +0 -88
  152. package/cjs/components/data/data/index.js +0 -21
  153. package/cjs/components/inputs/ActionButton/ActionButton.js +0 -44
  154. package/cjs/components/inputs/ActionButton/ActionButton.styled.js +0 -75
  155. package/cjs/components/inputs/ActionButton/inputs/ActionButton/index.js +0 -9
  156. package/cjs/components/inputs/Button/Button.js +0 -195
  157. package/cjs/components/inputs/Button/Button.styled.js +0 -340
  158. package/cjs/components/inputs/Button/inputs/Button/index.js +0 -9
  159. package/cjs/components/inputs/Checkbox/Checkbox.js +0 -102
  160. package/cjs/components/inputs/Checkbox/Checkbox.styled.js +0 -160
  161. package/cjs/components/inputs/Checkbox/inputs/Checkbox/index.js +0 -9
  162. package/cjs/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js +0 -268
  163. package/cjs/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.styled.js +0 -363
  164. package/cjs/components/inputs/CompactAutocompleteSelect/inputs/CompactAutocompleteSelect/index.js +0 -9
  165. package/cjs/components/inputs/CompactStarRating/CompactStarRating.js +0 -177
  166. package/cjs/components/inputs/CompactStarRating/CompactStarRating.styled.js +0 -269
  167. package/cjs/components/inputs/CompactStarRating/inputs/CompactStarRating/index.js +0 -9
  168. package/cjs/components/inputs/CompactTextInput/CompactTextInput.js +0 -187
  169. package/cjs/components/inputs/CompactTextInput/CompactTextInput.styled.js +0 -406
  170. package/cjs/components/inputs/CompactTextInput/inputs/CompactTextInput/index.js +0 -9
  171. package/cjs/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.js +0 -253
  172. package/cjs/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.styled.js +0 -106
  173. package/cjs/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +0 -185
  174. package/cjs/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.styled.js +0 -147
  175. package/cjs/components/inputs/MultiSelect/MultiSelect.js +0 -208
  176. package/cjs/components/inputs/MultiSelect/MultiSelect.styled.js +0 -275
  177. package/cjs/components/inputs/MultiSelect/inputs/MultiSelect/index.js +0 -9
  178. package/cjs/components/inputs/Radio/Radio.js +0 -67
  179. package/cjs/components/inputs/Radio/Radio.styled.js +0 -100
  180. package/cjs/components/inputs/Radio/inputs/Radio/index.js +0 -9
  181. package/cjs/components/inputs/Switch/Switch.js +0 -69
  182. package/cjs/components/inputs/Switch/Switch.styled.js +0 -138
  183. package/cjs/components/inputs/Switch/inputs/Switch/index.js +0 -9
  184. package/cjs/components/inputs/TextArea/TextArea.js +0 -176
  185. package/cjs/components/inputs/TextArea/TextArea.styled.js +0 -530
  186. package/cjs/components/inputs/TextArea/inputs/TextArea/index.js +0 -9
  187. package/cjs/components/inputs/TextInput/TextInput.js +0 -146
  188. package/cjs/components/inputs/TextInput/TextInput.styled.js +0 -289
  189. package/cjs/components/inputs/TextInput/inputs/TextInput/index.js +0 -9
  190. package/cjs/components/inputs/inputs/index.js +0 -33
  191. package/cjs/components/layout/InputGroup/InputGroup.js +0 -26
  192. package/cjs/components/layout/InputGroup/InputGroup.styled.js +0 -23
  193. package/cjs/components/layout/InputGroup/layout/InputGroup/index.js +0 -9
  194. package/cjs/components/layout/SectionSeparator/SectionSeparator.js +0 -29
  195. package/cjs/components/layout/SectionSeparator/SectionSeparator.styled.js +0 -28
  196. package/cjs/components/layout/SectionSeparator/layout/SectionSeparator/index.js +0 -9
  197. package/cjs/components/layout/layout/index.js +0 -11
  198. package/cjs/components/widgets/AssetAction/AssetAction.js +0 -106
  199. package/cjs/components/widgets/AssetAction/AssetAction.styled.js +0 -69
  200. package/cjs/components/widgets/AssetActionsBase/AssetActionsBase.js +0 -35
  201. package/cjs/components/widgets/AssetActionsBase/AssetActionsBase.styled.js +0 -29
  202. package/cjs/components/widgets/AssetGallery/AssetGallery.js +0 -106
  203. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.js +0 -395
  204. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.styled.js +0 -52
  205. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js +0 -405
  206. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js +0 -385
  207. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js +0 -396
  208. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js +0 -328
  209. package/cjs/components/widgets/AssetGallery/asset.propType.js +0 -58
  210. package/cjs/components/widgets/AssetGallery/widgets/AssetGallery/index.js +0 -9
  211. package/cjs/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js +0 -50
  212. package/cjs/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.styled.js +0 -107
  213. package/cjs/components/widgets/AssetPreview/AssetPreviewTopBar/widgets/AssetPreview/AssetPreviewTopBar/index.js +0 -9
  214. package/cjs/components/widgets/ContextMenu/ContextMenu.js +0 -29
  215. package/cjs/components/widgets/ContextMenu/ContextMenu.styled.js +0 -24
  216. package/cjs/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js +0 -50
  217. package/cjs/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.styled.js +0 -102
  218. package/cjs/components/widgets/ContextMenu/ContextMenuItem/widgets/ContextMenu/ContextMenuItem/index.js +0 -9
  219. package/cjs/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js +0 -28
  220. package/cjs/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.styled.js +0 -35
  221. package/cjs/components/widgets/ContextMenu/ContextMenuItemsGroup/widgets/ContextMenu/ContextMenuItemsGroup/index.js +0 -9
  222. package/cjs/components/widgets/ContextMenu/widgets/ContextMenu/index.js +0 -9
  223. package/cjs/components/widgets/InfoCard/InfoCard.js +0 -47
  224. package/cjs/components/widgets/InfoCard/InfoCard.styled.js +0 -137
  225. package/cjs/components/widgets/InfoCard/widgets/InfoCard/index.js +0 -9
  226. package/cjs/components/widgets/ProgressBar/ProgressBar.js +0 -79
  227. package/cjs/components/widgets/ProgressBar/ProgressBar.styled.js +0 -210
  228. package/cjs/components/widgets/ProgressBar/widgets/ProgressBar/index.js +0 -9
  229. package/cjs/components/widgets/SummaryCard/SummaryCard.js +0 -93
  230. package/cjs/components/widgets/SummaryCard/SummaryCard.styled.js +0 -169
  231. package/cjs/components/widgets/widgets/index.js +0 -23
  232. package/cjs/hooks/useEventListner.js +0 -26
  233. package/cjs/hooks/useIsomorphicLayoutEffect.js +0 -11
  234. package/cjs/hooks/useOnClickOutside.js +0 -17
  235. package/cjs/icons/arrow-back.svg.js +0 -20
  236. package/cjs/icons/arrow-forward.svg.js +0 -20
  237. package/cjs/icons/check-rectangle-filled.svg.js +0 -20
  238. package/cjs/icons/close.svg.js +0 -20
  239. package/cjs/icons/edit-note.svg.js +0 -20
  240. package/cjs/icons/expand-more.svg.js +0 -20
  241. package/cjs/icons/headset.svg.js +0 -20
  242. package/cjs/icons/layers.svg.js +0 -20
  243. package/cjs/icons/link.svg.js +0 -20
  244. package/cjs/icons/play.svg.js +0 -20
  245. package/cjs/icons/search.svg.js +0 -20
  246. package/cjs/icons/star-filled.svg.js +0 -20
  247. package/cjs/icons/star.svg.js +0 -20
  248. package/cjs/icons/triangle-right.svg.js +0 -20
  249. package/cjs/icons/verification.svg.js +0 -20
  250. package/cjs/icons/warning-circle.svg.js +0 -20
  251. package/cjs/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +0 -11
  252. package/cjs/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +0 -9
  253. package/cjs/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +0 -11
  254. package/cjs/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +0 -10
  255. package/cjs/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -9
  256. package/cjs/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -19
  257. package/cjs/node_modules/@babel/runtime/helpers/esm/createSuper.js +0 -22
  258. package/cjs/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -16
  259. package/cjs/node_modules/@babel/runtime/helpers/esm/extends.js +0 -15
  260. package/cjs/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +0 -11
  261. package/cjs/node_modules/@babel/runtime/helpers/esm/inherits.js +0 -20
  262. package/cjs/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +0 -14
  263. package/cjs/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +0 -9
  264. package/cjs/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +0 -33
  265. package/cjs/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +0 -9
  266. package/cjs/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +0 -9
  267. package/cjs/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +0 -29
  268. package/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +0 -19
  269. package/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -15
  270. package/cjs/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +0 -14
  271. package/cjs/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +0 -11
  272. package/cjs/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +0 -14
  273. package/cjs/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +0 -13
  274. package/cjs/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +0 -14
  275. package/cjs/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -18
  276. package/cjs/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -13
  277. package/cjs/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -15
  278. package/cjs/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +0 -15
  279. package/cjs/node_modules/@emotion/cache/dist/emotion-cache.esm.js +0 -503
  280. package/cjs/node_modules/@emotion/hash/dist/emotion-hash.esm.js +0 -59
  281. package/cjs/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js +0 -13
  282. package/cjs/node_modules/@emotion/react/dist/emotion-element-d59e098f.esm.js +0 -158
  283. package/cjs/node_modules/@emotion/react/dist/emotion-react.esm.js +0 -66
  284. package/cjs/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js +0 -240
  285. package/cjs/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js +0 -144
  286. package/cjs/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js +0 -56
  287. package/cjs/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.esm.js +0 -16
  288. package/cjs/node_modules/@emotion/utils/dist/emotion-utils.esm.js +0 -60
  289. package/cjs/node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js +0 -20
  290. package/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js +0 -915
  291. package/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js +0 -374
  292. package/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs.js +0 -130
  293. package/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js +0 -166
  294. package/cjs/node_modules/@restart/hooks/lib/useMergedRefs.js +0 -43
  295. package/cjs/node_modules/@restart/hooks/lib/useUpdateEffect.js +0 -39
  296. package/cjs/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +0 -24
  297. package/cjs/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js +0 -186
  298. package/cjs/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js +0 -22
  299. package/cjs/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +0 -13
  300. package/cjs/node_modules/memoize-one/dist/memoize-one.esm.js +0 -55
  301. package/cjs/node_modules/object-assign/index.js +0 -94
  302. package/cjs/node_modules/prop-types/checkPropTypes.js +0 -110
  303. package/cjs/node_modules/prop-types/factoryWithThrowingShims.js +0 -69
  304. package/cjs/node_modules/prop-types/factoryWithTypeCheckers.js +0 -621
  305. package/cjs/node_modules/prop-types/index.js +0 -33
  306. package/cjs/node_modules/prop-types/lib/ReactPropTypesSecret.js +0 -16
  307. package/cjs/node_modules/prop-types/lib/has.js +0 -7
  308. package/cjs/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +0 -186
  309. package/cjs/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +0 -22
  310. package/cjs/node_modules/prop-types/node_modules/react-is/index.js +0 -13
  311. package/cjs/node_modules/react/cjs/react.development.js +0 -1289
  312. package/cjs/node_modules/react/cjs/react.production.js +0 -548
  313. package/cjs/node_modules/react/index.js +0 -19
  314. package/cjs/node_modules/react-dom/cjs/react-dom.development.js +0 -432
  315. package/cjs/node_modules/react-dom/cjs/react-dom.production.js +0 -218
  316. package/cjs/node_modules/react-dom/index.js +0 -44
  317. package/cjs/node_modules/react-lazy-load-image-component/src/effects/opacity.css.js +0 -6
  318. package/cjs/node_modules/react-select/creatable/dist/react-select-creatable.esm.js +0 -23
  319. package/cjs/node_modules/react-select/dist/Select-ef7c0426.esm.js +0 -2659
  320. package/cjs/node_modules/react-select/dist/index-641ee5b8.esm.js +0 -1426
  321. package/cjs/node_modules/react-select/dist/useCreatable-09aaeb9a.esm.js +0 -101
  322. package/cjs/node_modules/react-select/dist/useStateManager-7e1e8489.esm.js +0 -78
  323. package/cjs/node_modules/style-inject/dist/style-inject.es.js +0 -32
  324. package/cjs/node_modules/stylis/src/Enum.js +0 -24
  325. package/cjs/node_modules/stylis/src/Middleware.js +0 -37
  326. package/cjs/node_modules/stylis/src/Parser.js +0 -201
  327. package/cjs/node_modules/stylis/src/Serializer.js +0 -43
  328. package/cjs/node_modules/stylis/src/Tokenizer.js +0 -243
  329. package/cjs/node_modules/stylis/src/Utility.js +0 -134
  330. package/cjs/node_modules/tippy.js/animations/shift-away-subtle.css.js +0 -6
  331. package/cjs/node_modules/tippy.js/dist/tippy.css.js +0 -6
  332. package/cjs/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.esm.js +0 -13
  333. package/cjs/styles/utils/colors-export.js +0 -41
  334. package/cjs/utils/dateTime.js +0 -20
  335. package/cjs/utils/defaultTheme.js +0 -75
  336. package/doctor-storybook.log +0 -20
  337. package/esm/_virtual/_rollupPluginBabelHelpers.js +0 -74
  338. package/esm/_virtual/index.js +0 -3
  339. package/esm/_virtual/index2.js +0 -3
  340. package/esm/_virtual/index3.js +0 -3
  341. package/esm/_virtual/index4.js +0 -3
  342. package/esm/_virtual/index5.js +0 -3
  343. package/esm/_virtual/react-dom.development.js +0 -3
  344. package/esm/_virtual/react-dom.production.js +0 -3
  345. package/esm/_virtual/react-is.development.js +0 -3
  346. package/esm/_virtual/react-is.development2.js +0 -3
  347. package/esm/_virtual/react-is.production.min.js +0 -3
  348. package/esm/_virtual/react-is.production.min2.js +0 -3
  349. package/esm/_virtual/react.development.js +0 -3
  350. package/esm/_virtual/react.production.js +0 -3
  351. package/esm/components/data/Alert/Alert.js +0 -75
  352. package/esm/components/data/Alert/Alert.styled.js +0 -70
  353. package/esm/components/data/Alert/data/Alert/index.js +0 -1
  354. package/esm/components/data/Badge/Badge.js +0 -89
  355. package/esm/components/data/Badge/Badge.styled.js +0 -156
  356. package/esm/components/data/Badge/data/Badge/index.js +0 -1
  357. package/esm/components/data/Popover/Popover.js +0 -96
  358. package/esm/components/data/Popover/Popover.styled.js +0 -150
  359. package/esm/components/data/Popover/data/Popover/index.js +0 -1
  360. package/esm/components/data/Tab/Tab.js +0 -27
  361. package/esm/components/data/Tab/Tab.styled.js +0 -19
  362. package/esm/components/data/Tab/data/Tab/index.js +0 -1
  363. package/esm/components/data/Tabs/Tabs.js +0 -97
  364. package/esm/components/data/Tabs/Tabs.styled.js +0 -98
  365. package/esm/components/data/Tabs/data/Tabs/index.js +0 -1
  366. package/esm/components/data/Tooltip/Tooltip.js +0 -48
  367. package/esm/components/data/Tooltip/Tooltip.styled.js +0 -29
  368. package/esm/components/data/Tooltip/data/Tooltip/index.js +0 -1
  369. package/esm/components/data/VerificationStatusIcon/VerificationStatusIcon.js +0 -38
  370. package/esm/components/data/VerificationStatusIcon/VerificationStatusIcon.styled.js +0 -78
  371. package/esm/components/data/data/index.js +0 -7
  372. package/esm/components/inputs/ActionButton/ActionButton.js +0 -40
  373. package/esm/components/inputs/ActionButton/ActionButton.styled.js +0 -67
  374. package/esm/components/inputs/ActionButton/inputs/ActionButton/index.js +0 -1
  375. package/esm/components/inputs/Button/Button.js +0 -191
  376. package/esm/components/inputs/Button/Button.styled.js +0 -323
  377. package/esm/components/inputs/Button/inputs/Button/index.js +0 -1
  378. package/esm/components/inputs/Checkbox/Checkbox.js +0 -98
  379. package/esm/components/inputs/Checkbox/Checkbox.styled.js +0 -147
  380. package/esm/components/inputs/Checkbox/inputs/Checkbox/index.js +0 -1
  381. package/esm/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js +0 -264
  382. package/esm/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.styled.js +0 -335
  383. package/esm/components/inputs/CompactAutocompleteSelect/inputs/CompactAutocompleteSelect/index.js +0 -1
  384. package/esm/components/inputs/CompactStarRating/CompactStarRating.js +0 -173
  385. package/esm/components/inputs/CompactStarRating/CompactStarRating.styled.js +0 -256
  386. package/esm/components/inputs/CompactStarRating/inputs/CompactStarRating/index.js +0 -1
  387. package/esm/components/inputs/CompactTextInput/CompactTextInput.js +0 -183
  388. package/esm/components/inputs/CompactTextInput/CompactTextInput.styled.js +0 -389
  389. package/esm/components/inputs/CompactTextInput/inputs/CompactTextInput/index.js +0 -1
  390. package/esm/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.js +0 -247
  391. package/esm/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.styled.js +0 -92
  392. package/esm/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +0 -181
  393. package/esm/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.styled.js +0 -129
  394. package/esm/components/inputs/MultiSelect/MultiSelect.js +0 -204
  395. package/esm/components/inputs/MultiSelect/MultiSelect.styled.js +0 -251
  396. package/esm/components/inputs/MultiSelect/inputs/MultiSelect/index.js +0 -1
  397. package/esm/components/inputs/Radio/Radio.js +0 -63
  398. package/esm/components/inputs/Radio/Radio.styled.js +0 -91
  399. package/esm/components/inputs/Radio/inputs/Radio/index.js +0 -1
  400. package/esm/components/inputs/Switch/Switch.js +0 -65
  401. package/esm/components/inputs/Switch/Switch.styled.js +0 -125
  402. package/esm/components/inputs/Switch/inputs/Switch/index.js +0 -1
  403. package/esm/components/inputs/TextArea/TextArea.js +0 -172
  404. package/esm/components/inputs/TextArea/TextArea.styled.js +0 -512
  405. package/esm/components/inputs/TextArea/inputs/TextArea/index.js +0 -1
  406. package/esm/components/inputs/TextInput/TextInput.js +0 -142
  407. package/esm/components/inputs/TextInput/TextInput.styled.js +0 -274
  408. package/esm/components/inputs/TextInput/inputs/TextInput/index.js +0 -1
  409. package/esm/components/inputs/inputs/index.js +0 -13
  410. package/esm/components/layout/InputGroup/InputGroup.js +0 -22
  411. package/esm/components/layout/InputGroup/InputGroup.styled.js +0 -15
  412. package/esm/components/layout/InputGroup/layout/InputGroup/index.js +0 -1
  413. package/esm/components/layout/SectionSeparator/SectionSeparator.js +0 -25
  414. package/esm/components/layout/SectionSeparator/SectionSeparator.styled.js +0 -20
  415. package/esm/components/layout/SectionSeparator/layout/SectionSeparator/index.js +0 -1
  416. package/esm/components/layout/layout/index.js +0 -2
  417. package/esm/components/widgets/AssetAction/AssetAction.js +0 -102
  418. package/esm/components/widgets/AssetAction/AssetAction.styled.js +0 -57
  419. package/esm/components/widgets/AssetActionsBase/AssetActionsBase.js +0 -31
  420. package/esm/components/widgets/AssetActionsBase/AssetActionsBase.styled.js +0 -21
  421. package/esm/components/widgets/AssetGallery/AssetGallery.js +0 -102
  422. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.js +0 -387
  423. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.styled.js +0 -42
  424. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js +0 -401
  425. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js +0 -358
  426. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js +0 -392
  427. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js +0 -302
  428. package/esm/components/widgets/AssetGallery/asset.propType.js +0 -53
  429. package/esm/components/widgets/AssetGallery/widgets/AssetGallery/index.js +0 -1
  430. package/esm/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js +0 -46
  431. package/esm/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.styled.js +0 -95
  432. package/esm/components/widgets/AssetPreview/AssetPreviewTopBar/widgets/AssetPreview/AssetPreviewTopBar/index.js +0 -1
  433. package/esm/components/widgets/ContextMenu/ContextMenu.js +0 -25
  434. package/esm/components/widgets/ContextMenu/ContextMenu.styled.js +0 -16
  435. package/esm/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js +0 -46
  436. package/esm/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.styled.js +0 -92
  437. package/esm/components/widgets/ContextMenu/ContextMenuItem/widgets/ContextMenu/ContextMenuItem/index.js +0 -1
  438. package/esm/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js +0 -24
  439. package/esm/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.styled.js +0 -27
  440. package/esm/components/widgets/ContextMenu/ContextMenuItemsGroup/widgets/ContextMenu/ContextMenuItemsGroup/index.js +0 -1
  441. package/esm/components/widgets/ContextMenu/widgets/ContextMenu/index.js +0 -1
  442. package/esm/components/widgets/InfoCard/InfoCard.js +0 -43
  443. package/esm/components/widgets/InfoCard/InfoCard.styled.js +0 -121
  444. package/esm/components/widgets/InfoCard/widgets/InfoCard/index.js +0 -1
  445. package/esm/components/widgets/ProgressBar/ProgressBar.js +0 -75
  446. package/esm/components/widgets/ProgressBar/ProgressBar.styled.js +0 -191
  447. package/esm/components/widgets/ProgressBar/widgets/ProgressBar/index.js +0 -1
  448. package/esm/components/widgets/SummaryCard/SummaryCard.js +0 -89
  449. package/esm/components/widgets/SummaryCard/SummaryCard.styled.js +0 -151
  450. package/esm/components/widgets/widgets/index.js +0 -8
  451. package/esm/hooks/useEventListner.js +0 -22
  452. package/esm/hooks/useIsomorphicLayoutEffect.js +0 -7
  453. package/esm/hooks/useOnClickOutside.js +0 -13
  454. package/esm/icons/arrow-back.svg.js +0 -16
  455. package/esm/icons/arrow-forward.svg.js +0 -16
  456. package/esm/icons/check-rectangle-filled.svg.js +0 -16
  457. package/esm/icons/close.svg.js +0 -16
  458. package/esm/icons/edit-note.svg.js +0 -16
  459. package/esm/icons/expand-more.svg.js +0 -16
  460. package/esm/icons/headset.svg.js +0 -16
  461. package/esm/icons/layers.svg.js +0 -16
  462. package/esm/icons/link.svg.js +0 -16
  463. package/esm/icons/play.svg.js +0 -16
  464. package/esm/icons/search.svg.js +0 -16
  465. package/esm/icons/star-filled.svg.js +0 -16
  466. package/esm/icons/star.svg.js +0 -16
  467. package/esm/icons/triangle-right.svg.js +0 -16
  468. package/esm/icons/verification.svg.js +0 -16
  469. package/esm/icons/warning-circle.svg.js +0 -16
  470. package/esm/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +0 -7
  471. package/esm/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +0 -5
  472. package/esm/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +0 -7
  473. package/esm/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +0 -6
  474. package/esm/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -5
  475. package/esm/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -15
  476. package/esm/node_modules/@babel/runtime/helpers/esm/createSuper.js +0 -18
  477. package/esm/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -12
  478. package/esm/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +0 -7
  479. package/esm/node_modules/@babel/runtime/helpers/esm/inherits.js +0 -16
  480. package/esm/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +0 -10
  481. package/esm/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +0 -5
  482. package/esm/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +0 -29
  483. package/esm/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +0 -5
  484. package/esm/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +0 -5
  485. package/esm/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +0 -25
  486. package/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +0 -15
  487. package/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -11
  488. package/esm/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +0 -10
  489. package/esm/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +0 -7
  490. package/esm/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +0 -10
  491. package/esm/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +0 -9
  492. package/esm/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +0 -10
  493. package/esm/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -14
  494. package/esm/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -9
  495. package/esm/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -11
  496. package/esm/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +0 -11
  497. package/esm/node_modules/@emotion/cache/dist/emotion-cache.esm.js +0 -499
  498. package/esm/node_modules/@emotion/hash/dist/emotion-hash.esm.js +0 -55
  499. package/esm/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js +0 -9
  500. package/esm/node_modules/@emotion/react/dist/emotion-element-d59e098f.esm.js +0 -149
  501. package/esm/node_modules/@emotion/react/dist/emotion-react.esm.js +0 -56
  502. package/esm/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js +0 -236
  503. package/esm/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js +0 -140
  504. package/esm/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js +0 -52
  505. package/esm/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.esm.js +0 -12
  506. package/esm/node_modules/@emotion/utils/dist/emotion-utils.esm.js +0 -54
  507. package/esm/node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js +0 -16
  508. package/esm/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js +0 -902
  509. package/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js +0 -370
  510. package/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs.js +0 -112
  511. package/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js +0 -139
  512. package/esm/node_modules/@restart/hooks/lib/useMergedRefs.js +0 -38
  513. package/esm/node_modules/@restart/hooks/lib/useUpdateEffect.js +0 -35
  514. package/esm/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +0 -22
  515. package/esm/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js +0 -181
  516. package/esm/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js +0 -17
  517. package/esm/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +0 -11
  518. package/esm/node_modules/memoize-one/dist/memoize-one.esm.js +0 -51
  519. package/esm/node_modules/object-assign/index.js +0 -90
  520. package/esm/node_modules/prop-types/checkPropTypes.js +0 -106
  521. package/esm/node_modules/prop-types/factoryWithThrowingShims.js +0 -65
  522. package/esm/node_modules/prop-types/index.js +0 -29
  523. package/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js +0 -12
  524. package/esm/node_modules/prop-types/lib/has.js +0 -3
  525. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +0 -181
  526. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +0 -17
  527. package/esm/node_modules/prop-types/node_modules/react-is/index.js +0 -11
  528. package/esm/node_modules/react/cjs/react.development.js +0 -1287
  529. package/esm/node_modules/react/cjs/react.production.js +0 -543
  530. package/esm/node_modules/react/index.js +0 -15
  531. package/esm/node_modules/react-dom/cjs/react-dom.development.js +0 -427
  532. package/esm/node_modules/react-dom/cjs/react-dom.production.js +0 -213
  533. package/esm/node_modules/react-dom/index.js +0 -42
  534. package/esm/node_modules/react-lazy-load-image-component/src/effects/opacity.css.js +0 -4
  535. package/esm/node_modules/react-select/creatable/dist/react-select-creatable.esm.js +0 -19
  536. package/esm/node_modules/react-select/dist/Select-ef7c0426.esm.js +0 -2650
  537. package/esm/node_modules/react-select/dist/index-641ee5b8.esm.js +0 -1385
  538. package/esm/node_modules/react-select/dist/useCreatable-09aaeb9a.esm.js +0 -97
  539. package/esm/node_modules/react-select/dist/useStateManager-7e1e8489.esm.js +0 -74
  540. package/esm/node_modules/style-inject/dist/style-inject.es.js +0 -28
  541. package/esm/node_modules/stylis/src/Enum.js +0 -12
  542. package/esm/node_modules/stylis/src/Middleware.js +0 -32
  543. package/esm/node_modules/stylis/src/Parser.js +0 -193
  544. package/esm/node_modules/stylis/src/Serializer.js +0 -38
  545. package/esm/node_modules/stylis/src/Tokenizer.js +0 -223
  546. package/esm/node_modules/stylis/src/Utility.js +0 -117
  547. package/esm/node_modules/tippy.js/animations/shift-away-subtle.css.js +0 -4
  548. package/esm/node_modules/tippy.js/dist/tippy.css.js +0 -4
  549. package/esm/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.esm.js +0 -9
  550. package/esm/ssr/ssr/index.js +0 -1
  551. package/esm/styles/utils/colors-export.js +0 -37
  552. package/esm/utils/dateTime.js +0 -16
  553. package/esm/utils/defaultTheme.js +0 -70
  554. package/migration-storybook.log +0 -392
  555. package/styles/utils/colors-export.js +0 -35
  556. /package/{cjs/ssr → build}/ssr/index.js +0 -0
@@ -0,0 +1,2377 @@
1
+ 'use strict';
2
+
3
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4b342fad.js');
4
+ var lodash = require('lodash');
5
+ var defaultTheme = require('./defaultTheme-d9a7342e.js');
6
+ var React = require('react');
7
+ var useMergedRefs = require('@restart/hooks/useMergedRefs');
8
+ var ResizeObserver = require('resize-observer-polyfill');
9
+ var MultiLevelCheckboxSelect = require('./MultiLevelCheckboxSelect-d229cf98.js');
10
+ var styled = require('styled-components');
11
+ var Instructions = require('./Instructions-af191987.js');
12
+ var Alert = require('./Alert-8a511bdc.js');
13
+ var Badge = require('./Badge-aa4cd9c1.js');
14
+ var Popover = require('./Popover-c4be47ea.js');
15
+ require('./Tab-ccbca1f2.js');
16
+ require('./Tabs-b06c0e24.js');
17
+ var Tooltip = require('./Tooltip-d5882b82.js');
18
+ require('./VerificationStatusIcon-9876b68f.js');
19
+ var react = require('@floating-ui/react');
20
+ var polished = require('polished');
21
+ var ContextMenu = require('./ContextMenu-82f9d728.js');
22
+ require('./AssetPreviewTopBar-623cfa18.js');
23
+ require('./ProgressBar-2d26c1fb.js');
24
+ require('./InfoCard-d0fdf377.js');
25
+ var ActionButton = require('./ActionButton-03dc5f67.js');
26
+ require('./Button-2e26f5da.js');
27
+ require('./Checkbox-0b8faf49.js');
28
+ require('./CompactAutocompleteSelect-797778cb.js');
29
+ require('./CompactStarRating-da21b53f.js');
30
+ require('./CompactTextInput-d56aec71.js');
31
+ require('./MultiSelect-d7920eb1.js');
32
+ require('./Radio-150fb2c9.js');
33
+ require('./TextArea-26d3c8a1.js');
34
+ require('./TextInput-3a567daa.js');
35
+ require('./Switch-d2d6e9ec.js');
36
+ var ContextMenuItem = require('./ContextMenuItem-3967010d.js');
37
+
38
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
39
+
40
+ function _interopNamespace(e) {
41
+ if (e && e.__esModule) return e;
42
+ var n = Object.create(null);
43
+ if (e) {
44
+ Object.keys(e).forEach(function (k) {
45
+ if (k !== 'default') {
46
+ var d = Object.getOwnPropertyDescriptor(e, k);
47
+ Object.defineProperty(n, k, d.get ? d : {
48
+ enumerable: true,
49
+ get: function () { return e[k]; }
50
+ });
51
+ }
52
+ });
53
+ }
54
+ n["default"] = e;
55
+ return Object.freeze(n);
56
+ }
57
+
58
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
59
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
60
+ var useMergedRefs__default = /*#__PURE__*/_interopDefaultLegacy(useMergedRefs);
61
+ var ResizeObserver__default = /*#__PURE__*/_interopDefaultLegacy(ResizeObserver);
62
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
63
+
64
+ var _path$3;
65
+ function _extends$3() { return _extends$3 = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends$3.apply(null, arguments); }
66
+ function SvgCheckRectangleFilled(props) {
67
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$3({
68
+ xmlns: "http://www.w3.org/2000/svg",
69
+ viewBox: "0 0 24 24"
70
+ }, props), _path$3 || (_path$3 = /*#__PURE__*/React__namespace.createElement("path", {
71
+ fill: "currentColor",
72
+ d: "M10.146 17.622l9.412-9.412-1.87-1.869-7.542 7.543-3.805-3.805-1.869 1.87 5.674 5.673zM2.67 24.03q-1.101 0-1.886-.784T0 21.36V2.67Q0 1.569.784.784T2.67 0h18.69q1.101 0 1.886.784t.784 1.886v18.69q0 1.101-.784 1.886t-1.886.784H2.67z"
73
+ })));
74
+ }
75
+
76
+ var _path$2;
77
+ function _extends$2() { return _extends$2 = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends$2.apply(null, arguments); }
78
+ function SvgHeadset(props) {
79
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$2({
80
+ xmlns: "http://www.w3.org/2000/svg",
81
+ fill: "currentColor",
82
+ viewBox: "0 0 24 24"
83
+ }, props), _path$2 || (_path$2 = /*#__PURE__*/React__namespace.createElement("path", {
84
+ d: "M9 21H5q-.825 0-1.413-.587Q3 19.825 3 19v-7q0-1.875.712-3.513.713-1.637 1.926-2.85 1.212-1.212 2.85-1.925Q10.125 3 12 3t3.513.712q1.637.713 2.85 1.925 1.212 1.213 1.925 2.85Q21 10.125 21 12v7q0 .825-.587 1.413Q19.825 21 19 21h-4v-8h4v-1q0-2.925-2.038-4.963Q14.925 5 12 5T7.038 7.037Q5 9.075 5 12v1h4zm-2-6H5v4h2zm10 0v4h2v-4zm0 0h2-2zM7 15H5z"
85
+ })));
86
+ }
87
+
88
+ var _path$1;
89
+ function _extends$1() { return _extends$1 = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends$1.apply(null, arguments); }
90
+ function SvgLayers(props) {
91
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$1({
92
+ xmlns: "http://www.w3.org/2000/svg",
93
+ viewBox: "-1 0 24 24"
94
+ }, props), _path$1 || (_path$1 = /*#__PURE__*/React__namespace.createElement("path", {
95
+ fill: "currentColor",
96
+ d: "M11.16 23.622L0 14.942l2.046-1.55 9.114 7.068 9.114-7.068 2.046 1.55-11.16 8.68zm0-6.262L0 8.68 11.16 0l11.16 8.68-11.16 8.68z"
97
+ })));
98
+ }
99
+
100
+ var _path;
101
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
102
+ function SvgPlay(props) {
103
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends({
104
+ xmlns: "http://www.w3.org/2000/svg",
105
+ viewBox: "-3 -0.25 24 24"
106
+ }, props), _path || (_path = /*#__PURE__*/React__namespace.createElement("path", {
107
+ fill: "currentColor",
108
+ d: "M0 23.52V0l18.48 11.76L0 23.52z"
109
+ })));
110
+ }
111
+
112
+ const assetShape = {
113
+ key: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.string, defaultTheme.PropTypes.number]).isRequired,
114
+ previewUrl: defaultTheme.PropTypes.string,
115
+ title: defaultTheme.PropTypes.string,
116
+ note: defaultTheme.PropTypes.shape({
117
+ icon: defaultTheme.PropTypes.element,
118
+ message: defaultTheme.PropTypes.string
119
+ }),
120
+ width: defaultTheme.PropTypes.number,
121
+ height: defaultTheme.PropTypes.number,
122
+ fileType: defaultTheme.PropTypes.oneOf(['image', 'video', 'pdf', 'file', 'audio']).isRequired,
123
+ fileTypeIconPosition: defaultTheme.PropTypes.oneOf(['top-left', 'top-right']),
124
+ group: defaultTheme.PropTypes.string,
125
+ actions: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.shape({
126
+ title: defaultTheme.PropTypes.string.isRequired,
127
+ icon: defaultTheme.PropTypes.element.isRequired,
128
+ onClick: defaultTheme.PropTypes.func.isRequired,
129
+ className: defaultTheme.PropTypes.shape,
130
+ component: defaultTheme.PropTypes.func
131
+ })),
132
+ overlay: defaultTheme.PropTypes.element,
133
+ completed: defaultTheme.PropTypes.bool,
134
+ hasError: defaultTheme.PropTypes.bool,
135
+ disabled: defaultTheme.PropTypes.bool,
136
+ onClick: defaultTheme.PropTypes.func,
137
+ onContextMenu: defaultTheme.PropTypes.func,
138
+ onMouseEnter: defaultTheme.PropTypes.func,
139
+ summary: defaultTheme.PropTypes.shape({
140
+ title: defaultTheme.PropTypes.string,
141
+ description: defaultTheme.PropTypes.string,
142
+ instructions: defaultTheme.PropTypes.string,
143
+ instructionsType: defaultTheme.PropTypes.oneOf(['warning', 'error', 'info']),
144
+ headerLeft: defaultTheme.PropTypes.node,
145
+ headerRight: defaultTheme.PropTypes.node,
146
+ footerLeft: defaultTheme.PropTypes.node,
147
+ footerRight: defaultTheme.PropTypes.node
148
+ })
149
+ };
150
+ const assetShapeWithLayout = {
151
+ ...assetShape,
152
+ layout: defaultTheme.PropTypes.shape({
153
+ width: defaultTheme.PropTypes.number.isRequired,
154
+ height: defaultTheme.PropTypes.number.isRequired,
155
+ translateX: defaultTheme.PropTypes.number.isRequired,
156
+ translateY: defaultTheme.PropTypes.number.isRequired,
157
+ type: defaultTheme.PropTypes.oneOf(['groupLabel', 'asset']).isRequired,
158
+ hasHeightAndWidth: defaultTheme.PropTypes.bool
159
+ }).isRequired
160
+ };
161
+
162
+ const AssetGalleryBase$1 = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
163
+ position: relative;
164
+ `;
165
+ const GroupLabel = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
166
+ font-family: ${props => props.theme.primaryFontFamily};
167
+ ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'))}
168
+ display: flex;
169
+ align-items: flex-end;
170
+ position: absolute;
171
+ padding-bottom: 4px;
172
+ box-sizing: border-box;
173
+ `;
174
+ const AssetGalleryCardBase = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
175
+ position: absolute;
176
+ top: 0;
177
+ left: 0;
178
+ margin: 0;
179
+ z-index: 1;
180
+ will-change: transform, width, height;
181
+
182
+ &:hover {
183
+ z-index: 2;
184
+ }
185
+ `;
186
+
187
+ var build = {exports: {}};
188
+
189
+ (()=>{var e={296:(e,t,r)=>{var o=/^\s+|\s+$/g,n=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt,s="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,l="object"==typeof self&&self&&self.Object===Object&&self,a=s||l||Function("return this")(),f=Object.prototype.toString,p=Math.max,y=Math.min,b=function(){return a.Date.now()};function d(e){var t=typeof e;return !!e&&("object"==t||"function"==t)}function h(e){if("number"==typeof e)return e;if(function(e){return "symbol"==typeof e||function(e){return !!e&&"object"==typeof e}(e)&&"[object Symbol]"==f.call(e)}(e))return NaN;if(d(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=d(t)?t+"":t;}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(o,"");var r=i.test(e);return r||c.test(e)?u(e.slice(2),r?2:8):n.test(e)?NaN:+e}e.exports=function(e,t,r){var o,n,i,c,u,s,l=0,a=!1,f=!1,v=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function m(t){var r=o,i=n;return o=n=void 0,l=t,c=e.apply(i,r)}function O(e){var r=e-s;return void 0===s||r>=t||r<0||f&&e-l>=i}function w(){var e=b();if(O(e))return g(e);u=setTimeout(w,function(e){var r=t-(e-s);return f?y(r,i-(e-l)):r}(e));}function g(e){return u=void 0,v&&o?m(e):(o=n=void 0,c)}function P(){var e=b(),r=O(e);if(o=arguments,n=this,s=e,r){if(void 0===u)return function(e){return l=e,u=setTimeout(w,t),a?m(e):c}(s);if(f)return u=setTimeout(w,t),m(s)}return void 0===u&&(u=setTimeout(w,t)),c}return t=h(t)||0,d(r)&&(a=!!r.leading,i=(f="maxWait"in r)?p(h(r.maxWait)||0,t):i,v="trailing"in r?!!r.trailing:v),P.cancel=function(){void 0!==u&&clearTimeout(u),l=0,o=s=n=u=void 0;},P.flush=function(){return void 0===u?c:g(b())},P};},96:(e,t,r)=>{var o="Expected a function",n=NaN,i="[object Symbol]",c=/^\s+|\s+$/g,u=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,a=parseInt,f="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,p="object"==typeof self&&self&&self.Object===Object&&self,y=f||p||Function("return this")(),b=Object.prototype.toString,d=Math.max,h=Math.min,v=function(){return y.Date.now()};function m(e){var t=typeof e;return !!e&&("object"==t||"function"==t)}function O(e){if("number"==typeof e)return e;if(function(e){return "symbol"==typeof e||function(e){return !!e&&"object"==typeof e}(e)&&b.call(e)==i}(e))return n;if(m(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=m(t)?t+"":t;}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(c,"");var r=s.test(e);return r||l.test(e)?a(e.slice(2),r?2:8):u.test(e)?n:+e}e.exports=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new TypeError(o);return m(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),function(e,t,r){var n,i,c,u,s,l,a=0,f=!1,p=!1,y=!0;if("function"!=typeof e)throw new TypeError(o);function b(t){var r=n,o=i;return n=i=void 0,a=t,u=e.apply(o,r)}function w(e){var r=e-l;return void 0===l||r>=t||r<0||p&&e-a>=c}function g(){var e=v();if(w(e))return P(e);s=setTimeout(g,function(e){var r=t-(e-l);return p?h(r,c-(e-a)):r}(e));}function P(e){return s=void 0,y&&n?b(e):(n=i=void 0,u)}function j(){var e=v(),r=w(e);if(n=arguments,i=this,l=e,r){if(void 0===s)return function(e){return a=e,s=setTimeout(g,t),f?b(e):u}(l);if(p)return s=setTimeout(g,t),b(l)}return void 0===s&&(s=setTimeout(g,t)),u}return t=O(t)||0,m(r)&&(f=!!r.leading,c=(p="maxWait"in r)?d(O(r.maxWait)||0,t):c,y="trailing"in r?!!r.trailing:y),j.cancel=function(){void 0!==s&&clearTimeout(s),a=0,n=l=i=s=void 0;},j.flush=function(){return void 0===s?u:P(v())},j}(e,t,{leading:n,maxWait:t,trailing:i})};},703:(e,t,r)=>{var o=r(414);function n(){}function i(){}i.resetWarningCache=n,e.exports=function(){function e(e,t,r,n,i,c){if(c!==o){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}function t(){return e}e.isRequired=e;var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:n};return r.PropTypes=r,r};},697:(e,t,r)=>{e.exports=r(703)();},414:e=>{e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}};return e[o](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]});},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0});};var o={};(()=>{r.r(o),r.d(o,{LazyLoadComponent:()=>Y,LazyLoadImage:()=>ne,trackWindowScroll:()=>D});const e=React__default["default"];var t=r.n(e),n=r(697);function i(){return "undefined"!=typeof window&&"IntersectionObserver"in window&&"isIntersecting"in window.IntersectionObserverEntry.prototype}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o);}return r}function s(e,t,r){return (t=a(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,a(o.key),o);}}function a(e){var t=function(e,t){if("object"!==c(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==c(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"===c(t)?t:String(t)}function f(e,t){return f=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},f(e,t)}function p(e){return p=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},p(e)}var y=function(e){e.forEach((function(e){e.isIntersecting&&e.target.onVisible();}));},b={},d=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&f(e,t);}(h,e);var r,o,n,a,d=(n=h,a=function(){if("undefined"==typeof Reflect||!Reflect.construct)return !1;if(Reflect.construct.sham)return !1;if("function"==typeof Proxy)return !0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return !1}}(),function(){var e,t=p(n);if(a){var r=p(this).constructor;e=Reflect.construct(t,arguments,r);}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===c(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,e)});function h(e){var t;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h),(t=d.call(this,e)).supportsObserver=!e.scrollPosition&&e.useIntersectionObserver&&i(),t.supportsObserver){var r=e.threshold;t.observer=function(e){return b[e]=b[e]||new IntersectionObserver(y,{rootMargin:e+"px"}),b[e]}(r);}return t}return r=h,o=[{key:"componentDidMount",value:function(){this.placeholder&&this.observer&&(this.placeholder.onVisible=this.props.onVisible,this.observer.observe(this.placeholder)),this.supportsObserver||this.updateVisibility();}},{key:"componentWillUnmount",value:function(){this.observer&&this.placeholder&&this.observer.unobserve(this.placeholder);}},{key:"componentDidUpdate",value:function(){this.supportsObserver||this.updateVisibility();}},{key:"getPlaceholderBoundingBox",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props.scrollPosition,t=this.placeholder.getBoundingClientRect(),r=this.placeholder.style,o=parseInt(r.getPropertyValue("margin-left"),10)||0,n=parseInt(r.getPropertyValue("margin-top"),10)||0;return {bottom:e.y+t.bottom+n,left:e.x+t.left+o,right:e.x+t.right+o,top:e.y+t.top+n}}},{key:"isPlaceholderInViewport",value:function(){if("undefined"==typeof window||!this.placeholder)return !1;var e=this.props,t=e.scrollPosition,r=e.threshold,o=this.getPlaceholderBoundingBox(t),n=t.y+window.innerHeight,i=t.x,c=t.x+window.innerWidth,u=t.y;return Boolean(u-r<=o.bottom&&n+r>=o.top&&i-r<=o.right&&c+r>=o.left)}},{key:"updateVisibility",value:function(){this.isPlaceholderInViewport()&&this.props.onVisible();}},{key:"render",value:function(){var e=this,r=this.props,o=r.className,n=r.height,i=r.placeholder,c=r.style,l=r.width;if(i&&"function"!=typeof i.type)return t().cloneElement(i,{ref:function(t){return e.placeholder=t}});var a=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){s(e,t,r[t]);})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t));}));}return e}({display:"inline-block"},c);return void 0!==l&&(a.width=l),void 0!==n&&(a.height=n),t().createElement("span",{className:o,ref:function(t){return e.placeholder=t},style:a},i)}}],o&&l(r.prototype,o),Object.defineProperty(r,"prototype",{writable:!1}),h}(t().Component);d.propTypes={onVisible:n.PropTypes.func.isRequired,className:n.PropTypes.string,height:n.PropTypes.oneOfType([n.PropTypes.number,n.PropTypes.string]),placeholder:n.PropTypes.element,threshold:n.PropTypes.number,useIntersectionObserver:n.PropTypes.bool,scrollPosition:n.PropTypes.shape({x:n.PropTypes.number.isRequired,y:n.PropTypes.number.isRequired}),width:n.PropTypes.oneOfType([n.PropTypes.number,n.PropTypes.string])},d.defaultProps={className:"",placeholder:null,threshold:100,useIntersectionObserver:!0};const h=d;var v=r(296),m=r.n(v),O=r(96),w=r.n(O),g=function(e){var t=getComputedStyle(e,null);return t.getPropertyValue("overflow")+t.getPropertyValue("overflow-y")+t.getPropertyValue("overflow-x")};const P=function(e){if(!(e instanceof HTMLElement))return window;for(var t=e;t&&t instanceof HTMLElement;){if(/(scroll|auto)/.test(g(t)))return t;t=t.parentNode;}return window};function j(e){return j="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},j(e)}var T=["delayMethod","delayTime"];function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);}return e},S.apply(this,arguments)}function E(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,(n=function(e,t){if("object"!==j(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==j(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===j(n)?n:String(n)),o);}var n;}function L(e,t){return L=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},L(e,t)}function _(e,t){if(t&&("object"===j(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return I(e)}function I(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function x(e){return x=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},x(e)}var R=function(){return "undefined"==typeof window?0:window.scrollX||window.pageXOffset},k=function(){return "undefined"==typeof window?0:window.scrollY||window.pageYOffset};const D=function(e){var r=function(r){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&L(e,t);}(l,r);var o,n,c,u,s=(c=l,u=function(){if("undefined"==typeof Reflect||!Reflect.construct)return !1;if(Reflect.construct.sham)return !1;if("function"==typeof Proxy)return !0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return !1}}(),function(){var e,t=x(c);if(u){var r=x(this).constructor;e=Reflect.construct(t,arguments,r);}else e=t.apply(this,arguments);return _(this,e)});function l(e){var r;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(r=s.call(this,e)).useIntersectionObserver=e.useIntersectionObserver&&i(),r.useIntersectionObserver)return _(r);var o=r.onChangeScroll.bind(I(r));return "debounce"===e.delayMethod?r.delayedScroll=m()(o,e.delayTime):"throttle"===e.delayMethod&&(r.delayedScroll=w()(o,e.delayTime)),r.state={scrollPosition:{x:R(),y:k()}},r.baseComponentRef=t().createRef(),r}return o=l,(n=[{key:"componentDidMount",value:function(){this.addListeners();}},{key:"componentWillUnmount",value:function(){this.removeListeners();}},{key:"componentDidUpdate",value:function(){"undefined"==typeof window||this.useIntersectionObserver||P(this.baseComponentRef.current)!==this.scrollElement&&(this.removeListeners(),this.addListeners());}},{key:"addListeners",value:function(){"undefined"==typeof window||this.useIntersectionObserver||(this.scrollElement=P(this.baseComponentRef.current),this.scrollElement.addEventListener("scroll",this.delayedScroll,{passive:!0}),window.addEventListener("resize",this.delayedScroll,{passive:!0}),this.scrollElement!==window&&window.addEventListener("scroll",this.delayedScroll,{passive:!0}));}},{key:"removeListeners",value:function(){"undefined"==typeof window||this.useIntersectionObserver||(this.scrollElement.removeEventListener("scroll",this.delayedScroll),window.removeEventListener("resize",this.delayedScroll),this.scrollElement!==window&&window.removeEventListener("scroll",this.delayedScroll));}},{key:"onChangeScroll",value:function(){this.useIntersectionObserver||this.setState({scrollPosition:{x:R(),y:k()}});}},{key:"render",value:function(){var r=this.props,o=(r.delayMethod,r.delayTime,function(e,t){if(null==e)return {};var r,o,n=function(e,t){if(null==e)return {};var r,o,n={},i=Object.keys(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);}return n}(r,T)),n=this.useIntersectionObserver?null:this.state.scrollPosition;return t().createElement(e,S({forwardRef:this.baseComponentRef,scrollPosition:n},o))}}])&&E(o.prototype,n),Object.defineProperty(o,"prototype",{writable:!1}),l}(t().Component);return r.propTypes={delayMethod:n.PropTypes.oneOf(["debounce","throttle"]),delayTime:n.PropTypes.number,useIntersectionObserver:n.PropTypes.bool},r.defaultProps={delayMethod:"throttle",delayTime:300,useIntersectionObserver:!0},r};function C(e){return C="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},C(e)}function B(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,(n=function(e,t){if("object"!==C(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==C(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===C(n)?n:String(n)),o);}var n;}function M(e,t){return M=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},M(e,t)}function N(e){return N=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},N(e)}var V=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&M(e,t);}(u,e);var r,o,n,i,c=(n=u,i=function(){if("undefined"==typeof Reflect||!Reflect.construct)return !1;if(Reflect.construct.sham)return !1;if("function"==typeof Proxy)return !0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return !1}}(),function(){var e,t=N(n);if(i){var r=N(this).constructor;e=Reflect.construct(t,arguments,r);}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===C(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,e)});function u(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,u),c.call(this,e)}return r=u,(o=[{key:"render",value:function(){return t().createElement(h,this.props)}}])&&B(r.prototype,o),Object.defineProperty(r,"prototype",{writable:!1}),u}(t().Component);const W=D(V);function z(e){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},z(e)}function $(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,(n=function(e,t){if("object"!==z(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==z(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===z(n)?n:String(n)),o);}var n;}function U(e,t){return U=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},U(e,t)}function F(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function q(e){return q=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},q(e)}var H=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&U(e,t);}(s,e);var r,o,n,c,u=(n=s,c=function(){if("undefined"==typeof Reflect||!Reflect.construct)return !1;if(Reflect.construct.sham)return !1;if("function"==typeof Proxy)return !0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return !1}}(),function(){var e,t=q(n);if(c){var r=q(this).constructor;e=Reflect.construct(t,arguments,r);}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===z(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return F(e)}(this,e)});function s(e){var t;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s),t=u.call(this,e);var r=e.afterLoad,o=e.beforeLoad,n=e.scrollPosition,i=e.visibleByDefault;return t.state={visible:i},i&&(o(),r()),t.onVisible=t.onVisible.bind(F(t)),t.isScrollTracked=Boolean(n&&Number.isFinite(n.x)&&n.x>=0&&Number.isFinite(n.y)&&n.y>=0),t}return r=s,(o=[{key:"componentDidUpdate",value:function(e,t){t.visible!==this.state.visible&&this.props.afterLoad();}},{key:"onVisible",value:function(){this.props.beforeLoad(),this.setState({visible:!0});}},{key:"render",value:function(){if(this.state.visible)return this.props.children;var e=this.props,r=e.className,o=e.delayMethod,n=e.delayTime,c=e.height,u=e.placeholder,s=e.scrollPosition,l=e.style,a=e.threshold,f=e.useIntersectionObserver,p=e.width;return this.isScrollTracked||f&&i()?t().createElement(h,{className:r,height:c,onVisible:this.onVisible,placeholder:u,scrollPosition:s,style:l,threshold:a,useIntersectionObserver:f,width:p}):t().createElement(W,{className:r,delayMethod:o,delayTime:n,height:c,onVisible:this.onVisible,placeholder:u,style:l,threshold:a,width:p})}}])&&$(r.prototype,o),Object.defineProperty(r,"prototype",{writable:!1}),s}(t().Component);H.propTypes={afterLoad:n.PropTypes.func,beforeLoad:n.PropTypes.func,useIntersectionObserver:n.PropTypes.bool,visibleByDefault:n.PropTypes.bool},H.defaultProps={afterLoad:function(){return {}},beforeLoad:function(){return {}},useIntersectionObserver:!0,visibleByDefault:!1};const Y=H;function X(e){return X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},X(e)}var A=["afterLoad","beforeLoad","delayMethod","delayTime","effect","placeholder","placeholderSrc","scrollPosition","threshold","useIntersectionObserver","visibleByDefault","wrapperClassName","wrapperProps"];function G(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o);}return r}function J(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?G(Object(r),!0).forEach((function(t){K(e,t,r[t]);})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):G(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t));}));}return e}function K(e,t,r){return (t=ee(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Q(){return Q=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);}return e},Q.apply(this,arguments)}function Z(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,ee(o.key),o);}}function ee(e){var t=function(e,t){if("object"!==X(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==X(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"===X(t)?t:String(t)}function te(e,t){return te=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},te(e,t)}function re(e){return re=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},re(e)}var oe=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&te(e,t);}(u,e);var r,o,n,i,c=(n=u,i=function(){if("undefined"==typeof Reflect||!Reflect.construct)return !1;if(Reflect.construct.sham)return !1;if("function"==typeof Proxy)return !0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return !1}}(),function(){var e,t=re(n);if(i){var r=re(this).constructor;e=Reflect.construct(t,arguments,r);}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===X(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,e)});function u(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,u),(t=c.call(this,e)).state={loaded:!1},t}return r=u,(o=[{key:"onImageLoad",value:function(){var e=this;return this.state.loaded?null:function(t){e.props.onLoad(t),e.props.afterLoad(),e.setState({loaded:!0});}}},{key:"getImg",value:function(){var e=this.props,r=(e.afterLoad,e.beforeLoad,e.delayMethod,e.delayTime,e.effect,e.placeholder,e.placeholderSrc,e.scrollPosition,e.threshold,e.useIntersectionObserver,e.visibleByDefault,e.wrapperClassName,e.wrapperProps,function(e,t){if(null==e)return {};var r,o,n=function(e,t){if(null==e)return {};var r,o,n={},i=Object.keys(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);}return n}(e,A));return t().createElement("img",Q({},r,{onLoad:this.onImageLoad()}))}},{key:"getLazyLoadImage",value:function(){var e=this.props,r=e.beforeLoad,o=e.className,n=e.delayMethod,i=e.delayTime,c=e.height,u=e.placeholder,s=e.scrollPosition,l=e.style,a=e.threshold,f=e.useIntersectionObserver,p=e.visibleByDefault,y=e.width;return t().createElement(Y,{beforeLoad:r,className:o,delayMethod:n,delayTime:i,height:c,placeholder:u,scrollPosition:s,style:l,threshold:a,useIntersectionObserver:f,visibleByDefault:p,width:y},this.getImg())}},{key:"getWrappedLazyLoadImage",value:function(e){var r=this.props,o=r.effect,n=r.height,i=r.placeholderSrc,c=r.width,u=r.wrapperClassName,s=r.wrapperProps,l=this.state.loaded,a=l?" lazy-load-image-loaded":"",f=l||!i?{}:{backgroundImage:"url(".concat(i,")"),backgroundSize:"100% 100%"};return t().createElement("span",Q({className:u+" lazy-load-image-background "+o+a,style:J(J({},f),{},{color:"transparent",display:"inline-block",height:n,width:c})},s),e)}},{key:"render",value:function(){var e=this.props,t=e.effect,r=e.placeholderSrc,o=e.visibleByDefault,n=e.wrapperClassName,i=e.wrapperProps,c=this.getLazyLoadImage();return (t||r)&&!o||n||i?this.getWrappedLazyLoadImage(c):c}}])&&Z(r.prototype,o),Object.defineProperty(r,"prototype",{writable:!1}),u}(t().Component);oe.propTypes={onLoad:n.PropTypes.func,afterLoad:n.PropTypes.func,beforeLoad:n.PropTypes.func,delayMethod:n.PropTypes.string,delayTime:n.PropTypes.number,effect:n.PropTypes.string,placeholderSrc:n.PropTypes.string,threshold:n.PropTypes.number,useIntersectionObserver:n.PropTypes.bool,visibleByDefault:n.PropTypes.bool,wrapperClassName:n.PropTypes.string,wrapperProps:n.PropTypes.object},oe.defaultProps={onLoad:function(){},afterLoad:function(){return {}},beforeLoad:function(){return {}},delayMethod:"throttle",delayTime:300,effect:"",placeholderSrc:null,threshold:100,useIntersectionObserver:!0,visibleByDefault:!1,wrapperClassName:""};const ne=oe;})(),build.exports=o;})();
190
+
191
+ var css_248z = ".lazy-load-image-background.opacity {\n opacity: 0;\n}\n\n.lazy-load-image-background.opacity.lazy-load-image-loaded {\n opacity: 1;\n transition: opacity .3s;\n}\n";
192
+ defaultTheme.styleInject(css_248z);
193
+
194
+ const convertMsToHMS = ms => {
195
+ const seconds = Math.floor(ms / 1000);
196
+ const minutes = Math.floor(seconds / 60);
197
+ const hours = Math.floor(minutes / 60);
198
+ const secondsLeft = seconds % 60;
199
+ const minutesLeft = minutes % 60;
200
+ let hmsString = '';
201
+ if (hours) {
202
+ hmsString += hours < 10 ? `0${hours}:` : `${hours}:`;
203
+ }
204
+ hmsString += `${minutesLeft < 10 ? `0${minutesLeft}` : `${minutesLeft}`}:`;
205
+ hmsString += secondsLeft < 10 ? `0${secondsLeft}` : `${secondsLeft}`;
206
+ return hmsString;
207
+ };
208
+
209
+ const shouldForwardProp$1 = prop => {
210
+ return prop !== 'theme' && !prop.startsWith('$');
211
+ };
212
+ const SummaryCard$1 = styled__default["default"].div.withConfig({
213
+ shouldForwardProp: shouldForwardProp$1
214
+ }).attrs(defaultTheme.applyDefaultTheme)`
215
+ display: flex;
216
+ flex-direction: column;
217
+ border-radius: 4px;
218
+ width: ${props => props.width ? `${props.width}px` : '100%'};
219
+ ${props => props.view === 'compact' ? props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('white')) : 'background: transparent'};
220
+
221
+ ${props => props.$useBorder ? props.theme.themeProp('border', `1px solid ${props.theme.getColor('gray-500')}`, `1px solid ${props.theme.getColor('gray-300')}`) : null}
222
+ `;
223
+ const Gutter = styled__default["default"].div.withConfig({
224
+ shouldForwardProp: shouldForwardProp$1
225
+ }).attrs(defaultTheme.applyDefaultTheme)`
226
+ ${props => {
227
+ if (props.renderAsMargin) {
228
+ return styled.css`
229
+ margin-bottom: ${props.$gutter || 8}px;
230
+ `;
231
+ } else {
232
+ return styled.css`
233
+ padding-bottom: ${props.$gutter || 8}px;
234
+ `;
235
+ }
236
+ }}
237
+ padding-bottom: ${props => props.$gutter || 8}px;
238
+ `;
239
+ const Header = styled__default["default"].div.withConfig({
240
+ shouldForwardProp: shouldForwardProp$1
241
+ }).attrs(defaultTheme.applyDefaultTheme)`
242
+ display: flex;
243
+ align-items: center;
244
+ justify-content: space-between;
245
+ padding: 0 16px;
246
+ `;
247
+ const HeaderLeft = styled__default["default"].div.withConfig({
248
+ shouldForwardProp: shouldForwardProp$1
249
+ }).attrs(defaultTheme.applyDefaultTheme)`
250
+ display: flex;
251
+ align-items: center;
252
+ justify-content: flex-start;
253
+
254
+ > * {
255
+ margin-right: 4px;
256
+ }
257
+ `;
258
+ const HeaderRight = styled__default["default"].div.withConfig({
259
+ shouldForwardProp: shouldForwardProp$1
260
+ }).attrs(defaultTheme.applyDefaultTheme)`
261
+ display: flex;
262
+ align-items: center;
263
+ justify-content: flex-end;
264
+
265
+ > * {
266
+ margin-left: 4px;
267
+ }
268
+ `;
269
+ const Title = styled__default["default"].span.withConfig({
270
+ shouldForwardProp: shouldForwardProp$1
271
+ }).attrs(defaultTheme.applyDefaultTheme)`
272
+ display: inline-block;
273
+ padding: 0 16px;
274
+ font: normal normal 500 14px/19px Roboto;
275
+ letter-spacing: 0.28px;
276
+ display: -webkit-box;
277
+ -webkit-line-clamp: 1;
278
+ -webkit-box-orient: vertical;
279
+ overflow: hidden;
280
+ text-overflow: ellipsis;
281
+ box-sizing: border-box;
282
+
283
+ ${props => props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'))};
284
+ `;
285
+ const Description = styled__default["default"].span.withConfig({
286
+ shouldForwardProp: shouldForwardProp$1
287
+ }).attrs(defaultTheme.applyDefaultTheme)`
288
+ padding: 0 16px;
289
+ text-align: left;
290
+ font: normal normal normal 12px/16px Roboto;
291
+ letter-spacing: 0.24px;
292
+ display: -webkit-box;
293
+ -webkit-line-clamp: 3;
294
+ -webkit-box-orient: vertical;
295
+ overflow: hidden;
296
+ text-overflow: ellipsis;
297
+ box-sizing: border-box;
298
+
299
+ ${props => props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'))};
300
+ `;
301
+ const Instruction = styled__default["default"].div.withConfig({
302
+ shouldForwardProp: shouldForwardProp$1
303
+ }).attrs(defaultTheme.applyDefaultTheme)``;
304
+ const Footer = styled__default["default"].div.withConfig({
305
+ shouldForwardProp: shouldForwardProp$1
306
+ }).attrs(defaultTheme.applyDefaultTheme)`
307
+ display: flex;
308
+ align-items: center;
309
+ justify-content: space-between;
310
+ padding: 0 16px;
311
+ `;
312
+ const FooterLeft = styled__default["default"].div.withConfig({
313
+ shouldForwardProp: shouldForwardProp$1
314
+ }).attrs(defaultTheme.applyDefaultTheme)`
315
+ display: flex;
316
+ align-items: center;
317
+ justify-content: flex-start;
318
+
319
+ > * {
320
+ margin-right: 4px;
321
+ }
322
+ `;
323
+ const FooterRight = styled__default["default"].div.withConfig({
324
+ shouldForwardProp: shouldForwardProp$1
325
+ }).attrs(defaultTheme.applyDefaultTheme)`
326
+ display: flex;
327
+ align-items: center;
328
+ justify-content: flex-end;
329
+
330
+ > * {
331
+ margin-left: 4px;
332
+ }
333
+ `;
334
+ styled__default["default"](react.FloatingArrow).withConfig({
335
+ shouldForwardProp: shouldForwardProp$1
336
+ }).attrs(defaultTheme.applyDefaultTheme)`
337
+ ${props => props.theme.themeProp('fill', props.theme.getColor('gray-700'), props.theme.getColor('white'))}
338
+ `;
339
+
340
+ const SummaryCard = React__default["default"].forwardRef(function AssetSummaryCard({
341
+ activeSummaryCard,
342
+ title,
343
+ description,
344
+ instructions,
345
+ instructionsType,
346
+ headerLeft,
347
+ headerRight,
348
+ footerLeft,
349
+ footerRight,
350
+ width,
351
+ useBorder,
352
+ view,
353
+ ...props
354
+ }, forwardedRef) {
355
+ const shouldRenderInstructions = !!instructions;
356
+ const shouldRenderHeader = !!headerLeft || !!headerRight;
357
+ const shouldRenderFooter = !!footerLeft || !!footerRight;
358
+ const shouldAddGutterAfterInstructions = shouldRenderInstructions && shouldRenderFooter;
359
+ const shouldAddGutterAfterTitle = !!title && (!!description || !!instructions || shouldRenderFooter);
360
+ if (!activeSummaryCard) return null;
361
+ return React__default["default"].createElement(SummaryCard$1, _rollupPluginBabelHelpers._extends({
362
+ ref: forwardedRef,
363
+ width: width,
364
+ useBorder: useBorder
365
+ }, props, {
366
+ view: view
367
+ }), shouldRenderHeader && React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(Gutter, {
368
+ gutter: 8
369
+ }), React__default["default"].createElement(Header, null, React__default["default"].createElement(HeaderLeft, null, headerLeft), React__default["default"].createElement(HeaderRight, null, headerRight))), React__default["default"].createElement(Gutter, {
370
+ gutter: shouldRenderHeader ? 8 : 16
371
+ }), title && React__default["default"].createElement(Title, null, title), shouldAddGutterAfterTitle && React__default["default"].createElement(Gutter, {
372
+ gutter: 4
373
+ }), description && React__default["default"].createElement(Description, null, description), React__default["default"].createElement(Gutter, {
374
+ gutter: 16
375
+ }), shouldRenderInstructions && React__default["default"].createElement(Instruction, null, React__default["default"].createElement(Alert.Alert, {
376
+ icon: React__default["default"].createElement(Instructions.SvgWarningCircle, null),
377
+ alertMessage: instructions,
378
+ type: instructionsType,
379
+ fontSize: 12,
380
+ verticalPadding: 12,
381
+ horizontalPadding: 16,
382
+ width: width,
383
+ lineClamp: 1
384
+ })), shouldAddGutterAfterInstructions && React__default["default"].createElement(Gutter, {
385
+ gutter: 16
386
+ }), shouldRenderFooter && React__default["default"].createElement(Footer, null, React__default["default"].createElement(FooterLeft, null, footerLeft), React__default["default"].createElement(FooterRight, null, footerRight)), shouldRenderFooter && React__default["default"].createElement(Gutter, {
387
+ gutter: 16
388
+ }));
389
+ });
390
+ SummaryCard.propTypes = process.env.NODE_ENV !== "production" ? {
391
+ activeSummaryCard: defaultTheme.PropTypes.bool,
392
+ title: defaultTheme.PropTypes.string,
393
+ description: defaultTheme.PropTypes.string,
394
+ instructions: defaultTheme.PropTypes.string,
395
+ instructionsType: defaultTheme.PropTypes.oneOf(['warning', 'error', 'info']),
396
+ headerLeft: defaultTheme.PropTypes.node,
397
+ headerRight: defaultTheme.PropTypes.node,
398
+ footerLeft: defaultTheme.PropTypes.node,
399
+ footerRight: defaultTheme.PropTypes.node,
400
+ width: defaultTheme.PropTypes.number,
401
+ useBorder: defaultTheme.PropTypes.bool,
402
+ view: defaultTheme.PropTypes.string
403
+ } : {};
404
+ SummaryCard.defaultProps = {
405
+ title: '',
406
+ description: '',
407
+ instructions: '',
408
+ instructionsType: 'info',
409
+ headerLeft: null,
410
+ headerRight: null,
411
+ footerLeft: null,
412
+ footerRight: null,
413
+ useBorder: false,
414
+ activeSummaryCard: false
415
+ };
416
+
417
+ const shouldForwardProp = prop => {
418
+ return prop !== 'theme' && !prop.startsWith('$');
419
+ };
420
+ const AssetGalleryWrapper$1 = styled__default["default"].div.withConfig({
421
+ shouldForwardProp
422
+ }).attrs(defaultTheme.applyDefaultTheme)`
423
+ ${props => props.disabled && styled.css`
424
+ cursor: not-allowed;
425
+ `};
426
+ `;
427
+ const Reference = styled__default["default"].div.withConfig({
428
+ shouldForwardProp
429
+ }).attrs(defaultTheme.applyDefaultTheme)`
430
+ width: 100%;
431
+ height: 100%;
432
+ `;
433
+ const AssetGalleryCompactCard$2 = styled__default["default"].div.withConfig({
434
+ shouldForwardProp
435
+ }).attrs(defaultTheme.applyDefaultTheme)`
436
+ display: block;
437
+ height: 100%;
438
+ padding-left: ${props => props.selected ? 1 : 0}px;
439
+ padding-right: ${props => props.selected ? 1 : 0}px;
440
+ padding-top: ${props => props.selected ? 1 : 0}px;
441
+ box-sizing: border-box;
442
+ cursor: pointer;
443
+
444
+ ${props => props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('gray-300'))};
445
+
446
+ ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'))};
447
+
448
+ ${props => props.disabled && styled.css`
449
+ pointer-events: none;
450
+ opacity: 0.4;
451
+ `};
452
+
453
+ ${props => props.extendedSelectMode && styled.css`
454
+ cursor: pointer;
455
+ `}
456
+ video {
457
+ width: 100%;
458
+ height: 100%;
459
+ }
460
+
461
+ .audio {
462
+ display: flex;
463
+ justify-content: center;
464
+ svg {
465
+ width: 25%;
466
+ }
467
+ }
468
+ `;
469
+ const Figure$1 = styled__default["default"].figure`
470
+ display: flex;
471
+ flex-direction: row;
472
+ flex-wrap: nowrap;
473
+ justify-content: center;
474
+ align-items: center;
475
+ position: relative;
476
+ margin: 0;
477
+ width: 100%;
478
+ height: 100%;
479
+ box-sizing: border-box;
480
+
481
+ .lazy-load-image-background {
482
+ display: block !important;
483
+ }
484
+
485
+ img {
486
+ display: block;
487
+ height: 100%;
488
+ width: 100%;
489
+ ${props => props.$hasHeightAndWidth ? styled.css`
490
+ object-fit: cover;
491
+ ` : styled.css`
492
+ object-fit: contain;
493
+ `}
494
+ }
495
+ `;
496
+ const FigureOverlayBackdrop$1 = styled__default["default"].div.withConfig({
497
+ shouldForwardProp
498
+ }).attrs(defaultTheme.applyDefaultTheme)`
499
+ position: absolute;
500
+ inset: 0;
501
+ opacity: ${props => props.selected ? 0.6 : 0};
502
+ background-color: ${props => props.selected ? '#ACCEF7' : 'transparent'};
503
+ `;
504
+ const Overlay$1 = styled__default["default"].div.withConfig({
505
+ shouldForwardProp
506
+ }).attrs(defaultTheme.applyDefaultTheme)`
507
+ position: absolute;
508
+ top: 0;
509
+ bottom: 0;
510
+ left: 0;
511
+ right: 0;
512
+ `;
513
+ const OverlayBackdrop$1 = styled__default["default"].div.withConfig({
514
+ shouldForwardProp
515
+ }).attrs(defaultTheme.applyDefaultTheme)`
516
+ position: absolute;
517
+ top: 0;
518
+ bottom: 0;
519
+ left: 0;
520
+ right: 0;
521
+ opacity: 0;
522
+ transition: opacity 220ms;
523
+
524
+ ${props => !props.selected ? styled.css`
525
+ background: radial-gradient(
526
+ ellipse at center,
527
+ rgba(0, 0, 0, 0.3) 27%,
528
+ rgba(0, 0, 0, 0.5) 60%,
529
+ rgba(0, 0, 0, 0.7) 90%
530
+ );
531
+ ` : null}
532
+ ${props => (props.selected || props.$softSelected) && styled.css`
533
+ opacity: 1;
534
+ `}
535
+ ${Overlay$1}:hover & {
536
+ opacity: 1;
537
+ }
538
+ `;
539
+ const OverlayInfo$1 = styled__default["default"].div.withConfig({
540
+ shouldForwardProp
541
+ }).attrs(defaultTheme.applyDefaultTheme)`
542
+ position: absolute;
543
+ top: 0;
544
+ bottom: 0;
545
+ left: 0;
546
+ right: 0;
547
+ display: flex;
548
+ flex-direction: column;
549
+ justify-content: space-between;
550
+ padding: 15px 50px 10px 12px;
551
+ color: ${props => props.theme.getColor('gray-100')};
552
+ & span {
553
+ overflow: hidden;
554
+ word-wrap: break-word;
555
+ }
556
+ `;
557
+ const OverlayCompleted = styled__default["default"].div.withConfig({
558
+ shouldForwardProp
559
+ }).attrs(defaultTheme.applyDefaultTheme)`
560
+ position: absolute;
561
+ top: 0;
562
+ bottom: 0;
563
+ left: 0;
564
+ right: 0;
565
+ pointer-events: none;
566
+ transition: border-color 120ms;
567
+ border: 3px solid;
568
+ ${props => {
569
+ if (props.$softSelected) return null;
570
+ return props.theme.themeProp('border-color', props.theme.getColor('emerald-500'), polished.rgba(props.theme.getColor('emerald-500'), 0.7));
571
+ }};
572
+ `;
573
+ const OverlayHasError = styled__default["default"].div.withConfig({
574
+ shouldForwardProp
575
+ }).attrs(defaultTheme.applyDefaultTheme)`
576
+ position: absolute;
577
+ top: 0;
578
+ bottom: 0;
579
+ left: 0;
580
+ right: 0;
581
+ pointer-events: none;
582
+ transition: border-color 120ms;
583
+ border: 3px solid;
584
+ ${props => {
585
+ if (props.$softSelected) return null;
586
+ return props.theme.themeProp('border-color', props.theme.getColor('red-600'), polished.rgba(props.theme.getColor('red-500'), 0.7));
587
+ }}
588
+ `;
589
+ const OverlaySelected$1 = styled__default["default"].div.withConfig({
590
+ shouldForwardProp
591
+ }).attrs(defaultTheme.applyDefaultTheme)`
592
+ position: absolute;
593
+ top: 0;
594
+ bottom: 0;
595
+ left: 0;
596
+ right: 0;
597
+ pointer-events: none;
598
+ transition: border-color 120ms;
599
+ border-style: solid;
600
+ border-width: 3px;
601
+
602
+ ${props => {
603
+ if (props.$softSelected) {
604
+ return props.theme.themeProp('border-color', polished.rgba(props.theme.getColor('gray-100'), 0.5), polished.rgba(props.theme.getColor('gray-700'), 0.5));
605
+ }
606
+ if (props.selected) {
607
+ if (props.customSelectedBorder) {
608
+ return props.theme.themeProp('border-color', props.customSelectedBorder[0], props.customSelectedBorder[1]);
609
+ } else {
610
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'));
611
+ }
612
+ }
613
+ return props.theme.themeProp('border-color', 'transparent', 'transparent');
614
+ }};
615
+ `;
616
+ const OverlayInfoTop$1 = styled__default["default"].div.withConfig({
617
+ shouldForwardProp
618
+ }).attrs(defaultTheme.applyDefaultTheme)`
619
+ position: absolute;
620
+ left: 0;
621
+ right: 0;
622
+ top: 0;
623
+ padding: 8px;
624
+ display: flex;
625
+ `;
626
+ const OverlayInfoTopActions$1 = styled__default["default"].div.withConfig({
627
+ shouldForwardProp
628
+ }).attrs(defaultTheme.applyDefaultTheme)`
629
+ position: absolute;
630
+ top: 0;
631
+ right: 0;
632
+ padding: 4px;
633
+ display: flex;
634
+ flex-direction: column;
635
+ justify-content: space-between;
636
+ transition: opacity 220ms;
637
+ z-index: 99999;
638
+ ${props => props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-700'))}
639
+
640
+ opacity: ${props => props.$isOverlayHovered ? 1 : 0};
641
+ `;
642
+ const OverlayInfoTopLeft = styled__default["default"].div.withConfig({
643
+ shouldForwardProp
644
+ }).attrs(defaultTheme.applyDefaultTheme)`
645
+ opacity: 1;
646
+ display: ${props => props?.$collapseExtraInfo ? 'none' : 'block'};
647
+
648
+ ${Overlay$1}:hover & {
649
+ opacity: 0;
650
+ }
651
+ `;
652
+ const OverlayInfoTopWarning$1 = styled__default["default"].div.withConfig({
653
+ shouldForwardProp
654
+ }).attrs(defaultTheme.applyDefaultTheme)`
655
+ margin-left: auto;
656
+ height: 24px;
657
+ width: 24px;
658
+ border-radius: 50%;
659
+ box-sizing: border-box;
660
+ padding: ${props => props.type === 'error' ? 0 : '3px 4px'};
661
+ background-color: ${props => props.type === 'error' ? props.theme.getColor('red-500') : props.theme.getColor('gray-100')};
662
+ opacity: 1;
663
+
664
+ svg {
665
+ width: 100%;
666
+ color: ${props => props.type === 'error' ? props.theme.getColor('gray-100') : props.theme.getColor('gray-700')};
667
+ }
668
+
669
+ ${Overlay$1}:hover & {
670
+ opacity: 0;
671
+ }
672
+ `;
673
+ const OverlayInfoBottom$1 = styled__default["default"].div.withConfig({
674
+ shouldForwardProp
675
+ }).attrs(defaultTheme.applyDefaultTheme)`
676
+ position: absolute;
677
+ left: 0;
678
+ right: 0;
679
+ bottom: 0;
680
+ padding: 8px;
681
+ display: flex;
682
+ `;
683
+ const OverlayInfoBottomSelectButton$1 = styled__default["default"].div.withConfig({
684
+ shouldForwardProp
685
+ }).attrs(defaultTheme.applyDefaultTheme)`
686
+ opacity: ${props => props.selected ? 1 : 0};
687
+ flex-shrink: 0;
688
+ cursor: pointer;
689
+ transition: opacity 220ms;
690
+ height: 24px;
691
+
692
+ > svg {
693
+ width: 24px;
694
+ height: 24px;
695
+ transition: opacity 120ms;
696
+ opacity: ${props => props.selected ? 1 : 0.5};
697
+ }
698
+
699
+ ${Overlay$1}:hover & {
700
+ opacity: 1;
701
+ }
702
+ `;
703
+ const OverlayInfoBottomMediaIcon$1 = styled__default["default"].div.withConfig({
704
+ shouldForwardProp
705
+ }).attrs(defaultTheme.applyDefaultTheme)`
706
+ margin-left: auto;
707
+ opacity: 1;
708
+
709
+ ${Overlay$1}:hover & {
710
+ opacity: 0;
711
+ }
712
+ `;
713
+ const ConsumerDefinedOverlay$1 = styled__default["default"].div.withConfig({
714
+ shouldForwardProp
715
+ }).attrs(defaultTheme.applyDefaultTheme)`
716
+ position: absolute;
717
+ top: 0;
718
+ bottom: 0;
719
+ left: 0;
720
+ right: 0;
721
+ pointer-events: none;
722
+ `;
723
+ styled__default["default"].div`
724
+ margin: 4px;
725
+ `;
726
+ styled__default["default"].div.withConfig({
727
+ shouldForwardProp
728
+ }).attrs(defaultTheme.applyDefaultTheme)`
729
+ ${props => props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('white'))}
730
+ padding: 4px 8px;
731
+ border-radius: 4px;
732
+ `;
733
+ const StyledFloatingArrow$1 = styled__default["default"](react.FloatingArrow).withConfig({
734
+ shouldForwardProp
735
+ }).attrs(defaultTheme.applyDefaultTheme)`
736
+ ${props => props.theme.themeProp('fill', props.theme.getColor('gray-700'), props.theme.getColor('white'))}
737
+ `;
738
+
739
+ const AssetActions = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
740
+ font-family: ${props => props.theme.primaryFontFamily};
741
+ font-size: 1rem;
742
+ font-weight: 500;
743
+ display: flex;
744
+ flex-direction: column;
745
+ padding: 2px;
746
+ gap: 8px;
747
+ `;
748
+
749
+ const AssetActionsBase = React__default["default"].forwardRef(function AssetActionsBase({
750
+ actions,
751
+ asset,
752
+ ...props
753
+ }, forwardedRef) {
754
+ const assetActions = actions.map((action, index) => React__default["default"].createElement(AssetAction$1, _rollupPluginBabelHelpers._extends({
755
+ key: `index_${action.title}`,
756
+ ref: forwardedRef
757
+ }, props, {
758
+ action: action,
759
+ asset: asset,
760
+ itemKey: `${index}-${action.title}`
761
+ })));
762
+ return React__default["default"].createElement(AssetActions, null, assetActions);
763
+ });
764
+ AssetActionsBase.propTypes = process.env.NODE_ENV !== "production" ? {
765
+ actions: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.object),
766
+ asset: defaultTheme.PropTypes.object
767
+ } : {};
768
+ AssetActionsBase.defaultProps = {};
769
+
770
+ const ComputedRootComponent$1 = ({
771
+ component,
772
+ asset,
773
+ ...props
774
+ }) => {
775
+ const newProps = lodash.mapKeys(lodash.omit(props, ['theme', 'extendedSelectMode']), (_, key) => key === 'innerRef' ? 'ref' : key);
776
+ if (component) {
777
+ if (!lodash.isFunction(component)) throw Error('Expected a function in component-prop');
778
+ if (React__default["default"].isValidElement(component(asset, newProps.children))) {
779
+ return React__default["default"].cloneElement(component(asset, newProps.children), lodash.omit(newProps, ['children']));
780
+ }
781
+ }
782
+ return React__default["default"].createElement(AssetGalleryCompactCard$2, _rollupPluginBabelHelpers._extends({
783
+ ref: newProps.ref
784
+ }, newProps));
785
+ };
786
+ const AssetGalleryCompactCard = props => {
787
+ const {
788
+ asset,
789
+ activeSummaryCard,
790
+ displayIcon,
791
+ selectable,
792
+ hasHeightAndWidth,
793
+ selected,
794
+ customSelectedBorder,
795
+ extendedSelectMode,
796
+ onAssetSelected,
797
+ onAssetUnselected,
798
+ softSelected,
799
+ component,
800
+ scrollPosition,
801
+ collapseExtraInfo
802
+ } = props;
803
+ const ARROW_WIDTH = 30;
804
+ const ARROW_HEIGHT = 15;
805
+ const GAP = 8;
806
+ const arrowRef = React.useRef(null);
807
+ const [isOpen, setIsOpen] = React.useState(false);
808
+ const [placement] = React.useState('bottom');
809
+ const [isOverlayHovered, setIsOverlayHovered] = React.useState(false);
810
+ const [openedSubActions, updateOpenedSubActions] = React.useState([]);
811
+ const {
812
+ refs,
813
+ floatingStyles,
814
+ context
815
+ } = react.useFloating({
816
+ placement,
817
+ open: isOpen,
818
+ onOpenChange: setIsOpen,
819
+ whileElementsMounted: react.autoUpdate,
820
+ middleware: [react.offset(ARROW_HEIGHT + GAP), react.flip({
821
+ padding: 5
822
+ }), react.shift({
823
+ padding: 5
824
+ }), react.arrow({
825
+ element: arrowRef
826
+ })]
827
+ });
828
+ const {
829
+ isMounted,
830
+ styles
831
+ } = react.useTransitionStyles(context, {
832
+ initial: {
833
+ transform: 'translateY(-8px)',
834
+ opacity: 0
835
+ },
836
+ duration: {
837
+ open: 200,
838
+ close: 100
839
+ }
840
+ });
841
+ const hover = react.useHover(context, {
842
+ restMs: 100
843
+ });
844
+ const dismiss = react.useDismiss(context, {
845
+ referencePress: true,
846
+ ancestorScroll: true,
847
+ windowScroll: true,
848
+ windowBlur: true
849
+ });
850
+ const {
851
+ getReferenceProps,
852
+ getFloatingProps
853
+ } = react.useInteractions([dismiss, hover]);
854
+ React.useEffect(() => {
855
+ const newOpenedSubActions = (asset?.actions ?? []).map(() => false);
856
+ updateOpenedSubActions(newOpenedSubActions);
857
+ }, [asset]);
858
+ React.useEffect(() => {
859
+ if (!isOverlayHovered && openedSubActions?.length) {
860
+ updateOpenedSubActions(openedSubActions.map(() => false));
861
+ }
862
+ }, [isOverlayHovered]);
863
+ const mouseHasEnteredOverlay = React.useCallback(() => {
864
+ setIsOverlayHovered(true);
865
+ }, []);
866
+ const mouseHasLeftOverlay = React.useCallback(() => {
867
+ setIsOverlayHovered(false);
868
+ }, []);
869
+ const isAnySubActionsOpened = React.useMemo(() => {
870
+ return openedSubActions.some(isOpened => isOpened);
871
+ }, [openedSubActions]);
872
+ function onClick(event) {
873
+ if (extendedSelectMode) {
874
+ return onSelectClick(event);
875
+ }
876
+ if (lodash.isFunction(asset.onClick)) {
877
+ asset.onClick(event, asset);
878
+ }
879
+ }
880
+ function onSelectClick(event) {
881
+ event.preventDefault();
882
+ event.stopPropagation();
883
+ if (selected) {
884
+ return onAssetUnselected(asset.key);
885
+ }
886
+ if (selectable) {
887
+ return onAssetSelected(asset.key);
888
+ }
889
+ }
890
+ function onContextMenu(event) {
891
+ event.preventDefault();
892
+ asset.onContextMenu(event);
893
+ }
894
+ React.useEffect(() => {
895
+ if (lodash.isFunction(asset.onContextMenu)) {
896
+ if (cardRef.current) {
897
+ cardRef.current.addEventListener('contextmenu', onContextMenu);
898
+ }
899
+ return () => {
900
+ if (cardRef.current) {
901
+ cardRef.current.removeEventListener('contextmenu', onContextMenu);
902
+ }
903
+ };
904
+ }
905
+ }, []);
906
+ function onDragstart(event) {
907
+ asset.onDragstart(event);
908
+ }
909
+ React.useEffect(() => {
910
+ if (lodash.isFunction(asset.onDragstart)) {
911
+ if (dragRef.current) {
912
+ dragRef.current.addEventListener('dragstart', onDragstart);
913
+ }
914
+ return () => {
915
+ if (dragRef.current) {
916
+ dragRef.current.removeEventListener('dragstart', onDragstart);
917
+ }
918
+ };
919
+ }
920
+ }, []);
921
+ const videoPlayerRef = React.useRef();
922
+ const cardRef = React.useRef();
923
+ const dragRef = React.useRef(null);
924
+ const overlayCompactRef = react.useMergeRefs([cardRef, refs.setReference]);
925
+ function onMouseEnter(event) {
926
+ if (videoPlayerRef.current) {
927
+ const playPromise = videoPlayerRef.current.play();
928
+ if (playPromise !== undefined) {
929
+ playPromise.then(() => {}).catch(() => {});
930
+ }
931
+ }
932
+ if (lodash.isFunction(asset.onMouseEnter)) {
933
+ asset.onMouseEnter(event, asset);
934
+ }
935
+ }
936
+ function onMouseLeave() {
937
+ if (videoPlayerRef.current) {
938
+ videoPlayerRef.current.pause();
939
+ }
940
+ }
941
+ const renderPreview = asset => {
942
+ let previewContent = null;
943
+ if (asset?.fileType?.toLowerCase() === 'video') {
944
+ previewContent = React__default["default"].createElement(build.exports.LazyLoadComponent, {
945
+ scrollPosition: scrollPosition
946
+ }, React__default["default"].createElement("video", {
947
+ ref: videoPlayerRef,
948
+ loop: true,
949
+ muted: true
950
+ }, React__default["default"].createElement("source", {
951
+ src: asset.previewUrl,
952
+ type: "video/mp4"
953
+ })));
954
+ } else if (asset?.fileType?.toLowerCase() === 'audio') {
955
+ previewContent = React__default["default"].createElement(build.exports.LazyLoadComponent, {
956
+ scrollPosition: scrollPosition
957
+ }, React__default["default"].createElement("div", {
958
+ className: "audio"
959
+ }, React__default["default"].createElement(SvgHeadset, null)));
960
+ } else {
961
+ previewContent = React__default["default"].createElement(build.exports.LazyLoadImage, {
962
+ alt: asset?.title,
963
+ src: asset?.previewUrl,
964
+ height: "100%",
965
+ width: "100%",
966
+ delayMethod: "debounce",
967
+ delayTime: 0,
968
+ threshold: 1500,
969
+ scrollPosition: scrollPosition
970
+ });
971
+ }
972
+ return React__default["default"].createElement(Figure$1, {
973
+ hasHeightAndWidth: hasHeightAndWidth
974
+ }, previewContent, React__default["default"].createElement(FigureOverlayBackdrop$1, {
975
+ selected: selected
976
+ }));
977
+ };
978
+ React.useEffect(() => {
979
+ if (softSelected) {
980
+ cardRef.current.scrollIntoView({
981
+ behavior: 'smooth',
982
+ block: 'nearest'
983
+ });
984
+ }
985
+ }, [softSelected]);
986
+ const renderVersionsBadge = React.useCallback(() => {
987
+ if (!asset?.versions) return null;
988
+ return React__default["default"].createElement(Badge.Badge, {
989
+ badgeIcon: React__default["default"].createElement(SvgLayers, null),
990
+ badgeContent: asset.versions,
991
+ backgroundColors: ['black', 'black'],
992
+ colors: ['#f7f8f9', '#f7f8f9'],
993
+ fontSize: 12,
994
+ fontWeight: 500,
995
+ lineHeight: 16,
996
+ verticalPadding: 4,
997
+ horizontalPadding: 8
998
+ });
999
+ }, [asset]);
1000
+ const renderVerificationBadge = React.useCallback(() => {
1001
+ if (!asset?.verifications) return null;
1002
+ return asset?.verifications;
1003
+ }, [asset]);
1004
+ const renderdynamicBadge = React.useCallback(() => {
1005
+ if (asset?.verifications) return renderVerificationBadge();
1006
+ if (asset?.versions) return renderVersionsBadge();
1007
+ return null;
1008
+ });
1009
+ const renderBadge = () => {
1010
+ switch (displayIcon) {
1011
+ case 'versions':
1012
+ return renderVersionsBadge();
1013
+ case 'verifications':
1014
+ return renderVerificationBadge();
1015
+ case 'dynamic':
1016
+ return renderdynamicBadge();
1017
+ default:
1018
+ return null;
1019
+ }
1020
+ };
1021
+ const renderMediaBadge = React.useCallback(() => {
1022
+ let badgeIcon = null;
1023
+ let badgeContent = null;
1024
+ if (asset?.fileType === 'video') {
1025
+ badgeIcon = React__default["default"].createElement(SvgPlay, null);
1026
+ }
1027
+ if (asset?.duration) {
1028
+ badgeContent = convertMsToHMS(asset.duration);
1029
+ }
1030
+ if (!badgeIcon && !badgeContent) return null;
1031
+ return React__default["default"].createElement(Badge.Badge, {
1032
+ badgeIcon: badgeIcon,
1033
+ badgeContent: badgeContent,
1034
+ backgroundColors: ['black', 'black'],
1035
+ colors: ['#f7f8f9', '#f7f8f9'],
1036
+ fontSize: 12,
1037
+ fontWeight: 500,
1038
+ lineHeight: 16,
1039
+ verticalPadding: 4,
1040
+ horizontalPadding: 8,
1041
+ minWidth: 32,
1042
+ height: 24
1043
+ });
1044
+ }, [asset]);
1045
+ const renderSummaryCardHeaderLeft = React.useCallback(() => {
1046
+ return React__default["default"].createElement(React__default["default"].Fragment, null, renderVersionsBadge(), renderMediaBadge());
1047
+ }, [asset]);
1048
+ const renderPopoverContent = React.useCallback(() => {
1049
+ return React__default["default"].createElement(SummaryCard, {
1050
+ activeSummaryCard: activeSummaryCard,
1051
+ title: asset?.title || '',
1052
+ description: asset?.description || '',
1053
+ instructions: asset?.imageRights || '',
1054
+ instructionsType: 'warning',
1055
+ headerRight: asset?.summary?.headerRight || '',
1056
+ headerLeft: React__default["default"].createElement(React__default["default"].Fragment, null, renderSummaryCardHeaderLeft(), asset?.summary?.headerLeft || ''),
1057
+ footerLeft: asset?.summary?.footerLeft || '',
1058
+ footerRight: asset?.summary?.footerRight || '',
1059
+ width: 375,
1060
+ view: 'compact'
1061
+ });
1062
+ }, [asset]);
1063
+ return React__default["default"].createElement(AssetGalleryWrapper$1, {
1064
+ disabled: asset.disabled
1065
+ }, React__default["default"].createElement(AssetGalleryCompactCard$2, _rollupPluginBabelHelpers._extends({
1066
+ as: ComputedRootComponent$1,
1067
+ component: component,
1068
+ disabled: asset.disabled,
1069
+ asset: asset,
1070
+ onClick: onClick,
1071
+ extendedSelectMode: extendedSelectMode,
1072
+ onMouseEnter: onMouseEnter,
1073
+ onMouseLeave: onMouseLeave,
1074
+ draggable: asset.draggable,
1075
+ innerRef: dragRef,
1076
+ selected: selected
1077
+ }, getReferenceProps()), React__default["default"].createElement(Reference, {
1078
+ ref: refs.setReference
1079
+ }, asset.previewUrl && renderPreview(asset)), React__default["default"].createElement(Overlay$1, _rollupPluginBabelHelpers._extends({
1080
+ ref: overlayCompactRef,
1081
+ onMouseEnter: mouseHasEnteredOverlay,
1082
+ onMouseLeave: mouseHasLeftOverlay,
1083
+ style: {
1084
+ height: '100%'
1085
+ }
1086
+ }, getReferenceProps()), React__default["default"].createElement(OverlayBackdrop$1, {
1087
+ softSelected: softSelected,
1088
+ selected: selected
1089
+ }), asset?.actions && React__default["default"].createElement(OverlayInfoTopActions$1, {
1090
+ $isOverlayHovered: isOverlayHovered
1091
+ }, React__default["default"].createElement(AssetActionsBase, {
1092
+ actions: asset.actions,
1093
+ asset: asset
1094
+ })), React__default["default"].createElement(OverlayInfo$1, null, isOverlayHovered && React__default["default"].createElement("span", null, asset.title), React__default["default"].createElement(OverlayInfoTop$1, null, React__default["default"].createElement(OverlayInfoTopLeft, {
1095
+ collapseExtraInfo: collapseExtraInfo
1096
+ }, renderBadge()), asset?.note?.title && React__default["default"].createElement(OverlayInfoTopWarning$1, {
1097
+ type: asset?.note?.type
1098
+ }, React__default["default"].createElement(Instructions.SvgWarningCircle, null))), React__default["default"].createElement(OverlayInfoBottom$1, null, selectable && React__default["default"].createElement(OverlayInfoBottomSelectButton$1, {
1099
+ selected: selected
1100
+ }, React__default["default"].createElement(SvgCheckRectangleFilled, {
1101
+ onClick: onSelectClick
1102
+ })), React__default["default"].createElement(OverlayInfoBottomMediaIcon$1, null, renderMediaBadge()))), asset.completed && React__default["default"].createElement(OverlayCompleted, {
1103
+ softSelected: softSelected
1104
+ }), asset.hasError && React__default["default"].createElement(OverlayHasError, {
1105
+ softSelected: softSelected
1106
+ }), selectable && React__default["default"].createElement(OverlaySelected$1, {
1107
+ selected: selected,
1108
+ softSelected: softSelected,
1109
+ customSelectedBorder: customSelectedBorder
1110
+ }), isOpen && isOverlayHovered && isMounted && activeSummaryCard && !isAnySubActionsOpened && React__default["default"].createElement("div", _rollupPluginBabelHelpers._extends({
1111
+ ref: refs.setFloating,
1112
+ style: floatingStyles
1113
+ }, getFloatingProps()), React__default["default"].createElement("div", {
1114
+ style: styles,
1115
+ className: "floating"
1116
+ }, renderPopoverContent(), React__default["default"].createElement(StyledFloatingArrow$1, {
1117
+ ref: arrowRef,
1118
+ context: context,
1119
+ width: ARROW_WIDTH,
1120
+ height: ARROW_HEIGHT
1121
+ })))), asset.overlay && React__default["default"].createElement(ConsumerDefinedOverlay$1, null, asset.overlay)));
1122
+ };
1123
+ AssetGalleryCompactCard.propTypes = process.env.NODE_ENV !== "production" ? {
1124
+ asset: defaultTheme.PropTypes.shape(assetShapeWithLayout).isRequired,
1125
+ hasHeightAndWidth: defaultTheme.PropTypes.bool,
1126
+ selectable: defaultTheme.PropTypes.bool,
1127
+ selected: defaultTheme.PropTypes.bool,
1128
+ customSelectedBorder: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.string),
1129
+ extendedSelectMode: defaultTheme.PropTypes.bool,
1130
+ onAssetSelected: defaultTheme.PropTypes.func.isRequired,
1131
+ onAssetUnselected: defaultTheme.PropTypes.func.isRequired,
1132
+ softSelected: defaultTheme.PropTypes.bool.isRequired,
1133
+ component: defaultTheme.PropTypes.func,
1134
+ scrollPosition: defaultTheme.PropTypes.number,
1135
+ collapseExtraInfo: defaultTheme.PropTypes.bool,
1136
+ activeSummaryCard: defaultTheme.PropTypes.bool,
1137
+ displayIcon: defaultTheme.PropTypes.oneOf(['dynamic', 'versions', 'verifications', ''])
1138
+ } : {};
1139
+ var AssetGalleryCompactCard$1 = build.exports.trackWindowScroll(React__default["default"].memo(AssetGalleryCompactCard, (prevProps, nextProps) => {
1140
+ const reactiveProps = ['selectable', 'selected', 'extendedSelectMode', 'softSelected', 'asset.previewUrl', 'asset.overlay', 'hasHeightAndWidth', 'collapseExtraInfo'];
1141
+ return reactiveProps.every(propKey => lodash.get(prevProps, propKey) === lodash.get(nextProps, propKey));
1142
+ }));
1143
+
1144
+ const AssetGalleryWrapper = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1145
+ ${props => props.disabled && styled.css`
1146
+ cursor: not-allowed;
1147
+ `};
1148
+ `;
1149
+ const AssetGalleryGridCard$2 = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1150
+ display: block;
1151
+ position: relative;
1152
+ height: 100%;
1153
+ margin: 0;
1154
+ box-sizing: border-box;
1155
+ border-width: ${props => {
1156
+ const {
1157
+ selected,
1158
+ softSelected,
1159
+ hasError,
1160
+ completed
1161
+ } = props;
1162
+ return selected || softSelected || hasError || completed ? 3 : 1;
1163
+ }}px;
1164
+ border-style: solid;
1165
+ text-decoration: none;
1166
+ cursor: pointer;
1167
+
1168
+ ${props => props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-700'))}
1169
+
1170
+ ${props => props.disabled && styled.css`
1171
+ pointer-events: none;
1172
+ opacity: 0.4;
1173
+ `};
1174
+
1175
+ ${props => props.extendedSelectMode && styled.css`
1176
+ cursor: pointer;
1177
+ `}
1178
+
1179
+ ${props => {
1180
+ if (props.$softSelected) {
1181
+ return props.theme.themeProp('border-color', polished.rgba(props.theme.getColor('gray-100'), 0.5), polished.rgba(props.theme.getColor('gray-700'), 0.5));
1182
+ }
1183
+ if (props.selected) {
1184
+ if (props.customSelectedBorder) {
1185
+ return props.theme.themeProp('border-color', props.customSelectedBorder[0], props.customSelectedBorder[1]);
1186
+ } else {
1187
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'));
1188
+ }
1189
+ }
1190
+ if (props.completed) {
1191
+ return props.theme.themeProp('border-color', props.theme.getColor('emerald-500'), polished.rgba(props.theme.getColor('emerald-500'), 0.7));
1192
+ }
1193
+ if (props.hasError) {
1194
+ return props.theme.themeProp('border-color', props.theme.getColor('red-600'), polished.rgba(props.theme.getColor('red-500'), 0.7));
1195
+ }
1196
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-700'), props.theme.getColor('gray-300'));
1197
+ }};
1198
+ `;
1199
+ const ContentWrapper = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1200
+ display: flex;
1201
+ flex-direction: column;
1202
+ box-sizing: border-box;
1203
+ padding: ${props => props.selected || props.softSelected ? 4 : 0}px;
1204
+ padding-top: 35px;
1205
+ height: 100%;
1206
+ `;
1207
+ const Asset = styled__default["default"].div`
1208
+ display: flex;
1209
+ flex-direction: column;
1210
+ align-items: center;
1211
+ justify-content: flex-start;
1212
+ position: relative;
1213
+ padding: 0 36px;
1214
+ min-height: 200px;
1215
+ box-sizing: border-box;
1216
+
1217
+ video {
1218
+ display: block;
1219
+ }
1220
+
1221
+ .audio {
1222
+ display: flex;
1223
+ justify-content: center;
1224
+ svg {
1225
+ width: 25%;
1226
+ }
1227
+ }
1228
+ `;
1229
+ const Figure = styled__default["default"].figure`
1230
+ position: relative;
1231
+ display: flex;
1232
+ flex-direction: column;
1233
+ justify-content: flex-start;
1234
+ margin: 0;
1235
+
1236
+ img,
1237
+ video,
1238
+ .audio {
1239
+ display: block;
1240
+ max-height: 200px;
1241
+ width: 100%;
1242
+ box-sizing: border-box;
1243
+
1244
+ ${props => props.hasHeightAndWidth ? styled.css`
1245
+ object-fit: cover;
1246
+ ` : styled.css`
1247
+ object-fit: contain;
1248
+ `}
1249
+ }
1250
+
1251
+ .audio {
1252
+ display: flex;
1253
+ height: 200px;
1254
+ justify-content: center;
1255
+ svg {
1256
+ width: 25%;
1257
+ }
1258
+ }
1259
+ `;
1260
+ const FigureOverlayBackdrop = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1261
+ position: absolute;
1262
+ inset: 0;
1263
+ opacity: ${props => props.selected ? 0.6 : 0};
1264
+ background-color: ${props => props.selected ? '#ACCEF7' : 'transparent'};
1265
+ `;
1266
+ const Overlay = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1267
+ position: absolute;
1268
+ top: 0;
1269
+ bottom: 0;
1270
+ left: 0;
1271
+ right: 0;
1272
+ `;
1273
+ const OverlayBackdrop = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1274
+ position: absolute;
1275
+ top: 0;
1276
+ bottom: 0;
1277
+ left: 0;
1278
+ right: 0;
1279
+ opacity: 0;
1280
+ transition: opacity 220ms;
1281
+ ${props => !props.selected ? styled.css`
1282
+ background: radial-gradient(
1283
+ ellipse at center,
1284
+ rgba(0, 0, 0, 0.3) 27%,
1285
+ rgba(0, 0, 0, 0.5) 60%,
1286
+ rgba(0, 0, 0, 0.7) 90%
1287
+ );
1288
+ ` : null}
1289
+
1290
+ ${props => (props.selected || props.softSelected) && styled.css`
1291
+ opacity: 1;
1292
+ `}
1293
+
1294
+ ${Overlay}:hover & {
1295
+ opacity: 1;
1296
+ }
1297
+
1298
+ ${AssetGalleryGridCard$2}:hover & {
1299
+ opacity: 1;
1300
+ }
1301
+ `;
1302
+ const OverlayInfo = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1303
+ position: absolute;
1304
+ top: 0;
1305
+ bottom: 0;
1306
+ left: 0;
1307
+ right: 0;
1308
+ display: flex;
1309
+ flex-direction: column;
1310
+ justify-content: space-between;
1311
+ padding: 15px 12px 10px;
1312
+ color: ${props => props.theme.getColor('gray-100')};
1313
+ `;
1314
+ const OverlaySelected = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1315
+ position: absolute;
1316
+ top: 0;
1317
+ bottom: 0;
1318
+ left: 0;
1319
+ right: 0;
1320
+ pointer-events: none;
1321
+ `;
1322
+ const OverlayInfoTop = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1323
+ position: absolute;
1324
+ left: 0;
1325
+ right: 0;
1326
+ top: 0;
1327
+ padding: 8px;
1328
+ display: flex;
1329
+ `;
1330
+ const OverlayInfoTopVersions = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1331
+ opacity: 1;
1332
+
1333
+ ${AssetGalleryGridCard$2}:hover & {
1334
+ opacity: 0;
1335
+ }
1336
+ `;
1337
+ const OverlayInfoTopWarning = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1338
+ margin-left: auto;
1339
+ height: 24px;
1340
+ width: 24px;
1341
+ border-radius: 50%;
1342
+ box-sizing: border-box;
1343
+ padding: ${props => props.type === 'error' ? 0 : '4px'};
1344
+ background-color: ${props => props.type === 'error' ? props.theme.getColor('red-500') : props.theme.getColor('gray-100')};
1345
+ opacity: 1;
1346
+
1347
+ svg {
1348
+ width: 100%;
1349
+ color: ${props => props.type === 'error' ? props.theme.getColor('gray-100') : props.theme.getColor('gray-700')};
1350
+ }
1351
+
1352
+ ${AssetGalleryGridCard$2}:hover & {
1353
+ opacity: 0;
1354
+ }
1355
+ `;
1356
+ const OverlayInfoTopActions = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1357
+ position: absolute;
1358
+ top: 0;
1359
+ right: 0;
1360
+ padding: 4px;
1361
+ display: flex;
1362
+ flex-direction: column;
1363
+ justify-content: space-between;
1364
+ transition: opacity 220ms;
1365
+ z-index: 99999;
1366
+ ${props => props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-700'))}
1367
+
1368
+ opacity: ${props => props.isCardHovered ? 1 : 0};
1369
+ `;
1370
+ const OverlayInfoBottom = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1371
+ position: absolute;
1372
+ left: 0;
1373
+ right: 0;
1374
+ bottom: 0;
1375
+ padding: 8px;
1376
+ display: flex;
1377
+ `;
1378
+ const OverlayInfoBottomSelectButton = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1379
+ opacity: ${props => props.selected ? 1 : 0};
1380
+ flex-shrink: 0;
1381
+ cursor: pointer;
1382
+ transition: opacity 220ms;
1383
+
1384
+ > svg {
1385
+ width: 23px;
1386
+ height: 100%;
1387
+ transition: opacity 120ms;
1388
+ opacity: ${props => props.selected ? 1 : 0.5};
1389
+ }
1390
+
1391
+ ${Overlay}:hover & {
1392
+ opacity: 1;
1393
+ }
1394
+
1395
+ ${AssetGalleryGridCard$2}:hover & {
1396
+ opacity: 1;
1397
+ }
1398
+ `;
1399
+ const OverlayInfoBottomMediaIcon = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1400
+ margin-left: auto;
1401
+ opacity: 1;
1402
+ ${AssetGalleryGridCard$2}:hover & {
1403
+ opacity: 0;
1404
+ }
1405
+ `;
1406
+ const ConsumerDefinedOverlay = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
1407
+ position: absolute;
1408
+ top: 0;
1409
+ bottom: 0;
1410
+ left: 0;
1411
+ right: 0;
1412
+ pointer-events: none;
1413
+ `;
1414
+ const Fragment = styled__default["default"].div`
1415
+ margin: 4px;
1416
+ `;
1417
+
1418
+ const ComputedRootComponent = ({
1419
+ component,
1420
+ asset,
1421
+ ...props
1422
+ }) => {
1423
+ const newProps = lodash.mapKeys(lodash.omit(props, ['theme', 'extendedSelectMode']), (_, key) => key === 'innerRef' ? 'ref' : key);
1424
+ if (component) {
1425
+ if (!lodash.isFunction(component)) throw Error('Expected a function in component-prop');
1426
+ if (React__default["default"].isValidElement(component(asset, newProps.children))) {
1427
+ return React__default["default"].cloneElement(component(asset, newProps.children), lodash.omit(newProps, ['children']));
1428
+ }
1429
+ }
1430
+ return React__default["default"].createElement(AssetGalleryGridCard$2, _rollupPluginBabelHelpers._extends({
1431
+ ref: newProps.ref
1432
+ }, newProps));
1433
+ };
1434
+ const ComputedActionButton = React__default["default"].forwardRef(function ComputedActionButton({
1435
+ component,
1436
+ className,
1437
+ subActions = [],
1438
+ isSubActionsOpened,
1439
+ ...props
1440
+ }, forwardedRef) {
1441
+ const newProps = props;
1442
+ if (!lodash.isEmpty(subActions)) {
1443
+ const contextMenuItems = subActions.map((subAction, key) => {
1444
+ const {
1445
+ onClick,
1446
+ title,
1447
+ icon
1448
+ } = subAction;
1449
+ return React__default["default"].createElement(ContextMenuItem.ContextMenuItem, {
1450
+ key: key,
1451
+ onClickEffect: onClick,
1452
+ title: title,
1453
+ icon: icon
1454
+ });
1455
+ });
1456
+ const contextMenu = React__default["default"].createElement(ContextMenu.ContextMenu, null, contextMenuItems);
1457
+ newProps.children = React__default["default"].createElement(Popover.Popover, {
1458
+ contextMenu: true,
1459
+ content: contextMenu,
1460
+ placement: 'bottom-end',
1461
+ visible: isSubActionsOpened,
1462
+ zIndex: 10001,
1463
+ offset: [0, -8]
1464
+ }, React__default["default"].createElement(ActionButton.ActionButton, {
1465
+ useShadow: true,
1466
+ active: true,
1467
+ ref: forwardedRef,
1468
+ className: className,
1469
+ icon: newProps.icon,
1470
+ backgroundColors: ['black', 'white'],
1471
+ onClick: newProps.onClick,
1472
+ actionWidthHeight: newProps.actionWidthHeight
1473
+ }));
1474
+ } else {
1475
+ newProps.children = React__default["default"].createElement(ActionButton.ActionButton, {
1476
+ useShadow: true,
1477
+ active: true,
1478
+ ref: forwardedRef,
1479
+ className: className,
1480
+ icon: newProps.icon,
1481
+ onClick: newProps.onClick,
1482
+ backgroundColors: ['black', 'white'],
1483
+ actionWidthHeight: newProps.actionWidthHeight
1484
+ });
1485
+ }
1486
+ if (component) {
1487
+ if (!lodash.isFunction(component)) throw Error('Expected a function in component-prop');
1488
+ if (React__default["default"].isValidElement(component())) {
1489
+ return React__default["default"].cloneElement(component(), {
1490
+ ...lodash.omit(newProps, 'icon')
1491
+ });
1492
+ }
1493
+ }
1494
+ return React__default["default"].createElement(React__default["default"].Fragment, null, newProps.children);
1495
+ });
1496
+ const AssetGalleryGridCard = props => {
1497
+ const {
1498
+ asset,
1499
+ selectable,
1500
+ selected,
1501
+ customSelectedBorder,
1502
+ extendedSelectMode,
1503
+ onAssetSelected,
1504
+ onAssetUnselected,
1505
+ softSelected,
1506
+ component,
1507
+ scrollPosition
1508
+ } = props;
1509
+ const [isCardHovered, setIsCardHovered] = React__default["default"].useState(false);
1510
+ const [openedSubActions, updateOpenedSubActions] = React__default["default"].useState([]);
1511
+ React.useEffect(() => {
1512
+ const newOpenedSubActions = (asset?.actions ?? []).map(() => false);
1513
+ updateOpenedSubActions(newOpenedSubActions);
1514
+ }, [asset]);
1515
+ React.useEffect(() => {
1516
+ if (!isCardHovered && openedSubActions?.length) {
1517
+ updateOpenedSubActions(openedSubActions.map(() => false));
1518
+ }
1519
+ }, [isCardHovered]);
1520
+ const mouseHasEnteredCard = React.useCallback(() => {
1521
+ setIsCardHovered(true);
1522
+ }, []);
1523
+ const mouseHasLeftCard = React.useCallback(() => {
1524
+ setIsCardHovered(false);
1525
+ }, []);
1526
+ const onSubActionsViewToggle = React.useCallback(actionIndex => {
1527
+ const newOpenedSubActions = openedSubActions.map((isOpened, index) => {
1528
+ if (index !== actionIndex) {
1529
+ return false;
1530
+ }
1531
+ return !isOpened;
1532
+ });
1533
+ updateOpenedSubActions(newOpenedSubActions);
1534
+ }, [openedSubActions]);
1535
+ const videoPlayerRef = React.useRef();
1536
+ const cardRef = React.useRef();
1537
+ const dragRef = React.useRef(null);
1538
+ function onMouseEnter(event) {
1539
+ if (videoPlayerRef.current) {
1540
+ const playPromise = videoPlayerRef.current.play();
1541
+ if (playPromise !== undefined) {
1542
+ playPromise.then(() => {}).catch(() => {});
1543
+ }
1544
+ }
1545
+ if (lodash.isFunction(asset.onMouseEnter)) {
1546
+ asset.onMouseEnter(event, asset);
1547
+ }
1548
+ mouseHasEnteredCard();
1549
+ }
1550
+ function onMouseLeave() {
1551
+ if (videoPlayerRef.current) {
1552
+ videoPlayerRef.current.pause();
1553
+ }
1554
+ mouseHasLeftCard();
1555
+ }
1556
+ function onClick(event) {
1557
+ if (extendedSelectMode) {
1558
+ return onSelectClick(event);
1559
+ }
1560
+ if (lodash.isFunction(asset.onClick)) {
1561
+ asset.onClick(event, asset);
1562
+ }
1563
+ }
1564
+ function onSelectClick(event) {
1565
+ event.preventDefault();
1566
+ event.stopPropagation();
1567
+ if (selected) {
1568
+ return onAssetUnselected(asset.key);
1569
+ }
1570
+ return onAssetSelected(asset.key);
1571
+ }
1572
+ const onActionClick = React.useCallback((event, action, index) => {
1573
+ event.preventDefault();
1574
+ event.stopPropagation();
1575
+ if (lodash.isFunction(action?.onClick)) {
1576
+ action.onClick(asset);
1577
+ }
1578
+ if (!lodash.isEmpty(action?.subActions)) {
1579
+ onSubActionsViewToggle(index);
1580
+ }
1581
+ }, [onSubActionsViewToggle]);
1582
+ const shouldOpenSubActions = React.useCallback(actionIndex => openedSubActions[actionIndex], [openedSubActions]);
1583
+ function onContextMenu(event) {
1584
+ event.preventDefault();
1585
+ asset.onContextMenu(event);
1586
+ }
1587
+ function renderPreview(asset) {
1588
+ let previewContent = null;
1589
+ if (asset.fileType?.toLowerCase() === 'video') {
1590
+ previewContent = React__default["default"].createElement(build.exports.LazyLoadComponent, {
1591
+ scrollPosition: scrollPosition
1592
+ }, React__default["default"].createElement("video", {
1593
+ ref: videoPlayerRef,
1594
+ loop: true,
1595
+ muted: true
1596
+ }, React__default["default"].createElement("source", {
1597
+ src: asset.previewUrl,
1598
+ type: "video/mp4"
1599
+ })));
1600
+ } else if (asset.fileType?.toLowerCase() === 'audio') {
1601
+ previewContent = React__default["default"].createElement(build.exports.LazyLoadComponent, {
1602
+ scrollPosition: scrollPosition
1603
+ }, React__default["default"].createElement("div", {
1604
+ className: "audio"
1605
+ }, React__default["default"].createElement(SvgHeadset, null)));
1606
+ } else {
1607
+ previewContent = React__default["default"].createElement(build.exports.LazyLoadImage, {
1608
+ alt: asset.title,
1609
+ src: asset.previewUrl,
1610
+ height: "100%",
1611
+ width: "100%",
1612
+ delayMethod: "debounce",
1613
+ delayTime: 0,
1614
+ threshold: 1500,
1615
+ scrollPosition: scrollPosition
1616
+ });
1617
+ }
1618
+ return React__default["default"].createElement(Figure, {
1619
+ selected: selected
1620
+ }, previewContent, React__default["default"].createElement(FigureOverlayBackdrop, {
1621
+ selected: selected
1622
+ }), React__default["default"].createElement(Overlay, {
1623
+ ref: cardRef
1624
+ }, React__default["default"].createElement(OverlayBackdrop, {
1625
+ $softSelected: softSelected,
1626
+ selected: selected
1627
+ }), React__default["default"].createElement(OverlayInfo, null, React__default["default"].createElement(OverlayInfoTop, null, React__default["default"].createElement(OverlayInfoTopVersions, null, renderVersionsBadge()), asset?.note?.title && React__default["default"].createElement(OverlayInfoTopWarning, {
1628
+ type: asset?.note?.type
1629
+ }, React__default["default"].createElement(Instructions.SvgWarningCircle, null)), React__default["default"].createElement(OverlayInfoTopActions, {
1630
+ isCardHovered: isCardHovered
1631
+ }, asset.actions && asset.actions.map((action, index) => React__default["default"].createElement(Tooltip.Tooltip, {
1632
+ key: `${asset.key}-${action.title}`,
1633
+ content: action.title
1634
+ }, React__default["default"].createElement(Fragment, {
1635
+ key: `${asset.key}-${action.title}`,
1636
+ as: ComputedActionButton,
1637
+ component: action.component,
1638
+ className: action.className,
1639
+ icon: action.icon,
1640
+ isCardHovered: isCardHovered,
1641
+ isSubActionsOpened: shouldOpenSubActions(index),
1642
+ onClick: event => onActionClick(event, action, index),
1643
+ subActions: action?.subActions,
1644
+ actionWidthHeight: action.actionWidthHeight
1645
+ }))))), React__default["default"].createElement(OverlayInfoBottom, null, selectable && React__default["default"].createElement(OverlayInfoBottomSelectButton, {
1646
+ selected: selected
1647
+ }, React__default["default"].createElement(SvgCheckRectangleFilled, {
1648
+ onClick: onSelectClick
1649
+ })), React__default["default"].createElement(OverlayInfoBottomMediaIcon, null, renderMediaBadge()))), selectable && React__default["default"].createElement(OverlaySelected, {
1650
+ selected: selected,
1651
+ $softSelected: softSelected,
1652
+ customSelectedBorder: customSelectedBorder
1653
+ })), asset.overlay && React__default["default"].createElement(ConsumerDefinedOverlay, null, asset.overlay));
1654
+ }
1655
+ React.useEffect(() => {
1656
+ if (lodash.isFunction(asset.onContextMenu)) {
1657
+ if (cardRef.current) {
1658
+ cardRef.current.addEventListener('contextmenu', onContextMenu);
1659
+ }
1660
+ return () => {
1661
+ if (cardRef.current) {
1662
+ cardRef.current.removeEventListener('contextmenu', onContextMenu);
1663
+ }
1664
+ };
1665
+ }
1666
+ }, []);
1667
+ function onDragstart(event) {
1668
+ asset.onDragstart(event);
1669
+ }
1670
+ React.useEffect(() => {
1671
+ if (lodash.isFunction(asset.onDragstart)) {
1672
+ if (dragRef.current) {
1673
+ dragRef.current.addEventListener('dragstart', onDragstart);
1674
+ }
1675
+ return () => {
1676
+ if (dragRef.current) {
1677
+ dragRef.current.removeEventListener('dragstart', onDragstart);
1678
+ }
1679
+ };
1680
+ }
1681
+ }, []);
1682
+ React.useEffect(() => {
1683
+ if (softSelected) {
1684
+ cardRef.current.scrollIntoView({
1685
+ behavior: 'smooth',
1686
+ block: 'nearest'
1687
+ });
1688
+ }
1689
+ }, [softSelected]);
1690
+ const renderVersionsBadge = React.useCallback(() => {
1691
+ if (!asset?.versions) return null;
1692
+ return React__default["default"].createElement(Badge.Badge, {
1693
+ badgeIcon: React__default["default"].createElement(SvgLayers, null),
1694
+ badgeContent: asset.versions,
1695
+ backgroundColors: ['black', 'black'],
1696
+ colors: ['#f7f8f9', '#f7f8f9'],
1697
+ fontSize: 12,
1698
+ fontWeight: 500,
1699
+ lineHeight: 16,
1700
+ verticalPadding: 4,
1701
+ horizontalPadding: 8
1702
+ });
1703
+ }, [asset]);
1704
+ const renderMediaBadge = React.useCallback(() => {
1705
+ let badgeIcon = null;
1706
+ let badgeContent = null;
1707
+ if (asset?.fileType === 'video') {
1708
+ badgeIcon = React__default["default"].createElement(SvgPlay, null);
1709
+ }
1710
+ if (asset?.duration) {
1711
+ badgeContent = convertMsToHMS(asset.duration);
1712
+ }
1713
+ if (!badgeIcon && !badgeContent) return null;
1714
+ return React__default["default"].createElement(Badge.Badge, {
1715
+ badgeIcon: badgeIcon,
1716
+ badgeContent: badgeContent,
1717
+ backgroundColors: ['black', 'black'],
1718
+ colors: ['#f7f8f9', '#f7f8f9'],
1719
+ fontSize: 12,
1720
+ fontWeight: 500,
1721
+ lineHeight: 16,
1722
+ verticalPadding: 4,
1723
+ horizontalPadding: 8,
1724
+ minWidth: 32,
1725
+ height: 24
1726
+ });
1727
+ }, [asset]);
1728
+ const renderSummary = React.useCallback(() => {
1729
+ return React__default["default"].createElement(SummaryCard, {
1730
+ activeSummaryCard: true,
1731
+ title: asset?.title || '',
1732
+ description: asset?.description || '',
1733
+ instructions: asset?.imageRights || '',
1734
+ instructionsType: 'warning',
1735
+ footerLeft: asset?.summary?.footerLeft || '',
1736
+ footerRight: asset?.summary?.footerRight || '',
1737
+ compact: false
1738
+ });
1739
+ }, [asset]);
1740
+ return React__default["default"].createElement(AssetGalleryWrapper, {
1741
+ disabled: asset.disabled
1742
+ }, React__default["default"].createElement(AssetGalleryGridCard$2, {
1743
+ as: ComputedRootComponent,
1744
+ component: component,
1745
+ asset: asset,
1746
+ disabled: asset.disabled,
1747
+ onClick: onClick,
1748
+ extendedSelectMode: extendedSelectMode,
1749
+ onMouseEnter: onMouseEnter,
1750
+ onMouseLeave: onMouseLeave,
1751
+ draggable: asset.draggable,
1752
+ innerRef: dragRef,
1753
+ selected: selected,
1754
+ $softSelected: softSelected,
1755
+ completed: asset?.completed,
1756
+ $hasError: asset?.hasError,
1757
+ customSelectedBorder: customSelectedBorder
1758
+ }, React__default["default"].createElement(ContentWrapper, {
1759
+ layout: asset.layout,
1760
+ ref: cardRef,
1761
+ $softSelected: softSelected,
1762
+ selected: selected,
1763
+ customSelectedBorder: customSelectedBorder
1764
+ }, React__default["default"].createElement(Asset, {
1765
+ "data-id": "ss",
1766
+ selected: selected
1767
+ }, asset.previewUrl && renderPreview(asset)), renderSummary())));
1768
+ };
1769
+ AssetGalleryGridCard.propTypes = process.env.NODE_ENV !== "production" ? {
1770
+ asset: defaultTheme.PropTypes.shape(assetShapeWithLayout).isRequired,
1771
+ selectable: defaultTheme.PropTypes.bool,
1772
+ selected: defaultTheme.PropTypes.bool,
1773
+ customSelectedBorder: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.string),
1774
+ extendedSelectMode: defaultTheme.PropTypes.bool,
1775
+ onAssetSelected: defaultTheme.PropTypes.func.isRequired,
1776
+ onAssetUnselected: defaultTheme.PropTypes.func.isRequired,
1777
+ softSelected: defaultTheme.PropTypes.bool.isRequired,
1778
+ component: defaultTheme.PropTypes.func,
1779
+ scrollPosition: defaultTheme.PropTypes.number
1780
+ } : {};
1781
+ AssetGalleryGridCard.defaultProps = {};
1782
+ var AssetGalleryGridCard$1 = build.exports.trackWindowScroll(React__default["default"].memo(AssetGalleryGridCard, (prevProps, nextProps) => {
1783
+ const reactiveProps = ['selectable', 'selected', 'extendedSelectMode', 'softSelected', 'asset.previewUrl', 'asset.overlay', 'asset.layout'];
1784
+ return reactiveProps.every(propKey => lodash.get(prevProps, propKey) === lodash.get(nextProps, propKey));
1785
+ }));
1786
+
1787
+ const AssetGalleryBase = React__default["default"].forwardRef(function AssetGalleryBase({
1788
+ assets: assetsProp,
1789
+ activeSummaryCard,
1790
+ displayIcon,
1791
+ viewMode,
1792
+ thumbnailMaxHeight,
1793
+ selectable,
1794
+ customSelectedBorder,
1795
+ selectedAssetKeys,
1796
+ onAssetSelected,
1797
+ onAssetUnselected,
1798
+ softSelectable,
1799
+ softSelectedAssetKey,
1800
+ scrollElement: scrollElementProp,
1801
+ onAssetSoftSelectedChanged,
1802
+ component,
1803
+ ...props
1804
+ }, forwardedRef) {
1805
+ const assetGalleryDOMNode = React.useRef();
1806
+ const assetGalleryCompactRef = useMergedRefs__default["default"](forwardedRef, assetGalleryDOMNode);
1807
+ const assetGalleryWidth = React.useRef(0);
1808
+ const minimumRowAspectRatio = React.useRef(0);
1809
+ const calculatedAssets = React.useRef([]);
1810
+ const [assets, setAssets] = React.useState([]);
1811
+ const MAXIMUM_ROW_HEIGHT = React.useMemo(() => viewMode === 'grid' ? 450 : thumbnailMaxHeight, [viewMode, thumbnailMaxHeight]);
1812
+ const SPACE_BETWEEN_ASSETS = 8;
1813
+ const SPACE_UNDER_ASSETS = 8;
1814
+ const PRIMARY_SCROLL_BUFFER_HEIGHT = 1500;
1815
+ const SECONDARY_SCROLL_BUFFER_HEIGHT = 500;
1816
+ const GRID_VIEW_MODE_ASSET_MIN_WIDTH = 300;
1817
+ const GRID_VIEW_MODE_ASSET_HEIGHT = 427;
1818
+ const MISSING_WIDTH_PLACEHOLDER = 1920;
1819
+ const MISSING_HEIGHT_PLACEHOLDER = 1080;
1820
+ const isBrowser = typeof window !== 'undefined';
1821
+ const scrollElement = scrollElementProp || window;
1822
+ const previousYOffset = React.useRef(isBrowser ? scrollElement.pageYOffset : 0);
1823
+ const latestYOffset = React.useRef(isBrowser ? scrollElement.pageYOffset : 0);
1824
+ const scrollDirection = React.useRef('down');
1825
+ MultiLevelCheckboxSelect.useIsomorphicLayoutEffect(() => {
1826
+ if (!assetGalleryDOMNode.current) return;
1827
+ const throttledOnResize = lodash.throttle(onResize, 1);
1828
+ const resizeObserver = new ResizeObserver__default["default"](throttledOnResize);
1829
+ resizeObserver.observe(assetGalleryDOMNode.current);
1830
+ function onResize(entries) {
1831
+ entries.forEach(entry => {
1832
+ if (assetGalleryWidth.current === entry.contentRect.width) return;
1833
+ window.requestAnimationFrame(() => {
1834
+ assetGalleryWidth.current = entry.contentRect.width;
1835
+ main();
1836
+ });
1837
+ });
1838
+ }
1839
+ return () => {
1840
+ resizeObserver.unobserve(assetGalleryDOMNode.current);
1841
+ };
1842
+ }, [assetsProp, assetGalleryDOMNode, MAXIMUM_ROW_HEIGHT]);
1843
+ React.useEffect(() => {
1844
+ main();
1845
+ }, [MAXIMUM_ROW_HEIGHT, assetsProp]);
1846
+ const main = () => {
1847
+ calculateAssetGalleryAspectRatio();
1848
+ calculateLayout();
1849
+ calculateVisibility();
1850
+ };
1851
+ const calculateAssetGalleryAspectRatio = () => {
1852
+ if (assetGalleryWidth.current > 0) {
1853
+ minimumRowAspectRatio.current = calculateAspectRatio(assetGalleryWidth.current, MAXIMUM_ROW_HEIGHT);
1854
+ }
1855
+ };
1856
+ const calculateLayout = () => {
1857
+ const assetsWithoutAKey = assetsProp.filter(a => !a.key);
1858
+ if (assetsWithoutAKey.length > 0) {
1859
+ assetsProp = assetsProp.filter(a => a.key);
1860
+ assetsWithoutAKey.forEach(a => console.warn('Omitted asset from the gallery because it was missing the unique `key` property.', a));
1861
+ }
1862
+ if (viewMode === 'grid' && assetGalleryWidth.current > 0) {
1863
+ let row = [];
1864
+ let translateX = 0;
1865
+ let translateY = 0;
1866
+ const computedAssets = [];
1867
+ let lastGroup = null;
1868
+ const desiredAssetCountInRow = Math.floor(assetGalleryWidth.current / GRID_VIEW_MODE_ASSET_MIN_WIDTH) || 1;
1869
+ const desiredAssetWidth = assetGalleryWidth.current / desiredAssetCountInRow - SPACE_BETWEEN_ASSETS + SPACE_BETWEEN_ASSETS / desiredAssetCountInRow;
1870
+ assetsProp.forEach((asset, index) => {
1871
+ if (asset.group && asset.group !== lastGroup) {
1872
+ computedAssets.push({
1873
+ title: asset.group,
1874
+ key: asset.key,
1875
+ layout: {
1876
+ type: 'groupLabel',
1877
+ height: 50,
1878
+ translateX: Math.round(translateX),
1879
+ translateY: Math.round(translateY)
1880
+ }
1881
+ });
1882
+ lastGroup = asset.group;
1883
+ translateY += 50 + SPACE_UNDER_ASSETS;
1884
+ }
1885
+ row.push(asset);
1886
+ if (row.length === desiredAssetCountInRow || index + 1 === assetsProp.length || assetsProp[index + 1]?.group && assetsProp[index + 1].group !== asset.group) {
1887
+ row.forEach(rowAsset => {
1888
+ computedAssets.push({
1889
+ ...rowAsset,
1890
+ layout: {
1891
+ type: 'asset',
1892
+ width: Math.round(desiredAssetWidth),
1893
+ height: Math.round(GRID_VIEW_MODE_ASSET_HEIGHT),
1894
+ translateX: Math.round(translateX),
1895
+ translateY: Math.round(translateY)
1896
+ }
1897
+ });
1898
+ translateX += desiredAssetWidth + SPACE_BETWEEN_ASSETS;
1899
+ });
1900
+ row = [];
1901
+ translateX = 0;
1902
+ translateY += GRID_VIEW_MODE_ASSET_HEIGHT + SPACE_UNDER_ASSETS;
1903
+ }
1904
+ });
1905
+ calculatedAssets.current = computedAssets;
1906
+ } else {
1907
+ if (minimumRowAspectRatio.current > 0) {
1908
+ let row = [];
1909
+ let translateX = 0;
1910
+ let translateY = 0;
1911
+ let rowAspectRatio = 0;
1912
+ let lastGroup = null;
1913
+ const computedAssets = [];
1914
+ assetsProp.forEach((asset, index) => {
1915
+ if (asset.group && asset.group !== lastGroup) {
1916
+ computedAssets.push({
1917
+ title: asset.group,
1918
+ key: asset.key,
1919
+ layout: {
1920
+ type: 'groupLabel',
1921
+ height: 50,
1922
+ translateX: Math.round(translateX),
1923
+ translateY: Math.round(translateY)
1924
+ }
1925
+ });
1926
+ lastGroup = asset.group;
1927
+ translateY += 50 + SPACE_UNDER_ASSETS;
1928
+ }
1929
+ rowAspectRatio += calculateAspectRatio(asset.width || MISSING_WIDTH_PLACEHOLDER, asset.height || MISSING_HEIGHT_PLACEHOLDER);
1930
+ row.push(asset);
1931
+ if (rowAspectRatio >= minimumRowAspectRatio.current || index + 1 === assetsProp.length || assetsProp[index + 1]?.group && assetsProp[index + 1].group !== asset.group) {
1932
+ rowAspectRatio = Math.max(rowAspectRatio, minimumRowAspectRatio.current);
1933
+ const totalDesiredWidthOfImages = assetGalleryWidth.current - SPACE_BETWEEN_ASSETS * (row.length - 1);
1934
+ const rowHeight = totalDesiredWidthOfImages / rowAspectRatio;
1935
+ row.forEach(rowAsset => {
1936
+ const assetWidth = rowHeight * calculateAspectRatio(rowAsset.width || MISSING_WIDTH_PLACEHOLDER, rowAsset.height || MISSING_HEIGHT_PLACEHOLDER);
1937
+ computedAssets.push({
1938
+ ...rowAsset,
1939
+ layout: {
1940
+ type: 'asset',
1941
+ width: Math.round(assetWidth),
1942
+ height: Math.round(rowHeight),
1943
+ translateX: Math.round(translateX),
1944
+ translateY: Math.round(translateY),
1945
+ hasHeightAndWidth: Boolean(rowAsset.width && rowAsset.height)
1946
+ }
1947
+ });
1948
+ translateX += assetWidth + SPACE_BETWEEN_ASSETS;
1949
+ });
1950
+ row = [];
1951
+ rowAspectRatio = 0;
1952
+ translateY += rowHeight + SPACE_UNDER_ASSETS;
1953
+ translateX = 0;
1954
+ }
1955
+ });
1956
+ calculatedAssets.current = computedAssets;
1957
+ }
1958
+ }
1959
+ };
1960
+ function calculateAspectRatio(width, height) {
1961
+ return width / height;
1962
+ }
1963
+ const totalGalleryHeight = React.useMemo(() => {
1964
+ if (assets.length === 0) {
1965
+ return 0;
1966
+ }
1967
+ const lastAsset = assets[assets.length - 1];
1968
+ if (assets.length < 8) {
1969
+ return (lastAsset.layout.translateY + lastAsset.layout.height) * 2;
1970
+ }
1971
+ return lastAsset.layout.translateY + lastAsset.layout.height;
1972
+ }, [assets]);
1973
+ React.useEffect(() => {
1974
+ const throttledOnScroll = lodash.throttle(onScroll, 200);
1975
+ scrollElement.addEventListener('scroll', throttledOnScroll, false);
1976
+ return () => scrollElement.removeEventListener('scroll', throttledOnScroll, false);
1977
+ }, [assetGalleryDOMNode, calculatedAssets]);
1978
+ function onScroll() {
1979
+ setScrollPositionAndDirection();
1980
+ calculateVisibility();
1981
+ }
1982
+ function setScrollPositionAndDirection() {
1983
+ const newYOffset = scrollElement.pageYOffset;
1984
+ previousYOffset.current = latestYOffset.current;
1985
+ latestYOffset.current = newYOffset;
1986
+ scrollDirection.current = latestYOffset.current > previousYOffset.current ? 'down' : 'up';
1987
+ }
1988
+ const calculateVisibility = () => {
1989
+ if (!assetGalleryDOMNode.current) return;
1990
+ const bufferTop = scrollDirection.current === 'up' ? PRIMARY_SCROLL_BUFFER_HEIGHT : SECONDARY_SCROLL_BUFFER_HEIGHT;
1991
+ const bufferBottom = scrollDirection.current === 'up' ? SECONDARY_SCROLL_BUFFER_HEIGHT : PRIMARY_SCROLL_BUFFER_HEIGHT;
1992
+ const containerOffset = getOffsetTop(assetGalleryDOMNode.current);
1993
+ const scrollerHeight = scrollElement.innerHeight;
1994
+ const yOffset = latestYOffset.current;
1995
+ const minTranslateYPlusHeight = yOffset - containerOffset - bufferTop;
1996
+ const maxTranslateY = yOffset - containerOffset + scrollerHeight + bufferBottom;
1997
+ const finalizedAssets = calculatedAssets.current.map(asset => {
1998
+ if (scrollElement.self == window && (asset.layout.translateY + asset.layout.height < minTranslateYPlusHeight || asset.layout.translateY > maxTranslateY)) {
1999
+ asset.layout.show = false;
2000
+ } else {
2001
+ asset.layout.show = true;
2002
+ }
2003
+ return asset;
2004
+ });
2005
+ setAssets(finalizedAssets);
2006
+ };
2007
+ function getOffsetTop(elem) {
2008
+ let offsetTop = 0;
2009
+ do {
2010
+ if (!isNaN(elem.offsetTop)) {
2011
+ offsetTop += elem.offsetTop;
2012
+ }
2013
+ elem = elem.offsetParent;
2014
+ } while (elem);
2015
+ return offsetTop;
2016
+ }
2017
+ const handleKeyPress = React.useCallback(e => {
2018
+ function isElementVisible(el) {
2019
+ const rect = el.getBoundingClientRect(),
2020
+ vWidth = scrollElement.innerWidth || document.documentElement.clientWidth,
2021
+ vHeight = scrollElement.innerHeight || document.documentElement.clientHeight,
2022
+ efp = function (x, y) {
2023
+ return document.elementFromPoint(x, y);
2024
+ };
2025
+ if (rect.right < 0 || rect.bottom < 0 || rect.left > vWidth || rect.top > vHeight) return false;
2026
+ return el.contains(efp(rect.left, rect.top)) || el.contains(efp(rect.right, rect.top)) || el.contains(efp(rect.right, rect.bottom)) || el.contains(efp(rect.left, rect.bottom));
2027
+ }
2028
+ function softSelectFirstVisibleAsset() {
2029
+ const visibleAssets = assets.filter(asset => asset.layout.show);
2030
+ for (let i = 0; i < assetGalleryDOMNode.current.children.length; i++) {
2031
+ if (isElementVisible(assetGalleryDOMNode.current.children[i])) {
2032
+ onAssetSoftSelectedChanged(visibleAssets[i].key);
2033
+ break;
2034
+ }
2035
+ }
2036
+ }
2037
+ if (assets.length === 0) return;
2038
+ if (e.key === 'ArrowLeft' || e.key === 'ArrowRight') {
2039
+ if (softSelectedAssetKey === null) {
2040
+ softSelectFirstVisibleAsset();
2041
+ return;
2042
+ }
2043
+ }
2044
+ if (e.key === 'ArrowLeft') {
2045
+ const previousAssetIndex = assets.findIndex(asset => asset.key === softSelectedAssetKey) - 1;
2046
+ const previousAsset = assets[previousAssetIndex];
2047
+ if (previousAsset) {
2048
+ if (previousAsset.layout.show) {
2049
+ onAssetSoftSelectedChanged(previousAsset.key);
2050
+ } else {
2051
+ softSelectFirstVisibleAsset();
2052
+ }
2053
+ }
2054
+ return;
2055
+ }
2056
+ if (e.key === 'ArrowRight') {
2057
+ const nextAssetIndex = assets.findIndex(asset => asset.key === softSelectedAssetKey) + 1;
2058
+ const nextAsset = assets[nextAssetIndex];
2059
+ if (nextAsset) {
2060
+ if (nextAsset.layout.show) {
2061
+ onAssetSoftSelectedChanged(nextAsset.key);
2062
+ } else {
2063
+ softSelectFirstVisibleAsset();
2064
+ }
2065
+ }
2066
+ return;
2067
+ }
2068
+ if (e.key === 'Enter') {
2069
+ if (softSelectedAssetKey === null) return;
2070
+ if (selectedAssetKeys.includes(softSelectedAssetKey)) {
2071
+ onAssetUnselected(softSelectedAssetKey);
2072
+ } else {
2073
+ onAssetSelected(softSelectedAssetKey);
2074
+ }
2075
+ }
2076
+ }, [assets, softSelectedAssetKey, onAssetSoftSelectedChanged, selectedAssetKeys, assetGalleryCompactRef]);
2077
+ const handleClick = React.useCallback(() => {
2078
+ onAssetSoftSelectedChanged(null);
2079
+ }, []);
2080
+ React.useEffect(() => {
2081
+ if (softSelectable) {
2082
+ document.addEventListener('keydown', handleKeyPress);
2083
+ }
2084
+ return () => document.removeEventListener('keydown', handleKeyPress);
2085
+ }, [softSelectable, handleKeyPress]);
2086
+ React.useEffect(() => {
2087
+ if (softSelectable && softSelectedAssetKey !== null) {
2088
+ document.addEventListener('click', handleClick, true);
2089
+ }
2090
+ return () => document.removeEventListener('click', handleClick, true);
2091
+ }, [softSelectable, softSelectedAssetKey, handleClick]);
2092
+ return React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(AssetGalleryBase$1, _rollupPluginBabelHelpers._extends({
2093
+ ref: assetGalleryCompactRef,
2094
+ style: {
2095
+ height: `${totalGalleryHeight}px`
2096
+ },
2097
+ className: props.className
2098
+ }, props), assets.map(asset => asset.layout.show && React__default["default"].createElement(React__default["default"].Fragment, {
2099
+ key: `asset-gallery-${asset.layout.type}-${asset.key}`
2100
+ }, asset.layout.type === 'groupLabel' && React__default["default"].createElement(GroupLabel, {
2101
+ style: {
2102
+ transform: `translate3d(${asset.layout.translateX}px,${asset.layout.translateY}px, 0)`,
2103
+ height: `${asset.layout.height}px`
2104
+ }
2105
+ }, asset.title), asset.layout.type === 'asset' && React__default["default"].createElement(AssetGalleryCardBase, {
2106
+ style: {
2107
+ transform: `translate3d(${asset.layout.translateX}px, ${asset.layout.translateY}px, 0)`,
2108
+ width: `${asset.layout.width}px`,
2109
+ height: `${asset.layout.height}px`,
2110
+ display: 'flex',
2111
+ justifyContent: 'center'
2112
+ }
2113
+ }, viewMode === 'grid' ? React__default["default"].createElement(AssetGalleryGridCard$1, {
2114
+ asset: asset,
2115
+ selectable: 'selectable' in asset ? asset.selectable : selectable,
2116
+ selected: selectedAssetKeys.includes(asset.key),
2117
+ customSelectedBorder: customSelectedBorder,
2118
+ extendedSelectMode: Boolean(selectedAssetKeys.length),
2119
+ onAssetSelected: onAssetSelected,
2120
+ onAssetUnselected: onAssetUnselected,
2121
+ $softSelected: softSelectedAssetKey === asset.key,
2122
+ component: component
2123
+ }) : React__default["default"].createElement(AssetGalleryCompactCard$1, {
2124
+ asset: asset,
2125
+ activeSummaryCard: activeSummaryCard,
2126
+ displayIcon: displayIcon,
2127
+ $hasHeightAndWidth: asset.layout.hasHeightAndWidth,
2128
+ $collapseExtraInfo: asset.layout.width < 90,
2129
+ selectable: 'selectable' in asset ? asset.selectable : selectable,
2130
+ selected: selectedAssetKeys.includes(asset.key),
2131
+ customSelectedBorder: customSelectedBorder,
2132
+ extendedSelectMode: Boolean(selectedAssetKeys.length),
2133
+ onAssetSelected: onAssetSelected,
2134
+ onAssetUnselected: onAssetUnselected,
2135
+ $softSelected: softSelectedAssetKey === asset.key,
2136
+ component: component
2137
+ }))))));
2138
+ });
2139
+ AssetGalleryBase.propTypes = process.env.NODE_ENV !== "production" ? {
2140
+ assets: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.shape(assetShape)),
2141
+ activeSummaryCard: defaultTheme.PropTypes.bool,
2142
+ displayIcon: defaultTheme.PropTypes.string,
2143
+ viewMode: defaultTheme.PropTypes.oneOf(['compact', 'grid']),
2144
+ thumbnailMaxHeight: defaultTheme.PropTypes.number,
2145
+ selectable: defaultTheme.PropTypes.bool,
2146
+ customSelectedBorder: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.string),
2147
+ selectedAssetKeys: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.string), defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.number)]).isRequired,
2148
+ scrollElement: defaultTheme.PropTypes.instanceOf(Element),
2149
+ onAssetSelected: defaultTheme.PropTypes.func.isRequired,
2150
+ onAssetUnselected: defaultTheme.PropTypes.func.isRequired,
2151
+ softSelectable: defaultTheme.PropTypes.bool,
2152
+ softSelectedAssetKey: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.string, defaultTheme.PropTypes.number]),
2153
+ onAssetSoftSelectedChanged: defaultTheme.PropTypes.func.isRequired,
2154
+ component: defaultTheme.PropTypes.func,
2155
+ className: defaultTheme.PropTypes.string
2156
+ } : {};
2157
+
2158
+ const AssetGallery = React__default["default"].forwardRef(function AssetGallery({
2159
+ assets,
2160
+ activeSummaryCard,
2161
+ viewMode,
2162
+ thumbnailMaxHeight,
2163
+ selectable,
2164
+ customSelectedBorder,
2165
+ selectedAssetKeys,
2166
+ onSelectedChanged,
2167
+ softSelectable,
2168
+ scrollElement,
2169
+ onSoftSelectedChanged,
2170
+ component,
2171
+ displayIcon,
2172
+ ...props
2173
+ }, forwardedRef) {
2174
+ const [selectedAssetKeysInternalState, setSelectedAssetKeysInternalState] = React.useState(selectedAssetKeys || []);
2175
+ const [softSelectedAssetKeyInternalState, setSoftSelectedAssetKeyInternalState] = React.useState(null);
2176
+ React.useEffect(() => {
2177
+ setSelectedAssetKeysInternalState(selectedAssetKeys || []);
2178
+ }, [selectedAssetKeys]);
2179
+ React.useEffect(() => {
2180
+ setSelectedAssetKeysInternalState(current => {
2181
+ return current.filter(c => assets.some(a => a.key === c));
2182
+ });
2183
+ }, [assets.length]);
2184
+ React.useEffect(() => {
2185
+ if (selectedAssetKeys === selectedAssetKeysInternalState) return;
2186
+ if (lodash.isFunction(onSelectedChanged)) {
2187
+ onSelectedChanged(selectedAssetKeysInternalState);
2188
+ }
2189
+ }, [selectedAssetKeysInternalState]);
2190
+ React.useEffect(() => {
2191
+ if (lodash.isFunction(onSoftSelectedChanged)) {
2192
+ onSoftSelectedChanged(softSelectedAssetKeyInternalState);
2193
+ }
2194
+ }, [softSelectedAssetKeyInternalState]);
2195
+ const onSelected = React.useCallback(assetKey => {
2196
+ setSelectedAssetKeysInternalState(currentState => [...currentState, assetKey]);
2197
+ }, []);
2198
+ const onUnselected = React.useCallback(assetKey => {
2199
+ setSelectedAssetKeysInternalState(currentState => currentState.filter(filteredAssetKey => filteredAssetKey !== assetKey));
2200
+ }, []);
2201
+ const onAssetSoftSelectedChanged = React.useCallback((assetKey = null) => {
2202
+ setSoftSelectedAssetKeyInternalState(assetKey);
2203
+ }, []);
2204
+ return React__default["default"].createElement(AssetGalleryBase, _rollupPluginBabelHelpers._extends({
2205
+ ref: forwardedRef,
2206
+ assets: assets,
2207
+ activeSummaryCard: activeSummaryCard,
2208
+ displayIcon: displayIcon,
2209
+ thumbnailMaxHeight: thumbnailMaxHeight,
2210
+ selectable: selectable,
2211
+ customSelectedBorder: customSelectedBorder,
2212
+ selectedAssetKeys: selectedAssetKeysInternalState,
2213
+ onAssetSelected: onSelected,
2214
+ onAssetUnselected: onUnselected,
2215
+ softSelectable: softSelectable,
2216
+ softSelectedAssetKey: softSelectedAssetKeyInternalState,
2217
+ scrollElement: scrollElement,
2218
+ onAssetSoftSelectedChanged: onAssetSoftSelectedChanged,
2219
+ component: component,
2220
+ viewMode: viewMode
2221
+ }, props));
2222
+ });
2223
+ AssetGallery.propTypes = process.env.NODE_ENV !== "production" ? {
2224
+ assets: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.shape(assetShape)),
2225
+ displayIcon: defaultTheme.PropTypes.string,
2226
+ activeSummaryCard: defaultTheme.PropTypes.bool,
2227
+ viewMode: defaultTheme.PropTypes.oneOf(['compact', 'grid']),
2228
+ thumbnailMaxHeight: defaultTheme.PropTypes.number,
2229
+ selectable: defaultTheme.PropTypes.bool,
2230
+ customSelectedBorder: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.string),
2231
+ selectedAssetKeys: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.string), defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.number)]),
2232
+ onSelectedChanged: defaultTheme.PropTypes.func,
2233
+ softSelectable: defaultTheme.PropTypes.bool,
2234
+ scrollElement: defaultTheme.PropTypes.instanceOf(Element),
2235
+ onSoftSelectedChanged: defaultTheme.PropTypes.func,
2236
+ component: defaultTheme.PropTypes.func
2237
+ } : {};
2238
+ AssetGallery.defaultProps = {
2239
+ assets: [],
2240
+ viewMode: 'compact',
2241
+ thumbnailMaxHeight: 300,
2242
+ selectedAssetKeys: [],
2243
+ customSelectedBorder: [],
2244
+ activeSummaryCard: false,
2245
+ displayIcon: ''
2246
+ };
2247
+
2248
+ const AssetAction$2 = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
2249
+ font-family: ${props => props.theme.primaryFontFamily};
2250
+ `;
2251
+ const AssetActionButton = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
2252
+ border-radius: 50%;
2253
+ width: ${props => props.actionWidthHeight ? `${props.actionWidthHeight[0]}px` : 'auto'};
2254
+ height: ${props => props.actionWidthHeight ? `${props.actionWidthHeight[1]}px` : 'auto'};
2255
+ cursor: pointer;
2256
+ display: flex;
2257
+ justify-content: center;
2258
+ align-items: center;
2259
+ box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
2260
+ ${props => props.theme.themeProp('background-color', props.theme.getColor('gray-900'), props.theme.getColor('white'))};
2261
+ svg {
2262
+ pointer-events: none;
2263
+ width: ${props => props.actionWidthHeight ? `${props.actionWidthHeight[0] - 14}px` : 'auto'};
2264
+ height: ${props => props.actionWidthHeight ? `${props.actionWidthHeight[1] - 14}px` : 'auto'};
2265
+ ${props => props.theme.themeProp('color', props.theme.getColor('gray-900'), props.theme.getColor('white'))};
2266
+ }
2267
+ `;
2268
+ const ActionTitle = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
2269
+ font-size: 14px;
2270
+ border-radius: 4px;
2271
+ padding: 8px 12px;
2272
+ white-space: nowrap;
2273
+ color: white;
2274
+ background: ${props => props.theme.getColor('gray-700')};
2275
+ `;
2276
+ const StyledFloatingArrow = styled__default["default"](react.FloatingArrow).attrs(defaultTheme.applyDefaultTheme)`
2277
+ fill: ${props => props.theme.getColor('gray-700')};
2278
+ `;
2279
+ const Floating = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
2280
+ pointer-events: none;
2281
+ `;
2282
+
2283
+ const AssetAction = React__default["default"].forwardRef(function AssetAction({
2284
+ action,
2285
+ asset,
2286
+ itemKey,
2287
+ ...props
2288
+ }, forwardedRef) {
2289
+ const ARROW_WIDTH = 10;
2290
+ const ARROW_HEIGHT = 5;
2291
+ const GAP = 3;
2292
+ const arrowRef = React.useRef(null);
2293
+ const [isOpen, setIsOpen] = React.useState(false);
2294
+ const [placement] = React.useState('bottom');
2295
+ const {
2296
+ refs,
2297
+ floatingStyles,
2298
+ context
2299
+ } = react.useFloating({
2300
+ placement,
2301
+ open: isOpen,
2302
+ onOpenChange: setIsOpen,
2303
+ whileElementsMounted: react.autoUpdate,
2304
+ middleware: [react.offset(ARROW_HEIGHT + GAP), react.flip({
2305
+ padding: 5
2306
+ }), react.shift({
2307
+ padding: 5
2308
+ }), react.arrow({
2309
+ element: arrowRef
2310
+ })]
2311
+ });
2312
+ const {
2313
+ isMounted,
2314
+ styles
2315
+ } = react.useTransitionStyles(context, {
2316
+ initial: {
2317
+ transform: 'translateY(-8px)',
2318
+ opacity: 0
2319
+ },
2320
+ duration: {
2321
+ open: 200,
2322
+ close: 100
2323
+ }
2324
+ });
2325
+ const hover = react.useHover(context);
2326
+ const dismiss = react.useDismiss(context, {
2327
+ referencePress: true
2328
+ });
2329
+ const {
2330
+ getReferenceProps,
2331
+ getFloatingProps
2332
+ } = react.useInteractions([dismiss, hover]);
2333
+ const onActionClick = React.useCallback((e, action) => {
2334
+ e.preventDefault();
2335
+ e.stopPropagation();
2336
+ if (lodash.isFunction(action?.onClick)) {
2337
+ action.onClick(asset);
2338
+ }
2339
+ }, [action]);
2340
+ return React__default["default"].createElement(AssetAction$2, _rollupPluginBabelHelpers._extends({
2341
+ ref: forwardedRef
2342
+ }, props), React__default["default"].createElement(AssetActionButton, _rollupPluginBabelHelpers._extends({
2343
+ key: itemKey,
2344
+ ref: refs.setReference
2345
+ }, getReferenceProps(), {
2346
+ onClick: e => onActionClick(e, action.onClick(asset), itemKey),
2347
+ actionWidthHeight: action.actionWidthHeight
2348
+ }), action.icon), isOpen && isMounted && React__default["default"].createElement(Floating, _rollupPluginBabelHelpers._extends({
2349
+ className: "floating",
2350
+ ref: refs.setFloating,
2351
+ style: floatingStyles
2352
+ }, getFloatingProps()), React__default["default"].createElement(ActionTitle, {
2353
+ style: styles
2354
+ }, action.title), React__default["default"].createElement(StyledFloatingArrow, {
2355
+ ref: arrowRef,
2356
+ context: context,
2357
+ width: ARROW_WIDTH,
2358
+ height: ARROW_HEIGHT
2359
+ })));
2360
+ });
2361
+ AssetAction.propTypes = process.env.NODE_ENV !== "production" ? {
2362
+ action: defaultTheme.PropTypes.shape({
2363
+ icon: defaultTheme.PropTypes.node,
2364
+ onClick: defaultTheme.PropTypes.func,
2365
+ actionWidthHeight: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.number),
2366
+ title: defaultTheme.PropTypes.string
2367
+ }),
2368
+ asset: defaultTheme.PropTypes.object,
2369
+ itemKey: defaultTheme.PropTypes.string
2370
+ } : {};
2371
+ AssetAction.defaultProps = {};
2372
+ var AssetAction$1 = AssetAction;
2373
+
2374
+ exports.AssetAction = AssetAction$1;
2375
+ exports.AssetActionsBase = AssetActionsBase;
2376
+ exports.AssetGallery = AssetGallery;
2377
+ exports.SummaryCard = SummaryCard;