@veeqo/transfigure 2.3.1 → 2.4.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 (96) hide show
  1. package/dist/index100.cjs +1 -1
  2. package/dist/index100.js +48 -9
  3. package/dist/index101.cjs +1 -1
  4. package/dist/index101.js +28 -8
  5. package/dist/index102.cjs +1 -1
  6. package/dist/index102.js +14 -49
  7. package/dist/index103.cjs +12 -1
  8. package/dist/index103.js +16 -29
  9. package/dist/index104.cjs +1 -19
  10. package/dist/index104.js +15 -23
  11. package/dist/index105.cjs +19 -1
  12. package/dist/index105.js +23 -14
  13. package/dist/index106.cjs +1 -1
  14. package/dist/index106.js +21 -18
  15. package/dist/index107.cjs +1 -12
  16. package/dist/index107.js +24 -16
  17. package/dist/index108.cjs +1 -1
  18. package/dist/index108.js +12 -21
  19. package/dist/index109.cjs +80 -1
  20. package/dist/index109.js +98 -24
  21. package/dist/index110.cjs +1 -80
  22. package/dist/index110.js +8 -97
  23. package/dist/index111.cjs +1 -1
  24. package/dist/index111.js +2 -19
  25. package/dist/index112.cjs +1 -1
  26. package/dist/index112.js +18 -7
  27. package/dist/index113.cjs +1 -1
  28. package/dist/index113.js +7 -60
  29. package/dist/index114.cjs +1 -1
  30. package/dist/index114.js +57 -26
  31. package/dist/index115.cjs +1 -13
  32. package/dist/index115.js +30 -17
  33. package/dist/index116.cjs +13 -1
  34. package/dist/index116.js +17 -2
  35. package/dist/index117.cjs +1 -1
  36. package/dist/index117.js +22 -32
  37. package/dist/index118.cjs +1 -1
  38. package/dist/index118.js +32 -22
  39. package/dist/index120.cjs +1 -7
  40. package/dist/index120.js +63 -10
  41. package/dist/index121.cjs +7 -1
  42. package/dist/index121.js +10 -63
  43. package/dist/index22.cjs +1 -1
  44. package/dist/index22.js +1 -1
  45. package/dist/index31.cjs +1 -1
  46. package/dist/index31.js +1 -1
  47. package/dist/index34.cjs +1 -1
  48. package/dist/index34.js +1 -1
  49. package/dist/index36.cjs +1 -1
  50. package/dist/index36.js +2 -2
  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/index41.cjs +1 -1
  56. package/dist/index41.js +1 -1
  57. package/dist/index42.cjs +1 -1
  58. package/dist/index42.js +1 -1
  59. package/dist/index44.cjs +1 -1
  60. package/dist/index44.js +1 -1
  61. package/dist/index57.cjs +1 -1
  62. package/dist/index57.js +1 -1
  63. package/dist/index65.cjs +1 -1
  64. package/dist/index65.js +1 -1
  65. package/dist/index69.cjs +1 -1
  66. package/dist/index69.js +1 -1
  67. package/dist/index70.cjs +1 -1
  68. package/dist/index70.js +2 -2
  69. package/dist/index80.cjs +1 -1
  70. package/dist/index80.js +8 -7
  71. package/dist/index82.cjs +1 -1
  72. package/dist/index82.js +1 -1
  73. package/dist/index86.cjs +1 -1
  74. package/dist/index86.js +1 -1
  75. package/dist/index87.cjs +1 -1
  76. package/dist/index87.js +1 -1
  77. package/dist/index90.cjs +1 -1
  78. package/dist/index90.js +7 -7
  79. package/dist/index93.cjs +1 -1
  80. package/dist/index93.js +13 -12
  81. package/dist/index94.cjs +104 -1
  82. package/dist/index94.js +119 -13
  83. package/dist/index95.cjs +1 -104
  84. package/dist/index95.js +65 -116
  85. package/dist/index96.cjs +1 -1
  86. package/dist/index96.js +23 -63
  87. package/dist/index97.cjs +1 -1
  88. package/dist/index97.js +2 -28
  89. package/dist/index98.cjs +1 -1
  90. package/dist/index98.js +41 -2
  91. package/dist/index99.cjs +1 -1
  92. package/dist/index99.js +9 -39
  93. package/dist/types.d.ts +4 -7
  94. package/dist/utils/getViewTheme/getViewTheme.d.ts +10 -13
  95. package/dist/utils/viewsAdapter/viewsAdapter.d.ts +1 -1
  96. package/package.json +1 -1
