@wix/patterns 1.308.0 → 1.317.0

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 (427) hide show
  1. package/dist/cjs/components/ActionControl/ActionSubItemProps.js.map +1 -1
  2. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js +25 -15
  3. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js.map +1 -1
  4. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsPanel.js +26 -79
  5. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsPanel.js.map +1 -1
  6. package/dist/cjs/components/ArchivedItemsPanel/DeleteFieldModal.js +74 -0
  7. package/dist/cjs/components/ArchivedItemsPanel/DeleteFieldModal.js.map +1 -0
  8. package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
  9. package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
  10. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  11. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  12. package/dist/cjs/components/CollectionCard/CollectionCard.js +24 -15
  13. package/dist/cjs/components/CollectionCard/CollectionCard.js.map +1 -1
  14. package/dist/cjs/components/CollectionErrorState/CollectionErrorState.js.map +1 -1
  15. package/dist/cjs/components/CollectionPageHeaderNew/CollectionPageHeader.js.map +1 -1
  16. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  17. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  18. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
  19. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  20. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.js +26 -24
  21. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.js.map +1 -1
  22. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  23. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  24. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupProps.js.map +1 -1
  25. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js +12 -10
  26. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js.map +1 -1
  27. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js +42 -28
  28. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js.map +1 -1
  29. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.js +14 -10
  30. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.js.map +1 -1
  31. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css +4 -5
  32. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  33. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  34. package/dist/cjs/components/CollectionToolbar/useIsCollectionToolbarExists.js +3 -2
  35. package/dist/cjs/components/CollectionToolbar/useIsCollectionToolbarExists.js.map +1 -1
  36. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  37. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  38. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  39. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  40. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsPanel.js +5 -2
  41. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsPanel.js.map +1 -1
  42. package/dist/cjs/components/CustomDrawerLayout.js +99 -0
  43. package/dist/cjs/components/CustomDrawerLayout.js.map +1 -0
  44. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCommonComponents.js +12 -3
  45. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCommonComponents.js.map +1 -1
  46. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  47. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  48. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  49. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  50. package/dist/cjs/components/ExportButton/ExportButton.js +55 -37
  51. package/dist/cjs/components/ExportButton/ExportButton.js.map +1 -1
  52. package/dist/cjs/components/ExportButton/ExportButtonModalLayout.js +16 -1
  53. package/dist/cjs/components/ExportButton/ExportButtonModalLayout.js.map +1 -1
  54. package/dist/cjs/components/ExportButton/ExportModal.js +26 -10
  55. package/dist/cjs/components/ExportButton/ExportModal.js.map +1 -1
  56. package/dist/cjs/components/ExportButton/ExportModal.uni.driver.js +8 -7
  57. package/dist/cjs/components/ExportButton/ExportModal.uni.driver.js.map +1 -1
  58. package/dist/cjs/components/ExportButton/ExportStepProgress.js +1 -1
  59. package/dist/cjs/components/ExportButton/ExportStepProgress.js.map +1 -1
  60. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  61. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  62. package/dist/cjs/components/FiltersPanel/FiltersPanelAppliedFiltersSection.js +2 -0
  63. package/dist/cjs/components/FiltersPanel/FiltersPanelAppliedFiltersSection.js.map +1 -1
  64. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  65. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  66. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  67. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  68. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  69. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  70. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  71. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  72. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  73. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  74. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
  75. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  76. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  77. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  78. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  79. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  80. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  81. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  82. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  83. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  84. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  85. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  86. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  87. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  88. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  89. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  90. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  91. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  92. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  93. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  94. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  95. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  96. package/dist/cjs/components/Suggestions/MarketingCard.js +244 -0
  97. package/dist/cjs/components/Suggestions/MarketingCard.js.map +1 -0
  98. package/dist/cjs/components/Suggestions/MarketingCard.uni.driver.js +26 -0
  99. package/dist/cjs/components/Suggestions/MarketingCard.uni.driver.js.map +1 -0
  100. package/dist/cjs/components/Suggestions/Suggestions.js +102 -48
  101. package/dist/cjs/components/Suggestions/Suggestions.js.map +1 -1
  102. package/dist/cjs/components/Suggestions/Suggestions.uni.driver.js +67 -17
  103. package/dist/cjs/components/Suggestions/Suggestions.uni.driver.js.map +1 -1
  104. package/dist/cjs/components/Suggestions/index.js +5 -5
  105. package/dist/cjs/components/Suggestions/index.js.map +1 -1
  106. package/dist/cjs/components/Suggestions/types.js +4 -0
  107. package/dist/cjs/components/Suggestions/types.js.map +1 -0
  108. package/dist/cjs/components/TabTotal/TabTotalCounterBadge.js +4 -1
  109. package/dist/cjs/components/TabTotal/TabTotalCounterBadge.js.map +1 -1
  110. package/dist/cjs/components/TabsFilter/TabsDropdown.js +8 -6
  111. package/dist/cjs/components/TabsFilter/TabsDropdown.js.map +1 -1
  112. package/dist/cjs/components/TabsFilter/TabsFilter.js +14 -8
  113. package/dist/cjs/components/TabsFilter/TabsFilter.js.map +1 -1
  114. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  115. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  116. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  117. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  118. package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
  119. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  120. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  121. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  122. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  123. package/dist/cjs/components/ToolbarTitle/ToolbarTitle.js +17 -9
  124. package/dist/cjs/components/ToolbarTitle/ToolbarTitle.js.map +1 -1
  125. package/dist/cjs/components/common.st.css.js +4 -4
  126. package/dist/cjs/components/common.st.css.js.map +1 -1
  127. package/dist/cjs/exports/testkit/unidriver.js +4 -1
  128. package/dist/cjs/exports/testkit/unidriver.js.map +1 -1
  129. package/dist/cjs/hooks/useBulkActionMobileGroups.js +2 -1
  130. package/dist/cjs/hooks/useBulkActionMobileGroups.js.map +1 -1
  131. package/dist/cjs/hooks/useItemsSelectionFilter/useItemsSelectionFilter.js.map +1 -1
  132. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  133. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  134. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  135. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  136. package/dist/cjs/state/NestedTableState/NestedTableNodeStateOptimisticActions.js.map +1 -1
  137. package/dist/cjs/state/NestedTableState/NestedTableNodeStatePublicAPI.js.map +1 -1
  138. package/dist/cjs/state/NestedTableState/index.js +5 -2
  139. package/dist/cjs/state/NestedTableState/index.js.map +1 -1
  140. package/dist/cjs/state/ToolbarCollectionState.js +3 -1
  141. package/dist/cjs/state/ToolbarCollectionState.js.map +1 -1
  142. package/dist/cjs/styles.global.css +1 -1
  143. package/dist/cjs/version.js +1 -1
  144. package/dist/cjs/version.js.map +1 -1
  145. package/dist/cjs/wix-design-system-version.js +1 -1
  146. package/dist/cjs/wix-design-system-version.js.map +1 -1
  147. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js +6 -5
  148. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js.map +1 -1
  149. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsPanel.js +25 -44
  150. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsPanel.js.map +1 -1
  151. package/dist/esm/components/ArchivedItemsPanel/DeleteFieldModal.js +22 -0
  152. package/dist/esm/components/ArchivedItemsPanel/DeleteFieldModal.js.map +1 -0
  153. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  154. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  155. package/dist/esm/components/CollectionCard/CollectionCard.js +3 -1
  156. package/dist/esm/components/CollectionCard/CollectionCard.js.map +1 -1
  157. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  158. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  159. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  160. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  161. package/dist/esm/components/CollectionToolbar/CollectionToolbar.js +3 -2
  162. package/dist/esm/components/CollectionToolbar/CollectionToolbar.js.map +1 -1
  163. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  164. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  165. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js +2 -2
  166. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js.map +1 -1
  167. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js +20 -14
  168. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js.map +1 -1
  169. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.js +11 -8
  170. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.js.map +1 -1
  171. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css +4 -5
  172. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  173. package/dist/esm/components/CollectionToolbar/useIsCollectionToolbarExists.js +2 -2
  174. package/dist/esm/components/CollectionToolbar/useIsCollectionToolbarExists.js.map +1 -1
  175. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  176. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  177. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  178. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  179. package/dist/esm/components/CustomColumnsPanel/CustomColumnsPanel.js +1 -1
  180. package/dist/esm/components/CustomColumnsPanel/CustomColumnsPanel.js.map +1 -1
  181. package/dist/esm/components/CustomDrawerLayout.js +13 -0
  182. package/dist/esm/components/CustomDrawerLayout.js.map +1 -0
  183. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCommonComponents.js +3 -1
  184. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCommonComponents.js.map +1 -1
  185. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  186. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  187. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  188. package/dist/esm/components/ExportButton/ExportButton.js +10 -3
  189. package/dist/esm/components/ExportButton/ExportButton.js.map +1 -1
  190. package/dist/esm/components/ExportButton/ExportButtonModalLayout.js +6 -0
  191. package/dist/esm/components/ExportButton/ExportButtonModalLayout.js.map +1 -1
  192. package/dist/esm/components/ExportButton/ExportModal.js +8 -3
  193. package/dist/esm/components/ExportButton/ExportModal.js.map +1 -1
  194. package/dist/esm/components/ExportButton/ExportModal.uni.driver.js +8 -7
  195. package/dist/esm/components/ExportButton/ExportModal.uni.driver.js.map +1 -1
  196. package/dist/esm/components/ExportButton/ExportStepProgress.js +1 -1
  197. package/dist/esm/components/ExportButton/ExportStepProgress.js.map +1 -1
  198. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  199. package/dist/esm/components/Fade/Fade.st.css.js.map +1 -1
  200. package/dist/esm/components/FiltersPanel/FiltersPanelAppliedFiltersSection.js +1 -0
  201. package/dist/esm/components/FiltersPanel/FiltersPanelAppliedFiltersSection.js.map +1 -1
  202. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  203. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  204. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  205. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  206. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  207. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  208. package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
  209. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  210. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  211. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  212. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  213. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  214. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  215. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  216. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  217. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  218. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  219. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  220. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  221. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  222. package/dist/esm/components/Suggestions/MarketingCard.js +60 -0
  223. package/dist/esm/components/Suggestions/MarketingCard.js.map +1 -0
  224. package/dist/esm/components/Suggestions/MarketingCard.uni.driver.js +22 -0
  225. package/dist/esm/components/Suggestions/MarketingCard.uni.driver.js.map +1 -0
  226. package/dist/esm/components/Suggestions/Suggestions.js +33 -6
  227. package/dist/esm/components/Suggestions/Suggestions.js.map +1 -1
  228. package/dist/esm/components/Suggestions/Suggestions.uni.driver.js +67 -18
  229. package/dist/esm/components/Suggestions/Suggestions.uni.driver.js.map +1 -1
  230. package/dist/esm/components/Suggestions/index.js +4 -1
  231. package/dist/esm/components/Suggestions/index.js.map +1 -1
  232. package/dist/esm/components/Suggestions/types.js +2 -0
  233. package/dist/esm/components/Suggestions/types.js.map +1 -0
  234. package/dist/esm/components/TabTotal/TabTotalCounterBadge.js +2 -2
  235. package/dist/esm/components/TabTotal/TabTotalCounterBadge.js.map +1 -1
  236. package/dist/esm/components/TabsFilter/TabsDropdown.js +3 -3
  237. package/dist/esm/components/TabsFilter/TabsDropdown.js.map +1 -1
  238. package/dist/esm/components/TabsFilter/TabsFilter.js +2 -2
  239. package/dist/esm/components/TabsFilter/TabsFilter.js.map +1 -1
  240. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  241. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  242. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  243. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  244. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  245. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  246. package/dist/esm/components/ToolbarTitle/ToolbarTitle.js +8 -2
  247. package/dist/esm/components/ToolbarTitle/ToolbarTitle.js.map +1 -1
  248. package/dist/esm/components/common.st.css.js +2 -2
  249. package/dist/esm/exports/testkit/unidriver.js +2 -1
  250. package/dist/esm/exports/testkit/unidriver.js.map +1 -1
  251. package/dist/esm/hooks/useBulkActionMobileGroups.js +2 -1
  252. package/dist/esm/hooks/useBulkActionMobileGroups.js.map +1 -1
  253. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  254. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  255. package/dist/esm/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  256. package/dist/esm/state/NestedTableState/NestedTableNodeStateOptimisticActions.js.map +1 -1
  257. package/dist/esm/state/ToolbarCollectionState.js +2 -0
  258. package/dist/esm/state/ToolbarCollectionState.js.map +1 -1
  259. package/dist/esm/styles.global.css +1 -1
  260. package/dist/esm/version.js +1 -1
  261. package/dist/esm/wix-design-system-version.js +1 -1
  262. package/dist/types/components/ActionControl/ActionSubItemProps.d.ts +8 -6
  263. package/dist/types/components/ActionControl/ActionSubItemProps.d.ts.map +1 -1
  264. package/dist/types/components/ArchivedItemsPanel/ArchivedItemsCTAButton.d.ts +3 -1
  265. package/dist/types/components/ArchivedItemsPanel/ArchivedItemsCTAButton.d.ts.map +1 -1
  266. package/dist/types/components/ArchivedItemsPanel/ArchivedItemsPanel.d.ts.map +1 -1
  267. package/dist/types/components/ArchivedItemsPanel/DeleteFieldModal.d.ts +11 -0
  268. package/dist/types/components/ArchivedItemsPanel/DeleteFieldModal.d.ts.map +1 -0
  269. package/dist/types/components/CollectionCard/CollectionCard.d.ts.map +1 -1
  270. package/dist/types/components/CollectionErrorState/CollectionErrorState.d.ts +1 -1
  271. package/dist/types/components/CollectionPageHeaderNew/CollectionPageHeader.d.ts +4 -4
  272. package/dist/types/components/CollectionPageNew/CollectionPage.st.css.d.ts.map +1 -1
  273. package/dist/types/components/CollectionTable/CollectionTable.st.css.d.ts.map +1 -1
  274. package/dist/types/components/CollectionToolbar/CollectionToolbar.d.ts.map +1 -1
  275. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  276. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupProps.d.ts +2 -0
  277. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupProps.d.ts.map +1 -1
  278. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.d.ts.map +1 -1
  279. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.d.ts +5 -1
  280. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.d.ts.map +1 -1
  281. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.d.ts +3 -0
  282. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.d.ts.map +1 -1
  283. package/dist/types/components/CollectionToolbar/useIsCollectionToolbarExists.d.ts +2 -1
  284. package/dist/types/components/CollectionToolbar/useIsCollectionToolbarExists.d.ts.map +1 -1
  285. package/dist/types/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.d.ts.map +1 -1
  286. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
  287. package/dist/types/components/CustomColumnsPanel/CustomColumnsPanel.d.ts.map +1 -1
  288. package/dist/types/components/CustomDrawerLayout.d.ts +15 -0
  289. package/dist/types/components/CustomDrawerLayout.d.ts.map +1 -0
  290. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetCommonComponents.d.ts.map +1 -1
  291. package/dist/types/components/EntityPage/EntityPagePlain.st.css.d.ts.map +1 -1
  292. package/dist/types/components/ExportButton/ExportButton.d.ts.map +1 -1
  293. package/dist/types/components/ExportButton/ExportButtonModalLayout.d.ts.map +1 -1
  294. package/dist/types/components/ExportButton/ExportModal.d.ts.map +1 -1
  295. package/dist/types/components/ExportButton/ExportModal.uni.driver.d.ts.map +1 -1
  296. package/dist/types/components/Fade/Fade.st.css.d.ts.map +1 -1
  297. package/dist/types/components/FiltersPanel/FiltersPanelAppliedFiltersSection.d.ts.map +1 -1
  298. package/dist/types/components/Grid/GridFolders.uni.driver.d.ts +4 -0
  299. package/dist/types/components/Grid/GridFolders.uni.driver.d.ts.map +1 -1
  300. package/dist/types/components/LoadingRow/LoadingRow.st.css.d.ts.map +1 -1
  301. package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
  302. package/dist/types/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.d.ts.map +1 -1
  303. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.d.ts.map +1 -1
  304. package/dist/types/components/Suggestions/MarketingCard.d.ts +41 -0
  305. package/dist/types/components/Suggestions/MarketingCard.d.ts.map +1 -0
  306. package/dist/types/components/Suggestions/MarketingCard.uni.driver.d.ts +61 -0
  307. package/dist/types/components/Suggestions/MarketingCard.uni.driver.d.ts.map +1 -0
  308. package/dist/types/components/Suggestions/Suggestions.d.ts +1 -23
  309. package/dist/types/components/Suggestions/Suggestions.d.ts.map +1 -1
  310. package/dist/types/components/Suggestions/Suggestions.uni.driver.d.ts +18 -8
  311. package/dist/types/components/Suggestions/Suggestions.uni.driver.d.ts.map +1 -1
  312. package/dist/types/components/Suggestions/index.d.ts +4 -1
  313. package/dist/types/components/Suggestions/index.d.ts.map +1 -1
  314. package/dist/types/components/Suggestions/types.d.ts +38 -0
  315. package/dist/types/components/Suggestions/types.d.ts.map +1 -0
  316. package/dist/types/components/TabTotal/TabTotalCounterBadge.d.ts.map +1 -1
  317. package/dist/types/components/TabsFilter/TabsDropdown.d.ts +2 -0
  318. package/dist/types/components/TabsFilter/TabsDropdown.d.ts.map +1 -1
  319. package/dist/types/components/TabsFilter/TabsFilter.d.ts +15 -4
  320. package/dist/types/components/TabsFilter/TabsFilter.d.ts.map +1 -1
  321. package/dist/types/components/TabsFilter/TabsFilter.st.css.d.ts.map +1 -1
  322. package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.d.ts.map +1 -1
  323. package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts +3 -3
  324. package/dist/types/components/ToolbarTitle/ToolbarTitle.d.ts.map +1 -1
  325. package/dist/types/exports/testkit/unidriver.d.ts +2 -1
  326. package/dist/types/exports/testkit/unidriver.d.ts.map +1 -1
  327. package/dist/types/hooks/useBulkActionMobileGroups.d.ts.map +1 -1
  328. package/dist/types/hooks/useItemsSelectionFilter/useItemsSelectionFilter.d.ts +1 -1
  329. package/dist/types/state/FormPage/FormPageHeader.st.css.d.ts.map +1 -1
  330. package/dist/types/state/NestedTableState/NestedTableNodeStateOptimisticActions.d.ts +24 -0
  331. package/dist/types/state/NestedTableState/NestedTableNodeStateOptimisticActions.d.ts.map +1 -1
  332. package/dist/types/state/NestedTableState/NestedTableNodeStatePublicAPI.d.ts +1 -0
  333. package/dist/types/state/NestedTableState/NestedTableNodeStatePublicAPI.d.ts.map +1 -1
  334. package/dist/types/state/NestedTableState/index.d.ts +1 -0
  335. package/dist/types/state/NestedTableState/index.d.ts.map +1 -1
  336. package/dist/types/state/ToolbarCollectionState.d.ts +1 -0
  337. package/dist/types/state/ToolbarCollectionState.d.ts.map +1 -1
  338. package/dist/types/testkit/jsdom.d.ts +11 -7
  339. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  340. package/dist/types/version.d.ts +1 -1
  341. package/dist/types/wix-design-system-version.d.ts +1 -1
  342. package/package.json +6 -6
  343. package/src/components/ActionControl/ActionSubItemProps.tsx +8 -6
  344. package/src/components/ArchivedItemsPanel/ArchivedItemsCTAButton.tsx +15 -5
  345. package/src/components/ArchivedItemsPanel/ArchivedItemsPanel.tsx +41 -85
  346. package/src/components/ArchivedItemsPanel/DeleteFieldModal.tsx +50 -0
  347. package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
  348. package/src/components/Collapse/Collapse.st.css.ts +2 -2
  349. package/src/components/CollectionCard/CollectionCard.tsx +6 -0
  350. package/src/components/CollectionErrorState/CollectionErrorState.tsx +1 -1
  351. package/src/components/CollectionPageHeaderNew/CollectionPageHeader.tsx +4 -4
  352. package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
  353. package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
  354. package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
  355. package/src/components/CollectionToolbar/CollectionToolbar.tsx +6 -3
  356. package/src/components/CollectionToolbar/CollectionToolbarActionsGroupProps.ts +2 -0
  357. package/src/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.tsx +2 -1
  358. package/src/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.tsx +58 -41
  359. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css +4 -5
  360. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
  361. package/src/components/CollectionToolbar/SearchOrCustomFilter.tsx +16 -9
  362. package/src/components/CollectionToolbar/useIsCollectionToolbarExists.tsx +5 -2
  363. package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
  364. package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
  365. package/src/components/CustomColumnsPanel/CustomColumnsPanel.tsx +1 -0
  366. package/src/components/CustomDrawerLayout.tsx +82 -0
  367. package/src/components/CustomFieldsWidget/CustomFieldsWidgetCommonComponents.tsx +4 -0
  368. package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
  369. package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
  370. package/src/components/ExportButton/ExportButton.tsx +30 -9
  371. package/src/components/ExportButton/ExportButtonModalLayout.tsx +14 -0
  372. package/src/components/ExportButton/ExportModal.tsx +21 -2
  373. package/src/components/ExportButton/ExportModal.uni.driver.ts +11 -10
  374. package/src/components/ExportButton/ExportStepProgress.tsx +1 -1
  375. package/src/components/Fade/Fade.st.css.ts +2 -2
  376. package/src/components/FiltersPanel/FiltersPanelAppliedFiltersSection.tsx +1 -0
  377. package/src/components/Heading/Heading.st.css.ts +2 -2
  378. package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
  379. package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
  380. package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
  381. package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
  382. package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
  383. package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
  384. package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
  385. package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
  386. package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
  387. package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
  388. package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
  389. package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
  390. package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
  391. package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
  392. package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
  393. package/src/components/Suggestions/MarketingCard.tsx +196 -0
  394. package/src/components/Suggestions/MarketingCard.uni.driver.ts +53 -0
  395. package/src/components/Suggestions/Suggestions.tsx +99 -63
  396. package/src/components/Suggestions/Suggestions.uni.driver.ts +89 -23
  397. package/src/components/Suggestions/index.ts +14 -1
  398. package/src/components/Suggestions/types.ts +41 -0
  399. package/src/components/TabTotal/TabTotalCounterBadge.tsx +4 -2
  400. package/src/components/TabsFilter/TabsDropdown.tsx +9 -2
  401. package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
  402. package/src/components/TabsFilter/TabsFilter.tsx +23 -4
  403. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
  404. package/src/components/ToolbarCollection/ToolbarCollection.tsx +3 -3
  405. package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
  406. package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
  407. package/src/components/ToolbarTitle/ToolbarTitle.tsx +10 -0
  408. package/src/components/common.st.css.ts +2 -2
  409. package/src/exports/testkit/unidriver.ts +5 -1
  410. package/src/hooks/useBulkActionMobileGroups.ts +2 -1
  411. package/src/hooks/useItemsSelectionFilter/useItemsSelectionFilter.ts +1 -1
  412. package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
  413. package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
  414. package/src/state/NestedTableState/NestedTableNodeStateOptimisticActions.ts +24 -0
  415. package/src/state/NestedTableState/NestedTableNodeStatePublicAPI.ts +1 -0
  416. package/src/state/NestedTableState/index.ts +1 -0
  417. package/src/state/ToolbarCollectionState.ts +3 -0
  418. package/src/styles.global.css +1 -1
  419. package/src/version.ts +1 -1
  420. package/src/wix-design-system-version.ts +1 -1
  421. package/dist/cjs/components/Suggestions/Suggestions.driver.js +0 -58
  422. package/dist/cjs/components/Suggestions/Suggestions.driver.js.map +0 -1
  423. package/dist/esm/components/Suggestions/Suggestions.driver.js +0 -32
  424. package/dist/esm/components/Suggestions/Suggestions.driver.js.map +0 -1
  425. package/dist/types/components/Suggestions/Suggestions.driver.d.ts +0 -40
  426. package/dist/types/components/Suggestions/Suggestions.driver.d.ts.map +0 -1
  427. package/src/components/Suggestions/Suggestions.driver.tsx +0 -47
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_designSystem","_jsxFileName","getCardWidth","totalOffers","MarketingCardInternal","schema","title","description","descriptionData","imageUrl","ctaButton","ctaButtonData","badge","badgeData","handleCtaClick","link","window","open","handleLearnMoreClick","_descriptionData$lear","learnMore","default","createElement","Fragment","Text","size","secondary","dataHook","__self","__source","fileName","lineNumber","columnNumber","text","TextButton","onClick","Button","skin","priority","Badge","uppercase","image","Image","src","width","height","borderRadius","Box","Card","stretchVertically","MarketingLayout","actions","hiddenBadge","renderMarketingCard","translateOffer","props","_props$offer","_schema$description","offer","asset","creative","requiredFieldsExist","exports","MarketingCardSkeleton","SkeletonLine","SkeletonRectangle"],"sources":["../../../../src/components/Suggestions/MarketingCard.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n MarketingLayout,\n SkeletonLine,\n Card,\n Button,\n BadgeSkin,\n ButtonSkin,\n Image,\n Text,\n TextButton,\n Badge,\n SkeletonRectangle,\n ButtonPriority,\n} from '@wix/design-system';\nimport { Offer } from '@wix/bex-utils/@wix/ambassador-dealer-v1-serving-offer/types';\nimport { BaseCardComponentProps, SuggestionsCardProps } from './types';\n\n/**\n * Schema for marketing card content.\n * This defines the structure expected in offer.asset.creative for MarketingCard rendering.\n */\nexport interface MarketingCardSchema {\n title: string;\n description: {\n text: string;\n learnMore?: {\n link: string;\n text?: string; // defaults to 'Learn more'\n };\n };\n imageUrl: string;\n ctaButton?: {\n text: string;\n link: string;\n skin?: Extract<ButtonSkin, 'standard' | 'premium' | 'ai'>; // defaults to 'standard'\n priority?: Extract<ButtonPriority, 'primary' | 'secondary'>; // defaults to 'secondary'\n };\n badge?: {\n text: string;\n skin?: Extract<BadgeSkin, 'general' | 'success' | 'premium'>; // defaults to 'general'\n };\n}\n\nconst getCardWidth = (totalOffers: number) => {\n if (totalOffers === 1) {\n return '100%';\n }\n if (totalOffers === 2) {\n return '50%';\n }\n return '550px';\n};\n\ninterface MarketingCardInternalProps {\n schema: MarketingCardSchema;\n totalOffers: number;\n}\n\nconst MarketingCardInternal: React.FC<MarketingCardInternalProps> = ({\n schema,\n totalOffers,\n}) => {\n const {\n title,\n description: descriptionData,\n imageUrl,\n ctaButton: ctaButtonData,\n badge: badgeData,\n } = schema;\n\n const handleCtaClick = () => {\n if (ctaButtonData?.link) {\n window.open(ctaButtonData.link, '_blank');\n }\n };\n\n const handleLearnMoreClick = () => {\n if (descriptionData?.learnMore?.link) {\n window.open(descriptionData.learnMore.link, '_blank');\n }\n };\n\n const description = (\n <>\n <Text size=\"small\" secondary dataHook=\"suggestions-card-subtitle\">\n {descriptionData.text}{' '}\n </Text>\n {descriptionData.learnMore && (\n <TextButton\n size=\"small\"\n secondary\n dataHook=\"suggestions-card-learn-more\"\n onClick={handleLearnMoreClick}\n >\n {descriptionData.learnMore.text ?? 'Learn more'}\n </TextButton>\n )}\n </>\n );\n\n const ctaButton = ctaButtonData ? (\n <Button\n size=\"small\"\n skin={ctaButtonData.skin || 'standard'}\n priority={ctaButtonData.priority || 'secondary'}\n dataHook=\"suggestions-card-button\"\n onClick={handleCtaClick}\n >\n {ctaButtonData.text}\n </Button>\n ) : null;\n\n const badge = badgeData ? (\n <Badge\n skin={badgeData.skin || 'general'}\n size=\"small\"\n dataHook=\"suggestion-card-badge\"\n uppercase={false}\n >\n {badgeData.text}\n </Badge>\n ) : null;\n\n const image = (\n <Image\n src={imageUrl}\n width={96}\n height={96}\n borderRadius=\"8px\"\n dataHook=\"suggestions-card-image\"\n />\n );\n\n return (\n <Box dataHook=\"suggestions-card\" width={getCardWidth(totalOffers)}>\n <Card stretchVertically>\n <MarketingLayout\n title={title}\n description={description}\n image={image}\n actions={[ctaButton]}\n badge={badge}\n hiddenBadge={!badge}\n />\n </Card>\n </Box>\n );\n};\n\n/**\n * Creates a render function for marketing cards.\n * @param translateOffer - Optional function to transform offer data into MarketingCardSchema.\n * If not provided, uses offer.asset.creative directly.\n * @returns A render function compatible with Suggestions.renderCard prop.\n */\nexport const renderMarketingCard =\n (translateOffer?: (offer: Offer) => MarketingCardSchema | null) =>\n (props: SuggestionsCardProps): React.ReactNode | null => {\n const schema = translateOffer\n ? translateOffer(props.offer)\n : (props.offer?.asset?.creative as MarketingCardSchema | null);\n\n const requiredFieldsExist =\n schema?.title && schema?.imageUrl && schema?.description?.text;\n\n if (!requiredFieldsExist) {\n return null;\n }\n return (\n <MarketingCardInternal schema={schema} totalOffers={props.totalOffers} />\n );\n };\n\n/**\n * Skeleton component for MarketingCard during loading state.\n */\nexport const MarketingCardSkeleton: React.FC<BaseCardComponentProps> = ({\n totalOffers,\n}) => {\n return (\n <Box dataHook=\"suggestions-card\" width={getCardWidth(totalOffers)}>\n <Card stretchVertically>\n <MarketingLayout\n title={<SkeletonLine width=\"120px\" />}\n description={<SkeletonLine width=\"168px\" />}\n actions={[<SkeletonRectangle width=\"72px\" height=\"30px\" />]}\n image={<SkeletonRectangle width=\"96px\" height=\"96px\" />}\n badge={<Badge />}\n hiddenBadge={true}\n />\n </Card>\n </Box>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.MarketingCardUniDriver = MarketingCardUniDriver;
5
+ var _unidriver = require("@wix/design-system/dist/testkit/unidriver");
6
+ var _unidriver2 = require("../../unidriver");
7
+ function MarketingCardUniDriver(base, body) {
8
+ const marketingLayout = (0, _unidriver.MarketingLayoutUniDriver)(base, body);
9
+ const subtitle = (0, _unidriver.TextUniDriver)(base.$('[data-hook="suggestions-card-subtitle"]'), body);
10
+ const learnMore = (0, _unidriver.TextButtonUniDriver)(base.$('[data-hook="suggestions-card-learn-more"]'), body);
11
+ const ctaButton = (0, _unidriver.ButtonUniDriver)(base.$('[data-hook="suggestions-card-button"]'), body);
12
+ const badge = (0, _unidriver.BadgeUniDriver)(base.$('[data-hook="suggestion-card-badge"]'), body);
13
+ const image = (0, _unidriver.ImageUniDriver)(base.$('[data-hook="suggestions-card-image"]'), body);
14
+ return {
15
+ ...(0, _unidriver2.baseUniDriverFactory)(base),
16
+ getTitleText: () => marketingLayout.getTitleText(),
17
+ description: {
18
+ subtitle,
19
+ learnMore
20
+ },
21
+ ctaButton,
22
+ badge,
23
+ image
24
+ };
25
+ }
26
+ //# sourceMappingURL=MarketingCard.uni.driver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_unidriver","require","_unidriver2","MarketingCardUniDriver","base","body","marketingLayout","MarketingLayoutUniDriver","subtitle","TextUniDriver","$","learnMore","TextButtonUniDriver","ctaButton","ButtonUniDriver","badge","BadgeUniDriver","image","ImageUniDriver","baseUniDriverFactory","getTitleText","description"],"sources":["../../../../src/components/Suggestions/MarketingCard.uni.driver.ts"],"sourcesContent":["import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';\nimport {\n MarketingLayoutUniDriver,\n BadgeUniDriver,\n ButtonUniDriver,\n TextButtonUniDriver,\n TextUniDriver,\n ImageUniDriver,\n} from '@wix/design-system/dist/testkit/unidriver';\nimport { baseUniDriverFactory } from '../../unidriver';\n\nexport function MarketingCardUniDriver(base: UniDriver, body: UniDriver) {\n const marketingLayout = MarketingLayoutUniDriver(base, body);\n\n const subtitle = TextUniDriver(\n base.$('[data-hook=\"suggestions-card-subtitle\"]'),\n body,\n );\n const learnMore = TextButtonUniDriver(\n base.$('[data-hook=\"suggestions-card-learn-more\"]'),\n body,\n );\n\n const ctaButton = ButtonUniDriver(\n base.$('[data-hook=\"suggestions-card-button\"]'),\n body,\n );\n const badge = BadgeUniDriver(\n base.$('[data-hook=\"suggestion-card-badge\"]'),\n body,\n );\n const image = ImageUniDriver(\n base.$('[data-hook=\"suggestions-card-image\"]'),\n body,\n );\n\n return {\n ...baseUniDriverFactory(base),\n\n getTitleText: () => marketingLayout.getTitleText(),\n description: {\n subtitle,\n learnMore,\n },\n ctaButton,\n badge,\n image,\n };\n}\n\nexport type MarketingCardUniDriverType = ReturnType<\n typeof MarketingCardUniDriver\n>;\n"],"mappings":";;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAQA,IAAAC,WAAA,GAAAD,OAAA;AAEO,SAASE,sBAAsBA,CAACC,IAAe,EAAEC,IAAe,EAAE;EACvE,MAAMC,eAAe,GAAG,IAAAC,mCAAwB,EAACH,IAAI,EAAEC,IAAI,CAAC;EAE5D,MAAMG,QAAQ,GAAG,IAAAC,wBAAa,EAC5BL,IAAI,CAACM,CAAC,CAAC,yCAAyC,CAAC,EACjDL,IACF,CAAC;EACD,MAAMM,SAAS,GAAG,IAAAC,8BAAmB,EACnCR,IAAI,CAACM,CAAC,CAAC,2CAA2C,CAAC,EACnDL,IACF,CAAC;EAED,MAAMQ,SAAS,GAAG,IAAAC,0BAAe,EAC/BV,IAAI,CAACM,CAAC,CAAC,uCAAuC,CAAC,EAC/CL,IACF,CAAC;EACD,MAAMU,KAAK,GAAG,IAAAC,yBAAc,EAC1BZ,IAAI,CAACM,CAAC,CAAC,qCAAqC,CAAC,EAC7CL,IACF,CAAC;EACD,MAAMY,KAAK,GAAG,IAAAC,yBAAc,EAC1Bd,IAAI,CAACM,CAAC,CAAC,sCAAsC,CAAC,EAC9CL,IACF,CAAC;EAED,OAAO;IACL,GAAG,IAAAc,gCAAoB,EAACf,IAAI,CAAC;IAE7BgB,YAAY,EAAEA,CAAA,KAAMd,eAAe,CAACc,YAAY,CAAC,CAAC;IAClDC,WAAW,EAAE;MACXb,QAAQ;MACRG;IACF,CAAC;IACDE,SAAS;IACTE,KAAK;IACLE;EACF,CAAC;AACH","ignoreList":[]}
@@ -9,6 +9,7 @@ var _designSystem = require("@wix/design-system");
9
9
  var _SuggestionsState = require("../../state/Suggestions/SuggestionsState");
10
10
  var _mobxReactLite = require("mobx-react-lite");
11
11
  var _react2 = require("@wix/bex-core/react");
12
+ var _MarketingCard = require("./MarketingCard");
12
13
  var _jsxFileName = "/home/builduser/work/843658b9f44192f0/packages/cairo/dist/cjs/components/Suggestions/Suggestions.tsx";
13
14
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
15
  const defaultCarouselProps = {
@@ -20,13 +21,60 @@ const defaultCarouselProps = {
20
21
  sidesGradientColor: _designSystem.COLOR_TOKENS['--wsr-color-D70'],
21
22
  controlsStartEnd: 'hidden'
22
23
  };
24
+ const SuggestionsContainer = ({
25
+ count,
26
+ children,
27
+ carouselProps,
28
+ dataHook,
29
+ dataState
30
+ }) => {
31
+ if (count <= 2) {
32
+ return /*#__PURE__*/_react.default.createElement("div", {
33
+ "data-hook": dataHook,
34
+ __self: void 0,
35
+ __source: {
36
+ fileName: _jsxFileName,
37
+ lineNumber: 41,
38
+ columnNumber: 7
39
+ }
40
+ }, /*#__PURE__*/_react.default.createElement(_designSystem.Box, {
41
+ direction: "horizontal",
42
+ gap: "SP4",
43
+ dataHook: `${dataHook}-container-${dataState}`,
44
+ __self: void 0,
45
+ __source: {
46
+ fileName: _jsxFileName,
47
+ lineNumber: 42,
48
+ columnNumber: 9
49
+ }
50
+ }, children));
51
+ }
52
+ return /*#__PURE__*/_react.default.createElement("div", {
53
+ "data-hook": dataHook,
54
+ __self: void 0,
55
+ __source: {
56
+ fileName: _jsxFileName,
57
+ lineNumber: 54,
58
+ columnNumber: 5
59
+ }
60
+ }, /*#__PURE__*/_react.default.createElement(_designSystem.CarouselWIP, (0, _extends2.default)({
61
+ dataHook: `${dataHook}-carousel-${dataState}`
62
+ }, defaultCarouselProps, carouselProps, {
63
+ __self: void 0,
64
+ __source: {
65
+ fileName: _jsxFileName,
66
+ lineNumber: 55,
67
+ columnNumber: 7
68
+ }
69
+ }), children));
70
+ };
23
71
  const Suggestions = exports.Suggestions = (0, _mobxReactLite.observer)(({
24
72
  placementId,
25
- CardComponent,
26
- CardSkeleton,
73
+ renderCard,
74
+ CardSkeleton = _MarketingCard.MarketingCardSkeleton,
27
75
  carouselProps,
28
76
  skeletonsNumber = 4,
29
- dataHook
77
+ dataHook = 'suggestions'
30
78
  }) => {
31
79
  const {
32
80
  httpClient
@@ -39,71 +87,77 @@ const Suggestions = exports.Suggestions = (0, _mobxReactLite.observer)(({
39
87
  return state.init();
40
88
  }, [state]);
41
89
  if (state.hasOffers) {
42
- return /*#__PURE__*/_react.default.createElement("div", {
43
- "data-hook": dataHook,
90
+ const cardCount = state.offers.length;
91
+ const cards = state.offers.map((offer, index) => ({
92
+ key: offer.offerGuid || `suggestion-${index}`,
93
+ element: renderCard({
94
+ offer,
95
+ index,
96
+ totalOffers: state.offers.length
97
+ })
98
+ })).filter(({
99
+ element
100
+ }) => element !== null);
101
+
102
+ // Return null if all cards filtered out
103
+ if (cards.length === 0) {
104
+ return null;
105
+ }
106
+ return /*#__PURE__*/_react.default.createElement(SuggestionsContainer
107
+ // use initial cards count for container, to match the count the cards get rendered with
108
+ , {
109
+ count: cardCount,
110
+ carouselProps: carouselProps,
111
+ dataHook: dataHook,
112
+ dataState: "idle",
44
113
  __self: void 0,
45
114
  __source: {
46
115
  fileName: _jsxFileName,
47
- lineNumber: 63,
116
+ lineNumber: 104,
48
117
  columnNumber: 9
49
118
  }
50
- }, /*#__PURE__*/_react.default.createElement(_designSystem.CarouselWIP, (0, _extends2.default)({
51
- key: "suggestions-carousel",
52
- dataHook: "suggestions-carousel"
53
- }, defaultCarouselProps, carouselProps, {
54
- __self: void 0,
55
- __source: {
56
- fileName: _jsxFileName,
57
- lineNumber: 64,
58
- columnNumber: 11
59
- }
60
- }), state.offers.map((offer, index) => /*#__PURE__*/_react.default.createElement(CardComponent, {
61
- offer: offer,
62
- index: index,
63
- totalCards: state.offers.length,
64
- key: offer.offerGuid || `suggestion-${index}`,
119
+ }, cards.map(({
120
+ key,
121
+ element
122
+ }) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
123
+ key: key,
65
124
  __self: void 0,
66
125
  __source: {
67
126
  fileName: _jsxFileName,
68
- lineNumber: 71,
69
- columnNumber: 15
127
+ lineNumber: 112,
128
+ columnNumber: 13
70
129
  }
71
- }))));
130
+ }, element)));
72
131
  }
73
132
  if (state.isFetching) {
74
- return /*#__PURE__*/_react.default.createElement("div", {
75
- "data-hook": dataHook,
76
- __self: void 0,
77
- __source: {
78
- fileName: _jsxFileName,
79
- lineNumber: 85,
80
- columnNumber: 9
81
- }
82
- }, /*#__PURE__*/_react.default.createElement(_designSystem.CarouselWIP, (0, _extends2.default)({
83
- key: "suggestions-carousel-skeleton",
84
- dataHook: "suggestions-carousel-skeleton"
85
- }, defaultCarouselProps, {
86
- controlsPosition: "none"
87
- }, carouselProps, {
133
+ const skeletons = Array.from({
134
+ length: skeletonsNumber
135
+ }).map((_, index) => /*#__PURE__*/_react.default.createElement(CardSkeleton, {
136
+ index: index,
137
+ totalOffers: skeletonsNumber,
138
+ key: index,
88
139
  __self: void 0,
89
140
  __source: {
90
141
  fileName: _jsxFileName,
91
- lineNumber: 86,
142
+ lineNumber: 121,
92
143
  columnNumber: 11
93
144
  }
94
- }), Array.from({
95
- length: skeletonsNumber
96
- }).map((_, index) => /*#__PURE__*/_react.default.createElement(CardSkeleton, {
97
- index: index,
98
- totalCards: skeletonsNumber,
99
- key: index,
145
+ }));
146
+ return /*#__PURE__*/_react.default.createElement(SuggestionsContainer, {
147
+ count: skeletonsNumber,
148
+ carouselProps: {
149
+ ...carouselProps,
150
+ controlsPosition: 'none'
151
+ },
152
+ dataHook: dataHook,
153
+ dataState: "loading",
100
154
  __self: void 0,
101
155
  __source: {
102
156
  fileName: _jsxFileName,
103
- lineNumber: 94,
104
- columnNumber: 15
157
+ lineNumber: 130,
158
+ columnNumber: 9
105
159
  }
106
- }))));
160
+ }, skeletons);
107
161
  }
108
162
  return null;
109
163
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_SuggestionsState","_mobxReactLite","_react2","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","defaultCarouselProps","hideDots","infinite","variableWidth","controlsPosition","showControlsShadow","sidesGradientColor","COLOR_TOKENS","controlsStartEnd","Suggestions","exports","observer","placementId","CardComponent","CardSkeleton","carouselProps","skeletonsNumber","dataHook","httpClient","useWixPatternsContainer","state","useState","SuggestionsState","useEffect","init","hasOffers","createElement","__self","__source","fileName","lineNumber","columnNumber","CarouselWIP","_extends2","key","offers","map","offer","index","totalCards","length","offerGuid","isFetching","Array","from","_"],"sources":["../../../../src/components/Suggestions/Suggestions.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { CarouselWIP, CarouselWIPProps, COLOR_TOKENS } from '@wix/design-system';\nimport { SuggestionsState } from '../../state/Suggestions/SuggestionsState';\nimport { observer } from 'mobx-react-lite';\nimport { Offer } from '@wix/bex-utils/@wix/ambassador-dealer-v1-serving-offer/types';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\n\nexport interface BaseCardComponentProps {\n index: number;\n totalCards: number;\n}\n\nexport interface SuggestionsCardComponentProps extends BaseCardComponentProps {\n offer: Offer;\n}\n\nexport interface SuggestionsProps {\n /** The placement ID to fetch offers for */\n placementId: string;\n /** Props to pass to the carousel component */\n carouselProps?: CarouselWIPProps;\n /** Card component to render each offer */\n CardComponent: React.ComponentType<SuggestionsCardComponentProps>;\n /** Skeleton component to render when loading */\n CardSkeleton: React.ComponentType<BaseCardComponentProps>;\n /** Number of skeletons to render when loading */\n skeletonsNumber?: number;\n /** Data hook to use for the suggestions component */\n dataHook?: string;\n}\n\nconst defaultCarouselProps: CarouselWIPProps = {\n hideDots: true,\n infinite: false,\n variableWidth: false,\n controlsPosition: 'overlay',\n showControlsShadow: true,\n sidesGradientColor: COLOR_TOKENS['--wsr-color-D70'],\n controlsStartEnd: 'hidden',\n};\n\nexport const Suggestions: React.FC<SuggestionsProps> = observer(\n ({\n placementId,\n CardComponent,\n CardSkeleton,\n carouselProps,\n skeletonsNumber = 4,\n dataHook,\n }) => {\n const { httpClient } = useWixPatternsContainer();\n\n const [state] = useState(\n () => new SuggestionsState({ placementId, httpClient }),\n );\n\n useEffect(() => {\n return state.init();\n }, [state]);\n\n if (state.hasOffers) {\n return (\n <div data-hook={dataHook}>\n <CarouselWIP\n key=\"suggestions-carousel\"\n dataHook=\"suggestions-carousel\"\n {...defaultCarouselProps}\n {...carouselProps}\n >\n {state.offers.map((offer, index: number) => (\n <CardComponent\n offer={offer}\n index={index}\n totalCards={state.offers.length}\n key={offer.offerGuid || `suggestion-${index}`}\n />\n ))}\n </CarouselWIP>\n </div>\n );\n }\n\n if (state.isFetching) {\n return (\n <div data-hook={dataHook}>\n <CarouselWIP\n key=\"suggestions-carousel-skeleton\"\n dataHook=\"suggestions-carousel-skeleton\"\n {...defaultCarouselProps}\n controlsPosition=\"none\"\n {...carouselProps}\n >\n {Array.from({ length: skeletonsNumber }).map((_, index) => (\n <CardSkeleton\n index={index}\n totalCards={skeletonsNumber}\n key={index}\n />\n ))}\n </CarouselWIP>\n </div>\n );\n }\n\n return null;\n },\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_SuggestionsState","_mobxReactLite","_react2","_MarketingCard","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","defaultCarouselProps","hideDots","infinite","variableWidth","controlsPosition","showControlsShadow","sidesGradientColor","COLOR_TOKENS","controlsStartEnd","SuggestionsContainer","count","children","carouselProps","dataHook","dataState","createElement","__self","__source","fileName","lineNumber","columnNumber","Box","direction","gap","CarouselWIP","_extends2","Suggestions","exports","observer","placementId","renderCard","CardSkeleton","MarketingCardSkeleton","skeletonsNumber","httpClient","useWixPatternsContainer","state","useState","SuggestionsState","useEffect","init","hasOffers","cardCount","offers","length","cards","map","offer","index","key","offerGuid","element","totalOffers","filter","Fragment","isFetching","skeletons","Array","from","_"],"sources":["../../../../src/components/Suggestions/Suggestions.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n CarouselWIP,\n CarouselWIPProps,\n COLOR_TOKENS,\n Box,\n} from '@wix/design-system';\nimport { SuggestionsState } from '../../state/Suggestions/SuggestionsState';\nimport { observer } from 'mobx-react-lite';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\nimport { MarketingCardSkeleton } from './MarketingCard';\nimport { SuggestionsProps } from './types';\n\nconst defaultCarouselProps: CarouselWIPProps = {\n hideDots: true,\n infinite: false,\n variableWidth: false,\n controlsPosition: 'overlay',\n showControlsShadow: true,\n sidesGradientColor: COLOR_TOKENS['--wsr-color-D70'],\n controlsStartEnd: 'hidden',\n};\n\ninterface SuggestionsContainerProps {\n count: number;\n children: React.ReactNode;\n carouselProps?: CarouselWIPProps;\n dataHook: string;\n dataState: 'idle' | 'loading';\n}\n\nconst SuggestionsContainer: React.FC<SuggestionsContainerProps> = ({\n count,\n children,\n carouselProps,\n dataHook,\n dataState,\n}) => {\n if (count <= 2) {\n return (\n <div data-hook={dataHook}>\n <Box\n direction=\"horizontal\"\n gap=\"SP4\"\n dataHook={`${dataHook}-container-${dataState}`}\n >\n {children}\n </Box>\n </div>\n );\n }\n\n return (\n <div data-hook={dataHook}>\n <CarouselWIP\n dataHook={`${dataHook}-carousel-${dataState}`}\n {...defaultCarouselProps}\n {...carouselProps}\n >\n {children}\n </CarouselWIP>\n </div>\n );\n};\n\nexport const Suggestions: React.FC<SuggestionsProps> = observer(\n ({\n placementId,\n renderCard,\n CardSkeleton = MarketingCardSkeleton,\n carouselProps,\n skeletonsNumber = 4,\n dataHook = 'suggestions',\n }) => {\n const { httpClient } = useWixPatternsContainer();\n\n const [state] = useState(\n () => new SuggestionsState({ placementId, httpClient }),\n );\n\n useEffect(() => {\n return state.init();\n }, [state]);\n\n if (state.hasOffers) {\n const cardCount = state.offers.length;\n const cards = state.offers\n .map((offer, index) => ({\n key: offer.offerGuid || `suggestion-${index}`,\n element: renderCard({\n offer,\n index,\n totalOffers: state.offers.length,\n }),\n }))\n .filter(({ element }) => element !== null);\n\n // Return null if all cards filtered out\n if (cards.length === 0) {\n return null;\n }\n\n return (\n <SuggestionsContainer\n // use initial cards count for container, to match the count the cards get rendered with\n count={cardCount}\n carouselProps={carouselProps}\n dataHook={dataHook}\n dataState=\"idle\"\n >\n {cards.map(({ key, element }) => (\n <React.Fragment key={key}>{element}</React.Fragment>\n ))}\n </SuggestionsContainer>\n );\n }\n\n if (state.isFetching) {\n const skeletons = Array.from({ length: skeletonsNumber }).map(\n (_, index) => (\n <CardSkeleton\n index={index}\n totalOffers={skeletonsNumber}\n key={index}\n />\n ),\n );\n\n return (\n <SuggestionsContainer\n count={skeletonsNumber}\n carouselProps={{ ...carouselProps, controlsPosition: 'none' }}\n dataHook={dataHook}\n dataState=\"loading\"\n >\n {skeletons}\n </SuggestionsContainer>\n );\n }\n\n return null;\n },\n);\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAMA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,cAAA,GAAAL,OAAA;AAAwD,IAAAM,YAAA;AAAA,SAAAP,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGxD,MAAMkB,oBAAsC,GAAG;EAC7CC,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,KAAK;EACfC,aAAa,EAAE,KAAK;EACpBC,gBAAgB,EAAE,SAAS;EAC3BC,kBAAkB,EAAE,IAAI;EACxBC,kBAAkB,EAAEC,0BAAY,CAAC,iBAAiB,CAAC;EACnDC,gBAAgB,EAAE;AACpB,CAAC;AAUD,MAAMC,oBAAyD,GAAGA,CAAC;EACjEC,KAAK;EACLC,QAAQ;EACRC,aAAa;EACbC,QAAQ;EACRC;AACF,CAAC,KAAK;EACJ,IAAIJ,KAAK,IAAI,CAAC,EAAE;IACd,oBACEtC,MAAA,CAAAmB,OAAA,CAAAwB,aAAA;MAAK,aAAWF,QAAS;MAAAG,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAtC,YAAA;QAAAuC,UAAA;QAAAC,YAAA;MAAA;IAAA,gBACvBhD,MAAA,CAAAmB,OAAA,CAAAwB,aAAA,CAACxC,aAAA,CAAA8C,GAAG;MACFC,SAAS,EAAC,YAAY;MACtBC,GAAG,EAAC,KAAK;MACTV,QAAQ,EAAE,GAAGA,QAAQ,cAAcC,SAAS,EAAG;MAAAE,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAtC,YAAA;QAAAuC,UAAA;QAAAC,YAAA;MAAA;IAAA,GAE9CT,QACE,CACF,CAAC;EAEV;EAEA,oBACEvC,MAAA,CAAAmB,OAAA,CAAAwB,aAAA;IAAK,aAAWF,QAAS;IAAAG,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAtC,YAAA;MAAAuC,UAAA;MAAAC,YAAA;IAAA;EAAA,gBACvBhD,MAAA,CAAAmB,OAAA,CAAAwB,aAAA,CAACxC,aAAA,CAAAiD,WAAW,MAAAC,SAAA,CAAAlC,OAAA;IACVsB,QAAQ,EAAE,GAAGA,QAAQ,aAAaC,SAAS;EAAG,GAC1Cd,oBAAoB,EACpBY,aAAa;IAAAI,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAtC,YAAA;MAAAuC,UAAA;MAAAC,YAAA;IAAA;EAAA,IAEhBT,QACU,CACV,CAAC;AAEV,CAAC;AAEM,MAAMe,WAAuC,GAAAC,OAAA,CAAAD,WAAA,GAAG,IAAAE,uBAAQ,EAC7D,CAAC;EACCC,WAAW;EACXC,UAAU;EACVC,YAAY,GAAGC,oCAAqB;EACpCpB,aAAa;EACbqB,eAAe,GAAG,CAAC;EACnBpB,QAAQ,GAAG;AACb,CAAC,KAAK;EACJ,MAAM;IAAEqB;EAAW,CAAC,GAAG,IAAAC,+BAAuB,EAAC,CAAC;EAEhD,MAAM,CAACC,KAAK,CAAC,GAAG,IAAAC,eAAQ,EACtB,MAAM,IAAIC,kCAAgB,CAAC;IAAET,WAAW;IAAEK;EAAW,CAAC,CACxD,CAAC;EAED,IAAAK,gBAAS,EAAC,MAAM;IACd,OAAOH,KAAK,CAACI,IAAI,CAAC,CAAC;EACrB,CAAC,EAAE,CAACJ,KAAK,CAAC,CAAC;EAEX,IAAIA,KAAK,CAACK,SAAS,EAAE;IACnB,MAAMC,SAAS,GAAGN,KAAK,CAACO,MAAM,CAACC,MAAM;IACrC,MAAMC,KAAK,GAAGT,KAAK,CAACO,MAAM,CACvBG,GAAG,CAAC,CAACC,KAAK,EAAEC,KAAK,MAAM;MACtBC,GAAG,EAAEF,KAAK,CAACG,SAAS,IAAI,cAAcF,KAAK,EAAE;MAC7CG,OAAO,EAAErB,UAAU,CAAC;QAClBiB,KAAK;QACLC,KAAK;QACLI,WAAW,EAAEhB,KAAK,CAACO,MAAM,CAACC;MAC5B,CAAC;IACH,CAAC,CAAC,CAAC,CACFS,MAAM,CAAC,CAAC;MAAEF;IAAQ,CAAC,KAAKA,OAAO,KAAK,IAAI,CAAC;;IAE5C;IACA,IAAIN,KAAK,CAACD,MAAM,KAAK,CAAC,EAAE;MACtB,OAAO,IAAI;IACb;IAEA,oBACExE,MAAA,CAAAmB,OAAA,CAAAwB,aAAA,CAACN;IACC;IAAA;MACAC,KAAK,EAAEgC,SAAU;MACjB9B,aAAa,EAAEA,aAAc;MAC7BC,QAAQ,EAAEA,QAAS;MACnBC,SAAS,EAAC,MAAM;MAAAE,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAtC,YAAA;QAAAuC,UAAA;QAAAC,YAAA;MAAA;IAAA,GAEfyB,KAAK,CAACC,GAAG,CAAC,CAAC;MAAEG,GAAG;MAAEE;IAAQ,CAAC,kBAC1B/E,MAAA,CAAAmB,OAAA,CAAAwB,aAAA,CAAC3C,MAAA,CAAAmB,OAAK,CAAC+D,QAAQ;MAACL,GAAG,EAAEA,GAAI;MAAAjC,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAtC,YAAA;QAAAuC,UAAA;QAAAC,YAAA;MAAA;IAAA,GAAE+B,OAAwB,CACpD,CACmB,CAAC;EAE3B;EAEA,IAAIf,KAAK,CAACmB,UAAU,EAAE;IACpB,MAAMC,SAAS,GAAGC,KAAK,CAACC,IAAI,CAAC;MAAEd,MAAM,EAAEX;IAAgB,CAAC,CAAC,CAACa,GAAG,CAC3D,CAACa,CAAC,EAAEX,KAAK,kBACP5E,MAAA,CAAAmB,OAAA,CAAAwB,aAAA,CAACgB,YAAY;MACXiB,KAAK,EAAEA,KAAM;MACbI,WAAW,EAAEnB,eAAgB;MAC7BgB,GAAG,EAAED,KAAM;MAAAhC,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAtC,YAAA;QAAAuC,UAAA;QAAAC,YAAA;MAAA;IAAA,CACZ,CAEL,CAAC;IAED,oBACEhD,MAAA,CAAAmB,OAAA,CAAAwB,aAAA,CAACN,oBAAoB;MACnBC,KAAK,EAAEuB,eAAgB;MACvBrB,aAAa,EAAE;QAAE,GAAGA,aAAa;QAAER,gBAAgB,EAAE;MAAO,CAAE;MAC9DS,QAAQ,EAAEA,QAAS;MACnBC,SAAS,EAAC,SAAS;MAAAE,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAtC,YAAA;QAAAuC,UAAA;QAAAC,YAAA;MAAA;IAAA,GAElBoC,SACmB,CAAC;EAE3B;EAEA,OAAO,IAAI;AACb,CACF,CAAC","ignoreList":[]}
@@ -4,25 +4,75 @@ exports.__esModule = true;
4
4
  exports.SuggestionsUniDriver = void 0;
5
5
  var _unidriver = require("@wix/design-system/dist/testkit/unidriver");
6
6
  var _unidriver2 = require("@wix/wix-ui-test-utils/unidriver");
7
- const SuggestionsUniDriver = (base, body) => {
8
- const carousel = (0, _unidriver.CarouselWIPUniDriver)(base.$('[data-hook="suggestions-carousel"]'), body);
9
- const carouselSkeleton = (0, _unidriver.CarouselWIPUniDriver)(base.$('[data-hook="suggestions-carousel-skeleton"]'), body);
7
+ const SuggestionsUniDriver = (base, body, options = {}) => {
8
+ const dataHook = options.dataHook ?? 'suggestions';
9
+ const cardDataHook = options.cardDataHook ?? 'suggestions-card';
10
+ const carouselIdle = (0, _unidriver.CarouselWIPUniDriver)(base.$(`[data-hook="${dataHook}-carousel-idle"]`), body);
11
+ const carouselLoading = (0, _unidriver.CarouselWIPUniDriver)(base.$(`[data-hook="${dataHook}-carousel-loading"]`), body);
12
+ const containerIdle = base.$(`[data-hook="${dataHook}-container-idle"]`);
13
+ const containerLoading = base.$(`[data-hook="${dataHook}-container-loading"]`);
14
+ const getCarouselChildren = async () => {
15
+ if (await carouselIdle.exists()) {
16
+ // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList
17
+ return carouselIdle.getChildren();
18
+ }
19
+ if (await carouselLoading.exists()) {
20
+ // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList
21
+ return carouselLoading.getChildren();
22
+ }
23
+ return null;
24
+ };
25
+ const getContainerChildren = async () => {
26
+ if (await containerIdle.exists()) {
27
+ return containerIdle.$$(`[data-hook="${cardDataHook}"]`);
28
+ }
29
+ if (await containerLoading.exists()) {
30
+ return containerLoading.$$(`[data-hook="${cardDataHook}"]`);
31
+ }
32
+ return null;
33
+ };
34
+ const isLoadingState = async () => {
35
+ const isContainerLoading = await containerLoading.exists();
36
+ const isCarouselLoading = await carouselLoading.exists();
37
+ return isContainerLoading || isCarouselLoading;
38
+ };
10
39
  return {
11
40
  ...(0, _unidriver2.baseUniDriverFactory)(base),
12
- isLoading: () => carouselSkeleton.exists(),
13
- hasOffers: () => carousel.exists(),
14
- isEmpty: async () => !(await carousel.exists()) && !(await carouselSkeleton.exists()),
15
- getCardsCounts: async () =>
16
- // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList
17
- (await carousel.exists()) ? (await carousel.getChildren()).length : 0,
18
- getSkeletonCardsCount: async () => (await carouselSkeleton.exists()) ?
19
- // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList
20
- (await carouselSkeleton.getChildren()).length : 0,
21
- // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList
22
- getCardAt: async index => (await carousel.getChildren())[index],
23
- getSkeletonCardAt: index => carouselSkeleton.getChildren().at(index),
24
- carousel: () => carousel,
25
- carouselSkeleton: () => carouselSkeleton
41
+ isLoading: isLoadingState,
42
+ hasOffers: async () => {
43
+ const carouselExists = await carouselIdle.exists();
44
+ const containerExists = await containerIdle.exists();
45
+ return carouselExists || containerExists;
46
+ },
47
+ isEmpty: async () => {
48
+ const carouselExists = await carouselIdle.exists();
49
+ const containerExists = await containerIdle.exists();
50
+ return !carouselExists && !containerExists;
51
+ },
52
+ getCardsCounts: async () => {
53
+ const carouselChildren = await getCarouselChildren();
54
+ if (carouselChildren) {
55
+ return carouselChildren.length;
56
+ }
57
+ const containerChildren = await getContainerChildren();
58
+ if (containerChildren) {
59
+ return containerChildren.count();
60
+ }
61
+ return 0;
62
+ },
63
+ getCardAt: async index => {
64
+ const carouselChildren = await getCarouselChildren();
65
+ if (carouselChildren) {
66
+ return carouselChildren[index];
67
+ }
68
+ const containerChildren = await getContainerChildren();
69
+ if (containerChildren) {
70
+ return containerChildren.at(index);
71
+ }
72
+ throw new Error(`No cards found at index ${index}`);
73
+ },
74
+ carousel: async () => (await carouselIdle.exists()) ? carouselIdle : carouselLoading,
75
+ container: async () => (await containerIdle.exists()) ? containerIdle : containerLoading
26
76
  };
27
77
  };
28
78
  exports.SuggestionsUniDriver = SuggestionsUniDriver;
@@ -1 +1 @@
1
- {"version":3,"names":["_unidriver","require","_unidriver2","SuggestionsUniDriver","base","body","carousel","CarouselWIPUniDriver","$","carouselSkeleton","baseUniDriverFactory","isLoading","exists","hasOffers","isEmpty","getCardsCounts","getChildren","length","getSkeletonCardsCount","getCardAt","index","getSkeletonCardAt","at","exports"],"sources":["../../../../src/components/Suggestions/Suggestions.uni.driver.ts"],"sourcesContent":["import { CarouselWIPUniDriver } from '@wix/design-system/dist/testkit/unidriver';\nimport {\n baseUniDriverFactory,\n UniDriver,\n} from '@wix/wix-ui-test-utils/unidriver';\n\nexport const SuggestionsUniDriver = (base: UniDriver, body: UniDriver) => {\n const carousel = CarouselWIPUniDriver(\n base.$('[data-hook=\"suggestions-carousel\"]'),\n body,\n );\n const carouselSkeleton = CarouselWIPUniDriver(\n base.$('[data-hook=\"suggestions-carousel-skeleton\"]'),\n body,\n );\n\n return {\n ...baseUniDriverFactory(base),\n isLoading: () => carouselSkeleton.exists(),\n hasOffers: () => carousel.exists(),\n isEmpty: async () =>\n !(await carousel.exists()) && !(await carouselSkeleton.exists()),\n getCardsCounts: async () =>\n // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList\n (await carousel.exists()) ? (await carousel.getChildren()).length : 0,\n getSkeletonCardsCount: async () =>\n (await carouselSkeleton.exists())\n ? // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList\n (await carouselSkeleton.getChildren()).length\n : 0,\n // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList\n getCardAt: async (index: number) => (await carousel.getChildren())[index],\n getSkeletonCardAt: (index: number) =>\n carouselSkeleton.getChildren().at(index),\n carousel: () => carousel,\n carouselSkeleton: () => carouselSkeleton,\n };\n};\n"],"mappings":";;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAKO,MAAME,oBAAoB,GAAGA,CAACC,IAAe,EAAEC,IAAe,KAAK;EACxE,MAAMC,QAAQ,GAAG,IAAAC,+BAAoB,EACnCH,IAAI,CAACI,CAAC,CAAC,oCAAoC,CAAC,EAC5CH,IACF,CAAC;EACD,MAAMI,gBAAgB,GAAG,IAAAF,+BAAoB,EAC3CH,IAAI,CAACI,CAAC,CAAC,6CAA6C,CAAC,EACrDH,IACF,CAAC;EAED,OAAO;IACL,GAAG,IAAAK,gCAAoB,EAACN,IAAI,CAAC;IAC7BO,SAAS,EAAEA,CAAA,KAAMF,gBAAgB,CAACG,MAAM,CAAC,CAAC;IAC1CC,SAAS,EAAEA,CAAA,KAAMP,QAAQ,CAACM,MAAM,CAAC,CAAC;IAClCE,OAAO,EAAE,MAAAA,CAAA,KACP,EAAE,MAAMR,QAAQ,CAACM,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,MAAMH,gBAAgB,CAACG,MAAM,CAAC,CAAC,CAAC;IAClEG,cAAc,EAAE,MAAAA,CAAA;IACd;IACA,CAAC,MAAMT,QAAQ,CAACM,MAAM,CAAC,CAAC,IAAI,CAAC,MAAMN,QAAQ,CAACU,WAAW,CAAC,CAAC,EAAEC,MAAM,GAAG,CAAC;IACvEC,qBAAqB,EAAE,MAAAA,CAAA,KACrB,CAAC,MAAMT,gBAAgB,CAACG,MAAM,CAAC,CAAC;IAC5B;IACA,CAAC,MAAMH,gBAAgB,CAACO,WAAW,CAAC,CAAC,EAAEC,MAAM,GAC7C,CAAC;IACP;IACAE,SAAS,EAAE,MAAOC,KAAa,IAAK,CAAC,MAAMd,QAAQ,CAACU,WAAW,CAAC,CAAC,EAAEI,KAAK,CAAC;IACzEC,iBAAiB,EAAGD,KAAa,IAC/BX,gBAAgB,CAACO,WAAW,CAAC,CAAC,CAACM,EAAE,CAACF,KAAK,CAAC;IAC1Cd,QAAQ,EAAEA,CAAA,KAAMA,QAAQ;IACxBG,gBAAgB,EAAEA,CAAA,KAAMA;EAC1B,CAAC;AACH,CAAC;AAACc,OAAA,CAAApB,oBAAA,GAAAA,oBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_unidriver","require","_unidriver2","SuggestionsUniDriver","base","body","options","dataHook","cardDataHook","carouselIdle","CarouselWIPUniDriver","$","carouselLoading","containerIdle","containerLoading","getCarouselChildren","exists","getChildren","getContainerChildren","$$","isLoadingState","isContainerLoading","isCarouselLoading","baseUniDriverFactory","isLoading","hasOffers","carouselExists","containerExists","isEmpty","getCardsCounts","carouselChildren","length","containerChildren","count","getCardAt","index","at","Error","carousel","container","exports"],"sources":["../../../../src/components/Suggestions/Suggestions.uni.driver.ts"],"sourcesContent":["import { CarouselWIPUniDriver } from '@wix/design-system/dist/testkit/unidriver';\nimport {\n baseUniDriverFactory,\n UniDriver,\n} from '@wix/wix-ui-test-utils/unidriver';\n\nexport interface SuggestionsUniDriverOptions {\n /** Data hook for the Suggestions component (default: 'suggestions') */\n dataHook?: string;\n /** Data hook for individual cards (default: 'suggestions-card' for MarketingCard) */\n cardDataHook?: string;\n}\n\nexport const SuggestionsUniDriver = (\n base: UniDriver,\n body: UniDriver,\n options: SuggestionsUniDriverOptions = {},\n) => {\n const dataHook = options.dataHook ?? 'suggestions';\n const cardDataHook = options.cardDataHook ?? 'suggestions-card';\n\n const carouselIdle = CarouselWIPUniDriver(\n base.$(`[data-hook=\"${dataHook}-carousel-idle\"]`),\n body,\n );\n const carouselLoading = CarouselWIPUniDriver(\n base.$(`[data-hook=\"${dataHook}-carousel-loading\"]`),\n body,\n );\n\n const containerIdle = base.$(`[data-hook=\"${dataHook}-container-idle\"]`);\n const containerLoading = base.$(\n `[data-hook=\"${dataHook}-container-loading\"]`,\n );\n\n const getCarouselChildren = async (): Promise<UniDriver[] | null> => {\n if (await carouselIdle.exists()) {\n // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList\n return carouselIdle.getChildren();\n }\n if (await carouselLoading.exists()) {\n // @ts-expect-error carousel types are wrong, getChildren returns a Promise of an array and not UniDriverList\n return carouselLoading.getChildren();\n }\n return null;\n };\n\n const getContainerChildren = async () => {\n if (await containerIdle.exists()) {\n return containerIdle.$$(`[data-hook=\"${cardDataHook}\"]`);\n }\n if (await containerLoading.exists()) {\n return containerLoading.$$(`[data-hook=\"${cardDataHook}\"]`);\n }\n return null;\n };\n\n const isLoadingState = async () => {\n const isContainerLoading = await containerLoading.exists();\n const isCarouselLoading = await carouselLoading.exists();\n return isContainerLoading || isCarouselLoading;\n };\n\n return {\n ...baseUniDriverFactory(base),\n isLoading: isLoadingState,\n hasOffers: async () => {\n const carouselExists = await carouselIdle.exists();\n const containerExists = await containerIdle.exists();\n return carouselExists || containerExists;\n },\n isEmpty: async () => {\n const carouselExists = await carouselIdle.exists();\n const containerExists = await containerIdle.exists();\n return !carouselExists && !containerExists;\n },\n getCardsCounts: async () => {\n const carouselChildren = await getCarouselChildren();\n if (carouselChildren) {\n return carouselChildren.length;\n }\n const containerChildren = await getContainerChildren();\n if (containerChildren) {\n return containerChildren.count();\n }\n return 0;\n },\n getCardAt: async (index: number) => {\n const carouselChildren = await getCarouselChildren();\n if (carouselChildren) {\n return carouselChildren[index];\n }\n const containerChildren = await getContainerChildren();\n if (containerChildren) {\n return containerChildren.at(index);\n }\n throw new Error(`No cards found at index ${index}`);\n },\n carousel: async () =>\n (await carouselIdle.exists()) ? carouselIdle : carouselLoading,\n container: async () =>\n (await containerIdle.exists()) ? containerIdle : containerLoading,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
+ exports.renderMarketingCard = exports.Suggestions = exports.MarketingCardSkeleton = void 0;
4
5
  var _Suggestions = require("./Suggestions");
5
- Object.keys(_Suggestions).forEach(function (key) {
6
- if (key === "default" || key === "__esModule") return;
7
- if (key in exports && exports[key] === _Suggestions[key]) return;
8
- exports[key] = _Suggestions[key];
9
- });
6
+ exports.Suggestions = _Suggestions.Suggestions;
7
+ var _MarketingCard = require("./MarketingCard");
8
+ exports.renderMarketingCard = _MarketingCard.renderMarketingCard;
9
+ exports.MarketingCardSkeleton = _MarketingCard.MarketingCardSkeleton;
10
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_Suggestions","require","Object","keys","forEach","key","exports"],"sources":["../../../../src/components/Suggestions/index.ts"],"sourcesContent":["export * from './Suggestions';\n"],"mappings":";;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,YAAA,CAAAK,GAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_Suggestions","require","exports","Suggestions","_MarketingCard","renderMarketingCard","MarketingCardSkeleton"],"sources":["../../../../src/components/Suggestions/index.ts"],"sourcesContent":["// Main component\nexport { Suggestions } from './Suggestions';\n\n// Types\nexport type {\n SuggestionsProps,\n SuggestionsCardProps,\n BaseCardComponentProps,\n Offer,\n} from './types';\n\n// MarketingCard - pre-built card component\nexport { renderMarketingCard, MarketingCardSkeleton } from './MarketingCard';\nexport type { MarketingCardSchema } from './MarketingCard';\n"],"mappings":";;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAA4CC,OAAA,CAAAC,WAAA,GAAAH,YAAA,CAAAG,WAAA;AAW5C,IAAAC,cAAA,GAAAH,OAAA;AAA6EC,OAAA,CAAAG,mBAAA,GAAAD,cAAA,CAAAC,mBAAA;AAAAH,OAAA,CAAAI,qBAAA,GAAAF,cAAA,CAAAE,qBAAA","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../../src/components/Suggestions/types.ts"],"sourcesContent":["import { CarouselWIPProps } from '@wix/design-system';\nimport { Offer } from '@wix/bex-utils/@wix/ambassador-dealer-v1-serving-offer/types';\n\n// Re-export Offer for external consumers\nexport type { Offer };\n\n/**\n * Base props passed to card components\n */\nexport interface BaseCardComponentProps {\n /** Index of the card in the list */\n index: number;\n /** Total number of offers received from the dealer service */\n totalOffers: number;\n}\n\n/**\n * Props passed to the renderCard function\n */\nexport interface SuggestionsCardProps extends BaseCardComponentProps {\n /** The offer data from the dealer service */\n offer: Offer;\n}\n\n/**\n * Props for the Suggestions component\n */\nexport interface SuggestionsProps {\n /** The placement ID to fetch offers for */\n placementId: string;\n /** Props to pass to the carousel component */\n carouselProps?: CarouselWIPProps;\n /** Render function for each offer card */\n renderCard: (props: SuggestionsCardProps) => React.ReactNode | null;\n /** Skeleton component to render when loading */\n CardSkeleton?: React.ComponentType<BaseCardComponentProps>;\n /** Number of skeletons to render when loading */\n skeletonsNumber?: number;\n /** Data hook to use for the suggestions component */\n dataHook?: string;\n}\n"],"mappings":"","ignoreList":[]}
@@ -13,6 +13,7 @@ var _jsxFileName = "/home/builduser/work/843658b9f44192f0/packages/cairo/dist/cj
13
13
  function _TabCounterBadge(props) {
14
14
  const {
15
15
  value,
16
+ skin = 'neutralStandard',
16
17
  ...rest
17
18
  } = props;
18
19
  const state = (0, _useFilterValueTotalState.useFilterValueTotalState)(props);
@@ -23,7 +24,9 @@ function _TabCounterBadge(props) {
23
24
  lifecycleState
24
25
  }
25
26
  } = state;
26
- return totalStatus === 'success' && lifecycleState === 'result' ? /*#__PURE__*/_react.default.createElement(_designSystem.CounterBadge, (0, _extends2.default)({}, rest, {
27
+ return totalStatus === 'success' && lifecycleState === 'result' ? /*#__PURE__*/_react.default.createElement(_designSystem.CounterBadge, (0, _extends2.default)({
28
+ skin: skin
29
+ }, rest, {
27
30
  __self: this,
28
31
  __source: {
29
32
  fileName: _jsxFileName,
@@ -1 +1 @@
1
- {"version":3,"names":["_mobxReactLite","require","_designSystem","_react","_interopRequireDefault","_useFilterValueTotalState","_initTabTotal","_jsxFileName","_TabCounterBadge","props","value","rest","state","useFilterValueTotalState","totalsCollection","totalStatus","total","lifecycleState","default","createElement","CounterBadge","_extends2","__self","__source","fileName","lineNumber","columnNumber","initTabTotal","TabTotalCounterBadge","exports","observer","displayName"],"sources":["../../../../src/components/TabTotal/TabTotalCounterBadge.tsx"],"sourcesContent":["import { observer } from 'mobx-react-lite';\nimport { CounterBadge, CounterBadgeProps } from '@wix/design-system';\nimport React from 'react';\nimport {\n useFilterValueTotalState,\n UseFilterValueTotalStateParams,\n} from './useFilterValueTotalState';\nimport { FiltersMap } from '@wix/bex-core';\nimport { initTabTotal } from '../../state/initTabTotal';\n\nexport interface TabCounterBadgeProps<V, T, F extends FiltersMap>\n extends UseFilterValueTotalStateParams<V, T, F>,\n Partial<CounterBadgeProps> {}\n\nfunction _TabCounterBadge<V, T = unknown, F extends FiltersMap = FiltersMap>(\n props: TabCounterBadgeProps<V, T, F>,\n) {\n const { value, ...rest } = props;\n const state = useFilterValueTotalState(props);\n\n const {\n totalsCollection: { totalStatus, total, lifecycleState },\n } = state;\n\n return totalStatus === 'success' && lifecycleState === 'result' ? (\n <CounterBadge {...rest}>{total}</CounterBadge>\n ) : null;\n}\n\n_TabCounterBadge.initTabTotal = initTabTotal;\nexport const TabTotalCounterBadge = observer(_TabCounterBadge);\nTabTotalCounterBadge.displayName = 'TabTotalCounterBadge';\nTabTotalCounterBadge.initTabTotal = initTabTotal;\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,yBAAA,GAAAJ,OAAA;AAKA,IAAAK,aAAA,GAAAL,OAAA;AAAwD,IAAAM,YAAA;AAMxD,SAASC,gBAAgBA,CACvBC,KAAoC,EACpC;EACA,MAAM;IAAEC,KAAK;IAAE,GAAGC;EAAK,CAAC,GAAGF,KAAK;EAChC,MAAMG,KAAK,GAAG,IAAAC,kDAAwB,EAACJ,KAAK,CAAC;EAE7C,MAAM;IACJK,gBAAgB,EAAE;MAAEC,WAAW;MAAEC,KAAK;MAAEC;IAAe;EACzD,CAAC,GAAGL,KAAK;EAET,OAAOG,WAAW,KAAK,SAAS,IAAIE,cAAc,KAAK,QAAQ,gBAC7Dd,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACjB,aAAA,CAAAkB,YAAY,MAAAC,SAAA,CAAAH,OAAA,MAAKP,IAAI;IAAAW,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAjB,YAAA;MAAAkB,UAAA;MAAAC,YAAA;IAAA;EAAA,IAAGV,KAAoB,CAAC,GAC5C,IAAI;AACV;AAEAR,gBAAgB,CAACmB,YAAY,GAAGA,0BAAY;AACrC,MAAMC,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG,IAAAE,uBAAQ,EAACtB,gBAAgB,CAAC;AAC9DoB,oBAAoB,CAACG,WAAW,GAAG,sBAAsB;AACzDH,oBAAoB,CAACD,YAAY,GAAGA,0BAAY","ignoreList":[]}
1
+ {"version":3,"names":["_mobxReactLite","require","_designSystem","_react","_interopRequireDefault","_useFilterValueTotalState","_initTabTotal","_jsxFileName","_TabCounterBadge","props","value","skin","rest","state","useFilterValueTotalState","totalsCollection","totalStatus","total","lifecycleState","default","createElement","CounterBadge","_extends2","__self","__source","fileName","lineNumber","columnNumber","initTabTotal","TabTotalCounterBadge","exports","observer","displayName"],"sources":["../../../../src/components/TabTotal/TabTotalCounterBadge.tsx"],"sourcesContent":["import { observer } from 'mobx-react-lite';\nimport { CounterBadge, CounterBadgeProps } from '@wix/design-system';\nimport React from 'react';\nimport {\n useFilterValueTotalState,\n UseFilterValueTotalStateParams,\n} from './useFilterValueTotalState';\nimport { FiltersMap } from '@wix/bex-core';\nimport { initTabTotal } from '../../state/initTabTotal';\n\nexport interface TabCounterBadgeProps<V, T, F extends FiltersMap>\n extends UseFilterValueTotalStateParams<V, T, F>,\n Partial<CounterBadgeProps> {}\n\nfunction _TabCounterBadge<V, T = unknown, F extends FiltersMap = FiltersMap>(\n props: TabCounterBadgeProps<V, T, F>,\n) {\n const { value, skin = 'neutralStandard', ...rest } = props;\n const state = useFilterValueTotalState(props);\n\n const {\n totalsCollection: { totalStatus, total, lifecycleState },\n } = state;\n\n return totalStatus === 'success' && lifecycleState === 'result' ? (\n <CounterBadge skin={skin} {...rest}>\n {total}\n </CounterBadge>\n ) : null;\n}\n\n_TabCounterBadge.initTabTotal = initTabTotal;\nexport const TabTotalCounterBadge = observer(_TabCounterBadge);\nTabTotalCounterBadge.displayName = 'TabTotalCounterBadge';\nTabTotalCounterBadge.initTabTotal = initTabTotal;\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,yBAAA,GAAAJ,OAAA;AAKA,IAAAK,aAAA,GAAAL,OAAA;AAAwD,IAAAM,YAAA;AAMxD,SAASC,gBAAgBA,CACvBC,KAAoC,EACpC;EACA,MAAM;IAAEC,KAAK;IAAEC,IAAI,GAAG,iBAAiB;IAAE,GAAGC;EAAK,CAAC,GAAGH,KAAK;EAC1D,MAAMI,KAAK,GAAG,IAAAC,kDAAwB,EAACL,KAAK,CAAC;EAE7C,MAAM;IACJM,gBAAgB,EAAE;MAAEC,WAAW;MAAEC,KAAK;MAAEC;IAAe;EACzD,CAAC,GAAGL,KAAK;EAET,OAAOG,WAAW,KAAK,SAAS,IAAIE,cAAc,KAAK,QAAQ,gBAC7Df,MAAA,CAAAgB,OAAA,CAAAC,aAAA,CAAClB,aAAA,CAAAmB,YAAY,MAAAC,SAAA,CAAAH,OAAA;IAACR,IAAI,EAAEA;EAAK,GAAKC,IAAI;IAAAW,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAlB,YAAA;MAAAmB,UAAA;MAAAC,YAAA;IAAA;EAAA,IAC/BV,KACW,CAAC,GACb,IAAI;AACV;AAEAT,gBAAgB,CAACoB,YAAY,GAAGA,0BAAY;AACrC,MAAMC,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG,IAAAE,uBAAQ,EAACvB,gBAAgB,CAAC;AAC9DqB,oBAAoB,CAACG,WAAW,GAAG,sBAAsB;AACzDH,oBAAoB,CAACD,YAAY,GAAGA,0BAAY","ignoreList":[]}
@@ -18,7 +18,8 @@ function _TabsDropdown(props) {
18
18
  data: dataProp,
19
19
  items,
20
20
  filter,
21
- selectedId
21
+ selectedId,
22
+ popoverProps
22
23
  } = props;
23
24
  const {
24
25
  itemKey
@@ -46,7 +47,7 @@ function _TabsDropdown(props) {
46
47
  __self: this,
47
48
  __source: {
48
49
  fileName: _jsxFileName,
49
- lineNumber: 55,
50
+ lineNumber: 61,
50
51
  columnNumber: 13
51
52
  }
52
53
  })
@@ -65,7 +66,7 @@ function _TabsDropdown(props) {
65
66
  __self: this,
66
67
  __source: {
67
68
  fileName: _jsxFileName,
68
- lineNumber: 71,
69
+ lineNumber: 77,
69
70
  columnNumber: 5
70
71
  }
71
72
  }, /*#__PURE__*/_react.default.createElement(_SingleSelectFilterBase.SingleSelectFilterBase, {
@@ -86,7 +87,7 @@ function _TabsDropdown(props) {
86
87
  __self: this,
87
88
  __source: {
88
89
  fileName: _jsxFileName,
89
- lineNumber: 93,
90
+ lineNumber: 99,
90
91
  columnNumber: 13
91
92
  }
92
93
  }, /*#__PURE__*/_react.default.createElement(_TabTotal.TabTotalDropdownOption, {
@@ -95,14 +96,15 @@ function _TabsDropdown(props) {
95
96
  __self: this,
96
97
  __source: {
97
98
  fileName: _jsxFileName,
98
- lineNumber: 94,
99
+ lineNumber: 100,
99
100
  columnNumber: 15
100
101
  }
101
102
  })),
103
+ popoverProps: popoverProps,
102
104
  __self: this,
103
105
  __source: {
104
106
  fileName: _jsxFileName,
105
- lineNumber: 72,
107
+ lineNumber: 78,
106
108
  columnNumber: 7
107
109
  }
108
110
  }));