@wix/patterns 1.239.0 → 1.241.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 (214) 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/CollectionTable/CollectionTable.st.css.js +2 -2
  8. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  9. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  10. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  11. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  12. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  13. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  14. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  15. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  16. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  17. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  18. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  19. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  20. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  21. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  22. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  23. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  24. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  25. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  26. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  27. package/dist/cjs/components/Kanban/Card.js +14 -12
  28. package/dist/cjs/components/Kanban/Card.js.map +1 -1
  29. package/dist/cjs/components/Kanban/CardActions.js +7 -5
  30. package/dist/cjs/components/Kanban/CardActions.js.map +1 -1
  31. package/dist/cjs/components/Kanban/Kanban.js +11 -14
  32. package/dist/cjs/components/Kanban/Kanban.js.map +1 -1
  33. package/dist/cjs/components/Kanban/KanbanCardActionsHelper.js +117 -0
  34. package/dist/cjs/components/Kanban/KanbanCardActionsHelper.js.map +1 -0
  35. package/dist/cjs/components/Kanban/Stage.js +32 -23
  36. package/dist/cjs/components/Kanban/Stage.js.map +1 -1
  37. package/dist/cjs/components/Kanban/useCardActions.js +23 -17
  38. package/dist/cjs/components/Kanban/useCardActions.js.map +1 -1
  39. package/dist/cjs/components/KanbanDragAndDropDndKit/KanbanCardDragAndDrop.js +44 -3
  40. package/dist/cjs/components/KanbanDragAndDropDndKit/KanbanCardDragAndDrop.js.map +1 -1
  41. package/dist/cjs/components/KanbanDragAndDropDndKit/KanbanDragOverlayCardItem.js +3 -2
  42. package/dist/cjs/components/KanbanDragAndDropDndKit/KanbanDragOverlayCardItem.js.map +1 -1
  43. package/dist/cjs/components/KanbanDragAndDropDndKit/KanbanDraggableCardItem.js +21 -7
  44. package/dist/cjs/components/KanbanDragAndDropDndKit/KanbanDraggableCardItem.js.map +1 -1
  45. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  46. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  47. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  48. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  49. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  50. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  51. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  52. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  53. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  54. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  55. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  56. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  57. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  58. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  59. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  60. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  61. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  62. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  63. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  64. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  65. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  66. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  67. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  68. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  69. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  70. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  71. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  72. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.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/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  76. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  77. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  78. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  79. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  80. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  81. package/dist/cjs/components/common.st.css.js +4 -4
  82. package/dist/cjs/components/common.st.css.js.map +1 -1
  83. package/dist/cjs/hooks/useKanban.js +48 -3
  84. package/dist/cjs/hooks/useKanban.js.map +1 -1
  85. package/dist/cjs/model/view.js.map +1 -1
  86. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  87. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  88. package/dist/cjs/state/CollectionViewsState.js +1 -0
  89. package/dist/cjs/state/CollectionViewsState.js.map +1 -1
  90. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  91. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  92. package/dist/cjs/state/KanbanState/KanbanStageState.js +9 -3
  93. package/dist/cjs/state/KanbanState/KanbanStageState.js.map +1 -1
  94. package/dist/cjs/state/KanbanState/KanbanState.js +99 -23
  95. package/dist/cjs/state/KanbanState/KanbanState.js.map +1 -1
  96. package/dist/cjs/state/KanbanState/KanbanStateBIReporter.js +226 -0
  97. package/dist/cjs/state/KanbanState/KanbanStateBIReporter.js.map +1 -0
  98. package/dist/cjs/state/ViewsState.js +5 -3
  99. package/dist/cjs/state/ViewsState.js.map +1 -1
  100. package/dist/cjs/styles.global.css +1 -1
  101. package/dist/cjs/version.js +1 -1
  102. package/dist/cjs/version.js.map +1 -1
  103. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  104. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  105. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  106. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  107. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  108. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  109. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  110. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  111. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  112. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  113. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  114. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  115. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  116. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  117. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  118. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  119. package/dist/esm/components/Fade/Fade.st.css.js.map +1 -1
  120. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  121. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  122. package/dist/esm/components/Kanban/Card.js +2 -2
  123. package/dist/esm/components/Kanban/Card.js.map +1 -1
  124. package/dist/esm/components/Kanban/CardActions.js +2 -1
  125. package/dist/esm/components/Kanban/CardActions.js.map +1 -1
  126. package/dist/esm/components/Kanban/Kanban.js +1 -4
  127. package/dist/esm/components/Kanban/Kanban.js.map +1 -1
  128. package/dist/esm/components/Kanban/KanbanCardActionsHelper.js +80 -0
  129. package/dist/esm/components/Kanban/KanbanCardActionsHelper.js.map +1 -0
  130. package/dist/esm/components/Kanban/Stage.js +10 -1
  131. package/dist/esm/components/Kanban/Stage.js.map +1 -1
  132. package/dist/esm/components/Kanban/useCardActions.js +16 -9
  133. package/dist/esm/components/Kanban/useCardActions.js.map +1 -1
  134. package/dist/esm/components/KanbanDragAndDropDndKit/KanbanCardDragAndDrop.js +44 -2
  135. package/dist/esm/components/KanbanDragAndDropDndKit/KanbanCardDragAndDrop.js.map +1 -1
  136. package/dist/esm/components/KanbanDragAndDropDndKit/KanbanDragOverlayCardItem.js +1 -0
  137. package/dist/esm/components/KanbanDragAndDropDndKit/KanbanDragOverlayCardItem.js.map +1 -1
  138. package/dist/esm/components/KanbanDragAndDropDndKit/KanbanDraggableCardItem.js +15 -3
  139. package/dist/esm/components/KanbanDragAndDropDndKit/KanbanDraggableCardItem.js.map +1 -1
  140. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  141. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  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/NestedTableRow.st.css.js +2 -2
  146. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  147. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  148. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  149. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  150. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  151. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  152. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  153. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  154. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  155. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  156. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  157. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  158. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  159. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  160. package/dist/esm/components/common.st.css.js +2 -2
  161. package/dist/esm/components/common.st.css.js.map +1 -1
  162. package/dist/esm/hooks/useKanban.js +50 -3
  163. package/dist/esm/hooks/useKanban.js.map +1 -1
  164. package/dist/esm/model/view.js.map +1 -1
  165. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  166. package/dist/esm/state/CollectionViewsState.js +1 -0
  167. package/dist/esm/state/CollectionViewsState.js.map +1 -1
  168. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  169. package/dist/esm/state/KanbanState/KanbanStageState.js +10 -3
  170. package/dist/esm/state/KanbanState/KanbanStageState.js.map +1 -1
  171. package/dist/esm/state/KanbanState/KanbanState.js +95 -20
  172. package/dist/esm/state/KanbanState/KanbanState.js.map +1 -1
  173. package/dist/esm/state/KanbanState/KanbanStateBIReporter.js +184 -0
  174. package/dist/esm/state/KanbanState/KanbanStateBIReporter.js.map +1 -0
  175. package/dist/esm/state/ViewsState.js +1 -0
  176. package/dist/esm/state/ViewsState.js.map +1 -1
  177. package/dist/esm/styles.global.css +1 -1
  178. package/dist/esm/version.js +1 -1
  179. package/dist/types/components/CollectionPageNew/CollectionPage.st.css.d.ts.map +1 -1
  180. package/dist/types/components/CollectionTable/CollectionTable.st.css.d.ts.map +1 -1
  181. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
  182. package/dist/types/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.d.ts.map +1 -1
  183. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
  184. package/dist/types/components/Fade/Fade.st.css.d.ts.map +1 -1
  185. package/dist/types/components/Kanban/Card.d.ts +3 -1
  186. package/dist/types/components/Kanban/Card.d.ts.map +1 -1
  187. package/dist/types/components/Kanban/CardActions.d.ts +2 -2
  188. package/dist/types/components/Kanban/CardActions.d.ts.map +1 -1
  189. package/dist/types/components/Kanban/Kanban.d.ts.map +1 -1
  190. package/dist/types/components/Kanban/KanbanCardActionsHelper.d.ts +617 -0
  191. package/dist/types/components/Kanban/KanbanCardActionsHelper.d.ts.map +1 -0
  192. package/dist/types/components/Kanban/Stage.d.ts.map +1 -1
  193. package/dist/types/components/Kanban/useCardActions.d.ts +4 -3
  194. package/dist/types/components/Kanban/useCardActions.d.ts.map +1 -1
  195. package/dist/types/components/KanbanDragAndDropDndKit/KanbanCardDragAndDrop.d.ts +1 -0
  196. package/dist/types/components/KanbanDragAndDropDndKit/KanbanCardDragAndDrop.d.ts.map +1 -1
  197. package/dist/types/components/KanbanDragAndDropDndKit/KanbanDragOverlayCardItem.d.ts.map +1 -1
  198. package/dist/types/components/KanbanDragAndDropDndKit/KanbanDraggableCardItem.d.ts.map +1 -1
  199. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  200. package/dist/types/components/ToolbarItem/ToolbarItem.st.css.d.ts.map +1 -1
  201. package/dist/types/components/common.st.css.d.ts.map +1 -1
  202. package/dist/types/hooks/useKanban.d.ts.map +1 -1
  203. package/dist/types/model/view.d.ts +5 -0
  204. package/dist/types/model/view.d.ts.map +1 -1
  205. package/dist/types/state/CollectionViewsState.d.ts.map +1 -1
  206. package/dist/types/state/KanbanState/KanbanStageState.d.ts +4 -1
  207. package/dist/types/state/KanbanState/KanbanStageState.d.ts.map +1 -1
  208. package/dist/types/state/KanbanState/KanbanState.d.ts +14 -0
  209. package/dist/types/state/KanbanState/KanbanState.d.ts.map +1 -1
  210. package/dist/types/state/KanbanState/KanbanStateBIReporter.d.ts +53 -0
  211. package/dist/types/state/KanbanState/KanbanStateBIReporter.d.ts.map +1 -0
  212. package/dist/types/state/ViewsState.d.ts.map +1 -1
  213. package/dist/types/version.d.ts +1 -1
  214. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_mobxReactLite","_designSystem","_useCardActions","_ActionModal","_jsxFileName","_CardActions","actionCell","originalItem","itemIndex","itemActionsState","stageKey","item","secondaryActions","primaryActionProps","useCardActions","cardKey","key","default","createElement","Fragment","confirmModal","value","MessageActionModal","_extends2","state","__self","__source","fileName","lineNumber","columnNumber","Box","gap","Button","style","zIndex","size","priority","onClick","e","stopPropagation","disabled","prefixIcon","dataHook","text","CardActions","exports","observer"],"sources":["../../../../src/components/Kanban/CardActions.tsx"],"sourcesContent":["import React from 'react';\nimport { observer } from 'mobx-react-lite';\nimport { FiltersMap } from '@wix/bex-core';\nimport { Box, Button } from '@wix/design-system';\nimport { useCardActions } from './useCardActions';\nimport { KanbanCardProps } from './Card';\nimport { MessageActionModal } from '../ActionModal';\n\ntype CardActionsProps<T, S, F extends FiltersMap> = Pick<\n KanbanCardProps<T, S, F>,\n | 'actionCell'\n | 'originalItem'\n | 'itemIndex'\n | 'itemActionsState'\n | 'stageKey'\n | 'item'\n>;\n\nfunction _CardActions<T, S, F extends FiltersMap>({\n actionCell,\n originalItem,\n itemIndex,\n itemActionsState,\n stageKey,\n item,\n}: CardActionsProps<T, S, F>) {\n const { secondaryActions, primaryActionProps } = useCardActions({\n actionCell,\n originalItem,\n itemIndex,\n itemActionsState,\n stageKey,\n cardKey: item.key,\n });\n\n return (\n <>\n {/* Render modals from ItemActionsState */}\n {itemActionsState.confirmModal.value && (\n <MessageActionModal\n state={itemActionsState.confirmModal}\n {...itemActionsState.confirmModal.value}\n />\n )}\n <Box gap=\"9px\">\n {secondaryActions}\n {primaryActionProps && (\n <Button\n style={{ zIndex: 50 }}\n size=\"tiny\"\n priority=\"secondary\"\n onClick={(e) => {\n e.stopPropagation();\n primaryActionProps.onClick();\n }}\n disabled={primaryActionProps.disabled}\n prefixIcon={primaryActionProps.prefixIcon}\n dataHook={`kanban-card-primary-action-${stageKey}-${item.key}`}\n >\n {primaryActionProps.text}\n </Button>\n )}\n </Box>\n </>\n );\n}\n\nexport const CardActions = observer(_CardActions);\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AAEA,IAAAI,YAAA,GAAAJ,OAAA;AAAoD,IAAAK,YAAA;AAYpD,SAASC,YAAYA,CAA6B;EAChDC,UAAU;EACVC,YAAY;EACZC,SAAS;EACTC,gBAAgB;EAChBC,QAAQ;EACRC;AACyB,CAAC,EAAE;EAC5B,MAAM;IAAEC,gBAAgB;IAAEC;EAAmB,CAAC,GAAG,IAAAC,8BAAc,EAAC;IAC9DR,UAAU;IACVC,YAAY;IACZC,SAAS;IACTC,gBAAgB;IAChBC,QAAQ;IACRK,OAAO,EAAEJ,IAAI,CAACK;EAChB,CAAC,CAAC;EAEF,oBACEnB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAArB,MAAA,CAAAoB,OAAA,CAAAE,QAAA,QAEGV,gBAAgB,CAACW,YAAY,CAACC,KAAK,iBAClCxB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACf,YAAA,CAAAmB,kBAAkB,MAAAC,SAAA,CAAAN,OAAA;IACjBO,KAAK,EAAEf,gBAAgB,CAACW;EAAa,GACjCX,gBAAgB,CAACW,YAAY,CAACC,KAAK;IAAAI,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,EACxC,CACF,eACDhC,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACjB,aAAA,CAAA6B,GAAG;IAACC,GAAG,EAAC,KAAK;IAAAN,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,GACXjB,gBAAgB,EAChBC,kBAAkB,iBACjBhB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACjB,aAAA,CAAA+B,MAAM;IACLC,KAAK,EAAE;MAAEC,MAAM,EAAE;IAAG,CAAE;IACtBC,IAAI,EAAC,MAAM;IACXC,QAAQ,EAAC,WAAW;IACpBC,OAAO,EAAGC,CAAC,IAAK;MACdA,CAAC,CAACC,eAAe,CAAC,CAAC;MACnB1B,kBAAkB,CAACwB,OAAO,CAAC,CAAC;IAC9B,CAAE;IACFG,QAAQ,EAAE3B,kBAAkB,CAAC2B,QAAS;IACtCC,UAAU,EAAE5B,kBAAkB,CAAC4B,UAAW;IAC1CC,QAAQ,EAAE,8BAA8BhC,QAAQ,IAAIC,IAAI,CAACK,GAAG,EAAG;IAAAS,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,GAE9DhB,kBAAkB,CAAC8B,IACd,CAEP,CACL,CAAC;AAEP;AAEO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,IAAAE,uBAAQ,EAACzC,YAAY,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_mobxReactLite","_designSystem","_useCardActions","_ActionModal","_jsxFileName","_CardActions","actionCell","originalItem","itemIndex","itemActionsState","stageKey","item","state","secondaryActions","primaryActionProps","useCardActions","cardKey","key","default","createElement","Fragment","confirmModal","value","MessageActionModal","_extends2","__self","__source","fileName","lineNumber","columnNumber","Box","gap","Button","style","zIndex","size","priority","onClick","e","stopPropagation","disabled","prefixIcon","dataHook","text","CardActions","exports","observer"],"sources":["../../../../src/components/Kanban/CardActions.tsx"],"sourcesContent":["import React from 'react';\nimport { observer } from 'mobx-react-lite';\nimport { FiltersMap } from '@wix/bex-core';\nimport { Box, Button } from '@wix/design-system';\nimport { useCardActions } from './useCardActions';\nimport { KanbanCardProps } from './Card';\nimport { MessageActionModal } from '../ActionModal';\n\ntype CardActionsProps<T, S, F extends FiltersMap> = Pick<\n KanbanCardProps<T, S, F>,\n | 'actionCell'\n | 'originalItem'\n | 'itemIndex'\n | 'itemActionsState'\n | 'stageKey'\n | 'item'\n | 'state'\n>;\n\nfunction _CardActions<T, S, F extends FiltersMap>({\n actionCell,\n originalItem,\n itemIndex,\n itemActionsState,\n stageKey,\n item,\n state,\n}: CardActionsProps<T, S, F>) {\n const { secondaryActions, primaryActionProps } = useCardActions({\n actionCell,\n originalItem,\n itemIndex,\n itemActionsState,\n stageKey,\n cardKey: item.key,\n state,\n });\n\n return (\n <>\n {/* Render modals from ItemActionsState */}\n {itemActionsState.confirmModal.value && (\n <MessageActionModal\n state={itemActionsState.confirmModal}\n {...itemActionsState.confirmModal.value}\n />\n )}\n <Box gap=\"9px\">\n {secondaryActions}\n {primaryActionProps && (\n <Button\n style={{ zIndex: 50 }}\n size=\"tiny\"\n priority=\"secondary\"\n onClick={(e) => {\n e.stopPropagation();\n primaryActionProps.onClick();\n }}\n disabled={primaryActionProps.disabled}\n prefixIcon={primaryActionProps.prefixIcon}\n dataHook={`kanban-card-primary-action-${stageKey}-${item.key}`}\n >\n {primaryActionProps.text}\n </Button>\n )}\n </Box>\n </>\n );\n}\n\nexport const CardActions = observer(_CardActions);\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AAEA,IAAAI,YAAA,GAAAJ,OAAA;AAAoD,IAAAK,YAAA;AAapD,SAASC,YAAYA,CAA6B;EAChDC,UAAU;EACVC,YAAY;EACZC,SAAS;EACTC,gBAAgB;EAChBC,QAAQ;EACRC,IAAI;EACJC;AACyB,CAAC,EAAE;EAC5B,MAAM;IAAEC,gBAAgB;IAAEC;EAAmB,CAAC,GAAG,IAAAC,8BAAc,EAAC;IAC9DT,UAAU;IACVC,YAAY;IACZC,SAAS;IACTC,gBAAgB;IAChBC,QAAQ;IACRM,OAAO,EAAEL,IAAI,CAACM,GAAG;IACjBL;EACF,CAAC,CAAC;EAEF,oBACEf,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAAAtB,MAAA,CAAAqB,OAAA,CAAAE,QAAA,QAEGX,gBAAgB,CAACY,YAAY,CAACC,KAAK,iBAClCzB,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAAChB,YAAA,CAAAoB,kBAAkB,MAAAC,SAAA,CAAAN,OAAA;IACjBN,KAAK,EAAEH,gBAAgB,CAACY;EAAa,GACjCZ,gBAAgB,CAACY,YAAY,CAACC,KAAK;IAAAG,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,EACxC,CACF,eACDhC,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAAClB,aAAA,CAAA6B,GAAG;IAACC,GAAG,EAAC,KAAK;IAAAN,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,GACXhB,gBAAgB,EAChBC,kBAAkB,iBACjBjB,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAAClB,aAAA,CAAA+B,MAAM;IACLC,KAAK,EAAE;MAAEC,MAAM,EAAE;IAAG,CAAE;IACtBC,IAAI,EAAC,MAAM;IACXC,QAAQ,EAAC,WAAW;IACpBC,OAAO,EAAGC,CAAC,IAAK;MACdA,CAAC,CAACC,eAAe,CAAC,CAAC;MACnBzB,kBAAkB,CAACuB,OAAO,CAAC,CAAC;IAC9B,CAAE;IACFG,QAAQ,EAAE1B,kBAAkB,CAAC0B,QAAS;IACtCC,UAAU,EAAE3B,kBAAkB,CAAC2B,UAAW;IAC1CC,QAAQ,EAAE,8BAA8BhC,QAAQ,IAAIC,IAAI,CAACM,GAAG,EAAG;IAAAQ,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,GAE9Df,kBAAkB,CAAC6B,IACd,CAEP,CACL,CAAC;AAEP;AAEO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,IAAAE,uBAAQ,EAACzC,YAAY,CAAC","ignoreList":[]}
@@ -40,10 +40,7 @@ function _Kanban(props) {
40
40
  return () => {
41
41
  events.off('scrollToStage', scrollToStage);
42
42
  };
43
- }, []);
44
- (0, _react.useEffect)(() => {
45
- props.state.init();
46
- }, [props.state]);
43
+ }, [events]);
47
44
  const stages = (0, _react.useMemo)(() => {
48
45
  return props.state.stages;
49
46
  }, [props.state.stages]);
