@ynput/ayon-frontend-shared 0.8.1 → 0.9.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.
- package/dist/DetailsPanel.es.js +2 -2
- package/dist/ListTable.es.js +1 -1
- package/dist/NewEntity.es.js +5 -3
- package/dist/ProjectTreeTable.es.js +4153 -4130
- package/dist/ProjectsTable.es.js +5 -4
- package/dist/Slicer.es.js +326 -293
- package/dist/Views.es.js +724 -714
- package/dist/chunks/ColumnDropIndicator.es.js +10 -10
- package/dist/chunks/DeleteEntitiesConfirmDialog.es.js +44 -38
- package/dist/chunks/EntityPickerDialog.es.js +1 -1
- package/dist/chunks/Feed.es.js +41 -39
- package/dist/chunks/FilmstripEntityCard.es.js +1 -1
- package/dist/chunks/GroupSettingsFallback.es.js +3 -2
- package/dist/chunks/MetaWidget.es.js +425 -411
- package/dist/chunks/NewEntityContextInstance.es.js +6 -5
- package/dist/chunks/ReviewablesSelector.es.js +76 -76
- package/dist/chunks/SimpleTable.es.js +151 -149
- package/dist/chunks/Slicer.es.js +637 -617
- package/dist/chunks/TableExportContextInstance.es.js +131 -126
- package/dist/chunks/ThumbnailSimple.es.js +11 -11
- package/dist/chunks/Watchers.es.js +46 -46
- package/dist/chunks/getUris.es.js +1 -1
- package/dist/chunks/searchTerms.es.js +617 -581
- package/dist/chunks/useCreateContextMenu.es.js +15 -13
- package/dist/components.es.js +900 -868
- package/dist/context.es.js +1 -1
- package/dist/hooks.es.js +2 -2
- package/dist/index.es.js +11 -10
- package/dist/types/ContextMenu.d.ts +1 -1
- package/dist/types/Feed.d.ts +1 -1
- package/dist/types/ListTable.d.ts +1 -1
- package/dist/types/NewEntity.d.ts +2 -0
- package/dist/types/ProjectTreeTable.d.ts +44 -3
- package/dist/types/ProjectsTable.d.ts +1 -1
- package/dist/types/SimpleTable.d.ts +1 -1
- package/dist/types/Slicer.d.ts +7 -1
- package/dist/types/Views.d.ts +5 -0
- package/dist/types/components.d.ts +46 -1
- package/dist/types/context.d.ts +2 -1
- package/dist/types/util.d.ts +21 -0
- package/dist/util.es.js +116 -113
- package/package.json +2 -2
package/dist/Views.es.js
CHANGED
|
@@ -1,628 +1,638 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { useMemo as q, useCallback as
|
|
3
|
-
import { createPortal as
|
|
1
|
+
import { jsx as L, jsxs as G, Fragment as Y } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo as q, useCallback as v, useRef as oe, useState as R, useEffect as W } from "react";
|
|
3
|
+
import { createPortal as ge } from "react-dom";
|
|
4
4
|
import "./chunks/searchTerms.es.js";
|
|
5
|
-
import { aU as
|
|
6
|
-
import { confirmDialog as
|
|
7
|
-
import { b as
|
|
8
|
-
import { aw as
|
|
9
|
-
import { Icon as
|
|
5
|
+
import { aU as ie, bx as fe, dd as ne, b8 as Ve, dD as pe, dG as A, X as te, co as Xe, d1 as me, cK as he, bt as Z, cI as je } from "./chunks/getUris.es.js";
|
|
6
|
+
import { confirmDialog as Ye } from "primereact/confirmdialog";
|
|
7
|
+
import { b as z, ao as ve, ap as Ze, c as ye, o as ke, aq as Ne, ar as J, as as Te, at as et, au as tt, av as Ce } from "./chunks/TableExportContextInstance.es.js";
|
|
8
|
+
import { aw as is, ax as ns, ay as rs } from "./chunks/TableExportContextInstance.es.js";
|
|
9
|
+
import { Icon as X, Button as be, Dialog as st } from "@ynput/ayon-react-components";
|
|
10
10
|
import "uuid";
|
|
11
|
-
import { toast as
|
|
11
|
+
import { toast as x } from "react-toastify";
|
|
12
12
|
import "@module-federation/enhanced/runtime";
|
|
13
13
|
import "@ynput/ayon-addon/host";
|
|
14
14
|
import "lodash";
|
|
15
15
|
import "axios";
|
|
16
16
|
import "./chunks/ContextMenuContextInstance.es.js";
|
|
17
|
-
import
|
|
17
|
+
import Le from "clsx";
|
|
18
18
|
import "react-router-dom";
|
|
19
19
|
import "semver";
|
|
20
|
-
import { useDispatch as
|
|
21
|
-
import
|
|
22
|
-
import { u as
|
|
23
|
-
import { c as
|
|
24
|
-
const
|
|
20
|
+
import { useDispatch as ot } from "react-redux";
|
|
21
|
+
import K from "styled-components";
|
|
22
|
+
import { u as Be } from "./chunks/useLoadModule.es.js";
|
|
23
|
+
import { c as De, a as se } from "./chunks/columnConfigConverter.es.js";
|
|
24
|
+
const jt = [
|
|
25
25
|
"overview",
|
|
26
26
|
"taskProgress",
|
|
27
27
|
"versions",
|
|
28
28
|
"lists",
|
|
29
29
|
"reviews",
|
|
30
30
|
"reports"
|
|
31
|
-
],
|
|
32
|
-
const { viewsList:
|
|
33
|
-
id:
|
|
34
|
-
label:
|
|
31
|
+
], re = "_working_", it = "_new_view_", Ie = "__base__", nt = (e) => {
|
|
32
|
+
const { viewsList: s, onEdit: o, onSelect: t, onSave: l } = e, c = (i, V = {}) => ({
|
|
33
|
+
id: i.id,
|
|
34
|
+
label: i.label,
|
|
35
35
|
isSelected: !1,
|
|
36
|
-
highlighted:
|
|
37
|
-
onClick: () =>
|
|
36
|
+
highlighted: i.highlighted,
|
|
37
|
+
onClick: () => t(i.id),
|
|
38
38
|
...V
|
|
39
|
-
}),
|
|
40
|
-
(
|
|
39
|
+
}), a = s.filter((i) => i.visibility === "private" && i.isOwner && !i.working).map(
|
|
40
|
+
(i) => c(i, {
|
|
41
41
|
isEditable: !0,
|
|
42
42
|
isSaveable: !0,
|
|
43
|
-
onEdit: () => i
|
|
44
|
-
onSave: () =>
|
|
43
|
+
onEdit: () => o(i.id),
|
|
44
|
+
onSave: () => l(i.id)
|
|
45
45
|
})
|
|
46
|
-
),
|
|
47
|
-
(
|
|
48
|
-
isEditable:
|
|
49
|
-
isSaveable:
|
|
50
|
-
...
|
|
51
|
-
onEdit: () => i
|
|
52
|
-
onSave: () =>
|
|
46
|
+
), u = s.filter((i) => i.visibility === "public" && !i.working).map(
|
|
47
|
+
(i) => c(i, {
|
|
48
|
+
isEditable: i.isOwner,
|
|
49
|
+
isSaveable: i.isOwner,
|
|
50
|
+
...i.isOwner && {
|
|
51
|
+
onEdit: () => o(i.id),
|
|
52
|
+
onSave: () => l(i.id)
|
|
53
53
|
}
|
|
54
54
|
})
|
|
55
|
-
),
|
|
56
|
-
(
|
|
55
|
+
), r = s.filter((i) => i.visibility === "private" && !i.isOwner && !i.working).map(
|
|
56
|
+
(i) => c(i, {
|
|
57
57
|
isEditable: !1,
|
|
58
58
|
isSaveable: !1
|
|
59
59
|
})
|
|
60
60
|
);
|
|
61
61
|
return {
|
|
62
|
-
myViews:
|
|
63
|
-
sharedViews:
|
|
64
|
-
allPrivateViews:
|
|
62
|
+
myViews: a,
|
|
63
|
+
sharedViews: u,
|
|
64
|
+
allPrivateViews: r
|
|
65
65
|
};
|
|
66
|
-
},
|
|
66
|
+
}, rt = ({
|
|
67
67
|
viewsList: e,
|
|
68
|
-
workingView:
|
|
69
|
-
viewType:
|
|
70
|
-
viewAlias:
|
|
71
|
-
projectName:
|
|
72
|
-
currentUser:
|
|
73
|
-
useWorkingView:
|
|
74
|
-
editingViewId:
|
|
75
|
-
collapsed:
|
|
76
|
-
setCollapsed:
|
|
68
|
+
workingView: s,
|
|
69
|
+
viewType: o,
|
|
70
|
+
viewAlias: t,
|
|
71
|
+
projectName: l,
|
|
72
|
+
currentUser: c,
|
|
73
|
+
useWorkingView: a,
|
|
74
|
+
editingViewId: u,
|
|
75
|
+
collapsed: r,
|
|
76
|
+
setCollapsed: i,
|
|
77
77
|
onSelect: V,
|
|
78
|
-
onEdit:
|
|
78
|
+
onEdit: p,
|
|
79
79
|
onSave: m,
|
|
80
|
-
onResetWorkingView:
|
|
81
|
-
selectedId:
|
|
80
|
+
onResetWorkingView: g,
|
|
81
|
+
selectedId: d
|
|
82
82
|
}) => {
|
|
83
|
-
const { powerLicense: n } =
|
|
84
|
-
() => e.map((
|
|
85
|
-
...
|
|
86
|
-
isOwner:
|
|
87
|
-
highlighted:
|
|
83
|
+
const { powerLicense: n } = z(), [w] = ie(), C = q(
|
|
84
|
+
() => e.map((h) => ({
|
|
85
|
+
...h,
|
|
86
|
+
isOwner: h.owner === c?.name,
|
|
87
|
+
highlighted: u === h.id ? "save" : void 0
|
|
88
88
|
})),
|
|
89
|
-
[e,
|
|
90
|
-
),
|
|
91
|
-
id:
|
|
92
|
-
label:
|
|
93
|
-
startContent:
|
|
89
|
+
[e, c, u]
|
|
90
|
+
), k = {
|
|
91
|
+
id: re,
|
|
92
|
+
label: a ? `Personal ${t.toLowerCase()}` : `Working ${t.toLowerCase()}`,
|
|
93
|
+
startContent: a && /* @__PURE__ */ L(X, { icon: "person" }),
|
|
94
94
|
isEditable: !1
|
|
95
|
-
},
|
|
96
|
-
let
|
|
97
|
-
if (!
|
|
95
|
+
}, B = v(async () => {
|
|
96
|
+
let h = s?.id;
|
|
97
|
+
if (!s)
|
|
98
98
|
try {
|
|
99
|
-
console.warn(`No working ${
|
|
100
|
-
const
|
|
101
|
-
await
|
|
102
|
-
genericViewPostModel:
|
|
103
|
-
viewType:
|
|
104
|
-
projectName:
|
|
105
|
-
}).unwrap(),
|
|
106
|
-
} catch (
|
|
107
|
-
|
|
99
|
+
console.warn(`No working ${t.toLowerCase()} found, creating a new one`);
|
|
100
|
+
const $ = ve();
|
|
101
|
+
await w({
|
|
102
|
+
genericViewPostModel: $,
|
|
103
|
+
viewType: o,
|
|
104
|
+
projectName: l
|
|
105
|
+
}).unwrap(), h = $.id;
|
|
106
|
+
} catch ($) {
|
|
107
|
+
x.error(`Failed to create working ${t}: ${$}`);
|
|
108
108
|
}
|
|
109
|
-
V(
|
|
110
|
-
}, [
|
|
109
|
+
V(h);
|
|
110
|
+
}, [s, o, w, l, V]), F = async (h) => {
|
|
111
111
|
try {
|
|
112
|
-
await m(
|
|
113
|
-
} catch (
|
|
114
|
-
|
|
112
|
+
await m(h), V(h);
|
|
113
|
+
} catch ($) {
|
|
114
|
+
x.error($);
|
|
115
115
|
}
|
|
116
|
-
}, [
|
|
116
|
+
}, [S, { isLoading: f }] = Be({
|
|
117
117
|
addon: "powerpack",
|
|
118
118
|
remote: "views",
|
|
119
119
|
module: "getCustomViews",
|
|
120
|
-
fallback:
|
|
120
|
+
fallback: nt,
|
|
121
121
|
// minVersion: minVersion,
|
|
122
|
-
skip: !
|
|
123
|
-
}), { myViews:
|
|
124
|
-
viewsList:
|
|
125
|
-
onEdit:
|
|
122
|
+
skip: !o || !n
|
|
123
|
+
}), { myViews: y, sharedViews: b, allPrivateViews: D } = S({
|
|
124
|
+
viewsList: C,
|
|
125
|
+
onEdit: p,
|
|
126
126
|
onSelect: V,
|
|
127
|
-
onSave:
|
|
128
|
-
}),
|
|
129
|
-
(
|
|
130
|
-
|
|
127
|
+
onSave: F
|
|
128
|
+
}), I = v(
|
|
129
|
+
(h) => {
|
|
130
|
+
i({ ...r, [h]: !r[h] });
|
|
131
131
|
},
|
|
132
|
-
[
|
|
133
|
-
),
|
|
134
|
-
{ id: "myViews", title: `My ${
|
|
132
|
+
[r, i]
|
|
133
|
+
), E = q(() => [
|
|
134
|
+
{ id: "myViews", title: `My ${t.toLowerCase()}s`, items: y },
|
|
135
135
|
{
|
|
136
136
|
id: "sharedViews",
|
|
137
|
-
title: `Shared ${
|
|
138
|
-
items:
|
|
137
|
+
title: `Shared ${t.toLowerCase()}s`,
|
|
138
|
+
items: b
|
|
139
139
|
},
|
|
140
140
|
{
|
|
141
141
|
id: "allPrivateViews",
|
|
142
|
-
title: `All private ${
|
|
143
|
-
items:
|
|
142
|
+
title: `All private ${t.toLowerCase()}s`,
|
|
143
|
+
items: D
|
|
144
144
|
}
|
|
145
|
-
], [
|
|
146
|
-
...
|
|
147
|
-
onClick:
|
|
145
|
+
], [y, b, D]), O = q(() => ({
|
|
146
|
+
...k,
|
|
147
|
+
onClick: B,
|
|
148
148
|
// expose reset button when handler is provided
|
|
149
|
-
isEditable: !!
|
|
150
|
-
onResetView:
|
|
151
|
-
}), [
|
|
149
|
+
isEditable: !!g,
|
|
150
|
+
onResetView: g
|
|
151
|
+
}), [B, g]);
|
|
152
152
|
return q(() => {
|
|
153
|
-
const
|
|
154
|
-
return
|
|
155
|
-
const
|
|
156
|
-
if (
|
|
153
|
+
const h = [O], $ = E.filter((U) => n && (U.items?.length || 0) > 0);
|
|
154
|
+
return $.length > 0 && h.push(Ze), $.forEach((U) => {
|
|
155
|
+
const H = !!r[U.id];
|
|
156
|
+
if (h.push({
|
|
157
157
|
type: "section",
|
|
158
|
-
id:
|
|
159
|
-
title:
|
|
160
|
-
collapsed:
|
|
161
|
-
onToggle: () =>
|
|
162
|
-
}), !
|
|
163
|
-
|
|
164
|
-
else if (
|
|
165
|
-
const
|
|
166
|
-
|
|
158
|
+
id: U.id,
|
|
159
|
+
title: U.title,
|
|
160
|
+
collapsed: H,
|
|
161
|
+
onToggle: () => I(U.id)
|
|
162
|
+
}), !H)
|
|
163
|
+
h.push(...U.items);
|
|
164
|
+
else if (d) {
|
|
165
|
+
const Q = U.items.find((P) => P.id === d);
|
|
166
|
+
Q && h.push(Q);
|
|
167
167
|
}
|
|
168
|
-
}),
|
|
169
|
-
}, [
|
|
170
|
-
},
|
|
171
|
-
const { currentData:
|
|
172
|
-
{ viewType: e, projectName:
|
|
168
|
+
}), h;
|
|
169
|
+
}, [O, E, r, I, d, n]);
|
|
170
|
+
}, at = ({ viewType: e, projectName: s }) => {
|
|
171
|
+
const { currentData: o, isLoading: t } = fe(
|
|
172
|
+
{ viewType: e, projectName: s },
|
|
173
173
|
{ skip: !e }
|
|
174
|
-
), [
|
|
175
|
-
return [
|
|
174
|
+
), [l] = ne(), c = oe({}), a = c.current[e];
|
|
175
|
+
return [o, async (r) => {
|
|
176
176
|
if (!e) throw "No view type provided for setting default view";
|
|
177
|
-
|
|
177
|
+
o?.id && o.id !== r && (c.current[e] = o.id);
|
|
178
178
|
try {
|
|
179
|
-
await
|
|
179
|
+
await l({
|
|
180
180
|
setDefaultViewRequestModel: {
|
|
181
|
-
viewId:
|
|
181
|
+
viewId: r
|
|
182
182
|
},
|
|
183
183
|
viewType: e,
|
|
184
|
-
projectName:
|
|
184
|
+
projectName: s
|
|
185
185
|
}).unwrap();
|
|
186
|
-
} catch (
|
|
187
|
-
|
|
186
|
+
} catch (i) {
|
|
187
|
+
x.warn(`Failed to set default view: ${i}`);
|
|
188
188
|
}
|
|
189
|
-
},
|
|
190
|
-
},
|
|
189
|
+
}, a, t];
|
|
190
|
+
}, ct = ({
|
|
191
191
|
viewType: e,
|
|
192
|
-
projectName:
|
|
193
|
-
viewsList:
|
|
194
|
-
onCreate:
|
|
195
|
-
onDelete:
|
|
196
|
-
onUpdate:
|
|
192
|
+
projectName: s,
|
|
193
|
+
viewsList: o,
|
|
194
|
+
onCreate: t,
|
|
195
|
+
onDelete: l,
|
|
196
|
+
onUpdate: c
|
|
197
197
|
}) => {
|
|
198
|
-
const
|
|
199
|
-
async (n,
|
|
198
|
+
const a = ot(), [u] = ie(), [r] = Ve(), [i] = pe(), [V] = ne(), p = v(
|
|
199
|
+
async (n, w) => {
|
|
200
200
|
if (!e)
|
|
201
201
|
throw new Error("viewType are required for creating a view");
|
|
202
202
|
try {
|
|
203
|
-
await
|
|
203
|
+
await u({
|
|
204
204
|
viewType: e,
|
|
205
|
-
projectName:
|
|
205
|
+
projectName: w ? void 0 : s,
|
|
206
206
|
genericViewPostModel: n
|
|
207
|
-
}).unwrap(),
|
|
208
|
-
} catch (
|
|
209
|
-
throw
|
|
207
|
+
}).unwrap(), t && t(n);
|
|
208
|
+
} catch (C) {
|
|
209
|
+
throw C;
|
|
210
210
|
}
|
|
211
211
|
},
|
|
212
|
-
[
|
|
213
|
-
), m =
|
|
214
|
-
async (n,
|
|
212
|
+
[u, e, s, t]
|
|
213
|
+
), m = v(
|
|
214
|
+
async (n, w, C) => {
|
|
215
215
|
if (!e)
|
|
216
216
|
throw new Error("viewType are required for updating a view");
|
|
217
217
|
try {
|
|
218
|
-
await
|
|
218
|
+
await i({
|
|
219
219
|
viewId: n,
|
|
220
220
|
viewType: e,
|
|
221
|
-
projectName:
|
|
222
|
-
genericViewPatchModel:
|
|
223
|
-
}).unwrap(),
|
|
224
|
-
} catch (
|
|
225
|
-
throw
|
|
221
|
+
projectName: C ? void 0 : s,
|
|
222
|
+
genericViewPatchModel: w
|
|
223
|
+
}).unwrap(), c && c({ ...w, id: n });
|
|
224
|
+
} catch (k) {
|
|
225
|
+
throw k;
|
|
226
226
|
}
|
|
227
227
|
},
|
|
228
|
-
[
|
|
229
|
-
),
|
|
230
|
-
async (n,
|
|
228
|
+
[i, e, s, c]
|
|
229
|
+
), g = v(
|
|
230
|
+
async (n, w) => {
|
|
231
231
|
if (!e)
|
|
232
232
|
throw new Error("viewType are required for deleting a view");
|
|
233
233
|
try {
|
|
234
|
-
await
|
|
234
|
+
await r({
|
|
235
235
|
viewType: e,
|
|
236
|
-
projectName:
|
|
236
|
+
projectName: w ? void 0 : s,
|
|
237
237
|
viewId: n
|
|
238
|
-
}).unwrap(),
|
|
239
|
-
} catch (
|
|
240
|
-
throw
|
|
238
|
+
}).unwrap(), l && l(n);
|
|
239
|
+
} catch (C) {
|
|
240
|
+
throw C;
|
|
241
241
|
}
|
|
242
242
|
},
|
|
243
|
-
[
|
|
244
|
-
),
|
|
243
|
+
[r, e, s, l]
|
|
244
|
+
), d = v(
|
|
245
245
|
async (n) => {
|
|
246
|
-
const { existingWorkingViewId:
|
|
246
|
+
const { existingWorkingViewId: w, selectedViewId: C, setSelectedView: k, setSettingsChanged: B, notify: F } = n || {};
|
|
247
247
|
if (!e)
|
|
248
248
|
throw new Error("viewType are required for resetting a view");
|
|
249
249
|
try {
|
|
250
|
-
|
|
250
|
+
a(
|
|
251
251
|
A.util.invalidateTags([
|
|
252
|
-
{ type: "Views", id: `base-${e}-${
|
|
252
|
+
{ type: "Views", id: `base-${e}-${s}` },
|
|
253
253
|
{ type: "Views", id: `base-${e}` }
|
|
254
254
|
])
|
|
255
255
|
);
|
|
256
|
-
const
|
|
256
|
+
const y = (await a(
|
|
257
257
|
A.endpoints.getBaseView.initiate(
|
|
258
|
-
{ viewType: e, projectName:
|
|
258
|
+
{ viewType: e, projectName: s },
|
|
259
259
|
{ subscribe: !1, forceRefetch: !0 }
|
|
260
260
|
)
|
|
261
261
|
)).data;
|
|
262
|
-
let
|
|
263
|
-
if (
|
|
264
|
-
|
|
262
|
+
let b = {}, D = "default";
|
|
263
|
+
if (y && y.settings && Object.keys(y.settings).length > 0)
|
|
264
|
+
b = y.settings, D = "project";
|
|
265
265
|
else {
|
|
266
|
-
const
|
|
266
|
+
const h = (await a(
|
|
267
267
|
A.endpoints.getBaseView.initiate(
|
|
268
268
|
{ viewType: e },
|
|
269
269
|
{ subscribe: !1, forceRefetch: !0 }
|
|
270
270
|
)
|
|
271
271
|
)).data;
|
|
272
|
-
|
|
272
|
+
h && h.settings && Object.keys(h.settings).length > 0 && (b = h.settings, D = "studio");
|
|
273
273
|
}
|
|
274
|
-
const
|
|
275
|
-
if (
|
|
276
|
-
viewId:
|
|
274
|
+
const I = w ?? ve().id;
|
|
275
|
+
if (w ? await i({
|
|
276
|
+
viewId: w,
|
|
277
277
|
viewType: e,
|
|
278
|
-
projectName:
|
|
279
|
-
genericViewPatchModel: { settings:
|
|
280
|
-
}).unwrap() : await
|
|
278
|
+
projectName: s,
|
|
279
|
+
genericViewPatchModel: { settings: b }
|
|
280
|
+
}).unwrap() : await u({
|
|
281
281
|
viewType: e,
|
|
282
|
-
projectName:
|
|
282
|
+
projectName: s,
|
|
283
283
|
genericViewPostModel: {
|
|
284
|
-
id:
|
|
284
|
+
id: I,
|
|
285
285
|
label: "Working",
|
|
286
286
|
working: !0,
|
|
287
|
-
settings:
|
|
287
|
+
settings: b
|
|
288
288
|
}
|
|
289
289
|
}).unwrap(), await V({
|
|
290
290
|
viewType: e,
|
|
291
|
-
projectName:
|
|
292
|
-
setDefaultViewRequestModel: { viewId:
|
|
293
|
-
}).unwrap(),
|
|
294
|
-
const
|
|
295
|
-
|
|
291
|
+
projectName: s,
|
|
292
|
+
setDefaultViewRequestModel: { viewId: I }
|
|
293
|
+
}).unwrap(), k && k(I), B && B(!1), F) {
|
|
294
|
+
const O = D === "project" ? "View reset to project default view" : D === "studio" ? "View reset to studio default view" : "View reset to default settings";
|
|
295
|
+
x.success(O);
|
|
296
296
|
}
|
|
297
|
-
return
|
|
298
|
-
} catch (
|
|
299
|
-
throw
|
|
297
|
+
return I;
|
|
298
|
+
} catch (S) {
|
|
299
|
+
throw F && x.error("Failed to reset view to default"), S;
|
|
300
300
|
}
|
|
301
301
|
},
|
|
302
|
-
[
|
|
302
|
+
[u, i, V, e, s, a]
|
|
303
303
|
);
|
|
304
304
|
return {
|
|
305
|
-
onCreateView:
|
|
305
|
+
onCreateView: p,
|
|
306
306
|
onUpdateView: m,
|
|
307
|
-
onDeleteView:
|
|
308
|
-
onResetWorkingView:
|
|
307
|
+
onDeleteView: g,
|
|
308
|
+
onResetWorkingView: d
|
|
309
309
|
};
|
|
310
|
-
},
|
|
310
|
+
}, lt = ({
|
|
311
311
|
viewType: e,
|
|
312
|
-
projectName:
|
|
313
|
-
viewSettings:
|
|
314
|
-
workingView:
|
|
315
|
-
dispatch:
|
|
312
|
+
projectName: s,
|
|
313
|
+
viewSettings: o,
|
|
314
|
+
workingView: t,
|
|
315
|
+
dispatch: l
|
|
316
316
|
}) => {
|
|
317
|
-
const [
|
|
318
|
-
async (
|
|
317
|
+
const [c] = ie(), [a] = pe(), [u] = Ve(), [r] = ne(), i = v(
|
|
318
|
+
async (g) => {
|
|
319
319
|
try {
|
|
320
|
-
const
|
|
320
|
+
const w = await c({
|
|
321
321
|
genericViewPostModel: {
|
|
322
|
-
label:
|
|
322
|
+
label: Ie,
|
|
323
323
|
working: !1,
|
|
324
|
-
settings:
|
|
324
|
+
settings: o || {}
|
|
325
325
|
},
|
|
326
326
|
viewType: e,
|
|
327
|
-
projectName:
|
|
327
|
+
projectName: g ? void 0 : s
|
|
328
328
|
}).unwrap();
|
|
329
|
-
|
|
329
|
+
l(
|
|
330
330
|
A.util.invalidateTags([
|
|
331
|
-
{ type: "view", id:
|
|
332
|
-
|
|
331
|
+
{ type: "view", id: w.id },
|
|
332
|
+
te(e, g ? void 0 : s)
|
|
333
333
|
])
|
|
334
334
|
);
|
|
335
|
-
const
|
|
336
|
-
|
|
337
|
-
} catch (
|
|
338
|
-
const n =
|
|
339
|
-
|
|
335
|
+
const C = g ? "Studio" : "Project";
|
|
336
|
+
x.success(`${C} default view created successfully`);
|
|
337
|
+
} catch (d) {
|
|
338
|
+
const n = g ? "studio" : "project";
|
|
339
|
+
x.error(`Failed to create ${n} base view: ${d?.message || d}`);
|
|
340
340
|
}
|
|
341
341
|
},
|
|
342
|
-
[
|
|
343
|
-
), V =
|
|
344
|
-
async (
|
|
342
|
+
[c, e, s, o, l]
|
|
343
|
+
), V = v(
|
|
344
|
+
async (g, d) => {
|
|
345
345
|
try {
|
|
346
|
-
await
|
|
347
|
-
viewId:
|
|
346
|
+
await a({
|
|
347
|
+
viewId: g,
|
|
348
348
|
viewType: e,
|
|
349
|
-
projectName:
|
|
350
|
-
genericViewPatchModel: { settings:
|
|
351
|
-
}).unwrap(),
|
|
349
|
+
projectName: d ? void 0 : s,
|
|
350
|
+
genericViewPatchModel: { settings: o || {} }
|
|
351
|
+
}).unwrap(), l(
|
|
352
352
|
A.util.invalidateTags([
|
|
353
|
-
{ type: "view", id:
|
|
354
|
-
|
|
353
|
+
{ type: "view", id: g },
|
|
354
|
+
te(e, d ? void 0 : s)
|
|
355
355
|
])
|
|
356
356
|
);
|
|
357
|
-
const
|
|
358
|
-
|
|
357
|
+
const w = d ? "Studio" : "Project";
|
|
358
|
+
x.success(`${w} default view updated successfully`);
|
|
359
359
|
} catch (n) {
|
|
360
|
-
const
|
|
361
|
-
|
|
360
|
+
const w = d ? "studio" : "project";
|
|
361
|
+
x.error(`Failed to update ${w} base view: ${n?.message || n}`);
|
|
362
362
|
}
|
|
363
363
|
},
|
|
364
|
-
[
|
|
365
|
-
),
|
|
366
|
-
async (
|
|
364
|
+
[a, e, s, o, l]
|
|
365
|
+
), p = v(
|
|
366
|
+
async (g, d) => {
|
|
367
367
|
try {
|
|
368
|
-
await
|
|
369
|
-
viewId:
|
|
368
|
+
await u({
|
|
369
|
+
viewId: g,
|
|
370
370
|
viewType: e,
|
|
371
|
-
projectName:
|
|
372
|
-
}).unwrap(),
|
|
371
|
+
projectName: d ? void 0 : s
|
|
372
|
+
}).unwrap(), l(
|
|
373
373
|
A.util.invalidateTags([
|
|
374
|
-
{ type: "view", id:
|
|
375
|
-
|
|
374
|
+
{ type: "view", id: g },
|
|
375
|
+
te(e, d ? void 0 : s)
|
|
376
376
|
])
|
|
377
377
|
);
|
|
378
|
-
const n =
|
|
379
|
-
|
|
378
|
+
const n = d ? "Studio" : "Project";
|
|
379
|
+
x.success(`${n} default view removed successfully`);
|
|
380
380
|
} catch (n) {
|
|
381
|
-
const
|
|
382
|
-
|
|
381
|
+
const w = d ? "studio" : "project";
|
|
382
|
+
x.error(`Failed to remove ${w} base view: ${n?.message || n}`);
|
|
383
383
|
}
|
|
384
384
|
},
|
|
385
|
-
[
|
|
386
|
-
), m =
|
|
387
|
-
async (
|
|
385
|
+
[u, e, s, l]
|
|
386
|
+
), m = v(
|
|
387
|
+
async (g) => {
|
|
388
388
|
try {
|
|
389
|
-
if (!
|
|
389
|
+
if (!t?.id)
|
|
390
390
|
throw new Error("No working view available to update");
|
|
391
|
-
const
|
|
391
|
+
const w = (await l(
|
|
392
392
|
A.endpoints.getBaseView.initiate(
|
|
393
393
|
{
|
|
394
394
|
viewType: e,
|
|
395
|
-
projectName:
|
|
395
|
+
projectName: g ? void 0 : s
|
|
396
396
|
},
|
|
397
397
|
{ subscribe: !1, forceRefetch: !0 }
|
|
398
398
|
)
|
|
399
399
|
)).data;
|
|
400
|
-
if (!
|
|
400
|
+
if (!w || !w.settings)
|
|
401
401
|
throw new Error("Base view not found or has no settings");
|
|
402
|
-
await
|
|
403
|
-
viewId:
|
|
402
|
+
await a({
|
|
403
|
+
viewId: t.id,
|
|
404
404
|
viewType: e,
|
|
405
|
-
projectName:
|
|
406
|
-
genericViewPatchModel: { settings:
|
|
407
|
-
}).unwrap(), await
|
|
405
|
+
projectName: s,
|
|
406
|
+
genericViewPatchModel: { settings: w.settings }
|
|
407
|
+
}).unwrap(), await r({
|
|
408
408
|
viewType: e,
|
|
409
|
-
projectName:
|
|
410
|
-
setDefaultViewRequestModel: { viewId:
|
|
409
|
+
projectName: s,
|
|
410
|
+
setDefaultViewRequestModel: { viewId: t.id }
|
|
411
411
|
}).unwrap();
|
|
412
|
-
const
|
|
413
|
-
|
|
414
|
-
} catch (
|
|
415
|
-
const n =
|
|
416
|
-
|
|
412
|
+
const C = g ? "Studio" : "Project";
|
|
413
|
+
x.success(`Loaded ${C} default view to working view`);
|
|
414
|
+
} catch (d) {
|
|
415
|
+
const n = g ? "studio" : "project";
|
|
416
|
+
x.error(`Failed to load ${n} base view: ${d?.message || d}`);
|
|
417
417
|
}
|
|
418
418
|
},
|
|
419
|
-
[
|
|
419
|
+
[t, a, r, e, s, l]
|
|
420
420
|
);
|
|
421
421
|
return {
|
|
422
|
-
onCreateBaseView:
|
|
422
|
+
onCreateBaseView: i,
|
|
423
423
|
onUpdateBaseView: V,
|
|
424
|
-
onDeleteBaseView:
|
|
424
|
+
onDeleteBaseView: p,
|
|
425
425
|
onLoadBaseView: m
|
|
426
426
|
};
|
|
427
|
-
},
|
|
427
|
+
}, Me = (e, s) => e ? s.find((t) => t.id === e)?.scope === "studio" : !0, dt = ({
|
|
428
428
|
viewType: e,
|
|
429
|
-
projectName:
|
|
430
|
-
viewsList:
|
|
431
|
-
sourceSettings:
|
|
432
|
-
onUpdateView:
|
|
433
|
-
}) => ({ onSaveViewFromCurrent:
|
|
434
|
-
async (
|
|
429
|
+
projectName: s,
|
|
430
|
+
viewsList: o,
|
|
431
|
+
sourceSettings: t,
|
|
432
|
+
onUpdateView: l
|
|
433
|
+
}) => ({ onSaveViewFromCurrent: v(
|
|
434
|
+
async (a) => {
|
|
435
435
|
if (!e)
|
|
436
436
|
throw "viewType are required for saving a view from another view";
|
|
437
|
-
if (!
|
|
437
|
+
if (!t)
|
|
438
438
|
throw "sourceView is required for saving a view from another view";
|
|
439
439
|
try {
|
|
440
|
-
await
|
|
441
|
-
|
|
440
|
+
await l(
|
|
441
|
+
a,
|
|
442
442
|
{
|
|
443
|
-
settings:
|
|
443
|
+
settings: t
|
|
444
444
|
},
|
|
445
|
-
|
|
446
|
-
),
|
|
447
|
-
} catch (
|
|
448
|
-
const
|
|
449
|
-
throw console.error(
|
|
445
|
+
Me(a, o)
|
|
446
|
+
), x.success("View settings saved");
|
|
447
|
+
} catch (u) {
|
|
448
|
+
const r = typeof u == "string" ? "Failed to save view settings: " + u : "Failed to save view settings";
|
|
449
|
+
throw console.error(r), r;
|
|
450
450
|
}
|
|
451
451
|
},
|
|
452
|
-
[e,
|
|
453
|
-
) }),
|
|
452
|
+
[e, s, t]
|
|
453
|
+
) }), ut = ({
|
|
454
454
|
viewType: e
|
|
455
455
|
}) => {
|
|
456
|
-
const [
|
|
457
|
-
(
|
|
458
|
-
e &&
|
|
456
|
+
const [s, o] = R({}), t = v(
|
|
457
|
+
(c) => {
|
|
458
|
+
e && o((a) => ({ ...a, [e]: c }));
|
|
459
459
|
},
|
|
460
|
-
[e,
|
|
460
|
+
[e, o]
|
|
461
461
|
);
|
|
462
|
-
return [e ?
|
|
463
|
-
},
|
|
462
|
+
return [e ? s[e] : !1, t];
|
|
463
|
+
}, wt = "view", gt = [], Yt = ({
|
|
464
464
|
children: e,
|
|
465
|
-
viewType:
|
|
466
|
-
viewAlias:
|
|
467
|
-
projectName:
|
|
468
|
-
dispatch:
|
|
469
|
-
include:
|
|
470
|
-
debug:
|
|
465
|
+
viewType: s,
|
|
466
|
+
viewAlias: o = wt,
|
|
467
|
+
projectName: t,
|
|
468
|
+
dispatch: l,
|
|
469
|
+
include: c,
|
|
470
|
+
debug: a,
|
|
471
|
+
controlled: u
|
|
471
472
|
}) => {
|
|
472
|
-
const
|
|
473
|
-
let { powerLicense:
|
|
474
|
-
|
|
475
|
-
const { user:
|
|
476
|
-
|
|
473
|
+
const r = u ? void 0 : s, i = c?.viewsList ?? !0, V = c?.baseViews ?? !0;
|
|
474
|
+
let { powerLicense: p } = z();
|
|
475
|
+
a?.powerLicense !== void 0 && (console.warn("Using debug power license:", a.powerLicense), p = a.powerLicense);
|
|
476
|
+
const { user: m } = ye(), [g, d] = R(!1), [n, w] = R(null), C = "viewsMenuCollapsed", [k, B] = ke(
|
|
477
|
+
C,
|
|
477
478
|
{}
|
|
478
|
-
),
|
|
479
|
-
const
|
|
480
|
-
if (
|
|
481
|
-
const
|
|
482
|
-
|
|
479
|
+
), F = (M) => {
|
|
480
|
+
const j = M.visibility === "private" ? "myViews" : "sharedViews";
|
|
481
|
+
if (k[j]) {
|
|
482
|
+
const ue = { ...k };
|
|
483
|
+
ue[j] = !1, B(ue);
|
|
483
484
|
}
|
|
484
|
-
}, { data:
|
|
485
|
-
{ projectName:
|
|
486
|
-
{ skip: !
|
|
487
|
-
), [
|
|
488
|
-
viewType:
|
|
489
|
-
projectName:
|
|
490
|
-
}), [
|
|
491
|
-
viewType:
|
|
492
|
-
}), { currentData:
|
|
493
|
-
{ projectName:
|
|
494
|
-
{ skip: !
|
|
495
|
-
),
|
|
496
|
-
() =>
|
|
497
|
-
(
|
|
485
|
+
}, { data: S } = Xe(
|
|
486
|
+
{ projectName: t },
|
|
487
|
+
{ skip: !p || !n }
|
|
488
|
+
), [f, y, b, D] = at({
|
|
489
|
+
viewType: r,
|
|
490
|
+
projectName: t
|
|
491
|
+
}), [I, E] = ut({
|
|
492
|
+
viewType: r
|
|
493
|
+
}), { currentData: O = gt, isLoading: _ } = me(
|
|
494
|
+
{ projectName: t, viewType: r },
|
|
495
|
+
{ skip: !r || !i }
|
|
496
|
+
), h = q(
|
|
497
|
+
() => O.filter(
|
|
498
|
+
(M) => M.label !== Ie && !(t && M.working && M.scope === "studio")
|
|
498
499
|
),
|
|
499
|
-
[
|
|
500
|
-
), { onCreateView:
|
|
501
|
-
viewType:
|
|
502
|
-
projectName:
|
|
503
|
-
viewsList:
|
|
504
|
-
onCreate:
|
|
500
|
+
[O]
|
|
501
|
+
), { onCreateView: $, onDeleteView: U, onUpdateView: H, onResetWorkingView: Q } = ct({
|
|
502
|
+
viewType: r,
|
|
503
|
+
projectName: t,
|
|
504
|
+
viewsList: h,
|
|
505
|
+
onCreate: F
|
|
505
506
|
}), {
|
|
506
507
|
currentData: P,
|
|
507
|
-
isLoading:
|
|
508
|
-
isError:
|
|
509
|
-
} =
|
|
510
|
-
{ projectName:
|
|
511
|
-
{ skip: !
|
|
512
|
-
), { currentData:
|
|
513
|
-
{ projectName:
|
|
514
|
-
{ skip: !
|
|
515
|
-
), { currentData:
|
|
516
|
-
{ projectName: void 0, viewType:
|
|
517
|
-
{ skip: !
|
|
518
|
-
),
|
|
508
|
+
isLoading: xe,
|
|
509
|
+
isError: Fe
|
|
510
|
+
} = he(
|
|
511
|
+
{ projectName: t, viewType: r },
|
|
512
|
+
{ skip: !r }
|
|
513
|
+
), { currentData: Se, isLoading: Oe } = Z(
|
|
514
|
+
{ projectName: t, viewType: r },
|
|
515
|
+
{ skip: !r || !V }
|
|
516
|
+
), { currentData: $e, isLoading: Re } = Z(
|
|
517
|
+
{ projectName: void 0, viewType: r },
|
|
518
|
+
{ skip: !r || !V }
|
|
519
|
+
), We = _ || D || xe || Oe || Re, ae = P?.settings, N = u ? u.settings : f?.id === re ? ae : f?.settings, T = u?.onChange, ce = f?.id === P?.id, le = I && ce && b && b !== P?.id ? b : void 0, { currentData: ee, isFetching: Ue } = je(
|
|
519
520
|
{
|
|
520
|
-
viewId:
|
|
521
|
-
projectName:
|
|
522
|
-
viewType:
|
|
521
|
+
viewId: n,
|
|
522
|
+
projectName: Me(n, h) ? void 0 : t,
|
|
523
|
+
viewType: r
|
|
523
524
|
},
|
|
524
|
-
{ skip: typeof
|
|
525
|
-
),
|
|
526
|
-
() =>
|
|
527
|
-
[
|
|
528
|
-
), { onSaveViewFromCurrent:
|
|
529
|
-
viewType:
|
|
530
|
-
projectName:
|
|
531
|
-
viewsList:
|
|
525
|
+
{ skip: typeof n != "string" || !p }
|
|
526
|
+
), _e = q(
|
|
527
|
+
() => n === ee?.id ? ee : void 0,
|
|
528
|
+
[n, ee]
|
|
529
|
+
), { onSaveViewFromCurrent: qe } = dt({
|
|
530
|
+
viewType: r,
|
|
531
|
+
projectName: t,
|
|
532
|
+
viewsList: h,
|
|
532
533
|
sourceSettings: N,
|
|
533
|
-
onUpdateView:
|
|
534
|
-
}), { onCreateBaseView:
|
|
535
|
-
viewType:
|
|
536
|
-
projectName:
|
|
534
|
+
onUpdateView: H
|
|
535
|
+
}), { onCreateBaseView: Ae, onUpdateBaseView: He, onDeleteBaseView: Ge, onLoadBaseView: Je } = lt({
|
|
536
|
+
viewType: r,
|
|
537
|
+
projectName: t,
|
|
537
538
|
viewSettings: N,
|
|
538
539
|
workingView: P,
|
|
539
|
-
dispatch:
|
|
540
|
-
}),
|
|
541
|
-
async (
|
|
540
|
+
dispatch: l
|
|
541
|
+
}), Ke = v(
|
|
542
|
+
async (M, { selectView: j } = {}) => {
|
|
542
543
|
if (!P?.id) {
|
|
543
544
|
console.error("No working view to update");
|
|
544
545
|
return;
|
|
545
546
|
}
|
|
546
|
-
await
|
|
547
|
+
await H(P.id, M, !t), j && y(P.id);
|
|
547
548
|
},
|
|
548
|
-
[
|
|
549
|
-
),
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
549
|
+
[H, P]
|
|
550
|
+
), de = v(async () => {
|
|
551
|
+
if (!T)
|
|
552
|
+
try {
|
|
553
|
+
await Q({
|
|
554
|
+
existingWorkingViewId: P?.id,
|
|
555
|
+
selectedViewId: f?.id,
|
|
556
|
+
setSelectedView: y,
|
|
557
|
+
setSettingsChanged: E,
|
|
558
|
+
notify: !0
|
|
559
|
+
});
|
|
560
|
+
} catch (M) {
|
|
561
|
+
console.error("Failed to reset view:", M);
|
|
562
|
+
}
|
|
563
|
+
}, [
|
|
564
|
+
T,
|
|
565
|
+
P,
|
|
566
|
+
Q,
|
|
567
|
+
f,
|
|
568
|
+
y,
|
|
569
|
+
E
|
|
570
|
+
]), Qe = rt({
|
|
571
|
+
viewsList: h,
|
|
563
572
|
workingView: P,
|
|
564
|
-
viewType:
|
|
565
|
-
viewAlias:
|
|
566
|
-
projectName:
|
|
567
|
-
currentUser:
|
|
568
|
-
useWorkingView: !
|
|
569
|
-
editingViewId:
|
|
570
|
-
selectedId:
|
|
571
|
-
collapsed:
|
|
572
|
-
setCollapsed:
|
|
573
|
-
onResetWorkingView:
|
|
574
|
-
onSelect: (
|
|
575
|
-
|
|
573
|
+
viewType: r,
|
|
574
|
+
viewAlias: o,
|
|
575
|
+
projectName: t,
|
|
576
|
+
currentUser: m,
|
|
577
|
+
useWorkingView: !p,
|
|
578
|
+
editingViewId: le,
|
|
579
|
+
selectedId: f?.id,
|
|
580
|
+
collapsed: k,
|
|
581
|
+
setCollapsed: B,
|
|
582
|
+
onResetWorkingView: de,
|
|
583
|
+
onSelect: (M) => {
|
|
584
|
+
y(M), E(!1), d(!1);
|
|
576
585
|
},
|
|
577
|
-
onEdit: (
|
|
578
|
-
onSave: async (
|
|
579
|
-
}),
|
|
580
|
-
viewType:
|
|
581
|
-
viewAlias:
|
|
582
|
-
projectName:
|
|
583
|
-
isMenuOpen:
|
|
584
|
-
editingView:
|
|
585
|
-
currentUser:
|
|
586
|
-
selectedView:
|
|
586
|
+
onEdit: (M) => w(M),
|
|
587
|
+
onSave: async (M) => qe(M)
|
|
588
|
+
}), ze = {
|
|
589
|
+
viewType: r,
|
|
590
|
+
viewAlias: o,
|
|
591
|
+
projectName: t,
|
|
592
|
+
isMenuOpen: g,
|
|
593
|
+
editingView: n,
|
|
594
|
+
currentUser: m,
|
|
595
|
+
selectedView: f,
|
|
587
596
|
viewSettings: N,
|
|
588
|
-
editingViewData:
|
|
589
|
-
isLoadingEditingViewData:
|
|
590
|
-
viewsList:
|
|
597
|
+
editingViewData: _e,
|
|
598
|
+
isLoadingEditingViewData: Ue,
|
|
599
|
+
viewsList: h,
|
|
591
600
|
// Working view
|
|
592
|
-
workingSettings:
|
|
601
|
+
workingSettings: ae,
|
|
593
602
|
workingView: P,
|
|
594
|
-
isViewWorking:
|
|
595
|
-
onUpdateWorkingView:
|
|
603
|
+
isViewWorking: ce,
|
|
604
|
+
onUpdateWorkingView: Ke,
|
|
596
605
|
// base views
|
|
597
|
-
projectBaseView:
|
|
598
|
-
studioBaseView:
|
|
606
|
+
projectBaseView: Se,
|
|
607
|
+
studioBaseView: $e,
|
|
599
608
|
// base view mutations
|
|
600
|
-
onCreateBaseView:
|
|
601
|
-
onUpdateBaseView:
|
|
602
|
-
onDeleteBaseView:
|
|
603
|
-
onLoadBaseView:
|
|
604
|
-
editingViewId:
|
|
605
|
-
viewMenuItems:
|
|
606
|
-
isLoadingViews:
|
|
607
|
-
isErrorWorkingView:
|
|
609
|
+
onCreateBaseView: Ae,
|
|
610
|
+
onUpdateBaseView: He,
|
|
611
|
+
onDeleteBaseView: Ge,
|
|
612
|
+
onLoadBaseView: Je,
|
|
613
|
+
editingViewId: le,
|
|
614
|
+
viewMenuItems: Qe,
|
|
615
|
+
isLoadingViews: We,
|
|
616
|
+
isErrorWorkingView: Fe,
|
|
608
617
|
// data
|
|
609
|
-
shareOptions:
|
|
610
|
-
setIsMenuOpen:
|
|
611
|
-
setEditingView:
|
|
612
|
-
setSelectedView:
|
|
613
|
-
onSettingsChanged:
|
|
618
|
+
shareOptions: S,
|
|
619
|
+
setIsMenuOpen: d,
|
|
620
|
+
setEditingView: w,
|
|
621
|
+
setSelectedView: y,
|
|
622
|
+
onSettingsChanged: E,
|
|
614
623
|
// mutations
|
|
615
|
-
onCreateView:
|
|
616
|
-
onUpdateView:
|
|
617
|
-
onDeleteView:
|
|
624
|
+
onCreateView: $,
|
|
625
|
+
onUpdateView: H,
|
|
626
|
+
onDeleteView: U,
|
|
618
627
|
// shared actions
|
|
619
|
-
resetWorkingView:
|
|
628
|
+
resetWorkingView: de,
|
|
629
|
+
updateControlledSettings: T,
|
|
620
630
|
// api
|
|
621
631
|
api: A,
|
|
622
|
-
dispatch:
|
|
632
|
+
dispatch: l
|
|
623
633
|
};
|
|
624
|
-
return /* @__PURE__ */
|
|
625
|
-
},
|
|
634
|
+
return /* @__PURE__ */ L(Ne.Provider, { value: ze, children: e });
|
|
635
|
+
}, ft = (e) => `${e}-views-portal`, Ee = (e) => e ? document.getElementById(ft(e)) : null, Vt = K(X)`
|
|
626
636
|
padding: var(--padding-s);
|
|
627
637
|
border-radius: var(--border-radius-m);
|
|
628
638
|
margin: -4px 0;
|
|
@@ -643,7 +653,7 @@ const Qt = [
|
|
|
643
653
|
background-color: var(--md-sys-color-primary-hover);
|
|
644
654
|
}
|
|
645
655
|
}
|
|
646
|
-
`,
|
|
656
|
+
`, pt = K.div`
|
|
647
657
|
position: fixed;
|
|
648
658
|
top: 0;
|
|
649
659
|
left: 0;
|
|
@@ -658,13 +668,13 @@ const Qt = [
|
|
|
658
668
|
background-color: var(--md-sys-color-surface-container-high);
|
|
659
669
|
border-radius: var(--border-radius-l);
|
|
660
670
|
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
|
|
661
|
-
`,
|
|
671
|
+
`, mt = K.li`
|
|
662
672
|
height: 1px;
|
|
663
673
|
background-color: var(--md-sys-color-outline-variant);
|
|
664
674
|
margin: 4px 0;
|
|
665
|
-
`,
|
|
675
|
+
`, ht = K.div`
|
|
666
676
|
margin-left: 6px;
|
|
667
|
-
`,
|
|
677
|
+
`, vt = K(be)`
|
|
668
678
|
padding: 0 8px 0 4px !important;
|
|
669
679
|
outline: 1px dashed var(--md-sys-color-outline);
|
|
670
680
|
margin: 0 8px 4px 0;
|
|
@@ -706,479 +716,479 @@ const Qt = [
|
|
|
706
716
|
font-variation-settings: 'FILL' 1;
|
|
707
717
|
}
|
|
708
718
|
}
|
|
709
|
-
`,
|
|
719
|
+
`, yt = ({
|
|
710
720
|
fullButton: e = !1,
|
|
711
|
-
fullButtonProps:
|
|
721
|
+
fullButtonProps: s = () => ({})
|
|
712
722
|
}) => {
|
|
713
723
|
const {
|
|
714
|
-
viewType:
|
|
715
|
-
viewAlias:
|
|
716
|
-
isMenuOpen:
|
|
717
|
-
setIsMenuOpen:
|
|
718
|
-
selectedView:
|
|
719
|
-
isViewWorking:
|
|
720
|
-
editingViewId:
|
|
721
|
-
} =
|
|
722
|
-
if (!
|
|
723
|
-
const V = (
|
|
724
|
-
|
|
725
|
-
},
|
|
724
|
+
viewType: o,
|
|
725
|
+
viewAlias: t,
|
|
726
|
+
isMenuOpen: l,
|
|
727
|
+
setIsMenuOpen: c,
|
|
728
|
+
selectedView: a,
|
|
729
|
+
isViewWorking: u,
|
|
730
|
+
editingViewId: r
|
|
731
|
+
} = J(), i = oe(null);
|
|
732
|
+
if (!o) return null;
|
|
733
|
+
const V = (d) => {
|
|
734
|
+
d.preventDefault(), d.stopPropagation(), c(!l);
|
|
735
|
+
}, p = {
|
|
726
736
|
icon: "view_quilt",
|
|
727
737
|
onClick: V,
|
|
728
|
-
className:
|
|
738
|
+
className: Le({ active: !!r, open: l }),
|
|
729
739
|
tabIndex: 0,
|
|
730
|
-
"data-tooltip":
|
|
740
|
+
"data-tooltip": u ? `Working ${t.toLowerCase()}` : `${t}: ` + a?.label || "None",
|
|
731
741
|
"data-tooltip-delay": 0,
|
|
732
|
-
onKeyDown: (
|
|
733
|
-
(
|
|
742
|
+
onKeyDown: (d) => {
|
|
743
|
+
(d.key === "Enter" || d.key === " ") && V(d);
|
|
734
744
|
}
|
|
735
|
-
}, m = e ? /* @__PURE__ */
|
|
736
|
-
return
|
|
737
|
-
},
|
|
745
|
+
}, m = e ? /* @__PURE__ */ L(be, { ...p, ...s(a) }) : /* @__PURE__ */ L(Vt, { ref: i, ...p }), g = Ee(o);
|
|
746
|
+
return g ? ge(m, g) : null;
|
|
747
|
+
}, kt = () => null, Pe = "views-dialog", Ct = ({}) => {
|
|
738
748
|
const {
|
|
739
749
|
editingView: e,
|
|
740
|
-
editingViewData:
|
|
741
|
-
isLoadingEditingViewData:
|
|
742
|
-
setEditingView:
|
|
743
|
-
viewType:
|
|
744
|
-
viewAlias:
|
|
745
|
-
projectName:
|
|
746
|
-
currentUser:
|
|
747
|
-
viewSettings:
|
|
748
|
-
shareOptions:
|
|
750
|
+
editingViewData: s,
|
|
751
|
+
isLoadingEditingViewData: o,
|
|
752
|
+
setEditingView: t,
|
|
753
|
+
viewType: l,
|
|
754
|
+
viewAlias: c,
|
|
755
|
+
projectName: a,
|
|
756
|
+
currentUser: u,
|
|
757
|
+
viewSettings: r,
|
|
758
|
+
shareOptions: i,
|
|
749
759
|
setSelectedView: V,
|
|
750
|
-
onCreateView:
|
|
760
|
+
onCreateView: p,
|
|
751
761
|
onUpdateView: m,
|
|
752
|
-
onDeleteView:
|
|
753
|
-
api:
|
|
762
|
+
onDeleteView: g,
|
|
763
|
+
api: d,
|
|
754
764
|
dispatch: n
|
|
755
|
-
} =
|
|
765
|
+
} = J(), { powerLicense: w } = z(), [C, { isLoading: k, outdated: B }] = Be({
|
|
756
766
|
addon: "powerpack",
|
|
757
767
|
remote: "views",
|
|
758
768
|
module: "ViewFormDialog",
|
|
759
|
-
fallback:
|
|
769
|
+
fallback: kt,
|
|
760
770
|
minVersion: "1.1.1",
|
|
761
|
-
skip: !
|
|
771
|
+
skip: !l || !w
|
|
762
772
|
});
|
|
763
|
-
return !
|
|
764
|
-
|
|
773
|
+
return !l || !e ? null : e && B ? /* @__PURE__ */ L(
|
|
774
|
+
st,
|
|
765
775
|
{
|
|
766
776
|
isOpen: !0,
|
|
767
777
|
header: "Powerpack Update Required",
|
|
768
|
-
onClose: () =>
|
|
778
|
+
onClose: () => t(null),
|
|
769
779
|
size: "sm",
|
|
770
|
-
children: /* @__PURE__ */
|
|
780
|
+
children: /* @__PURE__ */ G("p", { children: [
|
|
771
781
|
"Please update the Powerpack addon to at least ",
|
|
772
|
-
|
|
782
|
+
B.required
|
|
773
783
|
] })
|
|
774
784
|
}
|
|
775
|
-
) : /* @__PURE__ */
|
|
776
|
-
|
|
785
|
+
) : /* @__PURE__ */ L(
|
|
786
|
+
C,
|
|
777
787
|
{
|
|
778
788
|
editingView: {
|
|
779
789
|
viewId: e === !0 ? void 0 : e,
|
|
780
|
-
...
|
|
790
|
+
...s || {}
|
|
781
791
|
},
|
|
782
|
-
isLoading:
|
|
783
|
-
viewSettings:
|
|
784
|
-
setEditingView:
|
|
785
|
-
viewType:
|
|
786
|
-
viewAlias:
|
|
787
|
-
projectName:
|
|
788
|
-
shareOptions:
|
|
792
|
+
isLoading: o,
|
|
793
|
+
viewSettings: r,
|
|
794
|
+
setEditingView: t,
|
|
795
|
+
viewType: l,
|
|
796
|
+
viewAlias: c,
|
|
797
|
+
projectName: a,
|
|
798
|
+
shareOptions: i,
|
|
789
799
|
setSelected: V,
|
|
790
|
-
onCreateView:
|
|
800
|
+
onCreateView: p,
|
|
791
801
|
onUpdateView: m,
|
|
792
|
-
onDeleteView:
|
|
793
|
-
api:
|
|
802
|
+
onDeleteView: g,
|
|
803
|
+
api: d,
|
|
794
804
|
dispatch: n,
|
|
795
|
-
currentUser:
|
|
805
|
+
currentUser: u,
|
|
796
806
|
pt: {
|
|
797
807
|
dialog: {
|
|
798
|
-
className:
|
|
808
|
+
className: Pe
|
|
799
809
|
}
|
|
800
810
|
}
|
|
801
811
|
}
|
|
802
812
|
);
|
|
803
|
-
},
|
|
813
|
+
}, bt = ({ projectName: e }) => {
|
|
804
814
|
const {
|
|
805
|
-
projectBaseView:
|
|
806
|
-
studioBaseView:
|
|
807
|
-
onCreateBaseView:
|
|
808
|
-
onDeleteBaseView:
|
|
809
|
-
onLoadBaseView:
|
|
810
|
-
viewAlias:
|
|
811
|
-
} =
|
|
812
|
-
const
|
|
813
|
-
if (n && !
|
|
814
|
-
|
|
815
|
+
projectBaseView: s,
|
|
816
|
+
studioBaseView: o,
|
|
817
|
+
onCreateBaseView: t,
|
|
818
|
+
onDeleteBaseView: l,
|
|
819
|
+
onLoadBaseView: c,
|
|
820
|
+
viewAlias: a
|
|
821
|
+
} = J(), { powerLicense: u, setPowerpackDialog: r } = z(), [i, V] = ke("collapsed-default-view", !1), p = async (m, g) => {
|
|
822
|
+
const d = m ? o : s, n = !m && u === !1;
|
|
823
|
+
if (n && !g) {
|
|
824
|
+
r("sharedViews");
|
|
815
825
|
return;
|
|
816
826
|
}
|
|
817
|
-
|
|
818
|
-
message: `Are you sure you want to remove this default ${
|
|
819
|
-
header: `Remove Default ${
|
|
827
|
+
d ? g || n ? Ye({
|
|
828
|
+
message: `Are you sure you want to remove this default ${a.toLowerCase()}?`,
|
|
829
|
+
header: `Remove Default ${a}`,
|
|
820
830
|
acceptLabel: "Remove",
|
|
821
831
|
rejectLabel: "Cancel",
|
|
822
832
|
accept: async () => {
|
|
823
|
-
await
|
|
833
|
+
await l(d.id, m);
|
|
824
834
|
}
|
|
825
|
-
}) : await
|
|
835
|
+
}) : await c(m) : await t(m);
|
|
826
836
|
};
|
|
827
|
-
return /* @__PURE__ */
|
|
828
|
-
/* @__PURE__ */
|
|
829
|
-
|
|
837
|
+
return /* @__PURE__ */ G(Y, { children: [
|
|
838
|
+
/* @__PURE__ */ L(
|
|
839
|
+
Te,
|
|
830
840
|
{
|
|
831
|
-
onClick: () => V(!
|
|
832
|
-
collapsed:
|
|
841
|
+
onClick: () => V(!i),
|
|
842
|
+
collapsed: i,
|
|
833
843
|
id: "default-views",
|
|
834
|
-
title: `Default ${
|
|
844
|
+
title: `Default ${a.toLowerCase()}`,
|
|
835
845
|
style: { marginBottom: "10px" }
|
|
836
846
|
}
|
|
837
847
|
),
|
|
838
|
-
!
|
|
839
|
-
/* @__PURE__ */
|
|
840
|
-
|
|
848
|
+
!i && /* @__PURE__ */ G(ht, { children: [
|
|
849
|
+
/* @__PURE__ */ L(
|
|
850
|
+
we,
|
|
841
851
|
{
|
|
842
|
-
existingView: !!
|
|
852
|
+
existingView: !!o,
|
|
843
853
|
label: "Studio",
|
|
844
|
-
onClick: (m) =>
|
|
854
|
+
onClick: (m) => p(!0, m)
|
|
845
855
|
}
|
|
846
856
|
),
|
|
847
|
-
e && /* @__PURE__ */
|
|
848
|
-
|
|
857
|
+
e && /* @__PURE__ */ L(
|
|
858
|
+
we,
|
|
849
859
|
{
|
|
850
|
-
existingView: !!
|
|
860
|
+
existingView: !!s,
|
|
851
861
|
label: "Project",
|
|
852
|
-
onClick: (m) =>
|
|
853
|
-
powerLicense:
|
|
862
|
+
onClick: (m) => p(!1, m),
|
|
863
|
+
powerLicense: u
|
|
854
864
|
}
|
|
855
865
|
)
|
|
856
866
|
] })
|
|
857
867
|
] });
|
|
858
|
-
},
|
|
868
|
+
}, we = ({
|
|
859
869
|
existingView: e,
|
|
860
|
-
onClick:
|
|
861
|
-
label:
|
|
862
|
-
powerLicense:
|
|
870
|
+
onClick: s,
|
|
871
|
+
label: o,
|
|
872
|
+
powerLicense: t = void 0
|
|
863
873
|
}) => {
|
|
864
|
-
const
|
|
865
|
-
|
|
866
|
-
},
|
|
867
|
-
|
|
874
|
+
const l = (a) => {
|
|
875
|
+
a.stopPropagation(), s();
|
|
876
|
+
}, c = (a) => {
|
|
877
|
+
a.stopPropagation(), s(!0);
|
|
868
878
|
};
|
|
869
|
-
return /* @__PURE__ */
|
|
870
|
-
|
|
879
|
+
return /* @__PURE__ */ G(
|
|
880
|
+
vt,
|
|
871
881
|
{
|
|
872
|
-
className:
|
|
873
|
-
"powerpack-locked":
|
|
882
|
+
className: Le({
|
|
883
|
+
"powerpack-locked": t === !1,
|
|
874
884
|
active: e
|
|
875
885
|
}),
|
|
876
|
-
onClick:
|
|
886
|
+
onClick: l,
|
|
877
887
|
children: [
|
|
878
|
-
/* @__PURE__ */
|
|
879
|
-
|
|
888
|
+
/* @__PURE__ */ L(
|
|
889
|
+
X,
|
|
880
890
|
{
|
|
881
|
-
icon:
|
|
882
|
-
onClick: (
|
|
891
|
+
icon: t === !1 ? "bolt" : e ? "close" : "add",
|
|
892
|
+
onClick: (a) => e && c(a)
|
|
883
893
|
}
|
|
884
894
|
),
|
|
885
|
-
|
|
895
|
+
o
|
|
886
896
|
]
|
|
887
897
|
}
|
|
888
898
|
);
|
|
889
|
-
},
|
|
899
|
+
}, Lt = K(X)`
|
|
890
900
|
color: var(--md-sys-color-tertiary);
|
|
891
901
|
font-variation-settings: 'FILL' 1;
|
|
892
|
-
`,
|
|
902
|
+
`, Bt = () => {
|
|
893
903
|
const {
|
|
894
904
|
viewType: e,
|
|
895
|
-
viewAlias:
|
|
896
|
-
isMenuOpen:
|
|
897
|
-
setIsMenuOpen:
|
|
898
|
-
setEditingView:
|
|
899
|
-
selectedView:
|
|
900
|
-
workingView:
|
|
901
|
-
viewMenuItems:
|
|
902
|
-
projectName:
|
|
903
|
-
} =
|
|
905
|
+
viewAlias: s,
|
|
906
|
+
isMenuOpen: o,
|
|
907
|
+
setIsMenuOpen: t,
|
|
908
|
+
setEditingView: l,
|
|
909
|
+
selectedView: c,
|
|
910
|
+
workingView: a,
|
|
911
|
+
viewMenuItems: u,
|
|
912
|
+
projectName: r
|
|
913
|
+
} = J(), { powerLicense: i, setPowerpackDialog: V } = z(), p = oe(null), { user: m } = ye(), g = (m?.uiExposureLevel || 0) >= 900, d = Ee(e), n = d?.getBoundingClientRect(), C = {
|
|
904
914
|
top: n ? n.bottom + 8 : 0,
|
|
905
915
|
left: n ? n.left : 0
|
|
906
916
|
};
|
|
907
|
-
|
|
908
|
-
const
|
|
909
|
-
const
|
|
910
|
-
!
|
|
911
|
-
},
|
|
912
|
-
f.key === "Escape" &&
|
|
917
|
+
W(() => {
|
|
918
|
+
const F = (f) => {
|
|
919
|
+
const y = f.target, b = p.current?.contains(y) || d?.contains(y), D = document.querySelector("." + Pe)?.contains(y), I = document.querySelector(".options")?.contains(y), E = document.querySelector(".p-confirm-dialog")?.contains(y);
|
|
920
|
+
!b && !D && !I && !E && o && t(!1);
|
|
921
|
+
}, S = (f) => {
|
|
922
|
+
f.key === "Escape" && o && t(!1);
|
|
913
923
|
};
|
|
914
|
-
return document.addEventListener("mousedown",
|
|
915
|
-
document.removeEventListener("mousedown",
|
|
924
|
+
return document.addEventListener("mousedown", F), document.addEventListener("keydown", S), () => {
|
|
925
|
+
document.removeEventListener("mousedown", F), document.removeEventListener("keydown", S);
|
|
916
926
|
};
|
|
917
|
-
}, [
|
|
918
|
-
|
|
919
|
-
}, [
|
|
920
|
-
const
|
|
921
|
-
|
|
922
|
-
}, [
|
|
923
|
-
return /* @__PURE__ */
|
|
924
|
-
/* @__PURE__ */
|
|
925
|
-
/* @__PURE__ */
|
|
926
|
-
|
|
927
|
-
/* @__PURE__ */
|
|
928
|
-
/* @__PURE__ */
|
|
927
|
+
}, [o, d, t]), W(() => {
|
|
928
|
+
o && p.current && p.current.focus();
|
|
929
|
+
}, [o]);
|
|
930
|
+
const k = v(() => {
|
|
931
|
+
i ? l(!0) : V("sharedViews");
|
|
932
|
+
}, [i, V, l, t]), B = !c || a?.id === c.id ? re : c.id;
|
|
933
|
+
return /* @__PURE__ */ L(Y, { children: o && ge(
|
|
934
|
+
/* @__PURE__ */ G(pt, { style: C, ref: p, tabIndex: 0, children: [
|
|
935
|
+
/* @__PURE__ */ L(et, { items: u, selected: B }),
|
|
936
|
+
g && /* @__PURE__ */ G(Y, { children: [
|
|
937
|
+
/* @__PURE__ */ L(bt, { projectName: r }),
|
|
938
|
+
/* @__PURE__ */ L(mt, {})
|
|
929
939
|
] }),
|
|
930
|
-
/* @__PURE__ */
|
|
931
|
-
|
|
940
|
+
/* @__PURE__ */ L(
|
|
941
|
+
tt,
|
|
932
942
|
{
|
|
933
|
-
label: `Create new ${
|
|
934
|
-
id:
|
|
935
|
-
startContent: /* @__PURE__ */
|
|
936
|
-
endContent: !
|
|
937
|
-
onClick:
|
|
943
|
+
label: `Create new ${s.toLowerCase()}`,
|
|
944
|
+
id: it,
|
|
945
|
+
startContent: /* @__PURE__ */ L(X, { icon: "add" }),
|
|
946
|
+
endContent: !i && /* @__PURE__ */ L(Lt, { icon: "bolt" }),
|
|
947
|
+
onClick: k,
|
|
938
948
|
tabIndex: 0
|
|
939
949
|
}
|
|
940
950
|
)
|
|
941
951
|
] }),
|
|
942
952
|
document.body
|
|
943
953
|
) });
|
|
944
|
-
},
|
|
945
|
-
const { resetWorkingView: e } =
|
|
954
|
+
}, Dt = () => {
|
|
955
|
+
const { resetWorkingView: e } = J(), s = v(async () => {
|
|
946
956
|
await e();
|
|
947
957
|
}, [e]);
|
|
948
|
-
return
|
|
949
|
-
const
|
|
950
|
-
|
|
958
|
+
return W(() => {
|
|
959
|
+
const o = (t) => {
|
|
960
|
+
t.target instanceof HTMLElement && (t.target.tagName === "INPUT" || t.target.tagName === "TEXTAREA" || t.target.isContentEditable || t.target.getAttribute("role") === "textbox" || t.target.closest(".block-shortcuts")) || t.shiftKey && (t.ctrlKey || t.metaKey) && t.key === "0" && (t.preventDefault(), s());
|
|
951
961
|
};
|
|
952
|
-
return window.addEventListener("keydown",
|
|
953
|
-
window.removeEventListener("keydown",
|
|
962
|
+
return window.addEventListener("keydown", o), () => {
|
|
963
|
+
window.removeEventListener("keydown", o);
|
|
954
964
|
};
|
|
955
|
-
}, [
|
|
956
|
-
resetViewToDefault:
|
|
965
|
+
}, [s]), {
|
|
966
|
+
resetViewToDefault: s
|
|
957
967
|
};
|
|
958
|
-
},
|
|
959
|
-
/* @__PURE__ */
|
|
960
|
-
/* @__PURE__ */
|
|
961
|
-
/* @__PURE__ */
|
|
962
|
-
] })),
|
|
968
|
+
}, Zt = () => (Dt(), /* @__PURE__ */ G(Y, { children: [
|
|
969
|
+
/* @__PURE__ */ L(yt, {}),
|
|
970
|
+
/* @__PURE__ */ L(Bt, {}),
|
|
971
|
+
/* @__PURE__ */ L(Ct, {})
|
|
972
|
+
] })), Nt = ({
|
|
963
973
|
viewType: e,
|
|
964
|
-
projectName:
|
|
974
|
+
projectName: s
|
|
965
975
|
}) => {
|
|
966
|
-
const
|
|
967
|
-
|
|
968
|
-
},
|
|
969
|
-
const { viewSettings: e } =
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
}, [JSON.stringify(e?.filter)]),
|
|
973
|
-
|
|
976
|
+
const o = !e, t = { viewType: e, projectName: s };
|
|
977
|
+
fe(t, { skip: o }), me(t, { skip: o }), he(t, { skip: o }), Z(t, { skip: o }), Z({ viewType: e, projectName: void 0 }, { skip: o });
|
|
978
|
+
}, Tt = () => {
|
|
979
|
+
const { viewSettings: e } = J(), [s, o] = R(null), [t, l] = R(null), { updateViewSettings: c } = Ce(), a = e, u = a?.filter ?? {}, r = a?.columns ?? [], i = a?.sliceType;
|
|
980
|
+
W(() => {
|
|
981
|
+
o(null);
|
|
982
|
+
}, [JSON.stringify(e?.filter)]), W(() => {
|
|
983
|
+
l(null);
|
|
974
984
|
}, [JSON.stringify(e?.columns)]);
|
|
975
|
-
const V =
|
|
976
|
-
async (
|
|
977
|
-
await
|
|
985
|
+
const V = s !== null ? s : u, p = t !== null ? t : r, m = v(
|
|
986
|
+
async (w) => {
|
|
987
|
+
await c({ filter: w }, o, w, {
|
|
978
988
|
errorMessage: "Failed to update filter settings"
|
|
979
989
|
});
|
|
980
990
|
},
|
|
981
|
-
[
|
|
982
|
-
),
|
|
983
|
-
async (
|
|
984
|
-
await
|
|
991
|
+
[c]
|
|
992
|
+
), g = v(
|
|
993
|
+
async (w) => {
|
|
994
|
+
await c({ columns: w }, l, w, {
|
|
985
995
|
errorMessage: "Failed to update column width settings"
|
|
986
996
|
});
|
|
987
997
|
},
|
|
988
|
-
[
|
|
989
|
-
),
|
|
990
|
-
}, []), n =
|
|
991
|
-
async (
|
|
992
|
-
await
|
|
998
|
+
[c]
|
|
999
|
+
), d = v(() => {
|
|
1000
|
+
}, []), n = v(
|
|
1001
|
+
async (w) => {
|
|
1002
|
+
await c({ sliceType: w }, d, w, {
|
|
993
1003
|
errorMessage: "Failed to update slicer type"
|
|
994
1004
|
});
|
|
995
1005
|
},
|
|
996
|
-
[
|
|
1006
|
+
[c]
|
|
997
1007
|
);
|
|
998
1008
|
return {
|
|
999
1009
|
filters: V,
|
|
1000
1010
|
onUpdateFilters: m,
|
|
1001
|
-
columns:
|
|
1002
|
-
onUpdateColumns:
|
|
1003
|
-
sliceType:
|
|
1011
|
+
columns: p,
|
|
1012
|
+
onUpdateColumns: g,
|
|
1013
|
+
sliceType: i,
|
|
1004
1014
|
onUpdateSliceType: n
|
|
1005
1015
|
};
|
|
1006
|
-
},
|
|
1007
|
-
const [
|
|
1008
|
-
() =>
|
|
1016
|
+
}, es = ({ viewSettings: e, updateViewSettings: s }) => {
|
|
1017
|
+
const [o, t] = R(null), [l, c] = R(null), [a, u] = R(null), r = e, i = r?.filter ?? {}, V = r?.showHierarchy ?? !0, p = r?.sliceType, m = q(
|
|
1018
|
+
() => De(r),
|
|
1009
1019
|
[JSON.stringify(e)]
|
|
1010
1020
|
);
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
}, [JSON.stringify(e?.filter)]),
|
|
1014
|
-
|
|
1021
|
+
W(() => {
|
|
1022
|
+
t(null);
|
|
1023
|
+
}, [JSON.stringify(e?.filter)]), W(() => {
|
|
1024
|
+
c(null);
|
|
1015
1025
|
}, [
|
|
1016
1026
|
e?.showHierarchy,
|
|
1017
1027
|
e?.groupBy
|
|
1018
|
-
]),
|
|
1019
|
-
|
|
1028
|
+
]), W(() => {
|
|
1029
|
+
u(null);
|
|
1020
1030
|
}, [JSON.stringify(e?.columns)]);
|
|
1021
|
-
const
|
|
1022
|
-
}, []),
|
|
1031
|
+
const g = o !== null ? o : i, d = l !== null ? l : V, n = a || m, w = v(() => {
|
|
1032
|
+
}, []), C = v(
|
|
1023
1033
|
async (f) => {
|
|
1024
|
-
await
|
|
1034
|
+
await s({ sliceType: f }, w, f, {
|
|
1025
1035
|
errorMessage: "Failed to update slicer type"
|
|
1026
1036
|
});
|
|
1027
1037
|
},
|
|
1028
|
-
[
|
|
1029
|
-
),
|
|
1038
|
+
[s]
|
|
1039
|
+
), k = v(
|
|
1030
1040
|
async (f) => {
|
|
1031
|
-
await
|
|
1041
|
+
await s({ filter: f }, t, f, {
|
|
1032
1042
|
errorMessage: "Failed to update filter settings"
|
|
1033
1043
|
});
|
|
1034
1044
|
},
|
|
1035
|
-
[
|
|
1036
|
-
),
|
|
1045
|
+
[s]
|
|
1046
|
+
), B = v(
|
|
1037
1047
|
async (f) => {
|
|
1038
1048
|
if (f && n?.groupBy) {
|
|
1039
|
-
const
|
|
1040
|
-
|
|
1041
|
-
const
|
|
1042
|
-
await
|
|
1043
|
-
{ ...
|
|
1044
|
-
|
|
1049
|
+
const y = { ...n, groupBy: void 0 };
|
|
1050
|
+
u(y);
|
|
1051
|
+
const b = se(y);
|
|
1052
|
+
await s(
|
|
1053
|
+
{ ...b, showHierarchy: !0 },
|
|
1054
|
+
c,
|
|
1045
1055
|
f,
|
|
1046
1056
|
{ errorMessage: "Failed to update hierarchy setting" }
|
|
1047
1057
|
);
|
|
1048
1058
|
return;
|
|
1049
1059
|
}
|
|
1050
|
-
await
|
|
1060
|
+
await s(
|
|
1051
1061
|
{ showHierarchy: f },
|
|
1052
|
-
|
|
1062
|
+
c,
|
|
1053
1063
|
f,
|
|
1054
1064
|
{ errorMessage: "Failed to update hierarchy setting" }
|
|
1055
1065
|
);
|
|
1056
1066
|
},
|
|
1057
|
-
[
|
|
1058
|
-
),
|
|
1059
|
-
async (f,
|
|
1060
|
-
const
|
|
1067
|
+
[s, n]
|
|
1068
|
+
), F = v(
|
|
1069
|
+
async (f, y) => {
|
|
1070
|
+
const b = y || [
|
|
1061
1071
|
...f.columnOrder || [],
|
|
1062
1072
|
...Object.keys(f.columnVisibility || {}),
|
|
1063
1073
|
...f.columnPinning?.left || [],
|
|
1064
1074
|
...f.columnPinning?.right || []
|
|
1065
|
-
].filter(Boolean).filter((
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1075
|
+
].filter(Boolean).filter((E, O, _) => _.indexOf(E) === O), D = se(f, b), I = !!f.groupBy;
|
|
1076
|
+
I && c(!1), await s(
|
|
1077
|
+
I ? { ...D, showHierarchy: !1 } : D,
|
|
1078
|
+
u,
|
|
1069
1079
|
f,
|
|
1070
1080
|
{ errorMessage: "Failed to update columns" }
|
|
1071
1081
|
);
|
|
1072
1082
|
},
|
|
1073
|
-
[
|
|
1074
|
-
),
|
|
1075
|
-
async (f,
|
|
1076
|
-
const
|
|
1077
|
-
showHierarchy:
|
|
1083
|
+
[s]
|
|
1084
|
+
), S = v(
|
|
1085
|
+
async (f, y, b) => {
|
|
1086
|
+
const D = {
|
|
1087
|
+
showHierarchy: y,
|
|
1078
1088
|
groupBy: f,
|
|
1079
|
-
groupSortByDesc: f ?
|
|
1080
|
-
},
|
|
1089
|
+
groupSortByDesc: f ? b ?? !1 : void 0
|
|
1090
|
+
}, E = {
|
|
1081
1091
|
...n,
|
|
1082
|
-
groupBy: f ? { id: f, desc:
|
|
1092
|
+
groupBy: f ? { id: f, desc: b ?? !1 } : void 0
|
|
1083
1093
|
};
|
|
1084
|
-
await
|
|
1085
|
-
|
|
1094
|
+
await s(
|
|
1095
|
+
D,
|
|
1086
1096
|
(_) => {
|
|
1087
|
-
_ === null ? (
|
|
1097
|
+
_ === null ? (c(null), u(null)) : (c(_.showHierarchy), u(_.columns));
|
|
1088
1098
|
},
|
|
1089
|
-
{ showHierarchy:
|
|
1099
|
+
{ showHierarchy: y, columns: E },
|
|
1090
1100
|
{ errorMessage: "Failed to update grouping" }
|
|
1091
1101
|
);
|
|
1092
1102
|
},
|
|
1093
|
-
[
|
|
1103
|
+
[s, n]
|
|
1094
1104
|
);
|
|
1095
1105
|
return {
|
|
1096
|
-
filters:
|
|
1097
|
-
onUpdateFilters:
|
|
1098
|
-
showHierarchy:
|
|
1099
|
-
onUpdateHierarchy:
|
|
1106
|
+
filters: g,
|
|
1107
|
+
onUpdateFilters: k,
|
|
1108
|
+
showHierarchy: d,
|
|
1109
|
+
onUpdateHierarchy: B,
|
|
1100
1110
|
columns: n,
|
|
1101
|
-
onUpdateColumns:
|
|
1102
|
-
onUpdateGroupBy:
|
|
1103
|
-
sliceType:
|
|
1104
|
-
onUpdateSliceType:
|
|
1111
|
+
onUpdateColumns: F,
|
|
1112
|
+
onUpdateGroupBy: S,
|
|
1113
|
+
sliceType: p,
|
|
1114
|
+
onUpdateSliceType: C
|
|
1105
1115
|
};
|
|
1106
|
-
},
|
|
1107
|
-
const { viewSettings: e } =
|
|
1108
|
-
() =>
|
|
1116
|
+
}, ts = () => {
|
|
1117
|
+
const { viewSettings: e } = J(), [s, o] = R(null), [t, l] = R(null), [c, a] = R(null), { updateViewSettings: u } = Ce(), r = e, i = r?.filter ?? {}, V = q(
|
|
1118
|
+
() => De(r),
|
|
1109
1119
|
[JSON.stringify(e)]
|
|
1110
1120
|
);
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
}, [JSON.stringify(e?.filter)]),
|
|
1114
|
-
|
|
1121
|
+
W(() => {
|
|
1122
|
+
o(null);
|
|
1123
|
+
}, [JSON.stringify(e?.filter)]), W(() => {
|
|
1124
|
+
l(null);
|
|
1115
1125
|
}, [JSON.stringify(e?.columns)]);
|
|
1116
|
-
const
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
}, [JSON.stringify(
|
|
1120
|
-
const m =
|
|
1121
|
-
async (
|
|
1122
|
-
await
|
|
1126
|
+
const p = e?.listValues;
|
|
1127
|
+
W(() => {
|
|
1128
|
+
a(null);
|
|
1129
|
+
}, [JSON.stringify(p)]);
|
|
1130
|
+
const m = s !== null ? s : i, g = t || V, d = c ?? p, n = v(
|
|
1131
|
+
async (k) => {
|
|
1132
|
+
await u({ filter: k }, o, k, {
|
|
1123
1133
|
errorMessage: "Failed to update filter settings"
|
|
1124
1134
|
});
|
|
1125
1135
|
},
|
|
1126
|
-
[
|
|
1127
|
-
),
|
|
1128
|
-
async (
|
|
1129
|
-
const
|
|
1130
|
-
await
|
|
1136
|
+
[u]
|
|
1137
|
+
), w = v(
|
|
1138
|
+
async (k, B) => {
|
|
1139
|
+
const F = se(k, B);
|
|
1140
|
+
await u(F, l, k, {
|
|
1131
1141
|
errorMessage: "Failed to update columns"
|
|
1132
1142
|
});
|
|
1133
1143
|
},
|
|
1134
|
-
[
|
|
1135
|
-
),
|
|
1136
|
-
async (
|
|
1137
|
-
await
|
|
1144
|
+
[u]
|
|
1145
|
+
), C = v(
|
|
1146
|
+
async (k) => {
|
|
1147
|
+
await u({ listValues: k }, a, k, {
|
|
1138
1148
|
errorMessage: "Failed to update list values settings"
|
|
1139
1149
|
});
|
|
1140
1150
|
},
|
|
1141
|
-
[
|
|
1151
|
+
[u]
|
|
1142
1152
|
);
|
|
1143
1153
|
return {
|
|
1144
1154
|
filters: m,
|
|
1145
1155
|
onUpdateFilters: n,
|
|
1146
|
-
columns:
|
|
1147
|
-
onUpdateColumns:
|
|
1148
|
-
listValues:
|
|
1149
|
-
onUpdateListValues:
|
|
1156
|
+
columns: g,
|
|
1157
|
+
onUpdateColumns: w,
|
|
1158
|
+
listValues: d,
|
|
1159
|
+
onUpdateListValues: C
|
|
1150
1160
|
};
|
|
1151
1161
|
};
|
|
1152
1162
|
export {
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1163
|
+
Ie as BASE_VIEW_ID,
|
|
1164
|
+
it as NEW_VIEW_ID,
|
|
1165
|
+
Ze as VIEW_DIVIDER,
|
|
1166
|
+
Zt as Views,
|
|
1167
|
+
yt as ViewsButton,
|
|
1168
|
+
Ne as ViewsContext,
|
|
1169
|
+
et as ViewsMenu,
|
|
1170
|
+
Bt as ViewsMenuContainer,
|
|
1171
|
+
Yt as ViewsProvider,
|
|
1172
|
+
re as WORKING_VIEW_ID,
|
|
1173
|
+
is as generateViewId,
|
|
1174
|
+
ve as generateWorkingView,
|
|
1175
|
+
nt as getCustomViewsFallback,
|
|
1176
|
+
Ee as getViewsPortalContainer,
|
|
1177
|
+
ft as getViewsPortalId,
|
|
1178
|
+
Me as isViewStudioScope,
|
|
1179
|
+
ns as updateViewSettings,
|
|
1180
|
+
lt as useBaseViewMutations,
|
|
1181
|
+
rt as useBuildViewMenuItems,
|
|
1182
|
+
ts as useListsViewSettings,
|
|
1183
|
+
es as useOverviewViewSettings,
|
|
1184
|
+
Nt as usePrefetchViews,
|
|
1185
|
+
dt as useSaveViewFromCurrent,
|
|
1186
|
+
at as useSelectedView,
|
|
1187
|
+
Tt as useTaskProgressViewSettings,
|
|
1188
|
+
Ce as useViewUpdateHelper,
|
|
1189
|
+
J as useViewsContext,
|
|
1190
|
+
ct as useViewsMutations,
|
|
1191
|
+
Dt as useViewsShortcuts,
|
|
1192
|
+
rs as useViewsState,
|
|
1193
|
+
jt as viewTypes
|
|
1184
1194
|
};
|