@ntbjs/react-components 1.3.0-rc.8 → 2.0.0-rc.3

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