@veeqo/transfigure 0.0.21 → 0.0.23

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 (259) hide show
  1. package/dist/components/Filters/ActiveFilters/Variants/common/ActiveFilterFooter/ActiveFilterFooter.d.ts +6 -0
  2. package/dist/components/Filters/ActiveFilters/Variants/common/ActiveFilterFooter/index.d.ts +1 -0
  3. package/dist/components/Filters/ActiveFilters/Variants/common/ActiveFilterHeader/ActiveFilterHeader.d.ts +7 -0
  4. package/dist/components/Filters/ActiveFilters/Variants/common/ActiveFilterHeader/index.d.ts +1 -0
  5. package/dist/components/Filters/ActiveFilters/Variants/common/index.d.ts +2 -0
  6. package/dist/components/Filters/ActiveFilters/Variants/index.d.ts +3 -1
  7. package/dist/components/Filters/ActiveFilters/index.d.ts +0 -1
  8. package/dist/components/Filters/Fields/NumberRangeFilter/MuiSlider.d.ts +1 -1
  9. package/dist/components/RefreshButton/RefreshButton.d.ts +2 -1
  10. package/dist/components/RefreshButton/{usePollListOrders.d.ts → usePollData.d.ts} +1 -1
  11. package/dist/components/Views/OptionsDropdown/styled.d.ts +1 -1
  12. package/dist/components/Views/PillNotifications/constants.d.ts +25 -0
  13. package/dist/components/Views/PillNotifications/variants/DraftPill/DraftPill.d.ts +5 -0
  14. package/dist/components/Views/PillNotifications/variants/DraftPill/index.d.ts +1 -0
  15. package/dist/components/Views/PillNotifications/variants/UnsavedChangesPill/UnsavedChangesPill.d.ts +7 -0
  16. package/dist/components/Views/PillNotifications/variants/UnsavedChangesPill/index.d.ts +1 -0
  17. package/dist/components/Views/PillNotifications/variants/styled.d.ts +324 -0
  18. package/dist/components/Views/index.d.ts +1 -1
  19. package/dist/context/ModalContext/mocks/mockUseModal.d.ts +4 -4
  20. package/dist/hooks/useViewCountsHook/useViewCountsHook.d.ts +1 -1
  21. package/dist/hooks/useViews/mocks.d.ts +2 -0
  22. package/dist/hooks/useViews/useViews.d.ts +1 -2
  23. package/dist/index.cjs +1 -1
  24. package/dist/index.js +121 -119
  25. package/dist/index100.cjs +1 -1
  26. package/dist/index100.js +2 -36
  27. package/dist/index101.cjs +13 -1
  28. package/dist/index101.js +17 -19
  29. package/dist/index102.cjs +1 -1
  30. package/dist/index102.js +25 -7
  31. package/dist/index103.cjs +1 -1
  32. package/dist/index103.js +17 -62
  33. package/dist/index104.cjs +1 -1
  34. package/dist/index104.js +7 -29
  35. package/dist/index105.cjs +1 -1
  36. package/dist/index105.js +63 -62
  37. package/dist/index106.cjs +1 -13
  38. package/dist/index106.js +30 -17
  39. package/dist/index107.cjs +1 -1
  40. package/dist/index107.js +31 -37
  41. package/dist/index109.cjs +1 -0
  42. package/dist/index109.js +49 -0
  43. package/dist/index11.cjs +1 -1
  44. package/dist/index11.js +1 -1
  45. package/dist/index110.cjs +1 -0
  46. package/dist/index110.js +65 -0
  47. package/dist/index111.cjs +1 -0
  48. package/dist/index111.js +44 -0
  49. package/dist/index12.cjs +1 -1
  50. package/dist/index12.js +1 -1
  51. package/dist/index13.cjs +1 -1
  52. package/dist/index13.js +14 -14
  53. package/dist/index14.cjs +1 -1
  54. package/dist/index14.js +36 -41
  55. package/dist/index15.cjs +1 -1
  56. package/dist/index15.js +33 -37
  57. package/dist/index16.cjs +1 -1
  58. package/dist/index16.js +49 -32
  59. package/dist/index17.cjs +1 -1
  60. package/dist/index17.js +38 -48
  61. package/dist/index18.cjs +1 -1
  62. package/dist/index18.js +27 -28
  63. package/dist/index19.cjs +1 -1
  64. package/dist/index19.js +36 -37
  65. package/dist/index2.cjs +1 -1
  66. package/dist/index2.js +2 -2
  67. package/dist/index20.cjs +1 -1
  68. package/dist/index20.js +35 -36
  69. package/dist/index21.cjs +1 -1
  70. package/dist/index21.js +20 -21
  71. package/dist/index22.cjs +1 -1
  72. package/dist/index22.js +7 -46
  73. package/dist/index23.cjs +1 -1
  74. package/dist/index23.js +11 -61
  75. package/dist/index24.cjs +1 -1
  76. package/dist/index24.js +36 -35
  77. package/dist/index25.cjs +1 -1
  78. package/dist/index25.js +55 -34
  79. package/dist/index26.cjs +1 -1
  80. package/dist/index26.js +34 -52
  81. package/dist/index27.cjs +1 -1
  82. package/dist/index27.js +54 -51
  83. package/dist/index28.cjs +1 -1
  84. package/dist/index28.js +50 -81
  85. package/dist/index29.cjs +1 -1
  86. package/dist/index29.js +80 -33
  87. package/dist/index3.cjs +1 -1
  88. package/dist/index3.js +2 -2
  89. package/dist/index30.cjs +1 -1
  90. package/dist/index30.js +37 -33
  91. package/dist/index31.cjs +1 -1
  92. package/dist/index31.js +33 -10
  93. package/dist/index32.cjs +1 -1
  94. package/dist/index32.js +10 -40
  95. package/dist/index33.cjs +1 -1
  96. package/dist/index33.js +38 -102
  97. package/dist/index34.cjs +1 -1
  98. package/dist/index34.js +103 -19
  99. package/dist/index35.cjs +1 -1
  100. package/dist/index35.js +17 -135
  101. package/dist/index36.cjs +1 -1
  102. package/dist/index36.js +135 -49
  103. package/dist/index37.cjs +1 -1
  104. package/dist/index37.js +51 -50
  105. package/dist/index38.cjs +1 -1
  106. package/dist/index38.js +31 -49
  107. package/dist/index39.cjs +1 -1
  108. package/dist/index39.js +48 -71
  109. package/dist/index4.cjs +1 -1
  110. package/dist/index4.js +2 -2
  111. package/dist/index40.cjs +1 -1
  112. package/dist/index40.js +58 -79
  113. package/dist/index41.cjs +1 -1
  114. package/dist/index41.js +81 -41
  115. package/dist/index42.cjs +1 -1
  116. package/dist/index42.js +48 -5
  117. package/dist/index43.cjs +1 -1
  118. package/dist/index43.js +5 -42
  119. package/dist/index44.cjs +1 -1
  120. package/dist/index44.js +42 -25
  121. package/dist/index45.cjs +1 -1
  122. package/dist/index45.js +30 -19
  123. package/dist/index46.cjs +1 -1
  124. package/dist/index46.js +19 -8
  125. package/dist/index47.cjs +1 -1
  126. package/dist/index47.js +7 -22
  127. package/dist/index48.cjs +1 -1
  128. package/dist/index48.js +23 -2
  129. package/dist/index49.cjs +1 -1
  130. package/dist/index49.js +2 -4
  131. package/dist/index5.cjs +1 -1
  132. package/dist/index5.js +2 -2
  133. package/dist/index50.cjs +1 -1
  134. package/dist/index50.js +4 -11
  135. package/dist/index51.cjs +1 -1
  136. package/dist/index51.js +10 -12
  137. package/dist/index52.cjs +1 -1
  138. package/dist/index52.js +12 -11
  139. package/dist/index53.cjs +1 -1
  140. package/dist/index53.js +11 -184
  141. package/dist/index54.cjs +1 -1
  142. package/dist/index54.js +183 -25
  143. package/dist/index55.cjs +1 -1
  144. package/dist/index55.js +26 -24
  145. package/dist/index56.cjs +1 -1
  146. package/dist/index56.js +19 -22
  147. package/dist/index57.cjs +1 -1
  148. package/dist/index57.js +25 -90
  149. package/dist/index58.cjs +1 -1
  150. package/dist/index58.js +93 -8
  151. package/dist/index59.cjs +1 -1
  152. package/dist/index59.js +8 -51
  153. package/dist/index6.cjs +1 -1
  154. package/dist/index6.js +4 -4
  155. package/dist/index60.cjs +1 -1
  156. package/dist/index60.js +50 -60
  157. package/dist/index61.cjs +1 -1
  158. package/dist/index61.js +61 -18
  159. package/dist/index62.cjs +1 -1
  160. package/dist/index62.js +16 -23
  161. package/dist/index63.cjs +1 -1
  162. package/dist/index63.js +25 -315
  163. package/dist/index64.cjs +1 -1
  164. package/dist/index64.js +311 -55
  165. package/dist/index65.cjs +1 -1
  166. package/dist/index65.js +50 -47
  167. package/dist/index66.cjs +1 -1
  168. package/dist/index66.js +51 -32
  169. package/dist/index67.cjs +1 -1
  170. package/dist/index67.js +30 -24
  171. package/dist/index68.cjs +1 -1
  172. package/dist/index68.js +32 -4
  173. package/dist/index69.cjs +1 -1
  174. package/dist/index69.js +4 -9
  175. package/dist/index70.cjs +1 -1
  176. package/dist/index70.js +9 -17
  177. package/dist/index71.cjs +1 -1
  178. package/dist/index71.js +14 -16
  179. package/dist/index72.cjs +1 -1
  180. package/dist/index72.js +18 -47
  181. package/dist/index73.cjs +1 -1
  182. package/dist/index73.js +48 -21
  183. package/dist/index74.cjs +1 -1
  184. package/dist/index74.js +21 -2
  185. package/dist/index75.cjs +1 -1
  186. package/dist/index75.js +2 -9
  187. package/dist/index76.cjs +1 -3
  188. package/dist/index76.js +8 -13
  189. package/dist/index77.cjs +3 -1
  190. package/dist/index77.js +13 -8
  191. package/dist/index78.cjs +1 -1
  192. package/dist/index78.js +7 -141
  193. package/dist/index79.cjs +8 -1
  194. package/dist/index79.js +12 -19
  195. package/dist/index80.cjs +1 -8
  196. package/dist/index80.js +41 -12
  197. package/dist/index81.cjs +1 -1
  198. package/dist/index81.js +8 -40
  199. package/dist/index82.cjs +1 -1
  200. package/dist/index82.js +143 -9
  201. package/dist/index83.cjs +1 -1
  202. package/dist/index83.js +19 -18
  203. package/dist/index84.cjs +1 -1
  204. package/dist/index84.js +18 -13
  205. package/dist/index85.cjs +15 -100
  206. package/dist/index85.js +19 -115
  207. package/dist/index86.cjs +1 -1
  208. package/dist/index86.js +28 -65
  209. package/dist/index87.cjs +1 -1
  210. package/dist/index87.js +29 -29
  211. package/dist/index88.cjs +1 -1
  212. package/dist/index88.js +15 -2
  213. package/dist/index89.cjs +1 -1
  214. package/dist/index89.js +20 -40
  215. package/dist/index9.cjs +1 -1
  216. package/dist/index9.js +57 -43
  217. package/dist/index90.cjs +80 -1
  218. package/dist/index90.js +103 -11
  219. package/dist/index91.cjs +1 -1
  220. package/dist/index91.js +13 -24
  221. package/dist/index92.cjs +100 -15
  222. package/dist/index92.js +115 -19
  223. package/dist/index93.cjs +1 -1
  224. package/dist/index93.js +65 -30
  225. package/dist/index94.cjs +1 -1
  226. package/dist/index94.js +29 -29
  227. package/dist/index95.cjs +1 -1
  228. package/dist/index95.js +2 -22
  229. package/dist/index96.cjs +1 -80
  230. package/dist/index96.js +41 -96
  231. package/dist/index97.cjs +1 -12
  232. package/dist/index97.js +11 -16
  233. package/dist/index98.cjs +12 -1
  234. package/dist/index98.js +16 -15
  235. package/dist/index99.cjs +1 -1
  236. package/dist/index99.js +24 -2
  237. package/dist/mobx/Filters/tests/Filters.arrayFilters.test.d.ts +1 -0
  238. package/dist/mobx/Filters/tests/Filters.clearOperations.test.d.ts +1 -0
  239. package/dist/mobx/Filters/tests/Filters.dateRangeFilters.test.d.ts +1 -0
  240. package/dist/mobx/Filters/tests/Filters.hasUnsavedChanges.test.d.ts +1 -0
  241. package/dist/mobx/Filters/tests/Filters.numberRangeFilters.test.d.ts +1 -0
  242. package/dist/mobx/Filters/tests/Filters.pagination.test.d.ts +1 -0
  243. package/dist/mobx/Filters/tests/Filters.textFilters.test.d.ts +1 -0
  244. package/dist/mobx/Filters/tests/Filters.urlHandling.test.d.ts +1 -0
  245. package/dist/mobx/Filters/tests/Filters.views.test.d.ts +1 -0
  246. package/dist/mobx/Notifications/Notifications.d.ts +7 -8
  247. package/dist/mobx/Notifications/Notifications.test.d.ts +1 -0
  248. package/dist/mobx/Notifications/index.d.ts +1 -0
  249. package/dist/mobx/NumberRangeFilter/NumberRangeFilter.test.d.ts +1 -0
  250. package/dist/mobx/RangeFilter/RangeFilter.test.d.ts +1 -0
  251. package/dist/mobx/Views/Views.test.d.ts +1 -0
  252. package/dist/types.d.ts +3 -0
  253. package/package.json +1 -1
  254. package/dist/components/Views/PillNotifications/InfoPill.d.ts +0 -1
  255. package/dist/components/Views/PillNotifications/styled.d.ts +0 -34
  256. package/dist/components/Views/UnsavedChanges/UnsavedChanges.d.ts +0 -5
  257. package/dist/components/Views/UnsavedChanges/index.d.ts +0 -1
  258. /package/dist/components/Filters/ActiveFilters/{ActiveFilterTag → Variants/ActiveFilterTag}/ActiveFilterTag.d.ts +0 -0
  259. /package/dist/components/Filters/ActiveFilters/{ActiveFilterTag → Variants/ActiveFilterTag}/index.d.ts +0 -0
