@veeqo/transfigure 0.0.22 → 0.0.24

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 (96) hide show
  1. package/dist/components/Filters/ActiveFilters/Variants/common/ActiveFilterHeader/ActiveFilterHeader.d.ts +3 -1
  2. package/dist/components/Filters/Fields/NumberRangeFilter/MuiSlider.d.ts +1 -1
  3. package/dist/components/Views/OptionsDropdown/styled.d.ts +1 -1
  4. package/dist/components/Views/PillNotifications/variants/styled.d.ts +2 -2
  5. package/dist/index101.cjs +1 -1
  6. package/dist/index101.js +19 -36
  7. package/dist/index102.cjs +1 -1
  8. package/dist/index102.js +7 -25
  9. package/dist/index103.cjs +1 -13
  10. package/dist/index103.js +63 -16
  11. package/dist/index104.cjs +1 -1
  12. package/dist/index104.js +29 -18
  13. package/dist/index105.cjs +1 -1
  14. package/dist/index105.js +36 -8
  15. package/dist/index106.cjs +13 -1
  16. package/dist/index106.js +16 -63
  17. package/dist/index107.cjs +1 -1
  18. package/dist/index107.js +25 -29
  19. package/dist/index108.cjs +1 -1
  20. package/dist/index108.js +41 -62
  21. package/dist/index109.cjs +1 -1
  22. package/dist/index109.js +58 -42
  23. package/dist/index110.cjs +1 -7
  24. package/dist/index110.js +47 -10
  25. package/dist/index111.cjs +7 -1
  26. package/dist/index111.js +10 -42
  27. package/dist/index15.cjs +1 -1
  28. package/dist/index15.js +1 -1
  29. package/dist/index17.cjs +1 -1
  30. package/dist/index17.js +16 -16
  31. package/dist/index18.cjs +1 -1
  32. package/dist/index18.js +16 -16
  33. package/dist/index19.cjs +1 -1
  34. package/dist/index19.js +15 -15
  35. package/dist/index20.cjs +1 -1
  36. package/dist/index20.js +10 -10
  37. package/dist/index23.cjs +1 -1
  38. package/dist/index23.js +8 -9
  39. package/dist/index29.cjs +1 -1
  40. package/dist/index29.js +1 -1
  41. package/dist/index32.cjs +1 -1
  42. package/dist/index32.js +1 -1
  43. package/dist/index33.cjs +1 -1
  44. package/dist/index33.js +18 -19
  45. package/dist/index34.cjs +1 -1
  46. package/dist/index34.js +2 -2
  47. package/dist/index37.cjs +1 -1
  48. package/dist/index37.js +1 -1
  49. package/dist/index38.cjs +1 -1
  50. package/dist/index38.js +1 -1
  51. package/dist/index39.cjs +1 -1
  52. package/dist/index39.js +1 -1
  53. package/dist/index40.cjs +1 -1
  54. package/dist/index40.js +1 -1
  55. package/dist/index42.cjs +1 -1
  56. package/dist/index42.js +1 -1
  57. package/dist/index79.cjs +1 -1
  58. package/dist/index79.js +7 -7
  59. package/dist/index82.cjs +1 -1
  60. package/dist/index82.js +1 -1
  61. package/dist/index84.cjs +1 -1
  62. package/dist/index84.js +13 -31
  63. package/dist/index85.cjs +104 -1
  64. package/dist/index85.js +118 -27
  65. package/dist/index86.cjs +1 -1
  66. package/dist/index86.js +67 -14
  67. package/dist/index87.cjs +1 -19
  68. package/dist/index87.js +29 -24
  69. package/dist/index88.cjs +1 -1
  70. package/dist/index88.js +2 -21
  71. package/dist/index89.cjs +1 -12
  72. package/dist/index89.js +41 -16
  73. package/dist/index9.cjs +1 -1
  74. package/dist/index9.js +58 -44
  75. package/dist/index90.cjs +1 -80
  76. package/dist/index90.js +11 -103
  77. package/dist/index91.cjs +1 -1
  78. package/dist/index91.js +18 -13
  79. package/dist/index92.cjs +1 -104
  80. package/dist/index92.js +23 -119
  81. package/dist/index93.cjs +1 -1
  82. package/dist/index93.js +19 -66
  83. package/dist/index94.cjs +19 -1
  84. package/dist/index94.js +24 -29
  85. package/dist/index95.cjs +1 -1
  86. package/dist/index95.js +31 -2
  87. package/dist/index96.cjs +1 -1
  88. package/dist/index96.js +29 -41
  89. package/dist/index97.cjs +1 -1
  90. package/dist/index97.js +14 -10
  91. package/dist/index98.cjs +12 -1
  92. package/dist/index98.js +16 -18
  93. package/dist/index99.cjs +80 -1
  94. package/dist/index99.js +103 -24
  95. package/dist/types.d.ts +3 -0
  96. package/package.json +5 -2
