@ntbjs/react-components 1.3.0-rc.9 → 2.0.0-rc.5

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 (504) hide show
  1. package/.eslintrc +7 -8
  2. package/cjs/_virtual/_rollupPluginBabelHelpers.js +84 -0
  3. package/cjs/_virtual/index.js +7 -0
  4. package/cjs/_virtual/index2.js +7 -0
  5. package/cjs/_virtual/index3.js +7 -0
  6. package/cjs/_virtual/index4.js +7 -0
  7. package/cjs/_virtual/react-dom.development.js +7 -0
  8. package/cjs/_virtual/react-dom.production.js +7 -0
  9. package/cjs/_virtual/react-is.development.js +7 -0
  10. package/cjs/_virtual/react-is.production.min.js +7 -0
  11. package/cjs/_virtual/react.development.js +7 -0
  12. package/cjs/_virtual/react.production.js +7 -0
  13. package/cjs/components/data/Alert/Alert.js +81 -0
  14. package/cjs/components/data/Alert/Alert.styled.js +72 -0
  15. package/cjs/components/data/Alert/data/Alert/index.js +9 -0
  16. package/cjs/components/data/Badge/Badge.js +93 -0
  17. package/cjs/components/data/Badge/Badge.styled.js +156 -0
  18. package/cjs/components/data/Badge/data/Badge/index.js +9 -0
  19. package/cjs/components/data/Popover/Popover.js +102 -0
  20. package/cjs/components/data/Popover/Popover.styled.js +159 -0
  21. package/cjs/components/data/Popover/data/Popover/index.js +9 -0
  22. package/cjs/components/data/Tab/Tab.js +31 -0
  23. package/cjs/components/data/Tab/Tab.styled.js +22 -0
  24. package/cjs/components/data/Tab/data/Tab/index.js +9 -0
  25. package/cjs/components/data/Tabs/Tabs.js +91 -0
  26. package/cjs/components/data/Tabs/Tabs.styled.js +97 -0
  27. package/cjs/components/data/Tabs/data/Tabs/index.js +9 -0
  28. package/cjs/components/data/Tooltip/Tooltip.js +50 -0
  29. package/cjs/components/data/Tooltip/Tooltip.styled.js +38 -0
  30. package/cjs/components/data/Tooltip/data/Tooltip/index.js +9 -0
  31. package/cjs/components/data/VerificationStatusIcon/VerificationStatusIcon.js +42 -0
  32. package/cjs/components/data/VerificationStatusIcon/VerificationStatusIcon.styled.js +79 -0
  33. package/cjs/components/data/data/index.js +21 -0
  34. package/cjs/components/inputs/ActionButton/ActionButton.js +42 -0
  35. package/cjs/components/inputs/ActionButton/ActionButton.styled.js +66 -0
  36. package/cjs/components/inputs/ActionButton/inputs/ActionButton/index.js +9 -0
  37. package/cjs/components/inputs/Button/Button.js +188 -0
  38. package/cjs/components/inputs/Button/Button.styled.js +294 -0
  39. package/cjs/components/inputs/Button/inputs/Button/index.js +9 -0
  40. package/cjs/components/inputs/Checkbox/Checkbox.js +102 -0
  41. package/cjs/components/inputs/Checkbox/Checkbox.styled.js +145 -0
  42. package/cjs/components/inputs/Checkbox/inputs/Checkbox/index.js +9 -0
  43. package/cjs/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js +268 -0
  44. package/cjs/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.styled.js +352 -0
  45. package/cjs/components/inputs/CompactAutocompleteSelect/inputs/CompactAutocompleteSelect/index.js +9 -0
  46. package/cjs/components/inputs/CompactStarRating/CompactStarRating.js +178 -0
  47. package/cjs/components/inputs/CompactStarRating/CompactStarRating.styled.js +258 -0
  48. package/cjs/components/inputs/CompactStarRating/inputs/CompactStarRating/index.js +9 -0
  49. package/cjs/components/inputs/CompactTextInput/CompactTextInput.js +187 -0
  50. package/cjs/components/inputs/CompactTextInput/CompactTextInput.styled.js +352 -0
  51. package/cjs/components/inputs/CompactTextInput/inputs/CompactTextInput/index.js +9 -0
  52. package/cjs/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.js +253 -0
  53. package/cjs/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.styled.js +89 -0
  54. package/cjs/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +185 -0
  55. package/cjs/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.styled.js +122 -0
  56. package/cjs/components/inputs/MultiSelect/MultiSelect.js +251 -0
  57. package/cjs/components/inputs/MultiSelect/MultiSelect.styled.js +279 -0
  58. package/cjs/components/inputs/MultiSelect/inputs/MultiSelect/index.js +9 -0
  59. package/cjs/components/inputs/Radio/Radio.js +67 -0
  60. package/cjs/components/inputs/Radio/Radio.styled.js +93 -0
  61. package/cjs/components/inputs/Radio/inputs/Radio/index.js +9 -0
  62. package/cjs/components/inputs/Switch/Switch.js +69 -0
  63. package/cjs/components/inputs/Switch/Switch.styled.js +123 -0
  64. package/cjs/components/inputs/Switch/inputs/Switch/index.js +9 -0
  65. package/cjs/components/inputs/TextArea/TextArea.js +186 -0
  66. package/cjs/components/inputs/TextArea/TextArea.styled.js +455 -0
  67. package/cjs/components/inputs/TextArea/inputs/TextArea/index.js +9 -0
  68. package/cjs/components/inputs/TextInput/TextInput.js +147 -0
  69. package/cjs/components/inputs/TextInput/TextInput.styled.js +276 -0
  70. package/cjs/components/inputs/TextInput/inputs/TextInput/index.js +9 -0
  71. package/cjs/components/inputs/inputs/index.js +33 -0
  72. package/cjs/components/layout/InputGroup/InputGroup.js +26 -0
  73. package/cjs/components/layout/InputGroup/InputGroup.styled.js +18 -0
  74. package/cjs/components/layout/InputGroup/layout/InputGroup/index.js +9 -0
  75. package/cjs/components/layout/SectionSeparator/SectionSeparator.js +29 -0
  76. package/cjs/components/layout/SectionSeparator/SectionSeparator.styled.js +21 -0
  77. package/cjs/components/layout/SectionSeparator/layout/SectionSeparator/index.js +9 -0
  78. package/cjs/components/layout/layout/index.js +11 -0
  79. package/cjs/components/widgets/AssetAction/AssetAction.js +106 -0
  80. package/cjs/components/widgets/AssetAction/AssetAction.styled.js +58 -0
  81. package/cjs/components/widgets/AssetActionsBase/AssetActionsBase.js +35 -0
  82. package/cjs/components/widgets/AssetActionsBase/AssetActionsBase.styled.js +24 -0
  83. package/cjs/components/widgets/AssetGallery/AssetGallery.js +102 -0
  84. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.js +392 -0
  85. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.styled.js +43 -0
  86. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js +402 -0
  87. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js +338 -0
  88. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js +396 -0
  89. package/cjs/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js +328 -0
  90. package/cjs/components/widgets/AssetGallery/asset.propType.js +58 -0
  91. package/cjs/components/widgets/AssetGallery/widgets/AssetGallery/index.js +9 -0
  92. package/cjs/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js +50 -0
  93. package/cjs/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.styled.js +96 -0
  94. package/cjs/components/widgets/AssetPreview/AssetPreviewTopBar/widgets/AssetPreview/AssetPreviewTopBar/index.js +9 -0
  95. package/cjs/components/widgets/ContextMenu/ContextMenu.js +28 -0
  96. package/cjs/components/widgets/ContextMenu/ContextMenu.styled.js +19 -0
  97. package/cjs/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js +50 -0
  98. package/cjs/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.styled.js +93 -0
  99. package/cjs/components/widgets/ContextMenu/ContextMenuItem/widgets/ContextMenu/ContextMenuItem/index.js +9 -0
  100. package/cjs/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js +28 -0
  101. package/cjs/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.styled.js +30 -0
  102. package/cjs/components/widgets/ContextMenu/ContextMenuItemsGroup/widgets/ContextMenu/ContextMenuItemsGroup/index.js +9 -0
  103. package/cjs/components/widgets/ContextMenu/widgets/ContextMenu/index.js +9 -0
  104. package/cjs/components/widgets/InfoCard/InfoCard.js +39 -0
  105. package/cjs/components/widgets/InfoCard/InfoCard.styled.js +110 -0
  106. package/cjs/components/widgets/InfoCard/widgets/InfoCard/index.js +9 -0
  107. package/cjs/components/widgets/Instructions/Instructions.js +217 -0
  108. package/cjs/components/widgets/Instructions/Instructions.styled.js +47 -0
  109. package/cjs/components/widgets/Instructions/widgets/Instructions/index.js +9 -0
  110. package/cjs/components/widgets/ProgressBar/ProgressBar.js +58 -0
  111. package/cjs/components/widgets/ProgressBar/ProgressBar.styled.js +154 -0
  112. package/cjs/components/widgets/ProgressBar/widgets/ProgressBar/index.js +9 -0
  113. package/cjs/components/widgets/SummaryCard/SummaryCard.js +92 -0
  114. package/cjs/components/widgets/SummaryCard/SummaryCard.styled.js +142 -0
  115. package/cjs/components/widgets/widgets/index.js +25 -0
  116. package/cjs/hooks/useEventListner.js +26 -0
  117. package/cjs/hooks/useIsomorphicLayoutEffect.js +11 -0
  118. package/cjs/hooks/useOnClickOutside.js +17 -0
  119. package/cjs/icons/arrow-back.svg.js +20 -0
  120. package/cjs/icons/arrow-forward.svg.js +20 -0
  121. package/cjs/icons/check-rectangle-filled.svg.js +20 -0
  122. package/cjs/icons/close.svg.js +20 -0
  123. package/cjs/icons/edit-note.svg.js +20 -0
  124. package/cjs/icons/expand-more.svg.js +20 -0
  125. package/cjs/icons/headset.svg.js +20 -0
  126. package/cjs/icons/layers.svg.js +20 -0
  127. package/cjs/icons/link.svg.js +20 -0
  128. package/cjs/icons/play.svg.js +20 -0
  129. package/cjs/icons/search.svg.js +20 -0
  130. package/cjs/icons/star-filled.svg.js +20 -0
  131. package/cjs/icons/star.svg.js +20 -0
  132. package/cjs/icons/triangle-right.svg.js +20 -0
  133. package/cjs/icons/verification.svg.js +20 -0
  134. package/cjs/icons/warning-circle.svg.js +20 -0
  135. package/cjs/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +11 -0
  136. package/cjs/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +9 -0
  137. package/cjs/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +11 -0
  138. package/cjs/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +10 -0
  139. package/cjs/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +9 -0
  140. package/cjs/node_modules/@babel/runtime/helpers/esm/createClass.js +19 -0
  141. package/cjs/node_modules/@babel/runtime/helpers/esm/createSuper.js +22 -0
  142. package/cjs/node_modules/@babel/runtime/helpers/esm/defineProperty.js +16 -0
  143. package/cjs/node_modules/@babel/runtime/helpers/esm/extends.js +15 -0
  144. package/cjs/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +11 -0
  145. package/cjs/node_modules/@babel/runtime/helpers/esm/inherits.js +20 -0
  146. package/cjs/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +14 -0
  147. package/cjs/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +9 -0
  148. package/cjs/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +33 -0
  149. package/cjs/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +9 -0
  150. package/cjs/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +9 -0
  151. package/cjs/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +29 -0
  152. package/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +19 -0
  153. package/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +15 -0
  154. package/cjs/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +14 -0
  155. package/cjs/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +11 -0
  156. package/cjs/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +14 -0
  157. package/cjs/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +13 -0
  158. package/cjs/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +14 -0
  159. package/cjs/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +18 -0
  160. package/cjs/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +13 -0
  161. package/cjs/node_modules/@babel/runtime/helpers/esm/typeof.js +15 -0
  162. package/cjs/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +15 -0
  163. package/cjs/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js +445 -0
  164. package/cjs/node_modules/@emotion/hash/dist/emotion-hash.esm.js +59 -0
  165. package/cjs/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js +13 -0
  166. package/cjs/node_modules/@emotion/react/dist/emotion-element-f0de968e.browser.esm.js +116 -0
  167. package/cjs/node_modules/@emotion/react/dist/emotion-react.browser.esm.js +63 -0
  168. package/cjs/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js +240 -0
  169. package/cjs/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js +144 -0
  170. package/cjs/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js +56 -0
  171. package/cjs/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js +14 -0
  172. package/cjs/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js +51 -0
  173. package/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js +907 -0
  174. package/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js +374 -0
  175. package/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs.js +128 -0
  176. package/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js +165 -0
  177. package/cjs/node_modules/@restart/hooks/esm/useMergedRefs.js +46 -0
  178. package/cjs/node_modules/@restart/hooks/esm/useUpdateEffect.js +41 -0
  179. package/cjs/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +24 -0
  180. package/cjs/node_modules/memoize-one/dist/memoize-one.esm.js +55 -0
  181. package/cjs/node_modules/object-assign/index.js +94 -0
  182. package/cjs/node_modules/prop-types/checkPropTypes.js +110 -0
  183. package/cjs/node_modules/prop-types/factoryWithThrowingShims.js +69 -0
  184. package/cjs/node_modules/prop-types/factoryWithTypeCheckers.js +621 -0
  185. package/cjs/node_modules/prop-types/index.js +33 -0
  186. package/cjs/node_modules/prop-types/lib/ReactPropTypesSecret.js +16 -0
  187. package/cjs/node_modules/prop-types/lib/has.js +7 -0
  188. package/cjs/node_modules/react/cjs/react.development.js +1246 -0
  189. package/cjs/node_modules/react/cjs/react.production.js +552 -0
  190. package/cjs/node_modules/react/index.js +19 -0
  191. package/cjs/node_modules/react-dom/cjs/react-dom.development.js +432 -0
  192. package/cjs/node_modules/react-dom/cjs/react-dom.production.js +218 -0
  193. package/cjs/node_modules/react-dom/index.js +44 -0
  194. package/cjs/node_modules/react-is/cjs/react-is.development.js +228 -0
  195. package/cjs/node_modules/react-is/cjs/react-is.production.min.js +22 -0
  196. package/cjs/node_modules/react-is/index.js +13 -0
  197. package/cjs/node_modules/react-lazy-load-image-component/src/effects/opacity.css.js +6 -0
  198. package/cjs/node_modules/react-select/creatable/dist/react-select-creatable.esm.js +23 -0
  199. package/cjs/node_modules/react-select/dist/Select-aab027f3.esm.js +2653 -0
  200. package/cjs/node_modules/react-select/dist/index-641ee5b8.esm.js +1426 -0
  201. package/cjs/node_modules/react-select/dist/useCreatable-84008237.esm.js +101 -0
  202. package/cjs/node_modules/react-select/dist/useStateManager-7e1e8489.esm.js +78 -0
  203. package/cjs/node_modules/style-inject/dist/style-inject.es.js +32 -0
  204. package/cjs/node_modules/stylis/src/Enum.js +24 -0
  205. package/cjs/node_modules/stylis/src/Middleware.js +37 -0
  206. package/cjs/node_modules/stylis/src/Parser.js +201 -0
  207. package/cjs/node_modules/stylis/src/Serializer.js +43 -0
  208. package/cjs/node_modules/stylis/src/Tokenizer.js +243 -0
  209. package/cjs/node_modules/stylis/src/Utility.js +134 -0
  210. package/cjs/node_modules/tippy.js/animations/shift-away-subtle.css.js +6 -0
  211. package/cjs/node_modules/tippy.js/dist/tippy.css.js +6 -0
  212. package/cjs/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js +10 -0
  213. package/{ssr → cjs/ssr/ssr}/index.js +1 -3
  214. package/cjs/styles/utils/colors.scss.js +11 -0
  215. package/cjs/utils/dateTime.js +20 -0
  216. package/cjs/utils/defaultTheme.js +52 -0
  217. package/doctor-storybook.log +20 -0
  218. package/esm/_virtual/_rollupPluginBabelHelpers.js +74 -0
  219. package/esm/_virtual/index.js +3 -0
  220. package/esm/_virtual/index2.js +3 -0
  221. package/esm/_virtual/index3.js +3 -0
  222. package/esm/_virtual/index4.js +3 -0
  223. package/esm/_virtual/react-dom.development.js +3 -0
  224. package/esm/_virtual/react-dom.production.js +3 -0
  225. package/esm/_virtual/react-is.development.js +3 -0
  226. package/esm/_virtual/react-is.production.min.js +3 -0
  227. package/esm/_virtual/react.development.js +3 -0
  228. package/esm/_virtual/react.production.js +3 -0
  229. package/esm/components/data/Alert/Alert.js +77 -0
  230. package/esm/components/data/Alert/Alert.styled.js +63 -0
  231. package/esm/components/data/Alert/data/Alert/index.js +1 -0
  232. package/esm/components/data/Badge/Badge.js +89 -0
  233. package/esm/components/data/Badge/Badge.styled.js +145 -0
  234. package/esm/components/data/Badge/data/Badge/index.js +1 -0
  235. package/esm/components/data/Popover/Popover.js +94 -0
  236. package/esm/components/data/Popover/Popover.styled.js +150 -0
  237. package/esm/components/data/Popover/data/Popover/index.js +1 -0
  238. package/esm/components/data/Tab/Tab.js +27 -0
  239. package/esm/components/data/Tab/Tab.styled.js +14 -0
  240. package/esm/components/data/Tab/data/Tab/index.js +1 -0
  241. package/esm/components/data/Tabs/Tabs.js +87 -0
  242. package/esm/components/data/Tabs/Tabs.styled.js +85 -0
  243. package/esm/components/data/Tabs/data/Tabs/index.js +1 -0
  244. package/esm/components/data/Tooltip/Tooltip.js +46 -0
  245. package/esm/components/data/Tooltip/Tooltip.styled.js +29 -0
  246. package/esm/components/data/Tooltip/data/Tooltip/index.js +1 -0
  247. package/esm/components/data/VerificationStatusIcon/VerificationStatusIcon.js +38 -0
  248. package/esm/components/data/VerificationStatusIcon/VerificationStatusIcon.styled.js +69 -0
  249. package/esm/components/data/data/index.js +7 -0
  250. package/esm/components/inputs/ActionButton/ActionButton.js +38 -0
  251. package/esm/components/inputs/ActionButton/ActionButton.styled.js +58 -0
  252. package/esm/components/inputs/ActionButton/inputs/ActionButton/index.js +1 -0
  253. package/esm/components/inputs/Button/Button.js +184 -0
  254. package/esm/components/inputs/Button/Button.styled.js +277 -0
  255. package/esm/components/inputs/Button/inputs/Button/index.js +1 -0
  256. package/esm/components/inputs/Checkbox/Checkbox.js +98 -0
  257. package/esm/components/inputs/Checkbox/Checkbox.styled.js +132 -0
  258. package/esm/components/inputs/Checkbox/inputs/Checkbox/index.js +1 -0
  259. package/esm/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js +264 -0
  260. package/esm/components/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.styled.js +324 -0
  261. package/esm/components/inputs/CompactAutocompleteSelect/inputs/CompactAutocompleteSelect/index.js +1 -0
  262. package/esm/components/inputs/CompactStarRating/CompactStarRating.js +174 -0
  263. package/esm/components/inputs/CompactStarRating/CompactStarRating.styled.js +245 -0
  264. package/esm/components/inputs/CompactStarRating/inputs/CompactStarRating/index.js +1 -0
  265. package/esm/components/inputs/CompactTextInput/CompactTextInput.js +183 -0
  266. package/esm/components/inputs/CompactTextInput/CompactTextInput.styled.js +335 -0
  267. package/esm/components/inputs/CompactTextInput/inputs/CompactTextInput/index.js +1 -0
  268. package/esm/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.js +247 -0
  269. package/esm/components/inputs/MultiLevelCheckbox/MultiLevelCheckbox.styled.js +75 -0
  270. package/esm/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +181 -0
  271. package/esm/components/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.styled.js +104 -0
  272. package/esm/components/inputs/MultiSelect/MultiSelect.js +247 -0
  273. package/esm/components/inputs/MultiSelect/MultiSelect.styled.js +251 -0
  274. package/esm/components/inputs/MultiSelect/inputs/MultiSelect/index.js +1 -0
  275. package/esm/components/inputs/Radio/Radio.js +63 -0
  276. package/esm/components/inputs/Radio/Radio.styled.js +84 -0
  277. package/esm/components/inputs/Radio/inputs/Radio/index.js +1 -0
  278. package/esm/components/inputs/Switch/Switch.js +65 -0
  279. package/esm/components/inputs/Switch/Switch.styled.js +110 -0
  280. package/esm/components/inputs/Switch/inputs/Switch/index.js +1 -0
  281. package/esm/components/inputs/TextArea/TextArea.js +182 -0
  282. package/esm/components/inputs/TextArea/TextArea.styled.js +437 -0
  283. package/esm/components/inputs/TextArea/inputs/TextArea/index.js +1 -0
  284. package/esm/components/inputs/TextInput/TextInput.js +143 -0
  285. package/esm/components/inputs/TextInput/TextInput.styled.js +261 -0
  286. package/esm/components/inputs/TextInput/inputs/TextInput/index.js +1 -0
  287. package/esm/components/inputs/inputs/index.js +13 -0
  288. package/esm/components/layout/InputGroup/InputGroup.js +22 -0
  289. package/esm/components/layout/InputGroup/InputGroup.styled.js +10 -0
  290. package/esm/components/layout/InputGroup/layout/InputGroup/index.js +1 -0
  291. package/esm/components/layout/SectionSeparator/SectionSeparator.js +25 -0
  292. package/esm/components/layout/SectionSeparator/SectionSeparator.styled.js +13 -0
  293. package/esm/components/layout/SectionSeparator/layout/SectionSeparator/index.js +1 -0
  294. package/esm/components/layout/layout/index.js +2 -0
  295. package/esm/components/widgets/AssetAction/AssetAction.js +102 -0
  296. package/esm/components/widgets/AssetAction/AssetAction.styled.js +46 -0
  297. package/esm/components/widgets/AssetActionsBase/AssetActionsBase.js +31 -0
  298. package/esm/components/widgets/AssetActionsBase/AssetActionsBase.styled.js +16 -0
  299. package/esm/components/widgets/AssetGallery/AssetGallery.js +98 -0
  300. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.js +384 -0
  301. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.styled.js +33 -0
  302. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js +398 -0
  303. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js +311 -0
  304. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js +392 -0
  305. package/esm/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js +302 -0
  306. package/esm/components/widgets/AssetGallery/asset.propType.js +53 -0
  307. package/esm/components/widgets/AssetGallery/widgets/AssetGallery/index.js +1 -0
  308. package/esm/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js +46 -0
  309. package/esm/components/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.styled.js +84 -0
  310. package/esm/components/widgets/AssetPreview/AssetPreviewTopBar/widgets/AssetPreview/AssetPreviewTopBar/index.js +1 -0
  311. package/esm/components/widgets/ContextMenu/ContextMenu.js +24 -0
  312. package/esm/components/widgets/ContextMenu/ContextMenu.styled.js +11 -0
  313. package/esm/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js +46 -0
  314. package/esm/components/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.styled.js +83 -0
  315. package/esm/components/widgets/ContextMenu/ContextMenuItem/widgets/ContextMenu/ContextMenuItem/index.js +1 -0
  316. package/esm/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js +24 -0
  317. package/esm/components/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.styled.js +22 -0
  318. package/esm/components/widgets/ContextMenu/ContextMenuItemsGroup/widgets/ContextMenu/ContextMenuItemsGroup/index.js +1 -0
  319. package/esm/components/widgets/ContextMenu/widgets/ContextMenu/index.js +1 -0
  320. package/esm/components/widgets/InfoCard/InfoCard.js +35 -0
  321. package/esm/components/widgets/InfoCard/InfoCard.styled.js +94 -0
  322. package/esm/components/widgets/InfoCard/widgets/InfoCard/index.js +1 -0
  323. package/esm/components/widgets/Instructions/Instructions.js +213 -0
  324. package/esm/components/widgets/Instructions/Instructions.styled.js +36 -0
  325. package/esm/components/widgets/Instructions/widgets/Instructions/index.js +1 -0
  326. package/esm/components/widgets/ProgressBar/ProgressBar.js +54 -0
  327. package/esm/components/widgets/ProgressBar/ProgressBar.styled.js +137 -0
  328. package/esm/components/widgets/ProgressBar/widgets/ProgressBar/index.js +1 -0
  329. package/esm/components/widgets/SummaryCard/SummaryCard.js +88 -0
  330. package/esm/components/widgets/SummaryCard/SummaryCard.styled.js +124 -0
  331. package/esm/components/widgets/widgets/index.js +9 -0
  332. package/esm/hooks/useEventListner.js +22 -0
  333. package/esm/hooks/useIsomorphicLayoutEffect.js +7 -0
  334. package/esm/hooks/useOnClickOutside.js +13 -0
  335. package/esm/icons/arrow-back.svg.js +16 -0
  336. package/esm/icons/arrow-forward.svg.js +16 -0
  337. package/esm/icons/check-rectangle-filled.svg.js +16 -0
  338. package/esm/icons/close.svg.js +16 -0
  339. package/esm/icons/edit-note.svg.js +16 -0
  340. package/esm/icons/expand-more.svg.js +16 -0
  341. package/esm/icons/headset.svg.js +16 -0
  342. package/esm/icons/layers.svg.js +16 -0
  343. package/esm/icons/link.svg.js +16 -0
  344. package/esm/icons/play.svg.js +16 -0
  345. package/esm/icons/search.svg.js +16 -0
  346. package/esm/icons/star-filled.svg.js +16 -0
  347. package/esm/icons/star.svg.js +16 -0
  348. package/esm/icons/triangle-right.svg.js +16 -0
  349. package/esm/icons/verification.svg.js +16 -0
  350. package/esm/icons/warning-circle.svg.js +16 -0
  351. package/esm/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +7 -0
  352. package/esm/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +5 -0
  353. package/esm/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +7 -0
  354. package/esm/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +6 -0
  355. package/esm/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +5 -0
  356. package/esm/node_modules/@babel/runtime/helpers/esm/createClass.js +15 -0
  357. package/esm/node_modules/@babel/runtime/helpers/esm/createSuper.js +18 -0
  358. package/esm/node_modules/@babel/runtime/helpers/esm/defineProperty.js +12 -0
  359. package/esm/node_modules/@babel/runtime/helpers/esm/extends.js +11 -0
  360. package/esm/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +7 -0
  361. package/esm/node_modules/@babel/runtime/helpers/esm/inherits.js +16 -0
  362. package/esm/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +10 -0
  363. package/esm/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +5 -0
  364. package/esm/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +29 -0
  365. package/esm/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +5 -0
  366. package/esm/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +5 -0
  367. package/esm/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +25 -0
  368. package/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +15 -0
  369. package/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +11 -0
  370. package/esm/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +10 -0
  371. package/esm/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +7 -0
  372. package/esm/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +10 -0
  373. package/esm/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +9 -0
  374. package/esm/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +10 -0
  375. package/esm/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +14 -0
  376. package/esm/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +9 -0
  377. package/esm/node_modules/@babel/runtime/helpers/esm/typeof.js +11 -0
  378. package/esm/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +11 -0
  379. package/esm/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js +441 -0
  380. package/esm/node_modules/@emotion/hash/dist/emotion-hash.esm.js +55 -0
  381. package/esm/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js +9 -0
  382. package/esm/node_modules/@emotion/react/dist/emotion-element-f0de968e.browser.esm.js +107 -0
  383. package/esm/node_modules/@emotion/react/dist/emotion-react.browser.esm.js +56 -0
  384. package/esm/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js +236 -0
  385. package/esm/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js +140 -0
  386. package/esm/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js +52 -0
  387. package/esm/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js +10 -0
  388. package/esm/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js +45 -0
  389. package/esm/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js +894 -0
  390. package/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js +370 -0
  391. package/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs.js +110 -0
  392. package/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js +138 -0
  393. package/{useMergedRefs-b6d2f8fc.js → esm/node_modules/@restart/hooks/esm/useMergedRefs.js} +4 -5
  394. package/esm/node_modules/@restart/hooks/esm/useUpdateEffect.js +37 -0
  395. package/esm/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +22 -0
  396. package/esm/node_modules/memoize-one/dist/memoize-one.esm.js +51 -0
  397. package/esm/node_modules/object-assign/index.js +90 -0
  398. package/esm/node_modules/prop-types/checkPropTypes.js +106 -0
  399. package/esm/node_modules/prop-types/factoryWithThrowingShims.js +65 -0
  400. package/{index-39bc450c.js → esm/node_modules/prop-types/factoryWithTypeCheckers.js} +46 -514
  401. package/esm/node_modules/prop-types/index.js +29 -0
  402. package/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js +12 -0
  403. package/esm/node_modules/prop-types/lib/has.js +3 -0
  404. package/esm/node_modules/react/cjs/react.development.js +1244 -0
  405. package/esm/node_modules/react/cjs/react.production.js +547 -0
  406. package/esm/node_modules/react/index.js +15 -0
  407. package/esm/node_modules/react-dom/cjs/react-dom.development.js +427 -0
  408. package/esm/node_modules/react-dom/cjs/react-dom.production.js +213 -0
  409. package/esm/node_modules/react-dom/index.js +42 -0
  410. package/esm/node_modules/react-is/cjs/react-is.development.js +223 -0
  411. package/esm/node_modules/react-is/cjs/react-is.production.min.js +17 -0
  412. package/esm/node_modules/react-is/index.js +11 -0
  413. package/esm/node_modules/react-lazy-load-image-component/src/effects/opacity.css.js +4 -0
  414. package/esm/node_modules/react-select/creatable/dist/react-select-creatable.esm.js +19 -0
  415. package/esm/node_modules/react-select/dist/Select-aab027f3.esm.js +2644 -0
  416. package/esm/node_modules/react-select/dist/index-641ee5b8.esm.js +1385 -0
  417. package/esm/node_modules/react-select/dist/useCreatable-84008237.esm.js +97 -0
  418. package/esm/node_modules/react-select/dist/useStateManager-7e1e8489.esm.js +74 -0
  419. package/esm/node_modules/style-inject/dist/style-inject.es.js +28 -0
  420. package/esm/node_modules/stylis/src/Enum.js +12 -0
  421. package/esm/node_modules/stylis/src/Middleware.js +32 -0
  422. package/esm/node_modules/stylis/src/Parser.js +193 -0
  423. package/esm/node_modules/stylis/src/Serializer.js +38 -0
  424. package/esm/node_modules/stylis/src/Tokenizer.js +223 -0
  425. package/esm/node_modules/stylis/src/Utility.js +117 -0
  426. package/esm/node_modules/tippy.js/animations/shift-away-subtle.css.js +4 -0
  427. package/esm/node_modules/tippy.js/dist/tippy.css.js +4 -0
  428. package/esm/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js +6 -0
  429. package/esm/ssr/ssr/index.js +1 -0
  430. package/esm/styles/utils/colors.scss.js +7 -0
  431. package/esm/utils/dateTime.js +16 -0
  432. package/esm/utils/defaultTheme.js +47 -0
  433. package/icons/arrow-forward.svg +3 -0
  434. package/icons/index.js +2 -0
  435. package/migration-storybook.log +392 -0
  436. package/package.json +59 -21
  437. package/styles/all.scss +3 -3
  438. package/styles/config.scss +3 -0
  439. package/styles/utils/colors.scss +1 -1
  440. package/styles/utils/theme.scss +2 -0
  441. package/ActionButton-15b418c5.js +0 -62
  442. package/Alert-e9f818d6.js +0 -118
  443. package/AssetGallery-66cb0dab.js +0 -1925
  444. package/AssetPreviewTopBar-21b7e172.js +0 -100
  445. package/AsyncSelect-368b5068.js +0 -28
  446. package/Badge-72b369a6.js +0 -222
  447. package/Button-34ce13c6.js +0 -265
  448. package/Checkbox-d77eed5d.js +0 -141
  449. package/CompactAutocompleteSelect-72d523e3.js +0 -452
  450. package/CompactStarRating-bf45f620.js +0 -340
  451. package/CompactTextInput-0b1979f1.js +0 -350
  452. package/ContextMenu-f69599d5.js +0 -33
  453. package/ContextMenuItem-9c5c4c9f.js +0 -111
  454. package/InputGroup-e30507cb.js +0 -29
  455. package/Instructions-42d2bc58.js +0 -264
  456. package/MultiLevelCheckboxSelect-acaac96b.js +0 -699
  457. package/MultiSelect-ecb48e03.js +0 -378
  458. package/Popover-a76d0fe5.js +0 -147
  459. package/Radio-7d5f630d.js +0 -87
  460. package/SectionSeparator-2a1c720b.js +0 -38
  461. package/Switch-006abdbd.js +0 -108
  462. package/Tab-87287c6e.js +0 -36
  463. package/Tabs-8e4de5a5.js +0 -152
  464. package/TextArea-76231a3b.js +0 -376
  465. package/TextInput-a440374c.js +0 -237
  466. package/Tooltip-298f0547.js +0 -62
  467. package/VerificationStatusIcon-d596165f.js +0 -122
  468. package/close-ebf2f3cf.js +0 -41
  469. package/data/Alert/index.js +0 -12
  470. package/data/Badge/index.js +0 -11
  471. package/data/Popover/index.js +0 -16
  472. package/data/Tab/index.js +0 -11
  473. package/data/Tabs/index.js +0 -13
  474. package/data/Tooltip/index.js +0 -13
  475. package/data/index.js +0 -30
  476. package/defaultTheme-fcd45bd0.js +0 -339
  477. package/edit-note-c47d292e.js +0 -41
  478. package/expand-more-94585605.js +0 -41
  479. package/inputs/ActionButton/index.js +0 -12
  480. package/inputs/AsyncSelect/index.js +0 -11
  481. package/inputs/Button/index.js +0 -19
  482. package/inputs/Checkbox/index.js +0 -13
  483. package/inputs/CompactAutocompleteSelect/index.js +0 -30
  484. package/inputs/CompactStarRating/index.js +0 -23
  485. package/inputs/CompactTextInput/index.js +0 -25
  486. package/inputs/MultiSelect/index.js +0 -17
  487. package/inputs/Radio/index.js +0 -13
  488. package/inputs/Switch/index.js +0 -13
  489. package/inputs/TextArea/index.js +0 -26
  490. package/inputs/TextInput/index.js +0 -15
  491. package/inputs/index.js +0 -62
  492. package/layout/InputGroup/index.js +0 -11
  493. package/layout/SectionSeparator/index.js +0 -11
  494. package/layout/index.js +0 -15
  495. package/react-select-creatable.esm-2f23d6c6.js +0 -7709
  496. package/shift-away-subtle-45129125.js +0 -9
  497. package/warning-circle-24522402.js +0 -41
  498. package/widgets/AssetGallery/index.js +0 -52
  499. package/widgets/AssetPreview/AssetPreviewTopBar/index.js +0 -12
  500. package/widgets/ContextMenu/ContextMenuItem/index.js +0 -11
  501. package/widgets/ContextMenu/ContextMenuItemsGroup/index.js +0 -33
  502. package/widgets/ContextMenu/index.js +0 -11
  503. package/widgets/Instructions/index.js +0 -35
  504. package/widgets/index.js +0 -60