package/dist/index61.js CHANGED
@@ -1,21 +1,64 @@
1
- import { SWR_HOOK_OPTIONS as O } from "./index46.js";
2
- import S from "swr";
3
- import { fetcherV1 as h } from "./index52.js";
4
- const R = ({ type: e }) => {
5
- var o, t, i, n, r, m, u, c;
6
- const { data: s, isLoading: _, isValidating: p, error: w, mutate: l } = S("/current_user", h, O), V = (t = (o = s == null ? void 0 : s.settings) == null ? void 0 : o.custom_view_positions) == null ? void 0 : t[e], f = (r = (n = (i = s == null ? void 0 : s.settings) == null ? void 0 : i.default_custom_views) == null ? void 0 : n[e]) == null ? void 0 : r.toString(), C = !!((m = s == null ? void 0 : s.permissions) != null && m.delete_company_custom_views), g = !!((u = s == null ? void 0 : s.permissions) != null && u.update_company_custom_views), v = !!((c = s == null ? void 0 : s.permissions) != null && c.share_custom_views);
7
- return {
8
- canDeleteCustomViews: C,
9
- canUpdateCustomViews: g,
10
- canShareCustomViews: v,
11
- orderedListOfCustomViews: V,
12
- defaultCustomViewId: f,
13
- isLoading: _,
14
- isValidating: p,
15
- error: w,
16
- mutate: l
17
- };
1
+ import { useEffect as u } from "react";
2
+ import { ALL_VIEW_ID as h } from "./index74.js";
3
+ import { useCustomViews as I } from "./index62.js";
4
+ import { useViews as E } from "./index60.js";
5
+ import { useBusinessLogic as F } from "./index7.js";
6
+ import { useStores as C } from "./index59.js";
7
+ const A = () => {
8
+ const { VIEW_TYPE: g, SEARCH_FILTER_ID: c } = F(), {
9
+ Filters: {
10
+ activeViewId: d,
11
+ initFiltersFromView: e,
12
+ initFromUrl: i,
13
+ discardChanges: w,
14
+ updateUrl: L,
15
+ setFilter: l
16
+ }
17
+ } = C(), { isLoading: v } = I({ type: g }), { viewsMap: t, defaultCustomViewId: f, isLoading: V } = E(), p = V || v;
18
+ u(() => {
19
+ if (p) return;
20
+ const s = new URLSearchParams(window.location.search), m = s.get("view"), a = s.get(c), o = s.size > 0;
21
+ if (!d) {
22
+ if (m) {
23
+ const r = t.get(m);
24
+ if (r)
25
+ e(r), o && i();
26
+ else {
27
+ const n = t.get(f);
28
+ n && (e(n), o && i(!1));
29
+ }
30
+ } else {
31
+ const r = t.get(f);
32
+ if (r)
33
+ e(r), w(!0), o && i();
34
+ else {
35
+ const n = t.get(h);
36
+ n && e(n);
37
+ }
38
+ }
39
+ a && l(c, a);
40
+ }
41
+ }, [
42
+ c,
43
+ d,
44
+ f,
45
+ w,
46
+ e,
47
+ i,
48
+ p,
49
+ l,
50
+ L,
51
+ t
52
+ ]), u(() => {
53
+ const s = () => {
54
+ const a = new URLSearchParams(window.location.search).get("view");
55
+ if (!a) return;
56
+ const o = t.get(a);
57
+ o && (e(o), i());
58
+ };
59
+ return window.addEventListener("popstate", s), () => window.removeEventListener("popstate", s);
60
+ }, [w, e, i, t]);
18
61
  };
19
62
  export {
20
- R as useCustomViews
63
+ A as useViewUrlChange
21
64
  };
package/dist/index62.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("lodash"),m=require("./index7.cjs"),C=require("./index58.cjs"),a=require("./index59.cjs"),I=()=>{var u;const{DEFAULT_HIDDEN_COLUMNS:o,DEFAULT_VISIBLE_COLUMNS:t}=m.useBusinessLogic(),{Filters:{activeViewId:i}}=C.useStores(),{viewsMap:l,isLoading:s}=a.useViews();if(!i||s)return{isLoading:s,hiddenColumnIds:[]};const e=l.get(i),n=(u=e==null?void 0:e.columns)==null?void 0:u.columnIds;if(c.isArray(n)&&n.length>0){const r=[...o,...t].filter(d=>!n.includes(d));return{isLoading:s,hiddenColumnIds:r}}return{isLoading:s,hiddenColumnIds:o}};exports.useHiddenColumns=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./index47.cjs"),C=require("swr"),v=require("./index53.cjs"),O=e=>e&&e.__esModule?e:{default:e},h=O(C),q=({type:e})=>{var o,t,i,n,u,r,c,_;const{data:s,isLoading:m,isValidating:l,error:w,mutate:f}=h.default("/current_user",v.fetcherV1,g.SWR_HOOK_OPTIONS),p=(t=(o=s==null?void 0:s.settings)==null?void 0:o.custom_view_positions)==null?void 0:t[e],V=(u=(n=(i=s==null?void 0:s.settings)==null?void 0:i.default_custom_views)==null?void 0:n[e])==null?void 0:u.toString(),S=!!((r=s==null?void 0:s.permissions)!=null&&r.delete_company_custom_views),a=!!((c=s==null?void 0:s.permissions)!=null&&c.update_company_custom_views),d=!!((_=s==null?void 0:s.permissions)!=null&&_.share_custom_views);return{canDeleteCustomViews:S,canUpdateCustomViews:a,canShareCustomViews:d,orderedListOfCustomViews:p,defaultCustomViewId:V,isLoading:m,isValidating:l,error:w,mutate:f}};exports.useCustomViews=q;
package/dist/index62.js CHANGED
@@ -1,28 +1,21 @@
1
- import { isArray as d } from "lodash";
2
- import { useBusinessLogic as c } from "./index7.js";
3
- import { useStores as C } from "./index58.js";
4
- import { useViews as I } from "./index59.js";
5
- const g = () => {
6
- var t;
7
- const { DEFAULT_HIDDEN_COLUMNS: e, DEFAULT_VISIBLE_COLUMNS: l } = c(), { Filters: { activeViewId: i } } = C(), { viewsMap: r, isLoading: s } = I();
8
- if (!i || s)
9
- return {
10
- isLoading: s,
11
- hiddenColumnIds: []
12
- };
13
- const o = r.get(i), n = (t = o == null ? void 0 : o.columns) == null ? void 0 : t.columnIds;
14
- if (d(n) && n.length > 0) {
15
- const m = [...e, ...l].filter((u) => !n.includes(u));
16
- return {
17
- isLoading: s,
18
- hiddenColumnIds: m
19
- };
20
- }
1
+ import { SWR_HOOK_OPTIONS as O } from "./index47.js";
2
+ import S from "swr";
3
+ import { fetcherV1 as h } from "./index53.js";
4
+ const R = ({ type: e }) => {
5
+ var o, t, i, n, r, m, u, c;
6
+ const { data: s, isLoading: _, isValidating: p, error: w, mutate: l } = S("/current_user", h, O), V = (t = (o = s == null ? void 0 : s.settings) == null ? void 0 : o.custom_view_positions) == null ? void 0 : t[e], f = (r = (n = (i = s == null ? void 0 : s.settings) == null ? void 0 : i.default_custom_views) == null ? void 0 : n[e]) == null ? void 0 : r.toString(), C = !!((m = s == null ? void 0 : s.permissions) != null && m.delete_company_custom_views), g = !!((u = s == null ? void 0 : s.permissions) != null && u.update_company_custom_views), v = !!((c = s == null ? void 0 : s.permissions) != null && c.share_custom_views);
21
7
  return {
22
- isLoading: s,
23
- hiddenColumnIds: e
8
+ canDeleteCustomViews: C,
9
+ canUpdateCustomViews: g,
10
+ canShareCustomViews: v,
11
+ orderedListOfCustomViews: V,
12
+ defaultCustomViewId: f,
13
+ isLoading: _,
14
+ isValidating: p,
15
+ error: w,
16
+ mutate: l
24
17
  };
25
18
  };
26
19
  export {
27
- g as useHiddenColumns
20
+ R as useCustomViews
28
21
  };
package/dist/index63.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var N=Object.defineProperty;var C=(d,e,l)=>e in d?N(d,e,{enumerable:!0,configurable:!0,writable:!0,value:l}):d[e]=l;var g=(d,e,l)=>C(d,typeof e!="symbol"?e+"":e,l);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("mobx"),U=require("@veeqo/ui"),D=require("@internationalized/date"),P=require("lodash/isEqual"),u=require("./index46.cjs"),b=require("./index65.cjs"),L=require("./index64.cjs"),v=require("./index73.cjs"),V=require("./index71.cjs"),y=require("./index8.cjs"),B=d=>d&&d.__esModule?d:{default:d},I=B(P);class G{constructor(){g(this,"defaultPageSize");g(this,"pageSize");g(this,"currentPage");g(this,"defaultFilters");g(this,"defaultArrayFilters");g(this,"defaultDateRangeFilters");g(this,"defaultNumberRangeFilters");g(this,"filters");g(this,"arrayFilters");g(this,"dateRangeFilters");g(this,"numberRangeFilters");g(this,"activeViewId");g(this,"isFiltersDropdownVisible");g(this,"initDefaultFilterMaps",()=>{this.defaultFilters=new Map(this.filters),this.defaultArrayFilters=new Map(this.arrayFilters),this.defaultDateRangeFilters=new Map(this.dateRangeFilters),this.defaultNumberRangeFilters=new Map(this.numberRangeFilters)});g(this,"updateUrl",(e=!1)=>{try{const l=`${window.location.pathname}?${this.queryParams}`;e?window.history.pushState({},"",l):window.history.replaceState({},"",l)}catch(l){console.log(l)}});g(this,"setCurrentPage",e=>{this.currentPage=e});g(this,"setPageSize",e=>{this.pageSize=e});g(this,"setFilter",(e,l)=>{this.filters.set(e,l),this.updateUrl()});g(this,"clearFilter",e=>{this.filters.set(e,""),this.updateUrl()});g(this,"setArrayFilter",(e,l)=>{this.arrayFilters.set(e,l),this.updateUrl()});g(this,"clearArrayFilter",e=>{this.arrayFilters.set(e,[]),this.updateUrl()});g(this,"setRangeFilter",({key:e,range:l,dates:r})=>{l.setFilterType(e),l.setDates(r.start,r.end),this.updateUrl()});g(this,"clearRangeFilter",e=>{const l=this.dateRangeFilters.get(e);l&&(l.clear(),this.updateUrl())});g(this,"setNumberRangeFilter",({numberRange:e,gte:l,lte:r})=>{e.setGte(l),e.setLte(r),this.updateUrl()});g(this,"clearNumberRangeFilter",e=>{const l=this.numberRangeFilters.get(e);l&&(l.clear(),this.updateUrl())});g(this,"clearAllFilters",(e=!1)=>{const{SEARCH_FILTER_ID:l}=y.BusinessLogicManager.getBusinessLogic();this.filters.forEach((r,t)=>{t!==l&&this.filters.set(t,"")}),this.arrayFilters.forEach((r,t)=>this.arrayFilters.set(t,[])),this.dateRangeFilters.forEach(r=>r.clear()),this.numberRangeFilters.forEach(r=>r.clear()),e||this.updateUrl()});g(this,"clearFiltersForGroup",e=>{const{GROUP_MAP:l}=y.BusinessLogicManager.getBusinessLogic(),r=l.get(e);r&&r.fields.forEach(t=>{this.arrayFilters.has(t.id)?this.clearArrayFilter(t.id):this.dateRangeFilters.has(t.id)?this.clearRangeFilter(t.id):this.numberRangeFilters.has(t.id)?this.clearNumberRangeFilter(t.id):this.clearFilter(t.id)})});g(this,"setActiveViewId",e=>{this.activeViewId=e,this.updateUrl()});g(this,"toggleFiltersDropdownVisible",e=>{this.isFiltersDropdownVisible=e});g(this,"getFiltersForGroup",e=>{const{GROUP_MAP:l}=y.BusinessLogicManager.getBusinessLogic(),r=l.get(e);if(!r)return{};const t={};return r.fields.forEach(a=>{this.arrayFilters.has(a.id)?t[a.id]=this.arrayFilters.get(a.id):this.dateRangeFilters.has(a.id)?t[a.id]=this.dateRangeFilters.get(a.id):this.numberRangeFilters.has(a.id)?t[a.id]=this.numberRangeFilters.get(a.id):t[a.id]=this.filters.get(a.id)}),t});g(this,"initFiltersFromView",e=>{var r;const{PAGE_SIZE_OPTIONS:l}=y.BusinessLogicManager.getBusinessLogic();(r=e.page)!=null&&r.size&&l.includes(e.page.size)&&(this.defaultPageSize=e.page.size,this.pageSize=e.page.size),this.defaultFilters=new Map(e.filterMaps.filters),this.defaultArrayFilters=new Map(e.filterMaps.arrayFilters),this.defaultDateRangeFilters=new Map(Array.from(e.filterMaps.rangeFilters.entries()).map(([t,a])=>{const n=new b.RangeFilter(a.filterType);return a.gte&&a.lte&&n.setDates(a.gte,a.lte),[t,n]})),this.defaultNumberRangeFilters=new Map(Array.from(e.filterMaps.numberRangeFilters.entries()).map(([t,a])=>{const n=a.clone();return a.gte&&n.setGte(a.gte),a.lte&&n.setLte(a.lte),[t,n]})),this.filters=new Map(e.filterMaps.filters),this.arrayFilters=new Map(e.filterMaps.arrayFilters),this.dateRangeFilters=new Map(Array.from(e.filterMaps.rangeFilters.entries()).map(([t,a])=>{const n=new b.RangeFilter(a.filterType);return a.gte&&a.lte&&n.setDates(a.gte,a.lte),[t,n]})),this.numberRangeFilters=new Map(Array.from(e.filterMaps.numberRangeFilters.entries()).map(([t,a])=>{const n=a.clone();return a.gte&&n.setGte(a.gte),a.lte&&n.setLte(a.lte),[t,n]})),this.activeViewId=e.id});g(this,"initFromUrl",(e=!0)=>{const{GROUP_MAP:l,NUMBER_RANGE_FILTERS:r,PAGE_SIZE_OPTIONS:t,PAGE_SIZE_FILTER_ID:a}=y.BusinessLogicManager.getBusinessLogic(),n=new URLSearchParams(window.location.search),f=Array.from(l.values()).flatMap(i=>i.fields),F=new Map,w=new Map,M=new Map,R=new Map,o=new Map;Array.from(n.entries()).forEach(([i,s])=>{(i.includes("_gte")||i.includes("_lte"))&&o.set(i,s)}),Array.from(n.entries()).forEach(([i,s])=>{if(i==="view"&&e){this.activeViewId=s;return}if(i===a&&t.includes(Number(s))){this.pageSize=Number(s);return}let p=f.find(c=>c.id===i);if(!p){const c=i.replace(/_[gl]te$/,"");r.includes(c)&&(p=f.find(m=>m.id===c))}if(p)switch(p.filterType){case u.FilterChoiceValue.CHECKBOX:s&&w.set(i,s.split(","));break;case u.FilterChoiceValue.DATE_RANGE:let c;if(s==="CUSTOM"){c=new b.RangeFilter("CUSTOM");const S=o.get(`${i}_gte`),_=o.get(`${i}_lte`);S&&_&&c.setDates(D.parseDate(S),D.parseDate(_))}else V.isValidDateRange(s)?c=new b.RangeFilter(s):c=new b.RangeFilter(U.DateRanges.TODAY);M.set(i,c);break;case u.FilterChoiceValue.NUMBER_RANGE:const m=new L.NumberRangeFilter({filterId:p.id}),A=i.replace(/_[gl]te$/,""),E=o.get(`${A}_gte`),T=o.get(`${A}_lte`);E&&m.setGte(Number(E)),T&&m.setLte(Number(T)),R.set(A,m);break;case u.FilterChoiceValue.TEXT:case u.FilterChoiceValue.NUMBER:case u.FilterChoiceValue.RADIO:F.set(i,s);break}}),this.filters=F,this.arrayFilters=w,this.dateRangeFilters=M,this.numberRangeFilters=R,this.updateUrl()});g(this,"discardChanges",(e=!1)=>{this.pageSize=this.defaultPageSize;const{SEARCH_FILTER_ID:l}=y.BusinessLogicManager.getBusinessLogic(),r=new Map(this.defaultFilters);this.filters.has(l)&&r.set(l,this.filters.get(l)),this.filters=r,this.arrayFilters=new Map(this.defaultArrayFilters),this.dateRangeFilters.clear(),this.defaultDateRangeFilters.forEach((t,a)=>{const n=new b.RangeFilter(t.filterType);n.setDates(t.gte,t.lte),this.dateRangeFilters.set(a,n)}),this.numberRangeFilters.clear(),this.defaultNumberRangeFilters.forEach((t,a)=>{this.numberRangeFilters.set(a,t.clone())}),this.updateUrl(e)});const{GROUP_MAP:e}=y.BusinessLogicManager.getBusinessLogic(),l=Array.from(e.values()).flatMap(r=>r.fields);this.filters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.TEXT||r.filterType===u.FilterChoiceValue.NUMBER||r.filterType===u.FilterChoiceValue.RADIO||r.filterType===u.FilterChoiceValue.DATE_RANGE).map(r=>[r.id,""])),this.arrayFilters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.CHECKBOX).map(r=>[r.id,[]])),this.dateRangeFilters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.DATE_RANGE).map(r=>[r.id,new b.RangeFilter])),this.numberRangeFilters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.NUMBER_RANGE).map(r=>{const t=new L.NumberRangeFilter({filterId:r.id});return[r.id,t]})),this.defaultArrayFilters=new Map,this.defaultFilters=new Map,this.defaultDateRangeFilters=new Map,this.defaultNumberRangeFilters=new Map,this.currentPage=1,this.pageSize=10,this.defaultPageSize=10,this.initDefaultFilterMaps(),this.isFiltersDropdownVisible=!1,this.activeViewId=void 0,h.makeObservable(this,{defaultPageSize:h.observable,pageSize:h.observable,currentPage:h.observable,defaultFilters:h.observable,defaultArrayFilters:h.observable,defaultDateRangeFilters:h.observable,defaultNumberRangeFilters:h.observable,filters:h.observable,arrayFilters:h.observable,numberRangeFilters:h.observable,dateRangeFilters:h.observable,isFiltersDropdownVisible:h.observable,activeViewId:h.observable,setPageSize:h.action,setCurrentPage:h.action,toggleFiltersDropdownVisible:h.action,setActiveViewId:h.action,setFilter:h.action,setArrayFilter:h.action,setRangeFilter:h.action,setNumberRangeFilter:h.action,clearFilter:h.action,clearArrayFilter:h.action,clearRangeFilter:h.action,clearNumberRangeFilter:h.action,clearAllFilters:h.action,getFiltersForGroup:h.action,clearFiltersForGroup:h.action,initFromUrl:h.action,initFiltersFromView:h.action,initDefaultFilterMaps:h.action,discardChanges:h.action,updateUrl:h.action,hasActiveFilters:h.computed,activeFilterKeysList:h.computed,queryParams:h.computed,hasUnsavedChanges:h.computed})}get hasActiveFilters(){const{GROUP_MAP:e}=y.BusinessLogicManager.getBusinessLogic(),l=Array.from(e.values()).flatMap(t=>t.fields),r=new Set(l.map(t=>t.id));return Array.from(this.filters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t!=="")||Array.from(this.arrayFilters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t.length>0)||Array.from(this.dateRangeFilters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t.filterType!==void 0)||Array.from(this.numberRangeFilters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t.isActive)}get activeFilterKeysList(){const{DATE_RANGE_FILTERS:e,NUMBER_RANGE_FILTERS:l}=y.BusinessLogicManager.getBusinessLogic(),r=Array.from(this.filters.entries()).filter(([F,w])=>w!==""&&!e.includes(F)&&!l.includes(F)).map(([F])=>F),t=Array.from(this.arrayFilters.entries()).filter(([,F])=>F.length>0).map(([F])=>F),a=Array.from(this.dateRangeFilters.entries()).filter(([,F])=>F.filterType!==void 0).map(([F])=>F),n=Array.from(this.numberRangeFilters.entries()).filter(([,F])=>F.isActive).map(([F])=>F);return[...new Set([...r,...t,...a,...n])]}get queryParams(){const{DATE_RANGE_FILTERS:e,NUMBER_RANGE_FILTERS:l,PAGE_SIZE_FILTER_ID:r,PAGE_NUMBER_FILTER_ID:t}=y.BusinessLogicManager.getBusinessLogic(),a=new URLSearchParams;return Array.from(this.filters.entries()).filter(([n,f])=>f!==""&&!e.includes(n)&&!l.includes(n)).forEach(([n,f])=>{a.append(n,f)}),Array.from(this.arrayFilters.entries()).filter(([,n])=>n.length>0).forEach(([n,f])=>{a.append(n,f.join(","))}),Array.from(this.dateRangeFilters.entries()).filter(([,n])=>n.filterType!==void 0).forEach(([n,f])=>{a.set(n,f.filterType),f.filterType==="CUSTOM"&&(a.set(`${n}_gte`,f.gte.toString()),a.set(`${n}_lte`,f.lte.toString()))}),Array.from(this.numberRangeFilters.entries()).filter(([,n])=>n.isActive).forEach(([n,f])=>{f.gte!==void 0&&a.set(`${n}_gte`,f.gte.toString()),f.isValidLte&&a.set(`${n}_lte`,f.lte.toString())}),this.activeViewId&&a.set("view",this.activeViewId),a.set(r,this.pageSize.toString()),a.set(t,this.currentPage.toString()),a.toString()}get hasUnsavedChanges(){if(this.activeViewId===v.ALL_VIEW_ID)return!1;if(this.defaultPageSize!==this.pageSize)return!0;const{GROUP_MAP:e,SEARCH_FILTER_ID:l}=y.BusinessLogicManager.getBusinessLogic(),r=Array.from(e.values()).flatMap(o=>o.fields),t=new Set(r.map(o=>o.id));if(Array.from(this.filters.entries()).filter(([o])=>o!==l&&t.has(o)).some(([o,i])=>{const s=this.defaultFilters.get(o);return s===void 0&&i!==""||s!==void 0&&i!==s}))return!0;const n=Array.from(this.defaultArrayFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.defaultArrayFilters.get(o)||[];return i.length>0||s.length>0?i.length!==s.length||!I.default(i,s):!1}),f=Array.from(this.arrayFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.defaultArrayFilters.get(o)||[];return i.length>0||s.length>0?i.length!==s.length||!I.default(i,s):!1});if(n||f)return!0;const F=Array.from(this.numberRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.defaultNumberRangeFilters.get(o);return!i.isEqual(s)});if(Array.from(this.defaultNumberRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.numberRangeFilters.get(o);return!i.isEqual(s)})||F)return!0;const M=Array.from(this.defaultDateRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{var p,c,m,A;const s=this.dateRangeFilters.get(o);return i!=null&&i.filterType&&!(s!=null&&s.filterType)||s!=null&&s.filterType&&!(i!=null&&i.filterType)||(s==null?void 0:s.filterType)!==(i==null?void 0:i.filterType)?!0:(s==null?void 0:s.filterType)==="CUSTOM"&&(i==null?void 0:i.filterType)==="CUSTOM"?((p=i.gte)==null?void 0:p.toString())!==((c=s.gte)==null?void 0:c.toString())||((m=i.lte)==null?void 0:m.toString())!==((A=s.lte)==null?void 0:A.toString()):!1});return Array.from(this.dateRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{var p,c,m,A;const s=this.defaultDateRangeFilters.get(o);return i!=null&&i.filterType&&!(s!=null&&s.filterType)||s!=null&&s.filterType&&!(i!=null&&i.filterType)||(s==null?void 0:s.filterType)!==(i==null?void 0:i.filterType)?!0:(s==null?void 0:s.filterType)==="CUSTOM"&&(i==null?void 0:i.filterType)==="CUSTOM"?((p=i.gte)==null?void 0:p.toString())!==((c=s.gte)==null?void 0:c.toString())||((m=i.lte)==null?void 0:m.toString())!==((A=s.lte)==null?void 0:A.toString()):!1})||M}}exports.Filters=G;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("lodash"),m=require("./index7.cjs"),C=require("./index59.cjs"),a=require("./index60.cjs"),I=()=>{var u;const{DEFAULT_HIDDEN_COLUMNS:o,DEFAULT_VISIBLE_COLUMNS:t}=m.useBusinessLogic(),{Filters:{activeViewId:i}}=C.useStores(),{viewsMap:l,isLoading:s}=a.useViews();if(!i||s)return{isLoading:s,hiddenColumnIds:[]};const e=l.get(i),n=(u=e==null?void 0:e.columns)==null?void 0:u.columnIds;if(c.isArray(n)&&n.length>0){const r=[...o,...t].filter(d=>!n.includes(d));return{isLoading:s,hiddenColumnIds:r}}return{isLoading:s,hiddenColumnIds:o}};exports.useHiddenColumns=I;
package/dist/index63.js CHANGED
@@ -1,318 +1,28 @@
1
- var L = Object.defineProperty;
2
- var C = (E, e, l) => e in E ? L(E, e, { enumerable: !0, configurable: !0, writable: !0, value: l }) : E[e] = l;
3
- var f = (E, e, l) => C(E, typeof e != "symbol" ? e + "" : e, l);
4
- import { makeObservable as G, computed as T, action as g, observable as u } from "mobx";
5
- import { DateRanges as v } from "@veeqo/ui";
6
- import { parseDate as N } from "@internationalized/date";
7
- import U from "lodash/isEqual";
8
- import { FilterChoiceValue as m } from "./index46.js";
9
- import { RangeFilter as w } from "./index65.js";
10
- import { NumberRangeFilter as P } from "./index64.js";
11
- import { ALL_VIEW_ID as O } from "./index73.js";
12
- import { isValidDateRange as V } from "./index71.js";
13
- import { BusinessLogicManager as y } from "./index8.js";
14
- class W {
15
- constructor() {
16
- // PAGINATION
17
- f(this, "defaultPageSize");
18
- f(this, "pageSize");
19
- f(this, "currentPage");
20
- // DEFAULT FILTERS
21
- f(this, "defaultFilters");
22
- f(this, "defaultArrayFilters");
23
- f(this, "defaultDateRangeFilters");
24
- f(this, "defaultNumberRangeFilters");
25
- // CURRENT FILTERS
26
- f(this, "filters");
27
- f(this, "arrayFilters");
28
- f(this, "dateRangeFilters");
29
- f(this, "numberRangeFilters");
30
- // VIEWS
31
- f(this, "activeViewId");
32
- // VISIBILITY STATE
33
- f(this, "isFiltersDropdownVisible");
34
- f(this, "initDefaultFilterMaps", () => {
35
- this.defaultFilters = new Map(this.filters), this.defaultArrayFilters = new Map(this.arrayFilters), this.defaultDateRangeFilters = new Map(this.dateRangeFilters), this.defaultNumberRangeFilters = new Map(this.numberRangeFilters);
36
- });
37
- f(this, "updateUrl", (e = !1) => {
38
- try {
39
- const l = `${window.location.pathname}?${this.queryParams}`;
40
- e ? window.history.pushState({}, "", l) : window.history.replaceState({}, "", l);
41
- } catch (l) {
42
- console.log(l);
43
- }
44
- });
45
- // PAGINATION
46
- f(this, "setCurrentPage", (e) => {
47
- this.currentPage = e;
48
- });
49
- f(this, "setPageSize", (e) => {
50
- this.pageSize = e;
51
- });
52
- // TEXT FILTERS
53
- f(this, "setFilter", (e, l) => {
54
- this.filters.set(e, l), this.updateUrl();
55
- });
56
- f(this, "clearFilter", (e) => {
57
- this.filters.set(e, ""), this.updateUrl();
58
- });
59
- // ARRAY FILTERS
60
- f(this, "setArrayFilter", (e, l) => {
61
- this.arrayFilters.set(e, l), this.updateUrl();
62
- });
63
- f(this, "clearArrayFilter", (e) => {
64
- this.arrayFilters.set(e, []), this.updateUrl();
65
- });
66
- // RANGE FILTERS
67
- f(this, "setRangeFilter", ({
68
- key: e,
69
- range: l,
70
- dates: r
71
- }) => {
72
- l.setFilterType(e), l.setDates(r.start, r.end), this.updateUrl();
73
- });
74
- f(this, "clearRangeFilter", (e) => {
75
- const l = this.dateRangeFilters.get(e);
76
- l && (l.clear(), this.updateUrl());
77
- });
78
- // NUMBER RANGE FILTERS
79
- f(this, "setNumberRangeFilter", ({
80
- numberRange: e,
81
- gte: l,
82
- lte: r
83
- }) => {
84
- e.setGte(l), e.setLte(r), this.updateUrl();
85
- });
86
- f(this, "clearNumberRangeFilter", (e) => {
87
- const l = this.numberRangeFilters.get(e);
88
- l && (l.clear(), this.updateUrl());
89
- });
90
- // CLEARING ALL FILTERS
91
- f(this, "clearAllFilters", (e = !1) => {
92
- const { SEARCH_FILTER_ID: l } = y.getBusinessLogic();
93
- this.filters.forEach((r, t) => {
94
- t !== l && this.filters.set(t, "");
95
- }), this.arrayFilters.forEach((r, t) => this.arrayFilters.set(t, [])), this.dateRangeFilters.forEach((r) => r.clear()), this.numberRangeFilters.forEach((r) => r.clear()), e || this.updateUrl();
96
- });
97
- f(this, "clearFiltersForGroup", (e) => {
98
- const { GROUP_MAP: l } = y.getBusinessLogic(), r = l.get(e);
99
- r && r.fields.forEach((t) => {
100
- this.arrayFilters.has(t.id) ? this.clearArrayFilter(t.id) : this.dateRangeFilters.has(t.id) ? this.clearRangeFilter(t.id) : this.numberRangeFilters.has(t.id) ? this.clearNumberRangeFilter(t.id) : this.clearFilter(t.id);
101
- });
102
- });
103
- // VIEWS
104
- f(this, "setActiveViewId", (e) => {
105
- this.activeViewId = e, this.updateUrl();
106
- });
107
- // VISIBILITY
108
- f(this, "toggleFiltersDropdownVisible", (e) => {
109
- this.isFiltersDropdownVisible = e;
110
- });
111
- // FILTER GROUPS
112
- f(this, "getFiltersForGroup", (e) => {
113
- const { GROUP_MAP: l } = y.getBusinessLogic(), r = l.get(e);
114
- if (!r) return {};
115
- const t = {};
116
- return r.fields.forEach((a) => {
117
- this.arrayFilters.has(a.id) ? t[a.id] = this.arrayFilters.get(a.id) : this.dateRangeFilters.has(a.id) ? t[a.id] = this.dateRangeFilters.get(a.id) : this.numberRangeFilters.has(a.id) ? t[a.id] = this.numberRangeFilters.get(a.id) : t[a.id] = this.filters.get(a.id);
118
- }), t;
119
- });
120
- f(this, "initFiltersFromView", (e) => {
121
- var r;
122
- const { PAGE_SIZE_OPTIONS: l } = y.getBusinessLogic();
123
- (r = e.page) != null && r.size && l.includes(e.page.size) && (this.defaultPageSize = e.page.size, this.pageSize = e.page.size), this.defaultFilters = new Map(e.filterMaps.filters), this.defaultArrayFilters = new Map(e.filterMaps.arrayFilters), this.defaultDateRangeFilters = new Map(
124
- Array.from(e.filterMaps.rangeFilters.entries()).map(([t, a]) => {
125
- const n = new w(a.filterType);
126
- return a.gte && a.lte && n.setDates(a.gte, a.lte), [t, n];
127
- })
128
- ), this.defaultNumberRangeFilters = new Map(
129
- Array.from(e.filterMaps.numberRangeFilters.entries()).map(([t, a]) => {
130
- const n = a.clone();
131
- return a.gte && n.setGte(a.gte), a.lte && n.setLte(a.lte), [t, n];
132
- })
133
- ), this.filters = new Map(e.filterMaps.filters), this.arrayFilters = new Map(e.filterMaps.arrayFilters), this.dateRangeFilters = new Map(
134
- Array.from(e.filterMaps.rangeFilters.entries()).map(([t, a]) => {
135
- const n = new w(a.filterType);
136
- return a.gte && a.lte && n.setDates(a.gte, a.lte), [t, n];
137
- })
138
- ), this.numberRangeFilters = new Map(
139
- Array.from(e.filterMaps.numberRangeFilters.entries()).map(([t, a]) => {
140
- const n = a.clone();
141
- return a.gte && n.setGte(a.gte), a.lte && n.setLte(a.lte), [t, n];
142
- })
143
- ), this.activeViewId = e.id;
144
- });
145
- f(this, "initFromUrl", (e = !0) => {
146
- const { GROUP_MAP: l, NUMBER_RANGE_FILTERS: r, PAGE_SIZE_OPTIONS: t, PAGE_SIZE_FILTER_ID: a } = y.getBusinessLogic(), n = new URLSearchParams(window.location.search), h = Array.from(l.values()).flatMap((i) => i.fields), F = /* @__PURE__ */ new Map(), R = /* @__PURE__ */ new Map(), M = /* @__PURE__ */ new Map(), S = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map();
147
- Array.from(n.entries()).forEach(([i, s]) => {
148
- (i.includes("_gte") || i.includes("_lte")) && o.set(i, s);
149
- }), Array.from(n.entries()).forEach(([i, s]) => {
150
- if (i === "view" && e) {
151
- this.activeViewId = s;
152
- return;
153
- }
154
- if (i === a && t.includes(Number(s))) {
155
- this.pageSize = Number(s);
156
- return;
157
- }
158
- let p = h.find((d) => d.id === i);
159
- if (!p) {
160
- const d = i.replace(/_[gl]te$/, "");
161
- r.includes(d) && (p = h.find((c) => c.id === d));
162
- }
163
- if (p)
164
- switch (p.filterType) {
165
- case m.CHECKBOX:
166
- s && R.set(i, s.split(","));
167
- break;
168
- case m.DATE_RANGE:
169
- let d;
170
- if (s === "CUSTOM") {
171
- d = new w("CUSTOM");
172
- const I = o.get(`${i}_gte`), D = o.get(`${i}_lte`);
173
- I && D && d.setDates(N(I), N(D));
174
- } else V(s) ? d = new w(s) : d = new w(v.TODAY);
175
- M.set(i, d);
176
- break;
177
- case m.NUMBER_RANGE:
178
- const c = new P({ filterId: p.id }), A = i.replace(/_[gl]te$/, ""), b = o.get(`${A}_gte`), _ = o.get(`${A}_lte`);
179
- b && c.setGte(Number(b)), _ && c.setLte(Number(_)), S.set(A, c);
180
- break;
181
- case m.TEXT:
182
- case m.NUMBER:
183
- case m.RADIO:
184
- F.set(i, s);
185
- break;
186
- }
187
- }), this.filters = F, this.arrayFilters = R, this.dateRangeFilters = M, this.numberRangeFilters = S, this.updateUrl();
188
- });
189
- f(this, "discardChanges", (e = !1) => {
190
- this.pageSize = this.defaultPageSize;
191
- const { SEARCH_FILTER_ID: l } = y.getBusinessLogic(), r = new Map(this.defaultFilters);
192
- this.filters.has(l) && r.set(l, this.filters.get(l)), this.filters = r, this.arrayFilters = new Map(this.defaultArrayFilters), this.dateRangeFilters.clear(), this.defaultDateRangeFilters.forEach((t, a) => {
193
- const n = new w(t.filterType);
194
- n.setDates(t.gte, t.lte), this.dateRangeFilters.set(a, n);
195
- }), this.numberRangeFilters.clear(), this.defaultNumberRangeFilters.forEach((t, a) => {
196
- this.numberRangeFilters.set(a, t.clone());
197
- }), this.updateUrl(e);
198
- });
199
- const { GROUP_MAP: e } = y.getBusinessLogic(), l = Array.from(e.values()).flatMap((r) => r.fields);
200
- this.filters = new Map(
201
- l.filter(
202
- (r) => r.filterType === m.TEXT || r.filterType === m.NUMBER || r.filterType === m.RADIO || r.filterType === m.DATE_RANGE
203
- ).map((r) => [r.id, ""])
204
- ), this.arrayFilters = new Map(
205
- l.filter((r) => r.filterType === m.CHECKBOX).map((r) => [r.id, []])
206
- ), this.dateRangeFilters = new Map(
207
- l.filter((r) => r.filterType === m.DATE_RANGE).map((r) => [r.id, new w()])
208
- ), this.numberRangeFilters = new Map(
209
- l.filter((r) => r.filterType === m.NUMBER_RANGE).map((r) => {
210
- const t = new P({ filterId: r.id });
211
- return [r.id, t];
212
- })
213
- ), this.defaultArrayFilters = /* @__PURE__ */ new Map(), this.defaultFilters = /* @__PURE__ */ new Map(), this.defaultDateRangeFilters = /* @__PURE__ */ new Map(), this.defaultNumberRangeFilters = /* @__PURE__ */ new Map(), this.currentPage = 1, this.pageSize = 10, this.defaultPageSize = 10, this.initDefaultFilterMaps(), this.isFiltersDropdownVisible = !1, this.activeViewId = void 0, G(this, {
214
- defaultPageSize: u,
215
- pageSize: u,
216
- currentPage: u,
217
- defaultFilters: u,
218
- defaultArrayFilters: u,
219
- defaultDateRangeFilters: u,
220
- defaultNumberRangeFilters: u,
221
- filters: u,
222
- arrayFilters: u,
223
- numberRangeFilters: u,
224
- dateRangeFilters: u,
225
- isFiltersDropdownVisible: u,
226
- activeViewId: u,
227
- setPageSize: g,
228
- setCurrentPage: g,
229
- toggleFiltersDropdownVisible: g,
230
- setActiveViewId: g,
231
- setFilter: g,
232
- setArrayFilter: g,
233
- setRangeFilter: g,
234
- setNumberRangeFilter: g,
235
- clearFilter: g,
236
- clearArrayFilter: g,
237
- clearRangeFilter: g,
238
- clearNumberRangeFilter: g,
239
- clearAllFilters: g,
240
- getFiltersForGroup: g,
241
- clearFiltersForGroup: g,
242
- initFromUrl: g,
243
- initFiltersFromView: g,
244
- initDefaultFilterMaps: g,
245
- discardChanges: g,
246
- updateUrl: g,
247
- hasActiveFilters: T,
248
- activeFilterKeysList: T,
249
- queryParams: T,
250
- hasUnsavedChanges: T
251
- });
1
+ import { isArray as d } from "lodash";
2
+ import { useBusinessLogic as c } from "./index7.js";
3
+ import { useStores as C } from "./index59.js";
4
+ import { useViews as I } from "./index60.js";
5
+ const g = () => {
6
+ var t;
7
+ const { DEFAULT_HIDDEN_COLUMNS: e, DEFAULT_VISIBLE_COLUMNS: l } = c(), { Filters: { activeViewId: i } } = C(), { viewsMap: r, isLoading: s } = I();
8
+ if (!i || s)
9
+ return {
10
+ isLoading: s,
11
+ hiddenColumnIds: []
12
+ };
13
+ const o = r.get(i), n = (t = o == null ? void 0 : o.columns) == null ? void 0 : t.columnIds;
14
+ if (d(n) && n.length > 0) {
15
+ const m = [...e, ...l].filter((u) => !n.includes(u));
16
+ return {
17
+ isLoading: s,
18
+ hiddenColumnIds: m
19
+ };
252
20
  }
253
- get hasActiveFilters() {
254
- const { GROUP_MAP: e } = y.getBusinessLogic(), l = Array.from(e.values()).flatMap((t) => t.fields), r = new Set(l.map((t) => t.id));
255
- return Array.from(this.filters.entries()).filter(([t]) => r.has(t)).some(([, t]) => t !== "") || Array.from(this.arrayFilters.entries()).filter(([t]) => r.has(t)).some(([, t]) => t.length > 0) || Array.from(this.dateRangeFilters.entries()).filter(([t]) => r.has(t)).some(([, t]) => t.filterType !== void 0) || Array.from(this.numberRangeFilters.entries()).filter(([t]) => r.has(t)).some(([, t]) => t.isActive);
256
- }
257
- get activeFilterKeysList() {
258
- const { DATE_RANGE_FILTERS: e, NUMBER_RANGE_FILTERS: l } = y.getBusinessLogic(), r = Array.from(this.filters.entries()).filter(
259
- ([F, R]) => R !== "" && !e.includes(F) && !l.includes(F)
260
- ).map(([F]) => F), t = Array.from(this.arrayFilters.entries()).filter(([, F]) => F.length > 0).map(([F]) => F), a = Array.from(this.dateRangeFilters.entries()).filter(([, F]) => F.filterType !== void 0).map(([F]) => F), n = Array.from(this.numberRangeFilters.entries()).filter(([, F]) => F.isActive).map(([F]) => F);
261
- return [.../* @__PURE__ */ new Set([...r, ...t, ...a, ...n])];
262
- }
263
- get queryParams() {
264
- const { DATE_RANGE_FILTERS: e, NUMBER_RANGE_FILTERS: l, PAGE_SIZE_FILTER_ID: r, PAGE_NUMBER_FILTER_ID: t } = y.getBusinessLogic(), a = new URLSearchParams();
265
- return Array.from(this.filters.entries()).filter(
266
- ([n, h]) => h !== "" && !e.includes(n) && !l.includes(n)
267
- ).forEach(([n, h]) => {
268
- a.append(n, h);
269
- }), Array.from(this.arrayFilters.entries()).filter(([, n]) => n.length > 0).forEach(([n, h]) => {
270
- a.append(n, h.join(","));
271
- }), Array.from(this.dateRangeFilters.entries()).filter(([, n]) => n.filterType !== void 0).forEach(([n, h]) => {
272
- a.set(n, h.filterType), h.filterType === "CUSTOM" && (a.set(`${n}_gte`, h.gte.toString()), a.set(`${n}_lte`, h.lte.toString()));
273
- }), Array.from(this.numberRangeFilters.entries()).filter(([, n]) => n.isActive).forEach(([n, h]) => {
274
- h.gte !== void 0 && a.set(`${n}_gte`, h.gte.toString()), h.isValidLte && a.set(`${n}_lte`, h.lte.toString());
275
- }), this.activeViewId && a.set("view", this.activeViewId), a.set(r, this.pageSize.toString()), a.set(t, this.currentPage.toString()), a.toString();
276
- }
277
- get hasUnsavedChanges() {
278
- if (this.activeViewId === O) return !1;
279
- if (this.defaultPageSize !== this.pageSize) return !0;
280
- const { GROUP_MAP: e, SEARCH_FILTER_ID: l } = y.getBusinessLogic(), r = Array.from(e.values()).flatMap((o) => o.fields), t = new Set(r.map((o) => o.id));
281
- if (Array.from(this.filters.entries()).filter(([o]) => o !== l && t.has(o)).some(([o, i]) => {
282
- const s = this.defaultFilters.get(o);
283
- return s === void 0 && i !== "" || s !== void 0 && i !== s;
284
- }))
285
- return !0;
286
- const n = Array.from(this.defaultArrayFilters.entries()).filter(([o]) => t.has(o)).some(([o, i]) => {
287
- const s = this.defaultArrayFilters.get(o) || [];
288
- return i.length > 0 || s.length > 0 ? i.length !== s.length || !U(i, s) : !1;
289
- }), h = Array.from(this.arrayFilters.entries()).filter(([o]) => t.has(o)).some(([o, i]) => {
290
- const s = this.defaultArrayFilters.get(o) || [];
291
- return i.length > 0 || s.length > 0 ? i.length !== s.length || !U(i, s) : !1;
292
- });
293
- if (n || h)
294
- return !0;
295
- const F = Array.from(this.numberRangeFilters.entries()).filter(([o]) => t.has(o)).some(([o, i]) => {
296
- const s = this.defaultNumberRangeFilters.get(o);
297
- return !i.isEqual(s);
298
- });
299
- if (Array.from(this.defaultNumberRangeFilters.entries()).filter(([o]) => t.has(o)).some(([o, i]) => {
300
- const s = this.numberRangeFilters.get(o);
301
- return !i.isEqual(s);
302
- }) || F)
303
- return !0;
304
- const M = Array.from(this.defaultDateRangeFilters.entries()).filter(([o]) => t.has(o)).some(([o, i]) => {
305
- var p, d, c, A;
306
- const s = this.dateRangeFilters.get(o);
307
- return i != null && i.filterType && !(s != null && s.filterType) || s != null && s.filterType && !(i != null && i.filterType) || (s == null ? void 0 : s.filterType) !== (i == null ? void 0 : i.filterType) ? !0 : (s == null ? void 0 : s.filterType) === "CUSTOM" && (i == null ? void 0 : i.filterType) === "CUSTOM" ? ((p = i.gte) == null ? void 0 : p.toString()) !== ((d = s.gte) == null ? void 0 : d.toString()) || ((c = i.lte) == null ? void 0 : c.toString()) !== ((A = s.lte) == null ? void 0 : A.toString()) : !1;
308
- });
309
- return Array.from(this.dateRangeFilters.entries()).filter(([o]) => t.has(o)).some(([o, i]) => {
310
- var p, d, c, A;
311
- const s = this.defaultDateRangeFilters.get(o);
312
- return i != null && i.filterType && !(s != null && s.filterType) || s != null && s.filterType && !(i != null && i.filterType) || (s == null ? void 0 : s.filterType) !== (i == null ? void 0 : i.filterType) ? !0 : (s == null ? void 0 : s.filterType) === "CUSTOM" && (i == null ? void 0 : i.filterType) === "CUSTOM" ? ((p = i.gte) == null ? void 0 : p.toString()) !== ((d = s.gte) == null ? void 0 : d.toString()) || ((c = i.lte) == null ? void 0 : c.toString()) !== ((A = s.lte) == null ? void 0 : A.toString()) : !1;
313
- }) || M;
314
- }
315
- }
21
+ return {
22
+ isLoading: s,
23
+ hiddenColumnIds: e
24
+ };
25
+ };
316
26
  export {
317
- W as Filters
27
+ g as useHiddenColumns
318
28
  };
package/dist/index64.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var c=Object.defineProperty;var M=(r,e,s)=>e in r?c(r,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):r[e]=s;var t=(r,e,s)=>M(r,typeof e!="symbol"?e+"":e,s);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("mobx"),d=require("./index8.cjs");class n{constructor({filterId:e}){t(this,"filterId");t(this,"gteMinLabel");t(this,"gteMin");t(this,"lteMaxLabel");t(this,"lteMax");t(this,"gte");t(this,"lte");t(this,"setGte",e=>{this.gte=e});t(this,"setLte",e=>{this.lte=e});t(this,"clear",()=>{this.setGte(void 0),this.setLte(void 0)});t(this,"clone",()=>{const e=new n({filterId:this.filterId});return e.setGte(this.gte),e.setLte(this.lte),e});t(this,"isEqual",e=>!(!e||this.lte!==e.lte||this.gte!==e.gte));var h,o;i.makeObservable(this,{filterId:i.observable,filterLabel:i.computed,gte:i.observable,lte:i.observable,lteMax:i.observable,gteMin:i.observable,setGte:i.action,setLte:i.action,clear:i.action}),this.filterId=e;const{FIELDS_MAP:s}=d.BusinessLogicManager.getBusinessLogic(),l=s.get(this.filterId),u=(h=l==null?void 0:l.options)==null?void 0:h.every(a=>a.value&&Number.isInteger(Number(a.value)));if(l&&u&&((o=l.options)==null?void 0:o.length)===2){const[a,g]=l.options,b=Number(a.value),f=Number(g.value);this.gteMin=b,this.gteMinLabel=a.label,this.lteMax=f,this.lteMaxLabel=g.label}else this.gte=0,this.gteMin=0,this.gteMinLabel="Min.",this.lte=100,this.lteMax=100,this.lteMaxLabel="Max."}get isValidLte(){return!(this.lte===void 0||this.lte===this.lteMax)}get filterLabel(){return this.gte===void 0&&this.lte===void 0?"":this.isValidLte?`Between ${this.gte} and ${this.lte}`:this.gte!==void 0?`${this.gte} or more`:""}get isActive(){return this.gte===this.gteMin&&this.lte===this.lteMax||this.gte===this.lte||this.gte===void 0&&this.lte===void 0?!1:this.gte!==void 0?!0:this.lte!==void 0&&this.lte<this.lteMax}}exports.NumberRangeFilter=n;
1
+ "use strict";var N=Object.defineProperty;var U=(d,e,l)=>e in d?N(d,e,{enumerable:!0,configurable:!0,writable:!0,value:l}):d[e]=l;var g=(d,e,l)=>U(d,typeof e!="symbol"?e+"":e,l);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("mobx"),C=require("@veeqo/ui"),D=require("@internationalized/date"),P=require("lodash/isEqual"),u=require("./index47.cjs"),b=require("./index66.cjs"),L=require("./index65.cjs"),v=require("./index74.cjs"),V=require("./index72.cjs"),y=require("./index8.cjs"),B=d=>d&&d.__esModule?d:{default:d},I=B(P);class G{constructor(){g(this,"defaultPageSize");g(this,"pageSize");g(this,"currentPage");g(this,"defaultFilters");g(this,"defaultArrayFilters");g(this,"defaultDateRangeFilters");g(this,"defaultNumberRangeFilters");g(this,"filters");g(this,"arrayFilters");g(this,"dateRangeFilters");g(this,"numberRangeFilters");g(this,"activeViewId");g(this,"isFiltersDropdownVisible");g(this,"initDefaultFilterMaps",()=>{this.defaultFilters=new Map(this.filters),this.defaultArrayFilters=new Map(this.arrayFilters),this.defaultDateRangeFilters=new Map(this.dateRangeFilters),this.defaultNumberRangeFilters=new Map(this.numberRangeFilters)});g(this,"updateUrl",(e=!1)=>{try{const l=`${window.location.pathname}?${this.queryParams}`;e?window.history.pushState({},"",l):window.history.replaceState({},"",l)}catch(l){console.log(l)}});g(this,"setCurrentPage",e=>{this.currentPage=e,this.updateUrl()});g(this,"setPageSize",e=>{this.pageSize=e,this.updateUrl()});g(this,"setFilter",(e,l)=>{this.filters.set(e,l),this.updateUrl()});g(this,"clearFilter",e=>{this.filters.set(e,""),this.updateUrl()});g(this,"setArrayFilter",(e,l)=>{this.arrayFilters.set(e,l),this.updateUrl()});g(this,"clearArrayFilter",e=>{this.arrayFilters.set(e,[]),this.updateUrl()});g(this,"setRangeFilter",({key:e,range:l,dates:r})=>{l.setFilterType(e),l.setDates(r.start,r.end),this.updateUrl()});g(this,"clearRangeFilter",e=>{const l=this.dateRangeFilters.get(e);l&&(l.clear(),this.updateUrl())});g(this,"setNumberRangeFilter",({numberRange:e,gte:l,lte:r})=>{e.setGte(l),e.setLte(r),this.updateUrl()});g(this,"clearNumberRangeFilter",e=>{const l=this.numberRangeFilters.get(e);l&&(l.clear(),this.updateUrl())});g(this,"clearAllFilters",(e=!1)=>{const{SEARCH_FILTER_ID:l}=y.BusinessLogicManager.getBusinessLogic();this.filters.forEach((r,t)=>{t!==l&&this.filters.set(t,"")}),this.arrayFilters.forEach((r,t)=>this.arrayFilters.set(t,[])),this.dateRangeFilters.forEach(r=>r.clear()),this.numberRangeFilters.forEach(r=>r.clear()),e||this.updateUrl()});g(this,"clearFiltersForGroup",e=>{const{GROUP_MAP:l}=y.BusinessLogicManager.getBusinessLogic(),r=l.get(e);r&&r.fields.forEach(t=>{this.arrayFilters.has(t.id)?this.clearArrayFilter(t.id):this.dateRangeFilters.has(t.id)?this.clearRangeFilter(t.id):this.numberRangeFilters.has(t.id)?this.clearNumberRangeFilter(t.id):this.clearFilter(t.id)})});g(this,"setActiveViewId",e=>{this.activeViewId=e,this.updateUrl()});g(this,"toggleFiltersDropdownVisible",e=>{this.isFiltersDropdownVisible=e});g(this,"getFiltersForGroup",e=>{const{GROUP_MAP:l}=y.BusinessLogicManager.getBusinessLogic(),r=l.get(e);if(!r)return{};const t={};return r.fields.forEach(a=>{this.arrayFilters.has(a.id)?t[a.id]=this.arrayFilters.get(a.id):this.dateRangeFilters.has(a.id)?t[a.id]=this.dateRangeFilters.get(a.id):this.numberRangeFilters.has(a.id)?t[a.id]=this.numberRangeFilters.get(a.id):t[a.id]=this.filters.get(a.id)}),t});g(this,"initFiltersFromView",e=>{var r;const{PAGE_SIZE_OPTIONS:l}=y.BusinessLogicManager.getBusinessLogic();(r=e.page)!=null&&r.size&&l.includes(e.page.size)&&(this.defaultPageSize=e.page.size,this.pageSize=e.page.size),this.defaultFilters=new Map(e.filterMaps.filters),this.defaultArrayFilters=new Map(e.filterMaps.arrayFilters),this.defaultDateRangeFilters=new Map(Array.from(e.filterMaps.rangeFilters.entries()).map(([t,a])=>{const n=new b.RangeFilter(a.filterType);return a.gte&&a.lte&&n.setDates(a.gte,a.lte),[t,n]})),this.defaultNumberRangeFilters=new Map(Array.from(e.filterMaps.numberRangeFilters.entries()).map(([t,a])=>{const n=a.clone();return a.gte&&n.setGte(a.gte),a.lte&&n.setLte(a.lte),[t,n]})),this.filters=new Map(e.filterMaps.filters),this.arrayFilters=new Map(e.filterMaps.arrayFilters),this.dateRangeFilters=new Map(Array.from(e.filterMaps.rangeFilters.entries()).map(([t,a])=>{const n=new b.RangeFilter(a.filterType);return a.gte&&a.lte&&n.setDates(a.gte,a.lte),[t,n]})),this.numberRangeFilters=new Map(Array.from(e.filterMaps.numberRangeFilters.entries()).map(([t,a])=>{const n=a.clone();return a.gte&&n.setGte(a.gte),a.lte&&n.setLte(a.lte),[t,n]})),this.activeViewId=e.id});g(this,"initFromUrl",(e=!0)=>{const{GROUP_MAP:l,NUMBER_RANGE_FILTERS:r,PAGE_SIZE_OPTIONS:t,PAGE_SIZE_FILTER_ID:a}=y.BusinessLogicManager.getBusinessLogic(),n=new URLSearchParams(window.location.search),f=Array.from(l.values()).flatMap(i=>i.fields),F=new Map,w=new Map,M=new Map,R=new Map,o=new Map;Array.from(n.entries()).forEach(([i,s])=>{(i.includes("_gte")||i.includes("_lte"))&&o.set(i,s)}),Array.from(n.entries()).forEach(([i,s])=>{if(i==="view"&&e){this.activeViewId=s;return}if(i===a&&t.includes(Number(s))){this.pageSize=Number(s);return}let p=f.find(c=>c.id===i);if(!p){const c=i.replace(/_[gl]te$/,"");r.includes(c)&&(p=f.find(m=>m.id===c))}if(p)switch(p.filterType){case u.FilterChoiceValue.CHECKBOX:s&&w.set(i,s.split(","));break;case u.FilterChoiceValue.DATE_RANGE:let c;if(s==="CUSTOM"){c=new b.RangeFilter("CUSTOM");const S=o.get(`${i}_gte`),_=o.get(`${i}_lte`);S&&_&&c.setDates(D.parseDate(S),D.parseDate(_))}else V.isValidDateRange(s)?c=new b.RangeFilter(s):c=new b.RangeFilter(C.DateRanges.TODAY);M.set(i,c);break;case u.FilterChoiceValue.NUMBER_RANGE:const m=new L.NumberRangeFilter({filterId:p.id}),A=i.replace(/_[gl]te$/,""),E=o.get(`${A}_gte`),T=o.get(`${A}_lte`);E&&m.setGte(Number(E)),T&&m.setLte(Number(T)),R.set(A,m);break;case u.FilterChoiceValue.TEXT:case u.FilterChoiceValue.NUMBER:case u.FilterChoiceValue.RADIO:F.set(i,s);break}}),this.filters=F,this.arrayFilters=w,this.dateRangeFilters=M,this.numberRangeFilters=R,this.updateUrl()});g(this,"discardChanges",(e=!1)=>{this.pageSize=this.defaultPageSize;const{SEARCH_FILTER_ID:l}=y.BusinessLogicManager.getBusinessLogic(),r=new Map(this.defaultFilters);this.filters.has(l)&&r.set(l,this.filters.get(l)),this.filters=r,this.arrayFilters=new Map(this.defaultArrayFilters),this.dateRangeFilters.clear(),this.defaultDateRangeFilters.forEach((t,a)=>{const n=new b.RangeFilter(t.filterType);n.setDates(t.gte,t.lte),this.dateRangeFilters.set(a,n)}),this.numberRangeFilters.clear(),this.defaultNumberRangeFilters.forEach((t,a)=>{this.numberRangeFilters.set(a,t.clone())}),this.updateUrl(e)});const{GROUP_MAP:e}=y.BusinessLogicManager.getBusinessLogic(),l=Array.from(e.values()).flatMap(r=>r.fields);this.filters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.TEXT||r.filterType===u.FilterChoiceValue.NUMBER||r.filterType===u.FilterChoiceValue.RADIO||r.filterType===u.FilterChoiceValue.DATE_RANGE).map(r=>[r.id,""])),this.arrayFilters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.CHECKBOX).map(r=>[r.id,[]])),this.dateRangeFilters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.DATE_RANGE).map(r=>[r.id,new b.RangeFilter])),this.numberRangeFilters=new Map(l.filter(r=>r.filterType===u.FilterChoiceValue.NUMBER_RANGE).map(r=>{const t=new L.NumberRangeFilter({filterId:r.id});return[r.id,t]})),this.defaultArrayFilters=new Map,this.defaultFilters=new Map,this.defaultDateRangeFilters=new Map,this.defaultNumberRangeFilters=new Map,this.currentPage=1,this.pageSize=10,this.defaultPageSize=10,this.initDefaultFilterMaps(),this.isFiltersDropdownVisible=!1,this.activeViewId=void 0,h.makeObservable(this,{defaultPageSize:h.observable,pageSize:h.observable,currentPage:h.observable,defaultFilters:h.observable,defaultArrayFilters:h.observable,defaultDateRangeFilters:h.observable,defaultNumberRangeFilters:h.observable,filters:h.observable,arrayFilters:h.observable,numberRangeFilters:h.observable,dateRangeFilters:h.observable,isFiltersDropdownVisible:h.observable,activeViewId:h.observable,setPageSize:h.action,setCurrentPage:h.action,toggleFiltersDropdownVisible:h.action,setActiveViewId:h.action,setFilter:h.action,setArrayFilter:h.action,setRangeFilter:h.action,setNumberRangeFilter:h.action,clearFilter:h.action,clearArrayFilter:h.action,clearRangeFilter:h.action,clearNumberRangeFilter:h.action,clearAllFilters:h.action,getFiltersForGroup:h.action,clearFiltersForGroup:h.action,initFromUrl:h.action,initFiltersFromView:h.action,initDefaultFilterMaps:h.action,discardChanges:h.action,updateUrl:h.action,hasActiveFilters:h.computed,activeFilterKeysList:h.computed,queryParams:h.computed,hasUnsavedChanges:h.computed})}get hasActiveFilters(){const{GROUP_MAP:e}=y.BusinessLogicManager.getBusinessLogic(),l=Array.from(e.values()).flatMap(t=>t.fields),r=new Set(l.map(t=>t.id));return Array.from(this.filters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t!=="")||Array.from(this.arrayFilters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t.length>0)||Array.from(this.dateRangeFilters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t.filterType!==void 0)||Array.from(this.numberRangeFilters.entries()).filter(([t])=>r.has(t)).some(([,t])=>t.isActive)}get activeFilterKeysList(){const{DATE_RANGE_FILTERS:e,NUMBER_RANGE_FILTERS:l}=y.BusinessLogicManager.getBusinessLogic(),r=Array.from(this.filters.entries()).filter(([F,w])=>w!==""&&!e.includes(F)&&!l.includes(F)).map(([F])=>F),t=Array.from(this.arrayFilters.entries()).filter(([,F])=>F.length>0).map(([F])=>F),a=Array.from(this.dateRangeFilters.entries()).filter(([,F])=>F.filterType!==void 0).map(([F])=>F),n=Array.from(this.numberRangeFilters.entries()).filter(([,F])=>F.isActive).map(([F])=>F);return[...new Set([...r,...t,...a,...n])]}get queryParams(){const{DATE_RANGE_FILTERS:e,NUMBER_RANGE_FILTERS:l,PAGE_SIZE_FILTER_ID:r,PAGE_NUMBER_FILTER_ID:t}=y.BusinessLogicManager.getBusinessLogic(),a=new URLSearchParams;return Array.from(this.filters.entries()).filter(([n,f])=>f!==""&&!e.includes(n)&&!l.includes(n)).forEach(([n,f])=>{a.append(n,f)}),Array.from(this.arrayFilters.entries()).filter(([,n])=>n.length>0).forEach(([n,f])=>{a.append(n,f.join(","))}),Array.from(this.dateRangeFilters.entries()).filter(([,n])=>n.filterType!==void 0).forEach(([n,f])=>{a.set(n,f.filterType),f.filterType==="CUSTOM"&&(a.set(`${n}_gte`,f.gte.toString()),a.set(`${n}_lte`,f.lte.toString()))}),Array.from(this.numberRangeFilters.entries()).filter(([,n])=>n.isActive).forEach(([n,f])=>{f.gte!==void 0&&a.set(`${n}_gte`,f.gte.toString()),f.isValidLte&&a.set(`${n}_lte`,f.lte.toString())}),this.activeViewId&&a.set("view",this.activeViewId),a.set(r,this.pageSize.toString()),a.set(t,this.currentPage.toString()),a.toString()}get hasUnsavedChanges(){if(this.activeViewId===v.ALL_VIEW_ID)return!1;if(this.defaultPageSize!==this.pageSize)return!0;const{GROUP_MAP:e,SEARCH_FILTER_ID:l}=y.BusinessLogicManager.getBusinessLogic(),r=Array.from(e.values()).flatMap(o=>o.fields),t=new Set(r.map(o=>o.id));if(Array.from(this.filters.entries()).filter(([o])=>o!==l&&t.has(o)).some(([o,i])=>{const s=this.defaultFilters.get(o);return s===void 0&&i!==""||s!==void 0&&i!==s}))return!0;const n=Array.from(this.defaultArrayFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.defaultArrayFilters.get(o)||[];return i.length>0||s.length>0?i.length!==s.length||!I.default(i,s):!1}),f=Array.from(this.arrayFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.defaultArrayFilters.get(o)||[];return i.length>0||s.length>0?i.length!==s.length||!I.default(i,s):!1});if(n||f)return!0;const F=Array.from(this.numberRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.defaultNumberRangeFilters.get(o);return!i.isEqual(s)});if(Array.from(this.defaultNumberRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{const s=this.numberRangeFilters.get(o);return!i.isEqual(s)})||F)return!0;const M=Array.from(this.defaultDateRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{var p,c,m,A;const s=this.dateRangeFilters.get(o);return i!=null&&i.filterType&&!(s!=null&&s.filterType)||s!=null&&s.filterType&&!(i!=null&&i.filterType)||(s==null?void 0:s.filterType)!==(i==null?void 0:i.filterType)?!0:(s==null?void 0:s.filterType)==="CUSTOM"&&(i==null?void 0:i.filterType)==="CUSTOM"?((p=i.gte)==null?void 0:p.toString())!==((c=s.gte)==null?void 0:c.toString())||((m=i.lte)==null?void 0:m.toString())!==((A=s.lte)==null?void 0:A.toString()):!1});return Array.from(this.dateRangeFilters.entries()).filter(([o])=>t.has(o)).some(([o,i])=>{var p,c,m,A;const s=this.defaultDateRangeFilters.get(o);return i!=null&&i.filterType&&!(s!=null&&s.filterType)||s!=null&&s.filterType&&!(i!=null&&i.filterType)||(s==null?void 0:s.filterType)!==(i==null?void 0:i.filterType)?!0:(s==null?void 0:s.filterType)==="CUSTOM"&&(i==null?void 0:i.filterType)==="CUSTOM"?((p=i.gte)==null?void 0:p.toString())!==((c=s.gte)==null?void 0:c.toString())||((m=i.lte)==null?void 0:m.toString())!==((A=s.lte)==null?void 0:A.toString()):!1})||M}}exports.Filters=G;