@@ -69,7 +66,7 @@ function _Kanban(props) {
69
66
  __self: this,
70
67
  __source: {
71
68
  fileName: _jsxFileName,
72
- lineNumber: 65,
69
+ lineNumber: 62,
73
70
  columnNumber: 5
74
71
  }
75
72
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Box, {
@@ -78,7 +75,7 @@ function _Kanban(props) {
78
75
  __self: this,
79
76
  __source: {
80
77
  fileName: _jsxFileName,
81
- lineNumber: 66,
78
+ lineNumber: 63,
82
79
  columnNumber: 7
83
80
  }
84
81
  }, stages.map((stage, index) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, index === firstDoneIndex && firstDoneIndex !== -1 && /*#__PURE__*/_react.default.createElement(_designSystem.Divider, {
@@ -87,7 +84,7 @@ function _Kanban(props) {
87
84
  __self: this,
88
85
  __source: {
89
86
  fileName: _jsxFileName,
90
- lineNumber: 70,
87
+ lineNumber: 67,
91
88
  columnNumber: 15
92
89
  }
93
90
  }), /*#__PURE__*/_react.default.createElement(_Stage.StageComponent, (0, _extends2.default)({
@@ -99,7 +96,7 @@ function _Kanban(props) {
99
96
  __self: this,
100
97
  __source: {
101
98
  fileName: _jsxFileName,
102
- lineNumber: 75,
99
+ lineNumber: 72,
103
100
  columnNumber: 13
104
101
  }
105
102
  }))))), /*#__PURE__*/_react.default.createElement(DragOverlay, {
@@ -111,7 +108,7 @@ function _Kanban(props) {
111
108
  __self: this,
112
109
  __source: {
113
110
  fileName: _jsxFileName,
114
- lineNumber: 85,
111
+ lineNumber: 82,
115
112
  columnNumber: 7
116
113
  }
117
114
  }));
@@ -122,7 +119,7 @@ function _Kanban(props) {
122
119
  __self: this,
123
120
  __source: {
124
121
  fileName: _jsxFileName,
125
- lineNumber: 96,
122
+ lineNumber: 93,
126
123
  columnNumber: 5
127
124
  }
128
125
  }, /*#__PURE__*/_react.default.createElement(_ToolbarCollection.ToolbarCollection, {
@@ -132,7 +129,7 @@ function _Kanban(props) {
132
129
  __self: this,
133
130
  __source: {
134
131
  fileName: _jsxFileName,
135
- lineNumber: 97,
132
+ lineNumber: 94,
136
133
  columnNumber: 7
137
134
  }
138
135
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Box, {
@@ -146,7 +143,7 @@ function _Kanban(props) {
146
143
  __self: this,
147
144
  __source: {
148
145
  fileName: _jsxFileName,
149
- lineNumber: 98,
146
+ lineNumber: 95,
150
147
  columnNumber: 9
151
148
  }
152
149
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Box, {
@@ -155,14 +152,14 @@ function _Kanban(props) {
155
152
  __self: this,
156
153
  __source: {
157
154
  fileName: _jsxFileName,
158
- lineNumber: 107,
155
+ lineNumber: 104,
159
156
  columnNumber: 11
160
157
  }
161
158
  }, props.state.isLoadingStages ? /*#__PURE__*/_react.default.createElement(_StagesSkeleton.StagesSkeleton, {
162
159
  __self: this,
163
160
  __source: {
164
161
  fileName: _jsxFileName,
165
- lineNumber: 108,
162
+ lineNumber: 105,
166
163
  columnNumber: 44
167
164
  }
168
165
  }) : stagesContent))));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_ToolbarCollection","_mobxReactLite","_Stage","_designSystem","_CollectionCard","_KanbanCardDragAndDrop","_StagesSkeleton","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_Kanban","props","state","dataHook","toolbar","events","scrollToStage","stageKey","stageElement","document","querySelector","scrollIntoView","behavior","block","inline","useEffect","on","off","init","stages","useMemo","activeId","dragAndDropState","activeStageKey","substring","indexOf","KanbanDragAndDropContext","DragOverlay","KanbanCardDragAndDrop","firstDoneIndex","findIndex","stage","_props$state","stageType","stagesContent","createElement","stageId","__self","__source","fileName","lineNumber","columnNumber","Box","direction","gap","map","index","Fragment","Divider","StageComponent","_extends2","key","renderItem","actionCell","dataExtension","tags","CollectionCard","errorState","ToolbarCollection","search","sticky","marginTop","marginBottom","marginLeft","marginRight","overflow","isLoadingStages","StagesSkeleton","Kanban","exports","observer"],"sources":["../../../../src/components/Kanban/Kanban.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from 'react';\nimport { ToolbarBaseProps, ToolbarCollection } from '../ToolbarCollection';\nimport { observer } from 'mobx-react-lite';\nimport { FiltersMap } from '@wix/bex-core';\nimport { KanbanBaseProps } from './KanbanProps';\nimport { StageComponent } from './Stage';\nimport { Box, Divider } from '@wix/design-system';\nimport { CollectionCard } from '../CollectionCard';\nimport { KanbanCardDragAndDrop } from '../KanbanDragAndDropDndKit/KanbanCardDragAndDrop';\nimport { StagesSkeleton } from './StagesSkeleton';\n\nexport interface KanbanProps<C, S, F extends FiltersMap>\n extends ToolbarBaseProps,\n KanbanBaseProps<C, S, F> {}\n\nfunction _Kanban<C, S, F extends FiltersMap>(props: KanbanProps<C, S, F>) {\n const { state, dataHook } = props;\n\n const { toolbar, events } = state;\n\n const scrollToStage = ({ stageKey }: { stageKey: string }) => {\n const stageElement = document.querySelector(\n `[data-hook=\"kanban-stage-container-${stageKey}\"]`,\n );\n if (stageElement) {\n stageElement.scrollIntoView?.({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'center',\n });\n }\n };\n\n useEffect(() => {\n events.on('scrollToStage', scrollToStage);\n\n return () => {\n events.off('scrollToStage', scrollToStage);\n };\n }, []);\n\n useEffect(() => {\n props.state.init();\n }, [props.state]);\n\n const stages = useMemo(() => {\n return props.state.stages;\n }, [props.state.stages]);\n\n // Calculate active stage key from activeId\n const activeId = state.dragAndDropState.activeId;\n const activeStageKey = activeId\n ? activeId.substring(0, activeId.indexOf('-##-')) || null\n : null;\n\n // Wrap with global drag and drop context - always enabled for Kanban\n const { KanbanDragAndDropContext, DragOverlay } = KanbanCardDragAndDrop;\n\n // Find the index of the first DONE stage\n const firstDoneIndex = stages.findIndex(\n (stage: S) => props.state?.stageType?.(stage) === 'DONE',\n );\n\n const stagesContent = (\n <KanbanDragAndDropContext state={state} stageId=\"all\">\n <Box direction=\"horizontal\" gap=\"12px\">\n {stages.map((stage: S, index: number) => (\n <>\n {index === firstDoneIndex && firstDoneIndex !== -1 && (\n <Divider\n direction=\"vertical\"\n dataHook=\"kanban-stages-done-divider\"\n />\n )}\n <StageComponent\n dataHook={`kanban-stage-${props.state.stageKey(stage)}`}\n key={props.state.stageKey(stage)}\n activeStageKey={activeStageKey}\n stageKey={props.state.stageKey(stage)}\n {...props}\n />\n </>\n ))}\n </Box>\n <DragOverlay\n state={state}\n renderItem={props.renderItem}\n actionCell={props.actionCell}\n dataExtension={props.dataExtension}\n tags={props.tags}\n />\n </KanbanDragAndDropContext>\n );\n\n return (\n <CollectionCard errorState={false} state={toolbar} dataHook={dataHook}>\n <ToolbarCollection search={true} sticky state={toolbar}>\n <Box\n dataHook=\"kanban-test\"\n marginTop=\"16px\"\n marginBottom=\"12px\"\n marginLeft=\"18px\"\n marginRight=\"18px\"\n overflow=\"auto\"\n direction=\"vertical\"\n >\n <Box dataHook=\"kanban-stages\" direction=\"vertical\">\n {props.state.isLoadingStages ? <StagesSkeleton /> : stagesContent}\n </Box>\n </Box>\n </ToolbarCollection>\n </CollectionCard>\n );\n}\n\nexport const Kanban = observer(_Kanban);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_ToolbarCollection","_mobxReactLite","_Stage","_designSystem","_CollectionCard","_KanbanCardDragAndDrop","_StagesSkeleton","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_Kanban","props","state","dataHook","toolbar","events","scrollToStage","stageKey","stageElement","document","querySelector","scrollIntoView","behavior","block","inline","useEffect","on","off","stages","useMemo","activeId","dragAndDropState","activeStageKey","substring","indexOf","KanbanDragAndDropContext","DragOverlay","KanbanCardDragAndDrop","firstDoneIndex","findIndex","stage","_props$state","stageType","stagesContent","createElement","stageId","__self","__source","fileName","lineNumber","columnNumber","Box","direction","gap","map","index","Fragment","Divider","StageComponent","_extends2","key","renderItem","actionCell","dataExtension","tags","CollectionCard","errorState","ToolbarCollection","search","sticky","marginTop","marginBottom","marginLeft","marginRight","overflow","isLoadingStages","StagesSkeleton","Kanban","exports","observer"],"sources":["../../../../src/components/Kanban/Kanban.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from 'react';\nimport { ToolbarBaseProps, ToolbarCollection } from '../ToolbarCollection';\nimport { observer } from 'mobx-react-lite';\nimport { FiltersMap } from '@wix/bex-core';\nimport { KanbanBaseProps } from './KanbanProps';\nimport { StageComponent } from './Stage';\nimport { Box, Divider } from '@wix/design-system';\nimport { CollectionCard } from '../CollectionCard';\nimport { KanbanCardDragAndDrop } from '../KanbanDragAndDropDndKit/KanbanCardDragAndDrop';\nimport { StagesSkeleton } from './StagesSkeleton';\n\nexport interface KanbanProps<C, S, F extends FiltersMap>\n extends ToolbarBaseProps,\n KanbanBaseProps<C, S, F> {}\n\nfunction _Kanban<C, S, F extends FiltersMap>(props: KanbanProps<C, S, F>) {\n const { state, dataHook } = props;\n\n const { toolbar, events } = state;\n\n const scrollToStage = ({ stageKey }: { stageKey: string }) => {\n const stageElement = document.querySelector(\n `[data-hook=\"kanban-stage-container-${stageKey}\"]`,\n );\n if (stageElement) {\n stageElement.scrollIntoView?.({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'center',\n });\n }\n };\n\n useEffect(() => {\n events.on('scrollToStage', scrollToStage);\n\n return () => {\n events.off('scrollToStage', scrollToStage);\n };\n }, [events]);\n\n\n const stages = useMemo(() => {\n return props.state.stages;\n }, [props.state.stages]);\n\n // Calculate active stage key from activeId\n const activeId = state.dragAndDropState.activeId;\n const activeStageKey = activeId\n ? activeId.substring(0, activeId.indexOf('-##-')) || null\n : null;\n\n // Wrap with global drag and drop context - always enabled for Kanban\n const { KanbanDragAndDropContext, DragOverlay } = KanbanCardDragAndDrop;\n\n // Find the index of the first DONE stage\n const firstDoneIndex = stages.findIndex(\n (stage: S) => props.state?.stageType?.(stage) === 'DONE',\n );\n\n const stagesContent = (\n <KanbanDragAndDropContext state={state} stageId=\"all\">\n <Box direction=\"horizontal\" gap=\"12px\">\n {stages.map((stage: S, index: number) => (\n <>\n {index === firstDoneIndex && firstDoneIndex !== -1 && (\n <Divider\n direction=\"vertical\"\n dataHook=\"kanban-stages-done-divider\"\n />\n )}\n <StageComponent\n dataHook={`kanban-stage-${props.state.stageKey(stage)}`}\n key={props.state.stageKey(stage)}\n activeStageKey={activeStageKey}\n stageKey={props.state.stageKey(stage)}\n {...props}\n />\n </>\n ))}\n </Box>\n <DragOverlay\n state={state}\n renderItem={props.renderItem}\n actionCell={props.actionCell}\n dataExtension={props.dataExtension}\n tags={props.tags}\n />\n </KanbanDragAndDropContext>\n );\n\n return (\n <CollectionCard errorState={false} state={toolbar} dataHook={dataHook}>\n <ToolbarCollection search={true} sticky state={toolbar}>\n <Box\n dataHook=\"kanban-test\"\n marginTop=\"16px\"\n marginBottom=\"12px\"\n marginLeft=\"18px\"\n marginRight=\"18px\"\n overflow=\"auto\"\n direction=\"vertical\"\n >\n <Box dataHook=\"kanban-stages\" direction=\"vertical\">\n {props.state.isLoadingStages ? <StagesSkeleton /> : stagesContent}\n </Box>\n </Box>\n </ToolbarCollection>\n </CollectionCard>\n );\n}\n\nexport const Kanban = observer(_Kanban);\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.reportOnKanbanPopoverMenuShow = exports.createKanbanSecondaryActionCellPropsWithBI = exports.createKanbanPrimaryActionCellPropsWithBI = void 0;
5
+ var _react = require("react");
6
+ var _mobx = require("mobx");
7
+ var _KanbanStateBIReporter = require("../../state/KanbanState/KanbanStateBIReporter");
8
+ const calcCtaCount = actionCellProps => {
9
+ const {
10
+ secondaryActions
11
+ } = actionCellProps;
12
+ return (secondaryActions == null ? void 0 : secondaryActions.length) || 0;
13
+ };
14
+ const createKanbanSecondaryActionCellPropsWithBI = ({
15
+ state,
16
+ actionCellProps,
17
+ keyedItem,
18
+ extensionMenuItems,
19
+ stageId
20
+ }) => {
21
+ const {
22
+ secondaryActions = []
23
+ } = actionCellProps;
24
+ const stageIndex = state.getStageIndexByKey(stageId);
25
+ const stageName = state.getStageNameByKey(stageId);
26
+ const moreSecondaryItems = (extensionMenuItems == null ? void 0 : extensionMenuItems.menuItems.map(menuItem => {
27
+ return {
28
+ ...menuItem,
29
+ icon: menuItem.prefixIcon || /*#__PURE__*/(0, _react.createElement)('div')
30
+ };
31
+ })) || [];
32
+ const allActions = [...secondaryActions, ...moreSecondaryItems];
33
+ return allActions.map((_action, index) => {
34
+ const biIndex = index;
35
+ if (_action.divider) {
36
+ return _action;
37
+ }
38
+ const onClick = (0, _mobx.action)(() => {
39
+ state.kanbanStateBIReporter.reportCardCTAClicked({
40
+ itemId: keyedItem.id,
41
+ itemIndex: keyedItem.index,
42
+ ctaName: _action.biName || _action.text || 'Secondary Action',
43
+ ctaType: _KanbanStateBIReporter.KanbanCtaType.MORE_ACTIONS_OPTION,
44
+ stageIndex,
45
+ stageId,
46
+ stageName,
47
+ ctaIndex: biIndex,
48
+ numCtas: calcCtaCount(actionCellProps)
49
+ });
50
+ _action.onClick == null || _action.onClick();
51
+ });
52
+ const {
53
+ biName: _biName,
54
+ ...secondaryActionProperties
55
+ } = _action;
56
+ return {
57
+ ...secondaryActionProperties,
58
+ onClick
59
+ };
60
+ }) || [];
61
+ };
62
+ exports.createKanbanSecondaryActionCellPropsWithBI = createKanbanSecondaryActionCellPropsWithBI;
63
+ const createKanbanPrimaryActionCellPropsWithBI = ({
64
+ state,
65
+ actionCellProps,
66
+ keyedItem,
67
+ stageId
68
+ }) => {
69
+ const {
70
+ primaryAction
71
+ } = actionCellProps;
72
+ const stageIndex = state.getStageIndexByKey(stageId);
73
+ const stageName = state.getStageNameByKey(stageId);
74
+ if (primaryAction) {
75
+ const onClick = (0, _mobx.action)(() => {
76
+ state.kanbanStateBIReporter.reportCardCTAClicked({
77
+ itemId: keyedItem.id,
78
+ itemIndex: keyedItem.index,
79
+ ctaName: (primaryAction == null ? void 0 : primaryAction.biName) || (primaryAction == null ? void 0 : primaryAction.text) || 'Primary Action',
80
+ ctaType: _KanbanStateBIReporter.KanbanCtaType.PRIMARY_BUTTON,
81
+ stageId,
82
+ stageIndex,
83
+ stageName
84
+ });
85
+ primaryAction == null || primaryAction.onClick();
86
+ });
87
+ const {
88
+ biName,
89
+ ...primaryActionProperties
90
+ } = primaryAction;
91
+ return {
92
+ ...primaryActionProperties,
93
+ onClick
94
+ };
95
+ }
96
+ return primaryAction;
97
+ };
98
+ exports.createKanbanPrimaryActionCellPropsWithBI = createKanbanPrimaryActionCellPropsWithBI;
99
+ const reportOnKanbanPopoverMenuShow = ({
100
+ state,
101
+ keyedItem,
102
+ stageId
103
+ }) => {
104
+ const stageIndex = state.getStageIndexByKey(stageId);
105
+ const stageName = state.getStageNameByKey(stageId);
106
+ state.kanbanStateBIReporter.reportCardCTAClicked({
107
+ itemId: keyedItem.id,
108
+ itemIndex: keyedItem.index,
109
+ ctaName: 'More Actions',
110
+ ctaType: _KanbanStateBIReporter.KanbanCtaType.SECONDARY_DROPDOWN,
111
+ stageId,
112
+ stageIndex,
113
+ stageName
114
+ });
115
+ };
116
+ exports.reportOnKanbanPopoverMenuShow = reportOnKanbanPopoverMenuShow;
117
+ //# sourceMappingURL=KanbanCardActionsHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_mobx","_KanbanStateBIReporter","calcCtaCount","actionCellProps","secondaryActions","length","createKanbanSecondaryActionCellPropsWithBI","state","keyedItem","extensionMenuItems","stageId","stageIndex","getStageIndexByKey","stageName","getStageNameByKey","moreSecondaryItems","menuItems","map","menuItem","icon","prefixIcon","createElement","allActions","_action","index","biIndex","divider","onClick","action","kanbanStateBIReporter","reportCardCTAClicked","itemId","id","itemIndex","ctaName","biName","text","ctaType","KanbanCtaType","MORE_ACTIONS_OPTION","ctaIndex","numCtas","_biName","secondaryActionProperties","exports","createKanbanPrimaryActionCellPropsWithBI","primaryAction","PRIMARY_BUTTON","primaryActionProperties","reportOnKanbanPopoverMenuShow","SECONDARY_DROPDOWN"],"sources":["../../../../src/components/Kanban/KanbanCardActionsHelper.ts"],"sourcesContent":["import { createElement } from 'react';\nimport {\n ActionCellProps,\n SecondaryActionAction,\n SecondaryAction,\n} from '../ActionCell';\nimport { KeyedItem } from '@wix/bex-core';\nimport { FiltersMap } from '../../exports/core';\nimport { ExtensionMenuItemsState } from '../../state';\nimport { action } from 'mobx';\nimport { TableActionCellSecondaryDivider } from '@wix/design-system';\nimport type { KanbanState } from '../../state/KanbanState';\nimport { KanbanCtaType } from '../../state/KanbanState/KanbanStateBIReporter';\n\nconst calcCtaCount = (actionCellProps: ActionCellProps) => {\n const { secondaryActions } = actionCellProps;\n return secondaryActions?.length || 0;\n};\n\ntype SecondaryActionDivider = Omit<\n TableActionCellSecondaryDivider,\n 'divider'\n> & {\n divider: true;\n};\n\nexport type KanbanSecondaryActionOrDivider =\n | SecondaryActionAction\n | SecondaryActionDivider;\n\nexport interface CreateKanbanActionCellParams<T, S, F extends FiltersMap> {\n state: KanbanState<T, S, F>;\n actionCellProps: ActionCellProps;\n keyedItem: KeyedItem<T>;\n extensionMenuItems?: ExtensionMenuItemsState;\n stageId: string;\n}\n\nexport const createKanbanSecondaryActionCellPropsWithBI = <\n T,\n S,\n F extends FiltersMap,\n>({\n state,\n actionCellProps,\n keyedItem,\n extensionMenuItems,\n stageId,\n}: CreateKanbanActionCellParams<T, S, F>): KanbanSecondaryActionOrDivider[] => {\n const { secondaryActions = [] } = actionCellProps;\n\n const stageIndex = state.getStageIndexByKey(stageId);\n const stageName = state.getStageNameByKey(stageId);\n\n const moreSecondaryItems: SecondaryAction[] =\n extensionMenuItems?.menuItems.map((menuItem) => {\n return {\n ...menuItem,\n icon: menuItem.prefixIcon || createElement('div'),\n };\n }) || [];\n\n const allActions = [\n ...secondaryActions,\n ...moreSecondaryItems,\n ] as KanbanSecondaryActionOrDivider[];\n\n return (\n allActions.map((_action, index) => {\n const biIndex = index;\n\n if (_action.divider) {\n return _action;\n }\n\n const onClick = action(() => {\n state.kanbanStateBIReporter.reportCardCTAClicked({\n itemId: keyedItem.id,\n itemIndex: keyedItem.index,\n ctaName: _action.biName || _action.text || 'Secondary Action',\n ctaType: KanbanCtaType.MORE_ACTIONS_OPTION,\n stageIndex,\n stageId,\n stageName,\n ctaIndex: biIndex,\n numCtas: calcCtaCount(actionCellProps),\n });\n _action.onClick?.();\n });\n\n const { biName: _biName, ...secondaryActionProperties } = _action;\n return { ...secondaryActionProperties, onClick };\n }) || []\n );\n};\n\nexport const createKanbanPrimaryActionCellPropsWithBI = <\n T,\n S,\n F extends FiltersMap,\n>({\n state,\n actionCellProps,\n keyedItem,\n stageId,\n}: CreateKanbanActionCellParams<T, S, F>) => {\n const { primaryAction } = actionCellProps;\n\n const stageIndex = state.getStageIndexByKey(stageId);\n const stageName = state.getStageNameByKey(stageId);\n\n if (primaryAction) {\n const onClick = action(() => {\n state.kanbanStateBIReporter.reportCardCTAClicked({\n itemId: keyedItem.id,\n itemIndex: keyedItem.index,\n ctaName:\n primaryAction?.biName || primaryAction?.text || 'Primary Action',\n ctaType: KanbanCtaType.PRIMARY_BUTTON,\n stageId,\n stageIndex,\n stageName,\n });\n primaryAction?.onClick();\n });\n\n const { biName, ...primaryActionProperties } = primaryAction;\n return { ...primaryActionProperties, onClick };\n }\n return primaryAction;\n};\n\nexport const reportOnKanbanPopoverMenuShow = <T, S, F extends FiltersMap>({\n state,\n keyedItem,\n stageId,\n}: {\n state: KanbanState<T, S, F>;\n keyedItem: KeyedItem<T>;\n stageId: string;\n}) => {\n const stageIndex = state.getStageIndexByKey(stageId);\n const stageName = state.getStageNameByKey(stageId);\n\n state.kanbanStateBIReporter.reportCardCTAClicked({\n itemId: keyedItem.id,\n itemIndex: keyedItem.index,\n ctaName: 'More Actions',\n ctaType: KanbanCtaType.SECONDARY_DROPDOWN,\n stageId,\n stageIndex,\n stageName,\n });\n};\n"],"mappings":"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","ignoreList":[]}
@@ -71,7 +71,7 @@ function _StageComponent({
71
71
  return () => {
72
72
  events.off('scrollToCardInStage', scrollToCardInStage);
73
73
  };
74
- }, []);
74
+ }, [events, stageKey]);
75
75
 
76
76
  // Make the stage droppable
77
77
  const {
@@ -103,7 +103,8 @@ function _StageComponent({
103
103
  })),
104
104
  key: keyedItem.key
105
105
  },
106
- actionCell: props.actionCell
106
+ actionCell: props.actionCell,
107
+ state
107
108
  };
108
109
  });
