@wix/patterns 1.115.0 → 1.119.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 (227) hide show
  1. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  2. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  3. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  4. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  5. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +3 -3
  6. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  7. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  8. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  9. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  10. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  11. package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js +100 -94
  12. package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  13. package/dist/cjs/components/CustomFieldModal/CustomFieldModal.uni.driver.js +4 -0
  14. package/dist/cjs/components/CustomFieldModal/CustomFieldModal.uni.driver.js.map +1 -1
  15. package/dist/cjs/components/DataExtension/CollectionDataExtensionState.js +2 -1
  16. package/dist/cjs/components/DataExtension/CollectionDataExtensionState.js.map +1 -1
  17. package/dist/cjs/components/DragAndDrop/DragAndDrop.uni.driver.js +6 -3
  18. package/dist/cjs/components/DragAndDrop/DragAndDrop.uni.driver.js.map +1 -1
  19. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  20. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  21. package/dist/cjs/components/ExportButton/getExportModalErrorProps.js +9 -9
  22. package/dist/cjs/components/ExportButton/getExportModalErrorProps.js.map +1 -1
  23. package/dist/cjs/components/ExtendedColumn/ExtendedColumn.js +13 -1
  24. package/dist/cjs/components/ExtendedColumn/ExtendedColumn.js.map +1 -1
  25. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  26. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  27. package/dist/cjs/components/FileCard/formatBytes.js +3 -1
  28. package/dist/cjs/components/FileCard/formatBytes.js.map +1 -1
  29. package/dist/cjs/components/GridDragAndDropDndKit/dndTestEventHandlers.js.map +1 -1
  30. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  31. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  32. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  33. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  34. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  35. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  36. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  37. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  38. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  39. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  40. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  41. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  42. package/dist/cjs/components/NestedTable/NestedTable.uni.driver.js +81 -0
  43. package/dist/cjs/components/NestedTable/NestedTable.uni.driver.js.map +1 -1
  44. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  45. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  46. package/dist/cjs/components/NestedTable/NestedTableRow.js +3 -2
  47. package/dist/cjs/components/NestedTable/NestedTableRow.js.map +1 -1
  48. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  49. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  50. package/dist/cjs/components/NestedTable/NestedTableRow.uni.driver.js +2 -0
  51. package/dist/cjs/components/NestedTable/NestedTableRow.uni.driver.js.map +1 -1
  52. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  53. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  54. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  55. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  56. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  57. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  58. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  59. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  60. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  61. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  62. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  63. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  64. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  65. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  66. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  67. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  68. package/dist/cjs/components/Table/Table.uni.driver.js +2 -0
  69. package/dist/cjs/components/Table/Table.uni.driver.js.map +1 -1
  70. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js +2 -2
  71. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js.map +1 -1
  72. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  73. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  74. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  75. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  76. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  77. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  78. package/dist/cjs/components/common.st.css.js +4 -4
  79. package/dist/cjs/components/common.st.css.js.map +1 -1
  80. package/dist/cjs/hooks/useItemsSelectionFilter/index.js +8 -0
  81. package/dist/cjs/hooks/useItemsSelectionFilter/index.js.map +1 -0
  82. package/dist/cjs/hooks/useItemsSelectionFilter/useItemsSelectionFilter.js +114 -0
  83. package/dist/cjs/hooks/useItemsSelectionFilter/useItemsSelectionFilter.js.map +1 -0
  84. package/dist/cjs/index.js +7 -0
  85. package/dist/cjs/index.js.map +1 -1
  86. package/dist/cjs/services/viewsService.js +68 -16
  87. package/dist/cjs/services/viewsService.js.map +1 -1
  88. package/dist/cjs/state/ViewsState.js +35 -11
  89. package/dist/cjs/state/ViewsState.js.map +1 -1
  90. package/dist/cjs/styles.global.css +1 -1
  91. package/dist/cjs/test-utils/ItemsSelectionMocks.js +57 -0
  92. package/dist/cjs/test-utils/ItemsSelectionMocks.js.map +1 -0
  93. package/dist/cjs/version.js +1 -1
  94. package/dist/cjs/version.js.map +1 -1
  95. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  96. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  97. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  98. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  99. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  100. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  101. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js +28 -26
  102. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  103. package/dist/esm/components/CustomFieldModal/CustomFieldModal.uni.driver.js +4 -0
  104. package/dist/esm/components/CustomFieldModal/CustomFieldModal.uni.driver.js.map +1 -1
  105. package/dist/esm/components/DataExtension/CollectionDataExtensionState.js +1 -0
  106. package/dist/esm/components/DataExtension/CollectionDataExtensionState.js.map +1 -1
  107. package/dist/esm/components/DragAndDrop/DragAndDrop.uni.driver.js +3 -1
  108. package/dist/esm/components/DragAndDrop/DragAndDrop.uni.driver.js.map +1 -1
  109. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  110. package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
  111. package/dist/esm/components/ExportButton/getExportModalErrorProps.js +1 -1
  112. package/dist/esm/components/ExportButton/getExportModalErrorProps.js.map +1 -1
  113. package/dist/esm/components/ExtendedColumn/ExtendedColumn.js +1 -0
  114. package/dist/esm/components/ExtendedColumn/ExtendedColumn.js.map +1 -1
  115. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  116. package/dist/esm/components/FileCard/formatBytes.js +2 -1
  117. package/dist/esm/components/FileCard/formatBytes.js.map +1 -1
  118. package/dist/esm/components/GridDragAndDropDndKit/dndTestEventHandlers.js.map +1 -1
  119. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  120. package/dist/esm/components/Heading/Heading.st.css.js.map +1 -1
  121. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  122. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  123. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  124. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  125. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  126. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  127. package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
  128. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  129. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  130. package/dist/esm/components/NestedTable/NestedTable.uni.driver.js +91 -0
  131. package/dist/esm/components/NestedTable/NestedTable.uni.driver.js.map +1 -1
  132. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  133. package/dist/esm/components/NestedTable/NestedTableRow.js +1 -0
  134. package/dist/esm/components/NestedTable/NestedTableRow.js.map +1 -1
  135. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  136. package/dist/esm/components/NestedTable/NestedTableRow.uni.driver.js +2 -0
  137. package/dist/esm/components/NestedTable/NestedTableRow.uni.driver.js.map +1 -1
  138. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  139. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  140. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  141. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  142. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  143. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  144. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  145. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  146. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  147. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  148. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  149. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  150. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  151. package/dist/esm/components/Table/Table.uni.driver.js +2 -0
  152. package/dist/esm/components/Table/Table.uni.driver.js.map +1 -1
  153. package/dist/esm/components/Table/TableVirtualHeader.st.css.js +2 -2
  154. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  155. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  156. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  157. package/dist/esm/components/common.st.css.js +2 -2
  158. package/dist/esm/hooks/useItemsSelectionFilter/index.js +2 -0
  159. package/dist/esm/hooks/useItemsSelectionFilter/index.js.map +1 -0
  160. package/dist/esm/hooks/useItemsSelectionFilter/useItemsSelectionFilter.js +79 -0
  161. package/dist/esm/hooks/useItemsSelectionFilter/useItemsSelectionFilter.js.map +1 -0
  162. package/dist/esm/index.js +1 -0
  163. package/dist/esm/index.js.map +1 -1
  164. package/dist/esm/services/viewsService.js +60 -16
  165. package/dist/esm/services/viewsService.js.map +1 -1
  166. package/dist/esm/state/ViewsState.js +25 -12
  167. package/dist/esm/state/ViewsState.js.map +1 -1
  168. package/dist/esm/styles.global.css +1 -1
  169. package/dist/esm/test-utils/ItemsSelectionMocks.js +45 -0
  170. package/dist/esm/test-utils/ItemsSelectionMocks.js.map +1 -0
  171. package/dist/esm/version.js +1 -1
  172. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  173. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts +1 -6
  174. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts.map +1 -1
  175. package/dist/types/components/CustomFieldModal/CustomFieldForm.d.ts.map +1 -1
  176. package/dist/types/components/CustomFieldModal/CustomFieldModal.uni.driver.d.ts +2 -0
  177. package/dist/types/components/CustomFieldModal/CustomFieldModal.uni.driver.d.ts.map +1 -1
  178. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts +4 -2
  179. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts.map +1 -1
  180. package/dist/types/components/DataExtension/CollectionDataExtensionState.d.ts.map +1 -1
  181. package/dist/types/components/DragAndDrop/DragAndDrop.uni.driver.d.ts.map +1 -1
  182. package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
  183. package/dist/types/components/ExtendedColumn/ExtendedColumn.d.ts.map +1 -1
  184. package/dist/types/components/FileCard/formatBytes.d.ts.map +1 -1
  185. package/dist/types/components/GridDragAndDropDndKit/dndTestEventHandlers.d.ts.map +1 -1
  186. package/dist/types/components/Heading/Heading.st.css.d.ts.map +1 -1
  187. package/dist/types/components/LoadingRow/LoadingRow.st.css.d.ts.map +1 -1
  188. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  189. package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
  190. package/dist/types/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.d.ts.map +1 -1
  191. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +88 -1
  192. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
  193. package/dist/types/components/NestedTable/NestedTableRow.d.ts.map +1 -1
  194. package/dist/types/components/NestedTable/NestedTableRow.uni.driver.d.ts +2 -0
  195. package/dist/types/components/NestedTable/NestedTableRow.uni.driver.d.ts.map +1 -1
  196. package/dist/types/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.d.ts.map +1 -1
  197. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.d.ts.map +1 -1
  198. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  199. package/dist/types/components/SkeletonCard/SkeletonCard.st.css.d.ts.map +1 -1
  200. package/dist/types/components/SlidingModal/SlidingModal.st.css.d.ts.map +1 -1
  201. package/dist/types/components/Table/Table.uni.driver.d.ts +4 -0
  202. package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
  203. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +4 -0
  204. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts.map +1 -1
  205. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +4 -0
  206. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts.map +1 -1
  207. package/dist/types/components/TableGridSwitchFolders/TableGridSwitchFolders.uni.driver.d.ts +4 -0
  208. package/dist/types/components/TableGridSwitchFolders/TableGridSwitchFolders.uni.driver.d.ts.map +1 -1
  209. package/dist/types/hooks/useItemsSelectionFilter/index.d.ts +2 -0
  210. package/dist/types/hooks/useItemsSelectionFilter/index.d.ts.map +1 -0
  211. package/dist/types/hooks/useItemsSelectionFilter/useItemsSelectionFilter.d.ts +29 -0
  212. package/dist/types/hooks/useItemsSelectionFilter/useItemsSelectionFilter.d.ts.map +1 -0
  213. package/dist/types/index.d.ts +1 -0
  214. package/dist/types/index.d.ts.map +1 -1
  215. package/dist/types/services/viewsService.d.ts +9 -3
  216. package/dist/types/services/viewsService.d.ts.map +1 -1
  217. package/dist/types/state/ViewsState.d.ts.map +1 -1
  218. package/dist/types/test-utils/ItemsSelectionMocks.d.ts +9 -0
  219. package/dist/types/test-utils/ItemsSelectionMocks.d.ts.map +1 -0
  220. package/dist/types/testkit/enzyme.d.ts +30 -0
  221. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  222. package/dist/types/testkit/jsdom.d.ts +30 -0
  223. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  224. package/dist/types/testkit/puppeteer.d.ts +30 -0
  225. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  226. package/dist/types/version.d.ts +1 -1
  227. package/package.json +5 -5
@@ -10,10 +10,14 @@ class ViewsService {
10
10
  (0, _defineProperty2.default)(this, "defaultViewStorage", void 0);
11
11
  (0, _defineProperty2.default)(this, "fqdn", void 0);
12
12
  (0, _defineProperty2.default)(this, "monitor", void 0);
13
+ (0, _defineProperty2.default)(this, "errorHandler", void 0);
14
+ (0, _defineProperty2.default)(this, "translate", void 0);
13
15
  this.viewsStorage = params.viewsStorage;
14
16
  this.defaultViewStorage = params.defaultViewStorage;
15
17
  this.fqdn = params.fqdn;
16
18
  this.monitor = params.monitor;
19
+ this.errorHandler = params.errorHandler;
20
+ this.translate = params.translate;
17
21
  }
