@wix/patterns 1.356.0 → 1.358.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 (357) hide show
  1. package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
  2. package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
  3. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  4. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  5. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  6. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  7. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
  8. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  9. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
  10. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  11. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.js +29 -21
  12. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.js.map +1 -1
  13. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  14. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  15. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js +26 -16
  16. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js.map +1 -1
  17. package/dist/cjs/components/CollectionToolbar/CollectionToolbarLeftGroup.js +14 -5
  18. package/dist/cjs/components/CollectionToolbar/CollectionToolbarLeftGroup.js.map +1 -1
  19. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.js +10 -8
  20. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.js.map +1 -1
  21. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  22. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  23. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  24. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  25. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  26. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  27. package/dist/cjs/components/CustomFieldsTransforms/transformOperatorFilterToWQL.js +5 -21
  28. package/dist/cjs/components/CustomFieldsTransforms/transformOperatorFilterToWQL.js.map +1 -1
  29. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  30. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  31. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  32. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  33. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  34. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  35. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  36. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  37. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  38. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  39. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  40. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  41. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  42. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  43. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  44. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  45. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
  46. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  47. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  48. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  49. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  50. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  51. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  52. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  53. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  54. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  55. package/dist/cjs/components/OperatorFilterPicker/OperatorFilterPicker.js +8 -4
  56. package/dist/cjs/components/OperatorFilterPicker/OperatorFilterPicker.js.map +1 -1
  57. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  58. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  59. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  60. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  61. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  62. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  63. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  64. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  65. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  66. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  67. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  68. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  69. package/dist/cjs/components/TableGridSwitchButton/TableGridSwitchButton.js +119 -38
  70. package/dist/cjs/components/TableGridSwitchButton/TableGridSwitchButton.js.map +1 -1
  71. package/dist/cjs/components/TableGridSwitchButton/TableGridSwitchButton.uni.driver.js +15 -1
  72. package/dist/cjs/components/TableGridSwitchButton/TableGridSwitchButton.uni.driver.js.map +1 -1
  73. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  74. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  75. package/dist/cjs/components/Tags/BulkAssignTagsPopover/BulkAssignTagsPopover.js +3 -2
  76. package/dist/cjs/components/Tags/BulkAssignTagsPopover/BulkAssignTagsPopover.js.map +1 -1
  77. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  78. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  79. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  80. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  81. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  82. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  83. package/dist/cjs/components/common.st.css.js +4 -4
  84. package/dist/cjs/components/common.st.css.js.map +1 -1
  85. package/dist/cjs/exports/bi.js +0 -14
  86. package/dist/cjs/exports/bi.js.map +1 -1
  87. package/dist/cjs/exports/testkit/bi.js +17 -0
  88. package/dist/cjs/exports/testkit/bi.js.map +1 -0
  89. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  90. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  91. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  92. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  93. package/dist/cjs/state/TableGridSwitchFoldersState.js.map +1 -1
  94. package/dist/cjs/state/TableGridSwitchState.js.map +1 -1
  95. package/dist/cjs/state/Toolbar/ToolbarLeftGroupState.js +22 -23
  96. package/dist/cjs/state/Toolbar/ToolbarLeftGroupState.js.map +1 -1
  97. package/dist/cjs/state/Toolbar/ToolbarResponsivePriorityState.js +9 -72
  98. package/dist/cjs/state/Toolbar/ToolbarResponsivePriorityState.js.map +1 -1
  99. package/dist/cjs/state/Toolbar/ToolbarResponsiveState.js +81 -49
  100. package/dist/cjs/state/Toolbar/ToolbarResponsiveState.js.map +1 -1
  101. package/dist/cjs/state/Toolbar/computeResponsiveTargetState.js +48 -0
  102. package/dist/cjs/state/Toolbar/computeResponsiveTargetState.js.map +1 -0
  103. package/dist/cjs/state/Toolbar/toolbarResponsiveConstants.js +7 -0
  104. package/dist/cjs/state/Toolbar/toolbarResponsiveConstants.js.map +1 -0
  105. package/dist/cjs/state/ViewTypeState.js +30 -10
  106. package/dist/cjs/state/ViewTypeState.js.map +1 -1
  107. package/dist/cjs/styles.global.css +1 -1
  108. package/dist/cjs/version.js +1 -1
  109. package/dist/cjs/version.js.map +1 -1
  110. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  111. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  112. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  113. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
  114. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  115. package/dist/esm/components/CollectionToolbar/CollectionToolbar.js +6 -2
  116. package/dist/esm/components/CollectionToolbar/CollectionToolbar.js.map +1 -1
  117. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  118. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  119. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js +7 -4
  120. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js.map +1 -1
  121. package/dist/esm/components/CollectionToolbar/CollectionToolbarLeftGroup.js +12 -1
  122. package/dist/esm/components/CollectionToolbar/CollectionToolbarLeftGroup.js.map +1 -1
  123. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.js +4 -2
  124. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.js.map +1 -1
  125. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  126. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  127. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  128. package/dist/esm/components/CustomFieldsTransforms/transformOperatorFilterToWQL.js +5 -27
  129. package/dist/esm/components/CustomFieldsTransforms/transformOperatorFilterToWQL.js.map +1 -1
  130. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  131. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  132. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  133. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  134. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  135. package/dist/esm/components/Heading/Heading.st.css.js.map +1 -1
  136. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  137. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  138. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  139. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  140. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  141. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  142. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  143. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  144. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  145. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  146. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  147. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  148. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  149. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  150. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  151. package/dist/esm/components/OperatorFilterPicker/OperatorFilterPicker.js +1 -1
  152. package/dist/esm/components/OperatorFilterPicker/OperatorFilterPicker.js.map +1 -1
  153. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  154. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  155. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  156. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  157. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  158. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  159. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  160. package/dist/esm/components/TableGridSwitchButton/TableGridSwitchButton.js +45 -13
  161. package/dist/esm/components/TableGridSwitchButton/TableGridSwitchButton.js.map +1 -1
  162. package/dist/esm/components/TableGridSwitchButton/TableGridSwitchButton.uni.driver.js +14 -1
  163. package/dist/esm/components/TableGridSwitchButton/TableGridSwitchButton.uni.driver.js.map +1 -1
  164. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  165. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  166. package/dist/esm/components/Tags/BulkAssignTagsPopover/BulkAssignTagsPopover.js +1 -1
  167. package/dist/esm/components/Tags/BulkAssignTagsPopover/BulkAssignTagsPopover.js.map +1 -1
  168. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  169. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  170. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  171. package/dist/esm/components/common.st.css.js +2 -2
  172. package/dist/esm/components/common.st.css.js.map +1 -1
  173. package/dist/esm/exports/bi.js +0 -2
  174. package/dist/esm/exports/bi.js.map +1 -1
  175. package/dist/esm/exports/testkit/bi.js +3 -0
  176. package/dist/esm/exports/testkit/bi.js.map +1 -0
  177. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  178. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  179. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  180. package/dist/esm/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  181. package/dist/esm/state/TableGridSwitchFoldersState.js.map +1 -1
  182. package/dist/esm/state/TableGridSwitchState.js.map +1 -1
  183. package/dist/esm/state/Toolbar/ToolbarLeftGroupState.js +22 -24
  184. package/dist/esm/state/Toolbar/ToolbarLeftGroupState.js.map +1 -1
  185. package/dist/esm/state/Toolbar/ToolbarResponsivePriorityState.js +6 -55
  186. package/dist/esm/state/Toolbar/ToolbarResponsivePriorityState.js.map +1 -1
  187. package/dist/esm/state/Toolbar/ToolbarResponsiveState.js +73 -41
  188. package/dist/esm/state/Toolbar/ToolbarResponsiveState.js.map +1 -1
  189. package/dist/esm/state/Toolbar/computeResponsiveTargetState.js +41 -0
  190. package/dist/esm/state/Toolbar/computeResponsiveTargetState.js.map +1 -0
  191. package/dist/esm/state/Toolbar/toolbarResponsiveConstants.js +3 -0
  192. package/dist/esm/state/Toolbar/toolbarResponsiveConstants.js.map +1 -0
  193. package/dist/esm/state/ViewTypeState.js +29 -11
  194. package/dist/esm/state/ViewTypeState.js.map +1 -1
  195. package/dist/esm/styles.global.css +1 -1
  196. package/dist/esm/version.js +1 -1
  197. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +14 -2
  198. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts.map +1 -1
  199. package/dist/types/components/CollectionToolbar/CollectionToolbar.d.ts.map +1 -1
  200. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  201. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts +7 -1
  202. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts.map +1 -1
  203. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.d.ts.map +1 -1
  204. package/dist/types/components/CollectionToolbar/CollectionToolbarLeftGroup.d.ts.map +1 -1
  205. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.d.ts.map +1 -1
  206. package/dist/types/components/CustomFieldsTransforms/transformOperatorFilterToWQL.d.ts +4 -14
  207. package/dist/types/components/CustomFieldsTransforms/transformOperatorFilterToWQL.d.ts.map +1 -1
  208. package/dist/types/components/EntityPage/EntityPagePlain.st.css.d.ts.map +1 -1
  209. package/dist/types/components/Grid/Grid.uni.driver.d.ts +7 -1
  210. package/dist/types/components/Grid/Grid.uni.driver.d.ts.map +1 -1
  211. package/dist/types/components/Grid/GridFolders.uni.driver.d.ts +21 -3
  212. package/dist/types/components/Grid/GridFolders.uni.driver.d.ts.map +1 -1
  213. package/dist/types/components/Grid/GridFoldersSection.uni.driver.d.ts +7 -1
  214. package/dist/types/components/Grid/GridFoldersSection.uni.driver.d.ts.map +1 -1
  215. package/dist/types/components/Heading/Heading.st.css.d.ts.map +1 -1
  216. package/dist/types/components/InputOverflow/InputOverflow.st.css.d.ts.map +1 -1
  217. package/dist/types/components/Kanban/Kanban.uni.driver.d.ts +7 -1
  218. package/dist/types/components/Kanban/Kanban.uni.driver.d.ts.map +1 -1
  219. package/dist/types/components/LoadingRow/LoadingRow.st.css.d.ts.map +1 -1
  220. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  221. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +21 -3
  222. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
  223. package/dist/types/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.d.ts.map +1 -1
  224. package/dist/types/components/NestedTable/NestedTableRow.st.css.d.ts.map +1 -1
  225. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.d.ts.map +1 -1
  226. package/dist/types/components/OperatorFilterPicker/OperatorFilterPicker.d.ts.map +1 -1
  227. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  228. package/dist/types/components/Table/Table.uni.driver.d.ts +14 -2
  229. package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
  230. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +21 -3
  231. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts.map +1 -1
  232. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +28 -4
  233. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts.map +1 -1
  234. package/dist/types/components/TableGridSwitchButton/TableGridSwitchButton.d.ts +2 -4
  235. package/dist/types/components/TableGridSwitchButton/TableGridSwitchButton.d.ts.map +1 -1
  236. package/dist/types/components/TableGridSwitchButton/TableGridSwitchButton.uni.driver.d.ts +11 -2
  237. package/dist/types/components/TableGridSwitchButton/TableGridSwitchButton.uni.driver.d.ts.map +1 -1
  238. package/dist/types/components/TabsFilter/TabsFilter.st.css.d.ts.map +1 -1
  239. package/dist/types/components/Tags/BulkAssignTagsPopover/BulkAssignTagsPopover.d.ts.map +1 -1
  240. package/dist/types/components/common.st.css.d.ts.map +1 -1
  241. package/dist/types/exports/bi.d.ts +0 -2
  242. package/dist/types/exports/bi.d.ts.map +1 -1
  243. package/dist/types/exports/testkit/bi.d.ts +3 -0
  244. package/dist/types/exports/testkit/bi.d.ts.map +1 -0
  245. package/dist/types/state/CollectionPage/CollectionPageHeader.st.css.d.ts.map +1 -1
  246. package/dist/types/state/FormPage/FormPageHeader.st.css.d.ts.map +1 -1
  247. package/dist/types/state/TableGridSwitchFoldersState.d.ts +1 -3
  248. package/dist/types/state/TableGridSwitchFoldersState.d.ts.map +1 -1
  249. package/dist/types/state/TableGridSwitchState.d.ts +1 -3
  250. package/dist/types/state/TableGridSwitchState.d.ts.map +1 -1
  251. package/dist/types/state/Toolbar/ToolbarLeftGroupState.d.ts +2 -2
  252. package/dist/types/state/Toolbar/ToolbarLeftGroupState.d.ts.map +1 -1
  253. package/dist/types/state/Toolbar/ToolbarResponsivePriorityState.d.ts +4 -13
  254. package/dist/types/state/Toolbar/ToolbarResponsivePriorityState.d.ts.map +1 -1
  255. package/dist/types/state/Toolbar/ToolbarResponsiveState.d.ts +9 -8
  256. package/dist/types/state/Toolbar/ToolbarResponsiveState.d.ts.map +1 -1
  257. package/dist/types/state/Toolbar/computeResponsiveTargetState.d.ts +15 -0
  258. package/dist/types/state/Toolbar/computeResponsiveTargetState.d.ts.map +1 -0
  259. package/dist/types/state/Toolbar/toolbarResponsiveConstants.d.ts +3 -0
  260. package/dist/types/state/Toolbar/toolbarResponsiveConstants.d.ts.map +1 -0
  261. package/dist/types/state/ViewTypeState.d.ts +4 -3
  262. package/dist/types/state/ViewTypeState.d.ts.map +1 -1
  263. package/dist/types/testkit/enzyme.d.ts +112 -16
  264. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  265. package/dist/types/testkit/jsdom.d.ts +119 -17
  266. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  267. package/dist/types/testkit/playwright.d.ts +112 -16
  268. package/dist/types/testkit/playwright.d.ts.map +1 -1
  269. package/dist/types/testkit/puppeteer.d.ts +119 -17
  270. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  271. package/dist/types/version.d.ts +1 -1
  272. package/package.json +8 -3
  273. package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
  274. package/src/components/Collapse/Collapse.st.css.ts +2 -2
  275. package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
  276. package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
  277. package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
  278. package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
  279. package/src/components/CollectionToolbar/CollectionToolbar.tsx +12 -2
  280. package/src/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.tsx +21 -6
  281. package/src/components/CollectionToolbar/CollectionToolbarLeftGroup.tsx +12 -1
  282. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
  283. package/src/components/CollectionToolbar/SearchOrCustomFilter.tsx +8 -2
  284. package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
  285. package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
  286. package/src/components/CustomFieldsTransforms/transformOperatorFilterToWQL.tsx +5 -30
  287. package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
  288. package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
  289. package/src/components/Fade/Fade.st.css.ts +2 -2
  290. package/src/components/Heading/Heading.st.css.ts +2 -2
  291. package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
  292. package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
  293. package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
  294. package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
  295. package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
  296. package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
  297. package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
  298. package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
  299. package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
  300. package/src/components/OperatorFilterPicker/OperatorFilterPicker.tsx +4 -0
  301. package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
  302. package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
  303. package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
  304. package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
  305. package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
  306. package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
  307. package/src/components/TableGridSwitchButton/TableGridSwitchButton.tsx +112 -31
  308. package/src/components/TableGridSwitchButton/TableGridSwitchButton.uni.driver.ts +23 -1
  309. package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
  310. package/src/components/Tags/BulkAssignTagsPopover/BulkAssignTagsPopover.tsx +1 -0
  311. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
  312. package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
  313. package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
  314. package/src/components/common.st.css.ts +2 -2
  315. package/src/exports/bi.ts +0 -2
  316. package/src/exports/testkit/bi.ts +2 -0
  317. package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
  318. package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
  319. package/src/state/TableGridSwitchFoldersState.ts +1 -2
  320. package/src/state/TableGridSwitchState.ts +1 -2
  321. package/src/state/Toolbar/ToolbarLeftGroupState.ts +22 -27
  322. package/src/state/Toolbar/ToolbarResponsivePriorityState.ts +10 -89
  323. package/src/state/Toolbar/ToolbarResponsiveState.ts +95 -64
  324. package/src/state/Toolbar/computeResponsiveTargetState.ts +67 -0
  325. package/src/state/Toolbar/toolbarResponsiveConstants.ts +2 -0
  326. package/src/state/ViewTypeState.ts +44 -12
  327. package/src/styles.global.css +1 -1
  328. package/src/version.ts +1 -1
  329. package/testkit/bi/package.json +6 -0
  330. package/dist/cjs/components/Responsive/HorizontalAvailableSpaceBox.js +0 -37
  331. package/dist/cjs/components/Responsive/HorizontalAvailableSpaceBox.js.map +0 -1
  332. package/dist/cjs/components/Responsive/HorizontalOverflowBox.js +0 -34
  333. package/dist/cjs/components/Responsive/HorizontalOverflowBox.js.map +0 -1
  334. package/dist/cjs/state/Responsive/HorizontalOverflowState.js +0 -76
  335. package/dist/cjs/state/Responsive/HorizontalOverflowState.js.map +0 -1
  336. package/dist/cjs/state/Responsive/HorizontalSpaceAvailableState.js +0 -80
  337. package/dist/cjs/state/Responsive/HorizontalSpaceAvailableState.js.map +0 -1
  338. package/dist/esm/components/Responsive/HorizontalAvailableSpaceBox.js +0 -12
  339. package/dist/esm/components/Responsive/HorizontalAvailableSpaceBox.js.map +0 -1
  340. package/dist/esm/components/Responsive/HorizontalOverflowBox.js +0 -11
  341. package/dist/esm/components/Responsive/HorizontalOverflowBox.js.map +0 -1
  342. package/dist/esm/state/Responsive/HorizontalOverflowState.js +0 -55
  343. package/dist/esm/state/Responsive/HorizontalOverflowState.js.map +0 -1
  344. package/dist/esm/state/Responsive/HorizontalSpaceAvailableState.js +0 -55
  345. package/dist/esm/state/Responsive/HorizontalSpaceAvailableState.js.map +0 -1
  346. package/dist/types/components/Responsive/HorizontalAvailableSpaceBox.d.ts +0 -8
  347. package/dist/types/components/Responsive/HorizontalAvailableSpaceBox.d.ts.map +0 -1
  348. package/dist/types/components/Responsive/HorizontalOverflowBox.d.ts +0 -8
  349. package/dist/types/components/Responsive/HorizontalOverflowBox.d.ts.map +0 -1
  350. package/dist/types/state/Responsive/HorizontalOverflowState.d.ts +0 -25
  351. package/dist/types/state/Responsive/HorizontalOverflowState.d.ts.map +0 -1
  352. package/dist/types/state/Responsive/HorizontalSpaceAvailableState.d.ts +0 -26
  353. package/dist/types/state/Responsive/HorizontalSpaceAvailableState.d.ts.map +0 -1
  354. package/src/components/Responsive/HorizontalAvailableSpaceBox.tsx +0 -32
  355. package/src/components/Responsive/HorizontalOverflowBox.tsx +0 -26
  356. package/src/state/Responsive/HorizontalOverflowState.ts +0 -85
  357. package/src/state/Responsive/HorizontalSpaceAvailableState.ts +0 -86