package/dist/index85.js CHANGED
@@ -1,31 +1,122 @@
1
- import { jsx as e } from "react/jsx-runtime";
2
- import { Modal as n, Text as r } from "@veeqo/ui";
3
- const s = ({ shouldShow: a, viewName: i, onCancel: t, onDelete: o }) => /* @__PURE__ */ e(
4
- n,
5
- {
6
- headerTitle: `Delete '${i}' view?`,
7
- "data-testid": "act-react-listing-custom-confirmation-popup",
8
- variant: "sm",
9
- shouldShow: a,
10
- onClose: t,
11
- rightActions: [
12
- {
13
- className: "act-react-listing-custom-confirmation-popup-cancel",
14
- label: "Cancel",
15
- onClick: t,
16
- variant: "default"
17
- },
18
- {
19
- className: "act-react-listing-custom-confirmation-popup-delete",
20
- label: "Delete",
21
- onClick: o,
22
- variant: "primaryDestructive"
1
+ import r from "styled-components";
2
+ import { Grid as l, theme as o, Text as t, BaseContainer as n, Search as s, Stack as i } from "@veeqo/ui";
3
+ import { VeeqoCommon as a } from "@veeqo/components";
4
+ const { Glyph: c } = a, b = r.div`
5
+ width: 1px;
6
+ position: absolute;
7
+ left: 50%;
8
+ transform: translateX(-50%);
9
+ border-left: 1px solid ${o.colors.neutral.grey.dark};
10
+ height: 100%;
11
+ margin-top: 40px;
12
+ `, f = r(t)`
13
+ writing-mode: vertical-rl;
14
+ position: absolute;
15
+ top: 50%;
16
+ left: 50%;
17
+ transform: translate(-50%, -50%);
18
+ background: white;
19
+ padding: 30px 0;
20
+ text-align: center;
21
+ font-size: 10px;
22
+ color: ${o.colors.neutral.ink.lightest};
23
+ height: max-content;
24
+ `, h = r(t)`
25
+ position: sticky;
26
+ top: 0;
27
+ background: #ffffff;
28
+ padding-bottom: ${o.sizes[2]};
29
+ z-index: 1;
30
+ `, x = r(t)`
31
+ color: ${o.colors.neutral.ink.light};
32
+ `, m = r(l)`
33
+ // overflow-y: auto;
34
+ position: unset;
35
+ `, d = r(c).attrs(() => ({ name: "visibility-off" }))`
36
+ margin-left: auto;
37
+ `, $ = r(i)`
38
+ border-radius: 4px;
39
+ padding: 8px 12px;
40
+ background: #ffffff;
41
+ border: 1px solid ${o.colors.neutral.ink.lightest};
42
+ transition: all ease 200ms;
43
+
44
+ ${({ isHidden: e }) => e && `
45
+ ${t} {
46
+ color: ${o.colors.neutral.ink.light};
23
47
  }
24
- ],
25
- showHeaderCloseButton: !0,
26
- children: /* @__PURE__ */ e(r, { variant: "body", children: "This cannot be undone." })
48
+ `}
49
+
50
+ &:hover {
51
+ color: ${o.colors.secondary.blue.base};
52
+ background: ${o.colors.neutral.grey.lightest};
53
+ border: 1px solid ${o.colors.neutral.grey.light};
54
+
55
+ ${t} {
56
+ color: ${o.colors.secondary.blue.base};
57
+ }
58
+
59
+ ${d} {
60
+ color: ${o.colors.neutral.ink.light};
61
+ }
27
62
  }
28
- );
63
+
64
+ ${({ isDragOverlay: e }) => e && `
65
+ color: ${o.colors.secondary.blue.base};
66
+ background: ${o.colors.neutral.grey.lightest};
67
+ border: 1px solid ${o.colors.neutral.grey.light};
68
+ cursor: grabbing;
69
+
70
+ ${t} {
71
+ color: ${o.colors.secondary.blue.base};
72
+ }
73
+ `}
74
+ `, y = r.div`
75
+ position: absolute;
76
+ top: 0;
77
+ left: 0;
78
+ right: 0;
79
+ bottom: 0;
80
+ height: 100%;
81
+ width: calc(100% - 2px);
82
+ border-radius: 4px;
83
+ border: 1px dashed ${o.colors.neutral.grey.dark};
84
+ background: ${o.colors.neutral.grey.lightest};
85
+ `, k = r(i)`
86
+ flex: 1;
87
+ padding: 0;
88
+ `, v = r(s)`
89
+ input {
90
+ height: 40px;
91
+ box-sizing: border-box;
92
+ }
93
+
94
+ svg {
95
+ width: 16px;
96
+ }
97
+ `, C = r.div`
98
+ position: relative;
99
+ min-height: 500px;
100
+ `, w = r(n)`
101
+ display: flex;
102
+ flex-direction: column;
103
+ gap: ${o.sizes.base};
104
+ padding: ${o.sizes.md};
105
+ `, z = r.dialog`
106
+ display: contents;
107
+ `;
29
108
  export {
30
- s as Confirmation
109
+ m as ColumnGroupsGrid,
110
+ $ as ColumnItemWrapper,
111
+ v as ColumnSearch,
112
+ C as Container,
113
+ x as DetailedText,
114
+ z as DndDragOverlayDialog,
115
+ y as DraggingOverlay,
116
+ k as DroppableAreaStack,
117
+ w as HeaderContainer,
118
+ h as StickyText,
119
+ b as VerticalSeparator,
120
+ f as VerticalText,
121
+ d as VisibilityOffIcon
31
122
  };
package/dist/index86.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),l=require("./index103.cjs"),o=e=>i.jsx(l.StyledSortableViews,{...e,onChange:t=>{t.filter(r=>{var n;return(n=r.children)==null?void 0:n.length}).length||e.onChange(t)}});exports.LegacySortableViews=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),e=require("@dnd-kit/core"),S=require("@dnd-kit/sortable"),h=require("./index85.cjs"),q=require("@veeqo/ui"),C=require("./index50.cjs"),E=require("./index103.cjs"),p=require("./index104.cjs"),A=require("./index10.cjs"),b=require("./index49.cjs"),x={droppable:{strategy:e.MeasuringStrategy.Always}},M={sideEffects:e.defaultDropAnimationSideEffects({styles:{active:{opacity:"0.5"}}})},j=({items:o,setItems:s,children:a,renderDragOverlay:n})=>{const{closeModal:i,openModal:l}=C.useModal(),c=e.useSensors(e.useSensor(e.PointerSensor),e.useSensor(e.KeyboardSensor,{coordinateGetter:S.sortableKeyboardCoordinates})),{activeId:t,handleDragCancel:d,handleDragEnd:u,handleDragOver:g,handleDragStart:D}=E.useDragHandlers({items:o,setItems:s}),{collisionDetectionStrategy:y}=p.useCollisionDetectionStrategy({items:o});return r.jsx(A.ErrorBoundary,{errorComponent:r.jsx(q.Alert,{variant:"error",title:"An error occurred",rightActions:[{label:"Reload",onClick:()=>{i(),l(b.ModalId.ORDERS_TABLE_MANAGEMENT)}}]}),children:r.jsxs(e.DndContext,{sensors:c,measuring:x,collisionDetection:y,onDragStart:D,onDragOver:g,onDragEnd:u,onDragCancel:d,children:[a,r.jsx(h.DndDragOverlayDialog,{open:!0,children:r.jsx(e.DragOverlay,{dropAnimation:M,zIndex:2001,children:t&&n?n(t):null})})]})})};exports.DndContainer=j;
package/dist/index86.js CHANGED
@@ -1,17 +1,70 @@
1
- import { jsx as o } from "react/jsx-runtime";
2
- import { StyledSortableViews as i } from "./index103.js";
3
- const h = (e) => /* @__PURE__ */ o(
4
- i,
5
- {
6
- ...e,
7
- onChange: (t) => {
8
- t.filter((n) => {
9
- var r;
10
- return (r = n.children) == null ? void 0 : r.length;
11
- }).length || e.onChange(t);
12
- }
1
+ import { jsx as r, jsxs as f } from "react/jsx-runtime";
2
+ import { useSensors as u, useSensor as n, PointerSensor as y, KeyboardSensor as S, DndContext as h, MeasuringStrategy as A, DragOverlay as E, defaultDropAnimationSideEffects as C } from "@dnd-kit/core";
3
+ import { sortableKeyboardCoordinates as M } from "@dnd-kit/sortable";
4
+ import { DndDragOverlayDialog as v } from "./index85.js";
5
+ import { Alert as b } from "@veeqo/ui";
6
+ import { useModal as x } from "./index50.js";
7
+ import { useDragHandlers as O } from "./index103.js";
8
+ import { useCollisionDetectionStrategy as I } from "./index104.js";
9
+ import { ErrorBoundary as R } from "./index10.js";
10
+ import { ModalId as j } from "./index49.js";
11
+ const B = {
12
+ droppable: {
13
+ strategy: A.Always
13
14
  }
14
- );
15
+ }, G = {
16
+ sideEffects: C({
17
+ styles: {
18
+ active: {
19
+ opacity: "0.5"
20
+ }
21
+ }
22
+ })
23
+ }, q = ({
24
+ items: o,
25
+ setItems: a,
26
+ children: i,
27
+ renderDragOverlay: e
28
+ }) => {
29
+ const { closeModal: s, openModal: l } = x(), d = u(
30
+ n(y),
31
+ n(S, {
32
+ coordinateGetter: M
33
+ })
34
+ ), { activeId: t, handleDragCancel: c, handleDragEnd: m, handleDragOver: p, handleDragStart: D } = O({ items: o, setItems: a }), { collisionDetectionStrategy: g } = I({
35
+ items: o
36
+ });
37
+ return /* @__PURE__ */ r(R, { errorComponent: /* @__PURE__ */ r(b, { variant: "error", title: "An error occurred", rightActions: [
38
+ {
39
+ label: "Reload",
40
+ onClick: () => {
41
+ s(), l(j.ORDERS_TABLE_MANAGEMENT);
42
+ }
43
+ }
44
+ ] }), children: /* @__PURE__ */ f(
45
+ h,
46
+ {
47
+ sensors: d,
48
+ measuring: B,
49
+ collisionDetection: g,
50
+ onDragStart: D,
51
+ onDragOver: p,
52
+ onDragEnd: m,
53
+ onDragCancel: c,
54
+ children: [
55
+ i,
56
+ /* @__PURE__ */ r(v, { open: !0, children: /* @__PURE__ */ r(
57
+ E,
58
+ {
59
+ dropAnimation: G,
60
+ zIndex: 2001,
61
+ children: t && e ? e(t) : null
62
+ }
63
+ ) })
64
+ ]
65
+ }
66
+ ) });
67
+ };
15
68
  export {
16
- h as LegacySortableViews
69
+ q as DndContainer
17
70
  };
package/dist/index87.cjs CHANGED
@@ -1,19 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("styled-components"),e=require("@veeqo/ui"),s=t=>t&&t.__esModule?t:{default:t},o=s(r),i=o.default(e.Button).attrs(()=>({role:"option",variant:"flat"}))`
2
- margin: ${e.theme.sizes.xs};
3
- min-width: 180px;
4
- justify-content: flex-start;
5
- font-size: ${e.theme.text.body.fontSize};
6
-
7
- &:hover {
8
- background-color: ${e.theme.colors.neutral.grey.lightest};
9
- color: ${e.theme.colors.secondary.blue.base};
10
- cursor: pointer;
11
- }
12
- `,n=o.default(e.Card.Surface).attrs(()=>({role:"listbox",elevation:4}))`
13
- margin-top: ${e.theme.sizes.xs};
14
- background-color: white;
15
- `,l=o.default.hr`
16
- width: 100%;
17
- border-top: 1px solid ${e.theme.colors.neutral.grey.dark};
18
- margin: 0;
19
- `;exports.Divider=l;exports.Item=i;exports.MenuItems=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),i=require("@veeqo/ui"),a=require("@veeqo/components"),n=require("./index85.cjs"),{Glyph:c}=a.VeeqoCommon,l=({column:t,isHidden:r,isDragOverlay:s})=>{const o=t.title||t.tooltip;return e.jsxs(n.ColumnItemWrapper,{direction:"horizontal",spacing:"sm",alignY:"center",isHidden:r,isDragOverlay:s,children:[e.jsx(c,{name:"drag-indicator",size:4}),t.detailed?e.jsxs(i.Stack,{spacing:"xs",children:[e.jsxs(i.Text,{variant:"body",children:[o," (detailed)"]}),e.jsx(n.DetailedText,{variant:"hintText",children:t.detailed})]}):e.jsx(i.Text,{variant:"body",children:o}),!s&&r&&e.jsx(n.VisibilityOffIcon,{size:4})]})};exports.ColumnItem=l;
package/dist/index87.js CHANGED
@@ -1,26 +1,31 @@
1
- import t from "styled-components";
2
- import { theme as o, Card as r, Button as e } from "@veeqo/ui";
3
- const n = t(e).attrs(() => ({ role: "option", variant: "flat" }))`
4
- margin: ${o.sizes.xs};
5
- min-width: 180px;
6
- justify-content: flex-start;
7
- font-size: ${o.text.body.fontSize};
8
-
9
- &:hover {
10
- background-color: ${o.colors.neutral.grey.lightest};
11
- color: ${o.colors.secondary.blue.base};
12
- cursor: pointer;
13
- }
14
- `, a = t(r.Surface).attrs(() => ({ role: "listbox", elevation: 4 }))`
15
- margin-top: ${o.sizes.xs};
16
- background-color: white;
17
- `, l = t.hr`
18
- width: 100%;
19
- border-top: 1px solid ${o.colors.neutral.grey.dark};
20
- margin: 0;
21
- `;
1
+ import { jsxs as e, jsx as i } from "react/jsx-runtime";
2
+ import { Stack as d, Text as a } from "@veeqo/ui";
3
+ import { VeeqoCommon as l } from "@veeqo/components";
4
+ import { ColumnItemWrapper as m, DetailedText as c, VisibilityOffIcon as p } from "./index85.js";
5
+ const { Glyph: s } = l, g = ({ column: t, isHidden: r, isDragOverlay: o }) => {
6
+ const n = t.title || t.tooltip;
7
+ return /* @__PURE__ */ e(
8
+ m,
9
+ {
10
+ direction: "horizontal",
11
+ spacing: "sm",
12
+ alignY: "center",
13
+ isHidden: r,
14
+ isDragOverlay: o,
15
+ children: [
16
+ /* @__PURE__ */ i(s, { name: "drag-indicator", size: 4 }),
17
+ t.detailed ? /* @__PURE__ */ e(d, { spacing: "xs", children: [
18
+ /* @__PURE__ */ e(a, { variant: "body", children: [
19
+ n,
20
+ " (detailed)"
21
+ ] }),
22
+ /* @__PURE__ */ i(c, { variant: "hintText", children: t.detailed })
23
+ ] }) : /* @__PURE__ */ i(a, { variant: "body", children: n }),
24
+ !o && r && /* @__PURE__ */ i(p, { size: 4 })
25
+ ]
26
+ }
27
+ );
28
+ };
22
29
  export {
23
- l as Divider,
24
- n as Item,
25
- a as MenuItems
30
+ g as ColumnItem
26
31
  };
package/dist/index88.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("@veeqo/ui"),i=require("./index90.cjs"),n=r.theme.colors.secondary.blue.base,a=({onClick:t})=>e.jsx(i.Notification,{children:e.jsx(i.Pill,{children:e.jsxs(r.Stack,{direction:"horizontal",alignY:"center",children:[e.jsx(i.Glyph,{ariaLabel:"info",name:"info",color:n}),e.jsxs(i.Wrap,{children:[e.jsx(i.Text,{variant:"body",margin:"0 4px 0 0",children:"You are currently in a"}),e.jsx(i.Bold,{variant:"bodyBoldDark",children:"draft view"}),e.jsx(i.Hint,{variant:"hintText",children:"Apply filters and save these by creating a custom view"})]}),e.jsx(i.Button,{variant:"primary",onClick:t,size:"sm",children:"Create view"})]})})});exports.DraftPill=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var i=(e=>(e.Hidden="hidden",e.Visible="visible",e))(i||{});exports.ColumnGroupIds=i;
package/dist/index88.js CHANGED
@@ -1,23 +1,4 @@
1
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
2
- import { Stack as a, theme as n } from "@veeqo/ui";
3
- import { Notification as t, Pill as o, Glyph as l, Wrap as c, Text as d, Bold as s, Hint as h, Button as m } from "./index90.js";
4
- const p = n.colors.secondary.blue.base, b = ({ onClick: e }) => /* @__PURE__ */ r(t, { children: /* @__PURE__ */ r(o, { children: /* @__PURE__ */ i(a, { direction: "horizontal", alignY: "center", children: [
5
- /* @__PURE__ */ r(l, { ariaLabel: "info", name: "info", color: p }),
6
- /* @__PURE__ */ i(c, { children: [
7
- /* @__PURE__ */ r(d, { variant: "body", margin: "0 4px 0 0", children: "You are currently in a" }),
8
- /* @__PURE__ */ r(s, { variant: "bodyBoldDark", children: "draft view" }),
9
- /* @__PURE__ */ r(h, { variant: "hintText", children: "Apply filters and save these by creating a custom view" })
10
- ] }),
11
- /* @__PURE__ */ r(
12
- m,
13
- {
14
- variant: "primary",
15
- onClick: e,
16
- size: "sm",
17
- children: "Create view"
18
- }
19
- )
20
- ] }) }) });
1
+ var i = /* @__PURE__ */ ((e) => (e.Hidden = "hidden", e.Visible = "visible", e))(i || {});
21
2
  export {
22
- b as DraftPill
3
+ i as ColumnGroupIds
23
4
  };
package/dist/index89.cjs CHANGED
@@ -1,12 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("styled-components"),t=require("@veeqo/ui"),o=e=>e&&e.__esModule?e:{default:e},r=o(i),d=r.default(t.BaseContainer)`
2
- display: flex;
3
- flex-direction: column;
4
- padding: 8px;
5
- padding-left: 35px;
6
- margin: 8px;
7
- background-color: ${t.theme.colors.neutral.grey.lightest};
8
- `,l=r.default.hr`
9
- width: 100%;
10
- border-top: 1px solid ${t.theme.colors.neutral.grey.dark};
11
- margin: 0 0 4px 0;
12
- `;exports.Divider=l;exports.FixedViews=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("react"),f=require("./index60.cjs"),y=require("./index59.cjs"),g=require("./index50.cjs"),h=require("./index58.cjs"),p=require("./index4.cjs"),w=({pinnedLeftColumnIds:r,pinnedRightColumnIds:a})=>{const{Filters:{activeViewId:t},Notifications:{notify:e}}=y.useStores(),{closeModal:i}=g.useModal(),{mutate:c}=f.useViews(),{getActiveViewInAPIFormat:l}=h.usePersistUnsavedChanges(),[m,o]=C.useState(!1);return{saveColumns:async({visibleColumns:n})=>{if(t)try{if(o(!0),n.length<1){e({type:"error",text:"You must have at least one visible column."});return}const u=[...r,...n,...a],{arg:d,currentView:s}=l(),v={...d,columns:{...s==null?void 0:s.columns,columnIds:u}};await p.patchCustomView(t,{attributes:v}),await c(),i(),e({type:"success",text:"Columns updated successfully"})}catch{e({type:"error",text:"Failed to save columns"})}finally{o(!1)}},isSavingColumns:m}};exports.usePersistColumns=w;
package/dist/index89.js CHANGED
@@ -1,18 +1,43 @@
1
- import r from "styled-components";
2
- import { theme as o, BaseContainer as e } from "@veeqo/ui";
3
- const d = r(e)`
4
- display: flex;
5
- flex-direction: column;
6
- padding: 8px;
7
- padding-left: 35px;
8
- margin: 8px;
9
- background-color: ${o.colors.neutral.grey.lightest};
10
- `, l = r.hr`
11
- width: 100%;
12
- border-top: 1px solid ${o.colors.neutral.grey.dark};
13
- margin: 0 0 4px 0;
14
- `;
1
+ import { useState as d } from "react";
2
+ import { useViews as v } from "./index60.js";
3
+ import { useStores as y } from "./index59.js";
4
+ import { useModal as C } from "./index50.js";
5
+ import { usePersistUnsavedChanges as g } from "./index58.js";
6
+ import { patchCustomView as h } from "./index4.js";
7
+ const b = ({ pinnedLeftColumnIds: a, pinnedRightColumnIds: i }) => {
8
+ const {
9
+ Filters: {
10
+ activeViewId: e
11
+ },
12
+ Notifications: {
13
+ notify: t
14
+ }
15
+ } = y(), { closeModal: u } = C(), { mutate: m } = v(), { getActiveViewInAPIFormat: c } = g(), [l, o] = d(!1);
16
+ return {
17
+ saveColumns: async ({ visibleColumns: n }) => {
18
+ if (e)
19
+ try {
20
+ if (o(!0), n.length < 1) {
21
+ t({ type: "error", text: "You must have at least one visible column." });
22
+ return;
23
+ }
24
+ const r = [...a, ...n, ...i], { arg: f, currentView: s } = c(), p = {
25
+ ...f,
26
+ columns: {
27
+ ...s == null ? void 0 : s.columns,
28
+ columnIds: r
29
+ }
30
+ };
31
+ await h(e, { attributes: p }), await m(), u(), t({ type: "success", text: "Columns updated successfully" });
32
+ } catch {
33
+ t({ type: "error", text: "Failed to save columns" });
34
+ } finally {
35
+ o(!1);
36
+ }
37
+ },
38
+ isSavingColumns: l
39
+ };
40
+ };
15
41
  export {
16
- l as Divider,
17
- d as FixedViews
42
+ b as usePersistColumns
18
43
  };
package/dist/index9.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("@veeqo/ui"),_=require("./index8.cjs"),a=["due_date"],o=["product_count"],d="filter[search]",s=l.DateRanges.TODAY,u=l.getDateRange(s),c=l.DATE_RANGE_OPTIONS.find(({value:e})=>e===s),E="25",T="1",A="order",L=200,b=[10,25,50,100],p="page[number]",D="page[size]",S=["order_id","shipping_rates","package","action"],g=["price"],M="api/v2/orders",n={DATE_RANGE_FILTERS:a,SEARCH_FILTER_ID:d,NUMBER_RANGE_FILTERS:o,DEFAULT_DATE_SELECTION:s,DEFAULT_DATE_RANGE:u,DEFAULT_DATE_PRESET:c,DEFAULT_PAGE_SIZE:E,DEFAULT_PAGE_NUMBER:T,VIEW_TYPE:A,FILTERS_DEBOUCE_INTERVAL_MS:L,PAGE_SIZE_OPTIONS:b,PAGE_NUMBER_FILTER_ID:p,PAGE_SIZE_FILTER_ID:D,DEFAULT_VISIBLE_COLUMNS:S,DEFAULT_HIDDEN_COLUMNS:g,TABLE_DATA_URL:M},r=()=>{const e=new Map,t=new Map;return e.set("order_number",{id:"order_number",label:"Order number",filterType:"text",isFilterAllowed:!0}),t.set("order",{id:"order",label:"Order",fields:[e.get("order_number")]}),e.set("shoe_size",{id:"shoe_size",label:"Shoe size",filterType:"radio",isFilterAllowed:!0,options:[{label:"One",value:"1"},{label:"Two",value:"2"},{label:"Three",value:"3"},{label:"Four",value:"4"},{label:"Five",value:"5"}]}),t.set("shoe",{id:"shoe",label:"Shoe",fields:[e.get("shoe_size")]}),e.set("channel_id",{id:"channel_id",label:"Channel",filterType:"checkbox",isFilterAllowed:!0,fetchAsyncFilterOptions:{URL:"/channels",labelProperty:"name",valueProperty:"id",fetcher:"fetcherV1"}}),t.set("channel",{id:"channel",label:"Channel",fields:[e.get("channel_id")]}),e.set("product_count",{id:"product_count",label:"Product count",filterType:"number_range",isFilterAllowed:!0,options:[{label:"Min",value:"0"},{label:"Max",value:"100"}]}),t.set("product_count",{id:"product_count",label:"Product count",fields:[e.get("product_count")]}),e.set("due_date",{id:"due_date",label:"Due date",filterType:"date_range",isFilterAllowed:!0,options:[{label:"Today",value:"TODAY"},{label:"Yesterday",value:"YESTERDAY"},{label:"Last 7 days",value:"LAST_7_DAYS"},{label:"Last 30 days",value:"LAST_30_DAYS"},{label:"Last 90 days",value:"LAST_90_DAYS"},{label:"Last month",value:"LAST_MONTH"},{label:"Last 12 months",value:"LAST_12_MONTHS"},{label:"Week to date",value:"WEEK_TO_DATE"},{label:"Month to date",value:"MONTH_TO_DATE"},{label:"Year to date",value:"YEAR_TO_DATE"}]}),t.set("due",{id:"due",label:"Due",fields:[e.get("due_date")]}),e.set("max_products",{id:"max_products",label:"Max products",filterType:"number",isFilterAllowed:!0}),t.set("max_count",{id:"max_count",label:"Max count",fields:[e.get("max_products")]}),{FIELDS_MAP:e,GROUP_MAP:t}},F=e=>{const t=r(),i={...n,...t,...e};_.BusinessLogicManager.setBusinessLogic(i)};exports.DATE_RANGE_FILTERS=a;exports.NUMBER_RANGE_FILTERS=o;exports.customAppBusinessLogic=n;exports.generateMockedFilterMaps=r;exports.setMockedBusinessLogic=F;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),s=require("@veeqo/ui"),_=require("./index8.cjs"),l=require("@veeqo/components"),n=["due_date"],r=["product_count"],d="filter[search]",a=s.DateRanges.TODAY,p=s.getDateRange(a),E=s.DATE_RANGE_OPTIONS.find(({value:e})=>e===a),m="25",T="1",A="order",h=200,b=[10,25,50,100],L="page[number]",g="page[size]",y=["order_id","shipping_rates","package","action"],D=["price"],S="api/v2/orders",i={DATE_RANGE_FILTERS:n,SEARCH_FILTER_ID:d,NUMBER_RANGE_FILTERS:r,DEFAULT_DATE_SELECTION:a,DEFAULT_DATE_RANGE:p,DEFAULT_DATE_PRESET:E,DEFAULT_PAGE_SIZE:m,DEFAULT_PAGE_NUMBER:T,VIEW_TYPE:A,FILTERS_DEBOUCE_INTERVAL_MS:h,PAGE_SIZE_OPTIONS:b,PAGE_NUMBER_FILTER_ID:L,PAGE_SIZE_FILTER_ID:g,DEFAULT_VISIBLE_COLUMNS:y,DEFAULT_HIDDEN_COLUMNS:D,TABLE_DATA_URL:S},u=()=>{const e=new Map,o=new Map;return e.set("order_number",{id:"order_number",label:"Order number",filterType:"text",isFilterAllowed:!0,glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"filter"})}),o.set("order",{id:"order",label:"Order",fields:[e.get("order_number")],glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"product-menu"})}),e.set("shoe_size",{id:"shoe_size",label:"Shoe size",filterType:"radio",isFilterAllowed:!0,glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"filter"}),options:[{label:"One",value:"1"},{label:"Two",value:"2"},{label:"Three",value:"3"},{label:"Four",value:"4"},{label:"Five",value:"5"}]}),o.set("shoe",{id:"shoe",label:"Shoe",fields:[e.get("shoe_size")],glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"filter"})}),e.set("channel_id",{id:"channel_id",label:"Channel",filterType:"checkbox",isFilterAllowed:!0,glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"filter"}),fetchAsyncFilterOptions:{URL:"/channels",labelProperty:"name",valueProperty:"id",fetcher:"fetcherV1"}}),o.set("channel",{id:"channel",label:"Store",fields:[e.get("channel_id")],glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"fba"})}),e.set("product_count",{id:"product_count",label:"Product count",filterType:"number_range",isFilterAllowed:!0,glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"filter"}),options:[{label:"Min",value:"0"},{label:"Max",value:"100"}]}),o.set("product_count",{id:"product_count",label:"Product count",fields:[e.get("product_count")],glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"reports"})}),e.set("due_date",{id:"due_date",label:"Due date",filterType:"date_range",isFilterAllowed:!0,glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"filter"}),options:[{label:"Today",value:"TODAY"},{label:"Yesterday",value:"YESTERDAY"},{label:"Last 7 days",value:"LAST_7_DAYS"},{label:"Last 30 days",value:"LAST_30_DAYS"},{label:"Last 90 days",value:"LAST_90_DAYS"},{label:"Last month",value:"LAST_MONTH"},{label:"Last 12 months",value:"LAST_12_MONTHS"},{label:"Week to date",value:"WEEK_TO_DATE"},{label:"Month to date",value:"MONTH_TO_DATE"},{label:"Year to date",value:"YEAR_TO_DATE"}]}),o.set("due",{id:"due",label:"Due",fields:[e.get("due_date")],glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"date"})}),e.set("max_products",{id:"max_products",label:"Max products",filterType:"number",isFilterAllowed:!0,glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"products"})}),o.set("max_count",{id:"max_count",label:"Max count",fields:[e.get("max_products")],glyph:t.jsx(l.VeeqoCommon.Glyph,{name:"reports"})}),{FIELDS_MAP:e,GROUP_MAP:o}},M=e=>{const o=u(),c={...i,...o,...e};_.BusinessLogicManager.setBusinessLogic(c)};exports.DATE_RANGE_FILTERS=n;exports.NUMBER_RANGE_FILTERS=r;exports.customAppBusinessLogic=i;exports.generateMockedFilterMaps=u;exports.setMockedBusinessLogic=M;
package/dist/index9.js CHANGED
@@ -1,40 +1,45 @@
1
- import { DATE_RANGE_OPTIONS as s, getDateRange as o, DateRanges as r } from "@veeqo/ui";
2
- import { BusinessLogicManager as n } from "./index8.js";
3
- const _ = ["due_date"], d = ["product_count"], i = "filter[search]", l = r.TODAY, u = o(l), c = s.find(
4
- ({ value: e }) => e === l
5
- ), E = "25", T = "1", A = "order", b = 200, p = [10, 25, 50, 100], L = "page[number]", D = "page[size]", S = ["order_id", "shipping_rates", "package", "action"], h = ["price"], F = "api/v2/orders", M = {
6
- DATE_RANGE_FILTERS: _,
7
- SEARCH_FILTER_ID: i,
8
- NUMBER_RANGE_FILTERS: d,
9
- DEFAULT_DATE_SELECTION: l,
10
- DEFAULT_DATE_RANGE: u,
11
- DEFAULT_DATE_PRESET: c,
12
- DEFAULT_PAGE_SIZE: E,
13
- DEFAULT_PAGE_NUMBER: T,
14
- VIEW_TYPE: A,
1
+ import { jsx as l } from "react/jsx-runtime";
2
+ import { DATE_RANGE_OPTIONS as r, getDateRange as n, DateRanges as i } from "@veeqo/ui";
3
+ import { BusinessLogicManager as _ } from "./index8.js";
4
+ import { VeeqoCommon as t } from "@veeqo/components";
5
+ const d = ["due_date"], u = ["product_count"], c = "filter[search]", o = i.TODAY, p = n(o), E = r.find(
6
+ ({ value: e }) => e === o
7
+ ), T = "25", A = "1", h = "order", b = 200, m = [10, 25, 50, 100], y = "page[number]", L = "page[size]", g = ["order_id", "shipping_rates", "package", "action"], D = ["price"], S = "api/v2/orders", f = {
8
+ DATE_RANGE_FILTERS: d,
9
+ SEARCH_FILTER_ID: c,
10
+ NUMBER_RANGE_FILTERS: u,
11
+ DEFAULT_DATE_SELECTION: o,
12
+ DEFAULT_DATE_RANGE: p,
13
+ DEFAULT_DATE_PRESET: E,
14
+ DEFAULT_PAGE_SIZE: T,
15
+ DEFAULT_PAGE_NUMBER: A,
16
+ VIEW_TYPE: h,
15
17
  FILTERS_DEBOUCE_INTERVAL_MS: b,
16
- PAGE_SIZE_OPTIONS: p,
17
- PAGE_NUMBER_FILTER_ID: L,
18
- PAGE_SIZE_FILTER_ID: D,
19
- DEFAULT_VISIBLE_COLUMNS: S,
20
- DEFAULT_HIDDEN_COLUMNS: h,
21
- TABLE_DATA_URL: F
22
- }, R = () => {
23
- const e = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Map();
18
+ PAGE_SIZE_OPTIONS: m,
19
+ PAGE_NUMBER_FILTER_ID: y,
20
+ PAGE_SIZE_FILTER_ID: L,
21
+ DEFAULT_VISIBLE_COLUMNS: g,
22
+ DEFAULT_HIDDEN_COLUMNS: D,
23
+ TABLE_DATA_URL: S
24
+ }, F = () => {
25
+ const e = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map();
24
26
  return e.set("order_number", {
25
27
  id: "order_number",
26
28
  label: "Order number",
27
29
  filterType: "text",
28
- isFilterAllowed: !0
29
- }), t.set("order", {
30
+ isFilterAllowed: !0,
31
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "filter" })
32
+ }), a.set("order", {
30
33
  id: "order",
31
34
  label: "Order",
32
- fields: [e.get("order_number")]
35
+ fields: [e.get("order_number")],
36
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "product-menu" })
33
37
  }), e.set("shoe_size", {
34
38
  id: "shoe_size",
35
39
  label: "Shoe size",
36
40
  filterType: "radio",
37
41
  isFilterAllowed: !0,
42
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "filter" }),
38
43
  options: [
39
44
  {
40
45
  label: "One",
@@ -57,30 +62,34 @@ const _ = ["due_date"], d = ["product_count"], i = "filter[search]", l = r.TODAY
57
62
  value: "5"
58
63
  }
59
64
  ]