package/dist/index95.js CHANGED
@@ -1,121 +1,70 @@
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, VisibilityOffIcon as a } from "@veeqo/ui";
3
- const p = r.div`
4
- width: 1px;
5
- position: absolute;
6
- left: 50%;
7
- transform: translateX(-50%);
8
- border-left: 1px solid ${o.colors.neutral.grey.dark};
9
- height: 100%;
10
- margin-top: 40px;
11
- `, u = r(t)`
12
- writing-mode: vertical-rl;
13
- position: absolute;
14
- top: 50%;
15
- left: 50%;
16
- transform: translate(-50%, -50%);
17
- background: white;
18
- padding: 30px 0;
19
- text-align: center;
20
- font-size: 10px;
21
- color: ${o.colors.neutral.ink.lightest};
22
- height: max-content;
23
- `, b = r(t)`
24
- position: sticky;
25
- top: 0;
26
- background: #ffffff;
27
- padding-bottom: ${o.sizes[2]};
28
- z-index: 1;
29
- `, f = r(t)`
30
- color: ${o.colors.neutral.ink.light};
31
- `, h = r(l)`
32
- // overflow-y: auto;
33
- position: unset;
34
- `, c = r(a)`
35
- margin-left: auto;
36
- `, x = r(i)`
37
- border-radius: 4px;
38
- padding: 8px 12px;
39
- background: #ffffff;
40
- border: 1px solid ${o.colors.neutral.ink.lightest};
41
- transition: all ease 200ms;
42
-
43
- ${({ isHidden: e }) => e && `
44
- ${t} {
45
- color: ${o.colors.neutral.ink.light};
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 "./index94.js";
5
+ import { Alert as b } from "@veeqo/ui";
6
+ import { useModal as x } from "./index53.js";
7
+ import { useDragHandlers as O } from "./index114.js";
8
+ import { useCollisionDetectionStrategy as I } from "./index115.js";
9
+ import { ErrorBoundary as R } from "./index12.js";
10
+ import { ModalId as j } from "./index52.js";
11
+ const B = {
12
+ droppable: {
13
+ strategy: A.Always
14
+ }
15
+ }, G = {
16
+ sideEffects: C({
17
+ styles: {
18
+ active: {
19
+ opacity: "0.5"
46
20
  }
47
- `}
48
-
49
- &:hover {
50
- color: ${o.colors.secondary.blue.base};
51
- background: ${o.colors.neutral.grey.lightest};
52
- border: 1px solid ${o.colors.neutral.grey.light};
53
-
54
- ${t} {
55
- color: ${o.colors.secondary.blue.base};
56
- }
57
-
58
- ${c} {
59
- color: ${o.colors.neutral.ink.light};
60
21
  }
61
- }
62
-
63
- ${({ isDragOverlay: e }) => e && `
64
- color: ${o.colors.secondary.blue.base};
65
- background: ${o.colors.neutral.grey.lightest};
66
- border: 1px solid ${o.colors.neutral.grey.light};
67
- cursor: grabbing;
68
-
69
- ${t} {
70
- color: ${o.colors.secondary.blue.base};
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);
71
42
  }
72
- `}
73
- `, $ = r.div`
74
- position: absolute;
75
- top: 0;
76
- left: 0;
77
- right: 0;
78
- bottom: 0;
79
- height: 100%;
80
- width: calc(100% - 2px);
81
- border-radius: 4px;
82
- border: 1px dashed ${o.colors.neutral.grey.dark};
83
- background: ${o.colors.neutral.grey.lightest};
84
- `, y = r(i)`
85
- flex: 1;
86
- padding: 0;
87
- `, m = r(s)`
88
- input {
89
- height: 40px;
90
- box-sizing: border-box;
91
- }
92
-
93
- svg {
94
- width: 16px;
95
- }
96
- `, k = r.div`
97
- position: relative;
98
- min-height: 500px;
99
- `, v = r(n)`
100
- display: flex;
101
- flex-direction: column;
102
- gap: ${o.sizes.base};
103
- padding: ${o.sizes.md};
104
- `, w = r.dialog`
105
- display: contents;
106
- `;
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
+ };
107
68
  export {
108
- h as ColumnGroupsGrid,
109
- x as ColumnItemWrapper,
110
- m as ColumnSearch,
111
- k as Container,
112
- f as DetailedText,
113
- w as DndDragOverlayDialog,
114
- $ as DraggingOverlay,
115
- y as DroppableAreaStack,
116
- v as HeaderContainer,
117
- b as StickyText,
118
- p as VerticalSeparator,
119
- u as VerticalText,
120
- c as VisibilityOffIcon
69
+ q as DndContainer
121
70
  };
package/dist/index96.cjs CHANGED
@@ -1 +1 @@
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("./index95.cjs"),q=require("@veeqo/ui"),C=require("./index53.cjs"),E=require("./index113.cjs"),p=require("./index114.cjs"),A=require("./index12.cjs"),b=require("./index52.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;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("@veeqo/ui"),s=require("./index94.cjs"),o=({column:i,isHidden:n,isDragOverlay:r})=>{const a=i.title||i.tooltip;return e.jsxs(s.ColumnItemWrapper,{direction:"horizontal",spacing:"sm",alignY:"center",isHidden:n,isDragOverlay:r,children:[e.jsx(t.DragIndicatorIcon,{}),i.detailed?e.jsxs(t.Stack,{spacing:"xs",children:[e.jsxs(t.Text,{variant:"body",children:[a," (detailed)"]}),e.jsx(s.DetailedText,{variant:"hintText",children:i.detailed})]}):e.jsx(t.Text,{variant:"body",children:a}),!r&&n&&e.jsx(s.VisibilityOffIcon,{width:t.theme.sizes.base,height:t.theme.sizes.base})]})};exports.ColumnItem=o;
package/dist/index96.js CHANGED
@@ -1,70 +1,30 @@
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 "./index95.js";
5
- import { Alert as b } from "@veeqo/ui";
6
- import { useModal as x } from "./index53.js";
7
- import { useDragHandlers as O } from "./index113.js";
8
- import { useCollisionDetectionStrategy as I } from "./index114.js";
9
- import { ErrorBoundary as R } from "./index12.js";
10
- import { ModalId as j } from "./index52.js";
11
- const B = {
12
- droppable: {
13
- strategy: A.Always
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,
1
+ import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
+ import { DragIndicatorIcon as s, Stack as l, Text as o, theme as d } from "@veeqo/ui";
3
+ import { ColumnItemWrapper as c, DetailedText as h, VisibilityOffIcon as m } from "./index94.js";
4
+ const f = ({ column: t, isHidden: r, isDragOverlay: n }) => {
5
+ const a = t.title || t.tooltip;
6
+ return /* @__PURE__ */ i(
7
+ c,
46
8
  {
47
- sensors: d,
48
- measuring: B,
49
- collisionDetection: g,
50
- onDragStart: D,
51
- onDragOver: p,
52
- onDragEnd: m,
53
- onDragCancel: c,
9
+ direction: "horizontal",
10
+ spacing: "sm",
11
+ alignY: "center",
12
+ isHidden: r,
13
+ isDragOverlay: n,
54
14
  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
- ) })
15
+ /* @__PURE__ */ e(s, {}),
16
+ t.detailed ? /* @__PURE__ */ i(l, { spacing: "xs", children: [
17
+ /* @__PURE__ */ i(o, { variant: "body", children: [
18
+ a,
19
+ " (detailed)"
20
+ ] }),
21
+ /* @__PURE__ */ e(h, { variant: "hintText", children: t.detailed })
22
+ ] }) : /* @__PURE__ */ e(o, { variant: "body", children: a }),
23
+ !n && r && /* @__PURE__ */ e(m, { width: d.sizes.base, height: d.sizes.base })
64
24
  ]
65
25
  }
66
- ) });
26
+ );
67
27
  };
