@ntbjs/react-components 2.0.0-rc.29 → 2.0.0-rc.30

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 (279) hide show
  1. package/build/{_rollupPluginBabelHelpers-c245b26a.js → _virtual/_rollupPluginBabelHelpers.js} +2 -1
  2. package/build/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  3. package/build/{Alert-e6847a22.js → data/Alert/Alert.js} +5 -55
  4. package/build/data/Alert/Alert.js.map +1 -0
  5. package/build/data/Alert/Alert.styled.js +56 -0
  6. package/build/data/Alert/Alert.styled.js.map +1 -0
  7. package/build/data/Alert/index.js +2 -6
  8. package/build/data/Alert/index.js.map +1 -0
  9. package/build/data/Badge/Badge.js +87 -0
  10. package/build/data/Badge/Badge.js.map +1 -0
  11. package/build/{Badge-d93586a9.js → data/Badge/Badge.styled.js} +4 -85
  12. package/build/data/Badge/Badge.styled.js.map +1 -0
  13. package/build/data/Badge/index.js +2 -5
  14. package/build/data/Badge/index.js.map +1 -0
  15. package/build/data/Popover/Popover.js +93 -0
  16. package/build/data/Popover/Popover.js.map +1 -0
  17. package/build/{Popover-20050b91.js → data/Popover/Popover.styled.js} +6 -92
  18. package/build/data/Popover/Popover.styled.js.map +1 -0
  19. package/build/data/Popover/index.js +2 -10
  20. package/build/data/Popover/index.js.map +1 -0
  21. package/build/{Tab-04d435c3.js → data/Tab/Tab.js} +5 -12
  22. package/build/data/Tab/Tab.js.map +1 -0
  23. package/build/data/Tab/Tab.styled.js +13 -0
  24. package/build/data/Tab/Tab.styled.js.map +1 -0
  25. package/build/data/Tab/index.js +2 -5
  26. package/build/data/Tab/index.js.map +1 -0
  27. package/build/{Tabs-74d1ea8a.js → data/Tabs/Tabs.js} +6 -74
  28. package/build/data/Tabs/Tabs.js.map +1 -0
  29. package/build/data/Tabs/Tabs.styled.js +74 -0
  30. package/build/data/Tabs/Tabs.styled.js.map +1 -0
  31. package/build/data/Tabs/index.js +2 -7
  32. package/build/data/Tabs/index.js.map +1 -0
  33. package/build/{Tooltip-c1d1199e.js → data/Tooltip/Tooltip.js} +5 -26
  34. package/build/data/Tooltip/Tooltip.js.map +1 -0
  35. package/build/data/Tooltip/Tooltip.styled.js +28 -0
  36. package/build/data/Tooltip/Tooltip.styled.js.map +1 -0
  37. package/build/data/Tooltip/index.js +2 -7
  38. package/build/data/Tooltip/index.js.map +1 -0
  39. package/build/data/VerificationStatusIcon/VerificationStatusIcon.js +36 -0
  40. package/build/data/VerificationStatusIcon/VerificationStatusIcon.js.map +1 -0
  41. package/build/data/VerificationStatusIcon/VerificationStatusIcon.styled.js +53 -0
  42. package/build/data/VerificationStatusIcon/VerificationStatusIcon.styled.js.map +1 -0
  43. package/build/data/index.js +8 -16
  44. package/build/data/index.js.map +1 -0
  45. package/build/hooks/useEventListner.js +21 -0
  46. package/build/hooks/useEventListner.js.map +1 -0
  47. package/build/hooks/useIsomorphicLayoutEffect.js +6 -0
  48. package/build/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  49. package/build/hooks/useOnClickOutside.js +14 -0
  50. package/build/hooks/useOnClickOutside.js.map +1 -0
  51. package/build/icons/arrow-back.svg.js +16 -0
  52. package/build/icons/arrow-back.svg.js.map +1 -0
  53. package/build/{arrow-forward-ad12c5f3.js → icons/arrow-forward.svg.js} +2 -1
  54. package/build/icons/arrow-forward.svg.js.map +1 -0
  55. package/build/icons/check-rectangle-filled.svg.js +16 -0
  56. package/build/icons/check-rectangle-filled.svg.js.map +1 -0
  57. package/build/{close-a5d37608.js → icons/close.svg.js} +2 -1
  58. package/build/icons/close.svg.js.map +1 -0
  59. package/build/{edit-note-283a0e15.js → icons/edit-note.svg.js} +2 -1
  60. package/build/icons/edit-note.svg.js.map +1 -0
  61. package/build/{expand-more-c5523c46.js → icons/expand-more.svg.js} +2 -1
  62. package/build/icons/expand-more.svg.js.map +1 -0
  63. package/build/icons/headset.svg.js +16 -0
  64. package/build/icons/headset.svg.js.map +1 -0
  65. package/build/icons/layers.svg.js +16 -0
  66. package/build/icons/layers.svg.js.map +1 -0
  67. package/build/icons/link.svg.js +16 -0
  68. package/build/icons/link.svg.js.map +1 -0
  69. package/build/icons/play.svg.js +16 -0
  70. package/build/icons/play.svg.js.map +1 -0
  71. package/build/icons/search.svg.js +16 -0
  72. package/build/icons/search.svg.js.map +1 -0
  73. package/build/icons/star-filled.svg.js +16 -0
  74. package/build/icons/star-filled.svg.js.map +1 -0
  75. package/build/icons/star.svg.js +16 -0
  76. package/build/icons/star.svg.js.map +1 -0
  77. package/build/icons/triangle-right.svg.js +16 -0
  78. package/build/icons/triangle-right.svg.js.map +1 -0
  79. package/build/icons/verification.svg.js +16 -0
  80. package/build/icons/verification.svg.js.map +1 -0
  81. package/build/{warning-circle-24f3efcd.js → icons/warning-circle.svg.js} +2 -1
  82. package/build/icons/warning-circle.svg.js.map +1 -0
  83. package/build/index.js +5 -0
  84. package/build/index.js.map +1 -0
  85. package/build/inputs/ActionButton/ActionButton.js +36 -0
  86. package/build/inputs/ActionButton/ActionButton.js.map +1 -0
  87. package/build/{ActionButton-4db754c3.js → inputs/ActionButton/ActionButton.styled.js} +4 -34
  88. package/build/inputs/ActionButton/ActionButton.styled.js.map +1 -0
  89. package/build/inputs/ActionButton/index.js +2 -6
  90. package/build/inputs/ActionButton/index.js.map +1 -0
  91. package/build/inputs/Button/Button.js +188 -0
  92. package/build/inputs/Button/Button.js.map +1 -0
  93. package/build/{Button-73eb8516.js → inputs/Button/Button.styled.js} +4 -186
  94. package/build/inputs/Button/Button.styled.js.map +1 -0
  95. package/build/inputs/Button/index.js +2 -13
  96. package/build/inputs/Button/index.js.map +1 -0
  97. package/build/inputs/Checkbox/Checkbox.js +97 -0
  98. package/build/inputs/Checkbox/Checkbox.js.map +1 -0
  99. package/build/inputs/Checkbox/Checkbox.styled.js +122 -0
  100. package/build/inputs/Checkbox/Checkbox.styled.js.map +1 -0
  101. package/build/inputs/Checkbox/index.js +2 -6
  102. package/build/inputs/Checkbox/index.js.map +1 -0
  103. package/build/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js +267 -0
  104. package/build/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js.map +1 -0
  105. package/build/{CompactAutocompleteSelect-52c49513.js → inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.styled.js} +6 -267
  106. package/build/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.styled.js.map +1 -0
  107. package/build/inputs/CompactAutocompleteSelect/index.js +2 -23
  108. package/build/inputs/CompactAutocompleteSelect/index.js.map +1 -0
  109. package/build/inputs/CompactStarRating/CompactStarRating.js +177 -0
  110. package/build/inputs/CompactStarRating/CompactStarRating.js.map +1 -0
  111. package/build/inputs/CompactStarRating/CompactStarRating.styled.js +217 -0
  112. package/build/inputs/CompactStarRating/CompactStarRating.styled.js.map +1 -0
  113. package/build/inputs/CompactStarRating/index.js +2 -17
  114. package/build/inputs/CompactStarRating/index.js.map +1 -0
  115. package/build/inputs/CompactTextInput/CompactTextInput.js +184 -0
  116. package/build/inputs/CompactTextInput/CompactTextInput.js.map +1 -0
  117. package/build/{CompactTextInput-42ca5d42.js → inputs/CompactTextInput/CompactTextInput.styled.js} +4 -194
  118. package/build/inputs/CompactTextInput/CompactTextInput.styled.js.map +1 -0
  119. package/build/inputs/CompactTextInput/index.js +2 -19
  120. package/build/inputs/CompactTextInput/index.js.map +1 -0
  121. package/build/inputs/MultiLevelCheckbox/MultiLevelCheckbox.js +207 -0
  122. package/build/inputs/MultiLevelCheckbox/MultiLevelCheckbox.js.map +1 -0
  123. package/build/inputs/MultiLevelCheckbox/MultiLevelCheckbox.styled.js +66 -0
  124. package/build/inputs/MultiLevelCheckbox/MultiLevelCheckbox.styled.js.map +1 -0
  125. package/build/inputs/MultiLevelCheckbox/index.js +3 -0
  126. package/build/inputs/MultiLevelCheckbox/index.js.map +1 -0
  127. package/build/inputs/MultiLevelCheckbox/types.js +27 -0
  128. package/build/inputs/MultiLevelCheckbox/types.js.map +1 -0
  129. package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +184 -26
  130. package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js.map +1 -0
  131. package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.styled.js +93 -0
  132. package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.styled.js.map +1 -0
  133. package/build/inputs/MultiLevelCheckboxSelect/index.js +2 -0
  134. package/build/inputs/MultiLevelCheckboxSelect/index.js.map +1 -0
  135. package/build/{MultiSelect-9f497e62.js → inputs/MultiSelect/MultiSelect.js} +6 -223
  136. package/build/inputs/MultiSelect/MultiSelect.js.map +1 -0
  137. package/build/inputs/MultiSelect/MultiSelect.styled.js +224 -0
  138. package/build/inputs/MultiSelect/MultiSelect.styled.js.map +1 -0
  139. package/build/inputs/MultiSelect/index.js +2 -10
  140. package/build/inputs/MultiSelect/index.js.map +1 -0
  141. package/build/inputs/Radio/Radio.js +60 -0
  142. package/build/inputs/Radio/Radio.js.map +1 -0
  143. package/build/{Radio-73ca3ae2.js → inputs/Radio/Radio.styled.js} +4 -58
  144. package/build/inputs/Radio/Radio.styled.js.map +1 -0
  145. package/build/inputs/Radio/index.js +2 -7
  146. package/build/inputs/Radio/index.js.map +1 -0
  147. package/build/inputs/Switch/Switch.js +64 -0
  148. package/build/inputs/Switch/Switch.js.map +1 -0
  149. package/build/{Switch-ecf3122b.js → inputs/Switch/Switch.styled.js} +4 -62
  150. package/build/inputs/Switch/Switch.styled.js.map +1 -0
  151. package/build/inputs/Switch/index.js +2 -6
  152. package/build/inputs/Switch/index.js.map +1 -0
  153. package/build/inputs/TextArea/TextArea.js +178 -0
  154. package/build/inputs/TextArea/TextArea.js.map +1 -0
  155. package/build/{TextArea-1e5b9201.js → inputs/TextArea/TextArea.styled.js} +3 -175
  156. package/build/inputs/TextArea/TextArea.styled.js.map +1 -0
  157. package/build/inputs/TextArea/index.js +2 -20
  158. package/build/inputs/TextArea/index.js.map +1 -0
  159. package/build/inputs/TextInput/TextInput.js +139 -0
  160. package/build/inputs/TextInput/TextInput.js.map +1 -0
  161. package/build/{TextInput-fab35842.js → inputs/TextInput/TextInput.styled.js} +4 -137
  162. package/build/inputs/TextInput/TextInput.styled.js.map +1 -0
  163. package/build/inputs/TextInput/index.js +2 -9
  164. package/build/inputs/TextInput/index.js.map +1 -0
  165. package/build/inputs/index.js +15 -40
  166. package/build/inputs/index.js.map +1 -0
  167. package/build/{InputGroup-1294d190.js → layout/InputGroup/InputGroup.js} +5 -8
  168. package/build/layout/InputGroup/InputGroup.js.map +1 -0
  169. package/build/layout/InputGroup/InputGroup.styled.js +9 -0
  170. package/build/layout/InputGroup/InputGroup.styled.js.map +1 -0
  171. package/build/layout/SectionSeparator/SectionSeparator.js +23 -0
  172. package/build/layout/SectionSeparator/SectionSeparator.js.map +1 -0
  173. package/build/layout/SectionSeparator/SectionSeparator.styled.js +14 -0
  174. package/build/layout/SectionSeparator/SectionSeparator.styled.js.map +1 -0
  175. package/build/layout/SectionSeparator/index.js +2 -5
  176. package/build/layout/SectionSeparator/index.js.map +1 -0
  177. package/build/layout/index.js +3 -6
  178. package/build/layout/index.js.map +1 -0
  179. package/build/ssr/index.js +1 -0
  180. package/build/ssr/index.js.map +1 -0
  181. package/build/styles/utils/colors.scss.js +4 -0
  182. package/build/styles/utils/colors.scss.js.map +1 -0
  183. package/build/utils/dateTime.js +17 -0
  184. package/build/utils/dateTime.js.map +1 -0
  185. package/build/utils/defaultTheme.js +44 -0
  186. package/build/utils/defaultTheme.js.map +1 -0
  187. package/build/{AssetAction-98d76ce0.js → widgets/AssetAction/AssetAction.js} +6 -40
  188. package/build/widgets/AssetAction/AssetAction.js.map +1 -0
  189. package/build/widgets/AssetAction/AssetAction.styled.js +41 -0
  190. package/build/widgets/AssetAction/AssetAction.styled.js.map +1 -0
  191. package/build/widgets/AssetAction/index.js +2 -7
  192. package/build/widgets/AssetAction/index.js.map +1 -0
  193. package/build/{AssetActionsBase-9e4c0735.js → widgets/AssetActionsBase/AssetActionsBase.js} +6 -15
  194. package/build/widgets/AssetActionsBase/AssetActionsBase.js.map +1 -0
  195. package/build/widgets/AssetActionsBase/AssetActionsBase.styled.js +15 -0
  196. package/build/widgets/AssetActionsBase/AssetActionsBase.styled.js.map +1 -0
  197. package/build/widgets/AssetActionsBase/index.js +2 -8
  198. package/build/widgets/AssetActionsBase/index.js.map +1 -0
  199. package/build/widgets/AssetGallery/AssetGallery.js +99 -0
  200. package/build/widgets/AssetGallery/AssetGallery.js.map +1 -0
  201. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.js +385 -0
  202. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.js.map +1 -0
  203. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.styled.js +30 -0
  204. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryBase.styled.js.map +1 -0
  205. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js +401 -0
  206. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js.map +1 -0
  207. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js +329 -0
  208. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js.map +1 -0
  209. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js +409 -0
  210. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js.map +1 -0
  211. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js +280 -0
  212. package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js.map +1 -0
  213. package/build/widgets/AssetGallery/asset.propType.js +54 -0
  214. package/build/widgets/AssetGallery/asset.propType.js.map +1 -0
  215. package/build/widgets/AssetGallery/index.js +2 -48
  216. package/build/widgets/AssetGallery/index.js.map +1 -0
  217. package/build/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js +44 -0
  218. package/build/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js.map +1 -0
  219. package/build/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.styled.js +77 -0
  220. package/build/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.styled.js.map +1 -0
  221. package/build/widgets/AssetPreview/AssetPreviewTopBar/index.js +2 -6
  222. package/build/widgets/AssetPreview/AssetPreviewTopBar/index.js.map +1 -0
  223. package/build/{ContextMenu-0f7134e4.js → widgets/ContextMenu/ContextMenu.js} +5 -9
  224. package/build/widgets/ContextMenu/ContextMenu.js.map +1 -0
  225. package/build/widgets/ContextMenu/ContextMenu.styled.js +10 -0
  226. package/build/widgets/ContextMenu/ContextMenu.styled.js.map +1 -0
  227. package/build/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js +44 -0
  228. package/build/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js.map +1 -0
  229. package/build/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.styled.js +77 -0
  230. package/build/widgets/ContextMenu/ContextMenuItem/ContextMenuItem.styled.js.map +1 -0
  231. package/build/widgets/ContextMenu/ContextMenuItem/index.js +2 -5
  232. package/build/widgets/ContextMenu/ContextMenuItem/index.js.map +1 -0
  233. package/build/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js +22 -0
  234. package/build/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js.map +1 -0
  235. package/build/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.styled.js +21 -0
  236. package/build/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.styled.js.map +1 -0
  237. package/build/widgets/ContextMenu/ContextMenuItemsGroup/index.js +2 -37
  238. package/build/widgets/ContextMenu/ContextMenuItemsGroup/index.js.map +1 -0
  239. package/build/widgets/ContextMenu/index.js +2 -5
  240. package/build/widgets/ContextMenu/index.js.map +1 -0
  241. package/build/widgets/InfoCard/InfoCard.js +40 -0
  242. package/build/widgets/InfoCard/InfoCard.js.map +1 -0
  243. package/build/{InfoCard-c98b6f5a.js → widgets/InfoCard/InfoCard.styled.js} +5 -38
  244. package/build/widgets/InfoCard/InfoCard.styled.js.map +1 -0
  245. package/build/widgets/InfoCard/index.js +2 -6
  246. package/build/widgets/InfoCard/index.js.map +1 -0
  247. package/build/{Instructions-bfd28cea.js → widgets/Instructions/Instructions.js} +8 -34
  248. package/build/widgets/Instructions/Instructions.js.map +1 -0
  249. package/build/widgets/Instructions/Instructions.styled.js +32 -0
  250. package/build/widgets/Instructions/Instructions.styled.js.map +1 -0
  251. package/build/widgets/Instructions/index.js +2 -28
  252. package/build/widgets/Instructions/index.js.map +1 -0
  253. package/build/widgets/ProgressBar/ProgressBar.js +72 -0
  254. package/build/widgets/ProgressBar/ProgressBar.js.map +1 -0
  255. package/build/{ProgressBar-bc4a4a7e.js → widgets/ProgressBar/ProgressBar.styled.js} +5 -70
  256. package/build/widgets/ProgressBar/ProgressBar.styled.js.map +1 -0
  257. package/build/widgets/ProgressBar/index.js +2 -6
  258. package/build/widgets/ProgressBar/index.js.map +1 -0
  259. package/build/widgets/SummaryCard/SummaryCard.js +92 -0
  260. package/build/widgets/SummaryCard/SummaryCard.js.map +1 -0
  261. package/build/widgets/SummaryCard/SummaryCard.styled.js +137 -0
  262. package/build/widgets/SummaryCard/SummaryCard.styled.js.map +1 -0
  263. package/build/widgets/SummaryCard/index.js +2 -19
  264. package/build/widgets/SummaryCard/index.js.map +1 -0
  265. package/build/widgets/index.js +12 -53
  266. package/build/widgets/index.js.map +1 -0
  267. package/package.json +5 -2
  268. package/build/AssetGallery-63f721ec.js +0 -1981
  269. package/build/AssetPreviewTopBar-acd6353d.js +0 -127
  270. package/build/Checkbox-4a5fd716.js +0 -213
  271. package/build/CompactStarRating-9af2f427.js +0 -411
  272. package/build/ContextMenuItem-ea411141.js +0 -127
  273. package/build/MultiLevelCheckboxSelect-d8044c88.js +0 -604
  274. package/build/SectionSeparator-f47760a2.js +0 -31
  275. package/build/SummaryCard-24040650.js +0 -223
  276. package/build/VerificationStatusIcon-49cb1c1b.js +0 -95
  277. package/build/defaultTheme-1bcc2541.js +0 -1178
  278. package/build/layout/InputGroup/index.js +0 -5
  279. package/build/shift-away-subtle-0dd94a03.js +0 -7