60
- }), t.set("shoe", {
65
+ }), a.set("shoe", {
61
66
  id: "shoe",
62
67
  label: "Shoe",
63
- fields: [e.get("shoe_size")]
68
+ fields: [e.get("shoe_size")],
69
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "filter" })
64
70
  }), e.set("channel_id", {
65
71
  id: "channel_id",
66
72
  label: "Channel",
67
73
  filterType: "checkbox",
68
74
  isFilterAllowed: !0,
75
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "filter" }),
69
76
  fetchAsyncFilterOptions: {
70
77
  URL: "/channels",
71
78
  labelProperty: "name",
72
79
  valueProperty: "id",
73
80
  fetcher: "fetcherV1"
74
81
  }
75
- }), t.set("channel", {
82
+ }), a.set("channel", {
76
83
  id: "channel",
77
- label: "Channel",
78
- fields: [e.get("channel_id")]
84
+ label: "Store",
85
+ fields: [e.get("channel_id")],
86
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "fba" })
79
87
  }), e.set("product_count", {
80
88
  id: "product_count",
81
89
  label: "Product count",
82
90
  filterType: "number_range",
83
91
  isFilterAllowed: !0,
92
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "filter" }),
84
93
  options: [
85
94
  {
86
95
  label: "Min",
@@ -91,15 +100,17 @@ const _ = ["due_date"], d = ["product_count"], i = "filter[search]", l = r.TODAY
91
100
  value: "100"
92
101
  }
93
102
  ]