@@ -1 +1 @@
1
- {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/CollectionPage/CollectionPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"CollectionPageHeader1261547672\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"CollectionPageHeader1261547672__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,gCAAgC;AAClD,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAsC,CAAC;AAC7D,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/CollectionPage/CollectionPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"CollectionPageHeader626711544\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"CollectionPageHeader626711544__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,+BAA+B;AACjD,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAqC,CAAC;AAC5D,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
@@ -5,14 +5,14 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
5
5
  var _stylableEsmRuntime = require("../../stylable-esm-runtime.js");
6
6
  // @ts-nocheck
7
7
 
8
- var _namespace_ = "FormPageHeader544963084";
8
+ var _namespace_ = "FormPageHeader2618187567";
9
9
  var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
10
10
  var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
11
11
  var style = exports.style = _style_;
12
12
  var st = exports.st = _style_;
13
13
  var namespace = exports.namespace = _namespace_;
14
14
  var classes = exports.classes = {
15
- "root": "FormPageHeader544963084__root"
15
+ "root": "FormPageHeader2618187567__root"
16
16
  };
17
17
  var keyframes = exports.keyframes = {};
18
18
  var layers = exports.layers = {};
@@ -1 +1 @@
1
- {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"FormPageHeader544963084\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"FormPageHeader544963084__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,yBAAyB;AAC3C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAA+B,CAAC;AACtD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"FormPageHeader2618187567\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"FormPageHeader2618187567__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,0BAA0B;AAC5C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAgC,CAAC;AACvD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_GridFoldersState","_TableFoldersState","_mobx","_ToolbarCollectionState","_ViewTypeState","TableGridSwitchFoldersState","constructor","params","_defineProperty2","default","TaskState","container","containerOverrides","tableFoldersState","TableFoldersState","items","folders","toolbar","ToolbarCollectionState","componentType","collection","reportBi","biParams","componentStatus","viewTypeState","viewType","gridFoldersState","GridFoldersState","collections","ViewTypeState","dataCapsule","layoutState","makeObservable","computed","runInAction","init","initTask","runOnce","exports"],"sources":["../../../src/state/TableGridSwitchFoldersState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n WixPatternsContainerParams,\n CollectionState,\n FiltersMap,\n TaskState,\n} from '@wix/bex-core';\nimport { GridFoldersState } from './GridFoldersState';\nimport { TableFoldersState } from './TableFoldersState';\nimport { runInAction, makeObservable, computed } from 'mobx';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { PartialAllFilters } from './FoldersAndItemsCollectionsState';\nimport { ViewTypeState } from './ViewTypeState';\nimport { ICollectionComponentState } from './ICollectionComponentState';\n\nexport interface TableGridSwitchStateFoldersParams<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> {\n readonly items: CollectionState<T1, F1>;\n readonly folders: CollectionState<T2, F2>;\n readonly container: WixPatternsContainer;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n}\ntype ViewType = 'table' | 'grid';\nexport class TableGridSwitchFoldersState<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> implements ICollectionComponentState\n{\n readonly container;\n readonly initTask = new TaskState();\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n\n readonly gridFoldersState: GridFoldersState<T1, F1, T2, F2>;\n readonly tableFoldersState: TableFoldersState<T1, F1, T2, F2>;\n readonly viewTypeState: ViewTypeState;\n\n constructor(params: TableGridSwitchStateFoldersParams<T1, F1, T2, F2>) {\n this.container = params.container;\n this.containerOverrides = params.containerOverrides;\n\n this.tableFoldersState = new TableFoldersState({\n items: params.items,\n folders: params.folders,\n container: this.container,\n toolbar: new ToolbarCollectionState({\n componentType: 'TableGridSwitchFolders',\n collection: params.items as CollectionState<T1, {}> as CollectionState<\n T1,\n PartialAllFilters<F1, F2>\n >,\n container: params.container,\n reportBi: (biParams) =>\n this.container.reportBi({\n ...biParams,\n params: {\n ...biParams.params,\n componentStatus: this.viewTypeState.viewType,\n },\n }),\n }),\n });\n\n this.gridFoldersState = new GridFoldersState({\n items: params.items,\n folders: params.folders,\n container: this.container,\n toolbar: this.tableFoldersState.toolbar,\n collections: this.tableFoldersState.collections,\n });\n\n this.viewTypeState = new ViewTypeState({\n container: this.container,\n dataCapsule: this.toolbar.dataCapsule,\n componentType: 'TableGridSwitchFolders',\n });\n\n this.toolbar.layoutState = this;\n\n makeObservable(this, {\n viewType: computed,\n });\n }\n\n get viewType() {\n return this.viewTypeState.viewType;\n }\n\n set viewType(viewType: ViewType) {\n runInAction(() => {\n this.viewTypeState.viewType = viewType;\n });\n }\n\n get toolbar() {\n return this.tableFoldersState.toolbar;\n }\n\n init() {\n this.initTask.runOnce(async () => {\n await this.viewTypeState.init();\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,uBAAA,GAAAJ,OAAA;AAEA,IAAAK,cAAA,GAAAL,OAAA;AAeO,MAAMM,2BAA2B,CAMxC;EASEC,WAAWA,CAACC,MAAyD,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAPnD,IAAIC,kBAAS,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAQjC,IAAI,CAACE,SAAS,GAAGJ,MAAM,CAACI,SAAS;IACjC,IAAI,CAACC,kBAAkB,GAAGL,MAAM,CAACK,kBAAkB;IAEnD,IAAI,CAACC,iBAAiB,GAAG,IAAIC,oCAAiB,CAAC;MAC7CC,KAAK,EAAER,MAAM,CAACQ,KAAK;MACnBC,OAAO,EAAET,MAAM,CAACS,OAAO;MACvBL,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBM,OAAO,EAAE,IAAIC,8CAAsB,CAAC;QAClCC,aAAa,EAAE,wBAAwB;QACvCC,UAAU,EAAEb,MAAM,CAACQ,KAGlB;QACDJ,SAAS,EAAEJ,MAAM,CAACI,SAAS;QAC3BU,QAAQ,EAAGC,QAAQ,IACjB,IAAI,CAACX,SAAS,CAACU,QAAQ,CAAC;UACtB,GAAGC,QAAQ;UACXf,MAAM,EAAE;YACN,GAAGe,QAAQ,CAACf,MAAM;YAClBgB,eAAe,EAAE,IAAI,CAACC,aAAa,CAACC;UACtC;QACF,CAAC;MACL,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAACC,gBAAgB,GAAG,IAAIC,kCAAgB,CAAC;MAC3CZ,KAAK,EAAER,MAAM,CAACQ,KAAK;MACnBC,OAAO,EAAET,MAAM,CAACS,OAAO;MACvBL,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBM,OAAO,EAAE,IAAI,CAACJ,iBAAiB,CAACI,OAAO;MACvCW,WAAW,EAAE,IAAI,CAACf,iBAAiB,CAACe;IACtC,CAAC,CAAC;IAEF,IAAI,CAACJ,aAAa,GAAG,IAAIK,4BAAa,CAAC;MACrClB,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBmB,WAAW,EAAE,IAAI,CAACb,OAAO,CAACa,WAAW;MACrCX,aAAa,EAAE;IACjB,CAAC,CAAC;IAEF,IAAI,CAACF,OAAO,CAACc,WAAW,GAAG,IAAI;IAE/B,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBP,QAAQ,EAAEQ;IACZ,CAAC,CAAC;EACJ;EAEA,IAAIR,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAACD,aAAa,CAACC,QAAQ;EACpC;EAEA,IAAIA,QAAQA,CAACA,QAAkB,EAAE;IAC/B,IAAAS,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACV,aAAa,CAACC,QAAQ,GAAGA,QAAQ;IACxC,CAAC,CAAC;EACJ;EAEA,IAAIR,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACJ,iBAAiB,CAACI,OAAO;EACvC;EAEAkB,IAAIA,CAAA,EAAG;IACL,IAAI,CAACC,QAAQ,CAACC,OAAO,CAAC,YAAY;MAChC,MAAM,IAAI,CAACb,aAAa,CAACW,IAAI,CAAC,CAAC;IACjC,CAAC,CAAC;EACJ;AACF;AAACG,OAAA,CAAAjC,2BAAA,GAAAA,2BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_GridFoldersState","_TableFoldersState","_mobx","_ToolbarCollectionState","_ViewTypeState","TableGridSwitchFoldersState","constructor","params","_defineProperty2","default","TaskState","container","containerOverrides","tableFoldersState","TableFoldersState","items","folders","toolbar","ToolbarCollectionState","componentType","collection","reportBi","biParams","componentStatus","viewTypeState","viewType","gridFoldersState","GridFoldersState","collections","ViewTypeState","dataCapsule","layoutState","makeObservable","computed","runInAction","init","initTask","runOnce","exports"],"sources":["../../../src/state/TableGridSwitchFoldersState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n WixPatternsContainerParams,\n CollectionState,\n FiltersMap,\n TaskState,\n} from '@wix/bex-core';\nimport { GridFoldersState } from './GridFoldersState';\nimport { TableFoldersState } from './TableFoldersState';\nimport { runInAction, makeObservable, computed } from 'mobx';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { PartialAllFilters } from './FoldersAndItemsCollectionsState';\nimport { ViewTypeState, ViewType } from './ViewTypeState';\nimport { ICollectionComponentState } from './ICollectionComponentState';\n\nexport interface TableGridSwitchStateFoldersParams<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> {\n readonly items: CollectionState<T1, F1>;\n readonly folders: CollectionState<T2, F2>;\n readonly container: WixPatternsContainer;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n}\nexport class TableGridSwitchFoldersState<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> implements ICollectionComponentState\n{\n readonly container;\n readonly initTask = new TaskState();\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n\n readonly gridFoldersState: GridFoldersState<T1, F1, T2, F2>;\n readonly tableFoldersState: TableFoldersState<T1, F1, T2, F2>;\n readonly viewTypeState: ViewTypeState;\n\n constructor(params: TableGridSwitchStateFoldersParams<T1, F1, T2, F2>) {\n this.container = params.container;\n this.containerOverrides = params.containerOverrides;\n\n this.tableFoldersState = new TableFoldersState({\n items: params.items,\n folders: params.folders,\n container: this.container,\n toolbar: new ToolbarCollectionState({\n componentType: 'TableGridSwitchFolders',\n collection: params.items as CollectionState<T1, {}> as CollectionState<\n T1,\n PartialAllFilters<F1, F2>\n >,\n container: params.container,\n reportBi: (biParams) =>\n this.container.reportBi({\n ...biParams,\n params: {\n ...biParams.params,\n componentStatus: this.viewTypeState.viewType,\n },\n }),\n }),\n });\n\n this.gridFoldersState = new GridFoldersState({\n items: params.items,\n folders: params.folders,\n container: this.container,\n toolbar: this.tableFoldersState.toolbar,\n collections: this.tableFoldersState.collections,\n });\n\n this.viewTypeState = new ViewTypeState({\n container: this.container,\n dataCapsule: this.toolbar.dataCapsule,\n componentType: 'TableGridSwitchFolders',\n });\n\n this.toolbar.layoutState = this;\n\n makeObservable(this, {\n viewType: computed,\n });\n }\n\n get viewType() {\n return this.viewTypeState.viewType;\n }\n\n set viewType(viewType: ViewType) {\n runInAction(() => {\n this.viewTypeState.viewType = viewType;\n });\n }\n\n get toolbar() {\n return this.tableFoldersState.toolbar;\n }\n\n init() {\n this.initTask.runOnce(async () => {\n await this.viewTypeState.init();\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,uBAAA,GAAAJ,OAAA;AAEA,IAAAK,cAAA,GAAAL,OAAA;AAcO,MAAMM,2BAA2B,CAMxC;EASEC,WAAWA,CAACC,MAAyD,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAPnD,IAAIC,kBAAS,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAQjC,IAAI,CAACE,SAAS,GAAGJ,MAAM,CAACI,SAAS;IACjC,IAAI,CAACC,kBAAkB,GAAGL,MAAM,CAACK,kBAAkB;IAEnD,IAAI,CAACC,iBAAiB,GAAG,IAAIC,oCAAiB,CAAC;MAC7CC,KAAK,EAAER,MAAM,CAACQ,KAAK;MACnBC,OAAO,EAAET,MAAM,CAACS,OAAO;MACvBL,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBM,OAAO,EAAE,IAAIC,8CAAsB,CAAC;QAClCC,aAAa,EAAE,wBAAwB;QACvCC,UAAU,EAAEb,MAAM,CAACQ,KAGlB;QACDJ,SAAS,EAAEJ,MAAM,CAACI,SAAS;QAC3BU,QAAQ,EAAGC,QAAQ,IACjB,IAAI,CAACX,SAAS,CAACU,QAAQ,CAAC;UACtB,GAAGC,QAAQ;UACXf,MAAM,EAAE;YACN,GAAGe,QAAQ,CAACf,MAAM;YAClBgB,eAAe,EAAE,IAAI,CAACC,aAAa,CAACC;UACtC;QACF,CAAC;MACL,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAACC,gBAAgB,GAAG,IAAIC,kCAAgB,CAAC;MAC3CZ,KAAK,EAAER,MAAM,CAACQ,KAAK;MACnBC,OAAO,EAAET,MAAM,CAACS,OAAO;MACvBL,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBM,OAAO,EAAE,IAAI,CAACJ,iBAAiB,CAACI,OAAO;MACvCW,WAAW,EAAE,IAAI,CAACf,iBAAiB,CAACe;IACtC,CAAC,CAAC;IAEF,IAAI,CAACJ,aAAa,GAAG,IAAIK,4BAAa,CAAC;MACrClB,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBmB,WAAW,EAAE,IAAI,CAACb,OAAO,CAACa,WAAW;MACrCX,aAAa,EAAE;IACjB,CAAC,CAAC;IAEF,IAAI,CAACF,OAAO,CAACc,WAAW,GAAG,IAAI;IAE/B,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBP,QAAQ,EAAEQ;IACZ,CAAC,CAAC;EACJ;EAEA,IAAIR,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAACD,aAAa,CAACC,QAAQ;EACpC;EAEA,IAAIA,QAAQA,CAACA,QAAkB,EAAE;IAC/B,IAAAS,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACV,aAAa,CAACC,QAAQ,GAAGA,QAAQ;IACxC,CAAC,CAAC;EACJ;EAEA,IAAIR,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACJ,iBAAiB,CAACI,OAAO;EACvC;EAEAkB,IAAIA,CAAA,EAAG;IACL,IAAI,CAACC,QAAQ,CAACC,OAAO,CAAC,YAAY;MAChC,MAAM,IAAI,CAACb,aAAa,CAACW,IAAI,CAAC,CAAC;IACjC,CAAC,CAAC;EACJ;AACF;AAACG,OAAA,CAAAjC,2BAAA,GAAAA,2BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_TableState","_GridState","_mobx","_ToolbarCollectionState","_ViewTypeState","componentType","TableGridSwitchState","constructor","params","_defineProperty2","default","TaskState","container","containerOverrides","collection","tableState","TableState","toolbar","ToolbarCollectionState","reportBi","biParams","componentStatus","viewTypeState","viewType","gridState","GridState","ViewTypeState","dataCapsule","layoutState","makeObservable","computed","runInAction","init","initTask","runOnce","status","promise","exports"],"sources":["../../../src/state/TableGridSwitchState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n TaskState,\n WixPatternsContainer,\n WixPatternsContainerParams,\n} from '@wix/bex-core';\nimport { TableState } from './TableState';\nimport { GridState } from './GridState';\nimport { computed, makeObservable, runInAction } from 'mobx';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { ViewTypeState } from './ViewTypeState';\nimport { ICollectionComponentState } from './ICollectionComponentState';\n\nexport interface TableGridSwitchStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n}\ntype ViewType = 'table' | 'grid';\nconst componentType = 'TableGridSwitch';\nexport class TableGridSwitchState<T, F extends FiltersMap>\n implements ICollectionComponentState\n{\n collection: CollectionState<T, F>;\n readonly container;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n readonly initTask = new TaskState();\n readonly gridState: GridState<T, F>;\n readonly tableState: TableState<T, F>;\n readonly viewTypeState: ViewTypeState;\n\n constructor(params: TableGridSwitchStateParams<T, F>) {\n this.container = params.container;\n this.containerOverrides = params.containerOverrides;\n\n this.collection = params.collection;\n\n this.tableState = new TableState({\n collection: this.collection,\n container: this.container,\n toolbar: new ToolbarCollectionState({\n componentType,\n collection: this.collection,\n container: this.container,\n reportBi: (biParams) =>\n this.container.reportBi({\n ...biParams,\n params: {\n ...biParams.params,\n componentStatus: this.viewTypeState.viewType,\n },\n }),\n }),\n });\n\n this.gridState = new GridState({\n collection: this.collection,\n container: this.container,\n toolbar: this.tableState.toolbar,\n });\n\n this.viewTypeState = new ViewTypeState({\n container: this.container,\n dataCapsule: this.toolbar.dataCapsule,\n componentType,\n collection: this.collection,\n });\n\n this.toolbar.layoutState = this;\n\n makeObservable(this, {\n viewType: computed,\n });\n }\n\n get viewType() {\n return this.viewTypeState.viewType;\n }\n\n set viewType(viewType: ViewType) {\n runInAction(() => {\n this.viewTypeState.viewType = viewType;\n });\n }\n\n get toolbar() {\n return this.tableState.toolbar;\n }\n\n init() {\n const { viewTypeState, initTask } = this;\n viewTypeState.init();\n\n initTask.runOnce(async () => {\n viewTypeState.initTask.runOnce();\n\n await viewTypeState.initTask.status.promise;\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_TableState","_GridState","_mobx","_ToolbarCollectionState","_ViewTypeState","componentType","TableGridSwitchState","constructor","params","_defineProperty2","default","TaskState","container","containerOverrides","collection","tableState","TableState","toolbar","ToolbarCollectionState","reportBi","biParams","componentStatus","viewTypeState","viewType","gridState","GridState","ViewTypeState","dataCapsule","layoutState","makeObservable","computed","runInAction","init","initTask","runOnce","status","promise","exports"],"sources":["../../../src/state/TableGridSwitchState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n TaskState,\n WixPatternsContainer,\n WixPatternsContainerParams,\n} from '@wix/bex-core';\nimport { TableState } from './TableState';\nimport { GridState } from './GridState';\nimport { computed, makeObservable, runInAction } from 'mobx';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { ViewTypeState, ViewType } from './ViewTypeState';\nimport { ICollectionComponentState } from './ICollectionComponentState';\n\nexport interface TableGridSwitchStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n}\nconst componentType = 'TableGridSwitch';\nexport class TableGridSwitchState<T, F extends FiltersMap>\n implements ICollectionComponentState\n{\n collection: CollectionState<T, F>;\n readonly container;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n readonly initTask = new TaskState();\n readonly gridState: GridState<T, F>;\n readonly tableState: TableState<T, F>;\n readonly viewTypeState: ViewTypeState;\n\n constructor(params: TableGridSwitchStateParams<T, F>) {\n this.container = params.container;\n this.containerOverrides = params.containerOverrides;\n\n this.collection = params.collection;\n\n this.tableState = new TableState({\n collection: this.collection,\n container: this.container,\n toolbar: new ToolbarCollectionState({\n componentType,\n collection: this.collection,\n container: this.container,\n reportBi: (biParams) =>\n this.container.reportBi({\n ...biParams,\n params: {\n ...biParams.params,\n componentStatus: this.viewTypeState.viewType,\n },\n }),\n }),\n });\n\n this.gridState = new GridState({\n collection: this.collection,\n container: this.container,\n toolbar: this.tableState.toolbar,\n });\n\n this.viewTypeState = new ViewTypeState({\n container: this.container,\n dataCapsule: this.toolbar.dataCapsule,\n componentType,\n collection: this.collection,\n });\n\n this.toolbar.layoutState = this;\n\n makeObservable(this, {\n viewType: computed,\n });\n }\n\n get viewType() {\n return this.viewTypeState.viewType;\n }\n\n set viewType(viewType: ViewType) {\n runInAction(() => {\n this.viewTypeState.viewType = viewType;\n });\n }\n\n get toolbar() {\n return this.tableState.toolbar;\n }\n\n init() {\n const { viewTypeState, initTask } = this;\n viewTypeState.init();\n\n initTask.runOnce(async () => {\n viewTypeState.initTask.runOnce();\n\n await viewTypeState.initTask.status.promise;\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -10,54 +10,53 @@ class ToolbarLeftGroupState {
10
10
  (0, _defineProperty2.default)(this, "_responsive", void 0);
11
11
  (0, _defineProperty2.default)(this, "_getTabsState", void 0);
12
12
  (0, _defineProperty2.default)(this, "_element", null);
13
- (0, _defineProperty2.default)(this, "_prevWidth", 0);
13
+ (0, _defineProperty2.default)(this, "_tabsWidthTimeout", null);
14
14
  (0, _defineProperty2.default)(this, "mode", void 0);
15
15
  (0, _defineProperty2.default)(this, "minWidth", void 0);
16
- (0, _defineProperty2.default)(this, "EXPANSION_THRESHOLD", 20);
17
16
  (0, _defineProperty2.default)(this, "_handleResize", () => {
18
17
  const element = this._element;
19
18
  if (!element) {
20
19
  return;
21
20
  }
22
- const width = element.clientWidth;
23
- const prevWidth = this._prevWidth;
24
- const isAtMinWidth = width <= this.minWidth + 2; // 2px tolerance
25
- const isGrowing = width > prevWidth;
26
- const hasSpaceToExpand = width > this.minWidth + this.EXPANSION_THRESHOLD;
27
- if (isAtMinWidth) {
28
- this._responsive.overflow._scrollWidth = this._responsive.overflow._clientWidth + 1;
29
- this._responsive._nextToShrink._shrinkIfNeeded();
30
- } else if (isGrowing && hasSpaceToExpand) {
31
- const availableSpace = width - this.minWidth;
32
- this._responsive._nextToExpand._expandIfNeeded({
33
- preCalculatedAvailableSpace: availableSpace
34
- });
35
- }
36
21
  if (this.mode === 'tabs') {
37
- var _this$_getTabsState;
38
- const tabsState = (_this$_getTabsState = this._getTabsState) == null ? void 0 : _this$_getTabsState.call(this);
39
- tabsState == null || tabsState.responsive.setAvailableWidth(width);
22
+ if (this._tabsWidthTimeout) {
23
+ clearTimeout(this._tabsWidthTimeout);
24
+ }
25
+ this._tabsWidthTimeout = setTimeout(() => {
26
+ var _this$_getTabsState;
27
+ this._tabsWidthTimeout = null;
28
+ if (!this._element) return;
29
+ const tabsState = (_this$_getTabsState = this._getTabsState) == null ? void 0 : _this$_getTabsState.call(this);
30
+ tabsState == null || tabsState.responsive.setAvailableWidth(this._element.clientWidth);
31
+ }, 300);
40
32
  }
41
- this._prevWidth = width;
33
+ this._responsive._scheduleRecompute();
42
34
  });
43
35
  this._responsive = params.responsive;
44
36
  this.mode = params.mode;
45
37
  this.minWidth = params.minWidth;
46
38
  this._getTabsState = params.getTabsState;
47
39
  }
40
+ getExcessWidth() {
41
+ if (!this._element) {
42
+ return 0;
43
+ }
44
+ return Math.max(0, this._element.clientWidth - this.minWidth);
45
+ }
48
46
  init(element) {
49
47
  this._element = null;
50
- this._prevWidth = 0;
51
48
  if (!element) {
52
49
  return () => {};
53
50
  }
54
51
  this._element = element;
55
52
  const disposer = (0, _bexCore.addResizeObserver)(element, this._handleResize);
56
- this._handleResize();
57
53
  return () => {
58
54
  disposer == null || disposer();
55
+ if (this._tabsWidthTimeout) {
56
+ clearTimeout(this._tabsWidthTimeout);
57
+ this._tabsWidthTimeout = null;
58
+ }
59
59
  this._element = null;
60
- this._prevWidth = 0;
61
60
  };
62
61
  }
63
62
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","ToolbarLeftGroupState","constructor","params","_defineProperty2","default","element","_element","width","clientWidth","prevWidth","_prevWidth","isAtMinWidth","minWidth","isGrowing","hasSpaceToExpand","EXPANSION_THRESHOLD","_responsive","overflow","_scrollWidth","_clientWidth","_nextToShrink","_shrinkIfNeeded","availableSpace","_nextToExpand","_expandIfNeeded","preCalculatedAvailableSpace","mode","_this$_getTabsState","tabsState","_getTabsState","call","responsive","setAvailableWidth","getTabsState","init","disposer","addResizeObserver","_handleResize","exports"],"sources":["../../../../src/state/Toolbar/ToolbarLeftGroupState.ts"],"sourcesContent":["import { addResizeObserver } from '@wix/bex-core';\nimport type { ToolbarResponsiveState } from './ToolbarResponsiveState';\nimport type { TabsFilterState } from '../../components/TabsFilter/TabsFilterState';\nimport type { FiltersMap } from '@wix/bex-core';\nimport { ToolbarMode } from '../../components/CollectionToolbar/toolbarModeUtils';\n\nexport interface ToolbarLeftGroupStateParams<T, F extends FiltersMap> {\n readonly responsive: ToolbarResponsiveState;\n readonly mode: ToolbarMode;\n readonly minWidth: number;\n readonly getTabsState?: () => TabsFilterState<T, F> | null | undefined;\n}\n\nexport class ToolbarLeftGroupState<T, F extends FiltersMap> {\n private readonly _responsive: ToolbarResponsiveState;\n private readonly _getTabsState?: () =>\n | TabsFilterState<T, F>\n | null\n | undefined;\n\n private _element: HTMLElement | null = null;\n private _prevWidth = 0;\n\n readonly mode: ToolbarMode;\n readonly minWidth: number;\n\n private readonly EXPANSION_THRESHOLD = 20;\n\n constructor(params: ToolbarLeftGroupStateParams<T, F>) {\n this._responsive = params.responsive;\n this.mode = params.mode;\n this.minWidth = params.minWidth;\n this._getTabsState = params.getTabsState;\n }\n\n init(element: HTMLElement | null | undefined): () => void {\n this._element = null;\n this._prevWidth = 0;\n\n if (!element) {\n return () => {};\n }\n\n this._element = element;\n const disposer = addResizeObserver(element, this._handleResize);\n this._handleResize();\n\n return () => {\n disposer?.();\n this._element = null;\n this._prevWidth = 0;\n };\n }\n\n private _handleResize = () => {\n const element = this._element;\n if (!element) {\n return;\n }\n\n const width = element.clientWidth;\n const prevWidth = this._prevWidth;\n const isAtMinWidth = width <= this.minWidth + 2; // 2px tolerance\n const isGrowing = width > prevWidth;\n const hasSpaceToExpand = width > this.minWidth + this.EXPANSION_THRESHOLD;\n\n if (isAtMinWidth) {\n this._responsive.overflow._scrollWidth =\n this._responsive.overflow._clientWidth + 1;\n this._responsive._nextToShrink._shrinkIfNeeded();\n } else if (isGrowing && hasSpaceToExpand) {\n const availableSpace = width - this.minWidth;\n\n this._responsive._nextToExpand._expandIfNeeded({\n preCalculatedAvailableSpace: availableSpace,\n });\n }\n\n if (this.mode === 'tabs') {\n const tabsState = this._getTabsState?.();\n tabsState?.responsive.setAvailableWidth(width);\n }\n\n this._prevWidth = width;\n };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAaO,MAAMC,qBAAqB,CAA0B;EAe1DC,WAAWA,CAACC,MAAyC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBARhB,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,sBACtB,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,+BAKiB,EAAE;IAAA,IAAAD,gBAAA,CAAAC,OAAA,yBA4BjB,MAAM;MAC5B,MAAMC,OAAO,GAAG,IAAI,CAACC,QAAQ;MAC7B,IAAI,CAACD,OAAO,EAAE;QACZ;MACF;MAEA,MAAME,KAAK,GAAGF,OAAO,CAACG,WAAW;MACjC,MAAMC,SAAS,GAAG,IAAI,CAACC,UAAU;MACjC,MAAMC,YAAY,GAAGJ,KAAK,IAAI,IAAI,CAACK,QAAQ,GAAG,CAAC,CAAC,CAAC;MACjD,MAAMC,SAAS,GAAGN,KAAK,GAAGE,SAAS;MACnC,MAAMK,gBAAgB,GAAGP,KAAK,GAAG,IAAI,CAACK,QAAQ,GAAG,IAAI,CAACG,mBAAmB;MAEzE,IAAIJ,YAAY,EAAE;QAChB,IAAI,CAACK,WAAW,CAACC,QAAQ,CAACC,YAAY,GACpC,IAAI,CAACF,WAAW,CAACC,QAAQ,CAACE,YAAY,GAAG,CAAC;QAC5C,IAAI,CAACH,WAAW,CAACI,aAAa,CAACC,eAAe,CAAC,CAAC;MAClD,CAAC,MAAM,IAAIR,SAAS,IAAIC,gBAAgB,EAAE;QACxC,MAAMQ,cAAc,GAAGf,KAAK,GAAG,IAAI,CAACK,QAAQ;QAE5C,IAAI,CAACI,WAAW,CAACO,aAAa,CAACC,eAAe,CAAC;UAC7CC,2BAA2B,EAAEH;QAC/B,CAAC,CAAC;MACJ;MAEA,IAAI,IAAI,CAACI,IAAI,KAAK,MAAM,EAAE;QAAA,IAAAC,mBAAA;QACxB,MAAMC,SAAS,IAAAD,mBAAA,GAAG,IAAI,CAACE,aAAa,qBAAlBF,mBAAA,CAAAG,IAAA,KAAqB,CAAC;QACxCF,SAAS,YAATA,SAAS,CAAEG,UAAU,CAACC,iBAAiB,CAACzB,KAAK,CAAC;MAChD;MAEA,IAAI,CAACG,UAAU,GAAGH,KAAK;IACzB,CAAC;IAvDC,IAAI,CAACS,WAAW,GAAGd,MAAM,CAAC6B,UAAU;IACpC,IAAI,CAACL,IAAI,GAAGxB,MAAM,CAACwB,IAAI;IACvB,IAAI,CAACd,QAAQ,GAAGV,MAAM,CAACU,QAAQ;IAC/B,IAAI,CAACiB,aAAa,GAAG3B,MAAM,CAAC+B,YAAY;EAC1C;EAEAC,IAAIA,CAAC7B,OAAuC,EAAc;IACxD,IAAI,CAACC,QAAQ,GAAG,IAAI;IACpB,IAAI,CAACI,UAAU,GAAG,CAAC;IAEnB,IAAI,CAACL,OAAO,EAAE;MACZ,OAAO,MAAM,CAAC,CAAC;IACjB;IAEA,IAAI,CAACC,QAAQ,GAAGD,OAAO;IACvB,MAAM8B,QAAQ,GAAG,IAAAC,0BAAiB,EAAC/B,OAAO,EAAE,IAAI,CAACgC,aAAa,CAAC;IAC/D,IAAI,CAACA,aAAa,CAAC,CAAC;IAEpB,OAAO,MAAM;MACXF,QAAQ,YAARA,QAAQ,CAAG,CAAC;MACZ,IAAI,CAAC7B,QAAQ,GAAG,IAAI;MACpB,IAAI,CAACI,UAAU,GAAG,CAAC;IACrB,CAAC;EACH;AAiCF;AAAC4B,OAAA,CAAAtC,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","ToolbarLeftGroupState","constructor","params","_defineProperty2","default","element","_element","mode","_tabsWidthTimeout","clearTimeout","setTimeout","_this$_getTabsState","tabsState","_getTabsState","call","responsive","setAvailableWidth","clientWidth","_responsive","_scheduleRecompute","minWidth","getTabsState","getExcessWidth","Math","max","init","disposer","addResizeObserver","_handleResize","exports"],"sources":["../../../../src/state/Toolbar/ToolbarLeftGroupState.ts"],"sourcesContent":["import { addResizeObserver } from '@wix/bex-core';\nimport type { ToolbarResponsiveState } from './ToolbarResponsiveState';\nimport type { TabsFilterState } from '../../components/TabsFilter/TabsFilterState';\nimport type { FiltersMap } from '@wix/bex-core';\nimport { ToolbarMode } from '../../components/CollectionToolbar/toolbarModeUtils';\n\nexport interface ToolbarLeftGroupStateParams<T, F extends FiltersMap> {\n readonly responsive: ToolbarResponsiveState;\n readonly mode: ToolbarMode;\n readonly minWidth: number;\n readonly getTabsState?: () => TabsFilterState<T, F> | null | undefined;\n}\n\nexport class ToolbarLeftGroupState<T, F extends FiltersMap> {\n private readonly _responsive: ToolbarResponsiveState;\n private readonly _getTabsState?: () =>\n | TabsFilterState<T, F>\n | null\n | undefined;\n\n private _element: HTMLElement | null = null;\n private _tabsWidthTimeout: ReturnType<typeof setTimeout> | null = null;\n\n readonly mode: ToolbarMode;\n readonly minWidth: number;\n\n constructor(params: ToolbarLeftGroupStateParams<T, F>) {\n this._responsive = params.responsive;\n this.mode = params.mode;\n this.minWidth = params.minWidth;\n this._getTabsState = params.getTabsState;\n }\n\n getExcessWidth(): number {\n if (!this._element) {\n return 0;\n }\n return Math.max(0, this._element.clientWidth - this.minWidth);\n }\n\n init(element: HTMLElement | null | undefined): () => void {\n this._element = null;\n\n if (!element) {\n return () => {};\n }\n\n this._element = element;\n const disposer = addResizeObserver(element, this._handleResize);\n\n return () => {\n disposer?.();\n if (this._tabsWidthTimeout) {\n clearTimeout(this._tabsWidthTimeout);\n this._tabsWidthTimeout = null;\n }\n this._element = null;\n };\n }\n\n private _handleResize = () => {\n const element = this._element;\n if (!element) {\n return;\n }\n\n if (this.mode === 'tabs') {\n if (this._tabsWidthTimeout) {\n clearTimeout(this._tabsWidthTimeout);\n }\n this._tabsWidthTimeout = setTimeout(() => {\n this._tabsWidthTimeout = null;\n if (!this._element) return;\n const tabsState = this._getTabsState?.();\n tabsState?.responsive.setAvailableWidth(this._element.clientWidth);\n }, 300);\n }\n\n this._responsive._scheduleRecompute();\n };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAaO,MAAMC,qBAAqB,CAA0B;EAa1DC,WAAWA,CAACC,MAAyC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBANhB,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,6BACuB,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,yBAuC9C,MAAM;MAC5B,MAAMC,OAAO,GAAG,IAAI,CAACC,QAAQ;MAC7B,IAAI,CAACD,OAAO,EAAE;QACZ;MACF;MAEA,IAAI,IAAI,CAACE,IAAI,KAAK,MAAM,EAAE;QACxB,IAAI,IAAI,CAACC,iBAAiB,EAAE;UAC1BC,YAAY,CAAC,IAAI,CAACD,iBAAiB,CAAC;QACtC;QACA,IAAI,CAACA,iBAAiB,GAAGE,UAAU,CAAC,MAAM;UAAA,IAAAC,mBAAA;UACxC,IAAI,CAACH,iBAAiB,GAAG,IAAI;UAC7B,IAAI,CAAC,IAAI,CAACF,QAAQ,EAAE;UACpB,MAAMM,SAAS,IAAAD,mBAAA,GAAG,IAAI,CAACE,aAAa,qBAAlBF,mBAAA,CAAAG,IAAA,KAAqB,CAAC;UACxCF,SAAS,YAATA,SAAS,CAAEG,UAAU,CAACC,iBAAiB,CAAC,IAAI,CAACV,QAAQ,CAACW,WAAW,CAAC;QACpE,CAAC,EAAE,GAAG,CAAC;MACT;MAEA,IAAI,CAACC,WAAW,CAACC,kBAAkB,CAAC,CAAC;IACvC,CAAC;IApDC,IAAI,CAACD,WAAW,GAAGhB,MAAM,CAACa,UAAU;IACpC,IAAI,CAACR,IAAI,GAAGL,MAAM,CAACK,IAAI;IACvB,IAAI,CAACa,QAAQ,GAAGlB,MAAM,CAACkB,QAAQ;IAC/B,IAAI,CAACP,aAAa,GAAGX,MAAM,CAACmB,YAAY;EAC1C;EAEAC,cAAcA,CAAA,EAAW;IACvB,IAAI,CAAC,IAAI,CAAChB,QAAQ,EAAE;MAClB,OAAO,CAAC;IACV;IACA,OAAOiB,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAClB,QAAQ,CAACW,WAAW,GAAG,IAAI,CAACG,QAAQ,CAAC;EAC/D;EAEAK,IAAIA,CAACpB,OAAuC,EAAc;IACxD,IAAI,CAACC,QAAQ,GAAG,IAAI;IAEpB,IAAI,CAACD,OAAO,EAAE;MACZ,OAAO,MAAM,CAAC,CAAC;IACjB;IAEA,IAAI,CAACC,QAAQ,GAAGD,OAAO;IACvB,MAAMqB,QAAQ,GAAG,IAAAC,0BAAiB,EAACtB,OAAO,EAAE,IAAI,CAACuB,aAAa,CAAC;IAE/D,OAAO,MAAM;MACXF,QAAQ,YAARA,QAAQ,CAAG,CAAC;MACZ,IAAI,IAAI,CAAClB,iBAAiB,EAAE;QAC1BC,YAAY,CAAC,IAAI,CAACD,iBAAiB,CAAC;QACpC,IAAI,CAACA,iBAAiB,GAAG,IAAI;MAC/B;MACA,IAAI,CAACF,QAAQ,GAAG,IAAI;IACtB,CAAC;EACH;AAsBF;AAACuB,OAAA,CAAA7B,qBAAA,GAAAA,qBAAA","ignoreList":[]}
@@ -8,25 +8,16 @@ var _mobx = require("mobx");
8
8
  class ToolbarResponsivePriorityState {
9
9
  constructor(params) {
10
10
  (0, _defineProperty2.default)(this, "responsive", void 0);
11
- (0, _defineProperty2.default)(this, "getNextToShrink", void 0);
12
- (0, _defineProperty2.default)(this, "getNextToExpand", void 0);
13
- (0, _defineProperty2.default)(this, "_count", void 0);
14
- (0, _defineProperty2.default)(this, "_minWidth", void 0);
15
- (0, _defineProperty2.default)(this, "_collapsedWidth", void 0);
11
+ (0, _defineProperty2.default)(this, "expandedWidth", void 0);
12
+ (0, _defineProperty2.default)(this, "collapsedWidth", void 0);
16
13
  (0, _defineProperty2.default)(this, "_shouldShrink", false);
17
14
  (0, _defineProperty2.default)(this, "_groupElement", null);
18
- this._count = params.count;
19
- this._minWidth = params.minWidth ?? 0;
20
- this._collapsedWidth = params.minWidth ?? 0;
15
+ this.expandedWidth = params.expandedWidth ?? 0;
16
+ this.collapsedWidth = params.collapsedWidth ?? 0;
21
17
  this.responsive = params.responsive;
22
- this.getNextToShrink = params.getNextToShrink;
23
- this.getNextToExpand = params.getNextToExpand;
24
18
  (0, _mobx.makeObservable)(this, {
25
- _minWidth: _mobx.observable.ref,
26
19
  _shouldShrink: _mobx.observable.ref,
27
- _syncWidth: _mobx.action,
28
- _expandIfNeeded: _mobx.action,
29
- _shrinkIfNeeded: _mobx.action
20
+ _syncWidth: _mobx.action
30
21
  });
31
22
  }
32
23
  _syncWidth() {
@@ -41,67 +32,13 @@ class ToolbarResponsivePriorityState {
41
32
  if (!_groupElement) {
42
33
  return;
43
34
  }
35
+ const measured = _groupElement.scrollWidth;
44
36
  if (_shouldShrink) {
45
- this._collapsedWidth = _groupElement.scrollWidth;
37
+ this.collapsedWidth = measured;
46
38
  } else {
47
- this._minWidth = _groupElement.scrollWidth;
39
+ this.expandedWidth = measured;
48
40
  }
49
- }
50
- _expandIfNeeded({
51
- preCalculatedAvailableSpace
52
- } = {}) {
53
- const {
54
- responsive,
55
- _collapsedWidth
56
- } = this;
57
- const {
58
- _nextToExpand,
59
- actionsAvailableSpace: {
60
- available
61
- }
62
- } = responsive;
63
- if (responsive._expandCooldown) {
64
- return;
65
- }
66
- if (_nextToExpand !== this || (preCalculatedAvailableSpace ?? available) + _collapsedWidth <= this._minWidth || !this._shouldShrink) {
67
- return;
68
- }
69
- this._shouldShrink = false;
70
- responsive._nextToExpand = _nextToExpand.getNextToExpand();
71
- responsive._nextToShrink = this;
72
- responsive.actionsAvailableSpace._syncThrottled();
73
- const spaceUsed = this._minWidth - _collapsedWidth;
74
- const availableAfterExpand = (preCalculatedAvailableSpace ?? available) - spaceUsed;
75
- if (availableAfterExpand > 0) {
76
- responsive._nextToExpand._expandIfNeeded({
77
- preCalculatedAvailableSpace: availableAfterExpand
78
- });
79
- }
80
- }
81
- _shrinkIfNeeded() {
82
- const {
83
- responsive
84
- } = this;
85
- const {
86
- _nextToShrink,
87
- overflow
88
- } = responsive;
89
- if (_nextToShrink !== this || !overflow._isOverflowing || this._shouldShrink) {
90
- return;
91
- }
92
- this._shouldShrink = true;
93
- responsive._nextToShrink = _nextToShrink.getNextToShrink();
94
- responsive._nextToExpand = this;
95
-
96
- // Double rAF ensures the shrink is fully painted before allowing expansion.
97
- // Single rAF can cause flickering because layout may not be settled yet.
98
- responsive._expandCooldown = true;
99
- window.requestAnimationFrame(() => {
100
- window.requestAnimationFrame(() => {
101
- responsive._expandCooldown = false;
102
- });
103
- });
104
- responsive.overflow._syncThrottled();
41
+ responsive._scheduleRecompute();
105
42
  }
106
43
  }
107
44
  exports.ToolbarResponsivePriorityState = ToolbarResponsivePriorityState;
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","ToolbarResponsivePriorityState","constructor","params","_defineProperty2","default","_count","count","_minWidth","minWidth","_collapsedWidth","responsive","getNextToShrink","getNextToExpand","makeObservable","observable","ref","_shouldShrink","_syncWidth","action","_expandIfNeeded","_shrinkIfNeeded","_groupElement","responsiveDisabled","scrollWidth","preCalculatedAvailableSpace","_nextToExpand","actionsAvailableSpace","available","_expandCooldown","_nextToShrink","_syncThrottled","spaceUsed","availableAfterExpand","overflow","_isOverflowing","window","requestAnimationFrame","exports"],"sources":["../../../../src/state/Toolbar/ToolbarResponsivePriorityState.ts"],"sourcesContent":["import { ToolbarResponsiveState } from './ToolbarResponsiveState';\nimport { action, makeObservable, observable } from 'mobx';\n\nexport interface ToolbarResponsivePriorityStateParams {\n responsive: ToolbarResponsiveState;\n getNextToShrink: () => ToolbarResponsivePriorityState;\n getNextToExpand: () => ToolbarResponsivePriorityState;\n count: number;\n minWidth?: number;\n}\n\nexport class ToolbarResponsivePriorityState {\n readonly responsive: ToolbarResponsiveState;\n getNextToShrink: () => ToolbarResponsivePriorityState;\n getNextToExpand: () => ToolbarResponsivePriorityState;\n readonly _count: number;\n\n _minWidth: number;\n _collapsedWidth: number;\n\n _shouldShrink = false;\n\n _groupElement: HTMLElement | null = null;\n\n constructor(params: ToolbarResponsivePriorityStateParams) {\n this._count = params.count;\n\n this._minWidth = params.minWidth ?? 0;\n this._collapsedWidth = params.minWidth ?? 0;\n\n this.responsive = params.responsive;\n this.getNextToShrink = params.getNextToShrink;\n this.getNextToExpand = params.getNextToExpand;\n\n makeObservable(this, {\n _minWidth: observable.ref,\n _shouldShrink: observable.ref,\n _syncWidth: action,\n _expandIfNeeded: action,\n _shrinkIfNeeded: action,\n });\n }\n\n _syncWidth() {\n const { _groupElement, _shouldShrink, responsive } = this;\n if (responsive.responsiveDisabled) {\n return;\n }\n if (!_groupElement) {\n return;\n }\n if (_shouldShrink) {\n this._collapsedWidth = _groupElement.scrollWidth;\n } else {\n this._minWidth = _groupElement.scrollWidth;\n }\n }\n\n _expandIfNeeded({\n preCalculatedAvailableSpace,\n }: {\n preCalculatedAvailableSpace?: number;\n } = {}) {\n const { responsive, _collapsedWidth } = this;\n\n const {\n _nextToExpand,\n actionsAvailableSpace: { available },\n } = responsive;\n\n if (responsive._expandCooldown) {\n return;\n }\n\n if (\n _nextToExpand !== this ||\n (preCalculatedAvailableSpace ?? available) + _collapsedWidth <=\n this._minWidth ||\n !this._shouldShrink\n ) {\n return;\n }\n\n this._shouldShrink = false;\n responsive._nextToExpand = _nextToExpand.getNextToExpand();\n responsive._nextToShrink = this;\n responsive.actionsAvailableSpace._syncThrottled();\n\n const spaceUsed = this._minWidth - _collapsedWidth;\n const availableAfterExpand =\n (preCalculatedAvailableSpace ?? available) - spaceUsed;\n if (availableAfterExpand > 0) {\n responsive._nextToExpand._expandIfNeeded({\n preCalculatedAvailableSpace: availableAfterExpand,\n });\n }\n }\n\n _shrinkIfNeeded() {\n const { responsive } = this;\n\n const { _nextToShrink, overflow } = responsive;\n\n if (\n _nextToShrink !== this ||\n !overflow._isOverflowing ||\n this._shouldShrink\n ) {\n return;\n }\n\n this._shouldShrink = true;\n responsive._nextToShrink = _nextToShrink.getNextToShrink();\n responsive._nextToExpand = this;\n\n // Double rAF ensures the shrink is fully painted before allowing expansion.\n // Single rAF can cause flickering because layout may not be settled yet.\n responsive._expandCooldown = true;\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n responsive._expandCooldown = false;\n });\n });\n\n responsive.overflow._syncThrottled();\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","ToolbarResponsivePriorityState","constructor","params","_defineProperty2","default","expandedWidth","collapsedWidth","responsive","makeObservable","_shouldShrink","observable","ref","_syncWidth","action","_groupElement","responsiveDisabled","measured","scrollWidth","_scheduleRecompute","exports"],"sources":["../../../../src/state/Toolbar/ToolbarResponsivePriorityState.ts"],"sourcesContent":["import { ToolbarResponsiveState } from './ToolbarResponsiveState';\nimport { action, makeObservable, observable } from 'mobx';\n\nexport interface ToolbarResponsivePriorityStateParams {\n responsive: ToolbarResponsiveState;\n expandedWidth?: number;\n collapsedWidth?: number;\n}\n\nexport class ToolbarResponsivePriorityState {\n readonly responsive: ToolbarResponsiveState;\n\n expandedWidth: number;\n collapsedWidth: number;\n\n _shouldShrink = false;\n\n _groupElement: HTMLElement | null = null;\n\n constructor(params: ToolbarResponsivePriorityStateParams) {\n this.expandedWidth = params.expandedWidth ?? 0;\n this.collapsedWidth = params.collapsedWidth ?? 0;\n\n this.responsive = params.responsive;\n\n makeObservable(this, {\n _shouldShrink: observable.ref,\n _syncWidth: action,\n });\n }\n\n _syncWidth() {\n const { _groupElement, _shouldShrink, responsive } = this;\n if (responsive.responsiveDisabled) {\n return;\n }\n if (!_groupElement) {\n return;\n }\n const measured = _groupElement.scrollWidth;\n if (_shouldShrink) {\n this.collapsedWidth = measured;\n } else {\n this.expandedWidth = measured;\n }\n responsive._scheduleRecompute();\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AAQO,MAAMC,8BAA8B,CAAC;EAU1CC,WAAWA,CAACC,MAA4C,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,yBAJ1C,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA,yBAEe,IAAI;IAGtC,IAAI,CAACC,aAAa,GAAGH,MAAM,CAACG,aAAa,IAAI,CAAC;IAC9C,IAAI,CAACC,cAAc,GAAGJ,MAAM,CAACI,cAAc,IAAI,CAAC;IAEhD,IAAI,CAACC,UAAU,GAAGL,MAAM,CAACK,UAAU;IAEnC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,aAAa,EAAEC,gBAAU,CAACC,GAAG;MAC7BC,UAAU,EAAEC;IACd,CAAC,CAAC;EACJ;EAEAD,UAAUA,CAAA,EAAG;IACX,MAAM;MAAEE,aAAa;MAAEL,aAAa;MAAEF;IAAW,CAAC,GAAG,IAAI;IACzD,IAAIA,UAAU,CAACQ,kBAAkB,EAAE;MACjC;IACF;IACA,IAAI,CAACD,aAAa,EAAE;MAClB;IACF;IACA,MAAME,QAAQ,GAAGF,aAAa,CAACG,WAAW;IAC1C,IAAIR,aAAa,EAAE;MACjB,IAAI,CAACH,cAAc,GAAGU,QAAQ;IAChC,CAAC,MAAM;MACL,IAAI,CAACX,aAAa,GAAGW,QAAQ;IAC/B;IACAT,UAAU,CAACW,kBAAkB,CAAC,CAAC;EACjC;AACF;AAACC,OAAA,CAAAnB,8BAAA,GAAAA,8BAAA","ignoreList":[]}
@@ -6,9 +6,14 @@ exports.ToolbarResponsiveState = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _bexCore = require("@wix/bex-core");
8
8
  var _mobx = require("mobx");
9
- var _HorizontalSpaceAvailableState = require("../Responsive/HorizontalSpaceAvailableState");
10
9
  var _ToolbarResponsivePriorityState = require("./ToolbarResponsivePriorityState");
11
- var _HorizontalOverflowState = require("../Responsive/HorizontalOverflowState");
10
+ var _computeResponsiveTargetState = require("./computeResponsiveTargetState");
11
+ var _toolbarResponsiveConstants = require("./toolbarResponsiveConstants");
12
+ // Buffer (in px) added to the expand threshold to prevent flickering near the
13
+ // expand/collapse boundary. Tuned to ~2-3x the inter-element gap (SP2 = 12px) --
14
+ // large enough to absorb measurement rounding and flex reflow, small enough that
15
+ // the dead zone per group isn't visually noticeable during gradual resizing.
16
+ const EXPAND_THRESHOLD_BUFFER = 30;
12
17
  class ToolbarResponsiveState {
13
18
  get container() {
14
19
  return this.toolbar.toolbar.container;
@@ -17,45 +22,29 @@ class ToolbarResponsiveState {
17
22
  (0, _defineProperty2.default)(this, "actions", void 0);
18
23
  (0, _defineProperty2.default)(this, "search", void 0);
19
24
  (0, _defineProperty2.default)(this, "filters", void 0);
20
- (0, _defineProperty2.default)(this, "_nextToShrink", void 0);
21
- (0, _defineProperty2.default)(this, "_nextToExpand", void 0);
22
- (0, _defineProperty2.default)(this, "_expandCooldown", false);
23
- (0, _defineProperty2.default)(this, "actionsAvailableSpace", void 0);
24
- (0, _defineProperty2.default)(this, "overflow", void 0);
25
+ (0, _defineProperty2.default)(this, "_groups", void 0);
26
+ (0, _defineProperty2.default)(this, "_measurementElement", null);
27
+ (0, _defineProperty2.default)(this, "_contentElement", null);
25
28
  (0, _defineProperty2.default)(this, "toolbar", void 0);
26
29
  (0, _defineProperty2.default)(this, "leftGroupState", null);
30
+ (0, _defineProperty2.default)(this, "_recomputeThrottled", void 0);
31
+ (0, _defineProperty2.default)(this, "_rafId", 0);
27
32
  this.toolbar = params.toolbar;
28
- this.overflow = new _HorizontalOverflowState.HorizontalOverflowState({
29
- state: this
30
- });
31
33
  this.actions = new _ToolbarResponsivePriorityState.ToolbarResponsivePriorityState({
32
- responsive: this,
33
- getNextToShrink: () => this.filters,
34
- getNextToExpand: () => this.actions,
35
- count: 1
34
+ responsive: this
36
35
  });
37
36
  this.filters = new _ToolbarResponsivePriorityState.ToolbarResponsivePriorityState({
38
- responsive: this,
39
- getNextToShrink: () => this.search,
40
- getNextToExpand: () => this.actions,
41
- count: 2
37
+ responsive: this
42
38
  });
43
39
  this.search = new _ToolbarResponsivePriorityState.ToolbarResponsivePriorityState({
44
40
  responsive: this,
45
- getNextToShrink: () => this.search,
46
- getNextToExpand: () => this.filters,
47
- count: 3,
48
- minWidth: 140
49
- });
50
- this._nextToShrink = this.actions;
51
- this._nextToExpand = this.actions;
52
- this.actionsAvailableSpace = new _HorizontalSpaceAvailableState.HorizontalSpaceAvailableState({
53
- state: this
41
+ expandedWidth: _toolbarResponsiveConstants.SEARCH_EXPANDED_WIDTH,
42
+ collapsedWidth: _toolbarResponsiveConstants.SEARCH_COLLAPSED_WIDTH
54
43
  });
44
+ this._groups = [this.actions, this.filters, this.search];
55
45
  (0, _mobx.makeObservable)(this, {
56
- _nextToShrink: _mobx.observable.ref,
57
- _nextToExpand: _mobx.observable.ref,
58
- responsiveDisabled: _mobx.computed
46
+ responsiveDisabled: _mobx.computed,
47
+ _applyTargetState: _mobx.action
59
48
  });
60
49
  }
61
50
  get responsiveDisabled() {
@@ -71,33 +60,76 @@ class ToolbarResponsiveState {
71
60
  } = this;
72
61
  return !(_syncedProps != null && _syncedProps.useResponsiveLayout) || !(internalExperiments != null && internalExperiments.enabled('specs.cairo.EnableResponsiveToolbar11420'));
73
62
  }
63
+ _scheduleRecompute() {
64
+ var _this$_recomputeThrot;
65
+ if (this.responsiveDisabled) {
66
+ return;
67
+ }
68
+ (_this$_recomputeThrot = this._recomputeThrottled) == null || _this$_recomputeThrot.call(this);
69
+ }
70
+ _computeResponsiveInput() {
71
+ var _this$leftGroupState;
72
+ const el = this._measurementElement;
73
+ const contentEl = this._contentElement;
74
+ if (!el || !contentEl) {
75
+ return null;
76
+ }
77
+
78
+ // The left group (title/tabs/views) has flex:1 and absorbs freed space when
79
+ // right-side items shrink. Account for its excess width so the algorithm sees
80
+ // the true available space and can expand items back when the container grows.
81
+ const leftGroupExcess = ((_this$leftGroupState = this.leftGroupState) == null ? void 0 : _this$leftGroupState.getExcessWidth()) ?? 0;
82
+ const containerWidth = el.clientWidth + leftGroupExcess;
83
+ const contentWidth = contentEl.scrollWidth;
84
+ const groups = this._groups.map(g => ({
85
+ expandedWidth: g.expandedWidth,
86
+ collapsedWidth: g.collapsedWidth,
87
+ currentlyShrunk: g._shouldShrink
88
+ }));
89
+ const groupsTotal = groups.reduce((sum, g) => sum + (g.currentlyShrunk ? g.collapsedWidth : g.expandedWidth), 0);
90
+ return {
91
+ availableWidth: containerWidth - (contentWidth - groupsTotal),
92
+ groups
93
+ };
94
+ }
95
+ _applyTargetState() {
96
+ const input = this._computeResponsiveInput();
97
+ if (!input) {
98
+ return;
99
+ }
100
+ const result = (0, _computeResponsiveTargetState.computeResponsiveTargetState)({
101
+ ...input,
102
+ expandThresholdBuffer: EXPAND_THRESHOLD_BUFFER
103
+ });
104
+ this._groups.forEach((g, i) => {
105
+ g._shouldShrink = result[i].shouldShrink;
106
+ });
107
+ }
74
108
  init() {
75
109
  const {
76
- toolbar: {
77
- toolbar
78
- },
79
- overflow,
80
- actionsAvailableSpace,
81
110
  responsiveDisabled
82
111
  } = this;
83
112
  if (responsiveDisabled) {
84
- return;
113
+ return () => {};
114
+ }
115
+ this._recomputeThrottled = this.container.lodash.throttle(() => {
116
+ this._rafId = window.requestAnimationFrame(() => {
117
+ (0, _mobx.runInAction)(() => this._applyTargetState());
118
+ });
119
+ }, 200);
120
+ const containerEl = this.toolbar.toolbar.toolbarRect.element;
121
+ if (!containerEl) {
122
+ return () => {
123
+ var _this$_recomputeThrot2;
124
+ (_this$_recomputeThrot2 = this._recomputeThrottled) == null || _this$_recomputeThrot2.cancel();
125
+ };
85
126
  }
86
- const disposers = [(0, _bexCore.addResizeObserver)(toolbar.toolbarRect.element, actionsAvailableSpace._syncThrottled), (0, _mobx.reaction)(() => ({
87
- _isOverflowing: overflow._isOverflowing,
88
- _scrollWidth: overflow._scrollWidth,
89
- _clientWidth: overflow._clientWidth
90
- }), () => {
91
- this._nextToShrink._shrinkIfNeeded();
92
- }, {
93
- fireImmediately: true
94
- }), (0, _mobx.reaction)(() => actionsAvailableSpace.available, () => {
95
- this._nextToExpand._expandIfNeeded();
96
- }, {
97
- fireImmediately: true
98
- })];
127
+ const disposers = [(0, _bexCore.addResizeObserver)(containerEl, this._recomputeThrottled)];
99
128
  return () => {
129
+ var _this$_recomputeThrot3;
100
130
  disposers.forEach(d => d == null ? void 0 : d());
131
+ (_this$_recomputeThrot3 = this._recomputeThrottled) == null || _this$_recomputeThrot3.cancel();
132
+ cancelAnimationFrame(this._rafId);
101
133
  };
102
134
  }
103
135
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","_HorizontalSpaceAvailableState","_ToolbarResponsivePriorityState","_HorizontalOverflowState","ToolbarResponsiveState","container","toolbar","constructor","params","_defineProperty2","default","overflow","HorizontalOverflowState","state","actions","ToolbarResponsivePriorityState","responsive","getNextToShrink","filters","getNextToExpand","count","search","minWidth","_nextToShrink","_nextToExpand","actionsAvailableSpace","HorizontalSpaceAvailableState","makeObservable","observable","ref","responsiveDisabled","computed","_syncedProps","internalExperiments","useResponsiveLayout","enabled","init","disposers","addResizeObserver","toolbarRect","element","_syncThrottled","reaction","_isOverflowing","_scrollWidth","_clientWidth","_shrinkIfNeeded","fireImmediately","available","_expandIfNeeded","forEach","d","exports"],"sources":["../../../../src/state/Toolbar/ToolbarResponsiveState.ts"],"sourcesContent":["import { addResizeObserver } from '@wix/bex-core';\nimport { computed, makeObservable, observable, reaction } from 'mobx';\nimport { HorizontalSpaceAvailableState } from '../Responsive/HorizontalSpaceAvailableState';\nimport { ToolbarResponsivePriorityState } from './ToolbarResponsivePriorityState';\nimport { HorizontalOverflowState } from '../Responsive/HorizontalOverflowState';\nimport { ToolbarState } from '../../components/CollectionToolbars/ToolbarState';\nimport { ToolbarLeftGroupState } from './ToolbarLeftGroupState';\n\nexport interface ToolbarResponsiveStateParams {\n readonly toolbar: ToolbarState<any, any>;\n}\n\nexport class ToolbarResponsiveState {\n readonly actions: ToolbarResponsivePriorityState;\n readonly search: ToolbarResponsivePriorityState;\n readonly filters: ToolbarResponsivePriorityState;\n\n _nextToShrink: ToolbarResponsivePriorityState;\n _nextToExpand: ToolbarResponsivePriorityState;\n\n _expandCooldown = false;\n\n readonly actionsAvailableSpace: HorizontalSpaceAvailableState;\n readonly overflow: HorizontalOverflowState;\n\n readonly toolbar: ToolbarState<any, any>;\n\n leftGroupState: ToolbarLeftGroupState<any, any> | null = null;\n\n get container() {\n return this.toolbar.toolbar.container;\n }\n\n constructor(params: ToolbarResponsiveStateParams) {\n this.toolbar = params.toolbar;\n\n this.overflow = new HorizontalOverflowState({\n state: this,\n });\n\n this.actions = new ToolbarResponsivePriorityState({\n responsive: this,\n getNextToShrink: () => this.filters,\n getNextToExpand: () => this.actions,\n count: 1,\n });\n\n this.filters = new ToolbarResponsivePriorityState({\n responsive: this,\n getNextToShrink: () => this.search,\n getNextToExpand: () => this.actions,\n count: 2,\n });\n\n this.search = new ToolbarResponsivePriorityState({\n responsive: this,\n getNextToShrink: () => this.search,\n getNextToExpand: () => this.filters,\n count: 3,\n minWidth: 140,\n });\n\n this._nextToShrink = this.actions;\n this._nextToExpand = this.actions;\n\n this.actionsAvailableSpace = new HorizontalSpaceAvailableState({\n state: this,\n });\n\n makeObservable(this, {\n _nextToShrink: observable.ref,\n _nextToExpand: observable.ref,\n responsiveDisabled: computed,\n });\n }\n\n get responsiveDisabled() {\n const {\n toolbar: {\n toolbar: { _syncedProps },\n },\n container: { internalExperiments },\n } = this;\n\n return (\n !_syncedProps?.useResponsiveLayout ||\n !internalExperiments?.enabled('specs.cairo.EnableResponsiveToolbar11420')\n );\n }\n\n init() {\n const {\n toolbar: { toolbar },\n overflow,\n actionsAvailableSpace,\n responsiveDisabled,\n } = this;\n\n if (responsiveDisabled) {\n return;\n }\n\n const disposers = [\n addResizeObserver(\n toolbar.toolbarRect.element,\n actionsAvailableSpace._syncThrottled,\n ),\n reaction(\n () => ({\n _isOverflowing: overflow._isOverflowing,\n _scrollWidth: overflow._scrollWidth,\n _clientWidth: overflow._clientWidth,\n }),\n () => {\n this._nextToShrink._shrinkIfNeeded();\n },\n {\n fireImmediately: true,\n },\n ),\n reaction(\n () => actionsAvailableSpace.available,\n () => {\n this._nextToExpand._expandIfNeeded();\n },\n {\n fireImmediately: true,\n },\n ),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_mobx","_ToolbarResponsivePriorityState","_computeResponsiveTargetState","_toolbarResponsiveConstants","EXPAND_THRESHOLD_BUFFER","ToolbarResponsiveState","container","toolbar","constructor","params","_defineProperty2","default","actions","ToolbarResponsivePriorityState","responsive","filters","search","expandedWidth","SEARCH_EXPANDED_WIDTH","collapsedWidth","SEARCH_COLLAPSED_WIDTH","_groups","makeObservable","responsiveDisabled","computed","_applyTargetState","action","_syncedProps","internalExperiments","useResponsiveLayout","enabled","_scheduleRecompute","_this$_recomputeThrot","_recomputeThrottled","call","_computeResponsiveInput","_this$leftGroupState","el","_measurementElement","contentEl","_contentElement","leftGroupExcess","leftGroupState","getExcessWidth","containerWidth","clientWidth","contentWidth","scrollWidth","groups","map","g","currentlyShrunk","_shouldShrink","groupsTotal","reduce","sum","availableWidth","input","result","computeResponsiveTargetState","expandThresholdBuffer","forEach","i","shouldShrink","init","lodash","throttle","_rafId","window","requestAnimationFrame","runInAction","containerEl","toolbarRect","element","_this$_recomputeThrot2","cancel","disposers","addResizeObserver","_this$_recomputeThrot3","d","cancelAnimationFrame","exports"],"sources":["../../../../src/state/Toolbar/ToolbarResponsiveState.ts"],"sourcesContent":["import { addResizeObserver } from '@wix/bex-core';\nimport { action, computed, makeObservable, runInAction } from 'mobx';\nimport { ToolbarResponsivePriorityState } from './ToolbarResponsivePriorityState';\nimport { ToolbarState } from '../../components/CollectionToolbars/ToolbarState';\nimport { ToolbarLeftGroupState } from './ToolbarLeftGroupState';\nimport { computeResponsiveTargetState } from './computeResponsiveTargetState';\nimport {\n SEARCH_COLLAPSED_WIDTH,\n SEARCH_EXPANDED_WIDTH,\n} from './toolbarResponsiveConstants';\n\nexport interface ToolbarResponsiveStateParams {\n readonly toolbar: ToolbarState<any, any>;\n}\n\n// Buffer (in px) added to the expand threshold to prevent flickering near the\n// expand/collapse boundary. Tuned to ~2-3x the inter-element gap (SP2 = 12px) --\n// large enough to absorb measurement rounding and flex reflow, small enough that\n// the dead zone per group isn't visually noticeable during gradual resizing.\nconst EXPAND_THRESHOLD_BUFFER = 30;\n\nexport class ToolbarResponsiveState {\n readonly actions: ToolbarResponsivePriorityState;\n readonly search: ToolbarResponsivePriorityState;\n readonly filters: ToolbarResponsivePriorityState;\n\n private readonly _groups: ToolbarResponsivePriorityState[];\n\n _measurementElement: Element | null = null;\n _contentElement: Element | null = null;\n\n readonly toolbar: ToolbarState<any, any>;\n\n leftGroupState: ToolbarLeftGroupState<any, any> | null = null;\n\n get container() {\n return this.toolbar.toolbar.container;\n }\n\n constructor(params: ToolbarResponsiveStateParams) {\n this.toolbar = params.toolbar;\n\n this.actions = new ToolbarResponsivePriorityState({\n responsive: this,\n });\n\n this.filters = new ToolbarResponsivePriorityState({\n responsive: this,\n });\n\n this.search = new ToolbarResponsivePriorityState({\n responsive: this,\n expandedWidth: SEARCH_EXPANDED_WIDTH,\n collapsedWidth: SEARCH_COLLAPSED_WIDTH,\n });\n\n this._groups = [this.actions, this.filters, this.search];\n\n makeObservable(this, {\n responsiveDisabled: computed,\n _applyTargetState: action,\n });\n }\n\n get responsiveDisabled() {\n const {\n toolbar: {\n toolbar: { _syncedProps },\n },\n container: { internalExperiments },\n } = this;\n\n return (\n !_syncedProps?.useResponsiveLayout ||\n !internalExperiments?.enabled('specs.cairo.EnableResponsiveToolbar11420')\n );\n }\n\n _scheduleRecompute() {\n if (this.responsiveDisabled) {\n return;\n }\n this._recomputeThrottled?.();\n }\n\n private _computeResponsiveInput() {\n const el = this._measurementElement;\n const contentEl = this._contentElement;\n if (!el || !contentEl) {\n return null;\n }\n\n // The left group (title/tabs/views) has flex:1 and absorbs freed space when\n // right-side items shrink. Account for its excess width so the algorithm sees\n // the true available space and can expand items back when the container grows.\n const leftGroupExcess = this.leftGroupState?.getExcessWidth() ?? 0;\n const containerWidth = el.clientWidth + leftGroupExcess;\n const contentWidth = contentEl.scrollWidth;\n\n const groups = this._groups.map((g) => ({\n expandedWidth: g.expandedWidth,\n collapsedWidth: g.collapsedWidth,\n currentlyShrunk: g._shouldShrink,\n }));\n\n const groupsTotal = groups.reduce(\n (sum, g) => sum + (g.currentlyShrunk ? g.collapsedWidth : g.expandedWidth),\n 0,\n );\n\n return {\n availableWidth: containerWidth - (contentWidth - groupsTotal),\n groups,\n };\n }\n\n _applyTargetState() {\n const input = this._computeResponsiveInput();\n if (!input) {\n return;\n }\n\n const result = computeResponsiveTargetState({\n ...input,\n expandThresholdBuffer: EXPAND_THRESHOLD_BUFFER,\n });\n\n this._groups.forEach((g, i) => {\n g._shouldShrink = result[i].shouldShrink;\n });\n }\n\n private _recomputeThrottled?: ReturnType<typeof this.container.lodash.throttle>;\n private _rafId = 0;\n\n init() {\n const { responsiveDisabled } = this;\n\n if (responsiveDisabled) {\n return () => {};\n }\n\n this._recomputeThrottled = this.container.lodash.throttle(() => {\n this._rafId = window.requestAnimationFrame(() => {\n runInAction(() => this._applyTargetState());\n });\n }, 200);\n\n const containerEl =\n this.toolbar.toolbar.toolbarRect.element;\n if (!containerEl) {\n return () => {\n this._recomputeThrottled?.cancel();\n };\n }\n\n const disposers = [\n addResizeObserver(containerEl, this._recomputeThrottled),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n this._recomputeThrottled?.cancel();\n cancelAnimationFrame(this._rafId);\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.computeResponsiveTargetState = computeResponsiveTargetState;
5
+ function computeResponsiveTargetState(params) {
6
+ const {
7
+ availableWidth,
8
+ groups,
9
+ expandThresholdBuffer
10
+ } = params;
11
+ if (groups.length === 0) {
12
+ return [];
13
+ }
14
+ const result = groups.map(g => ({
15
+ shouldShrink: g.currentlyShrunk
16
+ }));
17
+ const widthOf = (group, index) => result[index].shouldShrink ? group.collapsedWidth : group.expandedWidth;
18
+ let total = groups.reduce((sum, g, i) => sum + widthOf(g, i), 0);
19
+ for (let i = 0; i < groups.length; i++) {
20
+ if (total <= availableWidth) {
21
+ break;
22
+ }
23
+ if (!result[i].shouldShrink) {
24
+ const savings = groups[i].expandedWidth - groups[i].collapsedWidth;
25
+ result[i].shouldShrink = true;
26
+ total -= savings;
27
+ }
28
+ }
29
+ for (let i = groups.length - 1; i >= 0; i--) {
30
+ if (!result[i].shouldShrink) {
31
+ continue;
32
+ }
33
+ const expandCost = groups[i].expandedWidth - groups[i].collapsedWidth;
34
+ if (expandCost === 0) {
35
+ continue;
36
+ }
37
+ if (total + expandCost + expandThresholdBuffer <= availableWidth) {
38
+ result[i].shouldShrink = false;
39
+ total += expandCost;
40
+ } else {
41
+ // Strict priority: if a higher-priority group (lower index) cannot expand,
42
+ // no lower-priority groups should expand either to avoid visual inconsistency.
43
+ break;
44
+ }
45
+ }
46
+ return result;
47
+ }
48
+ //# sourceMappingURL=computeResponsiveTargetState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["computeResponsiveTargetState","params","availableWidth","groups","expandThresholdBuffer","length","result","map","g","shouldShrink","currentlyShrunk","widthOf","group","index","collapsedWidth","expandedWidth","total","reduce","sum","i","savings","expandCost"],"sources":["../../../../src/state/Toolbar/computeResponsiveTargetState.ts"],"sourcesContent":["export interface ResponsiveGroupInput {\n expandedWidth: number;\n collapsedWidth: number;\n currentlyShrunk: boolean;\n}\n\nexport interface ComputeResponsiveTargetStateParams {\n availableWidth: number;\n groups: ResponsiveGroupInput[];\n expandThresholdBuffer: number;\n}\n\nexport interface ResponsiveGroupOutput {\n shouldShrink: boolean;\n}\n\nexport function computeResponsiveTargetState(\n params: ComputeResponsiveTargetStateParams,\n): ResponsiveGroupOutput[] {\n const { availableWidth, groups, expandThresholdBuffer } = params;\n\n if (groups.length === 0) {\n return [];\n }\n\n const result: ResponsiveGroupOutput[] = groups.map((g) => ({\n shouldShrink: g.currentlyShrunk,\n }));\n\n const widthOf = (group: ResponsiveGroupInput, index: number) =>\n result[index].shouldShrink ? group.collapsedWidth : group.expandedWidth;\n\n let total = groups.reduce((sum, g, i) => sum + widthOf(g, i), 0);\n\n for (let i = 0; i < groups.length; i++) {\n if (total <= availableWidth) {\n break;\n }\n if (!result[i].shouldShrink) {\n const savings = groups[i].expandedWidth - groups[i].collapsedWidth;\n result[i].shouldShrink = true;\n total -= savings;\n }\n }\n\n for (let i = groups.length - 1; i >= 0; i--) {\n if (!result[i].shouldShrink) {\n continue;\n }\n\n const expandCost = groups[i].expandedWidth - groups[i].collapsedWidth;\n if (expandCost === 0) {\n continue;\n }\n\n if (total + expandCost + expandThresholdBuffer <= availableWidth) {\n result[i].shouldShrink = false;\n total += expandCost;\n } else {\n // Strict priority: if a higher-priority group (lower index) cannot expand,\n // no lower-priority groups should expand either to avoid visual inconsistency.\n break;\n }\n }\n\n return result;\n}\n"],"mappings":";;;;AAgBO,SAASA,4BAA4BA,CAC1CC,MAA0C,EACjB;EACzB,MAAM;IAAEC,cAAc;IAAEC,MAAM;IAAEC;EAAsB,CAAC,GAAGH,MAAM;EAEhE,IAAIE,MAAM,CAACE,MAAM,KAAK,CAAC,EAAE;IACvB,OAAO,EAAE;EACX;EAEA,MAAMC,MAA+B,GAAGH,MAAM,CAACI,GAAG,CAAEC,CAAC,KAAM;IACzDC,YAAY,EAAED,CAAC,CAACE;EAClB,CAAC,CAAC,CAAC;EAEH,MAAMC,OAAO,GAAGA,CAACC,KAA2B,EAAEC,KAAa,KACzDP,MAAM,CAACO,KAAK,CAAC,CAACJ,YAAY,GAAGG,KAAK,CAACE,cAAc,GAAGF,KAAK,CAACG,aAAa;EAEzE,IAAIC,KAAK,GAAGb,MAAM,CAACc,MAAM,CAAC,CAACC,GAAG,EAAEV,CAAC,EAAEW,CAAC,KAAKD,GAAG,GAAGP,OAAO,CAACH,CAAC,EAAEW,CAAC,CAAC,EAAE,CAAC,CAAC;EAEhE,KAAK,IAAIA,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhB,MAAM,CAACE,MAAM,EAAEc,CAAC,EAAE,EAAE;IACtC,IAAIH,KAAK,IAAId,cAAc,EAAE;MAC3B;IACF;IACA,IAAI,CAACI,MAAM,CAACa,CAAC,CAAC,CAACV,YAAY,EAAE;MAC3B,MAAMW,OAAO,GAAGjB,MAAM,CAACgB,CAAC,CAAC,CAACJ,aAAa,GAAGZ,MAAM,CAACgB,CAAC,CAAC,CAACL,cAAc;MAClER,MAAM,CAACa,CAAC,CAAC,CAACV,YAAY,GAAG,IAAI;MAC7BO,KAAK,IAAII,OAAO;IAClB;EACF;EAEA,KAAK,IAAID,CAAC,GAAGhB,MAAM,CAACE,MAAM,GAAG,CAAC,EAAEc,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAC3C,IAAI,CAACb,MAAM,CAACa,CAAC,CAAC,CAACV,YAAY,EAAE;MAC3B;IACF;IAEA,MAAMY,UAAU,GAAGlB,MAAM,CAACgB,CAAC,CAAC,CAACJ,aAAa,GAAGZ,MAAM,CAACgB,CAAC,CAAC,CAACL,cAAc;IACrE,IAAIO,UAAU,KAAK,CAAC,EAAE;MACpB;IACF;IAEA,IAAIL,KAAK,GAAGK,UAAU,GAAGjB,qBAAqB,IAAIF,cAAc,EAAE;MAChEI,MAAM,CAACa,CAAC,CAAC,CAACV,YAAY,GAAG,KAAK;MAC9BO,KAAK,IAAIK,UAAU;IACrB,CAAC,MAAM;MACL;MACA;MACA;IACF;EACF;EAEA,OAAOf,MAAM;AACf","ignoreList":[]}