@veeqo/transfigure 2.1.2 → 2.2.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 (203) hide show
  1. package/dist/components/Views/OptionsDropdown/styled.d.ts +2 -2
  2. package/dist/components/Views/PillNotifications/variants/styled.d.ts +2 -2
  3. package/dist/constants/helpGuideUrls.d.ts +3 -0
  4. package/dist/constants/index.d.ts +1 -0
  5. package/dist/index.cjs +1 -1
  6. package/dist/index.js +81 -79
  7. package/dist/index100.cjs +1 -1
  8. package/dist/index100.js +49 -14
  9. package/dist/index101.cjs +1 -1
  10. package/dist/index101.js +29 -21
  11. package/dist/index102.cjs +1 -12
  12. package/dist/index102.js +21 -16
  13. package/dist/index103.cjs +19 -1
  14. package/dist/index103.js +24 -7
  15. package/dist/index104.cjs +1 -1
  16. package/dist/index104.js +16 -48
  17. package/dist/index105.cjs +1 -1
  18. package/dist/index105.js +7 -29
  19. package/dist/index106.cjs +10 -78
  20. package/dist/index106.js +13 -95
  21. package/dist/index107.cjs +1 -1
  22. package/dist/index107.js +1 -1
  23. package/dist/index108.cjs +80 -1
  24. package/dist/index108.js +98 -2
  25. package/dist/index11.cjs +1 -1
  26. package/dist/index11.js +1 -1
  27. package/dist/index111.cjs +1 -1
  28. package/dist/index111.js +39 -42
  29. package/dist/index114.cjs +1 -1
  30. package/dist/index114.js +2 -26
  31. package/dist/index115.cjs +1 -1
  32. package/dist/index115.js +22 -32
  33. package/dist/index116.cjs +1 -7
  34. package/dist/index116.js +36 -10
  35. package/dist/index118.cjs +1 -1
  36. package/dist/index118.js +1 -1
  37. package/dist/index119.cjs +7 -1
  38. package/dist/index119.js +10 -47
  39. package/dist/index120.cjs +1 -0
  40. package/dist/index120.js +49 -0
  41. package/dist/index13.cjs +1 -1
  42. package/dist/index13.js +2 -2
  43. package/dist/index14.cjs +1 -1
  44. package/dist/index14.js +1 -1
  45. package/dist/index15.cjs +1 -1
  46. package/dist/index15.js +1 -1
  47. package/dist/index16.cjs +1 -1
  48. package/dist/index16.js +2 -2
  49. package/dist/index17.cjs +1 -1
  50. package/dist/index17.js +2 -2
  51. package/dist/index18.cjs +1 -1
  52. package/dist/index18.js +1 -1
  53. package/dist/index19.cjs +1 -1
  54. package/dist/index19.js +4 -4
  55. package/dist/index20.cjs +1 -1
  56. package/dist/index20.js +2 -2
  57. package/dist/index21.cjs +1 -1
  58. package/dist/index21.js +2 -2
  59. package/dist/index22.cjs +1 -1
  60. package/dist/index22.js +2 -2
  61. package/dist/index23.cjs +1 -1
  62. package/dist/index23.js +3 -3
  63. package/dist/index26.cjs +1 -1
  64. package/dist/index26.js +4 -4
  65. package/dist/index27.cjs +1 -1
  66. package/dist/index27.js +4 -4
  67. package/dist/index28.cjs +1 -1
  68. package/dist/index28.js +1 -1
  69. package/dist/index29.cjs +1 -1
  70. package/dist/index29.js +2 -2
  71. package/dist/index3.cjs +1 -1
  72. package/dist/index3.js +2 -2
  73. package/dist/index30.cjs +1 -1
  74. package/dist/index30.js +3 -3
  75. package/dist/index31.cjs +1 -1
  76. package/dist/index31.js +3 -3
  77. package/dist/index32.cjs +1 -1
  78. package/dist/index32.js +1 -1
  79. package/dist/index33.cjs +1 -1
  80. package/dist/index33.js +1 -1
  81. package/dist/index35.cjs +1 -1
  82. package/dist/index35.js +1 -1
  83. package/dist/index36.cjs +1 -1
  84. package/dist/index36.js +6 -6
  85. package/dist/index37.cjs +1 -1
  86. package/dist/index37.js +1 -1
  87. package/dist/index38.cjs +1 -1
  88. package/dist/index38.js +1 -1
  89. package/dist/index39.cjs +1 -1
  90. package/dist/index39.js +3 -3
  91. package/dist/index4.cjs +1 -1
  92. package/dist/index4.js +2 -2
  93. package/dist/index40.cjs +1 -1
  94. package/dist/index40.js +3 -3
  95. package/dist/index41.cjs +1 -1
  96. package/dist/index41.js +4 -4
  97. package/dist/index42.cjs +1 -1
  98. package/dist/index42.js +2 -2
  99. package/dist/index44.cjs +1 -1
  100. package/dist/index44.js +4 -4
  101. package/dist/index46.cjs +1 -1
  102. package/dist/index46.js +5 -5
  103. package/dist/index47.cjs +1 -1
  104. package/dist/index47.js +3 -3
  105. package/dist/index49.cjs +1 -1
  106. package/dist/index49.js +4 -9
  107. package/dist/index5.cjs +1 -1
  108. package/dist/index5.js +2 -2
  109. package/dist/index50.cjs +1 -1
  110. package/dist/index50.js +9 -23
  111. package/dist/index51.cjs +1 -1
  112. package/dist/index51.js +23 -2
  113. package/dist/index52.cjs +1 -1
  114. package/dist/index52.js +2 -4
  115. package/dist/index53.cjs +1 -1
  116. package/dist/index53.js +4 -11
  117. package/dist/index54.cjs +1 -1
  118. package/dist/index54.js +10 -12
  119. package/dist/index55.cjs +1 -1
  120. package/dist/index55.js +12 -11
  121. package/dist/index56.cjs +1 -1
  122. package/dist/index56.js +11 -184
  123. package/dist/index57.cjs +1 -1
  124. package/dist/index57.js +183 -25
  125. package/dist/index58.cjs +1 -1
  126. package/dist/index58.js +26 -24
  127. package/dist/index59.cjs +1 -1
  128. package/dist/index59.js +19 -22
  129. package/dist/index6.cjs +1 -1
  130. package/dist/index6.js +2 -2
  131. package/dist/index60.cjs +1 -1
  132. package/dist/index60.js +25 -97
  133. package/dist/index61.cjs +1 -1
  134. package/dist/index61.js +99 -8
  135. package/dist/index62.cjs +1 -1
  136. package/dist/index62.js +8 -33
  137. package/dist/index63.cjs +1 -1
  138. package/dist/index63.js +33 -63
  139. package/dist/index64.cjs +1 -1
  140. package/dist/index64.js +59 -19
  141. package/dist/index65.cjs +1 -1
  142. package/dist/index65.js +23 -18
  143. package/dist/index66.cjs +1 -1
  144. package/dist/index66.js +16 -29
  145. package/dist/index67.cjs +1 -1
  146. package/dist/index67.js +30 -59
  147. package/dist/index68.cjs +1 -1
  148. package/dist/index68.js +60 -349
  149. package/dist/index69.cjs +1 -1
  150. package/dist/index69.js +345 -53
  151. package/dist/index7.cjs +1 -1
  152. package/dist/index7.js +4 -4
  153. package/dist/index70.cjs +1 -1
  154. package/dist/index70.js +48 -47
  155. package/dist/index71.cjs +1 -1
  156. package/dist/index71.js +51 -32
  157. package/dist/index72.cjs +1 -1
  158. package/dist/index72.js +30 -24
  159. package/dist/index73.cjs +1 -1
  160. package/dist/index73.js +26 -32
  161. package/dist/index74.cjs +1 -1
  162. package/dist/index74.js +38 -4
  163. package/dist/index75.cjs +1 -1
  164. package/dist/index75.js +4 -13
  165. package/dist/index76.cjs +1 -1
  166. package/dist/index76.js +12 -16
  167. package/dist/index77.cjs +1 -1
  168. package/dist/index77.js +14 -16
  169. package/dist/index78.cjs +1 -1
  170. package/dist/index78.js +18 -65
  171. package/dist/index79.cjs +1 -1
  172. package/dist/index79.js +66 -24
  173. package/dist/index80.cjs +1 -1
  174. package/dist/index80.js +24 -21
  175. package/dist/index81.cjs +1 -1
  176. package/dist/index81.js +20 -6
  177. package/dist/index82.cjs +1 -1
  178. package/dist/index82.js +7 -2
  179. package/dist/index83.cjs +1 -1
  180. package/dist/index83.js +2 -9
  181. package/dist/index84.cjs +1 -3
  182. package/dist/index84.js +8 -13
  183. package/dist/index85.cjs +3 -1
  184. package/dist/index85.js +13 -8
  185. package/dist/index86.cjs +1 -1
  186. package/dist/index86.js +9 -2
  187. package/dist/index87.cjs +1 -1
  188. package/dist/index87.js +116 -4
  189. package/dist/index88.cjs +1 -1
  190. package/dist/index88.js +39 -114
  191. package/dist/index89.cjs +1 -1
  192. package/dist/index89.js +9 -41
  193. package/dist/index90.cjs +1 -1
  194. package/dist/index90.js +2 -9
  195. package/dist/index91.cjs +1 -1
  196. package/dist/index91.js +4 -17
  197. package/dist/index94.cjs +1 -1
  198. package/dist/index94.js +2 -2
  199. package/dist/index97.cjs +1 -1
  200. package/dist/index97.js +4 -4
  201. package/dist/index99.cjs +1 -19
  202. package/dist/index99.js +14 -23
  203. package/package.json +5 -5