@@ -1,1925 +0,0 @@
1
- 'use strict';
2
-
3
- var defaultTheme = require('./defaultTheme-fcd45bd0.js');
4
- var lodash = require('lodash');
5
- var index = require('./index-39bc450c.js');
6
- var React = require('react');
7
- var useMergedRefs = require('./useMergedRefs-b6d2f8fc.js');
8
- var ResizeObserver = require('resize-observer-polyfill');
9
- var MultiLevelCheckboxSelect = require('./MultiLevelCheckboxSelect-acaac96b.js');
10
- var styled = require('styled-components');
11
- var reactLazyLoadImageComponent = require('react-lazy-load-image-component');
12
- var warningCircle = require('./warning-circle-24522402.js');
13
- var Alert = require('./Alert-e9f818d6.js');
14
- var Badge = require('./Badge-72b369a6.js');
15
- var Popover = require('./Popover-a76d0fe5.js');
16
- require('./Tab-87287c6e.js');
17
- require('./Tabs-8e4de5a5.js');
18
- var Tooltip = require('./Tooltip-298f0547.js');
19
- require('./VerificationStatusIcon-d596165f.js');
20
- var ActionButton = require('./ActionButton-15b418c5.js');
21
- require('./Button-34ce13c6.js');
22
- require('./Checkbox-d77eed5d.js');
23
- require('./CompactAutocompleteSelect-72d523e3.js');
24
- require('./CompactStarRating-bf45f620.js');
25
- require('./CompactTextInput-0b1979f1.js');
26
- require('./MultiSelect-ecb48e03.js');
27
- require('./Radio-7d5f630d.js');
28
- require('./TextArea-76231a3b.js');
29
- require('./TextInput-a440374c.js');
30
- require('./Switch-006abdbd.js');
31
- require('./AsyncSelect-368b5068.js');
32
- var ContextMenu = require('./ContextMenu-f69599d5.js');
33
- var ContextMenuItem = require('./ContextMenuItem-9c5c4c9f.js');
34
- var polished = require('polished');
35
-
36
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
37
-
38
- function _interopNamespace(e) {
39
- if (e && e.__esModule) return e;
40
- var n = Object.create(null);
41
- if (e) {
42
- Object.keys(e).forEach(function (k) {
43
- if (k !== 'default') {
44
- var d = Object.getOwnPropertyDescriptor(e, k);
45
- Object.defineProperty(n, k, d.get ? d : {
46
- enumerable: true,
47
- get: function () {
48
- return e[k];
49
- }
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 ResizeObserver__default = /*#__PURE__*/_interopDefaultLegacy(ResizeObserver);
61
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
62
-
63
- function _extends$3() { _extends$3 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3.apply(this, arguments); }
64
-
65
- var _ref$3 = /*#__PURE__*/React__namespace.createElement("path", {
66
- fill: "currentColor",
67
- 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"
68
- });
69
-
70
- function SvgCheckRectangleFilled(props) {
71
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$3({
72
- xmlns: "http://www.w3.org/2000/svg",
73
- viewBox: "0 0 24 24"
74
- }, props), _ref$3);
75
- }
76
-
77
- function _extends$2() { _extends$2 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$2.apply(this, arguments); }
78
-
79
- var _ref$2 = /*#__PURE__*/React__namespace.createElement("path", {
80
- 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"
81
- });
82
-
83
- function SvgHeadset(props) {
84
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$2({
85
- xmlns: "http://www.w3.org/2000/svg",
86
- fill: "currentColor",
87
- viewBox: "0 0 24 24"
88
- }, props), _ref$2);
89
- }
90
-
91
- function _extends$1() { _extends$1 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
92
-
93
- var _ref$1 = /*#__PURE__*/React__namespace.createElement("path", {
94
- fill: "currentColor",
95
- 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"
96
- });
97
-
98
- function SvgLayers(props) {
99
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$1({
100
- xmlns: "http://www.w3.org/2000/svg",
101
- viewBox: "-1 0 24 24"
102
- }, props), _ref$1);
103
- }
104
-
105
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
106
-
107
- var _ref = /*#__PURE__*/React__namespace.createElement("path", {
108
- fill: "currentColor",
109
- d: "M0 23.52V0l18.48 11.76L0 23.52z"
110
- });
111
-
112
- function SvgPlay(props) {
113
- return /*#__PURE__*/React__namespace.createElement("svg", _extends({
114
- xmlns: "http://www.w3.org/2000/svg",
115
- viewBox: "-3 -0.25 24 24"
116
- }, props), _ref);
117
- }
118
-
119
- var assetShape = {
120
- key: index.PropTypes.oneOfType([index.PropTypes.string, index.PropTypes.number]).isRequired,
121
- previewUrl: index.PropTypes.string,
122
- title: index.PropTypes.string,
123
- note: index.PropTypes.shape({
124
- icon: index.PropTypes.element,
125
- message: index.PropTypes.string
126
- }),
127
- width: index.PropTypes.number,
128
- height: index.PropTypes.number,
129
- fileType: index.PropTypes.oneOf(['image', 'video', 'pdf', 'file', 'audio']).isRequired,
130
- fileTypeIconPosition: index.PropTypes.oneOf(['top-left', 'top-right']),
131
- group: index.PropTypes.string,
132
- actions: index.PropTypes.arrayOf(index.PropTypes.shape({
133
- title: index.PropTypes.string.isRequired,
134
- icon: index.PropTypes.element.isRequired,
135
- onClick: index.PropTypes.func.isRequired,
136
- className: index.PropTypes.shape,
137
- component: index.PropTypes.func
138
- })),
139
- overlay: index.PropTypes.element,
140
- completed: index.PropTypes.bool,
141
- hasError: index.PropTypes.bool,
142
- disabled: index.PropTypes.bool,
143
- onClick: index.PropTypes.func,
144
- onContextMenu: index.PropTypes.func,
145
- onMouseEnter: index.PropTypes.func,
146
- summary: index.PropTypes.shape({
147
- title: index.PropTypes.string,
148
- description: index.PropTypes.string,
149
- instructions: index.PropTypes.string,
150
- instructionsType: index.PropTypes.oneOf(['warning', 'error', 'info']),
151
- headerLeft: index.PropTypes.node,
152
- headerRight: index.PropTypes.node,
153
- footerLeft: index.PropTypes.node,
154
- footerRight: index.PropTypes.node
155
- })
156
- };
157
- var assetShapeWithLayout = defaultTheme._objectSpread2(defaultTheme._objectSpread2({}, assetShape), {}, {
158
- layout: index.PropTypes.shape({
159
- width: index.PropTypes.number.isRequired,
160
- height: index.PropTypes.number.isRequired,
161
- translateX: index.PropTypes.number.isRequired,
162
- translateY: index.PropTypes.number.isRequired,
163
- type: index.PropTypes.oneOf(['groupLabel', 'asset']).isRequired,
164
- hasHeightAndWidth: index.PropTypes.bool
165
- }).isRequired
166
- });
167
-
168
- var _templateObject$3, _templateObject2$3, _templateObject3$3;
169
- var AssetGalleryBase$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject$3 || (_templateObject$3 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n"])));
170
- var GroupLabel = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject2$3 || (_templateObject2$3 = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n ", "\n display: flex;\n align-items: flex-end;\n position: absolute;\n padding-bottom: 4px;\n box-sizing: border-box;\n"])), function (props) {
171
- return props.theme.primaryFontFamily;
172
- }, function (props) {
173
- return props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'));
174
- });
175
- var AssetGalleryCardBase = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject3$3 || (_templateObject3$3 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n left: 0;\n margin: 0;\n z-index: 1;\n will-change: transform, width, height;\n\n &:hover {\n z-index: 2;\n }\n"])));
176
-
177
- 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";
178
- defaultTheme.styleInject(css_248z);
179
-
180
- var convertMsToHMS = function convertMsToHMS(ms) {
181
- var seconds = Math.floor(ms / 1000);
182
- var minutes = Math.floor(seconds / 60);
183
- var hours = Math.floor(minutes / 60);
184
- var secondsLeft = seconds % 60;
185
- var minutesLeft = minutes % 60;
186
- var hmsString = '';
187
-
188
- if (hours) {
189
- hmsString += hours < 10 ? "0".concat(hours, ":") : "".concat(hours, ":");
190
- }
191
-
192
- hmsString += "".concat(minutesLeft < 10 ? "0".concat(minutesLeft) : "".concat(minutesLeft), ":");
193
- hmsString += secondsLeft < 10 ? "0".concat(secondsLeft) : "".concat(secondsLeft);
194
- return hmsString;
195
- };
196
-
197
- var _templateObject$2, _templateObject2$2, _templateObject3$2, _templateObject4$2, _templateObject5$2, _templateObject6$2, _templateObject7$2, _templateObject8$2, _templateObject9$2, _templateObject10$2, _templateObject11$2, _templateObject12$2, _templateObject13$2;
198
- var SummaryCard$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject$2 || (_templateObject$2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n width: ", ";\n\n ", "\n"])), function (props) {
199
- return props.width ? "".concat(props.width, "px") : '100%';
200
- }, function (props) {
201
- return props.useBorder ? props.theme.themeProp('border', "1px solid ".concat(props.theme.getColor('gray-500')), "1px solid ".concat(props.theme.getColor('gray-300'))) : null;
202
- });
203
- var Gutter = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject2$2 || (_templateObject2$2 = defaultTheme._taggedTemplateLiteral(["\n ", "\n padding-bottom: ", "px;\n"])), function (props) {
204
- if (props.renderAsMargin) {
205
- return styled.css(_templateObject3$2 || (_templateObject3$2 = defaultTheme._taggedTemplateLiteral(["\n margin-bottom: ", "px;\n "])), props.gutter || 8);
206
- } else {
207
- return styled.css(_templateObject4$2 || (_templateObject4$2 = defaultTheme._taggedTemplateLiteral(["\n padding-bottom: ", "px;\n "])), props.gutter || 8);
208
- }
209
- }, function (props) {
210
- return props.gutter || 8;
211
- });
212
- var Header = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject5$2 || (_templateObject5$2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 16px;\n"])));
213
- var HeaderLeft = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject6$2 || (_templateObject6$2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: flex-start;\n\n > * {\n margin-right: 4px;\n }\n"])));
214
- var HeaderRight = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject7$2 || (_templateObject7$2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: flex-end;\n\n > * {\n margin-left: 4px;\n }\n"])));
215
- var Title = styled__default['default'].span.attrs(defaultTheme.applyDefaultTheme)(_templateObject8$2 || (_templateObject8$2 = defaultTheme._taggedTemplateLiteral(["\n display: inline-block;\n padding: 0 16px;\n font: normal normal 500 14px/19px Roboto;\n letter-spacing: 0.28px;\n display: -webkit-box;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n box-sizing: border-box;\n\n ", ";\n"])), function (props) {
216
- return props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'));
217
- });
218
- var Description = styled__default['default'].span.attrs(defaultTheme.applyDefaultTheme)(_templateObject9$2 || (_templateObject9$2 = defaultTheme._taggedTemplateLiteral(["\n padding: 0 16px;\n text-align: left;\n font: normal normal normal 12px/16px Roboto;\n letter-spacing: 0.24px;\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n box-sizing: border-box;\n\n ", ";\n"])), function (props) {
219
- return props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'));
220
- });
221
- var Instruction = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject10$2 || (_templateObject10$2 = defaultTheme._taggedTemplateLiteral([""])));
222
- var Footer = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject11$2 || (_templateObject11$2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 16px;\n"])));
223
- var FooterLeft = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject12$2 || (_templateObject12$2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: flex-start;\n\n > * {\n margin-right: 4px;\n }\n"])));
224
- var FooterRight = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject13$2 || (_templateObject13$2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: flex-end;\n\n > * {\n margin-left: 4px;\n }\n"])));
225
-
226
- var SummaryCard = React__default['default'].forwardRef(function AssetSummaryCard(_ref, forwardedRef) {
227
- var activeSummaryCard = _ref.activeSummaryCard,
228
- title = _ref.title,
229
- description = _ref.description,
230
- instructions = _ref.instructions,
231
- instructionsType = _ref.instructionsType,
232
- headerLeft = _ref.headerLeft,
233
- headerRight = _ref.headerRight,
234
- footerLeft = _ref.footerLeft,
235
- footerRight = _ref.footerRight,
236
- width = _ref.width,
237
- useBorder = _ref.useBorder,
238
- props = defaultTheme._objectWithoutProperties(_ref, ["activeSummaryCard", "title", "description", "instructions", "instructionsType", "headerLeft", "headerRight", "footerLeft", "footerRight", "width", "useBorder"]);
239
-
240
- var shouldRenderInstructions = !!instructions;
241
- var shouldRenderHeader = !!headerLeft || !!headerRight;
242
- var shouldRenderFooter = !!footerLeft || !!footerRight;
243
- var shouldAddGutterAfterInstructions = shouldRenderInstructions && shouldRenderFooter;
244
- var shouldAddGutterAfterTitle = !!title && (!!description || !!instructions || shouldRenderFooter);
245
- if (!activeSummaryCard) return null;
246
- return React__default['default'].createElement(SummaryCard$1, defaultTheme._extends({
247
- ref: forwardedRef,
248
- width: width,
249
- useBorder: useBorder
250
- }, props), shouldRenderHeader && React__default['default'].createElement(React__default['default'].Fragment, null, React__default['default'].createElement(Gutter, {
251
- gutter: 8
252
- }), 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, {
253
- gutter: shouldRenderHeader ? 8 : 16
254
- }), title && React__default['default'].createElement(Title, null, title), shouldAddGutterAfterTitle && React__default['default'].createElement(Gutter, {
255
- gutter: 4
256
- }), description && React__default['default'].createElement(Description, null, description), React__default['default'].createElement(Gutter, {
257
- gutter: 16
258
- }), shouldRenderInstructions && React__default['default'].createElement(Instruction, null, React__default['default'].createElement(Alert.Alert, {
259
- icon: React__default['default'].createElement(warningCircle.SvgWarningCircle, null),
260
- alertMessage: instructions,
261
- type: instructionsType,
262
- fontSize: 12,
263
- verticalPadding: 12,
264
- horizontalPadding: 16,
265
- width: width,
266
- lineClamp: 1
267
- })), shouldAddGutterAfterInstructions && React__default['default'].createElement(Gutter, {
268
- gutter: 16
269
- }), 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, {
270
- gutter: 16
271
- }));
272
- });
273
- SummaryCard.propTypes = process.env.NODE_ENV !== "production" ? {
274
- activeSummaryCard: index.PropTypes.bool,
275
- title: index.PropTypes.string,
276
- description: index.PropTypes.string,
277
- instructions: index.PropTypes.string,
278
- instructionsType: index.PropTypes.oneOf(['warning', 'error', 'info']),
279
- headerLeft: index.PropTypes.node,
280
- headerRight: index.PropTypes.node,
281
- footerLeft: index.PropTypes.node,
282
- footerRight: index.PropTypes.node,
283
- width: index.PropTypes.number,
284
- useBorder: index.PropTypes.bool
285
- } : {};
286
- SummaryCard.defaultProps = {
287
- title: '',
288
- description: '',
289
- instructions: '',
290
- instructionsType: 'info',
291
- headerLeft: null,
292
- headerRight: null,
293
- footerLeft: null,
294
- footerRight: null,
295
- useBorder: false,
296
- activeSummaryCard: false
297
- };
298
-
299
- var _templateObject$1, _templateObject2$1, _templateObject3$1, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1, _templateObject8$1, _templateObject9$1, _templateObject10$1, _templateObject11$1, _templateObject12$1, _templateObject13$1, _templateObject14$1, _templateObject15$1, _templateObject16$1, _templateObject17$1, _templateObject18$1, _templateObject19$1, _templateObject20$1, _templateObject21$1, _templateObject22$1, _templateObject23$1, _templateObject24$1, _templateObject25$1, _templateObject26$1;
300
- var AssetGalleryWrapper$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject$1 || (_templateObject$1 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n"])), function (props) {
301
- return props.disabled && styled.css(_templateObject2$1 || (_templateObject2$1 = defaultTheme._taggedTemplateLiteral(["\n cursor: not-allowed;\n "])));
302
- });
303
- var AssetGalleryCompactCard$2 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject3$1 || (_templateObject3$1 = defaultTheme._taggedTemplateLiteral(["\n display: block;\n height: 100%;\n padding-left: ", "px;\n padding-right: ", "px;\n padding-top: ", "px;\n box-sizing: border-box;\n cursor: pointer;\n\n ", ";\n\n ", ";\n\n ", ";\n\n ", "\n video {\n width: 100%;\n height: 100%;\n }\n\n .audio {\n display: flex;\n justify-content: center;\n svg {\n width: 25%;\n }\n }\n"])), function (props) {
304
- return props.selected ? 1 : 0;
305
- }, function (props) {
306
- return props.selected ? 1 : 0;
307
- }, function (props) {
308
- return props.selected ? 1 : 0;
309
- }, function (props) {
310
- return props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('gray-300'));
311
- }, function (props) {
312
- return props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'));
313
- }, function (props) {
314
- return props.disabled && styled.css(_templateObject4$1 || (_templateObject4$1 = defaultTheme._taggedTemplateLiteral(["\n pointer-events: none;\n opacity: 0.4;\n "])));
315
- }, function (props) {
316
- return props.extendedSelectMode && styled.css(_templateObject5$1 || (_templateObject5$1 = defaultTheme._taggedTemplateLiteral(["\n cursor: pointer;\n "])));
317
- });
318
- var Figure$1 = styled__default['default'].figure(_templateObject6$1 || (_templateObject6$1 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: center;\n align-items: center;\n position: relative;\n margin: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n\n .lazy-load-image-background {\n display: block !important;\n }\n\n img {\n display: block;\n height: 100%;\n width: 100%;\n ", "\n }\n"])), function (props) {
319
- return props.hasHeightAndWidth ? styled.css(_templateObject7$1 || (_templateObject7$1 = defaultTheme._taggedTemplateLiteral(["\n object-fit: cover;\n "]))) : styled.css(_templateObject8$1 || (_templateObject8$1 = defaultTheme._taggedTemplateLiteral(["\n object-fit: contain;\n "])));
320
- });
321
- var FigureOverlayBackdrop$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject9$1 || (_templateObject9$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n inset: 0;\n opacity: ", ";\n background-color: ", ";\n"])), function (props) {
322
- return props.selected ? 0.6 : 0;
323
- }, function (props) {
324
- return props.selected ? '#ACCEF7' : 'transparent';
325
- });
326
- var Overlay$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject10$1 || (_templateObject10$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n"])));
327
- var OverlayBackdrop$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject11$1 || (_templateObject11$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n opacity: 0;\n transition: opacity 220ms;\n\n ", "\n ", "\n ", ":hover & {\n opacity: 1;\n }\n"])), function (props) {
328
- return !props.selected ? styled.css(_templateObject12$1 || (_templateObject12$1 = defaultTheme._taggedTemplateLiteral(["\n background: radial-gradient(\n ellipse at center,\n rgba(0, 0, 0, 0.3) 27%,\n rgba(0, 0, 0, 0.5) 60%,\n rgba(0, 0, 0, 0.7) 90%\n );\n "]))) : null;
329
- }, function (props) {
330
- return (props.selected || props.softSelected) && styled.css(_templateObject13$1 || (_templateObject13$1 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n "])));
331
- }, Overlay$1);
332
- var OverlayInfo$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject14$1 || (_templateObject14$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 15px 50px 10px 12px;\n color: ", ";\n & span {\n overflow: hidden;\n word-wrap: break-word;\n }\n"])), function (props) {
333
- return props.theme.getColor('gray-100');
334
- });
335
- var OverlayCompleted = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject15$1 || (_templateObject15$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n transition: border-color 120ms;\n border: 3px solid;\n ", ";\n"])), function (props) {
336
- if (props.softSelected) return null;
337
- return props.theme.themeProp('border-color', props.theme.getColor('emerald-500'), polished.rgba(props.theme.getColor('emerald-500'), 0.7));
338
- });
339
- var OverlayHasError = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject16$1 || (_templateObject16$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n transition: border-color 120ms;\n border: 3px solid;\n ", "\n"])), function (props) {
340
- if (props.softSelected) return null;
341
- return props.theme.themeProp('border-color', props.theme.getColor('red-600'), polished.rgba(props.theme.getColor('red-500'), 0.7));
342
- });
343
- var OverlaySelected$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject17$1 || (_templateObject17$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n transition: border-color 120ms;\n border-style: solid;\n border-width: 3px;\n\n ", ";\n"])), function (props) {
344
- if (props.softSelected) {
345
- return props.theme.themeProp('border-color', polished.rgba(props.theme.getColor('gray-100'), 0.5), polished.rgba(props.theme.getColor('gray-700'), 0.5));
346
- }
347
-
348
- if (props.selected) {
349
- return props.theme.themeProp('border-color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'));
350
- }
351
-
352
- return props.theme.themeProp('border-color', 'transparent', 'transparent');
353
- });
354
- var OverlayInfoTop$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject18$1 || (_templateObject18$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n padding: 8px;\n display: flex;\n"])));
355
- var OverlayInfoTopActions$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject19$1 || (_templateObject19$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n right: 0;\n padding: 4px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n transition: opacity 220ms;\n z-index: 99999;\n ", "\n\n opacity: ", ";\n"])), function (props) {
356
- return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-700'));
357
- }, function (props) {
358
- return props.isOverlayHovered ? 1 : 0;
359
- });
360
- var OverlayInfoTopLeft = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject20$1 || (_templateObject20$1 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n display: ", ";\n\n ", ":hover & {\n opacity: 0;\n }\n"])), function (props) {
361
- return props !== null && props !== void 0 && props.collapseExtraInfo ? 'none' : 'block';
362
- }, Overlay$1);
363
- var OverlayInfoTopWarning$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject21$1 || (_templateObject21$1 = defaultTheme._taggedTemplateLiteral(["\n margin-left: auto;\n height: 24px;\n width: 24px;\n border-radius: 50%;\n box-sizing: border-box;\n padding: ", ";\n background-color: ", ";\n opacity: 1;\n\n svg {\n width: 100%;\n color: ", ";\n }\n\n ", ":hover & {\n opacity: 0;\n }\n"])), function (props) {
364
- return props.type === 'error' ? 0 : '3px 4px';
365
- }, function (props) {
366
- return props.type === 'error' ? props.theme.getColor('red-500') : props.theme.getColor('gray-100');
367
- }, function (props) {
368
- return props.type === 'error' ? props.theme.getColor('gray-100') : props.theme.getColor('gray-700');
369
- }, Overlay$1);
370
- var OverlayInfoBottom$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject22$1 || (_templateObject22$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n padding: 8px;\n display: flex;\n"])));
371
- var OverlayInfoBottomSelectButton$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject23$1 || (_templateObject23$1 = defaultTheme._taggedTemplateLiteral(["\n opacity: ", ";\n flex-shrink: 0;\n cursor: pointer;\n transition: opacity 220ms;\n height: 24px;\n\n > svg {\n width: 24px;\n height: 24px;\n transition: opacity 120ms;\n opacity: ", ";\n }\n\n ", ":hover & {\n opacity: 1;\n }\n"])), function (props) {
372
- return props.selected ? 1 : 0;
373
- }, function (props) {
374
- return props.selected ? 1 : 0.5;
375
- }, Overlay$1);
376
- var OverlayInfoBottomMediaIcon$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject24$1 || (_templateObject24$1 = defaultTheme._taggedTemplateLiteral(["\n margin-left: auto;\n opacity: 1;\n\n ", ":hover & {\n opacity: 0;\n }\n"])), Overlay$1);
377
- var ConsumerDefinedOverlay$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject25$1 || (_templateObject25$1 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n"])));
378
- var Fragment$1 = styled__default['default'].div(_templateObject26$1 || (_templateObject26$1 = defaultTheme._taggedTemplateLiteral(["\n margin: 4px;\n"])));
379
-
380
- var ComputedRootComponent$1 = function ComputedRootComponent(_ref) {
381
- var component = _ref.component,
382
- asset = _ref.asset,
383
- props = defaultTheme._objectWithoutProperties(_ref, ["component", "asset"]);
384
-
385
- var newProps = lodash.mapKeys(lodash.omit(props, ['theme', 'extendedSelectMode']), function (_, key) {
386
- return key === 'innerRef' ? 'ref' : key;
387
- });
388
-
389
- if (component) {
390
- if (!lodash.isFunction(component)) throw Error('Expected a function in component-prop');
391
-
392
- if (React__default['default'].isValidElement(component(asset, newProps.children))) {
393
- return React__default['default'].cloneElement(component(asset, newProps.children), lodash.omit(newProps, ['children']));
394
- }
395
- }
396
-
397
- return React__default['default'].createElement(AssetGalleryCompactCard$2, defaultTheme._extends({
398
- ref: newProps.ref
399
- }, newProps));
400
- };
401
-
402
- var ComputedActionButton$1 = React__default['default'].forwardRef(function ComputedActionButton(_ref2, forwardedRef) {
403
- var component = _ref2.component,
404
- className = _ref2.className,
405
- _ref2$subActions = _ref2.subActions,
406
- subActions = _ref2$subActions === void 0 ? [] : _ref2$subActions,
407
- isSubActionsOpened = _ref2.isSubActionsOpened,
408
- props = defaultTheme._objectWithoutProperties(_ref2, ["component", "className", "subActions", "isSubActionsOpened"]);
409
-
410
- var newProps = props;
411
-
412
- if (!lodash.isEmpty(subActions)) {
413
- var contextMenuItems = subActions.map(function (subAction, key) {
414
- var onClick = subAction.onClick,
415
- title = subAction.title,
416
- icon = subAction.icon;
417
- return React__default['default'].createElement(ContextMenuItem.ContextMenuItem, {
418
- key: key,
419
- onClickEffect: onClick,
420
- title: title,
421
- icon: icon
422
- });
423
- });
424
- var contextMenu = React__default['default'].createElement(ContextMenu.ContextMenu, null, contextMenuItems);
425
- newProps.children = React__default['default'].createElement(Popover.Popover, {
426
- contextMenu: true,
427
- content: contextMenu,
428
- placement: 'bottom-end',
429
- visible: isSubActionsOpened,
430
- zIndex: 10001,
431
- offset: [0, -8]
432
- }, React__default['default'].createElement(ActionButton.ActionButton, {
433
- useShadow: true,
434
- active: true,
435
- ref: forwardedRef,
436
- className: className,
437
- icon: newProps.icon,
438
- backgroundColors: ['black', 'white'],
439
- onClick: newProps.onClick,
440
- buttonWidthHeight: newProps.actionButtonWidthHeight
441
- }));
442
- } else {
443
- newProps.children = React__default['default'].createElement(ActionButton.ActionButton, {
444
- useShadow: true,
445
- active: true,
446
- ref: forwardedRef,
447
- className: className,
448
- icon: newProps.icon,
449
- onClick: newProps.onClick,
450
- backgroundColors: ['black', 'white'],
451
- buttonWidthHeight: newProps.actionButtonWidthHeight
452
- });
453
- }
454
-
455
- if (component) {
456
- if (!lodash.isFunction(component)) throw Error('Expected a function in component-prop');
457
-
458
- if (React__default['default'].isValidElement(component())) {
459
- return React__default['default'].cloneElement(component(), defaultTheme._objectSpread2({}, lodash.omit(newProps, 'icon')));
460
- }
461
- }
462
-
463
- return React__default['default'].createElement(React__default['default'].Fragment, null, newProps.children);
464
- });
465
-
466
- var AssetGalleryCompactCard = function AssetGalleryCompactCard(props) {
467
- var _asset$note, _asset$note2, _asset$note3, _asset$note4;
468
-
469
- var asset = props.asset,
470
- activeSummaryCard = props.activeSummaryCard,
471
- displayVersionCount = props.displayVersionCount,
472
- displayVerificationIcon = props.displayVerificationIcon,
473
- selectable = props.selectable,
474
- hasHeightAndWidth = props.hasHeightAndWidth,
475
- selected = props.selected,
476
- extendedSelectMode = props.extendedSelectMode,
477
- onAssetSelected = props.onAssetSelected,
478
- onAssetUnselected = props.onAssetUnselected,
479
- softSelected = props.softSelected,
480
- component = props.component,
481
- scrollPosition = props.scrollPosition,
482
- collapseExtraInfo = props.collapseExtraInfo;
483
-
484
- var _React$useState = React__default['default'].useState(false),
485
- _React$useState2 = defaultTheme._slicedToArray(_React$useState, 2),
486
- isOverlayHovered = _React$useState2[0],
487
- setIsOverlayHovered = _React$useState2[1];
488
-
489
- var _React$useState3 = React__default['default'].useState([]),
490
- _React$useState4 = defaultTheme._slicedToArray(_React$useState3, 2),
491
- openedSubActions = _React$useState4[0],
492
- updateOpenedSubActions = _React$useState4[1];
493
-
494
- React.useEffect(function () {
495
- var _asset$actions;
496
-
497
- var newOpenedSubActions = ((_asset$actions = asset === null || asset === void 0 ? void 0 : asset.actions) !== null && _asset$actions !== void 0 ? _asset$actions : []).map(function () {
498
- return false;
499
- });
500
- updateOpenedSubActions(newOpenedSubActions);
501
- }, [asset]);
502
- React.useEffect(function () {
503
- if (!isOverlayHovered && openedSubActions !== null && openedSubActions !== void 0 && openedSubActions.length) {
504
- updateOpenedSubActions(openedSubActions.map(function () {
505
- return false;
506
- }));
507
- }
508
- }, [isOverlayHovered]);
509
- var mouseHasEnteredOverlay = React.useCallback(function () {
510
- setIsOverlayHovered(true);
511
- }, []);
512
- var mouseHasLeftOverlay = React.useCallback(function () {
513
- setIsOverlayHovered(false);
514
- }, []);
515
- var onSubActionsViewToggle = React.useCallback(function (actionIndex) {
516
- var newOpenedSubActions = openedSubActions.map(function (isOpened, index) {
517
- if (index !== actionIndex) {
518
- return false;
519
- }
520
-
521
- return !isOpened;
522
- });
523
- updateOpenedSubActions(newOpenedSubActions);
524
- }, [openedSubActions]);
525
- var shouldOpenSubActions = React.useCallback(function (actionIndex) {
526
- return openedSubActions[actionIndex];
527
- }, [openedSubActions]);
528
- var isAnySubActionsOpened = React.useMemo(function () {
529
- return openedSubActions.some(function (isOpened) {
530
- return isOpened;
531
- });
532
- }, [openedSubActions]);
533
-
534
- function onClick(event) {
535
- if (extendedSelectMode) {
536
- return onSelectClick(event);
537
- }
538
-
539
- if (lodash.isFunction(asset.onClick)) {
540
- asset.onClick(event, asset);
541
- }
542
- }
543
-
544
- function onSelectClick(event) {
545
- event.preventDefault();
546
- event.stopPropagation();
547
-
548
- if (selected) {
549
- return onAssetUnselected(asset.key);
550
- }
551
-
552
- if (selectable) {
553
- return onAssetSelected(asset.key);
554
- }
555
- }
556
-
557
- var onActionClick = React.useCallback(function (event, action, index) {
558
- event.preventDefault();
559
- event.stopPropagation();
560
-
561
- if (lodash.isFunction(action === null || action === void 0 ? void 0 : action.onClick)) {
562
- action.onClick(asset);
563
- }
564
-
565
- if (!lodash.isEmpty(action === null || action === void 0 ? void 0 : action.subActions)) {
566
- onSubActionsViewToggle(index);
567
- }
568
- }, [onSubActionsViewToggle]);
569
-
570
- function onContextMenu(event) {
571
- event.preventDefault();
572
- asset.onContextMenu(event);
573
- }
574
-
575
- React.useEffect(function () {
576
- if (lodash.isFunction(asset.onContextMenu)) {
577
- if (cardRef.current) {
578
- cardRef.current.addEventListener('contextmenu', onContextMenu);
579
- }
580
-
581
- return function () {
582
- if (cardRef.current) {
583
- cardRef.current.removeEventListener('contextmenu', onContextMenu);
584
- }
585
- };
586
- }
587
- }, []);
588
-
589
- function onDragstart(event) {
590
- asset.onDragstart(event);
591
- }
592
-
593
- React.useEffect(function () {
594
- if (lodash.isFunction(asset.onDragstart)) {
595
- if (dragRef.current) {
596
- dragRef.current.addEventListener('dragstart', onDragstart);
597
- }
598
-
599
- return function () {
600
- if (dragRef.current) {
601
- dragRef.current.removeEventListener('dragstart', onDragstart);
602
- }
603
- };
604
- }
605
- }, []);
606
- var videoPlayerRef = React.useRef();
607
- var cardRef = React.useRef();
608
- var dragRef = React.useRef(null);
609
-
610
- function onMouseEnter(event) {
611
- if (videoPlayerRef.current) {
612
- var playPromise = videoPlayerRef.current.play();
613
-
614
- if (playPromise !== undefined) {
615
- playPromise.then(function () {})["catch"](function () {});
616
- }
617
- }
618
-
619
- if (lodash.isFunction(asset.onMouseEnter)) {
620
- asset.onMouseEnter(event, asset);
621
- }
622
- }
623
-
624
- function onMouseLeave() {
625
- if (videoPlayerRef.current) {
626
- videoPlayerRef.current.pause();
627
- }
628
- }
629
-
630
- var renderPreview = function renderPreview(asset) {
631
- var _asset$fileType, _asset$fileType2;
632
-
633
- var previewContent = null;
634
-
635
- if ((asset === null || asset === void 0 ? void 0 : (_asset$fileType = asset.fileType) === null || _asset$fileType === void 0 ? void 0 : _asset$fileType.toLowerCase()) === 'video') {
636
- previewContent = React__default['default'].createElement(reactLazyLoadImageComponent.LazyLoadComponent, {
637
- scrollPosition: scrollPosition
638
- }, React__default['default'].createElement("video", {
639
- ref: videoPlayerRef,
640
- loop: true,
641
- muted: true
642
- }, React__default['default'].createElement("source", {
643
- src: asset.previewUrl,
644
- type: "video/mp4"
645
- })));
646
- } else if ((asset === null || asset === void 0 ? void 0 : (_asset$fileType2 = asset.fileType) === null || _asset$fileType2 === void 0 ? void 0 : _asset$fileType2.toLowerCase()) === 'audio') {
647
- previewContent = React__default['default'].createElement(reactLazyLoadImageComponent.LazyLoadComponent, {
648
- scrollPosition: scrollPosition
649
- }, React__default['default'].createElement("div", {
650
- className: "audio"
651
- }, React__default['default'].createElement(SvgHeadset, null)));
652
- } else {
653
- previewContent = React__default['default'].createElement(reactLazyLoadImageComponent.LazyLoadImage, {
654
- alt: asset === null || asset === void 0 ? void 0 : asset.title,
655
- src: asset === null || asset === void 0 ? void 0 : asset.previewUrl,
656
- height: "100%",
657
- width: "100%",
658
- delayMethod: "debounce",
659
- delayTime: 0,
660
- threshold: 1500,
661
- scrollPosition: scrollPosition
662
- });
663
- }
664
-
665
- return React__default['default'].createElement(Figure$1, {
666
- hasHeightAndWidth: hasHeightAndWidth
667
- }, previewContent, React__default['default'].createElement(FigureOverlayBackdrop$1, {
668
- selected: selected
669
- }));
670
- };
671
-
672
- React.useEffect(function () {
673
- if (softSelected) {
674
- cardRef.current.scrollIntoView({
675
- behavior: 'smooth',
676
- block: 'nearest'
677
- });
678
- }
679
- }, [softSelected]);
680
- var renderVersionsBadge = React.useCallback(function () {
681
- if (!(asset !== null && asset !== void 0 && asset.versions)) return null;
682
- return React__default['default'].createElement(Badge.Badge, {
683
- badgeIcon: React__default['default'].createElement(SvgLayers, null),
684
- badgeContent: asset.versions,
685
- backgroundColors: ['black', 'black'],
686
- colors: ['#f7f8f9', '#f7f8f9'],
687
- fontSize: 12,
688
- fontWeight: 500,
689
- lineHeight: 16,
690
- verticalPadding: 4,
691
- horizontalPadding: 8
692
- });
693
- }, [asset]);
694
- var renderVerificationBadge = React.useCallback(function () {
695
- if (!(asset !== null && asset !== void 0 && asset.verifications)) return null;
696
- return asset === null || asset === void 0 ? void 0 : asset.verifications;
697
- }, [asset]);
698
- var renderMediaBadge = React.useCallback(function () {
699
- var badgeIcon = null;
700
- var badgeContent = null;
701
-
702
- if ((asset === null || asset === void 0 ? void 0 : asset.fileType) === 'video') {
703
- badgeIcon = React__default['default'].createElement(SvgPlay, null);
704
- }
705
-
706
- if (asset !== null && asset !== void 0 && asset.duration) {
707
- badgeContent = convertMsToHMS(asset.duration);
708
- }
709
-
710
- if (!badgeIcon && !badgeContent) return null;
711
- return React__default['default'].createElement(Badge.Badge, {
712
- badgeIcon: badgeIcon,
713
- badgeContent: badgeContent,
714
- backgroundColors: ['black', 'black'],
715
- colors: ['#f7f8f9', '#f7f8f9'],
716
- fontSize: 12,
717
- fontWeight: 500,
718
- lineHeight: 16,
719
- verticalPadding: 4,
720
- horizontalPadding: 8,
721
- minWidth: 32,
722
- height: 24
723
- });
724
- }, [asset]);
725
- var renderSummaryCardHeaderLeft = React.useCallback(function () {
726
- return React__default['default'].createElement(React__default['default'].Fragment, null, renderVersionsBadge(), renderMediaBadge());
727
- }, [asset]);
728
- var renderPopoverContent = React.useCallback(function () {
729
- var _asset$summary, _asset$summary2, _asset$summary3, _asset$summary4, _asset$summary5, _asset$summary6, _asset$summary7, _asset$summary8;
730
-
731
- return React__default['default'].createElement(SummaryCard, {
732
- activeSummaryCard: activeSummaryCard,
733
- title: (asset === null || asset === void 0 ? void 0 : (_asset$summary = asset.summary) === null || _asset$summary === void 0 ? void 0 : _asset$summary.title) || '',
734
- description: (asset === null || asset === void 0 ? void 0 : (_asset$summary2 = asset.summary) === null || _asset$summary2 === void 0 ? void 0 : _asset$summary2.description) || '',
735
- instructions: (asset === null || asset === void 0 ? void 0 : (_asset$summary3 = asset.summary) === null || _asset$summary3 === void 0 ? void 0 : _asset$summary3.instructions) || '',
736
- instructionsType: (asset === null || asset === void 0 ? void 0 : (_asset$summary4 = asset.summary) === null || _asset$summary4 === void 0 ? void 0 : _asset$summary4.instructionsType) || '',
737
- headerRight: (asset === null || asset === void 0 ? void 0 : (_asset$summary5 = asset.summary) === null || _asset$summary5 === void 0 ? void 0 : _asset$summary5.headerRight) || '',
738
- headerLeft: React__default['default'].createElement(React__default['default'].Fragment, null, renderSummaryCardHeaderLeft(), (asset === null || asset === void 0 ? void 0 : (_asset$summary6 = asset.summary) === null || _asset$summary6 === void 0 ? void 0 : _asset$summary6.headerLeft) || ''),
739
- footerLeft: (asset === null || asset === void 0 ? void 0 : (_asset$summary7 = asset.summary) === null || _asset$summary7 === void 0 ? void 0 : _asset$summary7.footerLeft) || '',
740
- footerRight: (asset === null || asset === void 0 ? void 0 : (_asset$summary8 = asset.summary) === null || _asset$summary8 === void 0 ? void 0 : _asset$summary8.footerRight) || '',
741
- width: 375
742
- });
743
- }, [asset]);
744
- return React__default['default'].createElement(AssetGalleryWrapper$1, {
745
- disabled: asset.disabled
746
- }, React__default['default'].createElement(AssetGalleryCompactCard$2, {
747
- as: ComputedRootComponent$1,
748
- component: component,
749
- disabled: asset.disabled,
750
- asset: asset,
751
- onClick: onClick,
752
- extendedSelectMode: extendedSelectMode,
753
- onMouseEnter: onMouseEnter,
754
- onMouseLeave: onMouseLeave,
755
- draggable: asset.draggable,
756
- innerRef: dragRef,
757
- selected: selected
758
- }, asset.previewUrl && renderPreview(asset), activeSummaryCard ? React__default['default'].createElement(Popover.Popover, {
759
- content: renderPopoverContent(),
760
- placement: 'bottom',
761
- visible: isOverlayHovered && !isAnySubActionsOpened,
762
- zIndex: 10000
763
- }, React__default['default'].createElement(Overlay$1, {
764
- ref: cardRef,
765
- onMouseEnter: mouseHasEnteredOverlay,
766
- onMouseLeave: mouseHasLeftOverlay
767
- }, React__default['default'].createElement(OverlayBackdrop$1, {
768
- softSelected: softSelected,
769
- selected: selected
770
- }), React__default['default'].createElement(OverlayInfoTopActions$1, {
771
- isOverlayHovered: isOverlayHovered
772
- }, asset.actions && asset.actions.map(function (action, index) {
773
- return React__default['default'].createElement(Tooltip.Tooltip, {
774
- key: "".concat(asset.key, "-").concat(action.title),
775
- content: React__default['default'].createElement("span", null, action.title)
776
- }, React__default['default'].createElement(Fragment$1, {
777
- key: "".concat(asset.key, "-").concat(action.title),
778
- as: ComputedActionButton$1,
779
- component: action.component,
780
- className: action.className,
781
- icon: action.icon,
782
- isSubActionsOpened: shouldOpenSubActions(index),
783
- subActions: action.subActions,
784
- onClick: function onClick(event) {
785
- return onActionClick(event, action, index);
786
- },
787
- actionButtonWidthHeight: action.actionButtonWidthHeight
788
- }));
789
- })), React__default['default'].createElement(OverlayInfo$1, null, React__default['default'].createElement(OverlayInfoTop$1, null, React__default['default'].createElement(OverlayInfoTopLeft, {
790
- collapseExtraInfo: collapseExtraInfo
791
- }, displayVersionCount && renderVersionsBadge() || displayVerificationIcon && renderVerificationBadge()), (asset === null || asset === void 0 ? void 0 : (_asset$note = asset.note) === null || _asset$note === void 0 ? void 0 : _asset$note.title) && React__default['default'].createElement(OverlayInfoTopWarning$1, {
792
- type: asset === null || asset === void 0 ? void 0 : (_asset$note2 = asset.note) === null || _asset$note2 === void 0 ? void 0 : _asset$note2.type
793
- }, React__default['default'].createElement(warningCircle.SvgWarningCircle, null))), React__default['default'].createElement(OverlayInfoBottom$1, null, selectable && React__default['default'].createElement(OverlayInfoBottomSelectButton$1, {
794
- selected: selected
795
- }, React__default['default'].createElement(SvgCheckRectangleFilled, {
796
- onClick: onSelectClick
797
- })), React__default['default'].createElement(OverlayInfoBottomMediaIcon$1, null, renderMediaBadge()))), asset.completed && React__default['default'].createElement(OverlayCompleted, {
798
- softSelected: softSelected
799
- }), asset.hasError && React__default['default'].createElement(OverlayHasError, {
800
- softSelected: softSelected
801
- }), selectable && React__default['default'].createElement(OverlaySelected$1, {
802
- selected: selected,
803
- softSelected: softSelected
804
- }))) : React__default['default'].createElement(Overlay$1, {
805
- ref: cardRef,
806
- onMouseEnter: mouseHasEnteredOverlay,
807
- onMouseLeave: mouseHasLeftOverlay
808
- }, React__default['default'].createElement(OverlayBackdrop$1, {
809
- softSelected: softSelected,
810
- selected: selected
811
- }), React__default['default'].createElement(OverlayInfoTopActions$1, {
812
- isOverlayHovered: isOverlayHovered
813
- }, asset.actions && asset.actions.map(function (action, index) {
814
- return React__default['default'].createElement(Tooltip.Tooltip, {
815
- key: "".concat(asset.key, "-").concat(action.title),
816
- content: React__default['default'].createElement("span", null, action.title)
817
- }, React__default['default'].createElement(Fragment$1, {
818
- as: ComputedActionButton$1,
819
- component: action.component,
820
- className: action.className,
821
- icon: action.icon,
822
- isSubActionsOpened: shouldOpenSubActions(index),
823
- subActions: action.subActions,
824
- onClick: function onClick(event) {
825
- return onActionClick(event, action, index);
826
- },
827
- actionButtonWidthHeight: action.actionButtonWidthHeight
828
- }));
829
- })), 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, {
830
- collapseExtraInfo: collapseExtraInfo
831
- }, displayVersionCount && renderVersionsBadge() || displayVerificationIcon && renderVerificationBadge()), (asset === null || asset === void 0 ? void 0 : (_asset$note3 = asset.note) === null || _asset$note3 === void 0 ? void 0 : _asset$note3.title) && React__default['default'].createElement(OverlayInfoTopWarning$1, {
832
- type: asset === null || asset === void 0 ? void 0 : (_asset$note4 = asset.note) === null || _asset$note4 === void 0 ? void 0 : _asset$note4.type
833
- }, React__default['default'].createElement(warningCircle.SvgWarningCircle, null))), React__default['default'].createElement(OverlayInfoBottom$1, null, selectable && React__default['default'].createElement(OverlayInfoBottomSelectButton$1, {
834
- selected: selected
835
- }, React__default['default'].createElement(SvgCheckRectangleFilled, {
836
- onClick: onSelectClick
837
- })), React__default['default'].createElement(OverlayInfoBottomMediaIcon$1, null, renderMediaBadge()))), asset.completed && React__default['default'].createElement(OverlayCompleted, {
838
- softSelected: softSelected
839
- }), asset.hasError && React__default['default'].createElement(OverlayHasError, {
840
- softSelected: softSelected
841
- }), selectable && React__default['default'].createElement(OverlaySelected$1, {
842
- selected: selected,
843
- softSelected: softSelected
844
- })), asset.overlay && React__default['default'].createElement(ConsumerDefinedOverlay$1, null, asset.overlay)));
845
- };
846
-
847
- AssetGalleryCompactCard.propTypes = process.env.NODE_ENV !== "production" ? {
848
- asset: index.PropTypes.shape(assetShapeWithLayout).isRequired,
849
- hasHeightAndWidth: index.PropTypes.bool,
850
- selectable: index.PropTypes.bool,
851
- selected: index.PropTypes.bool,
852
- extendedSelectMode: index.PropTypes.bool,
853
- onAssetSelected: index.PropTypes.func.isRequired,
854
- onAssetUnselected: index.PropTypes.func.isRequired,
855
- softSelected: index.PropTypes.bool.isRequired,
856
- component: index.PropTypes.func,
857
- scrollPosition: index.PropTypes.number,
858
- collapseExtraInfo: index.PropTypes.bool,
859
- activeSummaryCard: index.PropTypes.bool,
860
- actionButtonWidthHeight: index.PropTypes.array
861
- } : {};
862
- AssetGalleryCompactCard.defaultProps = {};
863
- var AssetGalleryCompactCard$1 = reactLazyLoadImageComponent.trackWindowScroll(React__default['default'].memo(AssetGalleryCompactCard, function (prevProps, nextProps) {
864
- var reactiveProps = ['selectable', 'selected', 'extendedSelectMode', 'softSelected', 'asset.previewUrl', 'asset.overlay', 'hasHeightAndWidth', 'collapseExtraInfo'];
865
- return reactiveProps.every(function (propKey) {
866
- return lodash.get(prevProps, propKey) === lodash.get(nextProps, propKey);
867
- });
868
- }));
869
-
870
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26;
871
- var AssetGalleryWrapper = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n ", ";\n"])), function (props) {
872
- return props.disabled && styled.css(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n cursor: not-allowed;\n "])));
873
- });
874
- var AssetGalleryGridCard$2 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject3 || (_templateObject3 = defaultTheme._taggedTemplateLiteral(["\n display: block;\n position: relative;\n height: 100%;\n margin: 0;\n box-sizing: border-box;\n border-width: ", "px;\n border-style: solid;\n text-decoration: none;\n cursor: pointer;\n\n ", "\n\n ", ";\n\n ", "\n\n ", ";\n"])), function (props) {
875
- var selected = props.selected,
876
- softSelected = props.softSelected,
877
- hasError = props.hasError,
878
- completed = props.completed;
879
- return selected || softSelected || hasError || completed ? 3 : 1;
880
- }, function (props) {
881
- return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-700'));
882
- }, function (props) {
883
- return props.disabled && styled.css(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n pointer-events: none;\n opacity: 0.4;\n "])));
884
- }, function (props) {
885
- return props.extendedSelectMode && styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n cursor: pointer;\n "])));
886
- }, function (props) {
887
- if (props.softSelected) {
888
- return props.theme.themeProp('border-color', polished.rgba(props.theme.getColor('gray-100'), 0.5), polished.rgba(props.theme.getColor('gray-700'), 0.5));
889
- }
890
-
891
- if (props.selected) {
892
- return props.theme.themeProp('border-color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'));
893
- }
894
-
895
- if (props.completed) {
896
- return props.theme.themeProp('border-color', props.theme.getColor('emerald-500'), polished.rgba(props.theme.getColor('emerald-500'), 0.7));
897
- }
898
-
899
- if (props.hasError) {
900
- return props.theme.themeProp('border-color', props.theme.getColor('red-600'), polished.rgba(props.theme.getColor('red-500'), 0.7));
901
- }
902
-
903
- return props.theme.themeProp('border-color', props.theme.getColor('gray-700'), props.theme.getColor('gray-300'));
904
- });
905
- var ContentWrapper = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n padding: ", "px;\n padding-top: 35px;\n height: 100%;\n"])), function (props) {
906
- return props.selected || props.softSelected ? 4 : 0;
907
- });
908
- var Asset = styled__default['default'].div(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n position: relative;\n padding: 0 36px;\n min-height: 200px;\n box-sizing: border-box;\n\n video {\n display: block;\n }\n\n .audio {\n display: flex;\n justify-content: center;\n svg {\n width: 25%;\n }\n }\n"])));
909
- var Figure = styled__default['default'].figure(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n margin: 0;\n\n img,\n video,\n .audio {\n display: block;\n max-height: 200px;\n width: 100%;\n box-sizing: border-box;\n\n ", "\n }\n\n .audio {\n display: flex;\n height: 200px;\n justify-content: center;\n svg {\n width: 25%;\n }\n }\n"])), function (props) {
910
- return props.hasHeightAndWidth ? styled.css(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n object-fit: cover;\n "]))) : styled.css(_templateObject10 || (_templateObject10 = defaultTheme._taggedTemplateLiteral(["\n object-fit: contain;\n "])));
911
- });
912
- var FigureOverlayBackdrop = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n inset: 0;\n opacity: ", ";\n background-color: ", ";\n"])), function (props) {
913
- return props.selected ? 0.6 : 0;
914
- }, function (props) {
915
- return props.selected ? '#ACCEF7' : 'transparent';
916
- });
917
- var Overlay = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n"])));
918
- var OverlayBackdrop = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n opacity: 0;\n transition: opacity 220ms;\n ", "\n\n ", "\n\n ", ":hover & {\n opacity: 1;\n }\n\n ", ":hover & {\n opacity: 1;\n }\n"])), function (props) {
919
- return !props.selected ? styled.css(_templateObject14 || (_templateObject14 = defaultTheme._taggedTemplateLiteral(["\n background: radial-gradient(\n ellipse at center,\n rgba(0, 0, 0, 0.3) 27%,\n rgba(0, 0, 0, 0.5) 60%,\n rgba(0, 0, 0, 0.7) 90%\n );\n "]))) : null;
920
- }, function (props) {
921
- return (props.selected || props.softSelected) && styled.css(_templateObject15 || (_templateObject15 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n "])));
922
- }, Overlay, AssetGalleryGridCard$2);
923
- var OverlayInfo = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject16 || (_templateObject16 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 15px 12px 10px;\n color: ", ";\n"])), function (props) {
924
- return props.theme.getColor('gray-100');
925
- });
926
- var OverlaySelected = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject17 || (_templateObject17 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n"])));
927
- var OverlayInfoTop = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject18 || (_templateObject18 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n padding: 8px;\n display: flex;\n"])));
928
- var OverlayInfoTopVersions = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject19 || (_templateObject19 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n\n ", ":hover & {\n opacity: 0;\n }\n"])), AssetGalleryGridCard$2);
929
- var OverlayInfoTopWarning = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject20 || (_templateObject20 = defaultTheme._taggedTemplateLiteral(["\n margin-left: auto;\n height: 24px;\n width: 24px;\n border-radius: 50%;\n box-sizing: border-box;\n padding: ", ";\n background-color: ", ";\n opacity: 1;\n\n svg {\n width: 100%;\n color: ", ";\n }\n\n ", ":hover & {\n opacity: 0;\n }\n"])), function (props) {
930
- return props.type === 'error' ? 0 : '4px';
931
- }, function (props) {
932
- return props.type === 'error' ? props.theme.getColor('red-500') : props.theme.getColor('gray-100');
933
- }, function (props) {
934
- return props.type === 'error' ? props.theme.getColor('gray-100') : props.theme.getColor('gray-700');
935
- }, AssetGalleryGridCard$2);
936
- var OverlayInfoTopActions = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject21 || (_templateObject21 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n right: 0;\n padding: 4px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n transition: opacity 220ms;\n z-index: 99999;\n ", "\n\n opacity: ", ";\n"])), function (props) {
937
- return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-700'));
938
- }, function (props) {
939
- return props.isCardHovered ? 1 : 0;
940
- });
941
- var OverlayInfoBottom = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject22 || (_templateObject22 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n padding: 8px;\n display: flex;\n"])));
942
- var OverlayInfoBottomSelectButton = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject23 || (_templateObject23 = defaultTheme._taggedTemplateLiteral(["\n opacity: ", ";\n flex-shrink: 0;\n cursor: pointer;\n transition: opacity 220ms;\n\n > svg {\n width: 23px;\n height: 100%;\n transition: opacity 120ms;\n opacity: ", ";\n }\n\n ", ":hover & {\n opacity: 1;\n }\n\n ", ":hover & {\n opacity: 1;\n }\n"])), function (props) {
943
- return props.selected ? 1 : 0;
944
- }, function (props) {
945
- return props.selected ? 1 : 0.5;
946
- }, Overlay, AssetGalleryGridCard$2);
947
- var OverlayInfoBottomMediaIcon = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject24 || (_templateObject24 = defaultTheme._taggedTemplateLiteral(["\n margin-left: auto;\n opacity: 1;\n ", ":hover & {\n opacity: 0;\n }\n"])), AssetGalleryGridCard$2);
948
- var ConsumerDefinedOverlay = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject25 || (_templateObject25 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n"])));
949
- var Fragment = styled__default['default'].div(_templateObject26 || (_templateObject26 = defaultTheme._taggedTemplateLiteral(["\n margin: 4px;\n"])));
950
-
951
- var ComputedRootComponent = function ComputedRootComponent(_ref) {
952
- var component = _ref.component,
953
- asset = _ref.asset,
954
- props = defaultTheme._objectWithoutProperties(_ref, ["component", "asset"]);
955
-
956
- var newProps = lodash.mapKeys(lodash.omit(props, ['theme', 'extendedSelectMode']), function (_, key) {
957
- return key === 'innerRef' ? 'ref' : key;
958
- });
959
-
960
- if (component) {
961
- if (!lodash.isFunction(component)) throw Error('Expected a function in component-prop');
962
-
963
- if (React__default['default'].isValidElement(component(asset, newProps.children))) {
964
- return React__default['default'].cloneElement(component(asset, newProps.children), lodash.omit(newProps, ['children']));
965
- }
966
- }
967
-
968
- return React__default['default'].createElement(AssetGalleryGridCard$2, defaultTheme._extends({
969
- ref: newProps.ref
970
- }, newProps));
971
- };
972
-
973
- var ComputedActionButton = React__default['default'].forwardRef(function ComputedActionButton(_ref2, forwardedRef) {
974
- var component = _ref2.component,
975
- className = _ref2.className,
976
- _ref2$subActions = _ref2.subActions,
977
- subActions = _ref2$subActions === void 0 ? [] : _ref2$subActions,
978
- isSubActionsOpened = _ref2.isSubActionsOpened,
979
- props = defaultTheme._objectWithoutProperties(_ref2, ["component", "className", "subActions", "isSubActionsOpened"]);
980
-
981
- var newProps = props;
982
-
983
- if (!lodash.isEmpty(subActions)) {
984
- var contextMenuItems = subActions.map(function (subAction, key) {
985
- var onClick = subAction.onClick,
986
- title = subAction.title,
987
- icon = subAction.icon;
988
- return React__default['default'].createElement(ContextMenuItem.ContextMenuItem, {
989
- key: key,
990
- onClickEffect: onClick,
991
- title: title,
992
- icon: icon
993
- });
994
- });
995
- var contextMenu = React__default['default'].createElement(ContextMenu.ContextMenu, null, contextMenuItems);
996
- newProps.children = React__default['default'].createElement(Popover.Popover, {
997
- contextMenu: true,
998
- content: contextMenu,
999
- placement: 'bottom-end',
1000
- visible: isSubActionsOpened,
1001
- zIndex: 10001,
1002
- offset: [0, -8]
1003
- }, React__default['default'].createElement(ActionButton.ActionButton, {
1004
- useShadow: true,
1005
- active: true,
1006
- ref: forwardedRef,
1007
- className: className,
1008
- icon: newProps.icon,
1009
- backgroundColors: ['black', 'white'],
1010
- onClick: newProps.onClick,
1011
- buttonWidthHeight: newProps.actionButtonWidthHeight
1012
- }));
1013
- } else {
1014
- newProps.children = React__default['default'].createElement(ActionButton.ActionButton, {
1015
- useShadow: true,
1016
- active: true,
1017
- ref: forwardedRef,
1018
- className: className,
1019
- icon: newProps.icon,
1020
- onClick: newProps.onClick,
1021
- backgroundColors: ['black', 'white'],
1022
- buttonWidthHeight: newProps.actionButtonWidthHeight
1023
- });
1024
- }
1025
-
1026
- if (component) {
1027
- if (!lodash.isFunction(component)) throw Error('Expected a function in component-prop');
1028
-
1029
- if (React__default['default'].isValidElement(component())) {
1030
- return React__default['default'].cloneElement(component(), defaultTheme._objectSpread2({}, lodash.omit(newProps, 'icon')));
1031
- }
1032
- }
1033
-
1034
- return React__default['default'].createElement(React__default['default'].Fragment, null, newProps.children);
1035
- });
1036
-
1037
- var AssetGalleryGridCard = function AssetGalleryGridCard(props) {
1038
- var asset = props.asset,
1039
- selectable = props.selectable,
1040
- selected = props.selected,
1041
- extendedSelectMode = props.extendedSelectMode,
1042
- onAssetSelected = props.onAssetSelected,
1043
- onAssetUnselected = props.onAssetUnselected,
1044
- softSelected = props.softSelected,
1045
- component = props.component,
1046
- scrollPosition = props.scrollPosition;
1047
-
1048
- var _React$useState = React__default['default'].useState(false),
1049
- _React$useState2 = defaultTheme._slicedToArray(_React$useState, 2),
1050
- isCardHovered = _React$useState2[0],
1051
- setIsCardHovered = _React$useState2[1];
1052
-
1053
- var _React$useState3 = React__default['default'].useState([]),
1054
- _React$useState4 = defaultTheme._slicedToArray(_React$useState3, 2),
1055
- openedSubActions = _React$useState4[0],
1056
- updateOpenedSubActions = _React$useState4[1];
1057
-
1058
- React.useEffect(function () {
1059
- var _asset$actions;
1060
-
1061
- var newOpenedSubActions = ((_asset$actions = asset === null || asset === void 0 ? void 0 : asset.actions) !== null && _asset$actions !== void 0 ? _asset$actions : []).map(function () {
1062
- return false;
1063
- });
1064
- updateOpenedSubActions(newOpenedSubActions);
1065
- }, [asset]);
1066
- React.useEffect(function () {
1067
- if (!isCardHovered && openedSubActions !== null && openedSubActions !== void 0 && openedSubActions.length) {
1068
- updateOpenedSubActions(openedSubActions.map(function () {
1069
- return false;
1070
- }));
1071
- }
1072
- }, [isCardHovered]);
1073
- var mouseHasEnteredCard = React.useCallback(function () {
1074
- setIsCardHovered(true);
1075
- }, []);
1076
- var mouseHasLeftCard = React.useCallback(function () {
1077
- setIsCardHovered(false);
1078
- }, []);
1079
- var onSubActionsViewToggle = React.useCallback(function (actionIndex) {
1080
- var newOpenedSubActions = openedSubActions.map(function (isOpened, index) {
1081
- if (index !== actionIndex) {
1082
- return false;
1083
- }
1084
-
1085
- return !isOpened;
1086
- });
1087
- updateOpenedSubActions(newOpenedSubActions);
1088
- }, [openedSubActions]);
1089
- var videoPlayerRef = React.useRef();
1090
- var cardRef = React.useRef();
1091
- var dragRef = React.useRef(null);
1092
-
1093
- function onMouseEnter(event) {
1094
- if (videoPlayerRef.current) {
1095
- var playPromise = videoPlayerRef.current.play();
1096
-
1097
- if (playPromise !== undefined) {
1098
- playPromise.then(function () {})["catch"](function () {});
1099
- }
1100
- }
1101
-
1102
- if (lodash.isFunction(asset.onMouseEnter)) {
1103
- asset.onMouseEnter(event, asset);
1104
- }
1105
-
1106
- mouseHasEnteredCard();
1107
- }
1108
-
1109
- function onMouseLeave() {
1110
- if (videoPlayerRef.current) {
1111
- videoPlayerRef.current.pause();
1112
- }
1113
-
1114
- mouseHasLeftCard();
1115
- }
1116
-
1117
- function onClick(event) {
1118
- if (extendedSelectMode) {
1119
- return onSelectClick(event);
1120
- }
1121
-
1122
- if (lodash.isFunction(asset.onClick)) {
1123
- asset.onClick(event, asset);
1124
- }
1125
- }
1126
-
1127
- function onSelectClick(event) {
1128
- event.preventDefault();
1129
- event.stopPropagation();
1130
-
1131
- if (selected) {
1132
- return onAssetUnselected(asset.key);
1133
- }
1134
-
1135
- return onAssetSelected(asset.key);
1136
- }
1137
-
1138
- var onActionClick = React.useCallback(function (event, action, index) {
1139
- event.preventDefault();
1140
- event.stopPropagation();
1141
-
1142
- if (lodash.isFunction(action === null || action === void 0 ? void 0 : action.onClick)) {
1143
- action.onClick(asset);
1144
- }
1145
-
1146
- if (!lodash.isEmpty(action === null || action === void 0 ? void 0 : action.subActions)) {
1147
- onSubActionsViewToggle(index);
1148
- }
1149
- }, [onSubActionsViewToggle]);
1150
- var shouldOpenSubActions = React.useCallback(function (actionIndex) {
1151
- return openedSubActions[actionIndex];
1152
- }, [openedSubActions]);
1153
-
1154
- function onContextMenu(event) {
1155
- event.preventDefault();
1156
- asset.onContextMenu(event);
1157
- }
1158
-
1159
- function renderPreview(asset) {
1160
- var _asset$fileType, _asset$fileType2, _asset$note, _asset$note2;
1161
-
1162
- var previewContent = null;
1163
-
1164
- if (((_asset$fileType = asset.fileType) === null || _asset$fileType === void 0 ? void 0 : _asset$fileType.toLowerCase()) === 'video') {
1165
- previewContent = React__default['default'].createElement(reactLazyLoadImageComponent.LazyLoadComponent, {
1166
- scrollPosition: scrollPosition
1167
- }, React__default['default'].createElement("video", {
1168
- ref: videoPlayerRef,
1169
- loop: true,
1170
- muted: true
1171
- }, React__default['default'].createElement("source", {
1172
- src: asset.previewUrl,
1173
- type: "video/mp4"
1174
- })));
1175
- } else if (((_asset$fileType2 = asset.fileType) === null || _asset$fileType2 === void 0 ? void 0 : _asset$fileType2.toLowerCase()) === 'audio') {
1176
- previewContent = React__default['default'].createElement(reactLazyLoadImageComponent.LazyLoadComponent, {
1177
- scrollPosition: scrollPosition
1178
- }, React__default['default'].createElement("div", {
1179
- className: "audio"
1180
- }, React__default['default'].createElement(SvgHeadset, null)));
1181
- } else {
1182
- previewContent = React__default['default'].createElement(reactLazyLoadImageComponent.LazyLoadImage, {
1183
- alt: asset.title,
1184
- src: asset.previewUrl,
1185
- height: "100%",
1186
- width: "100%",
1187
- delayMethod: "debounce",
1188
- delayTime: 0,
1189
- threshold: 1500,
1190
- scrollPosition: scrollPosition
1191
- });
1192
- }
1193
-
1194
- return React__default['default'].createElement(Figure, {
1195
- selected: selected
1196
- }, previewContent, React__default['default'].createElement(FigureOverlayBackdrop, {
1197
- selected: selected
1198
- }), React__default['default'].createElement(Overlay, {
1199
- ref: cardRef
1200
- }, React__default['default'].createElement(OverlayBackdrop, {
1201
- $softSelected: softSelected,
1202
- selected: selected
1203
- }), React__default['default'].createElement(OverlayInfo, null, React__default['default'].createElement(OverlayInfoTop, null, React__default['default'].createElement(OverlayInfoTopVersions, null, renderVersionsBadge()), (asset === null || asset === void 0 ? void 0 : (_asset$note = asset.note) === null || _asset$note === void 0 ? void 0 : _asset$note.title) && React__default['default'].createElement(OverlayInfoTopWarning, {
1204
- type: asset === null || asset === void 0 ? void 0 : (_asset$note2 = asset.note) === null || _asset$note2 === void 0 ? void 0 : _asset$note2.type
1205
- }, React__default['default'].createElement(warningCircle.SvgWarningCircle, null)), React__default['default'].createElement(OverlayInfoTopActions, {
1206
- isCardHovered: isCardHovered
1207
- }, asset.actions && asset.actions.map(function (action, index) {
1208
- return React__default['default'].createElement(Tooltip.Tooltip, {
1209
- key: "".concat(asset.key, "-").concat(action.title),
1210
- content: action.title
1211
- }, React__default['default'].createElement(Fragment, {
1212
- key: "".concat(asset.key, "-").concat(action.title),
1213
- as: ComputedActionButton,
1214
- component: action.component,
1215
- className: action.className,
1216
- icon: action.icon,
1217
- isCardHovered: isCardHovered,
1218
- isSubActionsOpened: shouldOpenSubActions(index),
1219
- onClick: function onClick(event) {
1220
- return onActionClick(event, action, index);
1221
- },
1222
- subActions: action === null || action === void 0 ? void 0 : action.subActions,
1223
- actionButtonWidthHeight: action.actionButtonWidthHeight
1224
- }));
1225
- }))), React__default['default'].createElement(OverlayInfoBottom, null, selectable && React__default['default'].createElement(OverlayInfoBottomSelectButton, {
1226
- selected: selected
1227
- }, React__default['default'].createElement(SvgCheckRectangleFilled, {
1228
- onClick: onSelectClick
1229
- })), React__default['default'].createElement(OverlayInfoBottomMediaIcon, null, renderMediaBadge()))), selectable && React__default['default'].createElement(OverlaySelected, {
1230
- selected: selected,
1231
- $softSelected: softSelected
1232
- })), asset.overlay && React__default['default'].createElement(ConsumerDefinedOverlay, null, asset.overlay));
1233
- }
1234
-
1235
- React.useEffect(function () {
1236
- if (lodash.isFunction(asset.onContextMenu)) {
1237
- if (cardRef.current) {
1238
- cardRef.current.addEventListener('contextmenu', onContextMenu);
1239
- }
1240
-
1241
- return function () {
1242
- if (cardRef.current) {
1243
- cardRef.current.removeEventListener('contextmenu', onContextMenu);
1244
- }
1245
- };
1246
- }
1247
- }, []);
1248
-
1249
- function onDragstart(event) {
1250
- asset.onDragstart(event);
1251
- }
1252
-
1253
- React.useEffect(function () {
1254
- if (lodash.isFunction(asset.onDragstart)) {
1255
- if (dragRef.current) {
1256
- dragRef.current.addEventListener('dragstart', onDragstart);
1257
- }
1258
-
1259
- return function () {
1260
- if (dragRef.current) {
1261
- dragRef.current.removeEventListener('dragstart', onDragstart);
1262
- }
1263
- };
1264
- }
1265
- }, []);
1266
- React.useEffect(function () {
1267
- if (softSelected) {
1268
- cardRef.current.scrollIntoView({
1269
- behavior: 'smooth',
1270
- block: 'nearest'
1271
- });
1272
- }
1273
- }, [softSelected]);
1274
- var renderVersionsBadge = React.useCallback(function () {
1275
- if (!(asset !== null && asset !== void 0 && asset.versions)) return null;
1276
- return React__default['default'].createElement(Badge.Badge, {
1277
- badgeIcon: React__default['default'].createElement(SvgLayers, null),
1278
- badgeContent: asset.versions,
1279
- backgroundColors: ['black', 'black'],
1280
- colors: ['#f7f8f9', '#f7f8f9'],
1281
- fontSize: 12,
1282
- fontWeight: 500,
1283
- lineHeight: 16,
1284
- verticalPadding: 4,
1285
- horizontalPadding: 8
1286
- });
1287
- }, [asset]);
1288
- var renderMediaBadge = React.useCallback(function () {
1289
- var badgeIcon = null;
1290
- var badgeContent = null;
1291
-
1292
- if ((asset === null || asset === void 0 ? void 0 : asset.fileType) === 'video') {
1293
- badgeIcon = React__default['default'].createElement(SvgPlay, null);
1294
- }
1295
-
1296
- if (asset !== null && asset !== void 0 && asset.duration) {
1297
- badgeContent = convertMsToHMS(asset.duration);
1298
- }
1299
-
1300
- if (!badgeIcon && !badgeContent) return null;
1301
- return React__default['default'].createElement(Badge.Badge, {
1302
- badgeIcon: badgeIcon,
1303
- badgeContent: badgeContent,
1304
- backgroundColors: ['black', 'black'],
1305
- colors: ['#f7f8f9', '#f7f8f9'],
1306
- fontSize: 12,
1307
- fontWeight: 500,
1308
- lineHeight: 16,
1309
- verticalPadding: 4,
1310
- horizontalPadding: 8,
1311
- minWidth: 32,
1312
- height: 24
1313
- });
1314
- }, [asset]);
1315
- var renderSummary = React.useCallback(function () {
1316
- var _asset$summary, _asset$summary2, _asset$summary3, _asset$summary4, _asset$summary5, _asset$summary6;
1317
-
1318
- return React__default['default'].createElement(SummaryCard, {
1319
- activeSummaryCard: true,
1320
- title: (asset === null || asset === void 0 ? void 0 : (_asset$summary = asset.summary) === null || _asset$summary === void 0 ? void 0 : _asset$summary.title) || '',
1321
- description: (asset === null || asset === void 0 ? void 0 : (_asset$summary2 = asset.summary) === null || _asset$summary2 === void 0 ? void 0 : _asset$summary2.description) || '',
1322
- instructions: (asset === null || asset === void 0 ? void 0 : (_asset$summary3 = asset.summary) === null || _asset$summary3 === void 0 ? void 0 : _asset$summary3.instructions) || '',
1323
- instructionsType: (asset === null || asset === void 0 ? void 0 : (_asset$summary4 = asset.summary) === null || _asset$summary4 === void 0 ? void 0 : _asset$summary4.instructionsType) || '',
1324
- footerLeft: (asset === null || asset === void 0 ? void 0 : (_asset$summary5 = asset.summary) === null || _asset$summary5 === void 0 ? void 0 : _asset$summary5.footerLeft) || '',
1325
- footerRight: (asset === null || asset === void 0 ? void 0 : (_asset$summary6 = asset.summary) === null || _asset$summary6 === void 0 ? void 0 : _asset$summary6.footerRight) || ''
1326
- });
1327
- }, [asset]);
1328
- return React__default['default'].createElement(AssetGalleryWrapper, {
1329
- disabled: asset.disabled
1330
- }, React__default['default'].createElement(AssetGalleryGridCard$2, {
1331
- as: ComputedRootComponent,
1332
- component: component,
1333
- asset: asset,
1334
- disabled: asset.disabled,
1335
- onClick: onClick,
1336
- extendedSelectMode: extendedSelectMode,
1337
- onMouseEnter: onMouseEnter,
1338
- onMouseLeave: onMouseLeave,
1339
- draggable: asset.draggable,
1340
- innerRef: dragRef,
1341
- selected: selected,
1342
- $softSelected: softSelected,
1343
- completed: asset === null || asset === void 0 ? void 0 : asset.completed,
1344
- $hasError: asset === null || asset === void 0 ? void 0 : asset.hasError
1345
- }, React__default['default'].createElement(ContentWrapper, {
1346
- layout: asset.layout,
1347
- ref: cardRef,
1348
- $softSelected: softSelected,
1349
- selected: selected
1350
- }, React__default['default'].createElement(Asset, {
1351
- "data-id": "ss",
1352
- selected: selected
1353
- }, asset.previewUrl && renderPreview(asset)), renderSummary())));
1354
- };
1355
-
1356
- AssetGalleryGridCard.propTypes = process.env.NODE_ENV !== "production" ? {
1357
- asset: index.PropTypes.shape(assetShapeWithLayout).isRequired,
1358
- selectable: index.PropTypes.bool,
1359
- selected: index.PropTypes.bool,
1360
- extendedSelectMode: index.PropTypes.bool,
1361
- onAssetSelected: index.PropTypes.func.isRequired,
1362
- onAssetUnselected: index.PropTypes.func.isRequired,
1363
- softSelected: index.PropTypes.bool.isRequired,
1364
- component: index.PropTypes.func,
1365
- scrollPosition: index.PropTypes.number
1366
- } : {};
1367
- AssetGalleryGridCard.defaultProps = {};
1368
- var AssetGalleryGridCard$1 = reactLazyLoadImageComponent.trackWindowScroll(React__default['default'].memo(AssetGalleryGridCard, function (prevProps, nextProps) {
1369
- var reactiveProps = ['selectable', 'selected', 'extendedSelectMode', 'softSelected', 'asset.previewUrl', 'asset.overlay', 'asset.layout'];
1370
- return reactiveProps.every(function (propKey) {
1371
- return lodash.get(prevProps, propKey) === lodash.get(nextProps, propKey);
1372
- });
1373
- }));
1374
-
1375
- var AssetGalleryBase = React__default['default'].forwardRef(function AssetGalleryBase(_ref, forwardedRef) {
1376
- var assetsProp = _ref.assets,
1377
- activeSummaryCard = _ref.activeSummaryCard,
1378
- displayVersionCount = _ref.displayVersionCount,
1379
- displayVerificationIcon = _ref.displayVerificationIcon,
1380
- viewMode = _ref.viewMode,
1381
- thumbnailMaxHeight = _ref.thumbnailMaxHeight,
1382
- selectable = _ref.selectable,
1383
- selectedAssetKeys = _ref.selectedAssetKeys,
1384
- onAssetSelected = _ref.onAssetSelected,
1385
- onAssetUnselected = _ref.onAssetUnselected,
1386
- softSelectable = _ref.softSelectable,
1387
- softSelectedAssetKey = _ref.softSelectedAssetKey,
1388
- scrollElementProp = _ref.scrollElement,
1389
- onAssetSoftSelectedChanged = _ref.onAssetSoftSelectedChanged,
1390
- component = _ref.component,
1391
- props = defaultTheme._objectWithoutProperties(_ref, ["assets", "activeSummaryCard", "displayVersionCount", "displayVerificationIcon", "viewMode", "thumbnailMaxHeight", "selectable", "selectedAssetKeys", "onAssetSelected", "onAssetUnselected", "softSelectable", "softSelectedAssetKey", "scrollElement", "onAssetSoftSelectedChanged", "component"]);
1392
-
1393
- var assetGalleryDOMNode = React.useRef();
1394
- var assetGalleryCompactRef = useMergedRefs.useMergedRefs(forwardedRef, assetGalleryDOMNode);
1395
- var assetGalleryWidth = React.useRef(0);
1396
- var minimumRowAspectRatio = React.useRef(0);
1397
- var calculatedAssets = React.useRef([]);
1398
-
1399
- var _useState = React.useState([]),
1400
- _useState2 = defaultTheme._slicedToArray(_useState, 2),
1401
- assets = _useState2[0],
1402
- setAssets = _useState2[1];
1403
-
1404
- var MAXIMUM_ROW_HEIGHT = React.useMemo(function () {
1405
- return viewMode === 'grid' ? 450 : thumbnailMaxHeight;
1406
- }, [viewMode, thumbnailMaxHeight]);
1407
- var SPACE_BETWEEN_ASSETS = 8;
1408
- var SPACE_UNDER_ASSETS = 8;
1409
- var PRIMARY_SCROLL_BUFFER_HEIGHT = 1500;
1410
- var SECONDARY_SCROLL_BUFFER_HEIGHT = 500;
1411
- var GRID_VIEW_MODE_ASSET_MIN_WIDTH = 300;
1412
- var GRID_VIEW_MODE_ASSET_HEIGHT = 427;
1413
- var MISSING_WIDTH_PLACEHOLDER = 1920;
1414
- var MISSING_HEIGHT_PLACEHOLDER = 1080;
1415
- var isBrowser = typeof window !== 'undefined';
1416
- var scrollElement = scrollElementProp || window;
1417
- var previousYOffset = React.useRef(isBrowser ? scrollElement.pageYOffset : 0);
1418
- var latestYOffset = React.useRef(isBrowser ? scrollElement.pageYOffset : 0);
1419
- var scrollDirection = React.useRef('down');
1420
- MultiLevelCheckboxSelect.useIsomorphicLayoutEffect(function () {
1421
- if (!assetGalleryDOMNode.current) return;
1422
- var throttledOnResize = lodash.throttle(onResize, 1);
1423
- var resizeObserver = new ResizeObserver__default['default'](throttledOnResize);
1424
- resizeObserver.observe(assetGalleryDOMNode.current);
1425
-
1426
- function onResize(entries) {
1427
- entries.forEach(function (entry) {
1428
- if (assetGalleryWidth.current === entry.contentRect.width) return;
1429
- window.requestAnimationFrame(function () {
1430
- assetGalleryWidth.current = entry.contentRect.width;
1431
- main();
1432
- });
1433
- });
1434
- }
1435
-
1436
- return function () {
1437
- resizeObserver.unobserve(assetGalleryDOMNode.current);
1438
- };
1439
- }, [assetsProp, assetGalleryDOMNode, MAXIMUM_ROW_HEIGHT]);
1440
- React.useEffect(function () {
1441
- main();
1442
- }, [MAXIMUM_ROW_HEIGHT, assetsProp]);
1443
-
1444
- var main = function main() {
1445
- calculateAssetGalleryAspectRatio();
1446
- calculateLayout();
1447
- calculateVisibility();
1448
- };
1449
-
1450
- var calculateAssetGalleryAspectRatio = function calculateAssetGalleryAspectRatio() {
1451
- if (assetGalleryWidth.current > 0) {
1452
- minimumRowAspectRatio.current = calculateAspectRatio(assetGalleryWidth.current, MAXIMUM_ROW_HEIGHT);
1453
- }
1454
- };
1455
-
1456
- var calculateLayout = function calculateLayout() {
1457
- var assetsWithoutAKey = assetsProp.filter(function (a) {
1458
- return !a.key;
1459
- });
1460
-
1461
- if (assetsWithoutAKey.length > 0) {
1462
- assetsProp = assetsProp.filter(function (a) {
1463
- return a.key;
1464
- });
1465
- assetsWithoutAKey.forEach(function (a) {
1466
- return console.warn('Omitted asset from the gallery because it was missing the unique `key` property.', a);
1467
- });
1468
- }
1469
-
1470
- if (viewMode === 'grid' && assetGalleryWidth.current > 0) {
1471
- var row = [];
1472
- var translateX = 0;
1473
- var translateY = 0;
1474
- var computedAssets = [];
1475
- var lastGroup = null;
1476
- var desiredAssetCountInRow = Math.floor(assetGalleryWidth.current / GRID_VIEW_MODE_ASSET_MIN_WIDTH) || 1;
1477
- var desiredAssetWidth = assetGalleryWidth.current / desiredAssetCountInRow - SPACE_BETWEEN_ASSETS + SPACE_BETWEEN_ASSETS / desiredAssetCountInRow;
1478
- assetsProp.forEach(function (asset, index) {
1479
- var _assetsProp;
1480
-
1481
- if (asset.group && asset.group !== lastGroup) {
1482
- computedAssets.push({
1483
- title: asset.group,
1484
- key: asset.key,
1485
- layout: {
1486
- type: 'groupLabel',
1487
- height: 50,
1488
- translateX: Math.round(translateX),
1489
- translateY: Math.round(translateY)
1490
- }
1491
- });
1492
- lastGroup = asset.group;
1493
- translateY += 50 + SPACE_UNDER_ASSETS;
1494
- }
1495
-
1496
- row.push(asset);
1497
-
1498
- if (row.length === desiredAssetCountInRow || index + 1 === assetsProp.length || (_assetsProp = assetsProp[index + 1]) !== null && _assetsProp !== void 0 && _assetsProp.group && assetsProp[index + 1].group !== asset.group) {
1499
- row.forEach(function (rowAsset) {
1500
- computedAssets.push(defaultTheme._objectSpread2(defaultTheme._objectSpread2({}, rowAsset), {}, {
1501
- layout: {
1502
- type: 'asset',
1503
- width: Math.round(desiredAssetWidth),
1504
- height: Math.round(GRID_VIEW_MODE_ASSET_HEIGHT),
1505
- translateX: Math.round(translateX),
1506
- translateY: Math.round(translateY)
1507
- }
1508
- }));
1509
- translateX += desiredAssetWidth + SPACE_BETWEEN_ASSETS;
1510
- });
1511
- row = [];
1512
- translateX = 0;
1513
- translateY += GRID_VIEW_MODE_ASSET_HEIGHT + SPACE_UNDER_ASSETS;
1514
- }
1515
- });
1516
- calculatedAssets.current = computedAssets;
1517
- } else {
1518
- if (minimumRowAspectRatio.current > 0) {
1519
- var _row = [];
1520
- var _translateX = 0;
1521
- var _translateY = 0;
1522
- var rowAspectRatio = 0;
1523
- var _lastGroup = null;
1524
- var _computedAssets = [];
1525
- assetsProp.forEach(function (asset, index) {
1526
- var _assetsProp2;
1527
-
1528
- if (asset.group && asset.group !== _lastGroup) {
1529
- _computedAssets.push({
1530
- title: asset.group,
1531
- key: asset.key,
1532
- layout: {
1533
- type: 'groupLabel',
1534
- height: 50,
1535
- translateX: Math.round(_translateX),
1536
- translateY: Math.round(_translateY)
1537
- }
1538
- });
1539
-
1540
- _lastGroup = asset.group;
1541
- _translateY += 50 + SPACE_UNDER_ASSETS;
1542
- }
1543
-
1544
- rowAspectRatio += calculateAspectRatio(asset.width || MISSING_WIDTH_PLACEHOLDER, asset.height || MISSING_HEIGHT_PLACEHOLDER);
1545
-
1546
- _row.push(asset);
1547
-
1548
- if (rowAspectRatio >= minimumRowAspectRatio.current || index + 1 === assetsProp.length || (_assetsProp2 = assetsProp[index + 1]) !== null && _assetsProp2 !== void 0 && _assetsProp2.group && assetsProp[index + 1].group !== asset.group) {
1549
- rowAspectRatio = Math.max(rowAspectRatio, minimumRowAspectRatio.current);
1550
- var totalDesiredWidthOfImages = assetGalleryWidth.current - SPACE_BETWEEN_ASSETS * (_row.length - 1);
1551
- var rowHeight = totalDesiredWidthOfImages / rowAspectRatio;
1552
-
1553
- _row.forEach(function (rowAsset) {
1554
- var assetWidth = rowHeight * calculateAspectRatio(rowAsset.width || MISSING_WIDTH_PLACEHOLDER, rowAsset.height || MISSING_HEIGHT_PLACEHOLDER);
1555
-
1556
- _computedAssets.push(defaultTheme._objectSpread2(defaultTheme._objectSpread2({}, rowAsset), {}, {
1557
- layout: {
1558
- type: 'asset',
1559
- width: Math.round(assetWidth),
1560
- height: Math.round(rowHeight),
1561
- translateX: Math.round(_translateX),
1562
- translateY: Math.round(_translateY),
1563
- hasHeightAndWidth: Boolean(rowAsset.width && rowAsset.height)
1564
- }
1565
- }));
1566
-
1567
- _translateX += assetWidth + SPACE_BETWEEN_ASSETS;
1568
- });
1569
-
1570
- _row = [];
1571
- rowAspectRatio = 0;
1572
- _translateY += rowHeight + SPACE_UNDER_ASSETS;
1573
- _translateX = 0;
1574
- }
1575
- });
1576
- calculatedAssets.current = _computedAssets;
1577
- }
1578
- }
1579
- };
1580
-
1581
- function calculateAspectRatio(width, height) {
1582
- return width / height;
1583
- }
1584
-
1585
- var totalGalleryHeight = React.useMemo(function () {
1586
- if (assets.length === 0) {
1587
- return 0;
1588
- }
1589
-
1590
- var lastAsset = assets[assets.length - 1];
1591
- return lastAsset.layout.translateY + lastAsset.layout.height;
1592
- }, [assets]);
1593
- React.useEffect(function () {
1594
- var throttledOnScroll = lodash.throttle(onScroll, 200);
1595
- scrollElement.addEventListener('scroll', throttledOnScroll, false);
1596
- return function () {
1597
- return scrollElement.removeEventListener('scroll', throttledOnScroll, false);
1598
- };
1599
- }, [assetGalleryDOMNode, calculatedAssets]);
1600
-
1601
- function onScroll() {
1602
- setScrollPositionAndDirection();
1603
- calculateVisibility();
1604
- }
1605
-
1606
- function setScrollPositionAndDirection() {
1607
- var newYOffset = scrollElement.pageYOffset;
1608
- previousYOffset.current = latestYOffset.current;
1609
- latestYOffset.current = newYOffset;
1610
- scrollDirection.current = latestYOffset.current > previousYOffset.current ? 'down' : 'up';
1611
- }
1612
-
1613
- var calculateVisibility = function calculateVisibility() {
1614
- if (!assetGalleryDOMNode.current) return;
1615
- var bufferTop = scrollDirection.current === 'up' ? PRIMARY_SCROLL_BUFFER_HEIGHT : SECONDARY_SCROLL_BUFFER_HEIGHT;
1616
- var bufferBottom = scrollDirection.current === 'up' ? SECONDARY_SCROLL_BUFFER_HEIGHT : PRIMARY_SCROLL_BUFFER_HEIGHT;
1617
- var containerOffset = getOffsetTop(assetGalleryDOMNode.current);
1618
- var scrollerHeight = scrollElement.innerHeight;
1619
- var yOffset = latestYOffset.current;
1620
- var minTranslateYPlusHeight = yOffset - containerOffset - bufferTop;
1621
- var maxTranslateY = yOffset - containerOffset + scrollerHeight + bufferBottom;
1622
- var finalizedAssets = calculatedAssets.current.map(function (asset) {
1623
- if (scrollElement.self == window && (asset.layout.translateY + asset.layout.height < minTranslateYPlusHeight || asset.layout.translateY > maxTranslateY)) {
1624
- asset.layout.show = false;
1625
- } else {
1626
- asset.layout.show = true;
1627
- }
1628
-
1629
- return asset;
1630
- });
1631
- setAssets(finalizedAssets);
1632
- };
1633
-
1634
- function getOffsetTop(elem) {
1635
- var offsetTop = 0;
1636
-
1637
- do {
1638
- if (!isNaN(elem.offsetTop)) {
1639
- offsetTop += elem.offsetTop;
1640
- }
1641
-
1642
- elem = elem.offsetParent;
1643
- } while (elem);
1644
-
1645
- return offsetTop;
1646
- }
1647
-
1648
- var handleKeyPress = React.useCallback(function (e) {
1649
- function isElementVisible(el) {
1650
- var rect = el.getBoundingClientRect(),
1651
- vWidth = scrollElement.innerWidth || document.documentElement.clientWidth,
1652
- vHeight = scrollElement.innerHeight || document.documentElement.clientHeight,
1653
- efp = function efp(x, y) {
1654
- return document.elementFromPoint(x, y);
1655
- };
1656
-
1657
- if (rect.right < 0 || rect.bottom < 0 || rect.left > vWidth || rect.top > vHeight) return false;
1658
- 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));
1659
- }
1660
-
1661
- function softSelectFirstVisibleAsset() {
1662
- var visibleAssets = assets.filter(function (asset) {
1663
- return asset.layout.show;
1664
- });
1665
-
1666
- for (var i = 0; i < assetGalleryDOMNode.current.children.length; i++) {
1667
- if (isElementVisible(assetGalleryDOMNode.current.children[i])) {
1668
- onAssetSoftSelectedChanged(visibleAssets[i].key);
1669
- break;
1670
- }
1671
- }
1672
- }
1673
-
1674
- if (assets.length === 0) return;
1675
-
1676
- if (e.key === 'ArrowLeft' || e.key === 'ArrowRight') {
1677
- if (softSelectedAssetKey === null) {
1678
- softSelectFirstVisibleAsset();
1679
- return;
1680
- }
1681
- }
1682
-
1683
- if (e.key === 'ArrowLeft') {
1684
- var previousAssetIndex = assets.findIndex(function (asset) {
1685
- return asset.key === softSelectedAssetKey;
1686
- }) - 1;
1687
- var previousAsset = assets[previousAssetIndex];
1688
-
1689
- if (previousAsset) {
1690
- if (previousAsset.layout.show) {
1691
- onAssetSoftSelectedChanged(previousAsset.key);
1692
- } else {
1693
- softSelectFirstVisibleAsset();
1694
- }
1695
- }
1696
-
1697
- return;
1698
- }
1699
-
1700
- if (e.key === 'ArrowRight') {
1701
- var nextAssetIndex = assets.findIndex(function (asset) {
1702
- return asset.key === softSelectedAssetKey;
1703
- }) + 1;
1704
- var nextAsset = assets[nextAssetIndex];
1705
-
1706
- if (nextAsset) {
1707
- if (nextAsset.layout.show) {
1708
- onAssetSoftSelectedChanged(nextAsset.key);
1709
- } else {
1710
- softSelectFirstVisibleAsset();
1711
- }
1712
- }
1713
-
1714
- return;
1715
- }
1716
-
1717
- if (e.key === 'Enter') {
1718
- if (softSelectedAssetKey === null) return;
1719
-
1720
- if (selectedAssetKeys.includes(softSelectedAssetKey)) {
1721
- onAssetUnselected(softSelectedAssetKey);
1722
- } else {
1723
- onAssetSelected(softSelectedAssetKey);
1724
- }
1725
- }
1726
- }, [assets, softSelectedAssetKey, onAssetSoftSelectedChanged, selectedAssetKeys, assetGalleryCompactRef]);
1727
- var handleClick = React.useCallback(function () {
1728
- onAssetSoftSelectedChanged(null);
1729
- }, []);
1730
- React.useEffect(function () {
1731
- if (softSelectable) {
1732
- document.addEventListener('keydown', handleKeyPress);
1733
- }
1734
-
1735
- return function () {
1736
- return document.removeEventListener('keydown', handleKeyPress);
1737
- };
1738
- }, [softSelectable, handleKeyPress]);
1739
- React.useEffect(function () {
1740
- if (softSelectable && softSelectedAssetKey !== null) {
1741
- document.addEventListener('click', handleClick, true);
1742
- }
1743
-
1744
- return function () {
1745
- return document.removeEventListener('click', handleClick, true);
1746
- };
1747
- }, [softSelectable, softSelectedAssetKey, handleClick]);
1748
- return React__default['default'].createElement(React__default['default'].Fragment, null, React__default['default'].createElement(AssetGalleryBase$1, defaultTheme._extends({
1749
- ref: assetGalleryCompactRef,
1750
- style: {
1751
- height: "".concat(totalGalleryHeight, "px")
1752
- },
1753
- className: props.className
1754
- }, props), assets.map(function (asset) {
1755
- return asset.layout.show && React__default['default'].createElement(React__default['default'].Fragment, {
1756
- key: "asset-gallery-".concat(asset.layout.type, "-").concat(asset.key)
1757
- }, asset.layout.type === 'groupLabel' && React__default['default'].createElement(GroupLabel, {
1758
- style: {
1759
- transform: "translate3d(".concat(asset.layout.translateX, "px,").concat(asset.layout.translateY, "px, 0)"),
1760
- height: "".concat(asset.layout.height, "px")
1761
- }
1762
- }, asset.title), asset.layout.type === 'asset' && React__default['default'].createElement(AssetGalleryCardBase, {
1763
- style: {
1764
- transform: "translate3d(".concat(asset.layout.translateX, "px, ").concat(asset.layout.translateY, "px, 0)"),
1765
- width: "".concat(asset.layout.width, "px"),
1766
- height: "".concat(asset.layout.height, "px"),
1767
- display: 'flex',
1768
- justifyContent: 'center'
1769
- }
1770
- }, viewMode === 'grid' ? React__default['default'].createElement(AssetGalleryGridCard$1, {
1771
- asset: asset,
1772
- selectable: 'selectable' in asset ? asset.selectable : selectable,
1773
- selected: selectedAssetKeys.includes(asset.key),
1774
- extendedSelectMode: Boolean(selectedAssetKeys.length),
1775
- onAssetSelected: onAssetSelected,
1776
- onAssetUnselected: onAssetUnselected,
1777
- softSelected: softSelectedAssetKey === asset.key,
1778
- component: component
1779
- }) : React__default['default'].createElement(AssetGalleryCompactCard$1, {
1780
- asset: asset,
1781
- activeSummaryCard: activeSummaryCard,
1782
- displayVersionCount: displayVersionCount,
1783
- displayVerificationIcon: displayVerificationIcon,
1784
- hasHeightAndWidth: asset.layout.hasHeightAndWidth,
1785
- collapseExtraInfo: asset.layout.width < 90,
1786
- selectable: 'selectable' in asset ? asset.selectable : selectable,
1787
- selected: selectedAssetKeys.includes(asset.key),
1788
- extendedSelectMode: Boolean(selectedAssetKeys.length),
1789
- onAssetSelected: onAssetSelected,
1790
- onAssetUnselected: onAssetUnselected,
1791
- softSelected: softSelectedAssetKey === asset.key,
1792
- component: component
1793
- })));
1794
- })));
1795
- });
1796
- AssetGalleryBase.propTypes = process.env.NODE_ENV !== "production" ? {
1797
- assets: index.PropTypes.arrayOf(index.PropTypes.shape(assetShape)),
1798
- activeSummaryCard: index.PropTypes.bool,
1799
- displayVersionCount: index.PropTypes.bool,
1800
- displayVerificationIcon: index.PropTypes.bool,
1801
- viewMode: index.PropTypes.oneOf(['compact', 'grid']),
1802
- thumbnailMaxHeight: index.PropTypes.number,
1803
- selectable: index.PropTypes.bool,
1804
- selectedAssetKeys: index.PropTypes.oneOfType([index.PropTypes.arrayOf(index.PropTypes.string), index.PropTypes.arrayOf(index.PropTypes.number)]).isRequired,
1805
- scrollElement: index.PropTypes.instanceOf(Element),
1806
- onAssetSelected: index.PropTypes.func.isRequired,
1807
- onAssetUnselected: index.PropTypes.func.isRequired,
1808
- softSelectable: index.PropTypes.bool,
1809
- softSelectedAssetKey: index.PropTypes.oneOfType([index.PropTypes.string, index.PropTypes.number]),
1810
- onAssetSoftSelectedChanged: index.PropTypes.func.isRequired,
1811
- component: index.PropTypes.func,
1812
- className: index.PropTypes.string
1813
- } : {};
1814
-
1815
- var AssetGallery = React__default['default'].forwardRef(function AssetGallery(_ref, forwardedRef) {
1816
- var assets = _ref.assets,
1817
- activeSummaryCard = _ref.activeSummaryCard,
1818
- displayVersionCount = _ref.displayVersionCount,
1819
- displayVerificationIcon = _ref.displayVerificationIcon,
1820
- viewMode = _ref.viewMode,
1821
- thumbnailMaxHeight = _ref.thumbnailMaxHeight,
1822
- selectable = _ref.selectable,
1823
- selectedAssetKeys = _ref.selectedAssetKeys,
1824
- onSelectedChanged = _ref.onSelectedChanged,
1825
- softSelectable = _ref.softSelectable,
1826
- scrollElement = _ref.scrollElement,
1827
- onSoftSelectedChanged = _ref.onSoftSelectedChanged,
1828
- component = _ref.component,
1829
- props = defaultTheme._objectWithoutProperties(_ref, ["assets", "activeSummaryCard", "displayVersionCount", "displayVerificationIcon", "viewMode", "thumbnailMaxHeight", "selectable", "selectedAssetKeys", "onSelectedChanged", "softSelectable", "scrollElement", "onSoftSelectedChanged", "component"]);
1830
-
1831
- var _useState = React.useState(selectedAssetKeys || []),
1832
- _useState2 = defaultTheme._slicedToArray(_useState, 2),
1833
- selectedAssetKeysInternalState = _useState2[0],
1834
- setSelectedAssetKeysInternalState = _useState2[1];
1835
-
1836
- var _useState3 = React.useState(null),
1837
- _useState4 = defaultTheme._slicedToArray(_useState3, 2),
1838
- softSelectedAssetKeyInternalState = _useState4[0],
1839
- setSoftSelectedAssetKeyInternalState = _useState4[1];
1840
-
1841
- React.useEffect(function () {
1842
- setSelectedAssetKeysInternalState(selectedAssetKeys || []);
1843
- }, [selectedAssetKeys]);
1844
- React.useEffect(function () {
1845
- setSelectedAssetKeysInternalState(function (current) {
1846
- return current.filter(function (c) {
1847
- return assets.some(function (a) {
1848
- return a.key === c;
1849
- });
1850
- });
1851
- });
1852
- }, [assets.length]);
1853
- React.useEffect(function () {
1854
- if (selectedAssetKeys === selectedAssetKeysInternalState) return;
1855
-
1856
- if (lodash.isFunction(onSelectedChanged)) {
1857
- onSelectedChanged(selectedAssetKeysInternalState);
1858
- }
1859
- }, [selectedAssetKeysInternalState]);
1860
- React.useEffect(function () {
1861
- if (lodash.isFunction(onSoftSelectedChanged)) {
1862
- onSoftSelectedChanged(softSelectedAssetKeyInternalState);
1863
- }
1864
- }, [softSelectedAssetKeyInternalState]);
1865
- var onSelected = React.useCallback(function (assetKey) {
1866
- setSelectedAssetKeysInternalState(function (currentState) {
1867
- return [].concat(defaultTheme._toConsumableArray(currentState), [assetKey]);
1868
- });
1869
- }, []);
1870
- var onUnselected = React.useCallback(function (assetKey) {
1871
- setSelectedAssetKeysInternalState(function (currentState) {
1872
- return currentState.filter(function (filteredAssetKey) {
1873
- return filteredAssetKey !== assetKey;
1874
- });
1875
- });
1876
- }, []);
1877
- var onAssetSoftSelectedChanged = React.useCallback(function () {
1878
- var assetKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1879
- setSoftSelectedAssetKeyInternalState(assetKey);
1880
- }, []);
1881
- return React__default['default'].createElement(AssetGalleryBase, defaultTheme._extends({
1882
- ref: forwardedRef,
1883
- assets: assets,
1884
- activeSummaryCard: activeSummaryCard,
1885
- displayVersionCount: displayVersionCount,
1886
- displayVerificationIcon: displayVerificationIcon,
1887
- thumbnailMaxHeight: thumbnailMaxHeight,
1888
- selectable: selectable,
1889
- selectedAssetKeys: selectedAssetKeysInternalState,
1890
- onAssetSelected: onSelected,
1891
- onAssetUnselected: onUnselected,
1892
- softSelectable: softSelectable,
1893
- softSelectedAssetKey: softSelectedAssetKeyInternalState,
1894
- scrollElement: scrollElement,
1895
- onAssetSoftSelectedChanged: onAssetSoftSelectedChanged,
1896
- component: component,
1897
- viewMode: viewMode
1898
- }, props));
1899
- });
1900
- AssetGallery.propTypes = process.env.NODE_ENV !== "production" ? {
1901
- assets: index.PropTypes.arrayOf(index.PropTypes.shape(assetShape)),
1902
- displayVersionCount: index.PropTypes.bool,
1903
- displayVerificationIcon: index.PropTypes.bool,
1904
- activeSummaryCard: index.PropTypes.bool,
1905
- viewMode: index.PropTypes.oneOf(['compact', 'grid']),
1906
- thumbnailMaxHeight: index.PropTypes.number,
1907
- selectable: index.PropTypes.bool,
1908
- selectedAssetKeys: index.PropTypes.oneOfType([index.PropTypes.arrayOf(index.PropTypes.string), index.PropTypes.arrayOf(index.PropTypes.number)]),
1909
- onSelectedChanged: index.PropTypes.func,
1910
- softSelectable: index.PropTypes.bool,
1911
- scrollElement: index.PropTypes.instanceOf(Element),
1912
- onSoftSelectedChanged: index.PropTypes.func,
1913
- component: index.PropTypes.func
1914
- } : {};
1915
- AssetGallery.defaultProps = {
1916
- assets: [],
1917
- viewMode: 'compact',
1918
- thumbnailMaxHeight: 300,
1919
- selectedAssetKeys: [],
1920
- activeSummaryCard: false,
1921
- displayVerificationIcon: true
1922
- };
1923
-
1924
- exports.AssetGallery = AssetGallery;
1925
- exports.SummaryCard = SummaryCard;