94
- }), t.set("product_count", {
103
+ }), a.set("product_count", {
95
104
  id: "product_count",
96
105
  label: "Product count",
97
- fields: [e.get("product_count")]
106
+ fields: [e.get("product_count")],
107
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "reports" })
98
108
  }), e.set("due_date", {
99
109
  id: "due_date",
100
110
  label: "Due date",
101
111
  filterType: "date_range",
102
112
  isFilterAllowed: !0,
113
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "filter" }),
103
114
  options: [
104
115
  {
105
116
  label: "Today",
@@ -142,28 +153,31 @@ const _ = ["due_date"], d = ["product_count"], i = "filter[search]", l = r.TODAY
142
153
  value: "YEAR_TO_DATE"
143
154
  }
144
155
  ]
145
- }), t.set("due", {
156
+ }), a.set("due", {
146
157
  id: "due",
147
158
  label: "Due",
148
- fields: [e.get("due_date")]
159
+ fields: [e.get("due_date")],
160
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "date" })
149
161
  }), e.set("max_products", {
150
162
  id: "max_products",
151
163
  label: "Max products",
152
164
  filterType: "number",
153
- isFilterAllowed: !0
154
- }), t.set("max_count", {
165
+ isFilterAllowed: !0,
166
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "products" })
167
+ }), a.set("max_count", {
155
168
  id: "max_count",
156
169
  label: "Max count",
157
- fields: [e.get("max_products")]
158
- }), { FIELDS_MAP: e, GROUP_MAP: t };
170
+ fields: [e.get("max_products")],
171
+ glyph: /* @__PURE__ */ l(t.Glyph, { name: "reports" })
172
+ }), { FIELDS_MAP: e, GROUP_MAP: a };
159
173
  }, O = (e) => {
160
- const t = R(), a = { ...M, ...t, ...e };
161
- n.setBusinessLogic(a);
174
+ const a = F(), s = { ...f, ...a, ...e };
175
+ _.setBusinessLogic(s);
162
176
  };
163
177
  export {
164
- _ as DATE_RANGE_FILTERS,
165
- d as NUMBER_RANGE_FILTERS,
166
- M as customAppBusinessLogic,
167
- R as generateMockedFilterMaps,
178
+ d as DATE_RANGE_FILTERS,
179
+ u as NUMBER_RANGE_FILTERS,
180
+ f as customAppBusinessLogic,
181
+ F as generateMockedFilterMaps,
168
182
  O as setMockedBusinessLogic
169
183
  };