package/dist/index115.js CHANGED
@@ -1,38 +1,28 @@
1
- import { theme as o } from "@veeqo/ui";
2
- import { withStyles as r } from "@material-ui/core/styles";
3
- import e from "@material-ui/core/Slider";
4
- const l = r({
5
- root: {
6
- color: o.colors.secondary.blue.base,
7
- height: 4
1
+ const a = {
2
+ initial: {
3
+ opacity: 0,
4
+ y: 50,
5
+ scale: 0.95
8
6
  },
9
- thumb: {
10
- height: 20,
11
- width: 20,
12
- backgroundColor: "#fff",
13
- border: "3px solid currentColor",
14
- marginTop: -8,
15
- marginLeft: -10,
16
- "&:focus, &:hover, &$active": {
17
- boxShadow: "inherit"
7
+ animate: {
8
+ opacity: 1,
9
+ y: 0,
10
+ scale: 1,
11
+ transition: {
12
+ duration: 0.2,
13
+ ease: "easeOut"
18
14
  }
19
15
  },
20
- valueLabel: {
21
- left: "calc(-50% - 1px)"
22
- },
23
- track: {
24
- height: 4,
25
- borderRadius: 4,
26
- backgroundColor: o.colors.secondary.blue.light,
27
- opacity: 1
28
- },
29
- rail: {
30
- height: 4,
31
- borderRadius: 4,
32
- backgroundColor: o.colors.neutral.grey.dark,
33
- opacity: 1
16
+ exit: {
17
+ opacity: 0,
18
+ y: 20,
19
+ scale: 0.95,
20
+ transition: {
21
+ duration: 0.2,
22
+ ease: "easeIn"
23
+ }
34
24
  }
35
- })(e);
25
+ };
36
26
  export {
37
- l as MUISlider
27
+ a as notificationVariants
38
28
  };
package/dist/index116.cjs CHANGED
@@ -1,7 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("styled-components"),e=require("@veeqo/ui"),a=t=>t&&t.__esModule?t:{default:t},i=a(o),s=i.default(e.BaseContainer)`
2
- padding: ${e.theme.sizes.sm};
3
- // This calculation limits the height to a max of 100% of the viewport and uses offset as the position of the CTA button
4
- // with an additional sizes.base offset at the bottom.
5
- max-height: calc(100vh ${({offset:t})=>t&&`- ${t}px`} - ${e.theme.sizes.base});
6
- overflow-y: auto;
7
- `;exports.AdaptiveStyledContainer=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@veeqo/ui"),o=require("@material-ui/core/styles"),t=require("@material-ui/core/Slider"),l=e=>e&&e.__esModule?e:{default:e},i=l(t),a=o.withStyles({root:{color:r.theme.colors.secondary.blue.base,height:4},thumb:{height:20,width:20,backgroundColor:"#fff",border:"3px solid currentColor",marginTop:-8,marginLeft:-10,"&:focus, &:hover, &$active":{boxShadow:"inherit"}},valueLabel:{left:"calc(-50% - 1px)"},track:{height:4,borderRadius:4,backgroundColor:r.theme.colors.secondary.blue.light,opacity:1},rail:{height:4,borderRadius:4,backgroundColor:r.theme.colors.neutral.grey.dark,opacity:1}})(i.default);exports.MUISlider=a;
package/dist/index116.js CHANGED
@@ -1,12 +1,38 @@
1
- import o from "styled-components";
2
- import { theme as e, BaseContainer as i } from "@veeqo/ui";
3
- const h = o(i)`
4
- padding: ${e.sizes.sm};
5
- // This calculation limits the height to a max of 100% of the viewport and uses offset as the position of the CTA button
6
- // with an additional sizes.base offset at the bottom.
7
- max-height: calc(100vh ${({ offset: t }) => t && `- ${t}px`} - ${e.sizes.base});
8
- overflow-y: auto;
9
- `;
1
+ import { theme as o } from "@veeqo/ui";
2
+ import { withStyles as r } from "@material-ui/core/styles";
3
+ import e from "@material-ui/core/Slider";
4
+ const l = r({
5
+ root: {
6
+ color: o.colors.secondary.blue.base,
7
+ height: 4
8
+ },
9
+ thumb: {
10
+ height: 20,
11
+ width: 20,
12
+ backgroundColor: "#fff",
13
+ border: "3px solid currentColor",
14
+ marginTop: -8,
15
+ marginLeft: -10,
16
+ "&:focus, &:hover, &$active": {
17
+ boxShadow: "inherit"
18
+ }
19
+ },
20
+ valueLabel: {
21
+ left: "calc(-50% - 1px)"
22
+ },
23
+ track: {
24
+ height: 4,
25
+ borderRadius: 4,
26
+ backgroundColor: o.colors.secondary.blue.light,
27
+ opacity: 1
28
+ },
29
+ rail: {
30
+ height: 4,
31
+ borderRadius: 4,
32
+ backgroundColor: o.colors.neutral.grey.dark,
33
+ opacity: 1
34
+ }
35
+ })(e);
10
36
  export {
11
- h as AdaptiveStyledContainer
37
+ l as MUISlider
12
38
  };
package/dist/index118.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),p=require("mobx-react"),l=require("@veeqo/ui"),v=require("./index115.cjs"),y=p.observer(({data:m,editedValue:t,setEditedValue:c})=>{var b;if(!((b=m.options)!=null&&b.length))return null;const[u,x]=m.options,i=Number(u.value),a=Number(x.value),h=(s,n)=>{if(!Array.isArray(n)||n.length!==2||!t)return;const[e,j]=n,g=t==null?void 0:t.clone();g.setGte(e),g.setLte(j),c(g)},o={gte:(t==null?void 0:t.gte)||0,lte:(t==null?void 0:t.lte)||100},M=s=>{if(!t)return;const n=t.clone(),e=Number(s);e>n.lteMax||(e>=n.gteMin&&e<=n.lteMax&&n.setGte(e),(!n.lte||e>=n.lte)&&n.setLte(n.lteMax),c(n))},f=s=>{if(!t)return;const n=t.clone(),e=Number(s);e<n.gteMin||(e>=n.gteMin&&e<=n.lteMax&&n.setLte(e),(!n.gte||e<=n.gte)&&n.setGte(n.gteMin),c(n))},S=[o.gte,o.lte];return r.jsxs(l.Stack,{spacing:"xs",alignX:"stretch",children:[r.jsxs(l.Stack,{direction:"horizontal",children:[r.jsx(l.TextField,{label:u.label,type:"number",min:i,max:a,value:o.gte.toString(),onChange:M}),r.jsx(l.TextField,{label:x.label,type:"number",min:i,max:a,value:o.lte.toString(),onChange:f})]}),r.jsx(v.MUISlider,{value:S,onChange:h,min:i,max:a,valueLabelDisplay:"auto"})]})});exports.FilterNumberRangeFilter=y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),p=require("mobx-react"),l=require("@veeqo/ui"),v=require("./index116.cjs"),y=p.observer(({data:m,editedValue:t,setEditedValue:c})=>{var b;if(!((b=m.options)!=null&&b.length))return null;const[u,x]=m.options,i=Number(u.value),a=Number(x.value),h=(s,n)=>{if(!Array.isArray(n)||n.length!==2||!t)return;const[e,j]=n,g=t==null?void 0:t.clone();g.setGte(e),g.setLte(j),c(g)},o={gte:(t==null?void 0:t.gte)||0,lte:(t==null?void 0:t.lte)||100},M=s=>{if(!t)return;const n=t.clone(),e=Number(s);e>n.lteMax||(e>=n.gteMin&&e<=n.lteMax&&n.setGte(e),(!n.lte||e>=n.lte)&&n.setLte(n.lteMax),c(n))},f=s=>{if(!t)return;const n=t.clone(),e=Number(s);e<n.gteMin||(e>=n.gteMin&&e<=n.lteMax&&n.setLte(e),(!n.gte||e<=n.gte)&&n.setGte(n.gteMin),c(n))},S=[o.gte,o.lte];return r.jsxs(l.Stack,{spacing:"xs",alignX:"stretch",children:[r.jsxs(l.Stack,{direction:"horizontal",children:[r.jsx(l.TextField,{label:u.label,type:"number",min:i,max:a,value:o.gte.toString(),onChange:M}),r.jsx(l.TextField,{label:x.label,type:"number",min:i,max:a,value:o.lte.toString(),onChange:f})]}),r.jsx(v.MUISlider,{value:S,onChange:h,min:i,max:a,valueLabelDisplay:"auto"})]})});exports.FilterNumberRangeFilter=y;
package/dist/index118.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsxs as b, jsx as a } from "react/jsx-runtime";
2
2
  import { observer as N } from "mobx-react";
3
3
  import { Stack as h, TextField as u } from "@veeqo/ui";
4
- import { MUISlider as L } from "./index115.js";
4
+ import { MUISlider as L } from "./index116.js";
5
5
  const j = N(
6
6
  ({ data: g, editedValue: t, setEditedValue: l }) => {
7
7
  var f;
package/dist/index119.cjs CHANGED
@@ -1 +1,7 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),p=require("react"),d=require("mobx-react"),t=require("@veeqo/ui"),m=require("swr/immutable"),x=require("./index75.cjs"),y=require("./index76.cjs"),F=require("./index49.cjs"),O=e=>e&&e.__esModule?e:{default:e},A=O(m),S=d.observer(({field:e,editedValue:o,setEditedValue:a})=>{var c,i;const l=p.useMemo(()=>{var r;return y.getFetcherFunction({fetcherName:(r=e.fetchAsyncFilterOptions)==null?void 0:r.fetcher})},[(c=e.fetchAsyncFilterOptions)==null?void 0:c.fetcher]),{isLoading:u,isValidating:h,data:g,error:b}=A.default((i=e.fetchAsyncFilterOptions)==null?void 0:i.URL,l,F.SWR_HOOK_OPTIONS),n=u||h,f=x.getAsyncOptions({data:g,config:e.fetchAsyncFilterOptions});return s.jsxs(t.Stack,{spacing:"xs",alignX:"stretch",children:[s.jsx(t.ChoiceList,{allowMultiple:!0,title:e.label,options:f,selected:o,onChange:r=>a(r)}),n&&s.jsx(t.Skeleton,{width:"200px",height:t.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!n&&b&&s.jsxs(t.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.ActiveAsyncCheckboxFilter=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("styled-components"),e=require("@veeqo/ui"),a=t=>t&&t.__esModule?t:{default:t},i=a(o),s=i.default(e.BaseContainer)`
2
+ padding: ${e.theme.sizes.sm};
3
+ // This calculation limits the height to a max of 100% of the viewport and uses offset as the position of the CTA button
4
+ // with an additional sizes.base offset at the bottom.
5
+ max-height: calc(100vh ${({offset:t})=>t&&`- ${t}px`} - ${e.theme.sizes.base});
6
+ overflow-y: auto;
7
+ `;exports.AdaptiveStyledContainer=s;
package/dist/index119.js CHANGED
@@ -1,49 +1,12 @@
1
- import { jsxs as s, jsx as n } from "react/jsx-runtime";
2
- import { useMemo as u } from "react";
3
- import { observer as O } from "mobx-react";
4
- import { Stack as b, ChoiceList as F, Skeleton as x, theme as y, Text as A } from "@veeqo/ui";
5
- import S from "swr/immutable";
6
- import { getAsyncOptions as d } from "./index75.js";
7
- import { getFetcherFunction as L } from "./index76.js";
8
- import { SWR_HOOK_OPTIONS as k } from "./index49.js";
9
- const T = O(
10
- ({ field: t, editedValue: c, setEditedValue: a }) => {
11
- var o, i;
12
- const l = u(() => {
13
- var e;
14
- return L({ fetcherName: (e = t.fetchAsyncFilterOptions) == null ? void 0 : e.fetcher });
15
- }, [(o = t.fetchAsyncFilterOptions) == null ? void 0 : o.fetcher]), { isLoading: m, isValidating: h, data: p, error: f } = S(
16
- (i = t.fetchAsyncFilterOptions) == null ? void 0 : i.URL,
17
- l,
18
- k
19
- ), r = m || h, g = d({ data: p, config: t.fetchAsyncFilterOptions });
20
- return /* @__PURE__ */ s(b, { spacing: "xs", alignX: "stretch", children: [
21
- /* @__PURE__ */ n(
22
- F,
23
- {
24
- allowMultiple: !0,
25
- title: t.label,
26
- options: g,
27
- selected: c,
28
- onChange: (e) => a(e)
29
- }
30
- ),
31
- r && /* @__PURE__ */ n(
32
- x,
33
- {
34
- width: "200px",
35
- height: y.sizes[5],
36
- "aria-busy": !0,
37
- "aria-label": `Loading ${t.label} filters`
38
- }
39
- ),
40
- !r && f && /* @__PURE__ */ s(A, { variant: "errorSmall", children: [
41
- "Error: failed to load filter for ",
42
- t.label
43
- ] })
44
- ] });
45
- }
46
- );
1
+ import o from "styled-components";
2
+ import { theme as e, BaseContainer as i } from "@veeqo/ui";
3
+ const h = o(i)`
4
+ padding: ${e.sizes.sm};
5
+ // This calculation limits the height to a max of 100% of the viewport and uses offset as the position of the CTA button
6
+ // with an additional sizes.base offset at the bottom.
7
+ max-height: calc(100vh ${({ offset: t }) => t && `- ${t}px`} - ${e.sizes.base});
8
+ overflow-y: auto;
9
+ `;
47
10
  export {
48
- T as ActiveAsyncCheckboxFilter
11
+ h as AdaptiveStyledContainer
49
12
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),p=require("react"),d=require("mobx-react"),t=require("@veeqo/ui"),m=require("swr/immutable"),x=require("./index76.cjs"),y=require("./index77.cjs"),F=require("./index50.cjs"),O=e=>e&&e.__esModule?e:{default:e},A=O(m),S=d.observer(({field:e,editedValue:o,setEditedValue:a})=>{var c,i;const l=p.useMemo(()=>{var r;return y.getFetcherFunction({fetcherName:(r=e.fetchAsyncFilterOptions)==null?void 0:r.fetcher})},[(c=e.fetchAsyncFilterOptions)==null?void 0:c.fetcher]),{isLoading:u,isValidating:h,data:g,error:b}=A.default((i=e.fetchAsyncFilterOptions)==null?void 0:i.URL,l,F.SWR_HOOK_OPTIONS),n=u||h,f=x.getAsyncOptions({data:g,config:e.fetchAsyncFilterOptions});return s.jsxs(t.Stack,{spacing:"xs",alignX:"stretch",children:[s.jsx(t.ChoiceList,{allowMultiple:!0,title:e.label,options:f,selected:o,onChange:r=>a(r)}),n&&s.jsx(t.Skeleton,{width:"200px",height:t.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!n&&b&&s.jsxs(t.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.ActiveAsyncCheckboxFilter=S;
@@ -0,0 +1,49 @@
1
+ import { jsxs as s, jsx as n } from "react/jsx-runtime";
2
+ import { useMemo as u } from "react";
3
+ import { observer as O } from "mobx-react";
4
+ import { Stack as b, ChoiceList as F, Skeleton as x, theme as y, Text as A } from "@veeqo/ui";
5
+ import S from "swr/immutable";
6
+ import { getAsyncOptions as d } from "./index76.js";
7
+ import { getFetcherFunction as L } from "./index77.js";
8
+ import { SWR_HOOK_OPTIONS as k } from "./index50.js";
9
+ const T = O(
10
+ ({ field: t, editedValue: c, setEditedValue: a }) => {
11
+ var o, i;
12
+ const l = u(() => {
13
+ var e;
14
+ return L({ fetcherName: (e = t.fetchAsyncFilterOptions) == null ? void 0 : e.fetcher });
15
+ }, [(o = t.fetchAsyncFilterOptions) == null ? void 0 : o.fetcher]), { isLoading: m, isValidating: h, data: p, error: f } = S(
16
+ (i = t.fetchAsyncFilterOptions) == null ? void 0 : i.URL,
17
+ l,
18
+ k
19
+ ), r = m || h, g = d({ data: p, config: t.fetchAsyncFilterOptions });
20
+ return /* @__PURE__ */ s(b, { spacing: "xs", alignX: "stretch", children: [
21
+ /* @__PURE__ */ n(
22
+ F,
23
+ {
24
+ allowMultiple: !0,
25
+ title: t.label,
26
+ options: g,
27
+ selected: c,
28
+ onChange: (e) => a(e)
29
+ }
30
+ ),
31
+ r && /* @__PURE__ */ n(
32
+ x,
33
+ {
34
+ width: "200px",
35
+ height: y.sizes[5],
36
+ "aria-busy": !0,
37
+ "aria-label": `Loading ${t.label} filters`
38
+ }
39
+ ),
40
+ !r && f && /* @__PURE__ */ s(A, { variant: "errorSmall", children: [
41
+ "Error: failed to load filter for ",
42
+ t.label
43
+ ] })
44
+ ] });
45
+ }
46
+ );
47
+ export {
48
+ T as ActiveAsyncCheckboxFilter
49
+ };
package/dist/index13.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react/jsx-runtime"),_=require("mobx-react"),f=require("@veeqo/ui"),b=require("lodash/debounce"),o=require("react"),q=require("./index86.cjs"),x=require("./index8.cjs"),g=require("./index61.cjs"),h=e=>e&&e.__esModule?e:{default:e},E=h(b),F=_.observer(({onChange:e,capture:R,...c})=>{const{SEARCH_FILTER_ID:s,FILTERS_DEBOUNCE_INTERVAL_MS:i}=x.useBusinessLogic(),{Filters:{setFilter:r,filters:n}}=g.useStores(),[a,l]=o.useState(n.get(s)||""),d=o.useCallback(E.default(t=>{r(s,t)},i),[r,s]),S=t=>{l(t),q.isTextFilterValid(t)&&d(t),e&&e(t)};return u.jsx("div",{style:{flexGrow:1},children:u.jsx(f.Search,{value:a,onChange:S,...c})})});exports.SearchBar=F;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react/jsx-runtime"),_=require("mobx-react"),f=require("@veeqo/ui"),b=require("lodash/debounce"),o=require("react"),q=require("./index90.cjs"),x=require("./index8.cjs"),g=require("./index62.cjs"),h=e=>e&&e.__esModule?e:{default:e},E=h(b),F=_.observer(({onChange:e,capture:R,...c})=>{const{SEARCH_FILTER_ID:s,FILTERS_DEBOUNCE_INTERVAL_MS:i}=x.useBusinessLogic(),{Filters:{setFilter:r,filters:n}}=g.useStores(),[a,l]=o.useState(n.get(s)||""),d=o.useCallback(E.default(t=>{r(s,t)},i),[r,s]),S=t=>{l(t),q.isTextFilterValid(t)&&d(t),e&&e(t)};return u.jsx("div",{style:{flexGrow:1},children:u.jsx(f.Search,{value:a,onChange:S,...c})})});exports.SearchBar=F;
package/dist/index13.js CHANGED
@@ -3,9 +3,9 @@ import { observer as f } from "mobx-react";
3
3
  import { Search as u } from "@veeqo/ui";
4
4
  import p from "lodash/debounce";
5
5
  import { useState as S, useCallback as d } from "react";
6
- import { isTextFilterValid as h } from "./index86.js";
6
+ import { isTextFilterValid as h } from "./index90.js";
7
7
  import { useBusinessLogic as E } from "./index8.js";
8
- import { useStores as C } from "./index61.js";
8
+ import { useStores as C } from "./index62.js";
9
9
  const v = f(({ onChange: o, capture: F, ...s }) => {
10
10
  const { SEARCH_FILTER_ID: r, FILTERS_DEBOUNCE_INTERVAL_MS: n } = E(), {
11
11
  Filters: { setFilter: t, filters: m }
package/dist/index14.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),g=require("mobx-react"),s=require("@veeqo/ui"),h=require("react"),d=require("./index8.cjs"),P=require("./index61.cjs"),S=g.observer(({totalPagesCount:a})=>{const{PAGE_SIZE_OPTIONS:c}=d.useBusinessLogic(),{Filters:{setCurrentPage:t,currentPage:o,pageSize:r,setPageSize:i}}=P.useStores(),u=e=>{t(e)},l=h.useCallback(e=>{r!==e&&(t(1),i(e))},[r,i]);return n.jsxs(s.Stack,{direction:"horizontal",children:[n.jsx(s.Pagination,{currentPage:o,totalPagesCount:a,handleChangePage:u}),n.jsx(s.ActionMenu,{menuLabel:"items per page",ctaProps:{children:`${r} / page`,style:{marginLeft:s.theme.sizes.xs}},children:c.map(e=>n.jsxs(s.ActionMenu.Item,{onAction:()=>l(e),children:[e," / page"]},e))})]})});exports.TableControls=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),g=require("mobx-react"),s=require("@veeqo/ui"),h=require("react"),d=require("./index8.cjs"),P=require("./index62.cjs"),S=g.observer(({totalPagesCount:a})=>{const{PAGE_SIZE_OPTIONS:c}=d.useBusinessLogic(),{Filters:{setCurrentPage:t,currentPage:o,pageSize:r,setPageSize:i}}=P.useStores(),u=e=>{t(e)},l=h.useCallback(e=>{r!==e&&(t(1),i(e))},[r,i]);return n.jsxs(s.Stack,{direction:"horizontal",children:[n.jsx(s.Pagination,{currentPage:o,totalPagesCount:a,handleChangePage:u}),n.jsx(s.ActionMenu,{menuLabel:"items per page",ctaProps:{children:`${r} / page`,style:{marginLeft:s.theme.sizes.xs}},children:c.map(e=>n.jsxs(s.ActionMenu.Item,{onAction:()=>l(e),children:[e," / page"]},e))})]})});exports.TableControls=S;
package/dist/index14.js CHANGED
@@ -3,7 +3,7 @@ import { observer as h } from "mobx-react";
3
3
  import { Stack as p, Pagination as u, ActionMenu as o, theme as P } from "@veeqo/ui";
4
4
  import { useCallback as d } from "react";
5
5
  import { useBusinessLogic as f } from "./index8.js";
6
- import { useStores as S } from "./index61.js";
6
+ import { useStores as S } from "./index62.js";
7
7
  const L = h(({ totalPagesCount: i }) => {
8
8
  const { PAGE_SIZE_OPTIONS: m } = f(), {
9
9
  Filters: { setCurrentPage: t, currentPage: c, pageSize: r, setPageSize: n }
package/dist/index15.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),i=require("@veeqo/ui"),n=require("mobx-react"),u=require("react"),a=require("./index61.cjs"),c=n.observer(()=>{const{Notifications:{toasts:t,removeByKey:r}}=a.useStores();return u.useEffect(()=>{const s=t.filter(e=>!e.persistent).map(e=>setTimeout(()=>{r(e.key)},2e3));return()=>{s.forEach(e=>clearTimeout(e))}},[t,r]),o.jsx(i.ToastsLayout,{max:10,minWidth:"",toasts:t,onClose:r})});exports.ToastsManager=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),i=require("@veeqo/ui"),n=require("mobx-react"),u=require("react"),a=require("./index62.cjs"),c=n.observer(()=>{const{Notifications:{toasts:t,removeByKey:r}}=a.useStores();return u.useEffect(()=>{const s=t.filter(e=>!e.persistent).map(e=>setTimeout(()=>{r(e.key)},2e3));return()=>{s.forEach(e=>clearTimeout(e))}},[t,r]),o.jsx(i.ToastsLayout,{max:10,minWidth:"",toasts:t,onClose:r})});exports.ToastsManager=c;
package/dist/index15.js CHANGED
@@ -2,7 +2,7 @@ import { jsx as s } from "react/jsx-runtime";
2
2
  import { ToastsLayout as m } from "@veeqo/ui";
3
3
  import { observer as i } from "mobx-react";
4
4
  import { useEffect as a } from "react";
5
- import { useStores as n } from "./index61.js";
5
+ import { useStores as n } from "./index62.js";
6
6
  const T = i(() => {
7
7
  const { Notifications: { toasts: o, removeByKey: r } } = n();
8
8
  return a(() => {
package/dist/index16.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),F=require("mobx-react"),s=require("@veeqo/ui"),r=require("./index49.cjs"),A=require("./index8.cjs"),g=require("./index61.cjs"),h=require("./index19.cjs"),v=require("./index22.cjs"),T=require("./index21.cjs"),f=require("./index20.cjs"),x=F.observer(()=>{const{FIELDS_MAP:c}=A.useBusinessLogic(),{Filters:{hasActiveFilters:a,activeFilterKeysList:l,clearAllFilters:n}}=g.useStores();if(!a)return null;const o=Array.from(c).filter(([e])=>l.includes(e));return t.jsxs(s.Stack,{direction:"horizontal",alignY:"center",style:{flexWrap:"wrap",rowGap:s.theme.sizes.sm},children:[t.jsx(s.Button,{variant:"link",onClick:()=>n(),children:"Clear all"}),o.map(([e,i])=>{const u=()=>{switch(i.filterType){case r.FilterChoiceValue.CHECKBOX:return t.jsx(f.ActiveFilterArrayTag,{filterData:i},e);case r.FilterChoiceValue.DATE_RANGE:return t.jsx(T.ActiveFilterDateRangeTag,{filterData:i},e);case r.FilterChoiceValue.NUMBER_RANGE:return t.jsx(v.ActiveFilterNumberRangeTag,{filterData:i},e);case r.FilterChoiceValue.TEXT:case r.FilterChoiceValue.NUMBER:case r.FilterChoiceValue.RADIO:return t.jsx(h.ActiveFilterTag,{filterData:i},e);default:return t.jsx(s.Alert,{size:"xs",variant:"error",title:`Unsupport filter "${e}"`},e)}};return t.jsx("div",{children:u()})})]})});exports.ActiveFilters=x;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),F=require("mobx-react"),s=require("@veeqo/ui"),r=require("./index50.cjs"),A=require("./index8.cjs"),g=require("./index62.cjs"),h=require("./index19.cjs"),v=require("./index22.cjs"),T=require("./index21.cjs"),f=require("./index20.cjs"),x=F.observer(()=>{const{FIELDS_MAP:c}=A.useBusinessLogic(),{Filters:{hasActiveFilters:a,activeFilterKeysList:l,clearAllFilters:n}}=g.useStores();if(!a)return null;const o=Array.from(c).filter(([e])=>l.includes(e));return t.jsxs(s.Stack,{direction:"horizontal",alignY:"center",style:{flexWrap:"wrap",rowGap:s.theme.sizes.sm},children:[t.jsx(s.Button,{variant:"link",onClick:()=>n(),children:"Clear all"}),o.map(([e,i])=>{const u=()=>{switch(i.filterType){case r.FilterChoiceValue.CHECKBOX:return t.jsx(f.ActiveFilterArrayTag,{filterData:i},e);case r.FilterChoiceValue.DATE_RANGE:return t.jsx(T.ActiveFilterDateRangeTag,{filterData:i},e);case r.FilterChoiceValue.NUMBER_RANGE:return t.jsx(v.ActiveFilterNumberRangeTag,{filterData:i},e);case r.FilterChoiceValue.TEXT:case r.FilterChoiceValue.NUMBER:case r.FilterChoiceValue.RADIO:return t.jsx(h.ActiveFilterTag,{filterData:i},e);default:return t.jsx(s.Alert,{size:"xs",variant:"error",title:`Unsupport filter "${e}"`},e)}};return t.jsx("div",{children:u()})})]})});exports.ActiveFilters=x;
package/dist/index16.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { jsxs as c, jsx as t } from "react/jsx-runtime";
2
2
  import { observer as m } from "mobx-react";
3
3
  import { Stack as f, theme as p, Button as A, Alert as u } from "@veeqo/ui";
4
- import { FilterChoiceValue as e } from "./index49.js";
4
+ import { FilterChoiceValue as e } from "./index50.js";
5
5
  import { useBusinessLogic as F } from "./index8.js";
6
- import { useStores as h } from "./index61.js";
6
+ import { useStores as h } from "./index62.js";
7
7
  import { ActiveFilterTag as d } from "./index19.js";
8
8
  import { ActiveFilterNumberRangeTag as g } from "./index22.js";
9
9
  import { ActiveFilterDateRangeTag as v } from "./index21.js";
package/dist/index17.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),l=require("mobx-react"),s=require("@veeqo/ui"),c=require("./index49.cjs"),u=require("./index119.cjs"),h=l.observer(({data:e,editedValue:r,setEditedValue:t})=>{var i;switch(e.filterType){case c.FilterChoiceValue.CHECKBOX:return e.fetchAsyncFilterOptions?o.jsx(u.ActiveAsyncCheckboxFilter,{field:e,setEditedValue:t,editedValue:r}):o.jsx(s.ChoiceList,{allowMultiple:!0,title:e.label,options:(i=e.options)!=null&&i.length?e.options:[],selected:r,onChange:n=>t(n)});default:return null}});exports.FilterArrayField=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),l=require("mobx-react"),s=require("@veeqo/ui"),c=require("./index50.cjs"),u=require("./index120.cjs"),h=l.observer(({data:e,editedValue:r,setEditedValue:t})=>{var i;switch(e.filterType){case c.FilterChoiceValue.CHECKBOX:return e.fetchAsyncFilterOptions?o.jsx(u.ActiveAsyncCheckboxFilter,{field:e,setEditedValue:t,editedValue:r}):o.jsx(s.ChoiceList,{allowMultiple:!0,title:e.label,options:(i=e.options)!=null&&i.length?e.options:[],selected:r,onChange:n=>t(n)});default:return null}});exports.FilterArrayField=h;
package/dist/index17.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
2
  import { observer as n } from "mobx-react";
3
3
  import { ChoiceList as p } from "@veeqo/ui";
4
- import { FilterChoiceValue as s } from "./index49.js";
5
- import { ActiveAsyncCheckboxFilter as c } from "./index119.js";
4
+ import { FilterChoiceValue as s } from "./index50.js";
5
+ import { ActiveAsyncCheckboxFilter as c } from "./index120.js";
6
6
  const F = n(
7
7
  ({ data: r, editedValue: e, setEditedValue: o }) => {
8
8
  var i;
package/dist/index18.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),F=require("mobx-react"),s=require("@veeqo/ui"),i=require("./index49.cjs"),h=require("./index23.cjs"),b=F.observer(({data:e,editedValue:r,setEditedValue:t,error:u})=>{var n;let l;switch(e.filterType){case i.FilterChoiceValue.NUMBER:l="number";break;case i.FilterChoiceValue.TEXT:l="text";break}switch(e.filterType){case i.FilterChoiceValue.TEXT:case i.FilterChoiceValue.NUMBER:return o.jsx(s.TextField,{label:e.label,type:l,value:r,onChange:c=>t(c),error:u});case i.FilterChoiceValue.RADIO:return e.fetchAsyncFilterOptions?o.jsx(h.ActiveAsyncRadioFilter,{field:e,setEditedValue:t,editedValue:r}):o.jsx(s.ChoiceList,{title:e.label,options:(n=e.options)!=null&&n.length?e.options:[],selected:[r],onChange:c=>t(`${c[0]}`)});default:return null}});exports.FilterField=b;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),F=require("mobx-react"),s=require("@veeqo/ui"),i=require("./index50.cjs"),h=require("./index23.cjs"),b=F.observer(({data:e,editedValue:r,setEditedValue:t,error:u})=>{var n;let l;switch(e.filterType){case i.FilterChoiceValue.NUMBER:l="number";break;case i.FilterChoiceValue.TEXT:l="text";break}switch(e.filterType){case i.FilterChoiceValue.TEXT:case i.FilterChoiceValue.NUMBER:return o.jsx(s.TextField,{label:e.label,type:l,value:r,onChange:c=>t(c),error:u});case i.FilterChoiceValue.RADIO:return e.fetchAsyncFilterOptions?o.jsx(h.ActiveAsyncRadioFilter,{field:e,setEditedValue:t,editedValue:r}):o.jsx(s.ChoiceList,{title:e.label,options:(n=e.options)!=null&&n.length?e.options:[],selected:[r],onChange:c=>t(`${c[0]}`)});default:return null}});exports.FilterField=b;
package/dist/index18.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
2
  import { observer as p } from "mobx-react";
3
3
  import { ChoiceList as f, TextField as m } from "@veeqo/ui";
4
- import { FilterChoiceValue as r } from "./index49.js";
4
+ import { FilterChoiceValue as r } from "./index50.js";
5
5
  import { ActiveAsyncRadioFilter as h } from "./index23.js";
6
6
  const x = p(({ data: e, editedValue: o, setEditedValue: i, error: c }) => {
7
7
  var s;
package/dist/index19.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),s=require("react"),v=require("mobx-react"),x=require("@veeqo/ui"),T=require("./index86.cjs"),l=require("./index49.cjs"),V=require("./index117.cjs"),g=require("./index61.cjs"),j=require("./index59.cjs"),R=require("./index24.cjs"),y=require("./index18.cjs"),C=require("./index25.cjs"),f=v.observer(({filterData:e})=>{const{Filters:{filters:o,clearFilter:F,setFilter:a}}=g.useStores(),r=o.get(e.id),{filterLabel:q}=j.useFilterLabel({filterData:e}),[i,c]=s.useState(r||""),[n,b]=s.useState("");s.useEffect(()=>{i!==r&&c(r||"")},[e.id,r,o]);const A=()=>{F(e.id)},E=()=>{n||a(e.id,i)},S=u=>{let d="";(e.filterType===l.FilterChoiceValue.TEXT||e.filterType===l.FilterChoiceValue.NUMBER)&&(d=T.isTextFilterValid(String(u))?"":l.MIN_SEARCH_ERROR_MESSAGE),c(u),b(d)};return t.jsx(x.FilterTag,{shouldCloseOnClickAway:!0,header:t.jsx(C.ActiveFilterHeader,{filterLabel:e.label,icon:e.icon}),label:e.label,text:q||"Loading...",content:t.jsx("div",{className:V.default.fieldContainer,children:t.jsx(y.FilterField,{data:e,editedValue:i,setEditedValue:S,error:n})}),footer:t.jsx(R.ActiveFilterFooter,{clearActiveFilter:A,applyActiveFilter:E})})});exports.ActiveFilterTag=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),s=require("react"),v=require("mobx-react"),x=require("@veeqo/ui"),T=require("./index90.cjs"),l=require("./index50.cjs"),V=require("./index117.cjs"),g=require("./index62.cjs"),j=require("./index60.cjs"),R=require("./index24.cjs"),y=require("./index18.cjs"),C=require("./index25.cjs"),f=v.observer(({filterData:e})=>{const{Filters:{filters:o,clearFilter:F,setFilter:a}}=g.useStores(),r=o.get(e.id),{filterLabel:q}=j.useFilterLabel({filterData:e}),[i,c]=s.useState(r||""),[n,b]=s.useState("");s.useEffect(()=>{i!==r&&c(r||"")},[e.id,r,o]);const A=()=>{F(e.id)},E=()=>{n||a(e.id,i)},S=u=>{let d="";(e.filterType===l.FilterChoiceValue.TEXT||e.filterType===l.FilterChoiceValue.NUMBER)&&(d=T.isTextFilterValid(String(u))?"":l.MIN_SEARCH_ERROR_MESSAGE),c(u),b(d)};return t.jsx(x.FilterTag,{shouldCloseOnClickAway:!0,header:t.jsx(C.ActiveFilterHeader,{filterLabel:e.label,icon:e.icon}),label:e.label,text:q||"Loading...",content:t.jsx("div",{className:V.default.fieldContainer,children:t.jsx(y.FilterField,{data:e,editedValue:i,setEditedValue:S,error:n})}),footer:t.jsx(R.ActiveFilterFooter,{clearActiveFilter:A,applyActiveFilter:E})})});exports.ActiveFilterTag=f;
package/dist/index19.js CHANGED
@@ -2,11 +2,11 @@ import { jsx as r } from "react/jsx-runtime";
2
2
  import { useState as n, useEffect as b } from "react";
3
3
  import { observer as S } from "mobx-react";
4
4
  import { FilterTag as T } from "@veeqo/ui";
5
- import { isTextFilterValid as V } from "./index86.js";
6
- import { FilterChoiceValue as d, MIN_SEARCH_ERROR_MESSAGE as v } from "./index49.js";
5
+ import { isTextFilterValid as V } from "./index90.js";
6
+ import { FilterChoiceValue as d, MIN_SEARCH_ERROR_MESSAGE as v } from "./index50.js";
7
7
  import g from "./index117.js";
8
- import { useStores as y } from "./index61.js";
9
- import { useFilterLabel as C } from "./index59.js";
8
+ import { useStores as y } from "./index62.js";
9
+ import { useFilterLabel as C } from "./index60.js";
10
10
  import { ActiveFilterFooter as R } from "./index24.js";
11
11
  import { FilterField as h } from "./index18.js";
12
12
  import { ActiveFilterHeader as x } from "./index25.js";
package/dist/index20.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),c=require("react"),A=require("mobx-react"),y=require("@veeqo/ui"),b=require("./index58.cjs"),v=require("./index17.cjs"),q=require("./index117.cjs"),x=require("./index61.cjs"),j=require("./index24.cjs"),g=require("./index25.cjs"),V=A.observer(({filterData:e})=>{const{Filters:{arrayFilters:s,clearArrayFilter:o,setArrayFilter:u}}=x.useStores(),t=s.get(e.id),[i,l]=c.useState(t||[]);c.useEffect(()=>{i!==t&&l(t||[])},[e.id,t,s]);const n=()=>{o(e.id)},a=()=>{u(e.id,i)},{filterLabel:d}=b.useFilterArrayLabel({filterData:e});return r.jsx(y.FilterTag,{shouldCloseOnClickAway:!0,header:r.jsx(g.ActiveFilterHeader,{filterLabel:e.label,icon:e.icon}),label:e.label,text:d||"",content:r.jsx("div",{className:q.default.fieldContainer,children:r.jsx(v.FilterArrayField,{data:e,editedValue:i||[],setEditedValue:F=>l(F)})}),footer:r.jsx(j.ActiveFilterFooter,{clearActiveFilter:n,applyActiveFilter:a})})});exports.ActiveFilterArrayTag=V;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),c=require("react"),A=require("mobx-react"),y=require("@veeqo/ui"),b=require("./index59.cjs"),v=require("./index17.cjs"),q=require("./index117.cjs"),x=require("./index62.cjs"),j=require("./index24.cjs"),g=require("./index25.cjs"),V=A.observer(({filterData:e})=>{const{Filters:{arrayFilters:s,clearArrayFilter:o,setArrayFilter:u}}=x.useStores(),t=s.get(e.id),[i,l]=c.useState(t||[]);c.useEffect(()=>{i!==t&&l(t||[])},[e.id,t,s]);const n=()=>{o(e.id)},a=()=>{u(e.id,i)},{filterLabel:d}=b.useFilterArrayLabel({filterData:e});return r.jsx(y.FilterTag,{shouldCloseOnClickAway:!0,header:r.jsx(g.ActiveFilterHeader,{filterLabel:e.label,icon:e.icon}),label:e.label,text:d||"",content:r.jsx("div",{className:q.default.fieldContainer,children:r.jsx(v.FilterArrayField,{data:e,editedValue:i||[],setEditedValue:F=>l(F)})}),footer:r.jsx(j.ActiveFilterFooter,{clearActiveFilter:n,applyActiveFilter:a})})});exports.ActiveFilterArrayTag=V;
package/dist/index20.js CHANGED
@@ -2,10 +2,10 @@ import { jsx as r } from "react/jsx-runtime";
2
2
  import { useState as F, useEffect as p } from "react";
3
3
  import { observer as u } from "mobx-react";
4
4
  import { FilterTag as A } from "@veeqo/ui";
5
- import { useFilterArrayLabel as f } from "./index58.js";
5
+ import { useFilterArrayLabel as f } from "./index59.js";
6
6
  import { FilterArrayField as y } from "./index17.js";
7
7
  import b from "./index117.js";
8
- import { useStores as v } from "./index61.js";
8
+ import { useStores as v } from "./index62.js";
9
9
  import { ActiveFilterFooter as V } from "./index24.js";
10
10
  import { ActiveFilterHeader as g } from "./index25.js";
11
11
  const H = u(({ filterData: e }) => {
package/dist/index21.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),o=require("react"),f=require("mobx-react"),i=require("@veeqo/ui"),a=require("./index70.cjs"),q=require("./index8.cjs"),E=require("./index61.cjs"),S=require("./index24.cjs"),h=require("./index25.cjs"),x=f.observer(({filterData:s})=>{const{DEFAULT_DATE_PRESET:g,DEFAULT_DATE_RANGE:F}=q.useBusinessLogic(),{Filters:{dateRangeFilters:c,clearRangeFilter:u,setRangeFilter:R}}=E.useStores(),t=c.get(s.id),[e,l]=o.useState(c.get(s.id)),T=()=>{const r=new a.RangeFilter;return r.setFilterType(t==null?void 0:t.filterType),l(r),r};o.useEffect(()=>{if(!t)return;const r=new a.RangeFilter;r.setFilterType(t.filterType),t.gte&&t.lte&&r.setDates(t.gte,t.lte),l(r)},[t]);const d=()=>{u(s.id)},A=()=>{t&&(e!=null&&e.filterType)&&R({dates:{start:e.gte,end:e.lte},key:e.filterType,range:t})},y=(e==null?void 0:e.filterSelection)||g,b=r=>{r&&(e||T(),e==null||e.setFilterType(r.value))},p=r=>{!r||!e||e.setDates(r.start,r.end)},v=e?e.selectedRange:F;return n.jsx(i.FilterTag,{shouldCloseOnClickAway:!0,header:n.jsx(h.ActiveFilterHeader,{filterLabel:s.label,icon:s.icon}),label:s.label,text:(t==null?void 0:t.filterLabel)||"",content:n.jsx(i.BaseContainer,{style:{padding:i.theme.sizes.md},children:n.jsx(i.DateRangePicker,{"aria-label":`date range for ${s.label}`,selectedPreset:y,setSelectedPreset:b,selectedRange:v,setSelectedRange:p})}),footer:n.jsx(S.ActiveFilterFooter,{clearActiveFilter:d,applyActiveFilter:A})})});exports.ActiveFilterDateRangeTag=x;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),o=require("react"),f=require("mobx-react"),i=require("@veeqo/ui"),a=require("./index71.cjs"),q=require("./index8.cjs"),E=require("./index62.cjs"),S=require("./index24.cjs"),h=require("./index25.cjs"),x=f.observer(({filterData:s})=>{const{DEFAULT_DATE_PRESET:g,DEFAULT_DATE_RANGE:F}=q.useBusinessLogic(),{Filters:{dateRangeFilters:c,clearRangeFilter:u,setRangeFilter:R}}=E.useStores(),t=c.get(s.id),[e,l]=o.useState(c.get(s.id)),T=()=>{const r=new a.RangeFilter;return r.setFilterType(t==null?void 0:t.filterType),l(r),r};o.useEffect(()=>{if(!t)return;const r=new a.RangeFilter;r.setFilterType(t.filterType),t.gte&&t.lte&&r.setDates(t.gte,t.lte),l(r)},[t]);const d=()=>{u(s.id)},A=()=>{t&&(e!=null&&e.filterType)&&R({dates:{start:e.gte,end:e.lte},key:e.filterType,range:t})},y=(e==null?void 0:e.filterSelection)||g,b=r=>{r&&(e||T(),e==null||e.setFilterType(r.value))},p=r=>{!r||!e||e.setDates(r.start,r.end)},v=e?e.selectedRange:F;return n.jsx(i.FilterTag,{shouldCloseOnClickAway:!0,header:n.jsx(h.ActiveFilterHeader,{filterLabel:s.label,icon:s.icon}),label:s.label,text:(t==null?void 0:t.filterLabel)||"",content:n.jsx(i.BaseContainer,{style:{padding:i.theme.sizes.md},children:n.jsx(i.DateRangePicker,{"aria-label":`date range for ${s.label}`,selectedPreset:y,setSelectedPreset:b,selectedRange:v,setSelectedRange:p})}),footer:n.jsx(S.ActiveFilterFooter,{clearActiveFilter:d,applyActiveFilter:A})})});exports.ActiveFilterDateRangeTag=x;
package/dist/index21.js CHANGED
@@ -2,9 +2,9 @@ import { jsx as i } from "react/jsx-runtime";
2
2
  import { useState as A, useEffect as E } from "react";
3
3
  import { observer as b } from "mobx-react";
4
4
  import { FilterTag as h, BaseContainer as u, theme as v, DateRangePicker as P } from "@veeqo/ui";
5
- import { RangeFilter as l } from "./index70.js";
5
+ import { RangeFilter as l } from "./index71.js";
6
6
  import { useBusinessLogic as S } from "./index8.js";
7
- import { useStores as C } from "./index61.js";
7
+ import { useStores as C } from "./index62.js";
8
8
  import { ActiveFilterFooter as L } from "./index24.js";
9
9
  import { ActiveFilterHeader as w } from "./index25.js";
10
10
  const H = b(
package/dist/index22.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),s=require("react"),d=require("mobx-react"),l=require("@veeqo/ui"),m=require("./index69.cjs"),R=require("./index118.cjs"),v=require("./index61.cjs"),N=require("./index24.cjs"),q=require("./index25.cjs"),A=d.observer(({filterData:t})=>{const{Filters:{numberRangeFilters:u,clearNumberRangeFilter:a,setNumberRangeFilter:F}}=v.useStores(),e=u.get(t.id),[n,c]=s.useState(e),o=s.useCallback(()=>{const r=new m.NumberRangeFilter({filterId:t.id});return e&&(e.gte&&r.setGte(e.gte),e.lte&&r.setLte(e.lte)),r},[t.id,e]);s.useEffect(()=>{const r=o();c(r)},[o,e]);const g=()=>{a(t.id)},b=()=>{!e||!n||F({numberRange:e,lte:n.lte,gte:n.gte})};return i.jsx(l.FilterTag,{shouldCloseOnClickAway:!0,header:i.jsx(q.ActiveFilterHeader,{filterLabel:t.label,icon:t.icon}),label:t.label,text:(e==null?void 0:e.filterLabel)||"Loading...",content:i.jsx(l.BaseContainer,{style:{padding:l.theme.sizes.md},children:i.jsx(R.FilterNumberRangeFilter,{data:t,editedValue:n,setEditedValue:c})}),footer:i.jsx(N.ActiveFilterFooter,{clearActiveFilter:g,applyActiveFilter:b})})});exports.ActiveFilterNumberRangeTag=A;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),s=require("react"),d=require("mobx-react"),l=require("@veeqo/ui"),m=require("./index70.cjs"),R=require("./index118.cjs"),v=require("./index62.cjs"),N=require("./index24.cjs"),q=require("./index25.cjs"),A=d.observer(({filterData:t})=>{const{Filters:{numberRangeFilters:u,clearNumberRangeFilter:a,setNumberRangeFilter:F}}=v.useStores(),e=u.get(t.id),[n,c]=s.useState(e),o=s.useCallback(()=>{const r=new m.NumberRangeFilter({filterId:t.id});return e&&(e.gte&&r.setGte(e.gte),e.lte&&r.setLte(e.lte)),r},[t.id,e]);s.useEffect(()=>{const r=o();c(r)},[o,e]);const g=()=>{a(t.id)},b=()=>{!e||!n||F({numberRange:e,lte:n.lte,gte:n.gte})};return i.jsx(l.FilterTag,{shouldCloseOnClickAway:!0,header:i.jsx(q.ActiveFilterHeader,{filterLabel:t.label,icon:t.icon}),label:t.label,text:(e==null?void 0:e.filterLabel)||"Loading...",content:i.jsx(l.BaseContainer,{style:{padding:l.theme.sizes.md},children:i.jsx(R.FilterNumberRangeFilter,{data:t,editedValue:n,setEditedValue:c})}),footer:i.jsx(N.ActiveFilterFooter,{clearActiveFilter:g,applyActiveFilter:b})})});exports.ActiveFilterNumberRangeTag=A;
package/dist/index22.js CHANGED
@@ -2,9 +2,9 @@ import { jsx as i } from "react/jsx-runtime";
2
2
  import { useState as d, useCallback as g, useEffect as F } from "react";
3
3
  import { observer as b } from "mobx-react";
4
4
  import { FilterTag as p, BaseContainer as f, theme as R } from "@veeqo/ui";
5
- import { NumberRangeFilter as N } from "./index69.js";
5
+ import { NumberRangeFilter as N } from "./index70.js";
6
6
  import { FilterNumberRangeFilter as v } from "./index118.js";
7
- import { useStores as A } from "./index61.js";
7
+ import { useStores as A } from "./index62.js";
8
8
  import { ActiveFilterFooter as w } from "./index24.js";
9
9
  import { ActiveFilterHeader as h } from "./index25.js";
10
10
  const z = b(
package/dist/index23.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),b=require("react"),m=require("mobx-react"),t=require("@veeqo/ui"),p=require("swr/immutable"),y=require("./index75.cjs"),F=require("./index76.cjs"),O=require("./index49.cjs"),A=e=>e&&e.__esModule?e:{default:e},x=A(p),S=m.observer(({field:e,editedValue:o,setEditedValue:a})=>{var i,c;const l=b.useMemo(()=>{var r;return F.getFetcherFunction({fetcherName:(r=e.fetchAsyncFilterOptions)==null?void 0:r.fetcher})},[(i=e.fetchAsyncFilterOptions)==null?void 0:i.fetcher]),{isLoading:u,isValidating:h,data:g,error:d}=x.default((c=e.fetchAsyncFilterOptions)==null?void 0:c.URL,l,O.SWR_HOOK_OPTIONS),n=u||h,f=y.getAsyncOptions({data:g,config:e.fetchAsyncFilterOptions});return s.jsxs(t.Stack,{spacing:"xs",alignX:"stretch",children:[s.jsx(t.ChoiceList,{title:e.label,options:f,selected:[o],onChange:r=>a(`${r[0]}`)}),n&&s.jsx(t.Skeleton,{width:"200px",height:t.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!n&&d&&s.jsxs(t.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.ActiveAsyncRadioFilter=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),b=require("react"),m=require("mobx-react"),t=require("@veeqo/ui"),p=require("swr/immutable"),y=require("./index76.cjs"),F=require("./index77.cjs"),O=require("./index50.cjs"),A=e=>e&&e.__esModule?e:{default:e},x=A(p),S=m.observer(({field:e,editedValue:o,setEditedValue:a})=>{var i,c;const l=b.useMemo(()=>{var r;return F.getFetcherFunction({fetcherName:(r=e.fetchAsyncFilterOptions)==null?void 0:r.fetcher})},[(i=e.fetchAsyncFilterOptions)==null?void 0:i.fetcher]),{isLoading:u,isValidating:h,data:g,error:d}=x.default((c=e.fetchAsyncFilterOptions)==null?void 0:c.URL,l,O.SWR_HOOK_OPTIONS),n=u||h,f=y.getAsyncOptions({data:g,config:e.fetchAsyncFilterOptions});return s.jsxs(t.Stack,{spacing:"xs",alignX:"stretch",children:[s.jsx(t.ChoiceList,{title:e.label,options:f,selected:[o],onChange:r=>a(`${r[0]}`)}),n&&s.jsx(t.Skeleton,{width:"200px",height:t.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!n&&d&&s.jsxs(t.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.ActiveAsyncRadioFilter=S;
package/dist/index23.js CHANGED
@@ -3,9 +3,9 @@ import { useMemo as O } from "react";
3
3
  import { observer as u } from "mobx-react";
4
4
  import { Stack as F, ChoiceList as b, Skeleton as y, theme as A, Text as d } from "@veeqo/ui";
5
5
  import x from "swr/immutable";
6
- import { getAsyncOptions as S } from "./index75.js";
7
- import { getFetcherFunction as L } from "./index76.js";
8
- import { SWR_HOOK_OPTIONS as R } from "./index49.js";
6
+ import { getAsyncOptions as S } from "./index76.js";
7
+ import { getFetcherFunction as L } from "./index77.js";
8
+ import { SWR_HOOK_OPTIONS as R } from "./index50.js";
9
9
  const _ = u(
10
10
  ({ field: t, editedValue: c, setEditedValue: a }) => {
11
11
  var o, i;
package/dist/index26.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),i=require("react"),j=require("mobx-react"),C=require("lodash/debounce"),s=require("@veeqo/ui"),L=require("swr/immutable"),k=require("./index75.cjs"),R=require("./index76.cjs"),v=require("./index49.cjs"),T=require("./index8.cjs"),V=require("./index61.cjs"),b=e=>e&&e.__esModule?e:{default:e},E=b(C),I=b(L),M=j.observer(({field:e})=>{var d,g;const{FILTERS_DEBOUNCE_INTERVAL_MS:S}=T.useBusinessLogic(),F=i.useMemo(()=>{var t;return R.getFetcherFunction({fetcherName:(t=e.fetchAsyncFilterOptions)==null?void 0:t.fetcher})},[(d=e.fetchAsyncFilterOptions)==null?void 0:d.fetcher]),{isLoading:a,isValidating:x,data:p,error:l}=I.default((g=e.fetchAsyncFilterOptions)==null?void 0:g.URL,F,v.SWR_HOOK_OPTIONS),u=a||x,{Filters:{setArrayFilter:c,arrayFilters:y}}=V.useStores(),m=y.get(e.id)||[],[O,h]=i.useState(m),f=i.useCallback(E.default((t,n)=>{c(t,n)},S),[c]),_=t=>{const n=t.map(A=>`${A}`);h(n),f(e.id,n)},q=()=>{h([]),c(e.id,[])},o=k.getAsyncOptions({data:p,config:e.fetchAsyncFilterOptions});return o&&o.length===0&&!a&&!l?r.jsx(s.Stack,{spacing:"xs",alignX:"stretch",children:r.jsxs(s.Text,{variant:"bodySmall",children:["No options available for ",e.label]})}):r.jsxs(s.Stack,{spacing:"xs",alignX:"stretch",children:[r.jsx(s.Button,{variant:"link",onClick:q,children:"Clear"}),r.jsx(s.ChoiceList,{allowMultiple:!0,title:e.label,options:o,selected:O,onChange:t=>_(t)}),u&&r.jsx(s.Skeleton,{width:"200px",height:s.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!u&&l&&r.jsxs(s.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.AsyncCheckboxFilter=M;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),i=require("react"),j=require("mobx-react"),C=require("lodash/debounce"),s=require("@veeqo/ui"),L=require("swr/immutable"),k=require("./index76.cjs"),R=require("./index77.cjs"),v=require("./index50.cjs"),T=require("./index8.cjs"),V=require("./index62.cjs"),b=e=>e&&e.__esModule?e:{default:e},E=b(C),I=b(L),M=j.observer(({field:e})=>{var d,g;const{FILTERS_DEBOUNCE_INTERVAL_MS:S}=T.useBusinessLogic(),F=i.useMemo(()=>{var t;return R.getFetcherFunction({fetcherName:(t=e.fetchAsyncFilterOptions)==null?void 0:t.fetcher})},[(d=e.fetchAsyncFilterOptions)==null?void 0:d.fetcher]),{isLoading:a,isValidating:x,data:p,error:l}=I.default((g=e.fetchAsyncFilterOptions)==null?void 0:g.URL,F,v.SWR_HOOK_OPTIONS),u=a||x,{Filters:{setArrayFilter:c,arrayFilters:y}}=V.useStores(),m=y.get(e.id)||[],[O,h]=i.useState(m),f=i.useCallback(E.default((t,n)=>{c(t,n)},S),[c]),_=t=>{const n=t.map(A=>`${A}`);h(n),f(e.id,n)},q=()=>{h([]),c(e.id,[])},o=k.getAsyncOptions({data:p,config:e.fetchAsyncFilterOptions});return o&&o.length===0&&!a&&!l?r.jsx(s.Stack,{spacing:"xs",alignX:"stretch",children:r.jsxs(s.Text,{variant:"bodySmall",children:["No options available for ",e.label]})}):r.jsxs(s.Stack,{spacing:"xs",alignX:"stretch",children:[r.jsx(s.Button,{variant:"link",onClick:q,children:"Clear"}),r.jsx(s.ChoiceList,{allowMultiple:!0,title:e.label,options:o,selected:O,onChange:t=>_(t)}),u&&r.jsx(s.Skeleton,{width:"200px",height:s.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!u&&l&&r.jsxs(s.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.AsyncCheckboxFilter=M;
package/dist/index26.js CHANGED
@@ -4,11 +4,11 @@ import { observer as E } from "mobx-react";
4
4
  import N from "lodash/debounce";
5
5
  import { Stack as u, Text as g, Button as R, ChoiceList as _, Skeleton as I, theme as T } from "@veeqo/ui";
6
6
  import w from "swr/immutable";
7
- import { getAsyncOptions as B } from "./index75.js";
8
- import { getFetcherFunction as M } from "./index76.js";
9
- import { SWR_HOOK_OPTIONS as j } from "./index49.js";
7
+ import { getAsyncOptions as B } from "./index76.js";
8
+ import { getFetcherFunction as M } from "./index77.js";
9
+ import { SWR_HOOK_OPTIONS as j } from "./index50.js";
10
10
  import { useBusinessLogic as U } from "./index8.js";
11
- import { useStores as W } from "./index61.js";
11
+ import { useStores as W } from "./index62.js";
12
12
  const Y = E(({ field: t }) => {
13
13
  var h, p;
14
14
  const { FILTERS_DEBOUNCE_INTERVAL_MS: f } = U(), b = k(() => {
package/dist/index27.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),i=require("react"),R=require("mobx-react"),j=require("lodash/debounce"),s=require("@veeqo/ui"),A=require("swr/immutable"),L=require("./index75.cjs"),C=require("./index76.cjs"),k=require("./index49.cjs"),v=require("./index8.cjs"),T=require("./index61.cjs"),b=e=>e&&e.__esModule?e:{default:e},V=b(j),E=b(A),I=R.observer(({field:e})=>{var d,g;const{FILTERS_DEBOUNCE_INTERVAL_MS:S}=v.useBusinessLogic(),F=i.useMemo(()=>{var t;return C.getFetcherFunction({fetcherName:(t=e.fetchAsyncFilterOptions)==null?void 0:t.fetcher})},[(d=e.fetchAsyncFilterOptions)==null?void 0:d.fetcher]),{isLoading:a,isValidating:x,data:f,error:l}=E.default((g=e.fetchAsyncFilterOptions)==null?void 0:g.URL,F,k.SWR_HOOK_OPTIONS),u=a||x,{Filters:{setFilter:c,filters:p}}=T.useStores(),O=p.get(e.id),[m,h]=i.useState(O),y=i.useCallback(V.default((t,r)=>{c(t,r)},S),[c]),_=t=>{const r=`${t[0]}`;h(r),y(e.id,r)},q=()=>{h(""),c(e.id,"")},o=L.getAsyncOptions({data:f,config:e.fetchAsyncFilterOptions});return o&&o.length===0&&!a&&!l?n.jsx(s.Stack,{spacing:"xs",alignX:"stretch",children:n.jsxs(s.Text,{variant:"bodySmall",children:["No options available for ",e.label]})}):n.jsxs(s.Stack,{spacing:"xs",alignX:"stretch",children:[n.jsx(s.Button,{variant:"link",onClick:q,children:"Clear"}),n.jsx(s.ChoiceList,{title:e.label,options:o,selected:[m],onChange:t=>_(t)}),u&&n.jsx(s.Skeleton,{width:"200px",height:s.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!u&&l&&n.jsxs(s.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.AsyncRadioFilter=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),i=require("react"),R=require("mobx-react"),j=require("lodash/debounce"),s=require("@veeqo/ui"),A=require("swr/immutable"),L=require("./index76.cjs"),C=require("./index77.cjs"),k=require("./index50.cjs"),v=require("./index8.cjs"),T=require("./index62.cjs"),b=e=>e&&e.__esModule?e:{default:e},V=b(j),E=b(A),I=R.observer(({field:e})=>{var d,g;const{FILTERS_DEBOUNCE_INTERVAL_MS:S}=v.useBusinessLogic(),F=i.useMemo(()=>{var t;return C.getFetcherFunction({fetcherName:(t=e.fetchAsyncFilterOptions)==null?void 0:t.fetcher})},[(d=e.fetchAsyncFilterOptions)==null?void 0:d.fetcher]),{isLoading:a,isValidating:x,data:f,error:l}=E.default((g=e.fetchAsyncFilterOptions)==null?void 0:g.URL,F,k.SWR_HOOK_OPTIONS),u=a||x,{Filters:{setFilter:c,filters:p}}=T.useStores(),O=p.get(e.id),[m,h]=i.useState(O),y=i.useCallback(V.default((t,r)=>{c(t,r)},S),[c]),_=t=>{const r=`${t[0]}`;h(r),y(e.id,r)},q=()=>{h(""),c(e.id,"")},o=L.getAsyncOptions({data:f,config:e.fetchAsyncFilterOptions});return o&&o.length===0&&!a&&!l?n.jsx(s.Stack,{spacing:"xs",alignX:"stretch",children:n.jsxs(s.Text,{variant:"bodySmall",children:["No options available for ",e.label]})}):n.jsxs(s.Stack,{spacing:"xs",alignX:"stretch",children:[n.jsx(s.Button,{variant:"link",onClick:q,children:"Clear"}),n.jsx(s.ChoiceList,{title:e.label,options:o,selected:[m],onChange:t=>_(t)}),u&&n.jsx(s.Skeleton,{width:"200px",height:s.theme.sizes[5],"aria-busy":!0,"aria-label":`Loading ${e.label} filters`}),!u&&l&&n.jsxs(s.Text,{variant:"errorSmall",children:["Error: failed to load filter for ",e.label]})]})});exports.AsyncRadioFilter=I;
package/dist/index27.js CHANGED
@@ -4,11 +4,11 @@ import { observer as k } from "mobx-react";
4
4
  import v from "lodash/debounce";
5
5
  import { Stack as u, Text as f, Button as E, ChoiceList as N, Skeleton as _, theme as I } from "@veeqo/ui";
6
6
  import T from "swr/immutable";
7
- import { getAsyncOptions as B } from "./index75.js";
8
- import { getFetcherFunction as j } from "./index76.js";
9
- import { SWR_HOOK_OPTIONS as w } from "./index49.js";
7
+ import { getAsyncOptions as B } from "./index76.js";
8
+ import { getFetcherFunction as j } from "./index77.js";
9
+ import { SWR_HOOK_OPTIONS as w } from "./index50.js";
10
10
  import { useBusinessLogic as M } from "./index8.js";
11
- import { useStores as U } from "./index61.js";
11
+ import { useStores as U } from "./index62.js";
12
12
  const Q = k(({ field: t }) => {
13
13
  var h, p;
14
14
  const { FILTERS_DEBOUNCE_INTERVAL_MS: g } = M(), d = C(() => {
package/dist/index28.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),p=require("mobx-react"),l=require("react"),C=require("lodash/debounce"),r=require("@veeqo/ui"),F=require("./index8.cjs"),_=require("./index61.cjs"),j=e=>e&&e.__esModule?e:{default:e},k=j(C),q=p.observer(({field:e})=>{var i;const{FILTERS_DEBOUNCE_INTERVAL_MS:a}=F.useBusinessLogic(),{Filters:{setArrayFilter:o,arrayFilters:u}}=_.useStores(),d=u.get(e.id)||[],[b,c]=l.useState(d),h=l.useCallback(k.default((t,n)=>{o(t,n)},a),[o]),x=t=>{const n=t.map(g=>`${g}`);c(n),h(e.id,n)},S=()=>{c([]),o(e.id,[])};return(i=e.options)!=null&&i.length?s.jsxs(r.Stack,{spacing:"xs",children:[s.jsx(r.Button,{variant:"link",onClick:S,children:"Clear"}),s.jsx(r.ChoiceList,{allowMultiple:!0,title:e.label,options:e.options,selected:b,onChange:t=>x(t)})]}):s.jsx(r.Stack,{spacing:"xs",alignX:"stretch",children:s.jsxs(r.Text,{variant:"bodySmall",children:["No options available for ",e.label]})})});exports.CheckboxFilter=q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),p=require("mobx-react"),l=require("react"),C=require("lodash/debounce"),r=require("@veeqo/ui"),F=require("./index8.cjs"),_=require("./index62.cjs"),j=e=>e&&e.__esModule?e:{default:e},k=j(C),q=p.observer(({field:e})=>{var i;const{FILTERS_DEBOUNCE_INTERVAL_MS:a}=F.useBusinessLogic(),{Filters:{setArrayFilter:o,arrayFilters:u}}=_.useStores(),d=u.get(e.id)||[],[b,c]=l.useState(d),h=l.useCallback(k.default((t,n)=>{o(t,n)},a),[o]),x=t=>{const n=t.map(g=>`${g}`);c(n),h(e.id,n)},S=()=>{c([]),o(e.id,[])};return(i=e.options)!=null&&i.length?s.jsxs(r.Stack,{spacing:"xs",children:[s.jsx(r.Button,{variant:"link",onClick:S,children:"Clear"}),s.jsx(r.ChoiceList,{allowMultiple:!0,title:e.label,options:e.options,selected:b,onChange:t=>x(t)})]}):s.jsx(r.Stack,{spacing:"xs",alignX:"stretch",children:s.jsxs(r.Text,{variant:"bodySmall",children:["No options available for ",e.label]})})});exports.CheckboxFilter=q;
package/dist/index28.js CHANGED
@@ -4,7 +4,7 @@ import { useState as S, useCallback as x } from "react";
4
4
  import F from "lodash/debounce";
5
5
  import { Stack as a, Text as k, Button as V, ChoiceList as v } from "@veeqo/ui";
6
6
  import { useBusinessLogic as y } from "./index8.js";
7
- import { useStores as E } from "./index61.js";
7
+ import { useStores as E } from "./index62.js";
8
8
  const j = C(({ field: e }) => {
9
9
  var i;
10
10
  const { FILTERS_DEBOUNCE_INTERVAL_MS: c } = y(), {
package/dist/index29.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),P=require("react"),q=require("mobx-react"),n=require("@veeqo/ui"),E=require("./index70.cjs"),b=require("./index8.cjs"),k=require("./index61.cjs"),v=q.observer(({field:s})=>{const{DEFAULT_DATE_PRESET:c,DEFAULT_DATE_RANGE:l}=b.useBusinessLogic(),{Filters:{dateRangeFilters:i,setRangeFilter:o,clearRangeFilter:g}}=k.useStores(),e=i.get(s.id),[u,R]=P.useState(!1),d=(e==null?void 0:e.filterSelection)||c,a=()=>{const t=new E.RangeFilter;i.set(s.id,t)},F=t=>{const T=t.value===n.DateRanges.TODAY&&e&&(e==null?void 0:e.filterType)===void 0;if(!t||T)return;if(!u){R(!0);return}if(!e){a();return}if(!e)return;const f=t.value;o({dates:{start:e.gte,end:e.lte},key:f,range:e})},S=t=>{if(t){if(!e){a();return}e.setDates(t.start,t.end)}},D=()=>{g(s.id)},h=e?e.selectedRange:l;return r.jsxs(n.Stack,{spacing:"xs",children:[r.jsx(n.Button,{variant:"link",onClick:D,children:"Clear"}),r.jsx(n.DateRangePicker,{"aria-label":`date range for ${s.label}`,selectedPreset:d,setSelectedPreset:F,selectedRange:h,setSelectedRange:S})]})});exports.DateRangeFilter=v;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),P=require("react"),q=require("mobx-react"),n=require("@veeqo/ui"),E=require("./index71.cjs"),b=require("./index8.cjs"),k=require("./index62.cjs"),v=q.observer(({field:s})=>{const{DEFAULT_DATE_PRESET:c,DEFAULT_DATE_RANGE:l}=b.useBusinessLogic(),{Filters:{dateRangeFilters:i,setRangeFilter:o,clearRangeFilter:g}}=k.useStores(),e=i.get(s.id),[u,R]=P.useState(!1),d=(e==null?void 0:e.filterSelection)||c,a=()=>{const t=new E.RangeFilter;i.set(s.id,t)},F=t=>{const T=t.value===n.DateRanges.TODAY&&e&&(e==null?void 0:e.filterType)===void 0;if(!t||T)return;if(!u){R(!0);return}if(!e){a();return}if(!e)return;const f=t.value;o({dates:{start:e.gte,end:e.lte},key:f,range:e})},S=t=>{if(t){if(!e){a();return}e.setDates(t.start,t.end)}},D=()=>{g(s.id)},h=e?e.selectedRange:l;return r.jsxs(n.Stack,{spacing:"xs",children:[r.jsx(n.Button,{variant:"link",onClick:D,children:"Clear"}),r.jsx(n.DateRangePicker,{"aria-label":`date range for ${s.label}`,selectedPreset:d,setSelectedPreset:F,selectedRange:h,setSelectedRange:S})]})});exports.DateRangeFilter=v;