68
28
  export {
69
- q as DndContainer
29
+ f as ColumnItem
70
30
  };
package/dist/index97.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("@veeqo/ui"),s=require("./index95.cjs"),o=({column:i,isHidden:n,isDragOverlay:r})=>{const a=i.title||i.tooltip;return e.jsxs(s.ColumnItemWrapper,{direction:"horizontal",spacing:"sm",alignY:"center",isHidden:n,isDragOverlay:r,children:[e.jsx(t.DragIndicatorIcon,{}),i.detailed?e.jsxs(t.Stack,{spacing:"xs",children:[e.jsxs(t.Text,{variant:"body",children:[a," (detailed)"]}),e.jsx(s.DetailedText,{variant:"hintText",children:i.detailed})]}):e.jsx(t.Text,{variant:"body",children:a}),!r&&n&&e.jsx(s.VisibilityOffIcon,{width:t.theme.sizes.base,height:t.theme.sizes.base})]})};exports.ColumnItem=o;
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/index97.js CHANGED
@@ -1,30 +1,4 @@
1
- import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
- import { DragIndicatorIcon as s, Stack as l, Text as o, theme as d } from "@veeqo/ui";
3
- import { ColumnItemWrapper as c, DetailedText as h, VisibilityOffIcon as m } from "./index95.js";
4
- const f = ({ column: t, isHidden: r, isDragOverlay: n }) => {
5
- const a = t.title || t.tooltip;
6
- return /* @__PURE__ */ i(
7
- c,
8
- {
9
- direction: "horizontal",
10
- spacing: "sm",
11
- alignY: "center",
12
- isHidden: r,
13
- isDragOverlay: n,
14
- children: [
15
- /* @__PURE__ */ e(s, {}),
16
- t.detailed ? /* @__PURE__ */ i(l, { spacing: "xs", children: [
17
- /* @__PURE__ */ i(o, { variant: "body", children: [
18
- a,
19
- " (detailed)"
20
- ] }),
21
- /* @__PURE__ */ e(h, { variant: "hintText", children: t.detailed })
22
- ] }) : /* @__PURE__ */ e(o, { variant: "body", children: a }),
23
- !n && r && /* @__PURE__ */ e(m, { width: d.sizes.base, height: d.sizes.base })
24
- ]
25
- }
26
- );
27
- };
1
+ var i = /* @__PURE__ */ ((e) => (e.Hidden = "hidden", e.Visible = "visible", e))(i || {});
28
2
  export {
29
- f as ColumnItem
3
+ i as ColumnGroupIds
30
4
  };