109
110
  }, [keyedItems, keyedItems.length]);
@@ -142,7 +143,7 @@ function _StageComponent({
142
143
  __self: this,
143
144
  __source: {
144
145
  fileName: _jsxFileName,
145
- lineNumber: 130,
146
+ lineNumber: 131,
146
147
  columnNumber: 5
147
148
  }
148
149
  }), /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -151,7 +152,7 @@ function _StageComponent({
151
152
  __self: this,
152
153
  __source: {
153
154
  fileName: _jsxFileName,
154
- lineNumber: 155,
155
+ lineNumber: 156,
155
156
  columnNumber: 7
156
157
  }
157
158
  }, /*#__PURE__*/React.createElement("div", {
@@ -159,7 +160,7 @@ function _StageComponent({
159
160
  __self: this,
160
161
  __source: {
161
162
  fileName: _jsxFileName,
162
- lineNumber: 156,
163
+ lineNumber: 157,
163
164
  columnNumber: 9
164
165
  }
165
166
  }, /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -168,7 +169,7 @@ function _StageComponent({
168
169
  __self: this,
169
170
  __source: {
170
171
  fileName: _jsxFileName,
171
- lineNumber: 157,
172
+ lineNumber: 158,
172
173
  columnNumber: 11
173
174
  }
174
175
  }, /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -179,14 +180,14 @@ function _StageComponent({
179
180
  __self: this,
180
181
  __source: {
181
182
  fileName: _jsxFileName,
182
- lineNumber: 158,
183
+ lineNumber: 159,
183
184
  columnNumber: 13
184
185
  }
185
186
  }, /*#__PURE__*/React.createElement(_designSystem.Box, {
186
187
  __self: this,
187
188
  __source: {
188
189
  fileName: _jsxFileName,
189
- lineNumber: 164,
190
+ lineNumber: 165,
190
191
  columnNumber: 15
191
192
  }
192
193
  }, /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -194,7 +195,7 @@ function _StageComponent({
194
195
  __self: this,
195
196
  __source: {
196
197
  fileName: _jsxFileName,
197
- lineNumber: 165,
198
+ lineNumber: 166,
198
199
  columnNumber: 17
199
200
  }
200
201
  }, /*#__PURE__*/React.createElement(_designSystem.Text, {
@@ -205,7 +206,7 @@ function _StageComponent({
205
206
  __self: this,
206
207
  __source: {
207
208
  fileName: _jsxFileName,
208
- lineNumber: 166,
209
+ lineNumber: 167,
209
210
  columnNumber: 19
210
211
  }
211
212
  }, stageState.stageName)), shouldShowStageSummary ? /*#__PURE__*/React.createElement(_designSystem.CounterBadge, {
@@ -215,7 +216,7 @@ function _StageComponent({
215
216
  __self: this,
216
217
  __source: {
217
218
  fileName: _jsxFileName,
218
- lineNumber: 176,
219
+ lineNumber: 177,
219
220
  columnNumber: 19
220
221
  }
221
222
  }, stageState.totalItems()) : null), /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -223,7 +224,7 @@ function _StageComponent({
223
224
  __self: this,
224
225
  __source: {
225
226
  fileName: _jsxFileName,
226
- lineNumber: 186,
227
+ lineNumber: 187,
227
228
  columnNumber: 15
228
229
  }
229
230
  }, shouldShowStageSummary ? /*#__PURE__*/React.createElement(_designSystem.Text, {
@@ -232,7 +233,7 @@ function _StageComponent({
232
233
  __self: this,
233
234
  __source: {
234
235
  fileName: _jsxFileName,
235
- lineNumber: 188,
236
+ lineNumber: 189,
236
237
  columnNumber: 19
237
238
  }
238
239
  }, stageSummary == null ? void 0 : stageSummary({
@@ -241,7 +242,7 @@ function _StageComponent({
241
242
  __self: this,
242
243
  __source: {
243
244
  fileName: _jsxFileName,
244
- lineNumber: 195,
245
+ lineNumber: 196,
245
246
  columnNumber: 15
246
247
  }
247
248
  }, /*#__PURE__*/React.createElement(_designSystem.AddItem, {
@@ -253,11 +254,18 @@ function _StageComponent({
253
254
  (_state$items$create2 = state.items.create) == null || _state$items$create2.navigateToEntityPage == null || _state$items$create2.navigateToEntityPage({
254
255
  stage: stageState.stage
255
256
  });
257
+ state.kanbanStateBIReporter.reportStageCTAClicked({
258
+ ctaName: 'Add Card',
259
+ ctaType: 'Primary Button',
260
+ stageId: stageState.stageKey,
261
+ stageIndex: state.getStageIndexByKey(stageState.stageKey),
262
+ stageName: stageState.stageName
263
+ });
256
264
  },
257
265
  __self: this,
258
266
  __source: {
259
267
  fileName: _jsxFileName,
260
- lineNumber: 196,
268
+ lineNumber: 197,
261
269
  columnNumber: 17
262
270
  }
263
271
  }, /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -266,7 +274,7 @@ function _StageComponent({
266
274
  __self: this,
267
275
  __source: {
268
276
  fileName: _jsxFileName,
269
- lineNumber: 206,
277
+ lineNumber: 214,
270
278
  columnNumber: 19
271
279
  }
272
280
  }, (_state$items$create3 = state.items.create) == null ? void 0 : _state$items$create3.title))) : null), state.isRefetching || isStageLoading || isChangingFiltersValue ? /*#__PURE__*/React.createElement(_CardsSkeleton.CardsSkeleton, {
@@ -274,7 +282,7 @@ function _StageComponent({
274
282
  __self: this,
275
283
  __source: {
276
284
  fileName: _jsxFileName,
277
- lineNumber: 214,
285
+ lineNumber: 222,
278
286
  columnNumber: 13
279
287
  }
280
288
  }) : /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -283,7 +291,7 @@ function _StageComponent({
283
291
  __self: this,
284
292
  __source: {
285
293
  fileName: _jsxFileName,
286
- lineNumber: 216,
294
+ lineNumber: 224,
287
295
  columnNumber: 13
288
296
  }
289
297
  }, /*#__PURE__*/React.createElement("div", {
@@ -305,7 +313,7 @@ function _StageComponent({
305
313
  __self: this,
306
314
  __source: {
307
315
  fileName: _jsxFileName,
308
- lineNumber: 217,
316
+ lineNumber: 225,
309
317
  columnNumber: 15
310
318
  }
311
319
  }, isInSearchMode && items.length === 0 ? /*#__PURE__*/React.createElement(_designSystem.Box, {
@@ -315,7 +323,7 @@ function _StageComponent({
315
323
  __self: this,
316
324
  __source: {
317
325
  fileName: _jsxFileName,
318
- lineNumber: 235,
326
+ lineNumber: 243,
319
327
  columnNumber: 19
320
328
  }
321
329
  }, props.noResultsState) : items == null ? void 0 : items.map(item => /*#__PURE__*/React.createElement(DraggableCard, {
@@ -331,12 +339,13 @@ function _StageComponent({
331
339
  actionCell: item.actionCell,
332
340
  itemActionsState: item.itemActionsState,
333
341
  dataExtension: props.dataExtension,
334
- tags: props.tags
342
+ tags: props.tags,
343
+ state
335
344
  },
336
345
  __self: this,
337
346
  __source: {
338
347
  fileName: _jsxFileName,
339
- lineNumber: 244,
348
+ lineNumber: 252,
340
349
  columnNumber: 21
341
350
  }
342
351
  }, _Card.CardComponent)), stageState.itemsCollectionState.status.isLoading && /*#__PURE__*/React.createElement("div", {
@@ -344,7 +353,7 @@ function _StageComponent({
344
353
  __self: this,
345
354
  __source: {
346
355
  fileName: _jsxFileName,
347
- lineNumber: 265,
356
+ lineNumber: 274,
348
357
  columnNumber: 19
349
358
  }
350
359
  }, "Loading more..."))))));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","React","_designSystem","_mobxReactLite","_Card","_KanbanCardDragAndDrop","_state","_core","_mobx","_CardsSkeleton","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_StageComponent","dataHook","state","stageSummary","activeStageKey","stageKey","props","_state$items$create","_state$items$create3","stageState","kanbanStageStates","events","handleScroll","scrollTop","scrollHeight","clientHeight","currentTarget","itemsCollectionState","fetchedLastPage","result","status","isFetching","fetchMore","keyedItems","useEffect","hasError","showErrorToast","error","scrollToCardInStage","_stageKey","cardKey","cardElement","document","querySelector","scrollIntoView","behavior","block","inline","on","off","isOver","setNodeRef","setDroppableRef","useDroppable","id","isDndSourceStage","items","useMemo","map","keyedItem","index","itemActionsState","ItemActionsState","fade","collection","originalItem","item","itemIndex","renderItem","stage","key","actionCell","length","DraggableCard","KanbanCardDragAndDrop","isInSearchMode","isStageLoading","isLoading","isChangingFiltersValue","getIsChangingFiltersValue","shouldShowStageSummary","createElement","_extends2","ref","style","width","backgroundColor","borderRadius","display","flexDirection","border","process","env","NODE_ENV","onPointerUp","action","dragAndDropState","activeId","handleDragEnd","over","active","__self","__source","fileName","lineNumber","columnNumber","Box","direction","padding","marginBottom","paddingRight","Text","size","weight","ellipsis","stageName","CounterBadge","skin","truncate","totalItems","gap","create","title","AddItem","removePadding","onClick","_state$items$create2","navigateToEntityPage","paddingTop","paddingBottom","isRefetching","CardsSkeleton","overflow","minHeight","height","alignItems","overflowX","scrollbarWidth","scrollbarColor","onScroll","flex","verticalAlign","noResultsState","cardProps","dataExtension","tags","CardComponent","className","StageComponent","exports","observer"],"sources":["../../../../src/components/Kanban/Stage.tsx"],"sourcesContent":["import * as React from 'react';\nimport { AddItem, Box, CounterBadge, Text } from '@wix/design-system';\nimport { FiltersMap, KeyedItem } from '@wix/bex-core';\nimport { observer } from 'mobx-react-lite';\nimport { CardComponent, KanbanCardProps } from './Card';\nimport { KanbanBaseProps } from './KanbanProps';\nimport { KanbanCardDragAndDrop } from '../KanbanDragAndDropDndKit/KanbanCardDragAndDrop';\nimport { ItemActionsState } from '../../state';\nimport { useDroppable } from '@wix/wix-style-react-incubator/dnd-kit/core';\nimport { KanbanState } from '../../state/KanbanState';\nimport { action } from 'mobx';\nimport { CardsSkeleton } from './CardsSkeleton';\nimport { useEffect } from 'react';\n\ninterface StageComponentProps<T, S, F extends FiltersMap> {\n dataHook: string;\n state: KanbanState<T, S, F>;\n stageSummary?: KanbanBaseProps<T, S, F>['stageSummary'];\n renderItem?: KanbanBaseProps<T, S, F>['renderItem'];\n noResultsState?: KanbanBaseProps<T, S, F>['noResultsState'];\n actionCell?: KanbanBaseProps<T, S, F>['actionCell'];\n dataExtension?: KanbanBaseProps<T, S, F>['dataExtension'];\n tags?: KanbanBaseProps<T, S, F>['tags'];\n activeStageKey?: string | null; // Active source stage key\n stageKey: string;\n}\n\nfunction _StageComponent<T, S, F extends FiltersMap>({\n dataHook,\n state,\n stageSummary,\n activeStageKey,\n stageKey,\n ...props\n}: StageComponentProps<T, S, F>) {\n const stageState = state.kanbanStageStates[stageKey];\n const { events } = state;\n const handleScroll = (e: React.UIEvent<HTMLDivElement>) => {\n const { scrollTop, scrollHeight, clientHeight } = e.currentTarget;\n if (\n scrollHeight - scrollTop <= clientHeight + 10 &&\n !stageState.itemsCollectionState.fetchedLastPage &&\n !stageState.itemsCollectionState.result.status.isFetching\n ) {\n stageState.fetchMore();\n }\n };\n\n const {\n result: { keyedItems },\n status,\n } = stageState.itemsCollectionState;\n\n useEffect(() => {\n if (stageState.hasError) {\n stageState.showErrorToast(status.error);\n }\n }, [stageState.hasError]);\n\n const scrollToCardInStage = ({\n stageKey: _stageKey,\n cardKey,\n }: {\n stageKey: string;\n cardKey: string;\n }) => {\n if (stageKey !== stageState.stageKey) {\n return;\n }\n const cardElement = document.querySelector(\n `[data-hook=\"kanban-card-container-${_stageKey}-${cardKey}\"]`,\n );\n if (cardElement) {\n cardElement.scrollIntoView?.({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n };\n\n useEffect(() => {\n events.on('scrollToCardInStage', scrollToCardInStage);\n\n return () => {\n events.off('scrollToCardInStage', scrollToCardInStage);\n };\n }, []);\n\n // Make the stage droppable\n const { isOver, setNodeRef: setDroppableRef } = useDroppable({\n id: stageState.stageKey,\n });\n\n // Check if this stage is the source stage (where drag originated)\n const isDndSourceStage = activeStageKey === stageState.stageKey;\n\n const items: KanbanCardProps<T, S, F>[] = React.useMemo(() => {\n return keyedItems.map((keyedItem: KeyedItem<T>, index: number) => {\n const itemActionsState = new ItemActionsState({\n fade: 'static',\n keyedItem,\n collection: stageState.itemsCollectionState,\n });\n\n return {\n keyedItem,\n stageKey: stageState.stageKey,\n originalItem: keyedItem.item,\n itemIndex: index,\n itemActionsState,\n item: {\n ...props.renderItem?.({\n stage: stageState.stage,\n item: keyedItem.item,\n }),\n key: keyedItem.key,\n },\n actionCell: props.actionCell,\n };\n });\n }, [keyedItems, keyedItems.length]);\n\n const { DraggableCard } = KanbanCardDragAndDrop;\n const isInSearchMode = state.isInSearchMode();\n const isStageLoading = stageState.isLoading;\n const isChangingFiltersValue = state.getIsChangingFiltersValue();\n const shouldShowStageSummary = !isChangingFiltersValue && !isStageLoading;\n return (\n <div\n ref={setDroppableRef}\n data-hook={`kanban-stage-container-${stageState.stageKey}`}\n style={{\n width: '270px',\n backgroundColor: isOver && !isDndSourceStage ? '#D6E6FE' : '#F4F7FF',\n borderRadius: '8px',\n display: 'flex',\n flexDirection: 'column',\n border:\n isOver && !isDndSourceStage\n ? '1px dashed #80B1FF'\n : '1px solid transparent',\n }}\n {...(process.env.NODE_ENV === 'test' && {\n onPointerUp: action(() => {\n if (state.dragAndDropState.activeId) {\n state.dragAndDropState.handleDragEnd({\n over: { id: stageState.stageKey },\n active: { id: state.dragAndDropState.activeId },\n } as any);\n }\n }),\n })}\n >\n <Box width=\"270px\" direction=\"vertical\">\n <div data-hook={dataHook}>\n <Box direction=\"vertical\" padding=\"12px\">\n <Box\n marginBottom=\"24px\"\n direction=\"vertical\"\n padding=\"0px 6px 0 6px\"\n borderRadius=\"8px\"\n >\n <Box>\n <Box paddingRight=\"6px\">\n <Text\n size=\"small\"\n weight=\"bold\"\n dataHook={`kanban-stage-title-${stageState.stageKey}`}\n ellipsis={true}\n >\n {stageState.stageName}\n </Text>\n </Box>\n {shouldShowStageSummary ? (\n <CounterBadge\n dataHook={`kanban-stage-title-total-${stageState.stageKey}`}\n skin=\"light\"\n truncate={false}\n >\n {stageState.totalItems()}\n </CounterBadge>\n ) : null}\n </Box>\n\n <Box gap=\"0.2em\">\n {shouldShowStageSummary ? (\n <Text size=\"tiny\" weight=\"thin\">\n {stageSummary?.({ stage: stageState.stage })}\n </Text>\n ) : null}\n </Box>\n </Box>\n {shouldShowStageSummary && state.items.create?.title ? (\n <Box>\n <AddItem\n size=\"tiny\"\n removePadding={true}\n dataHook={`kanban-stage-add-card-${stageState.stageKey}`}\n onClick={() => {\n state.items.create?.navigateToEntityPage?.({\n stage: stageState.stage,\n });\n }}\n >\n <Box paddingTop=\"9px\" paddingBottom=\"9px\">\n {state.items.create?.title}\n </Box>\n </AddItem>\n </Box>\n ) : null}\n </Box>\n {state.isRefetching || isStageLoading || isChangingFiltersValue ? (\n <CardsSkeleton stageKey={stageState.stageKey} />\n ) : (\n <Box paddingBottom=\"12px\" direction=\"vertical\">\n <div\n data-hook={`kanban-stage-cards-container-${stageState.stageKey}`}\n style={{\n overflow: 'auto',\n minHeight: '430px',\n height: 'calc(100vh - 420px)',\n display: 'flex',\n flexDirection: 'column',\n gap: '12px',\n alignItems: 'center',\n overflowX: 'hidden',\n scrollbarWidth: 'thin',\n scrollbarColor: '#CFD1DC transparent',\n paddingTop: '3px',\n }}\n onScroll={handleScroll}\n >\n {isInSearchMode && items.length === 0 ? (\n <Box\n flex=\"1\"\n verticalAlign=\"middle\"\n dataHook={`kanban-stage-no-results-${stageState.stageKey}`}\n >\n {props.noResultsState}\n </Box>\n ) : (\n items?.map((item) => (\n <DraggableCard\n key={`${item.stageKey}-##-${item.item.key}`}\n id={`${item.stageKey}-##-${item.item.key}`}\n state={state}\n cardProps={{\n keyedItem: item.keyedItem,\n originalItem: item.keyedItem.item,\n itemIndex: item.itemIndex,\n item: item.item,\n stageKey: item.stageKey,\n actionCell: item.actionCell,\n itemActionsState: item.itemActionsState,\n dataExtension: props.dataExtension,\n tags: props.tags,\n }}\n >\n {CardComponent}\n </DraggableCard>\n ))\n )}\n {stageState.itemsCollectionState.status.isLoading && (\n <div className=\"text-sm text-center text-gray-500\">\n Loading more...\n </div>\n )}\n </div>\n </Box>\n )}\n </div>\n </Box>\n </div>\n );\n}\n\nexport const StageComponent = observer(_StageComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","React","_designSystem","_mobxReactLite","_Card","_KanbanCardDragAndDrop","_state","_core","_mobx","_CardsSkeleton","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_StageComponent","dataHook","state","stageSummary","activeStageKey","stageKey","props","_state$items$create","_state$items$create3","stageState","kanbanStageStates","events","handleScroll","scrollTop","scrollHeight","clientHeight","currentTarget","itemsCollectionState","fetchedLastPage","result","status","isFetching","fetchMore","keyedItems","useEffect","hasError","showErrorToast","error","scrollToCardInStage","_stageKey","cardKey","cardElement","document","querySelector","scrollIntoView","behavior","block","inline","on","off","isOver","setNodeRef","setDroppableRef","useDroppable","id","isDndSourceStage","items","useMemo","map","keyedItem","index","itemActionsState","ItemActionsState","fade","collection","originalItem","item","itemIndex","renderItem","stage","key","actionCell","length","DraggableCard","KanbanCardDragAndDrop","isInSearchMode","isStageLoading","isLoading","isChangingFiltersValue","getIsChangingFiltersValue","shouldShowStageSummary","createElement","_extends2","ref","style","width","backgroundColor","borderRadius","display","flexDirection","border","process","env","NODE_ENV","onPointerUp","action","dragAndDropState","activeId","handleDragEnd","over","active","__self","__source","fileName","lineNumber","columnNumber","Box","direction","padding","marginBottom","paddingRight","Text","size","weight","ellipsis","stageName","CounterBadge","skin","truncate","totalItems","gap","create","title","AddItem","removePadding","onClick","_state$items$create2","navigateToEntityPage","kanbanStateBIReporter","reportStageCTAClicked","ctaName","ctaType","stageId","stageIndex","getStageIndexByKey","paddingTop","paddingBottom","isRefetching","CardsSkeleton","overflow","minHeight","height","alignItems","overflowX","scrollbarWidth","scrollbarColor","onScroll","flex","verticalAlign","noResultsState","cardProps","dataExtension","tags","CardComponent","className","StageComponent","exports","observer"],"sources":["../../../../src/components/Kanban/Stage.tsx"],"sourcesContent":["import * as React from 'react';\nimport { AddItem, Box, CounterBadge, Text } from '@wix/design-system';\nimport { FiltersMap, KeyedItem } from '@wix/bex-core';\nimport { observer } from 'mobx-react-lite';\nimport { CardComponent, KanbanCardProps } from './Card';\nimport { KanbanBaseProps } from './KanbanProps';\nimport { KanbanCardDragAndDrop } from '../KanbanDragAndDropDndKit/KanbanCardDragAndDrop';\nimport { ItemActionsState } from '../../state';\nimport { useDroppable } from '@wix/wix-style-react-incubator/dnd-kit/core';\nimport { KanbanState } from '../../state/KanbanState';\nimport { action } from 'mobx';\nimport { CardsSkeleton } from './CardsSkeleton';\nimport { useEffect } from 'react';\n\ninterface StageComponentProps<T, S, F extends FiltersMap> {\n dataHook: string;\n state: KanbanState<T, S, F>;\n stageSummary?: KanbanBaseProps<T, S, F>['stageSummary'];\n renderItem?: KanbanBaseProps<T, S, F>['renderItem'];\n noResultsState?: KanbanBaseProps<T, S, F>['noResultsState'];\n actionCell?: KanbanBaseProps<T, S, F>['actionCell'];\n dataExtension?: KanbanBaseProps<T, S, F>['dataExtension'];\n tags?: KanbanBaseProps<T, S, F>['tags'];\n activeStageKey?: string | null; // Active source stage key\n stageKey: string;\n}\n\nfunction _StageComponent<T, S, F extends FiltersMap>({\n dataHook,\n state,\n stageSummary,\n activeStageKey,\n stageKey,\n ...props\n}: StageComponentProps<T, S, F>) {\n const stageState = state.kanbanStageStates[stageKey];\n const { events } = state;\n const handleScroll = (e: React.UIEvent<HTMLDivElement>) => {\n const { scrollTop, scrollHeight, clientHeight } = e.currentTarget;\n if (\n scrollHeight - scrollTop <= clientHeight + 10 &&\n !stageState.itemsCollectionState.fetchedLastPage &&\n !stageState.itemsCollectionState.result.status.isFetching\n ) {\n stageState.fetchMore();\n }\n };\n\n const {\n result: { keyedItems },\n status,\n } = stageState.itemsCollectionState;\n\n useEffect(() => {\n if (stageState.hasError) {\n stageState.showErrorToast(status.error);\n }\n }, [stageState.hasError]);\n\n const scrollToCardInStage = ({\n stageKey: _stageKey,\n cardKey,\n }: {\n stageKey: string;\n cardKey: string;\n }) => {\n if (stageKey !== stageState.stageKey) {\n return;\n }\n const cardElement = document.querySelector(\n `[data-hook=\"kanban-card-container-${_stageKey}-${cardKey}\"]`,\n );\n if (cardElement) {\n cardElement.scrollIntoView?.({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n };\n\n useEffect(() => {\n events.on('scrollToCardInStage', scrollToCardInStage);\n\n return () => {\n events.off('scrollToCardInStage', scrollToCardInStage);\n };\n }, [events, stageKey]);\n\n // Make the stage droppable\n const { isOver, setNodeRef: setDroppableRef } = useDroppable({\n id: stageState.stageKey,\n });\n\n // Check if this stage is the source stage (where drag originated)\n const isDndSourceStage = activeStageKey === stageState.stageKey;\n\n const items: KanbanCardProps<T, S, F>[] = React.useMemo(() => {\n return keyedItems.map((keyedItem: KeyedItem<T>, index: number) => {\n const itemActionsState = new ItemActionsState({\n fade: 'static',\n keyedItem,\n collection: stageState.itemsCollectionState,\n });\n\n return {\n keyedItem,\n stageKey: stageState.stageKey,\n originalItem: keyedItem.item,\n itemIndex: index,\n itemActionsState,\n item: {\n ...props.renderItem?.({\n stage: stageState.stage,\n item: keyedItem.item,\n }),\n key: keyedItem.key,\n },\n actionCell: props.actionCell,\n state,\n };\n });\n }, [keyedItems, keyedItems.length]);\n\n const { DraggableCard } = KanbanCardDragAndDrop;\n const isInSearchMode = state.isInSearchMode();\n const isStageLoading = stageState.isLoading;\n const isChangingFiltersValue = state.getIsChangingFiltersValue();\n const shouldShowStageSummary = !isChangingFiltersValue && !isStageLoading;\n return (\n <div\n ref={setDroppableRef}\n data-hook={`kanban-stage-container-${stageState.stageKey}`}\n style={{\n width: '270px',\n backgroundColor: isOver && !isDndSourceStage ? '#D6E6FE' : '#F4F7FF',\n borderRadius: '8px',\n display: 'flex',\n flexDirection: 'column',\n border:\n isOver && !isDndSourceStage\n ? '1px dashed #80B1FF'\n : '1px solid transparent',\n }}\n {...(process.env.NODE_ENV === 'test' && {\n onPointerUp: action(() => {\n if (state.dragAndDropState.activeId) {\n state.dragAndDropState.handleDragEnd({\n over: { id: stageState.stageKey },\n active: { id: state.dragAndDropState.activeId },\n } as any);\n }\n }),\n })}\n >\n <Box width=\"270px\" direction=\"vertical\">\n <div data-hook={dataHook}>\n <Box direction=\"vertical\" padding=\"12px\">\n <Box\n marginBottom=\"24px\"\n direction=\"vertical\"\n padding=\"0px 6px 0 6px\"\n borderRadius=\"8px\"\n >\n <Box>\n <Box paddingRight=\"6px\">\n <Text\n size=\"small\"\n weight=\"bold\"\n dataHook={`kanban-stage-title-${stageState.stageKey}`}\n ellipsis={true}\n >\n {stageState.stageName}\n </Text>\n </Box>\n {shouldShowStageSummary ? (\n <CounterBadge\n dataHook={`kanban-stage-title-total-${stageState.stageKey}`}\n skin=\"light\"\n truncate={false}\n >\n {stageState.totalItems()}\n </CounterBadge>\n ) : null}\n </Box>\n\n <Box gap=\"0.2em\">\n {shouldShowStageSummary ? (\n <Text size=\"tiny\" weight=\"thin\">\n {stageSummary?.({ stage: stageState.stage })}\n </Text>\n ) : null}\n </Box>\n </Box>\n {shouldShowStageSummary && state.items.create?.title ? (\n <Box>\n <AddItem\n size=\"tiny\"\n removePadding={true}\n dataHook={`kanban-stage-add-card-${stageState.stageKey}`}\n onClick={() => {\n state.items.create?.navigateToEntityPage?.({\n stage: stageState.stage,\n });\n state.kanbanStateBIReporter.reportStageCTAClicked({\n ctaName: 'Add Card',\n ctaType: 'Primary Button',\n stageId: stageState.stageKey,\n stageIndex: state.getStageIndexByKey(stageState.stageKey),\n stageName: stageState.stageName,\n });\n }}\n >\n <Box paddingTop=\"9px\" paddingBottom=\"9px\">\n {state.items.create?.title}\n </Box>\n </AddItem>\n </Box>\n ) : null}\n </Box>\n {state.isRefetching || isStageLoading || isChangingFiltersValue ? (\n <CardsSkeleton stageKey={stageState.stageKey} />\n ) : (\n <Box paddingBottom=\"12px\" direction=\"vertical\">\n <div\n data-hook={`kanban-stage-cards-container-${stageState.stageKey}`}\n style={{\n overflow: 'auto',\n minHeight: '430px',\n height: 'calc(100vh - 420px)',\n display: 'flex',\n flexDirection: 'column',\n gap: '12px',\n alignItems: 'center',\n overflowX: 'hidden',\n scrollbarWidth: 'thin',\n scrollbarColor: '#CFD1DC transparent',\n paddingTop: '3px',\n }}\n onScroll={handleScroll}\n >\n {isInSearchMode && items.length === 0 ? (\n <Box\n flex=\"1\"\n verticalAlign=\"middle\"\n dataHook={`kanban-stage-no-results-${stageState.stageKey}`}\n >\n {props.noResultsState}\n </Box>\n ) : (\n items?.map((item) => (\n <DraggableCard\n key={`${item.stageKey}-##-${item.item.key}`}\n id={`${item.stageKey}-##-${item.item.key}`}\n state={state}\n cardProps={{\n keyedItem: item.keyedItem,\n originalItem: item.keyedItem.item,\n itemIndex: item.itemIndex,\n item: item.item,\n stageKey: item.stageKey,\n actionCell: item.actionCell,\n itemActionsState: item.itemActionsState,\n dataExtension: props.dataExtension,\n tags: props.tags,\n state,\n }}\n >\n {CardComponent}\n </DraggableCard>\n ))\n )}\n {stageState.itemsCollectionState.status.isLoading && (\n <div className=\"text-sm text-center text-gray-500\">\n Loading more...\n </div>\n )}\n </div>\n </Box>\n )}\n </div>\n </Box>\n </div>\n );\n}\n\nexport const StageComponent = observer(_StageComponent);\n"],"mappings":"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","ignoreList":[]}