@@ -0,0 +1,409 @@
1
+ import { extends as _extends } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { isEmpty, isFunction, omit, get, mapKeys } from 'lodash';
3
+ import PropTypes from 'prop-types';
4
+ import React__default, { useEffect, useCallback, useRef } from 'react';
5
+ import { trackWindowScroll, LazyLoadComponent, LazyLoadImage } from 'react-lazy-load-image-component';
6
+ import { ReactComponent as SvgCheckRectangleFilled } from '../../../../icons/check-rectangle-filled.svg.js';
7
+ import { ReactComponent as SvgHeadset } from '../../../../icons/headset.svg.js';
8
+ import { ReactComponent as SvgLayers } from '../../../../icons/layers.svg.js';
9
+ import { ReactComponent as SvgPlay } from '../../../../icons/play.svg.js';
10
+ import { ReactComponent as SvgWarningCircle } from '../../../../icons/warning-circle.svg.js';
11
+ import { convertMsToHMS } from '../../../../utils/dateTime.js';
12
+ import '../../../../data/Alert/Alert.js';
13
+ import Badge from '../../../../data/Badge/Badge.js';
14
+ import Popover from '../../../../data/Popover/Popover.js';
15
+ import '../../../../data/Tab/Tab.js';
16
+ import '../../../../data/Tabs/Tabs.js';
17
+ import Tooltip from '../../../../data/Tooltip/Tooltip.js';
18
+ import '../../../../data/VerificationStatusIcon/VerificationStatusIcon.js';
19
+ import ActionButton from '../../../../inputs/ActionButton/ActionButton.js';
20
+ import '../../../../inputs/Button/Button.js';
21
+ import '../../../../inputs/Checkbox/Checkbox.js';
22
+ import '../../../../inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js';
23
+ import '../../../../inputs/CompactStarRating/CompactStarRating.js';
24
+ import '../../../../inputs/CompactTextInput/CompactTextInput.js';
25
+ import '../../../../inputs/MultiSelect/MultiSelect.js';
26
+ import '../../../../inputs/Radio/Radio.js';
27
+ import '../../../../inputs/TextArea/TextArea.js';
28
+ import '../../../../inputs/TextInput/TextInput.js';
29
+ import '../../../../inputs/Switch/Switch.js';
30
+ import '../../../../inputs/MultiLevelCheckbox/MultiLevelCheckbox.js';
31
+ import '../../../../inputs/MultiLevelCheckbox/types.js';
32
+ import '../../../../inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js';
33
+ import ContextMenu from '../../../ContextMenu/ContextMenu.js';
34
+ import ContextMenuItem from '../../../ContextMenu/ContextMenuItem/ContextMenuItem.js';
35
+ import SummaryCard from '../../../SummaryCard/SummaryCard.js';
36
+ import { assetShapeWithLayout } from '../../asset.propType.js';
37
+ import { AssetGalleryWrapper, AssetGalleryGridCard as AssetGalleryGridCard$2, ContentWrapper, Asset, Figure, FigureOverlayBackdrop, Overlay, OverlayBackdrop, OverlayInfo, OverlayInfoTop, OverlayInfoTopVersions, OverlayInfoTopWarning, OverlayInfoTopActions, Fragment, OverlayInfoBottom, OverlayInfoBottomSelectButton, OverlayInfoBottomMediaIcon, OverlaySelected, ConsumerDefinedOverlay } from './AssetGalleryGridCard.styled.js';
38
+
39
+ const ComputedRootComponent = ({
40
+ component,
41
+ asset,
42
+ ...props
43
+ }) => {
44
+ const newProps = mapKeys(omit(props, ['theme', 'extendedSelectMode']), (_, key) => key === 'innerRef' ? 'ref' : key);
45
+ if (component) {
46
+ if (!isFunction(component)) throw Error('Expected a function in component-prop');
47
+ if (React__default.isValidElement(component(asset, newProps.children))) {
48
+ return React__default.cloneElement(component(asset, newProps.children), omit(newProps, ['children']));
49
+ }
50
+ }
51
+ return React__default.createElement(AssetGalleryGridCard$2, _extends({
52
+ ref: newProps.ref
53
+ }, newProps));
54
+ };
55
+ const ComputedActionButton = React__default.forwardRef(function ComputedActionButton({
56
+ component,
57
+ className,
58
+ subActions = [],
59
+ isSubActionsOpened,
60
+ ...props
61
+ }, forwardedRef) {
62
+ const newProps = props;
63
+ if (!isEmpty(subActions)) {
64
+ const contextMenuItems = subActions.map((subAction, key) => {
65
+ const {
66
+ onClick,
67
+ title,
68
+ icon
69
+ } = subAction;
70
+ return React__default.createElement(ContextMenuItem, {
71
+ key: key,
72
+ onClickEffect: onClick,
73
+ title: title,
74
+ icon: icon
75
+ });
76
+ });
77
+ const contextMenu = React__default.createElement(ContextMenu, null, contextMenuItems);
78
+ newProps.children = React__default.createElement(Popover, {
79
+ contextMenu: true,
80
+ content: contextMenu,
81
+ placement: 'bottom-end',
82
+ visible: isSubActionsOpened,
83
+ zIndex: 10001,
84
+ offset: [0, -8]
85
+ }, React__default.createElement(ActionButton, {
86
+ useShadow: true,
87
+ active: true,
88
+ ref: forwardedRef,
89
+ className: className,
90
+ icon: newProps.icon,
91
+ backgroundColors: ['black', 'white'],
92
+ onClick: newProps.onClick,
93
+ actionWidthHeight: newProps.actionWidthHeight
94
+ }));
95
+ } else {
96
+ newProps.children = React__default.createElement(ActionButton, {
97
+ useShadow: true,
98
+ active: true,
99
+ ref: forwardedRef,
100
+ className: className,
101
+ icon: newProps.icon,
102
+ onClick: newProps.onClick,
103
+ backgroundColors: ['black', 'white'],
104
+ actionWidthHeight: newProps.actionWidthHeight
105
+ });
106
+ }
107
+ if (component) {
108
+ if (!isFunction(component)) throw Error('Expected a function in component-prop');
109
+ if (React__default.isValidElement(component())) {
110
+ return React__default.cloneElement(component(), {
111
+ ...omit(newProps, 'icon')
112
+ });
113
+ }
114
+ }
115
+ return React__default.createElement(React__default.Fragment, null, newProps.children);
116
+ });
117
+ const AssetGalleryGridCard = props => {
118
+ const {
119
+ asset,
120
+ selectable,
121
+ selected,
122
+ customSelectedBorder,
123
+ extendedSelectMode,
124
+ onAssetSelected,
125
+ onAssetUnselected,
126
+ softSelected,
127
+ component,
128
+ scrollPosition
129
+ } = props;
130
+ const [isCardHovered, setIsCardHovered] = React__default.useState(false);
131
+ const [openedSubActions, updateOpenedSubActions] = React__default.useState([]);
132
+ useEffect(() => {
133
+ const newOpenedSubActions = (asset?.actions ?? []).map(() => false);
134
+ updateOpenedSubActions(newOpenedSubActions);
135
+ }, [asset]);
136
+ useEffect(() => {
137
+ if (!isCardHovered && openedSubActions?.length) {
138
+ updateOpenedSubActions(openedSubActions.map(() => false));
139
+ }
140
+ }, [isCardHovered]);
141
+ const mouseHasEnteredCard = useCallback(() => {
142
+ setIsCardHovered(true);
143
+ }, []);
144
+ const mouseHasLeftCard = useCallback(() => {
145
+ setIsCardHovered(false);
146
+ }, []);
147
+ const onSubActionsViewToggle = useCallback(actionIndex => {
148
+ const newOpenedSubActions = openedSubActions.map((isOpened, index) => {
149
+ if (index !== actionIndex) {
150
+ return false;
151
+ }
152
+ return !isOpened;
153
+ });
154
+ updateOpenedSubActions(newOpenedSubActions);
155
+ }, [openedSubActions]);
156
+ const videoPlayerRef = useRef();
157
+ const cardRef = useRef();
158
+ const dragRef = useRef(null);
159
+ function onMouseEnter(event) {
160
+ if (videoPlayerRef.current) {
161
+ const playPromise = videoPlayerRef.current.play();
162
+ if (playPromise !== undefined) {
163
+ playPromise.then(() => {}).catch(() => {});
164
+ }
165
+ }
166
+ if (isFunction(asset.onMouseEnter)) {
167
+ asset.onMouseEnter(event, asset);
168
+ }
169
+ mouseHasEnteredCard();
170
+ }
171
+ function onMouseLeave() {
172
+ if (videoPlayerRef.current) {
173
+ videoPlayerRef.current.pause();
174
+ }
175
+ mouseHasLeftCard();
176
+ }
177
+ function onClick(event) {
178
+ if (extendedSelectMode) {
179
+ return onSelectClick(event);
180
+ }
181
+ if (isFunction(asset.onClick)) {
182
+ asset.onClick(event, asset);
183
+ }
184
+ }
185
+ function onSelectClick(event) {
186
+ event.preventDefault();
187
+ event.stopPropagation();
188
+ if (selected) {
189
+ return onAssetUnselected(asset.key);
190
+ }
191
+ return onAssetSelected(asset.key);
192
+ }
193
+ const onActionClick = useCallback((event, action, index) => {
194
+ event.preventDefault();
195
+ event.stopPropagation();
196
+ if (isFunction(action?.onClick)) {
197
+ action.onClick(asset);
198
+ }
199
+ if (!isEmpty(action?.subActions)) {
200
+ onSubActionsViewToggle(index);
201
+ }
202
+ }, [onSubActionsViewToggle]);
203
+ const shouldOpenSubActions = useCallback(actionIndex => openedSubActions[actionIndex], [openedSubActions]);
204
+ function onContextMenu(event) {
205
+ event.preventDefault();
206
+ asset.onContextMenu(event);
207
+ }
208
+ function renderPreview(asset) {
209
+ let previewContent = null;
210
+ if (asset.fileType?.toLowerCase() === 'video') {
211
+ previewContent = React__default.createElement(LazyLoadComponent, {
212
+ scrollPosition: scrollPosition
213
+ }, React__default.createElement("video", {
214
+ ref: videoPlayerRef,
215
+ loop: true,
216
+ muted: true
217
+ }, React__default.createElement("source", {
218
+ src: asset.previewUrl,
219
+ type: "video/mp4"
220
+ })));
221
+ } else if (asset.fileType?.toLowerCase() === 'audio') {
222
+ previewContent = React__default.createElement(LazyLoadComponent, {
223
+ scrollPosition: scrollPosition
224
+ }, React__default.createElement("div", {
225
+ className: "audio"
226
+ }, React__default.createElement(SvgHeadset, null)));
227
+ } else {
228
+ previewContent = React__default.createElement(LazyLoadImage, {
229
+ alt: asset.title,
230
+ src: asset.previewUrl,
231
+ height: "100%",
232
+ width: "100%",
233
+ delayMethod: "debounce",
234
+ delayTime: 0,
235
+ threshold: 1500,
236
+ scrollPosition: scrollPosition
237
+ });
238
+ }
239
+ return React__default.createElement(Figure, {
240
+ selected: selected
241
+ }, previewContent, React__default.createElement(FigureOverlayBackdrop, {
242
+ selected: selected
243
+ }), React__default.createElement(Overlay, {
244
+ ref: cardRef
245
+ }, React__default.createElement(OverlayBackdrop, {
246
+ $softSelected: softSelected,
247
+ selected: selected
248
+ }), React__default.createElement(OverlayInfo, null, React__default.createElement(OverlayInfoTop, null, React__default.createElement(OverlayInfoTopVersions, null, renderVersionsBadge()), asset?.note?.title && React__default.createElement(OverlayInfoTopWarning, {
249
+ type: asset?.note?.type
250
+ }, React__default.createElement(SvgWarningCircle, null)), React__default.createElement(OverlayInfoTopActions, {
251
+ isCardHovered: isCardHovered
252
+ }, asset.actions && asset.actions.map((action, index) => React__default.createElement(Tooltip, {
253
+ key: `${asset.key}-${action.title}`,
254
+ content: action.title
255
+ }, React__default.createElement(Fragment, {
256
+ key: `${asset.key}-${action.title}`,
257
+ as: ComputedActionButton,
258
+ component: action.component,
259
+ className: action.className,
260
+ icon: action.icon,
261
+ isCardHovered: isCardHovered,
262
+ isSubActionsOpened: shouldOpenSubActions(index),
263
+ onClick: event => onActionClick(event, action, index),
264
+ subActions: action?.subActions,
265
+ actionWidthHeight: action.actionWidthHeight
266
+ }))))), React__default.createElement(OverlayInfoBottom, null, selectable && React__default.createElement(OverlayInfoBottomSelectButton, {
267
+ selected: selected
268
+ }, React__default.createElement(SvgCheckRectangleFilled, {
269
+ onClick: onSelectClick
270
+ })), React__default.createElement(OverlayInfoBottomMediaIcon, null, renderMediaBadge()))), selectable && React__default.createElement(OverlaySelected, {
271
+ selected: selected,
272
+ $softSelected: softSelected,
273
+ customSelectedBorder: customSelectedBorder
274
+ })), asset.overlay && React__default.createElement(ConsumerDefinedOverlay, null, asset.overlay));
275
+ }
276
+ useEffect(() => {
277
+ if (isFunction(asset.onContextMenu)) {
278
+ if (cardRef.current) {
279
+ cardRef.current.addEventListener('contextmenu', onContextMenu);
280
+ }
281
+ return () => {
282
+ if (cardRef.current) {
283
+ cardRef.current.removeEventListener('contextmenu', onContextMenu);
284
+ }
285
+ };
286
+ }
287
+ }, []);
288
+ function onDragstart(event) {
289
+ asset.onDragstart(event);
290
+ }
291
+ useEffect(() => {
292
+ if (isFunction(asset.onDragstart)) {
293
+ if (dragRef.current) {
294
+ dragRef.current.addEventListener('dragstart', onDragstart);
295
+ }
296
+ return () => {
297
+ if (dragRef.current) {
298
+ dragRef.current.removeEventListener('dragstart', onDragstart);
299
+ }
300
+ };
301
+ }
302
+ }, []);
303
+ useEffect(() => {
304
+ if (softSelected) {
305
+ cardRef.current.scrollIntoView({
306
+ behavior: 'smooth',
307
+ block: 'nearest'
308
+ });
309
+ }
310
+ }, [softSelected]);
311
+ const renderVersionsBadge = useCallback(() => {
312
+ if (!asset?.versions) return null;
313
+ return React__default.createElement(Badge, {
314
+ badgeIcon: React__default.createElement(SvgLayers, null),
315
+ badgeContent: asset.versions,
316
+ backgroundColors: ['black', 'black'],
317
+ colors: ['#f7f8f9', '#f7f8f9'],
318
+ fontSize: 12,
319
+ fontWeight: 500,
320
+ lineHeight: 16,
321
+ verticalPadding: 4,
322
+ horizontalPadding: 8
323
+ });
324
+ }, [asset]);
325
+ const renderMediaBadge = useCallback(() => {
326
+ let badgeIcon = null;
327
+ let badgeContent = null;
328
+ if (asset?.fileType === 'video') {
329
+ badgeIcon = React__default.createElement(SvgPlay, null);
330
+ }
331
+ if (asset?.duration) {
332
+ badgeContent = convertMsToHMS(asset.duration);
333
+ }
334
+ if (!badgeIcon && !badgeContent) return null;
335
+ return React__default.createElement(Badge, {
336
+ badgeIcon: badgeIcon,
337
+ badgeContent: badgeContent,
338
+ backgroundColors: ['black', 'black'],
339
+ colors: ['#f7f8f9', '#f7f8f9'],
340
+ fontSize: 12,
341
+ fontWeight: 500,
342
+ lineHeight: 16,
343
+ verticalPadding: 4,
344
+ horizontalPadding: 8,
345
+ minWidth: 32,
346
+ height: 24
347
+ });
348
+ }, [asset]);
349
+ const renderSummary = useCallback(() => {
350
+ return React__default.createElement(SummaryCard, {
351
+ activeSummaryCard: true,
352
+ title: asset?.title || '',
353
+ description: asset?.description || '',
354
+ instructions: asset?.imageRights || '',
355
+ instructionsType: 'warning',
356
+ footerLeft: asset?.summary?.footerLeft || '',
357
+ footerRight: asset?.summary?.footerRight || '',
358
+ compact: false
359
+ });
360
+ }, [asset]);
361
+ return React__default.createElement(AssetGalleryWrapper, {
362
+ disabled: asset.disabled
363
+ }, React__default.createElement(AssetGalleryGridCard$2, {
364
+ as: ComputedRootComponent,
365
+ component: component,
366
+ asset: asset,
367
+ disabled: asset.disabled,
368
+ onClick: onClick,
369
+ extendedSelectMode: extendedSelectMode,
370
+ onMouseEnter: onMouseEnter,
371
+ onMouseLeave: onMouseLeave,
372
+ draggable: asset.draggable,
373
+ innerRef: dragRef,
374
+ selected: selected,
375
+ $softSelected: softSelected,
376
+ completed: asset?.completed,
377
+ $hasError: asset?.hasError,
378
+ customSelectedBorder: customSelectedBorder
379
+ }, React__default.createElement(ContentWrapper, {
380
+ layout: asset.layout,
381
+ ref: cardRef,
382
+ $softSelected: softSelected,
383
+ selected: selected,
384
+ customSelectedBorder: customSelectedBorder
385
+ }, React__default.createElement(Asset, {
386
+ "data-id": "ss",
387
+ selected: selected
388
+ }, asset.previewUrl && renderPreview(asset)), renderSummary())));
389
+ };
390
+ AssetGalleryGridCard.propTypes = process.env.NODE_ENV !== "production" ? {
391
+ asset: PropTypes.shape(assetShapeWithLayout).isRequired,
392
+ selectable: PropTypes.bool,
393
+ selected: PropTypes.bool,
394
+ customSelectedBorder: PropTypes.arrayOf(PropTypes.string),
395
+ extendedSelectMode: PropTypes.bool,
396
+ onAssetSelected: PropTypes.func.isRequired,
397
+ onAssetUnselected: PropTypes.func.isRequired,
398
+ softSelected: PropTypes.bool.isRequired,
399
+ component: PropTypes.func,
400
+ scrollPosition: PropTypes.number
401
+ } : {};
402
+ AssetGalleryGridCard.defaultProps = {};
403
+ var AssetGalleryGridCard$1 = trackWindowScroll(React__default.memo(AssetGalleryGridCard, (prevProps, nextProps) => {
404
+ const reactiveProps = ['selectable', 'selected', 'extendedSelectMode', 'softSelected', 'asset.previewUrl', 'asset.overlay', 'asset.layout'];
405
+ return reactiveProps.every(propKey => get(prevProps, propKey) === get(nextProps, propKey));
406
+ }));
407
+
408
+ export { AssetGalleryGridCard$1 as default };
409
+ //# sourceMappingURL=AssetGalleryGridCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetGalleryGridCard.js","sources":["../../../../../src/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js"],"sourcesContent":["import { get, isEmpty, isFunction, mapKeys, omit } from 'lodash';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useEffect, useRef } from 'react';\nimport {\n LazyLoadComponent,\n LazyLoadImage,\n trackWindowScroll\n} from 'react-lazy-load-image-component';\nimport {\n CheckRectangleIcon,\n HeadsetIcon,\n LayersIcon,\n PlayIcon,\n WarningCircleIcon\n} from '../../../../../icons';\nimport { convertMsToHMS } from '../../../../../utils/dateTime';\nimport { Badge, Popover, Tooltip } from '../../../../data';\nimport { ActionButton } from '../../../../inputs';\nimport ContextMenu from '../../../ContextMenu/ContextMenu';\nimport ContextMenuItem from '../../../ContextMenu/ContextMenuItem/ContextMenuItem';\nimport SummaryCard from '../../../SummaryCard/SummaryCard';\nimport { assetShapeWithLayout } from '../../asset.propType';\nimport * as S from './AssetGalleryGridCard.styled';\n\n// eslint-disable-next-line react/prop-types\nconst ComputedRootComponent = ({ component, asset, ...props }) => {\n // Omit props we don't need\n const newProps = mapKeys(omit(props, ['theme', 'extendedSelectMode']), (_, key) =>\n key === 'innerRef' ? 'ref' : key\n );\n\n if (component) {\n if (!isFunction(component)) throw Error('Expected a function in component-prop');\n\n if (React.isValidElement(component(asset, newProps.children))) {\n return React.cloneElement(component(asset, newProps.children), omit(newProps, ['children']));\n }\n }\n\n return <S.AssetGalleryGridCard ref={newProps.ref} {...newProps} />;\n};\n\n/* eslint-disable react/prop-types */\nconst ComputedActionButton = React.forwardRef(function ComputedActionButton(\n // eslint-disable-next-line react/prop-types\n { component, className, subActions = [], isSubActionsOpened, ...props },\n forwardedRef\n) {\n const newProps = props;\n if (!isEmpty(subActions)) {\n const contextMenuItems = subActions.map((subAction, key) => {\n const { onClick, title, icon } = subAction;\n return <ContextMenuItem key={key} onClickEffect={onClick} title={title} icon={icon} />;\n });\n const contextMenu = <ContextMenu>{contextMenuItems}</ContextMenu>;\n newProps.children = (\n <Popover\n contextMenu={true}\n content={contextMenu}\n placement={'bottom-end'}\n visible={isSubActionsOpened}\n zIndex={10001}\n offset={[0, -8]}\n >\n <ActionButton\n useShadow={true}\n active={true}\n ref={forwardedRef}\n className={className}\n icon={newProps.icon}\n backgroundColors={['black', 'white']}\n onClick={newProps.onClick}\n actionWidthHeight={newProps.actionWidthHeight}\n />\n </Popover>\n );\n } else {\n newProps.children = (\n <ActionButton\n useShadow={true}\n active={true}\n ref={forwardedRef}\n className={className}\n icon={newProps.icon}\n onClick={newProps.onClick}\n backgroundColors={['black', 'white']}\n actionWidthHeight={newProps.actionWidthHeight}\n />\n );\n }\n\n if (component) {\n if (!isFunction(component)) throw Error('Expected a function in component-prop');\n\n if (React.isValidElement(component())) {\n return React.cloneElement(component(), { ...omit(newProps, 'icon') });\n }\n }\n\n return <React.Fragment>{newProps.children}</React.Fragment>;\n});\n/* eslint-disable react/prop-types */\n\nconst AssetGalleryGridCard = props => {\n const {\n asset,\n selectable,\n selected,\n customSelectedBorder,\n extendedSelectMode,\n onAssetSelected,\n onAssetUnselected,\n softSelected,\n component,\n scrollPosition\n } = props;\n\n const [isCardHovered, setIsCardHovered] = React.useState(false);\n const [openedSubActions, updateOpenedSubActions] = React.useState([]);\n useEffect(() => {\n const newOpenedSubActions = (asset?.actions ?? []).map(() => false);\n updateOpenedSubActions(newOpenedSubActions);\n }, [asset]);\n\n useEffect(() => {\n if (!isCardHovered && openedSubActions?.length) {\n updateOpenedSubActions(openedSubActions.map(() => false));\n }\n }, [isCardHovered]);\n\n const mouseHasEnteredCard = useCallback(() => {\n setIsCardHovered(true);\n }, []);\n\n const mouseHasLeftCard = useCallback(() => {\n setIsCardHovered(false);\n }, []);\n\n const onSubActionsViewToggle = useCallback(\n actionIndex => {\n const newOpenedSubActions = openedSubActions.map((isOpened, index) => {\n if (index !== actionIndex) {\n return false;\n }\n return !isOpened;\n });\n updateOpenedSubActions(newOpenedSubActions);\n },\n [openedSubActions]\n );\n\n const videoPlayerRef = useRef();\n const cardRef = useRef();\n const dragRef = useRef(null);\n\n function onMouseEnter(event) {\n if (videoPlayerRef.current) {\n const playPromise = videoPlayerRef.current.play();\n if (playPromise !== undefined) {\n playPromise\n .then(() => {\n // Playback started!\n })\n .catch(() => {\n // Play was prevented - silently swallow play errors\n });\n }\n }\n\n if (isFunction(asset.onMouseEnter)) {\n asset.onMouseEnter(event, asset);\n }\n\n mouseHasEnteredCard();\n }\n\n function onMouseLeave() {\n if (videoPlayerRef.current) {\n videoPlayerRef.current.pause();\n }\n\n mouseHasLeftCard();\n }\n\n function onClick(event) {\n if (extendedSelectMode) {\n return onSelectClick(event);\n }\n\n if (isFunction(asset.onClick)) {\n asset.onClick(event, asset);\n }\n }\n\n function onSelectClick(event) {\n event.preventDefault();\n event.stopPropagation();\n\n if (selected) {\n return onAssetUnselected(asset.key);\n }\n\n return onAssetSelected(asset.key);\n }\n\n const onActionClick = useCallback(\n (event, action, index) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (isFunction(action?.onClick)) {\n action.onClick(asset);\n }\n\n if (!isEmpty(action?.subActions)) {\n onSubActionsViewToggle(index);\n }\n },\n [onSubActionsViewToggle]\n );\n\n const shouldOpenSubActions = useCallback(\n actionIndex => openedSubActions[actionIndex],\n [openedSubActions]\n );\n\n function onContextMenu(event) {\n event.preventDefault();\n asset.onContextMenu(event);\n }\n\n function renderPreview(asset) {\n let previewContent = null;\n\n if (asset.fileType?.toLowerCase() === 'video') {\n previewContent = (\n <LazyLoadComponent scrollPosition={scrollPosition}>\n <video ref={videoPlayerRef} loop muted>\n <source src={asset.previewUrl} type=\"video/mp4\" />\n </video>\n </LazyLoadComponent>\n );\n } else if (asset.fileType?.toLowerCase() === 'audio') {\n previewContent = (\n <LazyLoadComponent scrollPosition={scrollPosition}>\n <div className=\"audio\">\n <HeadsetIcon />\n </div>\n </LazyLoadComponent>\n );\n } else {\n previewContent = (\n <LazyLoadImage\n alt={asset.title}\n src={asset.previewUrl}\n height=\"100%\"\n width=\"100%\"\n delayMethod=\"debounce\"\n delayTime={0}\n threshold={1500}\n scrollPosition={scrollPosition}\n />\n );\n }\n\n return (\n <S.Figure selected={selected}>\n {previewContent}\n <S.FigureOverlayBackdrop selected={selected} />\n <S.Overlay ref={cardRef}>\n <S.OverlayBackdrop $softSelected={softSelected} selected={selected} />\n\n <S.OverlayInfo>\n <S.OverlayInfoTop>\n <S.OverlayInfoTopVersions>{renderVersionsBadge()}</S.OverlayInfoTopVersions>\n\n {asset?.note?.title && (\n <S.OverlayInfoTopWarning type={asset?.note?.type}>\n <WarningCircleIcon />\n </S.OverlayInfoTopWarning>\n )}\n\n <S.OverlayInfoTopActions isCardHovered={isCardHovered}>\n {asset.actions &&\n asset.actions.map((action, index) => (\n <Tooltip key={`${asset.key}-${action.title}`} content={action.title}>\n <S.Fragment\n key={`${asset.key}-${action.title}`}\n as={ComputedActionButton}\n component={action.component}\n className={action.className}\n icon={action.icon}\n isCardHovered={isCardHovered}\n isSubActionsOpened={shouldOpenSubActions(index)}\n onClick={event => onActionClick(event, action, index)}\n subActions={action?.subActions}\n actionWidthHeight={action.actionWidthHeight}\n />\n </Tooltip>\n ))}\n </S.OverlayInfoTopActions>\n </S.OverlayInfoTop>\n\n <S.OverlayInfoBottom>\n {selectable && (\n <S.OverlayInfoBottomSelectButton selected={selected}>\n <CheckRectangleIcon onClick={onSelectClick} />\n </S.OverlayInfoBottomSelectButton>\n )}\n\n <S.OverlayInfoBottomMediaIcon>{renderMediaBadge()}</S.OverlayInfoBottomMediaIcon>\n </S.OverlayInfoBottom>\n </S.OverlayInfo>\n\n {selectable && (\n <S.OverlaySelected\n selected={selected}\n $softSelected={softSelected}\n customSelectedBorder={customSelectedBorder}\n />\n )}\n </S.Overlay>\n {asset.overlay && <S.ConsumerDefinedOverlay>{asset.overlay}</S.ConsumerDefinedOverlay>}\n </S.Figure>\n );\n }\n\n useEffect(() => {\n if (isFunction(asset.onContextMenu)) {\n if (cardRef.current) {\n cardRef.current.addEventListener('contextmenu', onContextMenu);\n }\n return () => {\n if (cardRef.current) {\n cardRef.current.removeEventListener('contextmenu', onContextMenu);\n }\n };\n }\n }, []);\n\n function onDragstart(event) {\n asset.onDragstart(event);\n }\n\n useEffect(() => {\n if (isFunction(asset.onDragstart)) {\n if (dragRef.current) {\n dragRef.current.addEventListener('dragstart', onDragstart);\n }\n return () => {\n if (dragRef.current) {\n dragRef.current.removeEventListener('dragstart', onDragstart);\n }\n };\n }\n }, []);\n\n // If this asset is soft selected we will scroll it into the viewport if it's outside\n useEffect(() => {\n if (softSelected) {\n cardRef.current.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n }, [softSelected]);\n\n const renderVersionsBadge = useCallback(() => {\n if (!asset?.versions) return null;\n\n return (\n <Badge\n badgeIcon={<LayersIcon />}\n badgeContent={asset.versions}\n backgroundColors={['black', 'black']}\n colors={['#f7f8f9', '#f7f8f9']}\n fontSize={12}\n fontWeight={500}\n lineHeight={16}\n verticalPadding={4}\n horizontalPadding={8}\n />\n );\n }, [asset]);\n\n const renderMediaBadge = useCallback(() => {\n let badgeIcon = null;\n let badgeContent = null;\n\n if (asset?.fileType === 'video') {\n badgeIcon = <PlayIcon />;\n }\n\n if (asset?.duration) {\n badgeContent = convertMsToHMS(asset.duration);\n }\n\n if (!badgeIcon && !badgeContent) return null;\n return (\n <Badge\n badgeIcon={badgeIcon}\n badgeContent={badgeContent}\n backgroundColors={['black', 'black']}\n colors={['#f7f8f9', '#f7f8f9']}\n fontSize={12}\n fontWeight={500}\n lineHeight={16}\n verticalPadding={4}\n horizontalPadding={8}\n minWidth={32}\n height={24}\n />\n );\n }, [asset]);\n\n const renderSummary = useCallback(() => {\n return (\n <SummaryCard\n activeSummaryCard={true}\n title={asset?.title || ''}\n description={asset?.description || ''}\n instructions={asset?.imageRights || ''}\n instructionsType={'warning'}\n footerLeft={asset?.summary?.footerLeft || ''}\n footerRight={asset?.summary?.footerRight || ''}\n compact={false}\n />\n );\n }, [asset]);\n\n return (\n <S.AssetGalleryWrapper disabled={asset.disabled}>\n <S.AssetGalleryGridCard\n as={ComputedRootComponent}\n component={component}\n asset={asset}\n disabled={asset.disabled}\n onClick={onClick}\n extendedSelectMode={extendedSelectMode}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n draggable={asset.draggable}\n innerRef={dragRef}\n selected={selected}\n $softSelected={softSelected}\n completed={asset?.completed}\n $hasError={asset?.hasError}\n customSelectedBorder={customSelectedBorder}\n >\n <S.ContentWrapper\n layout={asset.layout}\n ref={cardRef}\n $softSelected={softSelected}\n selected={selected}\n customSelectedBorder={customSelectedBorder}\n >\n <S.Asset data-id=\"ss\" selected={selected}>\n {asset.previewUrl && renderPreview(asset)}\n </S.Asset>\n\n {renderSummary()}\n </S.ContentWrapper>\n </S.AssetGalleryGridCard>\n </S.AssetGalleryWrapper>\n );\n};\n\nAssetGalleryGridCard.propTypes = {\n /**\n * An array of assets to display in the gallery.\n */\n asset: PropTypes.shape(assetShapeWithLayout).isRequired,\n\n /**\n * Whether or not the asset gallery should have selectable asset cards\n */\n selectable: PropTypes.bool,\n\n /**\n * Is the asset selected\n */\n selected: PropTypes.bool,\n\n /**\n * Whether or not the asset gallery should have custom borders on selected asset\n */\n customSelectedBorder: PropTypes.arrayOf(PropTypes.string),\n\n /**\n * Makes the whole asset card into a selectable area\n */\n extendedSelectMode: PropTypes.bool,\n\n /**\n * The callback function when an asset is selected - returns the selected asset key\n */\n onAssetSelected: PropTypes.func.isRequired,\n\n /**\n * The callback function when an asset is unselected - returns the unselected asset key\n */\n onAssetUnselected: PropTypes.func.isRequired,\n\n /**\n * Is the asset soft selected\n */\n softSelected: PropTypes.bool.isRequired,\n\n /**\n * A function that returns a custom component to use for the card in the gallery - The function provides\n * `asset` as its first argument\n */\n component: PropTypes.func,\n\n /**\n * Internal prop used by the gallery to determine if the card is in the viewport - This prop is\n * not intended to be used by consumers\n */\n scrollPosition: PropTypes.number\n};\n\nAssetGalleryGridCard.defaultProps = {};\n\nexport default trackWindowScroll(\n React.memo(AssetGalleryGridCard, (prevProps, nextProps) => {\n // The asset card will only re-render if any of the following props change.\n const reactiveProps = [\n 'selectable',\n 'selected',\n 'extendedSelectMode',\n 'softSelected',\n 'asset.previewUrl',\n 'asset.overlay',\n 'asset.layout'\n ];\n\n return reactiveProps.every(propKey => get(prevProps, propKey) === get(nextProps, propKey));\n })\n);\n"],"names":["ComputedRootComponent","component","asset","props","newProps","mapKeys","omit","_","key","isFunction","Error","React","isValidElement","children","cloneElement","createElement","S","_extends","ref","ComputedActionButton","forwardRef","className","subActions","isSubActionsOpened","forwardedRef","isEmpty","contextMenuItems","map","subAction","onClick","title","icon","ContextMenuItem","onClickEffect","contextMenu","ContextMenu","Popover","content","placement","visible","zIndex","offset","ActionButton","useShadow","active","backgroundColors","actionWidthHeight","Fragment","AssetGalleryGridCard","selectable","selected","customSelectedBorder","extendedSelectMode","onAssetSelected","onAssetUnselected","softSelected","scrollPosition","isCardHovered","setIsCardHovered","useState","openedSubActions","updateOpenedSubActions","useEffect","newOpenedSubActions","actions","length","mouseHasEnteredCard","useCallback","mouseHasLeftCard","onSubActionsViewToggle","actionIndex","isOpened","index","videoPlayerRef","useRef","cardRef","dragRef","onMouseEnter","event","current","playPromise","play","undefined","then","catch","onMouseLeave","pause","onSelectClick","preventDefault","stopPropagation","onActionClick","action","shouldOpenSubActions","onContextMenu","renderPreview","previewContent","fileType","toLowerCase","LazyLoadComponent","loop","muted","src","previewUrl","type","HeadsetIcon","LazyLoadImage","alt","height","width","delayMethod","delayTime","threshold","$softSelected","renderVersionsBadge","note","WarningCircleIcon","Tooltip","as","CheckRectangleIcon","renderMediaBadge","overlay","addEventListener","removeEventListener","onDragstart","scrollIntoView","behavior","block","versions","Badge","badgeIcon","LayersIcon","badgeContent","colors","fontSize","fontWeight","lineHeight","verticalPadding","horizontalPadding","PlayIcon","duration","convertMsToHMS","minWidth","renderSummary","SummaryCard","activeSummaryCard","description","instructions","imageRights","instructionsType","footerLeft","summary","footerRight","compact","disabled","draggable","innerRef","completed","$hasError","hasError","layout","propTypes","process","env","NODE_ENV","PropTypes","shape","assetShapeWithLayout","isRequired","bool","arrayOf","string","func","number","defaultProps","trackWindowScroll","memo","prevProps","nextProps","reactiveProps","every","propKey","get"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAMA,qBAAqB,GAAGA,CAAC;EAAEC,SAAS;EAAEC,KAAK;EAAE,GAAGC,KAAAA;AAAM,CAAC,KAAK;EAEhE,MAAMC,QAAQ,GAAGC,OAAO,CAACC,IAAI,CAACH,KAAK,EAAE,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAACI,CAAC,EAAEC,GAAG,KAC5EA,GAAG,KAAK,UAAU,GAAG,KAAK,GAAGA,GAC/B,CAAC,CAAA;AAED,EAAA,IAAIP,SAAS,EAAE;IACb,IAAI,CAACQ,UAAU,CAACR,SAAS,CAAC,EAAE,MAAMS,KAAK,CAAC,uCAAuC,CAAC,CAAA;AAEhF,IAAA,IAAIC,cAAK,CAACC,cAAc,CAACX,SAAS,CAACC,KAAK,EAAEE,QAAQ,CAACS,QAAQ,CAAC,CAAC,EAAE;MAC7D,OAAOF,cAAK,CAACG,YAAY,CAACb,SAAS,CAACC,KAAK,EAAEE,QAAQ,CAACS,QAAQ,CAAC,EAAEP,IAAI,CAACF,QAAQ,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;AAC9F,KAAA;AACF,GAAA;EAEA,OAAOO,cAAA,CAAAI,aAAA,CAACC,sBAAsB,EAAAC,QAAA,CAAA;IAACC,GAAG,EAAEd,QAAQ,CAACc,GAAAA;GAASd,EAAAA,QAAQ,CAAG,CAAC,CAAA;AACpE,CAAC,CAAA;AAGD,MAAMe,oBAAoB,GAAGR,cAAK,CAACS,UAAU,CAAC,SAASD,oBAAoBA,CAEzE;EAAElB,SAAS;EAAEoB,SAAS;AAAEC,EAAAA,UAAU,GAAG,EAAE;EAAEC,kBAAkB;EAAE,GAAGpB,KAAAA;AAAM,CAAC,EACvEqB,YAAY,EACZ;EACA,MAAMpB,QAAQ,GAAGD,KAAK,CAAA;AACtB,EAAA,IAAI,CAACsB,OAAO,CAACH,UAAU,CAAC,EAAE;IACxB,MAAMI,gBAAgB,GAAGJ,UAAU,CAACK,GAAG,CAAC,CAACC,SAAS,EAAEpB,GAAG,KAAK;MAC1D,MAAM;QAAEqB,OAAO;QAAEC,KAAK;AAAEC,QAAAA,IAAAA;AAAK,OAAC,GAAGH,SAAS,CAAA;AAC1C,MAAA,OAAOjB,cAAA,CAAAI,aAAA,CAACiB,eAAe,EAAA;AAACxB,QAAAA,GAAG,EAAEA,GAAI;AAACyB,QAAAA,aAAa,EAAEJ,OAAQ;AAACC,QAAAA,KAAK,EAAEA,KAAM;AAACC,QAAAA,IAAI,EAAEA,IAAAA;AAAK,OAAE,CAAC,CAAA;AACxF,KAAC,CAAC,CAAA;IACF,MAAMG,WAAW,GAAGvB,cAAA,CAAAI,aAAA,CAACoB,WAAW,EAAET,IAAAA,EAAAA,gBAA8B,CAAC,CAAA;AACjEtB,IAAAA,QAAQ,CAACS,QAAQ,GACfF,cAAA,CAAAI,aAAA,CAACqB,OAAO,EAAA;AACNF,MAAAA,WAAW,EAAE,IAAK;AAClBG,MAAAA,OAAO,EAAEH,WAAY;AACrBI,MAAAA,SAAS,EAAE,YAAa;AACxBC,MAAAA,OAAO,EAAEhB,kBAAmB;AAC5BiB,MAAAA,MAAM,EAAE,KAAM;AACdC,MAAAA,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAAE,KAAA,EAEhB9B,cAAA,CAAAI,aAAA,CAAC2B,YAAY,EAAA;AACXC,MAAAA,SAAS,EAAE,IAAK;AAChBC,MAAAA,MAAM,EAAE,IAAK;AACb1B,MAAAA,GAAG,EAAEM,YAAa;AAClBH,MAAAA,SAAS,EAAEA,SAAU;MACrBU,IAAI,EAAE3B,QAAQ,CAAC2B,IAAK;AACpBc,MAAAA,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;MACrChB,OAAO,EAAEzB,QAAQ,CAACyB,OAAQ;MAC1BiB,iBAAiB,EAAE1C,QAAQ,CAAC0C,iBAAAA;AAAkB,KAC/C,CACM,CACV,CAAA;AACH,GAAC,MAAM;AACL1C,IAAAA,QAAQ,CAACS,QAAQ,GACfF,cAAA,CAAAI,aAAA,CAAC2B,YAAY,EAAA;AACXC,MAAAA,SAAS,EAAE,IAAK;AAChBC,MAAAA,MAAM,EAAE,IAAK;AACb1B,MAAAA,GAAG,EAAEM,YAAa;AAClBH,MAAAA,SAAS,EAAEA,SAAU;MACrBU,IAAI,EAAE3B,QAAQ,CAAC2B,IAAK;MACpBF,OAAO,EAAEzB,QAAQ,CAACyB,OAAQ;AAC1BgB,MAAAA,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;MACrCC,iBAAiB,EAAE1C,QAAQ,CAAC0C,iBAAAA;AAAkB,KAC/C,CACF,CAAA;AACH,GAAA;AAEA,EAAA,IAAI7C,SAAS,EAAE;IACb,IAAI,CAACQ,UAAU,CAACR,SAAS,CAAC,EAAE,MAAMS,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAEhF,IAAIC,cAAK,CAACC,cAAc,CAACX,SAAS,EAAE,CAAC,EAAE;AACrC,MAAA,OAAOU,cAAK,CAACG,YAAY,CAACb,SAAS,EAAE,EAAE;AAAE,QAAA,GAAGK,IAAI,CAACF,QAAQ,EAAE,MAAM,CAAA;AAAE,OAAC,CAAC,CAAA;AACvE,KAAA;AACF,GAAA;EAEA,OAAOO,cAAA,CAAAI,aAAA,CAACJ,cAAK,CAACoC,QAAQ,EAAE3C,IAAAA,EAAAA,QAAQ,CAACS,QAAyB,CAAC,CAAA;AAC7D,CAAC,CAAC,CAAA;AAGF,MAAMmC,oBAAoB,GAAG7C,KAAK,IAAI;EACpC,MAAM;IACJD,KAAK;IACL+C,UAAU;IACVC,QAAQ;IACRC,oBAAoB;IACpBC,kBAAkB;IAClBC,eAAe;IACfC,iBAAiB;IACjBC,YAAY;IACZtD,SAAS;AACTuD,IAAAA,cAAAA;AACF,GAAC,GAAGrD,KAAK,CAAA;EAET,MAAM,CAACsD,aAAa,EAAEC,gBAAgB,CAAC,GAAG/C,cAAK,CAACgD,QAAQ,CAAC,KAAK,CAAC,CAAA;EAC/D,MAAM,CAACC,gBAAgB,EAAEC,sBAAsB,CAAC,GAAGlD,cAAK,CAACgD,QAAQ,CAAC,EAAE,CAAC,CAAA;AACrEG,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,MAAMC,mBAAmB,GAAG,CAAC7D,KAAK,EAAE8D,OAAO,IAAI,EAAE,EAAErC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAA;IACnEkC,sBAAsB,CAACE,mBAAmB,CAAC,CAAA;AAC7C,GAAC,EAAE,CAAC7D,KAAK,CAAC,CAAC,CAAA;AAEX4D,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,IAAI,CAACL,aAAa,IAAIG,gBAAgB,EAAEK,MAAM,EAAE;MAC9CJ,sBAAsB,CAACD,gBAAgB,CAACjC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAA;AAC3D,KAAA;AACF,GAAC,EAAE,CAAC8B,aAAa,CAAC,CAAC,CAAA;AAEnB,EAAA,MAAMS,mBAAmB,GAAGC,WAAW,CAAC,MAAM;IAC5CT,gBAAgB,CAAC,IAAI,CAAC,CAAA;GACvB,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,MAAMU,gBAAgB,GAAGD,WAAW,CAAC,MAAM;IACzCT,gBAAgB,CAAC,KAAK,CAAC,CAAA;GACxB,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,MAAMW,sBAAsB,GAAGF,WAAW,CACxCG,WAAW,IAAI;IACb,MAAMP,mBAAmB,GAAGH,gBAAgB,CAACjC,GAAG,CAAC,CAAC4C,QAAQ,EAAEC,KAAK,KAAK;MACpE,IAAIA,KAAK,KAAKF,WAAW,EAAE;AACzB,QAAA,OAAO,KAAK,CAAA;AACd,OAAA;AACA,MAAA,OAAO,CAACC,QAAQ,CAAA;AAClB,KAAC,CAAC,CAAA;IACFV,sBAAsB,CAACE,mBAAmB,CAAC,CAAA;AAC7C,GAAC,EACD,CAACH,gBAAgB,CACnB,CAAC,CAAA;AAED,EAAA,MAAMa,cAAc,GAAGC,MAAM,EAAE,CAAA;AAC/B,EAAA,MAAMC,OAAO,GAAGD,MAAM,EAAE,CAAA;AACxB,EAAA,MAAME,OAAO,GAAGF,MAAM,CAAC,IAAI,CAAC,CAAA;EAE5B,SAASG,YAAYA,CAACC,KAAK,EAAE;IAC3B,IAAIL,cAAc,CAACM,OAAO,EAAE;MAC1B,MAAMC,WAAW,GAAGP,cAAc,CAACM,OAAO,CAACE,IAAI,EAAE,CAAA;MACjD,IAAID,WAAW,KAAKE,SAAS,EAAE;AAC7BF,QAAAA,WAAW,CACRG,IAAI,CAAC,MAAM,EAEX,CAAC,CACDC,KAAK,CAAC,MAAM,EAEZ,CAAC,CAAA;AACN,OAAA;AACF,KAAA;AAEA,IAAA,IAAI3E,UAAU,CAACP,KAAK,CAAC2E,YAAY,CAAC,EAAE;AAClC3E,MAAAA,KAAK,CAAC2E,YAAY,CAACC,KAAK,EAAE5E,KAAK,CAAC,CAAA;AAClC,KAAA;AAEAgE,IAAAA,mBAAmB,EAAE,CAAA;AACvB,GAAA;EAEA,SAASmB,YAAYA,GAAG;IACtB,IAAIZ,cAAc,CAACM,OAAO,EAAE;AAC1BN,MAAAA,cAAc,CAACM,OAAO,CAACO,KAAK,EAAE,CAAA;AAChC,KAAA;AAEAlB,IAAAA,gBAAgB,EAAE,CAAA;AACpB,GAAA;EAEA,SAASvC,OAAOA,CAACiD,KAAK,EAAE;AACtB,IAAA,IAAI1B,kBAAkB,EAAE;MACtB,OAAOmC,aAAa,CAACT,KAAK,CAAC,CAAA;AAC7B,KAAA;AAEA,IAAA,IAAIrE,UAAU,CAACP,KAAK,CAAC2B,OAAO,CAAC,EAAE;AAC7B3B,MAAAA,KAAK,CAAC2B,OAAO,CAACiD,KAAK,EAAE5E,KAAK,CAAC,CAAA;AAC7B,KAAA;AACF,GAAA;EAEA,SAASqF,aAAaA,CAACT,KAAK,EAAE;IAC5BA,KAAK,CAACU,cAAc,EAAE,CAAA;IACtBV,KAAK,CAACW,eAAe,EAAE,CAAA;AAEvB,IAAA,IAAIvC,QAAQ,EAAE;AACZ,MAAA,OAAOI,iBAAiB,CAACpD,KAAK,CAACM,GAAG,CAAC,CAAA;AACrC,KAAA;AAEA,IAAA,OAAO6C,eAAe,CAACnD,KAAK,CAACM,GAAG,CAAC,CAAA;AACnC,GAAA;EAEA,MAAMkF,aAAa,GAAGvB,WAAW,CAC/B,CAACW,KAAK,EAAEa,MAAM,EAAEnB,KAAK,KAAK;IACxBM,KAAK,CAACU,cAAc,EAAE,CAAA;IACtBV,KAAK,CAACW,eAAe,EAAE,CAAA;AAEvB,IAAA,IAAIhF,UAAU,CAACkF,MAAM,EAAE9D,OAAO,CAAC,EAAE;AAC/B8D,MAAAA,MAAM,CAAC9D,OAAO,CAAC3B,KAAK,CAAC,CAAA;AACvB,KAAA;AAEA,IAAA,IAAI,CAACuB,OAAO,CAACkE,MAAM,EAAErE,UAAU,CAAC,EAAE;MAChC+C,sBAAsB,CAACG,KAAK,CAAC,CAAA;AAC/B,KAAA;AACF,GAAC,EACD,CAACH,sBAAsB,CACzB,CAAC,CAAA;AAED,EAAA,MAAMuB,oBAAoB,GAAGzB,WAAW,CACtCG,WAAW,IAAIV,gBAAgB,CAACU,WAAW,CAAC,EAC5C,CAACV,gBAAgB,CACnB,CAAC,CAAA;EAED,SAASiC,aAAaA,CAACf,KAAK,EAAE;IAC5BA,KAAK,CAACU,cAAc,EAAE,CAAA;AACtBtF,IAAAA,KAAK,CAAC2F,aAAa,CAACf,KAAK,CAAC,CAAA;AAC5B,GAAA;EAEA,SAASgB,aAAaA,CAAC5F,KAAK,EAAE;IAC5B,IAAI6F,cAAc,GAAG,IAAI,CAAA;IAEzB,IAAI7F,KAAK,CAAC8F,QAAQ,EAAEC,WAAW,EAAE,KAAK,OAAO,EAAE;AAC7CF,MAAAA,cAAc,GACZpF,cAAA,CAAAI,aAAA,CAACmF,iBAAiB,EAAA;AAAC1C,QAAAA,cAAc,EAAEA,cAAAA;OACjC7C,EAAAA,cAAA,CAAAI,aAAA,CAAA,OAAA,EAAA;AAAOG,QAAAA,GAAG,EAAEuD,cAAe;QAAC0B,IAAI,EAAA,IAAA;QAACC,KAAK,EAAA,IAAA;OACpCzF,EAAAA,cAAA,CAAAI,aAAA,CAAA,QAAA,EAAA;QAAQsF,GAAG,EAAEnG,KAAK,CAACoG,UAAW;AAACC,QAAAA,IAAI,EAAC,WAAA;OAAa,CAC5C,CACU,CACpB,CAAA;KACF,MAAM,IAAIrG,KAAK,CAAC8F,QAAQ,EAAEC,WAAW,EAAE,KAAK,OAAO,EAAE;AACpDF,MAAAA,cAAc,GACZpF,cAAA,CAAAI,aAAA,CAACmF,iBAAiB,EAAA;AAAC1C,QAAAA,cAAc,EAAEA,cAAAA;OACjC7C,EAAAA,cAAA,CAAAI,aAAA,CAAA,KAAA,EAAA;AAAKM,QAAAA,SAAS,EAAC,OAAA;OACbV,EAAAA,cAAA,CAAAI,aAAA,CAACyF,UAAW,EAAE,IAAA,CACX,CACY,CACpB,CAAA;AACH,KAAC,MAAM;AACLT,MAAAA,cAAc,GACZpF,cAAA,CAAAI,aAAA,CAAC0F,aAAa,EAAA;QACZC,GAAG,EAAExG,KAAK,CAAC4B,KAAM;QACjBuE,GAAG,EAAEnG,KAAK,CAACoG,UAAW;AACtBK,QAAAA,MAAM,EAAC,MAAM;AACbC,QAAAA,KAAK,EAAC,MAAM;AACZC,QAAAA,WAAW,EAAC,UAAU;AACtBC,QAAAA,SAAS,EAAE,CAAE;AACbC,QAAAA,SAAS,EAAE,IAAK;AAChBvD,QAAAA,cAAc,EAAEA,cAAAA;AAAe,OAChC,CACF,CAAA;AACH,KAAA;AAEA,IAAA,OACE7C,cAAA,CAAAI,aAAA,CAACC,MAAQ,EAAA;AAACkC,MAAAA,QAAQ,EAAEA,QAAAA;KACjB6C,EAAAA,cAAc,EACfpF,cAAA,CAAAI,aAAA,CAACC,qBAAuB,EAAA;AAACkC,MAAAA,QAAQ,EAAEA,QAAAA;KAAW,CAAC,EAC/CvC,cAAA,CAAAI,aAAA,CAACC,OAAS,EAAA;AAACE,MAAAA,GAAG,EAAEyD,OAAAA;AAAQ,KAAA,EACtBhE,cAAA,CAAAI,aAAA,CAACC,eAAiB,EAAA;AAACgG,MAAAA,aAAa,EAAEzD,YAAa;AAACL,MAAAA,QAAQ,EAAEA,QAAAA;AAAS,KAAE,CAAC,EAEtEvC,cAAA,CAAAI,aAAA,CAACC,WAAa,QACZL,cAAA,CAAAI,aAAA,CAACC,cAAgB,EAAA,IAAA,EACfL,cAAA,CAAAI,aAAA,CAACC,sBAAwB,EAAEiG,IAAAA,EAAAA,mBAAmB,EAA6B,CAAC,EAE3E/G,KAAK,EAAEgH,IAAI,EAAEpF,KAAK,IACjBnB,cAAA,CAAAI,aAAA,CAACC,qBAAuB,EAAA;AAACuF,MAAAA,IAAI,EAAErG,KAAK,EAAEgH,IAAI,EAAEX,IAAAA;AAAK,KAAA,EAC/C5F,cAAA,CAAAI,aAAA,CAACoG,gBAAiB,EAAE,IAAA,CACG,CAC1B,EAEDxG,cAAA,CAAAI,aAAA,CAACC,qBAAuB,EAAA;AAACyC,MAAAA,aAAa,EAAEA,aAAAA;AAAc,KAAA,EACnDvD,KAAK,CAAC8D,OAAO,IACZ9D,KAAK,CAAC8D,OAAO,CAACrC,GAAG,CAAC,CAACgE,MAAM,EAAEnB,KAAK,KAC9B7D,cAAA,CAAAI,aAAA,CAACqG,OAAO,EAAA;MAAC5G,GAAG,EAAE,GAAGN,KAAK,CAACM,GAAG,CAAImF,CAAAA,EAAAA,MAAM,CAAC7D,KAAK,CAAG,CAAA;MAACO,OAAO,EAAEsD,MAAM,CAAC7D,KAAAA;AAAM,KAAA,EAClEnB,cAAA,CAAAI,aAAA,CAACC,QAAU,EAAA;MACTR,GAAG,EAAE,GAAGN,KAAK,CAACM,GAAG,CAAImF,CAAAA,EAAAA,MAAM,CAAC7D,KAAK,CAAG,CAAA;AACpCuF,MAAAA,EAAE,EAAElG,oBAAqB;MACzBlB,SAAS,EAAE0F,MAAM,CAAC1F,SAAU;MAC5BoB,SAAS,EAAEsE,MAAM,CAACtE,SAAU;MAC5BU,IAAI,EAAE4D,MAAM,CAAC5D,IAAK;AAClB0B,MAAAA,aAAa,EAAEA,aAAc;AAC7BlC,MAAAA,kBAAkB,EAAEqE,oBAAoB,CAACpB,KAAK,CAAE;MAChD3C,OAAO,EAAEiD,KAAK,IAAIY,aAAa,CAACZ,KAAK,EAAEa,MAAM,EAAEnB,KAAK,CAAE;MACtDlD,UAAU,EAAEqE,MAAM,EAAErE,UAAW;MAC/BwB,iBAAiB,EAAE6C,MAAM,CAAC7C,iBAAAA;KAC3B,CACM,CACV,CACoB,CACT,CAAC,EAEnBnC,cAAA,CAAAI,aAAA,CAACC,iBAAmB,EAAA,IAAA,EACjBiC,UAAU,IACTtC,cAAA,CAAAI,aAAA,CAACC,6BAA+B,EAAA;AAACkC,MAAAA,QAAQ,EAAEA,QAAAA;AAAS,KAAA,EAClDvC,cAAA,CAAAI,aAAA,CAACuG,uBAAkB,EAAA;AAACzF,MAAAA,OAAO,EAAE0D,aAAAA;KAAgB,CACd,CAClC,EAED5E,cAAA,CAAAI,aAAA,CAACC,0BAA4B,EAAA,IAAA,EAAEuG,gBAAgB,EAAiC,CAC7D,CACR,CAAC,EAEftE,UAAU,IACTtC,cAAA,CAAAI,aAAA,CAACC,eAAiB,EAAA;AAChBkC,MAAAA,QAAQ,EAAEA,QAAS;AACnB8D,MAAAA,aAAa,EAAEzD,YAAa;AAC5BJ,MAAAA,oBAAoB,EAAEA,oBAAAA;AAAqB,KAC5C,CAEM,CAAC,EACXjD,KAAK,CAACsH,OAAO,IAAI7G,cAAA,CAAAI,aAAA,CAACC,sBAAwB,EAAA,IAAA,EAAEd,KAAK,CAACsH,OAAkC,CAC7E,CAAC,CAAA;AAEf,GAAA;AAEA1D,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,IAAIrD,UAAU,CAACP,KAAK,CAAC2F,aAAa,CAAC,EAAE;MACnC,IAAIlB,OAAO,CAACI,OAAO,EAAE;QACnBJ,OAAO,CAACI,OAAO,CAAC0C,gBAAgB,CAAC,aAAa,EAAE5B,aAAa,CAAC,CAAA;AAChE,OAAA;AACA,MAAA,OAAO,MAAM;QACX,IAAIlB,OAAO,CAACI,OAAO,EAAE;UACnBJ,OAAO,CAACI,OAAO,CAAC2C,mBAAmB,CAAC,aAAa,EAAE7B,aAAa,CAAC,CAAA;AACnE,SAAA;OACD,CAAA;AACH,KAAA;GACD,EAAE,EAAE,CAAC,CAAA;EAEN,SAAS8B,WAAWA,CAAC7C,KAAK,EAAE;AAC1B5E,IAAAA,KAAK,CAACyH,WAAW,CAAC7C,KAAK,CAAC,CAAA;AAC1B,GAAA;AAEAhB,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,IAAIrD,UAAU,CAACP,KAAK,CAACyH,WAAW,CAAC,EAAE;MACjC,IAAI/C,OAAO,CAACG,OAAO,EAAE;QACnBH,OAAO,CAACG,OAAO,CAAC0C,gBAAgB,CAAC,WAAW,EAAEE,WAAW,CAAC,CAAA;AAC5D,OAAA;AACA,MAAA,OAAO,MAAM;QACX,IAAI/C,OAAO,CAACG,OAAO,EAAE;UACnBH,OAAO,CAACG,OAAO,CAAC2C,mBAAmB,CAAC,WAAW,EAAEC,WAAW,CAAC,CAAA;AAC/D,SAAA;OACD,CAAA;AACH,KAAA;GACD,EAAE,EAAE,CAAC,CAAA;AAGN7D,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,IAAIP,YAAY,EAAE;AAChBoB,MAAAA,OAAO,CAACI,OAAO,CAAC6C,cAAc,CAAC;AAAEC,QAAAA,QAAQ,EAAE,QAAQ;AAAEC,QAAAA,KAAK,EAAE,SAAA;AAAU,OAAC,CAAC,CAAA;AAC1E,KAAA;AACF,GAAC,EAAE,CAACvE,YAAY,CAAC,CAAC,CAAA;AAElB,EAAA,MAAM0D,mBAAmB,GAAG9C,WAAW,CAAC,MAAM;AAC5C,IAAA,IAAI,CAACjE,KAAK,EAAE6H,QAAQ,EAAE,OAAO,IAAI,CAAA;AAEjC,IAAA,OACEpH,cAAA,CAAAI,aAAA,CAACiH,KAAK,EAAA;AACJC,MAAAA,SAAS,EAAEtH,cAAA,CAAAI,aAAA,CAACmH,SAAU,MAAE,CAAE;MAC1BC,YAAY,EAAEjI,KAAK,CAAC6H,QAAS;AAC7BlF,MAAAA,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;AACrCuF,MAAAA,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAE;AAC/BC,MAAAA,QAAQ,EAAE,EAAG;AACbC,MAAAA,UAAU,EAAE,GAAI;AAChBC,MAAAA,UAAU,EAAE,EAAG;AACfC,MAAAA,eAAe,EAAE,CAAE;AACnBC,MAAAA,iBAAiB,EAAE,CAAA;AAAE,KACtB,CAAC,CAAA;AAEN,GAAC,EAAE,CAACvI,KAAK,CAAC,CAAC,CAAA;AAEX,EAAA,MAAMqH,gBAAgB,GAAGpD,WAAW,CAAC,MAAM;IACzC,IAAI8D,SAAS,GAAG,IAAI,CAAA;IACpB,IAAIE,YAAY,GAAG,IAAI,CAAA;AAEvB,IAAA,IAAIjI,KAAK,EAAE8F,QAAQ,KAAK,OAAO,EAAE;AAC/BiC,MAAAA,SAAS,GAAGtH,cAAA,CAAAI,aAAA,CAAC2H,OAAQ,MAAE,CAAC,CAAA;AAC1B,KAAA;IAEA,IAAIxI,KAAK,EAAEyI,QAAQ,EAAE;AACnBR,MAAAA,YAAY,GAAGS,cAAc,CAAC1I,KAAK,CAACyI,QAAQ,CAAC,CAAA;AAC/C,KAAA;AAEA,IAAA,IAAI,CAACV,SAAS,IAAI,CAACE,YAAY,EAAE,OAAO,IAAI,CAAA;AAC5C,IAAA,OACExH,cAAA,CAAAI,aAAA,CAACiH,KAAK,EAAA;AACJC,MAAAA,SAAS,EAAEA,SAAU;AACrBE,MAAAA,YAAY,EAAEA,YAAa;AAC3BtF,MAAAA,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAE;AACrCuF,MAAAA,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAE;AAC/BC,MAAAA,QAAQ,EAAE,EAAG;AACbC,MAAAA,UAAU,EAAE,GAAI;AAChBC,MAAAA,UAAU,EAAE,EAAG;AACfC,MAAAA,eAAe,EAAE,CAAE;AACnBC,MAAAA,iBAAiB,EAAE,CAAE;AACrBI,MAAAA,QAAQ,EAAE,EAAG;AACblC,MAAAA,MAAM,EAAE,EAAA;AAAG,KACZ,CAAC,CAAA;AAEN,GAAC,EAAE,CAACzG,KAAK,CAAC,CAAC,CAAA;AAEX,EAAA,MAAM4I,aAAa,GAAG3E,WAAW,CAAC,MAAM;AACtC,IAAA,OACExD,cAAA,CAAAI,aAAA,CAACgI,WAAW,EAAA;AACVC,MAAAA,iBAAiB,EAAE,IAAK;AACxBlH,MAAAA,KAAK,EAAE5B,KAAK,EAAE4B,KAAK,IAAI,EAAG;AAC1BmH,MAAAA,WAAW,EAAE/I,KAAK,EAAE+I,WAAW,IAAI,EAAG;AACtCC,MAAAA,YAAY,EAAEhJ,KAAK,EAAEiJ,WAAW,IAAI,EAAG;AACvCC,MAAAA,gBAAgB,EAAE,SAAU;AAC5BC,MAAAA,UAAU,EAAEnJ,KAAK,EAAEoJ,OAAO,EAAED,UAAU,IAAI,EAAG;AAC7CE,MAAAA,WAAW,EAAErJ,KAAK,EAAEoJ,OAAO,EAAEC,WAAW,IAAI,EAAG;AAC/CC,MAAAA,OAAO,EAAE,KAAA;AAAM,KAChB,CAAC,CAAA;AAEN,GAAC,EAAE,CAACtJ,KAAK,CAAC,CAAC,CAAA;AAEX,EAAA,OACES,cAAA,CAAAI,aAAA,CAACC,mBAAqB,EAAA;IAACyI,QAAQ,EAAEvJ,KAAK,CAACuJ,QAAAA;AAAS,GAAA,EAC9C9I,cAAA,CAAAI,aAAA,CAACC,sBAAsB,EAAA;AACrBqG,IAAAA,EAAE,EAAErH,qBAAsB;AAC1BC,IAAAA,SAAS,EAAEA,SAAU;AACrBC,IAAAA,KAAK,EAAEA,KAAM;IACbuJ,QAAQ,EAAEvJ,KAAK,CAACuJ,QAAS;AACzB5H,IAAAA,OAAO,EAAEA,OAAQ;AACjBuB,IAAAA,kBAAkB,EAAEA,kBAAmB;AACvCyB,IAAAA,YAAY,EAAEA,YAAa;AAC3BQ,IAAAA,YAAY,EAAEA,YAAa;IAC3BqE,SAAS,EAAExJ,KAAK,CAACwJ,SAAU;AAC3BC,IAAAA,QAAQ,EAAE/E,OAAQ;AAClB1B,IAAAA,QAAQ,EAAEA,QAAS;AACnB8D,IAAAA,aAAa,EAAEzD,YAAa;IAC5BqG,SAAS,EAAE1J,KAAK,EAAE0J,SAAU;IAC5BC,SAAS,EAAE3J,KAAK,EAAE4J,QAAS;AAC3B3G,IAAAA,oBAAoB,EAAEA,oBAAAA;AAAqB,GAAA,EAE3CxC,cAAA,CAAAI,aAAA,CAACC,cAAgB,EAAA;IACf+I,MAAM,EAAE7J,KAAK,CAAC6J,MAAO;AACrB7I,IAAAA,GAAG,EAAEyD,OAAQ;AACbqC,IAAAA,aAAa,EAAEzD,YAAa;AAC5BL,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,oBAAoB,EAAEA,oBAAAA;AAAqB,GAAA,EAE3CxC,cAAA,CAAAI,aAAA,CAACC,KAAO,EAAA;AAAC,IAAA,SAAA,EAAQ,IAAI;AAACkC,IAAAA,QAAQ,EAAEA,QAAAA;AAAS,GAAA,EACtChD,KAAK,CAACoG,UAAU,IAAIR,aAAa,CAAC5F,KAAK,CACjC,CAAC,EAET4I,aAAa,EACE,CACI,CACH,CAAC,CAAA;AAE5B,CAAC,CAAA;AAED9F,oBAAoB,CAACgH,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,KAAG,YAAA,GAAA;EAI/BjK,KAAK,EAAEkK,SAAS,CAACC,KAAK,CAACC,oBAAoB,CAAC,CAACC,UAAU;EAKvDtH,UAAU,EAAEmH,SAAS,CAACI,IAAI;EAK1BtH,QAAQ,EAAEkH,SAAS,CAACI,IAAI;EAKxBrH,oBAAoB,EAAEiH,SAAS,CAACK,OAAO,CAACL,SAAS,CAACM,MAAM,CAAC;EAKzDtH,kBAAkB,EAAEgH,SAAS,CAACI,IAAI;AAKlCnH,EAAAA,eAAe,EAAE+G,SAAS,CAACO,IAAI,CAACJ,UAAU;AAK1CjH,EAAAA,iBAAiB,EAAE8G,SAAS,CAACO,IAAI,CAACJ,UAAU;AAK5ChH,EAAAA,YAAY,EAAE6G,SAAS,CAACI,IAAI,CAACD,UAAU;EAMvCtK,SAAS,EAAEmK,SAAS,CAACO,IAAI;EAMzBnH,cAAc,EAAE4G,SAAS,CAACQ,MAAAA;AAC5B,CAAC,GAAA,EAAA,CAAA;AAED5H,oBAAoB,CAAC6H,YAAY,GAAG,EAAE,CAAA;AAEtC,6BAAeC,iBAAiB,CAC9BnK,cAAK,CAACoK,IAAI,CAAC/H,oBAAoB,EAAE,CAACgI,SAAS,EAAEC,SAAS,KAAK;AAEzD,EAAA,MAAMC,aAAa,GAAG,CACpB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,cAAc,CACf,CAAA;AAED,EAAA,OAAOA,aAAa,CAACC,KAAK,CAACC,OAAO,IAAIC,GAAG,CAACL,SAAS,EAAEI,OAAO,CAAC,KAAKC,GAAG,CAACJ,SAAS,EAAEG,OAAO,CAAC,CAAC,CAAA;AAC5F,CAAC,CACH,CAAC;;;;"}