package/dist/index98.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var i=(e=>(e.Hidden="hidden",e.Visible="visible",e))(i||{});exports.ColumnGroupIds=i;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("react"),f=require("./index64.cjs"),y=require("./index63.cjs"),g=require("./index53.cjs"),h=require("./index62.cjs"),p=require("./index5.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/index98.js CHANGED
@@ -1,4 +1,43 @@
1
- var i = /* @__PURE__ */ ((e) => (e.Hidden = "hidden", e.Visible = "visible", e))(i || {});
1
+ import { useState as d } from "react";
2
+ import { useViews as v } from "./index64.js";
3
+ import { useStores as y } from "./index63.js";
4
+ import { useModal as C } from "./index53.js";
5
+ import { usePersistUnsavedChanges as g } from "./index62.js";
6
+ import { patchCustomView as h } from "./index5.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
+ };
2
41
  export {
3
- i as ColumnGroupIds
42
+ b as usePersistColumns
4
43
  };
package/dist/index99.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("react"),f=require("./index64.cjs"),y=require("./index63.cjs"),g=require("./index53.cjs"),h=require("./index62.cjs"),p=require("./index5.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;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=(t,r)=>{if(!r)return t;const i=r.toLowerCase();return t.filter(e=>{var s,a;return((s=e==null?void 0:e.title)==null?void 0:s.toLowerCase().includes(i))||((a=e==null?void 0:e.id)==null?void 0:a.toLowerCase().includes(i))})};exports.filterColumnsBySearch=d;
package/dist/index99.js CHANGED
@@ -1,43 +1,13 @@
1
- import { useState as d } from "react";
2
- import { useViews as v } from "./index64.js";
3
- import { useStores as y } from "./index63.js";
4
- import { useModal as C } from "./index53.js";
5
- import { usePersistUnsavedChanges as g } from "./index62.js";
6
- import { patchCustomView as h } from "./index5.js";
7
- const b = ({ pinnedLeftColumnIds: a, pinnedRightColumnIds: i }) => {
8
- const {
9
- Filters: {
10
- activeViewId: e
11
- },
12
- Notifications: {
13
- notify: t
1
+ const a = (t, r) => {
2
+ if (!r) return t;
3
+ const i = r.toLowerCase();
4
+ return t.filter(
5
+ (e) => {
6
+ var s, C;
7
+ return ((s = e == null ? void 0 : e.title) == null ? void 0 : s.toLowerCase().includes(i)) || ((C = e == null ? void 0 : e.id) == null ? void 0 : C.toLowerCase().includes(i));
14
8
  }
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
- };
9
+ );
40
10
  };
41
11
  export {
42
- b as usePersistColumns
12
+ a as filterColumnsBySearch
43
13
  };
package/dist/types.d.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  import { FilterChoiceValue } from './constants/constants';
2
2
  import { NumberRangeFilterClass } from './mobx/NumberRangeFilter';
3
3
  import { RangeFilter } from './mobx/RangeFilter';
4
+ import { theme } from '@veeqo/ui';
4
5
  import { ReactElement } from 'react';
6
+ export type ColourPalette = typeof theme.colors.secondary.blue;
5
7
  export declare enum SortingMode {
6
8
  MONOLITH = "MONOLITH",
7
9
  CORAL = "CORAL"
@@ -91,14 +93,9 @@ export type TransformedView = {
91
93
  isShared: boolean;
92
94
  originalView?: TransformedView;
93
95
  columns: ViewColumns;
94
- colourPalette: {
95
- lightest: string;
96
- light: string;
97
- base: string;
98
- dark: string;
99
- darkest: string;
100
- };
96
+ colourPalette: ColourPalette;
101
97
  customTextColour?: string;
98
+ view_attributes?: View['view_attributes'];
102
99
  };
103
100
  export type ViewsState = {
104
101
  fixedViews: TransformedView[];
@@ -1,21 +1,18 @@
1
- import { ViewStatusTypes } from '../../types';
1
+ import { ColourPalette, ViewStatusTypes } from '../../types';
2
+ type ViewTheme = {
3
+ colourPalette: ColourPalette;
4
+ customTextColour?: string;
5
+ };
2
6
  /**
3
7
  * Returns a view theme configuration based on the provided view status.
4
8
  *
5
- * @param type - The current view status used to determine which theme
6
- * colours to apply (for example, an error state).
9
+ * @param type - The view status used to determine which theme
10
+ * colours to apply (for example, an error state). When undefined,
11
+ * the default blue theme is returned.
7
12
  * @returns An object describing the theme for the view, including
8
13
  * {@code colourPalette}, which provides the base colour palette for
9
14
  * the view, and {@code customTextColour}, an optional override for
10
15
  * the default text colour.
11
16
  */
12
- export declare const getViewTheme: (type: ViewStatusTypes) => {
13
- colourPalette: {
14
- lightest: string;
15
- light: string;
16
- base: string;
17
- dark: string;
18
- darkest: string;
19
- };
20
- customTextColour: string | undefined;
21
- };
17
+ export declare const getViewTheme: (type: ViewStatusTypes | undefined) => ViewTheme;
18
+ export {};
@@ -3,5 +3,5 @@ type ViewsAdapterProps = {
3
3
  view: any;
4
4
  canUpdateCustomViews: boolean;
5
5
  };
6
- export declare const viewsAdapter: ({ view, canUpdateCustomViews, }: ViewsAdapterProps) => TransformedView;
6
+ export declare const viewsAdapter: ({ view, canUpdateCustomViews }: ViewsAdapterProps) => TransformedView;
7
7
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veeqo/transfigure",
3
- "version": "2.3.1",
3
+ "version": "2.4.0",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "main": "dist/index.cjs",