18
22
  async migrateFromLocalStorage() {
19
23
  const {
@@ -31,13 +35,16 @@ class ViewsService {
31
35
  async fetchViews() {
32
36
  const {
33
37
  viewsStorage,
34
- fqdn
38
+ fqdn,
39
+ errorHandler
35
40
  } = this;
36
- const data = await viewsStorage.getItem(fqdn).catch(e => {
41
+ const data = await errorHandler.withErrorHandler(() => viewsStorage.getItem(fqdn).catch(e => {
37
42
  if ((e == null ? void 0 : e.message) === 'Key was not found in capsule') {
38
43
  return null;
39
44
  }
40
45
  throw e;
46
+ }), {
47
+ errorCodesMap: {}
41
48
  });
42
49
  if ((data == null ? void 0 : data.views) == null) {
43
50
  return null;
@@ -54,22 +61,27 @@ class ViewsService {
54
61
  async fetchDefaultViewId() {
55
62
  const {
56
63
  defaultViewStorage,
57
- fqdn
64
+ fqdn,
65
+ errorHandler
58
66
  } = this;
59
- const data = await defaultViewStorage.getItem(`${fqdn}.defaultViewId`).catch(e => {
67
+ const data = await errorHandler.withErrorHandler(() => defaultViewStorage.getItem(`${fqdn}.defaultViewId`).catch(e => {
60
68
  if ((e == null ? void 0 : e.message) === 'Key was not found in capsule') {
61
69
  return null;
62
70
  }
63
71
  throw e;
72
+ }), {
73
+ errorCodesMap: {}
64
74
  });
65
75
  return typeof data === 'string' ? data : (data == null ? void 0 : data.id) ?? null;
66
76
  }
67
- async saveView(view) {
77
+ async saveView(view, props) {
68
78
  const {
69
79
  viewsStorage,
70
- fqdn
80
+ fqdn,
81
+ errorHandler,
82
+ translate: t
71
83
  } = this;
72
- await viewsStorage.setItem(fqdn, {
84
+ await errorHandler.withErrorHandler(() => viewsStorage.setItem(fqdn, {
73
85
  views: {
74
86
  list: {
75
87
  [view.id]: {
@@ -78,42 +90,82 @@ class ViewsService {
78
90
  }
79
91
  }
80
92
  }
93
+ }), {
94
+ errorCodesMap: {
95
+ statusCodeError: {
96
+ INTERNAL: () => ({
97
+ message: props != null && props.isRename ? t('cairo.manageView.Rename.error.toast') : t('cairo.manageView.saveView.error.toast')
98
+ })
99
+ }
100
+ }
81
101
  });
82
102
  }
83
103
  async deleteView(view) {
84
104
  const {
85
105
  viewsStorage,
86
- fqdn
106
+ fqdn,
107
+ errorHandler,
108
+ translate: t
87
109
  } = this;
88
- await viewsStorage.setItem(fqdn, {
110
+ await errorHandler.withErrorHandler(() => viewsStorage.setItem(fqdn, {
89
111
  views: {
90
112
  list: {
91
113
  [view.id]: null
92
114
  }
93
115
  }
116
+ }), {
117
+ errorCodesMap: {
118
+ statusCodeError: {
119
+ INTERNAL: () => ({
120
+ message: t('cairo.manageView.Delete.CTA.error.toast')
121
+ })
122
+ }
123
+ }
94
124
  });
95
125
  }
96
126
  async updateHiddenPreset(idToDelete) {
97
127
  const {
98
128
  viewsStorage,
99
- fqdn
129
+ fqdn,
130
+ errorHandler,
131
+ translate: t
100
132
  } = this;
101
- await viewsStorage.setItem(fqdn, {
133
+ await errorHandler.withErrorHandler(() => viewsStorage.setItem(fqdn, {
102
134
  views: {
103
135
  hiddenPresetIds: {
104
136
  [idToDelete]: idToDelete
105
137
  }
106
138
  }
139
+ }), {
140
+ errorCodesMap: {
141
+ statusCodeError: {
142
+ INTERNAL: () => ({
143
+ message: t('cairo.manageView.Delete.CTA.error.toast')
144
+ })
145
+ }
146
+ }
107
147
  });
108
148
  }
109
- async updateDefaultView(defaultViewId) {
149
+ async updateDefaultView(view) {
110
150
  const {
111
151
  defaultViewStorage,
112
- fqdn
152
+ fqdn,
153
+ errorHandler,
154
+ translate: t
113
155
  } = this;
114
- await defaultViewStorage.setItem(`${fqdn}.defaultViewId`, defaultViewId != null ? {
115
- id: defaultViewId
116
- } : null);
156
+ await errorHandler.withErrorHandler(() => defaultViewStorage.setItem(`${fqdn}.defaultViewId`, view != null ? {
157
+ id: view.id
158
+ } : null), {
159
+ errorCodesMap: {
160
+ statusCodeError: {
161
+ INTERNAL: view ? () => ({
162
+ message: t('cairo.manageView.setAsDefault.error.toast', {
163
+ viewName: view.name
164
+ })
165
+ }) : undefined
166
+ }
167
+ }
168
+ });
117
169
  }
118
170
  }
119
171
  exports.ViewsService = ViewsService;
@@ -1 +1 @@
1
- {"version":3,"names":["ViewsService","constructor","params","_defineProperty2","default","viewsStorage","defaultViewStorage","fqdn","monitor","migrateFromLocalStorage","migrateItem","e","reportError","error","fetchViews","data","getItem","catch","message","views","list","hiddenPresetIds","Object","values","filter","view","sort","a","b","Date","createdAt","valueOf","id","fetchDefaultViewId","saveView","setItem","toISOString","deleteView","updateHiddenPreset","idToDelete","updateDefaultView","defaultViewId","exports"],"sources":["../../../src/services/viewsService.ts"],"sourcesContent":["import { View, ViewsDTO } from '../model';\nimport { WixPatternsMonitor, FiltersMap, DataCapsule } from '@wix/bex-core';\n\nexport interface ViewsServiceParams {\n readonly viewsStorage: DataCapsule;\n readonly defaultViewStorage: DataCapsule;\n readonly fqdn: string;\n readonly monitor: WixPatternsMonitor;\n}\n\nexport interface AppSettingsViewsSchema<F extends FiltersMap> {\n views: {\n hiddenPresetIds?: Record<string, string | null | undefined>;\n list?: Record<string, View<F> | null | undefined>;\n };\n}\n\nexport class ViewsService<F extends FiltersMap> {\n readonly viewsStorage;\n readonly defaultViewStorage;\n readonly fqdn;\n readonly monitor;\n\n constructor(params: ViewsServiceParams) {\n this.viewsStorage = params.viewsStorage;\n this.defaultViewStorage = params.defaultViewStorage;\n this.fqdn = params.fqdn;\n this.monitor = params.monitor;\n }\n\n async migrateFromLocalStorage() {\n const { viewsStorage, fqdn } = this;\n\n try {\n await (\n viewsStorage as { migrateItem?: (key: string) => unknown }\n ).migrateItem?.(fqdn);\n } catch (e) {\n this.monitor.reportError({\n error: e,\n });\n }\n }\n\n async fetchViews(): Promise<ViewsDTO<F> | null> {\n const { viewsStorage, fqdn } = this;\n\n const data = await viewsStorage\n .getItem<AppSettingsViewsSchema<F> | null | undefined>(fqdn)\n .catch((e) => {\n if (\n (e as Record<string, unknown> | undefined)?.message ===\n 'Key was not found in capsule'\n ) {\n return null;\n }\n throw e;\n });\n\n if (data?.views == null) {\n return null;\n }\n\n const { list, hiddenPresetIds } = data.views;\n\n return {\n views:\n list &&\n Object.values(list)\n .filter((view): view is View<F> => view != null)\n .sort(\n (a, b) =>\n new Date(a.createdAt ?? 0).valueOf() -\n new Date(b.createdAt ?? 0).valueOf(),\n ),\n hiddenPresetIds:\n hiddenPresetIds &&\n Object.values(hiddenPresetIds).filter((id): id is string => id != null),\n };\n }\n\n async fetchDefaultViewId(): Promise<string | null> {\n const { defaultViewStorage, fqdn } = this;\n\n const data = await defaultViewStorage\n .getItem<{ id: string } | string | null | undefined>(\n `${fqdn}.defaultViewId`,\n )\n .catch((e) => {\n if (\n (e as Record<string, unknown> | undefined)?.message ===\n 'Key was not found in capsule'\n ) {\n return null;\n }\n throw e;\n });\n\n return typeof data === 'string' ? data : data?.id ?? null;\n }\n\n async saveView(view: View<F>) {\n const { viewsStorage, fqdn } = this;\n\n await viewsStorage.setItem<AppSettingsViewsSchema<F> | null | undefined>(\n fqdn,\n {\n views: {\n list: {\n [view.id]: {\n ...view,\n createdAt: new Date().toISOString(),\n },\n },\n },\n },\n );\n }\n\n async deleteView(view: View<F>) {\n const { viewsStorage, fqdn } = this;\n\n await viewsStorage.setItem<AppSettingsViewsSchema<F> | null | undefined>(\n fqdn,\n {\n views: {\n list: {\n [view.id]: null,\n },\n },\n },\n );\n }\n\n async updateHiddenPreset(idToDelete: string) {\n const { viewsStorage, fqdn } = this;\n await viewsStorage.setItem<AppSettingsViewsSchema<F> | null | undefined>(\n fqdn,\n {\n views: {\n hiddenPresetIds: {\n [idToDelete]: idToDelete,\n },\n },\n },\n );\n }\n\n async updateDefaultView(defaultViewId?: string) {\n const { defaultViewStorage, fqdn } = this;\n await defaultViewStorage.setItem<{ id: string } | null | undefined>(\n `${fqdn}.defaultViewId`,\n defaultViewId != null\n ? {\n id: defaultViewId,\n }\n : null,\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["ViewsService","constructor","params","_defineProperty2","default","viewsStorage","defaultViewStorage","fqdn","monitor","errorHandler","translate","migrateFromLocalStorage","migrateItem","e","reportError","error","fetchViews","data","withErrorHandler","getItem","catch","message","errorCodesMap","views","list","hiddenPresetIds","Object","values","filter","view","sort","a","b","Date","createdAt","valueOf","id","fetchDefaultViewId","saveView","props","t","setItem","toISOString","statusCodeError","INTERNAL","isRename","deleteView","updateHiddenPreset","idToDelete","updateDefaultView","viewName","name","undefined","exports"],"sources":["../../../src/services/viewsService.ts"],"sourcesContent":["import { View, ViewsDTO } from '../model';\nimport {\n WixPatternsMonitor,\n FiltersMap,\n DataCapsule,\n WixPatternsContainer,\n} from '@wix/bex-core';\n\nexport interface ViewsServiceParams {\n readonly viewsStorage: DataCapsule;\n readonly defaultViewStorage: DataCapsule;\n readonly fqdn: string;\n readonly monitor: WixPatternsMonitor;\n readonly errorHandler: WixPatternsContainer['errorHandler'];\n readonly translate: WixPatternsContainer['translate'];\n}\n\nexport interface AppSettingsViewsSchema<F extends FiltersMap> {\n views: {\n hiddenPresetIds?: Record<string, string | null | undefined>;\n list?: Record<string, View<F> | null | undefined>;\n };\n}\n\nexport class ViewsService<F extends FiltersMap> {\n readonly viewsStorage;\n readonly defaultViewStorage;\n readonly fqdn;\n readonly monitor;\n readonly errorHandler;\n readonly translate;\n\n constructor(params: ViewsServiceParams) {\n this.viewsStorage = params.viewsStorage;\n this.defaultViewStorage = params.defaultViewStorage;\n this.fqdn = params.fqdn;\n this.monitor = params.monitor;\n this.errorHandler = params.errorHandler;\n this.translate = params.translate;\n }\n\n async migrateFromLocalStorage() {\n const { viewsStorage, fqdn } = this;\n\n try {\n await (\n viewsStorage as { migrateItem?: (key: string) => unknown }\n ).migrateItem?.(fqdn);\n } catch (e) {\n this.monitor.reportError({\n error: e,\n });\n }\n }\n\n async fetchViews(): Promise<ViewsDTO<F> | null> {\n const { viewsStorage, fqdn, errorHandler } = this;\n\n const data = await errorHandler.withErrorHandler(\n () =>\n viewsStorage\n .getItem<AppSettingsViewsSchema<F> | null | undefined>(fqdn)\n .catch((e) => {\n if (\n (e as Record<string, unknown> | undefined)?.message ===\n 'Key was not found in capsule'\n ) {\n return null;\n }\n throw e;\n }),\n {\n errorCodesMap: {},\n },\n );\n\n if (data?.views == null) {\n return null;\n }\n\n const { list, hiddenPresetIds } = data.views;\n\n return {\n views:\n list &&\n Object.values(list)\n .filter((view): view is View<F> => view != null)\n .sort(\n (a, b) =>\n new Date(a.createdAt ?? 0).valueOf() -\n new Date(b.createdAt ?? 0).valueOf(),\n ),\n hiddenPresetIds:\n hiddenPresetIds &&\n Object.values(hiddenPresetIds).filter((id): id is string => id != null),\n };\n }\n\n async fetchDefaultViewId(): Promise<string | null> {\n const { defaultViewStorage, fqdn, errorHandler } = this;\n\n const data = await errorHandler.withErrorHandler(\n () =>\n defaultViewStorage\n .getItem<{ id: string } | string | null | undefined>(\n `${fqdn}.defaultViewId`,\n )\n .catch((e) => {\n if (\n (e as Record<string, unknown> | undefined)?.message ===\n 'Key was not found in capsule'\n ) {\n return null;\n }\n throw e;\n }),\n {\n errorCodesMap: {},\n },\n );\n\n return typeof data === 'string' ? data : data?.id ?? null;\n }\n\n async saveView(view: View<F>, props?: { isRename?: boolean }) {\n const { viewsStorage, fqdn, errorHandler, translate: t } = this;\n\n await errorHandler.withErrorHandler(\n () =>\n viewsStorage.setItem<AppSettingsViewsSchema<F> | null | undefined>(\n fqdn,\n {\n views: {\n list: {\n [view.id]: {\n ...view,\n createdAt: new Date().toISOString(),\n },\n },\n },\n },\n ),\n {\n errorCodesMap: {\n statusCodeError: {\n INTERNAL: () => ({\n message: props?.isRename\n ? t('cairo.manageView.Rename.error.toast')\n : t('cairo.manageView.saveView.error.toast'),\n }),\n },\n },\n },\n );\n }\n\n async deleteView(view: View<F>) {\n const { viewsStorage, fqdn, errorHandler, translate: t } = this;\n\n await errorHandler.withErrorHandler(\n () =>\n viewsStorage.setItem<AppSettingsViewsSchema<F> | null | undefined>(\n fqdn,\n {\n views: {\n list: {\n [view.id]: null,\n },\n },\n },\n ),\n {\n errorCodesMap: {\n statusCodeError: {\n INTERNAL: () => ({\n message: t('cairo.manageView.Delete.CTA.error.toast'),\n }),\n },\n },\n },\n );\n }\n\n async updateHiddenPreset(idToDelete: string) {\n const { viewsStorage, fqdn, errorHandler, translate: t } = this;\n await errorHandler.withErrorHandler(\n () =>\n viewsStorage.setItem<AppSettingsViewsSchema<F> | null | undefined>(\n fqdn,\n {\n views: {\n hiddenPresetIds: {\n [idToDelete]: idToDelete,\n },\n },\n },\n ),\n {\n errorCodesMap: {\n statusCodeError: {\n INTERNAL: () => ({\n message: t('cairo.manageView.Delete.CTA.error.toast'),\n }),\n },\n },\n },\n );\n }\n\n async updateDefaultView(view?: View<F>) {\n const { defaultViewStorage, fqdn, errorHandler, translate: t } = this;\n await errorHandler.withErrorHandler(\n () =>\n defaultViewStorage.setItem<{ id: string } | null | undefined>(\n `${fqdn}.defaultViewId`,\n view != null\n ? {\n id: view.id,\n }\n : null,\n ),\n {\n errorCodesMap: {\n statusCodeError: {\n INTERNAL: view\n ? () => ({\n message: t('cairo.manageView.setAsDefault.error.toast', {\n viewName: view.name,\n }),\n })\n : undefined,\n },\n },\n },\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -99,7 +99,9 @@ class ViewsState {
99
99
  viewsStorage,
100
100
  defaultViewStorage,
101
101
  fqdn,
102
- monitor: container.internalMonitor
102
+ monitor: container.internalMonitor,
103
+ errorHandler: container.errorHandler,
104
+ translate: container.translate
103
105
  });
104
106
  this.collection = new _bexCore.CollectionState({
105
107
  ...container,
@@ -336,10 +338,15 @@ class ViewsState {
336
338
  viewName: newView.name
337
339
  })
338
340
  },
339
- errorToast: () => {
341
+ errorToast: err => {
342
+ var _this$container$error;
343
+ const resolvedError = (_this$container$error = this.container.errorHandler) == null || _this$container$error.getResolvedError == null ? void 0 : _this$container$error.getResolvedError(err);
340
344
  return {
341
345
  biName: isNew ? 'cairo-save-new-view-error' : 'cairo-save-view-changes-error',
342
- message: this.collection.translate('cairo.manageView.saveView.error.toast'),
346
+ message: resolvedError == null ? void 0 : resolvedError.message,
347
+ ...(resolvedError != null && resolvedError.action ? {
348
+ action: resolvedError == null ? void 0 : resolvedError.action
349
+ } : {}),
343
350
  type: 'ERROR'
344
351
  };
345
352
  }
@@ -399,10 +406,15 @@ class ViewsState {
399
406
  viewName: view.name
400
407
  })
401
408
  },
402
- errorToast: () => {
409
+ errorToast: err => {
410
+ var _this$container$error2;
411
+ const resolvedError = (_this$container$error2 = this.container.errorHandler) == null || _this$container$error2.getResolvedError == null ? void 0 : _this$container$error2.getResolvedError(err);
403
412
  return {
404
413
  biName: 'cairo-delete-view-error',
405
- message: this.collection.translate('cairo.manageView.Delete.CTA.error.toast'),
414
+ message: resolvedError == null ? void 0 : resolvedError.message,
415
+ ...(resolvedError != null && resolvedError.action ? {
416
+ action: resolvedError == null ? void 0 : resolvedError.action
417
+ } : {}),
406
418
  type: 'ERROR'
407
419
  };
408
420
  }
@@ -419,7 +431,9 @@ class ViewsState {
419
431
  };
420
432
  this.optimisticActions.createOne(newView, {
421
433
  submit: async () => {
422
- await this.viewsService.saveView(newView);
434
+ await this.viewsService.saveView(newView, {
435
+ isRename: true
436
+ });
423
437
  return [newView];
424
438
  },
425
439
  onUndo: () => {
@@ -440,10 +454,15 @@ class ViewsState {
440
454
  newViewName: newView.name
441
455
  })
442
456
  },
443
- errorToast: () => {
457
+ errorToast: err => {
458
+ var _this$container$error3;
459
+ const resolvedError = (_this$container$error3 = this.container.errorHandler) == null || _this$container$error3.getResolvedError == null ? void 0 : _this$container$error3.getResolvedError(err);
444
460
  return {
445
461
  biName: 'cairo-rename-view-error',
446
- message: this.collection.translate('cairo.manageView.Rename.error.toast'),
462
+ message: resolvedError == null ? void 0 : resolvedError.message,
463
+ ...(resolvedError != null && resolvedError.action ? {
464
+ action: resolvedError == null ? void 0 : resolvedError.action
465
+ } : {}),
447
466
  type: 'ERROR'
448
467
  };
449
468
  }
@@ -460,7 +479,7 @@ class ViewsState {
460
479
  };
461
480
  this.optimisticActions.createOne(newView, {
462
481
  submit: async () => {
463
- await this.viewsService.updateDefaultView(isDefault ? newView.id : undefined);
482
+ await this.viewsService.updateDefaultView(isDefault ? newView : undefined);
464
483
  return [newView];
465
484
  },
466
485
  onUndo: () => {
@@ -482,12 +501,17 @@ class ViewsState {
482
501
  viewName: newView.name
483
502
  })
484
503
  } : undefined,
485
- errorToast: () => {
504
+ errorToast: err => {
505
+ var _this$container$error4;
506
+ const resolvedError = (_this$container$error4 = this.container.errorHandler) == null || _this$container$error4.getResolvedError == null ? void 0 : _this$container$error4.getResolvedError(err);
486
507
  return {
487
508
  biName: 'cairo-set-default-view-error',
488
- message: this.collection.translate('cairo.manageView.setAsDefault.error.toast', {
509
+ message: (resolvedError == null ? void 0 : resolvedError.message) ?? this.collection.translate('cairo.manageView.setAsDefault.error.toast', {
489
510
  viewName: newView.name
490
511
  }),
512
+ ...(resolvedError != null && resolvedError.action ? {
513
+ action: resolvedError == null ? void 0 : resolvedError.action
514
+ } : {}),
491
515
  type: 'ERROR'
492
516
  };
493
517
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","_events","_services","_uuid","_model","_AutoCompleteReadonlyState","_ViewsLocalSearchState","MAX_SAVED_VIEWS","updatePresetViews","presets","hiddenPresetIds","reduce","views","cat","ind","_cat$views","filter","p","includes","id","map","isDefaultView","categoryId","categorySortInd","PREDEFINED_VIEWS_SORT_IND","isPreset","toNonPresetViews","v","SAVED_VIEWS_SORT_IND","getBasicCategories","SAVED_VIEWS_ID","name","prev","basicCategory","ViewsState","constructor","params","_defineProperty2","default","ModalState","AutoCompleteReadonlyState","EventEmitter","TaskState","container","fqdn","reportBI","initialSelect","allItemsViewProps","viewsStorage","_createComponentSettings","namespace","environment","defaultViewStorage","providerType","createEssentials","dataCapsule","scope","componentId","storageStrategy","undefined","viewsService","ViewsService","monitor","internalMonitor","collection","CollectionState","events","queryName","join","fetchData","initTask","status","isLoading","_this$_migrateOrdersV","_this$_fixMissingCont","migrateFromLocalStorage","_migrateOrdersViews","call","_fixMissingContactsViews","result","fetchViews","items","hidden","every","pr","_pr$views","length","push","getAllItemsView","itemKey","itemName","filters","localSearchState","ViewsLocalSearchState","optimisticActions","CollectionOptimisticActions","orderBy","sort","fieldName","item","order","basicCategories","currentView","defaultViewId","makeObservable","isReady","computed","observable","ref","selectView","action","unselectView","setDefaultViewId","_onActionUndo","reachedViewsLimit","isCurrentViewSelected","_getInitialSelectItem","_initialViewIdFromUrl","find","defaultPresetId","getDefaultPreset","ALL_ITEMS_VIEW_ID","index","actionName","newName","emit","viewId","needFiltersReset","_onTryAgain","_onError","createdAt","oldViewId","init","disposers","runOnce","promise","fetchDefaultViewId","forEach","disposer","getViews","slice","getView","_this$presets$reduce$","cur","view","_this$currentView","ALL_ITEMS_SORT_IND","translate","selectedColumns","sortDirections","saveViewChanges","viewBase","updatedView","saveView","newView","hasUndo","createNewView","uuid","isNew","Date","now","immediateAction","createOne","submit","showUndoToast","onUndo","onTryAgain","onError","_","successToast","biName","message","viewName","errorToast","type","deleteView","idForUndo","prevDefaultView","updateDefaultView","deleteOne","updateHiddenPreset","renameView","oldName","oldViewName","newViewName","setAsDefaultView","isDefault","isError","isFetching","isSuccess","_this$currentView2","hasViewName","exports"],"sources":["../../../src/state/ViewsState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n CollectionOptimisticActions,\n CollectionState,\n FiltersMap,\n ModalState,\n ReportBI,\n TaskState,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, observable } from 'mobx';\nimport { EventEmitter, TypedEmitter } from '@wix/bex-core/events';\nimport { ViewsService } from '../services';\nimport { v4 as uuid } from 'uuid';\nimport {\n ALL_ITEMS_SORT_IND,\n ALL_ITEMS_VIEW_ID,\n AllItemsViewProps,\n BasicCategory,\n Category,\n PREDEFINED_VIEWS_SORT_IND,\n PrivateView,\n SAVED_VIEWS_ID,\n SAVED_VIEWS_SORT_IND,\n View,\n ViewActionNameBI,\n ViewBase,\n} from '../model';\nimport { AutoCompleteReadonlyState } from '../components/CollectionViewsDropdown/AutoCompleteReadonlyState';\nimport { ViewsLocalSearchState } from './ViewsLocalSearchState';\n\nconst MAX_SAVED_VIEWS = 50;\n\nconst updatePresetViews = <F extends FiltersMap>(\n presets: Category<F>[],\n hiddenPresetIds: string[],\n): PrivateView<F>[] => {\n return presets.reduce(\n (views, cat, ind) => [\n ...views,\n ...(cat.views\n ?.filter((p) => !hiddenPresetIds.includes(p.id))\n .map(({ isDefaultView, ...p }) => ({\n ...p,\n categoryId: cat.id,\n categorySortInd: `${ind + +PREDEFINED_VIEWS_SORT_IND}`,\n isPreset: true,\n })) ?? []),\n ],\n [] as PrivateView<F>[],\n );\n};\n\nconst toNonPresetViews = <F extends FiltersMap>(\n views: View<F>[],\n categoryId: string,\n): PrivateView<F>[] => {\n return views.map((v) => ({\n ...v,\n categoryId,\n isPreset: false,\n categorySortInd: SAVED_VIEWS_SORT_IND,\n }));\n};\n\nconst getBasicCategories = <F extends FiltersMap>(\n presets: Category<F>[],\n): Record<string, BasicCategory> => {\n return {\n [SAVED_VIEWS_ID]: {\n id: SAVED_VIEWS_ID,\n name: '',\n },\n ...presets.reduce(\n (prev, { views, ...basicCategory }) => ({\n ...prev,\n [basicCategory.id]: basicCategory,\n }),\n {},\n ),\n };\n};\n\nexport interface ViewsStateParams<F extends FiltersMap> {\n oldNamespace: string;\n presets?: Category<F>[];\n container: WixPatternsContainer;\n fqdn: string;\n initialSelect?: true | ((item: View<F>, index: number) => boolean);\n allItemsViewProps?: AllItemsViewProps<F>;\n reportBI: ReportBI;\n}\n\nexport class ViewsState<F extends FiltersMap> {\n currentView: PrivateView<F> | null;\n defaultViewId: string | null;\n _initialViewIdFromUrl?: string | null;\n\n readonly initialSelect?: true | ((item: View<F>, index: number) => boolean);\n readonly viewsService: ViewsService<F>;\n readonly collection: CollectionState<PrivateView<F>>;\n readonly optimisticActions: CollectionOptimisticActions<\n PrivateView<F>,\n FiltersMap\n >;\n readonly saveViewModal = new ModalState();\n readonly renameViewModal = new ModalState();\n\n readonly autoCompleteReadonlyState = new AutoCompleteReadonlyState();\n\n readonly localSearchState;\n readonly reportBI;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n selectAndRefresh: (needFiltersReset?: boolean) => unknown;\n beforeSelectView: () => unknown;\n afterSelectView: (params: { view: PrivateView<F> }) => unknown;\n undoAction: (params: {\n actionName: ViewActionNameBI;\n viewId: string;\n newName?: string;\n }) => unknown;\n tryAgainAction: (params: { actionName: ViewActionNameBI }) => unknown;\n errorAction: (params: {\n actionName: ViewActionNameBI;\n createdAt: number;\n viewId: string;\n }) => unknown;\n }>;\n\n readonly presets: Category<F>[];\n readonly allItemsViewProps: AllItemsViewProps<F>;\n readonly basicCategories: Record<string, BasicCategory>;\n readonly initTask = new TaskState();\n readonly container;\n\n _migrateOrdersViews?: (state: ViewsState<F>) => unknown;\n _fixMissingContactsViews?: (state: ViewsState<F>) => unknown;\n\n constructor(params: Readonly<ViewsStateParams<F>>) {\n const { container, fqdn, reportBI } = params;\n this.container = container;\n this.reportBI = reportBI;\n this.initialSelect = params.initialSelect;\n this.presets = params.presets ?? [];\n this.allItemsViewProps = params.allItemsViewProps ?? {};\n\n const viewsStorage = container._createComponentSettings({\n namespace: 'cairo',\n });\n\n const { environment } = container;\n\n const defaultViewStorage =\n environment.providerType === 'bm'\n ? viewsStorage\n : container.createEssentials({\n dataCapsule: {\n namespace: 'cairo',\n scope: environment.componentId,\n storageStrategy:\n environment.providerType === 'giza'\n ? 'userPreferences'\n : undefined,\n },\n }).dataCapsule;\n\n this.viewsService = new ViewsService({\n viewsStorage,\n defaultViewStorage,\n fqdn,\n monitor: container.internalMonitor,\n });\n\n this.collection = new CollectionState<PrivateView<F>>({\n ...container,\n events: {},\n queryName: [fqdn, 'views'].join('/'),\n fetchData: async () => {\n const { viewsService, collection, allItemsViewProps } = this;\n\n if (collection.initTask.status.isLoading) {\n await viewsService.migrateFromLocalStorage();\n await this._migrateOrdersViews?.(this);\n await this._fixMissingContactsViews?.(this);\n }\n\n const result = await viewsService.fetchViews();\n\n const { views = [], hiddenPresetIds = [] } = result ?? {};\n const items = [] as PrivateView<F>[];\n\n if (\n !allItemsViewProps.hidden ||\n // we ignore the hidden flag if there are no presets\n this.presets.every((pr) => !pr.views?.length)\n ) {\n items.push(await this.getAllItemsView(this.allItemsViewProps));\n }\n\n items.push(...(toNonPresetViews(views, SAVED_VIEWS_ID) ?? []));\n items.push(...updatePresetViews(this.presets, hiddenPresetIds));\n\n return {\n items,\n };\n },\n itemKey: ({ id }) => id,\n itemName: ({ name }) => name,\n filters: {},\n });\n\n this.localSearchState = new ViewsLocalSearchState({ views: this });\n\n this.optimisticActions = new CollectionOptimisticActions({\n container,\n collection: this.collection,\n orderBy: ({ sort }) => [\n ...(sort || []),\n {\n fieldName: (item) => item.categorySortInd,\n order: 'asc',\n },\n ],\n });\n\n this.basicCategories = getBasicCategories(this.presets);\n\n this.currentView = null;\n this.defaultViewId = null;\n\n makeObservable(this, {\n isReady: computed,\n isDefaultView: computed,\n currentView: observable.ref,\n defaultViewId: observable.ref,\n selectView: action,\n unselectView: action,\n setDefaultViewId: action,\n _onActionUndo: action,\n reachedViewsLimit: computed,\n isCurrentViewSelected: computed,\n });\n }\n\n _getInitialSelectItem(): PrivateView<F> | undefined {\n const { initialSelect, collection, _initialViewIdFromUrl, defaultViewId } =\n this;\n const {\n result: { items },\n } = collection;\n\n if (initialSelect == null) {\n if (this._initialViewIdFromUrl) {\n return items.find((item) => item.id === _initialViewIdFromUrl);\n }\n if (defaultViewId) {\n return items.find((item) => item.id === defaultViewId);\n }\n const defaultPresetId = this.getDefaultPreset() ?? ALL_ITEMS_VIEW_ID;\n\n return items.find((item) => item.id === defaultPresetId);\n }\n\n if (initialSelect === true) {\n return items[0];\n }\n return items.find((item, index) => initialSelect(item, index));\n }\n\n _onActionUndo(\n id: string,\n actionName: ViewActionNameBI,\n newName?: string,\n ): void {\n this.events.emit('undoAction', { actionName, viewId: id, newName });\n this.selectView({ id, needFiltersReset: false });\n }\n\n _onTryAgain(actionName: ViewActionNameBI): void {\n this.events.emit('tryAgainAction', { actionName });\n }\n\n _onError(\n actionName: ViewActionNameBI,\n createdAt: number,\n oldViewId?: string,\n viewId?: string,\n ): void {\n if (oldViewId) {\n this.selectView({ id: oldViewId, needFiltersReset: false });\n } else {\n this.unselectView();\n }\n this.events.emit('errorAction', {\n actionName,\n createdAt,\n viewId: viewId ?? oldViewId ?? '',\n });\n }\n\n init() {\n const { collection, localSearchState } = this;\n\n const disposers = [\n collection.init(),\n this.optimisticActions.init(),\n localSearchState.init(),\n ];\n\n this.initTask.runOnce(async () => {\n await collection.initTask.status.promise;\n this.setDefaultViewId(await this.viewsService.fetchDefaultViewId());\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n getViews(): PrivateView<F>[] {\n return this.collection.result.items.slice();\n }\n\n getView(viewId: string): PrivateView<F> | undefined {\n return this.getViews().find(({ id }) => id === viewId);\n }\n\n getDefaultPreset(): string | undefined {\n return this.presets\n .reduce((prev, cur) => [...prev, ...cur.views], [] as View<F>[])\n .find((view) => view.isDefaultView)?.id;\n }\n\n get isDefaultView() {\n return this.currentView?.id === this.defaultViewId;\n }\n\n async getAllItemsView(view: AllItemsViewProps<F>): Promise<PrivateView<F>> {\n const { container } = this;\n await container.initTask.status.promise;\n return {\n categorySortInd: ALL_ITEMS_SORT_IND,\n id: ALL_ITEMS_VIEW_ID,\n name:\n view.name ?? container.translate('cairo.viewsDropdown.allItems.label'),\n selectedColumns: view.selectedColumns,\n sortDirections: view.sortDirections,\n isPreset: true,\n };\n }\n\n async saveViewChanges(viewBase: ViewBase<F>): Promise<PrivateView<F> | null> {\n if (!this.currentView) {\n return null;\n }\n\n const updatedView = {\n ...this.currentView,\n ...viewBase,\n };\n\n return this.saveView({\n newView: updatedView,\n hasUndo: true,\n oldViewId: this.currentView.id,\n });\n }\n\n createNewView(name: string, viewBase: ViewBase<F>): PrivateView<F> {\n return {\n ...viewBase,\n categorySortInd: SAVED_VIEWS_SORT_IND,\n categoryId: SAVED_VIEWS_ID,\n isPreset: false,\n name,\n id: uuid(),\n };\n }\n\n async saveView({\n newView,\n hasUndo = false,\n isNew = false,\n oldViewId,\n }: {\n newView: PrivateView<F>;\n hasUndo?: boolean;\n isNew?: boolean;\n oldViewId?: string;\n }): Promise<PrivateView<F>> {\n const createdAt = Date.now();\n const immediateAction = () => {\n this.selectView({ id: newView.id });\n };\n\n this.optimisticActions.createOne(newView, {\n submit: async () => {\n await this.viewsService.saveView(newView as View<F>);\n return [newView];\n },\n showUndoToast: hasUndo,\n onUndo: () => {\n this._onActionUndo(\n newView.id,\n isNew ? 'view-save-new' : 'view-save-changes',\n );\n },\n onTryAgain: () => {\n immediateAction();\n this._onTryAgain(isNew ? 'view-save-new' : 'view-save-changes');\n },\n onError: (_: unknown) => {\n this._onError(\n isNew ? 'view-save-new' : 'view-save-changes',\n createdAt,\n oldViewId,\n newView.id,\n );\n },\n successToast: {\n biName: isNew\n ? 'cairo-save-new-view-success'\n : 'cairo-save-view-changes-success',\n message: isNew\n ? this.collection.translate('cairo.saveView.Success.toast', {\n viewName: newView.name,\n })\n : this.collection.translate(\n 'cairo.manageView.saveChanges.Success.toast',\n {\n viewName: newView.name,\n },\n ),\n },\n errorToast: () => {\n return {\n biName: isNew\n ? 'cairo-save-new-view-error'\n : 'cairo-save-view-changes-error',\n message: this.collection.translate(\n 'cairo.manageView.saveView.error.toast',\n ),\n type: 'ERROR',\n };\n },\n });\n\n immediateAction();\n return newView;\n }\n\n public async deleteView(view: PrivateView<F>): Promise<void> {\n const { viewsService, currentView } = this;\n const { id, isPreset } = view;\n const isCurrentViewSelected = currentView?.id === id;\n const idForUndo = currentView?.id;\n const prevDefaultView = this.defaultViewId;\n\n const createdAt = Date.now();\n const immediateAction = async () => {\n if (id === this.defaultViewId) {\n await this.viewsService.updateDefaultView(undefined);\n this.setDefaultViewId(null);\n }\n if (isCurrentViewSelected) {\n this.unselectView();\n }\n };\n this.optimisticActions.deleteOne(view, {\n submit: async () => {\n if (isPreset) {\n await viewsService.updateHiddenPreset(id);\n } else {\n await viewsService.deleteView(view);\n }\n },\n onUndo: () => {\n if (!idForUndo) {\n return;\n }\n this.setDefaultViewId(prevDefaultView);\n this._onActionUndo(idForUndo, 'view-delete');\n },\n onTryAgain: async () => {\n await immediateAction();\n this._onTryAgain('view-delete');\n },\n onError: (_: unknown) => {\n this.setDefaultViewId(prevDefaultView);\n this._onError('view-delete', createdAt, idForUndo);\n },\n showUndoToast: true,\n successToast: {\n biName: 'cairo-delete-view-success',\n message: this.collection.translate('cairo.deleteView.Success.toast', {\n viewName: view.name,\n }),\n },\n errorToast: () => {\n return {\n biName: 'cairo-delete-view-error',\n message: this.collection.translate(\n 'cairo.manageView.Delete.CTA.error.toast',\n ),\n type: 'ERROR',\n };\n },\n });\n\n immediateAction();\n return;\n }\n\n async renameView(\n newView: PrivateView<F>,\n oldName: string,\n ): Promise<PrivateView<F>> {\n const createdAt = Date.now();\n const immediateAction = () => {\n this.selectView({ id: newView.id });\n };\n this.optimisticActions.createOne(newView, {\n submit: async () => {\n await this.viewsService.saveView(newView as View<F>);\n return [newView];\n },\n onUndo: () => {\n this._onActionUndo(newView.id, 'view-rename', newView.name);\n },\n onTryAgain: () => {\n immediateAction();\n this._onTryAgain('view-rename');\n },\n onError: (_: unknown) => {\n this._onError('view-rename', createdAt, newView.id);\n },\n showUndoToast: true,\n successToast: {\n biName: 'cairo-rename-view-success',\n message: this.collection.translate(\n 'cairo.manageView.Rename.Success.toast',\n {\n oldViewName: oldName,\n newViewName: newView.name,\n },\n ),\n },\n errorToast: () => {\n return {\n biName: 'cairo-rename-view-error',\n message: this.collection.translate(\n 'cairo.manageView.Rename.error.toast',\n ),\n type: 'ERROR',\n };\n },\n });\n\n immediateAction();\n return newView;\n }\n\n async setAsDefaultView(\n newView: PrivateView<F>,\n isDefault: boolean,\n ): Promise<PrivateView<F>> {\n const createdAt = Date.now();\n const prevDefaultView = this.defaultViewId;\n const biName = isDefault ? 'view-set-as-default' : 'view-unset-as-default';\n const immediateAction = () => {\n this.setDefaultViewId(isDefault ? newView.id : null);\n };\n\n this.optimisticActions.createOne(newView, {\n submit: async () => {\n await this.viewsService.updateDefaultView(\n isDefault ? newView.id : undefined,\n );\n return [newView];\n },\n onUndo: () => {\n this.setDefaultViewId(prevDefaultView);\n this._onActionUndo(newView.id, biName);\n },\n onTryAgain: () => {\n immediateAction();\n this._onTryAgain(biName);\n },\n onError: (_: unknown) => {\n this.setDefaultViewId(prevDefaultView);\n this._onError(biName, createdAt, newView.id);\n },\n showUndoToast: isDefault,\n successToast: isDefault\n ? {\n biName: 'cairo-set-default-view-success',\n message: this.collection.translate(\n 'cairo.manageView.setAsDefault.success.toast',\n {\n viewName: newView.name,\n },\n ),\n }\n : undefined,\n errorToast: () => {\n return {\n biName: 'cairo-set-default-view-error',\n message: this.collection.translate(\n 'cairo.manageView.setAsDefault.error.toast',\n {\n viewName: newView.name,\n },\n ),\n type: 'ERROR',\n };\n },\n });\n immediateAction();\n return newView;\n }\n\n get isReady(): boolean {\n const { isError, isFetching, isSuccess } = this.collection.result.status;\n return !isError && !isFetching && isSuccess;\n }\n\n setDefaultViewId(defaultViewId: string | null) {\n this.defaultViewId = defaultViewId;\n }\n\n unselectView() {\n this.currentView = null;\n }\n\n selectView({\n id,\n needFiltersReset,\n }: {\n id: string;\n needFiltersReset?: boolean;\n }): void {\n const view = this.getView(id);\n this.currentView = view ?? null;\n this.events.emit('selectAndRefresh', needFiltersReset);\n }\n\n get reachedViewsLimit(): boolean {\n return (\n this.getViews().filter(({ isPreset }) => !isPreset).length >=\n MAX_SAVED_VIEWS\n );\n }\n\n get isCurrentViewSelected(): boolean {\n return !!this.currentView?.id;\n }\n\n hasViewName(viewName: string): boolean {\n return this.getViews()\n .map(({ name }) => name)\n .includes(viewName);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_mobx","_events","_services","_uuid","_model","_AutoCompleteReadonlyState","_ViewsLocalSearchState","MAX_SAVED_VIEWS","updatePresetViews","presets","hiddenPresetIds","reduce","views","cat","ind","_cat$views","filter","p","includes","id","map","isDefaultView","categoryId","categorySortInd","PREDEFINED_VIEWS_SORT_IND","isPreset","toNonPresetViews","v","SAVED_VIEWS_SORT_IND","getBasicCategories","SAVED_VIEWS_ID","name","prev","basicCategory","ViewsState","constructor","params","_defineProperty2","default","ModalState","AutoCompleteReadonlyState","EventEmitter","TaskState","container","fqdn","reportBI","initialSelect","allItemsViewProps","viewsStorage","_createComponentSettings","namespace","environment","defaultViewStorage","providerType","createEssentials","dataCapsule","scope","componentId","storageStrategy","undefined","viewsService","ViewsService","monitor","internalMonitor","errorHandler","translate","collection","CollectionState","events","queryName","join","fetchData","initTask","status","isLoading","_this$_migrateOrdersV","_this$_fixMissingCont","migrateFromLocalStorage","_migrateOrdersViews","call","_fixMissingContactsViews","result","fetchViews","items","hidden","every","pr","_pr$views","length","push","getAllItemsView","itemKey","itemName","filters","localSearchState","ViewsLocalSearchState","optimisticActions","CollectionOptimisticActions","orderBy","sort","fieldName","item","order","basicCategories","currentView","defaultViewId","makeObservable","isReady","computed","observable","ref","selectView","action","unselectView","setDefaultViewId","_onActionUndo","reachedViewsLimit","isCurrentViewSelected","_getInitialSelectItem","_initialViewIdFromUrl","find","defaultPresetId","getDefaultPreset","ALL_ITEMS_VIEW_ID","index","actionName","newName","emit","viewId","needFiltersReset","_onTryAgain","_onError","createdAt","oldViewId","init","disposers","runOnce","promise","fetchDefaultViewId","forEach","disposer","getViews","slice","getView","_this$presets$reduce$","cur","view","_this$currentView","ALL_ITEMS_SORT_IND","selectedColumns","sortDirections","saveViewChanges","viewBase","updatedView","saveView","newView","hasUndo","createNewView","uuid","isNew","Date","now","immediateAction","createOne","submit","showUndoToast","onUndo","onTryAgain","onError","_","successToast","biName","message","viewName","errorToast","err","_this$container$error","resolvedError","getResolvedError","type","deleteView","idForUndo","prevDefaultView","updateDefaultView","deleteOne","updateHiddenPreset","_this$container$error2","renameView","oldName","isRename","oldViewName","newViewName","_this$container$error3","setAsDefaultView","isDefault","_this$container$error4","isError","isFetching","isSuccess","_this$currentView2","hasViewName","exports"],"sources":["../../../src/state/ViewsState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n CollectionOptimisticActions,\n CollectionState,\n FiltersMap,\n ModalState,\n ReportBI,\n TaskState,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, observable } from 'mobx';\nimport { EventEmitter, TypedEmitter } from '@wix/bex-core/events';\nimport { ViewsService } from '../services';\nimport { v4 as uuid } from 'uuid';\nimport {\n ALL_ITEMS_SORT_IND,\n ALL_ITEMS_VIEW_ID,\n AllItemsViewProps,\n BasicCategory,\n Category,\n PREDEFINED_VIEWS_SORT_IND,\n PrivateView,\n SAVED_VIEWS_ID,\n SAVED_VIEWS_SORT_IND,\n View,\n ViewActionNameBI,\n ViewBase,\n} from '../model';\nimport { AutoCompleteReadonlyState } from '../components/CollectionViewsDropdown/AutoCompleteReadonlyState';\nimport { ViewsLocalSearchState } from './ViewsLocalSearchState';\n\nconst MAX_SAVED_VIEWS = 50;\n\nconst updatePresetViews = <F extends FiltersMap>(\n presets: Category<F>[],\n hiddenPresetIds: string[],\n): PrivateView<F>[] => {\n return presets.reduce(\n (views, cat, ind) => [\n ...views,\n ...(cat.views\n ?.filter((p) => !hiddenPresetIds.includes(p.id))\n .map(({ isDefaultView, ...p }) => ({\n ...p,\n categoryId: cat.id,\n categorySortInd: `${ind + +PREDEFINED_VIEWS_SORT_IND}`,\n isPreset: true,\n })) ?? []),\n ],\n [] as PrivateView<F>[],\n );\n};\n\nconst toNonPresetViews = <F extends FiltersMap>(\n views: View<F>[],\n categoryId: string,\n): PrivateView<F>[] => {\n return views.map((v) => ({\n ...v,\n categoryId,\n isPreset: false,\n categorySortInd: SAVED_VIEWS_SORT_IND,\n }));\n};\n\nconst getBasicCategories = <F extends FiltersMap>(\n presets: Category<F>[],\n): Record<string, BasicCategory> => {\n return {\n [SAVED_VIEWS_ID]: {\n id: SAVED_VIEWS_ID,\n name: '',\n },\n ...presets.reduce(\n (prev, { views, ...basicCategory }) => ({\n ...prev,\n [basicCategory.id]: basicCategory,\n }),\n {},\n ),\n };\n};\n\nexport interface ViewsStateParams<F extends FiltersMap> {\n oldNamespace: string;\n presets?: Category<F>[];\n container: WixPatternsContainer;\n fqdn: string;\n initialSelect?: true | ((item: View<F>, index: number) => boolean);\n allItemsViewProps?: AllItemsViewProps<F>;\n reportBI: ReportBI;\n}\n\nexport class ViewsState<F extends FiltersMap> {\n currentView: PrivateView<F> | null;\n defaultViewId: string | null;\n _initialViewIdFromUrl?: string | null;\n\n readonly initialSelect?: true | ((item: View<F>, index: number) => boolean);\n readonly viewsService: ViewsService<F>;\n readonly collection: CollectionState<PrivateView<F>>;\n readonly optimisticActions: CollectionOptimisticActions<\n PrivateView<F>,\n FiltersMap\n >;\n readonly saveViewModal = new ModalState();\n readonly renameViewModal = new ModalState();\n\n readonly autoCompleteReadonlyState = new AutoCompleteReadonlyState();\n\n readonly localSearchState;\n readonly reportBI;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n selectAndRefresh: (needFiltersReset?: boolean) => unknown;\n beforeSelectView: () => unknown;\n afterSelectView: (params: { view: PrivateView<F> }) => unknown;\n undoAction: (params: {\n actionName: ViewActionNameBI;\n viewId: string;\n newName?: string;\n }) => unknown;\n tryAgainAction: (params: { actionName: ViewActionNameBI }) => unknown;\n errorAction: (params: {\n actionName: ViewActionNameBI;\n createdAt: number;\n viewId: string;\n }) => unknown;\n }>;\n\n readonly presets: Category<F>[];\n readonly allItemsViewProps: AllItemsViewProps<F>;\n readonly basicCategories: Record<string, BasicCategory>;\n readonly initTask = new TaskState();\n readonly container;\n\n _migrateOrdersViews?: (state: ViewsState<F>) => unknown;\n _fixMissingContactsViews?: (state: ViewsState<F>) => unknown;\n\n constructor(params: Readonly<ViewsStateParams<F>>) {\n const { container, fqdn, reportBI } = params;\n this.container = container;\n this.reportBI = reportBI;\n this.initialSelect = params.initialSelect;\n this.presets = params.presets ?? [];\n this.allItemsViewProps = params.allItemsViewProps ?? {};\n\n const viewsStorage = container._createComponentSettings({\n namespace: 'cairo',\n });\n\n const { environment } = container;\n\n const defaultViewStorage =\n environment.providerType === 'bm'\n ? viewsStorage\n : container.createEssentials({\n dataCapsule: {\n namespace: 'cairo',\n scope: environment.componentId,\n storageStrategy:\n environment.providerType === 'giza'\n ? 'userPreferences'\n : undefined,\n },\n }).dataCapsule;\n\n this.viewsService = new ViewsService({\n viewsStorage,\n defaultViewStorage,\n fqdn,\n monitor: container.internalMonitor,\n errorHandler: container.errorHandler,\n translate: container.translate,\n });\n\n this.collection = new CollectionState<PrivateView<F>>({\n ...container,\n events: {},\n queryName: [fqdn, 'views'].join('/'),\n fetchData: async () => {\n const { viewsService, collection, allItemsViewProps } = this;\n\n if (collection.initTask.status.isLoading) {\n await viewsService.migrateFromLocalStorage();\n await this._migrateOrdersViews?.(this);\n await this._fixMissingContactsViews?.(this);\n }\n\n const result = await viewsService.fetchViews();\n\n const { views = [], hiddenPresetIds = [] } = result ?? {};\n const items = [] as PrivateView<F>[];\n\n if (\n !allItemsViewProps.hidden ||\n // we ignore the hidden flag if there are no presets\n this.presets.every((pr) => !pr.views?.length)\n ) {\n items.push(await this.getAllItemsView(this.allItemsViewProps));\n }\n\n items.push(...(toNonPresetViews(views, SAVED_VIEWS_ID) ?? []));\n items.push(...updatePresetViews(this.presets, hiddenPresetIds));\n\n return {\n items,\n };\n },\n itemKey: ({ id }) => id,\n itemName: ({ name }) => name,\n filters: {},\n });\n\n this.localSearchState = new ViewsLocalSearchState({ views: this });\n\n this.optimisticActions = new CollectionOptimisticActions({\n container,\n collection: this.collection,\n orderBy: ({ sort }) => [\n ...(sort || []),\n {\n fieldName: (item) => item.categorySortInd,\n order: 'asc',\n },\n ],\n });\n\n this.basicCategories = getBasicCategories(this.presets);\n\n this.currentView = null;\n this.defaultViewId = null;\n\n makeObservable(this, {\n isReady: computed,\n isDefaultView: computed,\n currentView: observable.ref,\n defaultViewId: observable.ref,\n selectView: action,\n unselectView: action,\n setDefaultViewId: action,\n _onActionUndo: action,\n reachedViewsLimit: computed,\n isCurrentViewSelected: computed,\n });\n }\n\n _getInitialSelectItem(): PrivateView<F> | undefined {\n const { initialSelect, collection, _initialViewIdFromUrl, defaultViewId } =\n this;\n const {\n result: { items },\n } = collection;\n\n if (initialSelect == null) {\n if (this._initialViewIdFromUrl) {\n return items.find((item) => item.id === _initialViewIdFromUrl);\n }\n if (defaultViewId) {\n return items.find((item) => item.id === defaultViewId);\n }\n const defaultPresetId = this.getDefaultPreset() ?? ALL_ITEMS_VIEW_ID;\n\n return items.find((item) => item.id === defaultPresetId);\n }\n\n if (initialSelect === true) {\n return items[0];\n }\n return items.find((item, index) => initialSelect(item, index));\n }\n\n _onActionUndo(\n id: string,\n actionName: ViewActionNameBI,\n newName?: string,\n ): void {\n this.events.emit('undoAction', { actionName, viewId: id, newName });\n this.selectView({ id, needFiltersReset: false });\n }\n\n _onTryAgain(actionName: ViewActionNameBI): void {\n this.events.emit('tryAgainAction', { actionName });\n }\n\n _onError(\n actionName: ViewActionNameBI,\n createdAt: number,\n oldViewId?: string,\n viewId?: string,\n ): void {\n if (oldViewId) {\n this.selectView({ id: oldViewId, needFiltersReset: false });\n } else {\n this.unselectView();\n }\n this.events.emit('errorAction', {\n actionName,\n createdAt,\n viewId: viewId ?? oldViewId ?? '',\n });\n }\n\n init() {\n const { collection, localSearchState } = this;\n\n const disposers = [\n collection.init(),\n this.optimisticActions.init(),\n localSearchState.init(),\n ];\n\n this.initTask.runOnce(async () => {\n await collection.initTask.status.promise;\n this.setDefaultViewId(await this.viewsService.fetchDefaultViewId());\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n getViews(): PrivateView<F>[] {\n return this.collection.result.items.slice();\n }\n\n getView(viewId: string): PrivateView<F> | undefined {\n return this.getViews().find(({ id }) => id === viewId);\n }\n\n getDefaultPreset(): string | undefined {\n return this.presets\n .reduce((prev, cur) => [...prev, ...cur.views], [] as View<F>[])\n .find((view) => view.isDefaultView)?.id;\n }\n\n get isDefaultView() {\n return this.currentView?.id === this.defaultViewId;\n }\n\n async getAllItemsView(view: AllItemsViewProps<F>): Promise<PrivateView<F>> {\n const { container } = this;\n await container.initTask.status.promise;\n return {\n categorySortInd: ALL_ITEMS_SORT_IND,\n id: ALL_ITEMS_VIEW_ID,\n name:\n view.name ?? container.translate('cairo.viewsDropdown.allItems.label'),\n selectedColumns: view.selectedColumns,\n sortDirections: view.sortDirections,\n isPreset: true,\n };\n }\n\n async saveViewChanges(viewBase: ViewBase<F>): Promise<PrivateView<F> | null> {\n if (!this.currentView) {\n return null;\n }\n\n const updatedView = {\n ...this.currentView,\n ...viewBase,\n };\n\n return this.saveView({\n newView: updatedView,\n hasUndo: true,\n oldViewId: this.currentView.id,\n });\n }\n\n createNewView(name: string, viewBase: ViewBase<F>): PrivateView<F> {\n return {\n ...viewBase,\n categorySortInd: SAVED_VIEWS_SORT_IND,\n categoryId: SAVED_VIEWS_ID,\n isPreset: false,\n name,\n id: uuid(),\n };\n }\n\n async saveView({\n newView,\n hasUndo = false,\n isNew = false,\n oldViewId,\n }: {\n newView: PrivateView<F>;\n hasUndo?: boolean;\n isNew?: boolean;\n oldViewId?: string;\n }): Promise<PrivateView<F>> {\n const createdAt = Date.now();\n const immediateAction = () => {\n this.selectView({ id: newView.id });\n };\n\n this.optimisticActions.createOne(newView, {\n submit: async () => {\n await this.viewsService.saveView(newView as View<F>);\n return [newView];\n },\n showUndoToast: hasUndo,\n onUndo: () => {\n this._onActionUndo(\n newView.id,\n isNew ? 'view-save-new' : 'view-save-changes',\n );\n },\n onTryAgain: () => {\n immediateAction();\n this._onTryAgain(isNew ? 'view-save-new' : 'view-save-changes');\n },\n onError: (_: unknown) => {\n this._onError(\n isNew ? 'view-save-new' : 'view-save-changes',\n createdAt,\n oldViewId,\n newView.id,\n );\n },\n successToast: {\n biName: isNew\n ? 'cairo-save-new-view-success'\n : 'cairo-save-view-changes-success',\n message: isNew\n ? this.collection.translate('cairo.saveView.Success.toast', {\n viewName: newView.name,\n })\n : this.collection.translate(\n 'cairo.manageView.saveChanges.Success.toast',\n {\n viewName: newView.name,\n },\n ),\n },\n errorToast: (err) => {\n const resolvedError =\n this.container.errorHandler?.getResolvedError?.(err);\n return {\n biName: isNew\n ? 'cairo-save-new-view-error'\n : 'cairo-save-view-changes-error',\n message: resolvedError?.message!,\n ...(resolvedError?.action ? { action: resolvedError?.action } : {}),\n type: 'ERROR',\n };\n },\n });\n\n immediateAction();\n return newView;\n }\n\n public async deleteView(view: PrivateView<F>): Promise<void> {\n const { viewsService, currentView } = this;\n const { id, isPreset } = view;\n const isCurrentViewSelected = currentView?.id === id;\n const idForUndo = currentView?.id;\n const prevDefaultView = this.defaultViewId;\n\n const createdAt = Date.now();\n const immediateAction = async () => {\n if (id === this.defaultViewId) {\n await this.viewsService.updateDefaultView(undefined);\n this.setDefaultViewId(null);\n }\n if (isCurrentViewSelected) {\n this.unselectView();\n }\n };\n this.optimisticActions.deleteOne(view, {\n submit: async () => {\n if (isPreset) {\n await viewsService.updateHiddenPreset(id);\n } else {\n await viewsService.deleteView(view);\n }\n },\n onUndo: () => {\n if (!idForUndo) {\n return;\n }\n this.setDefaultViewId(prevDefaultView);\n this._onActionUndo(idForUndo, 'view-delete');\n },\n onTryAgain: async () => {\n await immediateAction();\n this._onTryAgain('view-delete');\n },\n onError: (_: unknown) => {\n this.setDefaultViewId(prevDefaultView);\n this._onError('view-delete', createdAt, idForUndo);\n },\n showUndoToast: true,\n successToast: {\n biName: 'cairo-delete-view-success',\n message: this.collection.translate('cairo.deleteView.Success.toast', {\n viewName: view.name,\n }),\n },\n errorToast: (err) => {\n const resolvedError =\n this.container.errorHandler?.getResolvedError?.(err);\n return {\n biName: 'cairo-delete-view-error',\n message: resolvedError?.message!,\n ...(resolvedError?.action ? { action: resolvedError?.action } : {}),\n type: 'ERROR',\n };\n },\n });\n\n immediateAction();\n return;\n }\n\n async renameView(\n newView: PrivateView<F>,\n oldName: string,\n ): Promise<PrivateView<F>> {\n const createdAt = Date.now();\n const immediateAction = () => {\n this.selectView({ id: newView.id });\n };\n this.optimisticActions.createOne(newView, {\n submit: async () => {\n await this.viewsService.saveView(newView as View<F>, {\n isRename: true,\n });\n return [newView];\n },\n onUndo: () => {\n this._onActionUndo(newView.id, 'view-rename', newView.name);\n },\n onTryAgain: () => {\n immediateAction();\n this._onTryAgain('view-rename');\n },\n onError: (_: unknown) => {\n this._onError('view-rename', createdAt, newView.id);\n },\n showUndoToast: true,\n successToast: {\n biName: 'cairo-rename-view-success',\n message: this.collection.translate(\n 'cairo.manageView.Rename.Success.toast',\n {\n oldViewName: oldName,\n newViewName: newView.name,\n },\n ),\n },\n errorToast: (err) => {\n const resolvedError =\n this.container.errorHandler?.getResolvedError?.(err);\n return {\n biName: 'cairo-rename-view-error',\n message: resolvedError?.message!,\n ...(resolvedError?.action ? { action: resolvedError?.action } : {}),\n type: 'ERROR',\n };\n },\n });\n\n immediateAction();\n return newView;\n }\n\n async setAsDefaultView(\n newView: PrivateView<F>,\n isDefault: boolean,\n ): Promise<PrivateView<F>> {\n const createdAt = Date.now();\n const prevDefaultView = this.defaultViewId;\n const biName = isDefault ? 'view-set-as-default' : 'view-unset-as-default';\n const immediateAction = () => {\n this.setDefaultViewId(isDefault ? newView.id : null);\n };\n\n this.optimisticActions.createOne(newView, {\n submit: async () => {\n await this.viewsService.updateDefaultView(\n isDefault ? newView : undefined,\n );\n return [newView];\n },\n onUndo: () => {\n this.setDefaultViewId(prevDefaultView);\n this._onActionUndo(newView.id, biName);\n },\n onTryAgain: () => {\n immediateAction();\n this._onTryAgain(biName);\n },\n onError: (_: unknown) => {\n this.setDefaultViewId(prevDefaultView);\n this._onError(biName, createdAt, newView.id);\n },\n showUndoToast: isDefault,\n successToast: isDefault\n ? {\n biName: 'cairo-set-default-view-success',\n message: this.collection.translate(\n 'cairo.manageView.setAsDefault.success.toast',\n {\n viewName: newView.name,\n },\n ),\n }\n : undefined,\n errorToast: (err) => {\n const resolvedError =\n this.container.errorHandler?.getResolvedError?.(err);\n return {\n biName: 'cairo-set-default-view-error',\n message:\n resolvedError?.message ??\n this.collection.translate(\n 'cairo.manageView.setAsDefault.error.toast',\n {\n viewName: newView.name,\n },\n ),\n ...(resolvedError?.action ? { action: resolvedError?.action } : {}),\n type: 'ERROR',\n };\n },\n });\n immediateAction();\n return newView;\n }\n\n get isReady(): boolean {\n const { isError, isFetching, isSuccess } = this.collection.result.status;\n return !isError && !isFetching && isSuccess;\n }\n\n setDefaultViewId(defaultViewId: string | null) {\n this.defaultViewId = defaultViewId;\n }\n\n unselectView() {\n this.currentView = null;\n }\n\n selectView({\n id,\n needFiltersReset,\n }: {\n id: string;\n needFiltersReset?: boolean;\n }): void {\n const view = this.getView(id);\n this.currentView = view ?? null;\n this.events.emit('selectAndRefresh', needFiltersReset);\n }\n\n get reachedViewsLimit(): boolean {\n return (\n this.getViews().filter(({ isPreset }) => !isPreset).length >=\n MAX_SAVED_VIEWS\n );\n }\n\n get isCurrentViewSelected(): boolean {\n return !!this.currentView?.id;\n }\n\n hasViewName(viewName: string): boolean {\n return this.getViews()\n .map(({ name }) => name)\n .includes(viewName);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- .Collapse3469360309__root{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.Collapse3469360309__exit{height:0}.CollectionToolbar164387944__left{min-width:0}.CollectionToolbar164387944__left.CollectionToolbar164387944--expandable{flex:auto}.CollectionToolbar164387944__root .CollectionToolbar164387944__right{justify-content:flex-end!important;flex:auto}.CollectionToolbar164387944__root .CollectionToolbar164387944__right.CollectionToolbar164387944__fullWidth{margin-inline-start:0!important}.SearchOrCustomFilter1226697508__search{min-width:140px;max-width:240px;flex:1 0}.AutoCompleteReadonly4293977390__root.AutoCompleteReadonly4293977390--disableEditing{cursor:pointer}.AutoCompleteReadonly4293977390__root.AutoCompleteReadonly4293977390--disableEditing input{cursor:pointer}.ViewsDropdown2376036500__root{width:200px}.DragHandle3298909886__root{display:flex;align-items:center}.DragHandle3298909886__root:not(.DragHandle3298909886--disabled){cursor:grab;color:#a8caff}.DragHandle3298909886__root.DragHandle3298909886--disabled{color:#acafc4}.DragHandle3298909886__root:focus-visible:not(.DragHandle3298909886--disabled){outline:0;box-shadow:0 0 0 3px #a6d0ff}.DragHandle3298909886__root.DragHandle3298909886--disabled{pointer-events:none}.DragHandle3298909886__root.DragHandle3298909886--dragging:not(.DragHandle3298909886--disabled){cursor:grabbing}.Fade3021659264__root{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);opacity:1}.Fade3021659264__root.Fade3021659264--exit{opacity:0}.Heading1403028584__root{visibility:visible}.Heading1403028584__root.Heading1403028584--appearanceH2{font-size:28px!important;line-height:36px!important}.InputOverflow1255795521__root.InputOverflow1255795521--selected:not(.InputOverflow1255795521--focused) input::placeholder{color:#000624}@keyframes LoadingRow3934429410__gradientSwoosh{0%{background-position:50% 50%;background-size:150% 125%}15%{background-position:75% 40%;background-size:130% 115%}30%{background-position:50% 50%;background-size:120% 135%}60%{background-position:30% 50%;background-size:120% 135%}80%{background-position:10% 30%;background-size:130% 155%}to{background-position:40% 45%;background-size:125% 135%}}.LoadingRow3934429410__root{background-image:linear-gradient(60deg,rgba(255,255,255,.15)0,rgba(255,255,255,.15) 50%,rgba(95,242,174,.15) 100%),linear-gradient(284.81deg,#fff 67.18%,#91bbff 158.87%),linear-gradient(29deg,rgba(145,187,255,.6)0,#fff 40%,rgba(95,242,174,.6) 100%);height:100%;background-size:150% 125%;background-repeat:no-repeat;animation:LoadingRow3934429410__gradientSwoosh 2s ease-out infinite alternate}.MaxHeightText886268065__root{opacity:1}.MaxHeightText886268065__root.MaxHeightText886268065--height24{line-height:24px}.MaxLines3968913660__root{overflow:hidden}.MaxLines3968913660__root.MaxLines3968913660--clamp{-webkit-box-orient:vertical;display:-webkit-box}.MultiBulkActionToolbar888461234__root{min-width:0}.NestedTablePlaceholderStatesRow3046938274__root td{padding:0!important;width:100%}.NestedTableRow2510739550__firstLevel td{padding-top:18px!important;padding-bottom:18px!important}.NestedTableRow2510739550__root:hover{background-color:#e7f0ff}.NestedTableRow2510739550__root.NestedTableRow2510739550--expandable{cursor:pointer}.NestedTableRow2510739550__placeholder td{padding:0!important;width:100%}.NestedTableRow2510739550__root:hover td:first-of-type::before,.NestedTableRow2510739550__parentHovered td:first-of-type::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:#5999ff}.MultipleDragOverlayEffect930362008__root{position:absolute;transform:translate(6px,6px);background-color:#fff;box-shadow:0 2px 4px 0 rgba(0,6,36,.12),0 0 6px 0 rgba(0,6,36,.12)}.NestedTableDragAndDropRow878497393__root.NestedTableDragAndDropRow878497393--draggingInto td{background-color:#e7f0ff!important}.PickerContent3501574971__root{display:flex}.PickerContentAdditionalStep3852291612__titles{display:flex;justify-content:center;flex:1 1 auto;overflow:hidden;flex-direction:column}.PickerContentAdditionalStep3852291612__suffix{display:flex;align-items:center;flex:0 0 auto;overflow:hidden}.PickerTableListItem3077013140__root{box-sizing:border-box}.ScrollableContent683405014__root.ScrollableContent683405014--overflowY{overflow-y:auto}.ScrollableContent683405014__root.ScrollableContent683405014--overflowX{overflow-x:auto}.ScrollableContent683405014__root.ScrollableContent683405014--smooth{scroll-behavior:smooth}.SkeletonCard2425337910__headerLoading{display:block!important}.SlidingModal3939557948__root{transition:transform .4s ease 0s;position:fixed;z-index:1}.SlidingModal3939557948__root:not(.SlidingModal3939557948--exited){box-shadow:0 3px 24px 0 rgba(22,45,61,.18),0 8px 8px 0 rgba(22,45,61,.12)}.TableVirtualHeader3644759844__root{display:flex}.TabsFilter2562547559__root .TabsFilter2562547559__title{color:inherit!important}.ManageTagsModal1982174233__root{display:flex}.ToolbarItemBox1298269687__root{min-width:0}.ToolbarItemBox1298269687__root.ToolbarItemBox1298269687--removeStartPadding{margin-left:-24px}.ToolbarItemBox1298269687__root.ToolbarItemBox1298269687--expandable{flex:1 0}.common1539533380__column{display:flex;flex-direction:column}.common1539533380__fullHeight{height:100%;min-height:0}
1
+ .Collapse2872389463__root{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.Collapse2872389463__exit{height:0}.CollectionToolbar1204975869__left{min-width:0}.CollectionToolbar1204975869__left.CollectionToolbar1204975869--expandable{flex:auto}.CollectionToolbar1204975869__root .CollectionToolbar1204975869__right{justify-content:flex-end!important;flex:auto}.CollectionToolbar1204975869__root .CollectionToolbar1204975869__right.CollectionToolbar1204975869__fullWidth{margin-inline-start:0!important}.SearchOrCustomFilter1354573273__search{min-width:140px;max-width:240px;flex:1 0}.AutoCompleteReadonly2749358160__root.AutoCompleteReadonly2749358160--disableEditing{cursor:pointer}.AutoCompleteReadonly2749358160__root.AutoCompleteReadonly2749358160--disableEditing input{cursor:pointer}.ViewsDropdown1011050711__root{width:200px}.DragHandle353499543__root{display:flex;align-items:center}.DragHandle353499543__root:not(.DragHandle353499543--disabled){cursor:grab;color:#a8caff}.DragHandle353499543__root.DragHandle353499543--disabled{color:#acafc4}.DragHandle353499543__root:focus-visible:not(.DragHandle353499543--disabled){outline:0;box-shadow:0 0 0 3px #a6d0ff}.DragHandle353499543__root.DragHandle353499543--disabled{pointer-events:none}.DragHandle353499543__root.DragHandle353499543--dragging:not(.DragHandle353499543--disabled){cursor:grabbing}.Fade2268992648__root{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);opacity:1}.Fade2268992648__root.Fade2268992648--exit{opacity:0}.Heading656487836__root{visibility:visible}.Heading656487836__root.Heading656487836--appearanceH2{font-size:28px!important;line-height:36px!important}.InputOverflow1881826586__root.InputOverflow1881826586--selected:not(.InputOverflow1881826586--focused) input::placeholder{color:#000624}@keyframes LoadingRow398173724__gradientSwoosh{0%{background-position:50% 50%;background-size:150% 125%}15%{background-position:75% 40%;background-size:130% 115%}30%{background-position:50% 50%;background-size:120% 135%}60%{background-position:30% 50%;background-size:120% 135%}80%{background-position:10% 30%;background-size:130% 155%}to{background-position:40% 45%;background-size:125% 135%}}.LoadingRow398173724__root{background-image:linear-gradient(60deg,rgba(255,255,255,.15)0,rgba(255,255,255,.15) 50%,rgba(95,242,174,.15) 100%),linear-gradient(284.81deg,#fff 67.18%,#91bbff 158.87%),linear-gradient(29deg,rgba(145,187,255,.6)0,#fff 40%,rgba(95,242,174,.6) 100%);height:100%;background-size:150% 125%;background-repeat:no-repeat;animation:LoadingRow398173724__gradientSwoosh 2s ease-out infinite alternate}.MaxHeightText1355307360__root{opacity:1}.MaxHeightText1355307360__root.MaxHeightText1355307360--height24{line-height:24px}.MaxLines537930323__root{overflow:hidden}.MaxLines537930323__root.MaxLines537930323--clamp{-webkit-box-orient:vertical;display:-webkit-box}.MultiBulkActionToolbar1023480270__root{min-width:0}.NestedTablePlaceholderStatesRow2632946303__root td{padding:0!important;width:100%}.NestedTableRow4139119906__firstLevel td{padding-top:18px!important;padding-bottom:18px!important}.NestedTableRow4139119906__root:hover{background-color:#e7f0ff}.NestedTableRow4139119906__root.NestedTableRow4139119906--expandable{cursor:pointer}.NestedTableRow4139119906__placeholder td{padding:0!important;width:100%}.NestedTableRow4139119906__root:hover td:first-of-type::before,.NestedTableRow4139119906__parentHovered td:first-of-type::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:#5999ff}.MultipleDragOverlayEffect2986942107__root{position:absolute;transform:translate(6px,6px);background-color:#fff;box-shadow:0 2px 4px 0 rgba(0,6,36,.12),0 0 6px 0 rgba(0,6,36,.12)}.NestedTableDragAndDropRow2589257637__root.NestedTableDragAndDropRow2589257637--draggingInto td{background-color:#e7f0ff!important}.PickerContent2570572610__root{display:flex}.PickerContentAdditionalStep3240492415__titles{display:flex;justify-content:center;flex:1 1 auto;overflow:hidden;flex-direction:column}.PickerContentAdditionalStep3240492415__suffix{display:flex;align-items:center;flex:0 0 auto;overflow:hidden}.PickerTableListItem3250999370__root{box-sizing:border-box}.ScrollableContent1220263890__root.ScrollableContent1220263890--overflowY{overflow-y:auto}.ScrollableContent1220263890__root.ScrollableContent1220263890--overflowX{overflow-x:auto}.ScrollableContent1220263890__root.ScrollableContent1220263890--smooth{scroll-behavior:smooth}.SkeletonCard940385230__headerLoading{display:block!important}.SlidingModal581158680__root{transition:transform .4s ease 0s;position:fixed;z-index:1}.SlidingModal581158680__root:not(.SlidingModal581158680--exited){box-shadow:0 3px 24px 0 rgba(22,45,61,.18),0 8px 8px 0 rgba(22,45,61,.12)}.TableVirtualHeader2612737454__root{display:flex}.TabsFilter2484221671__root .TabsFilter2484221671__title{color:inherit!important}.ManageTagsModal3028133487__root{display:flex}.ToolbarItemBox3302237508__root{min-width:0}.ToolbarItemBox3302237508__root.ToolbarItemBox3302237508--removeStartPadding{margin-left:-24px}.ToolbarItemBox3302237508__root.ToolbarItemBox3302237508--expandable{flex:1 0}.common1306935680__column{display:flex;flex-direction:column}.common1306935680__fullHeight{height:100%;min-height:0}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.createBackend = createBackend;
5
+ exports.createItems = createItems;
6
+ exports.itemsSelectionAPIHttpClientMocks = void 0;
7
+ var _client = require("@wix/fe-essentials/http-client/testkit/client");
8
+ var _backend = require("../testkit/backend");
9
+ var _chance = require("chance");
10
+ var _http = require("@wix/bex-utils/@wix/ambassador-items-selection-spi-host-v1-provider/http");
11
+ var _builders = require("@wix/bex-utils/@wix/ambassador-items-selection-spi-host-v1-provider/builders");
12
+ function createItems(chance) {
13
+ return ({
14
+ ...overrides
15
+ } = {}) => (0, _builders.aItem)({
16
+ id: chance.guid(),
17
+ ...overrides
18
+ });
19
+ }
20
+ function createBackend() {
21
+ const chance = new _chance.Chance();
22
+ return new _backend.InMemoryBackend({
23
+ total: 10,
24
+ paginationMode: 'offset',
25
+ delay: {
26
+ min: 100,
27
+ max: 2000
28
+ },
29
+ createOne: () => (0, _builders.aItem)({
30
+ id: chance.guid(),
31
+ name: chance.name(),
32
+ description: chance.sentence({
33
+ words: 5
34
+ })
35
+ }),
36
+ orderBy: query => {
37
+ return [...(query.sort ?? [])];
38
+ },
39
+ itemKey: item => item.id
40
+ });
41
+ }
42
+ const itemsSelectionAPIHttpClientMocks = () => {
43
+ const itemsSelectionBackend = createBackend();
44
+ return [(0, _client.whenRequest)(_http.queryItems).reply(200, async () => {
45
+ return itemsSelectionBackend.fetchData({
46
+ limit: 10
47
+ }).then(({
48
+ items
49
+ }) => {
50
+ return {
51
+ items
52
+ };
53
+ });
54
+ }).persist()];
55
+ };
56
+ exports.itemsSelectionAPIHttpClientMocks = itemsSelectionAPIHttpClientMocks;
57
+ //# sourceMappingURL=ItemsSelectionMocks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_client","require","_backend","_chance","_http","_builders","createItems","chance","overrides","aItem","id","guid","createBackend","Chance","InMemoryBackend","total","paginationMode","delay","min","max","createOne","name","description","sentence","words","orderBy","query","sort","itemKey","item","itemsSelectionAPIHttpClientMocks","itemsSelectionBackend","whenRequest","queryItems","reply","fetchData","limit","then","items","persist","exports"],"sources":["../../../src/test-utils/ItemsSelectionMocks.ts"],"sourcesContent":["import { whenRequest } from '@wix/fe-essentials/http-client/testkit/client';\nimport { InMemoryBackend } from '../testkit/backend';\nimport { Chance } from 'chance';\nimport { queryItems } from '@wix/bex-utils/@wix/ambassador-items-selection-spi-host-v1-provider/http';\nimport { aItem } from '@wix/bex-utils/@wix/ambassador-items-selection-spi-host-v1-provider/builders';\nimport { Item } from '@wix/bex-utils/@wix/ambassador-items-selection-spi-host-v1-provider/types';\n\nexport function createItems(chance: Chance.Chance) {\n return ({ ...overrides }: Partial<Item> = {}) =>\n aItem({\n id: chance.guid(),\n ...overrides,\n });\n}\n\nexport function createBackend() {\n const chance = new Chance();\n return new InMemoryBackend<Item>({\n total: 10,\n paginationMode: 'offset',\n delay: { min: 100, max: 2000 },\n createOne: () =>\n aItem({\n id: chance.guid(),\n name: chance.name(),\n description: chance.sentence({ words: 5 }),\n }),\n orderBy: (query) => {\n return [...(query.sort ?? [])];\n },\n itemKey: (item) => item.id!,\n });\n}\n\nexport const itemsSelectionAPIHttpClientMocks = () => {\n const itemsSelectionBackend = createBackend();\n return [\n whenRequest(queryItems)\n .reply(200, async () => {\n return itemsSelectionBackend\n .fetchData({\n limit: 10,\n })\n .then(({ items }) => {\n return { items };\n });\n })\n .persist(),\n ];\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAGO,SAASK,WAAWA,CAACC,MAAqB,EAAE;EACjD,OAAO,CAAC;IAAE,GAAGC;EAAyB,CAAC,GAAG,CAAC,CAAC,KAC1C,IAAAC,eAAK,EAAC;IACJC,EAAE,EAAEH,MAAM,CAACI,IAAI,CAAC,CAAC;IACjB,GAAGH;EACL,CAAC,CAAC;AACN;AAEO,SAASI,aAAaA,CAAA,EAAG;EAC9B,MAAML,MAAM,GAAG,IAAIM,cAAM,CAAC,CAAC;EAC3B,OAAO,IAAIC,wBAAe,CAAO;IAC/BC,KAAK,EAAE,EAAE;IACTC,cAAc,EAAE,QAAQ;IACxBC,KAAK,EAAE;MAAEC,GAAG,EAAE,GAAG;MAAEC,GAAG,EAAE;IAAK,CAAC;IAC9BC,SAAS,EAAEA,CAAA,KACT,IAAAX,eAAK,EAAC;MACJC,EAAE,EAAEH,MAAM,CAACI,IAAI,CAAC,CAAC;MACjBU,IAAI,EAAEd,MAAM,CAACc,IAAI,CAAC,CAAC;MACnBC,WAAW,EAAEf,MAAM,CAACgB,QAAQ,CAAC;QAAEC,KAAK,EAAE;MAAE,CAAC;IAC3C,CAAC,CAAC;IACJC,OAAO,EAAGC,KAAK,IAAK;MAClB,OAAO,CAAC,IAAIA,KAAK,CAACC,IAAI,IAAI,EAAE,CAAC,CAAC;IAChC,CAAC;IACDC,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAACnB;EAC1B,CAAC,CAAC;AACJ;AAEO,MAAMoB,gCAAgC,GAAGA,CAAA,KAAM;EACpD,MAAMC,qBAAqB,GAAGnB,aAAa,CAAC,CAAC;EAC7C,OAAO,CACL,IAAAoB,mBAAW,EAACC,gBAAU,CAAC,CACpBC,KAAK,CAAC,GAAG,EAAE,YAAY;IACtB,OAAOH,qBAAqB,CACzBI,SAAS,CAAC;MACTC,KAAK,EAAE;IACT,CAAC,CAAC,CACDC,IAAI,CAAC,CAAC;MAAEC;IAAM,CAAC,KAAK;MACnB,OAAO;QAAEA;MAAM,CAAC;IAClB,CAAC,CAAC;EACN,CAAC,CAAC,CACDC,OAAO,CAAC,CAAC,CACb;AACH,CAAC;AAACC,OAAA,CAAAV,gCAAA,GAAAA,gCAAA","ignoreList":[]}
@@ -2,5 +2,5 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.version = void 0;
5
- const version = exports.version = 'patterns@1.115.0';
5
+ const version = exports.version = 'patterns@1.119.0';
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["version","exports"],"sources":["../../src/version.ts"],"sourcesContent":["export const version = 'patterns@1.115.0';\n"],"mappings":";;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,kBAAkB","ignoreList":[]}
1
+ {"version":3,"names":["version","exports"],"sources":["../../src/version.ts"],"sourcesContent":["export const version = 'patterns@1.119.0';\n"],"mappings":";;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,kBAAkB","ignoreList":[]}
@@ -1,12 +1,12 @@
1
1
  // @ts-nocheck
2
2
  import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
3
- var _namespace_ = "Collapse3469360309";
3
+ var _namespace_ = "Collapse2872389463";
4
4
  var _style_ = classesRuntime.bind(null, _namespace_);
5
5
  export var cssStates = statesRuntime.bind(null, _namespace_);
6
6
  export var style = _style_;
7
7
  export var st = _style_;
8
8
  export var namespace = _namespace_;
9
- export var classes = { "root": "Collapse3469360309__root", "exit": "Collapse3469360309__exit" };
9
+ export var classes = { "root": "Collapse2872389463__root", "exit": "Collapse2872389463__exit" };
10
10
  export var keyframes = {};
11
11
  export var layers = {};
12
12
  export var containers = {};