@ynput/ayon-frontend-shared 0.7.6 → 0.8.1
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 +361 -355
- package/dist/Feed.es.js +1 -1
- package/dist/ListTable.es.js +18 -18
- package/dist/NewEntity.es.js +30 -30
- package/dist/ProjectTreeTable.es.js +984 -974
- package/dist/ProjectsTable.es.js +3 -3
- package/dist/Slicer.es.js +53 -50
- package/dist/Views.es.js +150 -151
- package/dist/api.es.js +166 -165
- package/dist/chunks/Actions.es.js +9 -10
- package/dist/chunks/ColumnDropIndicator.es.js +2 -2
- package/dist/chunks/ColumnHeaderMenuUI.es.js +3 -4
- package/dist/chunks/DeleteEntitiesConfirmDialog.es.js +2 -2
- package/dist/chunks/DetailsDialog.es.js +3 -3
- package/dist/chunks/EmptyPlaceholder.es.js +7 -7
- package/dist/chunks/EntityPath.es.js +38 -39
- package/dist/chunks/EntityPickerDialog.es.js +65 -66
- package/dist/chunks/EntityTooltip.es.js +18 -19
- package/dist/chunks/Feed.es.js +1381 -1355
- package/dist/chunks/FilmstripEntityCard.es.js +5201 -0
- package/dist/chunks/FilterErrorActions.es.js +2 -3
- package/dist/chunks/GroupSettingsFallback.es.js +2 -2
- package/dist/chunks/Menu.es.js +52 -53
- package/dist/chunks/MetaWidget.es.js +1948 -1875
- package/dist/chunks/ProjectFoldersContext.es.js +40 -40
- package/dist/chunks/RepresentationsList.es.js +1 -1
- package/dist/chunks/ReviewablesSelector.es.js +759 -742
- package/dist/chunks/SimpleTable.es.js +2 -1
- package/dist/chunks/Slicer.es.js +49 -50
- package/dist/chunks/TableExportContextInstance.es.js +600 -402
- package/dist/chunks/TableSettingsFallback.es.js +3 -4
- package/dist/chunks/ThumbnailSimple.es.js +114 -99
- package/dist/chunks/VideoPlayer.es.js +8 -9
- package/dist/chunks/Watchers.es.js +928 -871
- package/dist/chunks/expandRelativeDates.es.js +1 -1
- package/dist/chunks/getThumbnailUrl.es.js +33 -21
- package/dist/chunks/getUris.es.js +1580 -1610
- package/dist/chunks/queryFilterToClientFilter.es.js +1 -1
- package/dist/chunks/realtimeUpdatesUtils.es.js +15 -15
- package/dist/chunks/searchTerms.es.js +774 -696
- package/dist/chunks/useAttributeEnums.es.js +22 -22
- package/dist/chunks/useDateRangeFilter.es.js +1 -1
- package/dist/chunks/useHierarchySelection.es.js +3 -4
- package/dist/chunks/useLoadModule.es.js +3 -4
- package/dist/components.es.js +1261 -1206
- package/dist/context.es.js +615 -540
- package/dist/hooks.es.js +193 -171
- package/dist/index.es.js +2 -2
- package/dist/types/Actions.d.ts +10 -8
- package/dist/types/DetailsPanel.d.ts +54 -76
- package/dist/types/EntityPickerDialog.d.ts +12 -6
- package/dist/types/Feed.d.ts +24 -24
- package/dist/types/ListTable.d.ts +33 -27
- package/dist/types/NewEntity.d.ts +26 -39
- package/dist/types/ProjectTreeTable.d.ts +275 -194
- package/dist/types/ProjectsTable.d.ts +6 -6
- package/dist/types/RepresentationsList.d.ts +4 -0
- package/dist/types/Slicer.d.ts +63 -246
- package/dist/types/Views.d.ts +71 -298
- package/dist/types/api.d.ts +3165 -2363
- package/dist/types/components.d.ts +444 -473
- package/dist/types/context.d.ts +285 -572
- package/dist/types/hooks.d.ts +76 -47
- package/dist/types/index.d.ts +6 -0
- package/dist/types/util.d.ts +141 -120
- package/dist/util.es.js +71 -68
- package/package.json +6 -6
- package/dist/chunks/EntityUpdatesContext.es.js +0 -61
- package/dist/chunks/PlayableIcon.es.js +0 -5020
- package/dist/chunks/viewUpdateHelper.es.js +0 -153
package/dist/DetailsPanel.es.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { jsxs as x, jsx as i, Fragment as
|
|
2
|
-
import { Toolbar as nt, Panel as At, Button as
|
|
3
|
-
import { useEffect as Q, useMemo as w, useRef as le, useState as
|
|
4
|
-
import
|
|
1
|
+
import { jsxs as x, jsx as i, Fragment as Ee } from "react/jsx-runtime";
|
|
2
|
+
import { Toolbar as nt, Panel as At, Button as ne, Spacer as st, Icon as Ie, getMixedCounts as Qe, getTextColor as Re, applyMixedChange as Ft, Dialog as jt, SEARCH_FILTER_ID as at, buildFilterId as Ae, getFilterFromId as Ot, SearchFilter as Rt, AssigneeField as Lt } from "@ynput/ayon-react-components";
|
|
3
|
+
import { useEffect as Q, useMemo as w, useRef as le, useState as ie, useContext as Vt, useId as Ut, useCallback as $t } from "react";
|
|
4
|
+
import E, { keyframes as Mt } from "styled-components";
|
|
5
5
|
import { bz as _t, bH as Ht } from "./chunks/searchTerms.es.js";
|
|
6
|
-
import {
|
|
6
|
+
import { br as Bt, bP as Wt, c4 as zt, cA as ot, bz as it, v as Gt, bT as Qt, cf as qt } from "./chunks/getUris.es.js";
|
|
7
7
|
import "primereact/confirmdialog";
|
|
8
|
-
import {
|
|
9
|
-
import { O as
|
|
8
|
+
import { o as Kt, y as Jt, H as Xt, G as Yt, z as Zt, w as rt, A as en, B as tn, E as nn, I as sn, J as an, K as on, N as rn, W as ln, s as cn } from "./chunks/Watchers.es.js";
|
|
9
|
+
import { O as Ga, Q as Qa, V as qa, X as Ka, T as Ja } from "./chunks/Watchers.es.js";
|
|
10
10
|
import { E as dn, R as un, a as pn } from "./chunks/EntityPath.es.js";
|
|
11
11
|
import { union as ke, upperFirst as lt } from "lodash";
|
|
12
12
|
import "react-toastify";
|
|
@@ -15,39 +15,39 @@ import { a as mn, b as hn, A as qe, e as gn } from "./chunks/activeEntities.es.j
|
|
|
15
15
|
import "axios";
|
|
16
16
|
import "@module-federation/enhanced/runtime";
|
|
17
17
|
import { menuItemsAt as Ne } from "@ynput/ayon-addon/host";
|
|
18
|
-
import {
|
|
18
|
+
import { m as se, u as fn, T as bn, af as vn, a6 as yn, ah as kn, a5 as Ke, G as wn, ag as xn, $ as Sn } from "./chunks/TableExportContextInstance.es.js";
|
|
19
19
|
import "semver";
|
|
20
20
|
import { T as Cn } from "./chunks/ThumbnailUploaderContext.es.js";
|
|
21
21
|
import "react-dom";
|
|
22
22
|
import { u as Tn, P as ct } from "./chunks/ProjectFoldersContext.es.js";
|
|
23
|
-
import "react-redux";
|
|
24
23
|
import "react-router-dom";
|
|
25
|
-
import
|
|
24
|
+
import be from "clsx";
|
|
26
25
|
import { A as Nn } from "./chunks/Actions.es.js";
|
|
27
|
-
import {
|
|
26
|
+
import { f as In, n as En, E as Pn, q as Dn } from "./chunks/MetaWidget.es.js";
|
|
28
27
|
import "./chunks/ContextMenuContextInstance.es.js";
|
|
29
28
|
import { useContributions as dt, prefetchPiece as Le, entityUrl as An, runContribution as Je, ContributionView as Fn } from "@ynput/ayon-addon";
|
|
30
29
|
import { g as Fe } from "./chunks/getEntityTypeIcon.es.js";
|
|
31
|
-
import {
|
|
32
|
-
import { R as
|
|
33
|
-
import { I as
|
|
34
|
-
import { M as
|
|
35
|
-
import { D as
|
|
36
|
-
import { u as
|
|
37
|
-
import { p as
|
|
38
|
-
import { c as
|
|
39
|
-
import { d as ut, c as
|
|
40
|
-
import { A as
|
|
41
|
-
import { t as
|
|
42
|
-
import { u as
|
|
43
|
-
import { e as
|
|
30
|
+
import { a8 as jn, T as On } from "./chunks/FilmstripEntityCard.es.js";
|
|
31
|
+
import { R as Rn } from "./chunks/RepresentationsList.es.js";
|
|
32
|
+
import { I as Ln } from "./chunks/InfoMessage.es.js";
|
|
33
|
+
import { M as Vn, a as Un } from "./chunks/Menu.es.js";
|
|
34
|
+
import { D as $n } from "./chunks/DetailsDialog.es.js";
|
|
35
|
+
import { u as Mn } from "./chunks/VersionUploadContextInstance.es.js";
|
|
36
|
+
import { p as _n } from "./chunks/pluralize.es.js";
|
|
37
|
+
import { c as Hn } from "./chunks/copyToClipboard.es.js";
|
|
38
|
+
import { d as ut, c as Bn } from "./chunks/Feed.es.js";
|
|
39
|
+
import { A as Wn, C as zn } from "./chunks/ThumbnailSimple.es.js";
|
|
40
|
+
import { t as Gn, c as Qn } from "./chunks/queryFilterToClientFilter.es.js";
|
|
41
|
+
import { u as qn } from "./chunks/useDateRangeFilter.es.js";
|
|
42
|
+
import { e as Kn } from "./chunks/expandRelativeDates.es.js";
|
|
44
43
|
import "@dnd-kit/core";
|
|
45
44
|
import "@dnd-kit/sortable";
|
|
46
45
|
import "@dnd-kit/utilities";
|
|
46
|
+
import "react-redux";
|
|
47
47
|
import "custom-protocol-check";
|
|
48
48
|
import "./chunks/SimpleForm.es.js";
|
|
49
|
-
import { Dialog as
|
|
50
|
-
function
|
|
49
|
+
import { Dialog as Jn } from "primereact/dialog";
|
|
50
|
+
function Xn({
|
|
51
51
|
entityData: e,
|
|
52
52
|
project: n,
|
|
53
53
|
activeEntityType: t,
|
|
@@ -63,7 +63,7 @@ function Jn({
|
|
|
63
63
|
l !== u && window.history.replaceState(window.history.state, "", l);
|
|
64
64
|
}, [e, n, t, o]);
|
|
65
65
|
}
|
|
66
|
-
const
|
|
66
|
+
const Yn = E(nt)`
|
|
67
67
|
display: flex;
|
|
68
68
|
justify-content: space-between;
|
|
69
69
|
align-items: flex-start;
|
|
@@ -75,7 +75,7 @@ const Xn = I(nt)`
|
|
|
75
75
|
& > * {
|
|
76
76
|
min-width: max-content;
|
|
77
77
|
}
|
|
78
|
-
`,
|
|
78
|
+
`, Zn = E.div`
|
|
79
79
|
display: flex;
|
|
80
80
|
align-items: flex-start;
|
|
81
81
|
gap: 4px;
|
|
@@ -84,13 +84,13 @@ const Xn = I(nt)`
|
|
|
84
84
|
right: 0;
|
|
85
85
|
padding: var(--padding-m);
|
|
86
86
|
background-color: var(--md-sys-color-surface-container-low);
|
|
87
|
-
`,
|
|
87
|
+
`, es = E.div`
|
|
88
88
|
flex: 1;
|
|
89
89
|
min-height: 0;
|
|
90
90
|
overflow: auto;
|
|
91
91
|
display: flex;
|
|
92
92
|
flex-direction: column;
|
|
93
|
-
`,
|
|
93
|
+
`, ts = E(At)`
|
|
94
94
|
gap: 0px;
|
|
95
95
|
height: 100%;
|
|
96
96
|
padding: 0px;
|
|
@@ -104,22 +104,22 @@ const Xn = I(nt)`
|
|
|
104
104
|
),
|
|
105
105
|
[n, e]
|
|
106
106
|
), isLoading: t };
|
|
107
|
-
},
|
|
107
|
+
}, ns = E(nt)`
|
|
108
108
|
border-radius: 8px 8px 0 0;
|
|
109
109
|
gap: var(--base-gap-small) !important;
|
|
110
110
|
position: relative;
|
|
111
111
|
z-index: 100;
|
|
112
112
|
grid-column: span 2;
|
|
113
|
-
`,
|
|
113
|
+
`, ss = ["product", "representation"], as = ["task"], os = ({
|
|
114
114
|
entityType: e,
|
|
115
115
|
currentTab: n,
|
|
116
116
|
onTabChange: t,
|
|
117
117
|
isLoading: o
|
|
118
118
|
}) => {
|
|
119
|
-
const s = !
|
|
120
|
-
return /* @__PURE__ */ x(
|
|
119
|
+
const s = !ss.includes(e), a = as.includes(e), r = e === "version", { tabs: l } = pt(e);
|
|
120
|
+
return /* @__PURE__ */ x(ns, { className: o ? "loading" : "", children: [
|
|
121
121
|
s && /* @__PURE__ */ i(
|
|
122
|
-
|
|
122
|
+
ne,
|
|
123
123
|
{
|
|
124
124
|
icon: "forum",
|
|
125
125
|
selected: n === "feed",
|
|
@@ -130,7 +130,7 @@ const Xn = I(nt)`
|
|
|
130
130
|
}
|
|
131
131
|
),
|
|
132
132
|
a && /* @__PURE__ */ i(
|
|
133
|
-
|
|
133
|
+
ne,
|
|
134
134
|
{
|
|
135
135
|
icon: "checklist",
|
|
136
136
|
selected: n === "subtasks",
|
|
@@ -141,7 +141,7 @@ const Xn = I(nt)`
|
|
|
141
141
|
}
|
|
142
142
|
),
|
|
143
143
|
l.map((u) => /* @__PURE__ */ i(
|
|
144
|
-
|
|
144
|
+
ne,
|
|
145
145
|
{
|
|
146
146
|
icon: u.icon,
|
|
147
147
|
selected: n === u.key,
|
|
@@ -156,7 +156,7 @@ const Xn = I(nt)`
|
|
|
156
156
|
)),
|
|
157
157
|
/* @__PURE__ */ i(st, {}),
|
|
158
158
|
r && /* @__PURE__ */ i(
|
|
159
|
-
|
|
159
|
+
ne,
|
|
160
160
|
{
|
|
161
161
|
icon: "order_play",
|
|
162
162
|
onClick: () => t("files"),
|
|
@@ -167,7 +167,7 @@ const Xn = I(nt)`
|
|
|
167
167
|
}
|
|
168
168
|
),
|
|
169
169
|
/* @__PURE__ */ i(
|
|
170
|
-
|
|
170
|
+
ne,
|
|
171
171
|
{
|
|
172
172
|
onClick: () => t("details"),
|
|
173
173
|
selected: n === "details",
|
|
@@ -177,12 +177,12 @@ const Xn = I(nt)`
|
|
|
177
177
|
}
|
|
178
178
|
)
|
|
179
179
|
] });
|
|
180
|
-
},
|
|
180
|
+
}, is = E.div`
|
|
181
181
|
display: flex;
|
|
182
182
|
align-items: center;
|
|
183
183
|
gap: var(--base-gap-small);
|
|
184
184
|
overflow: hidden;
|
|
185
|
-
`,
|
|
185
|
+
`, rs = E.button`
|
|
186
186
|
display: inline-flex;
|
|
187
187
|
align-items: center;
|
|
188
188
|
gap: var(--base-gap-small);
|
|
@@ -204,18 +204,18 @@ const Xn = I(nt)`
|
|
|
204
204
|
text-overflow: ellipsis;
|
|
205
205
|
white-space: nowrap;
|
|
206
206
|
}
|
|
207
|
-
`,
|
|
208
|
-
const { openSlideOut: t } =
|
|
207
|
+
`, ls = ({ entity: e, taskTypes: n }) => {
|
|
208
|
+
const { openSlideOut: t } = se(), { projectName: o } = e, s = e.task?.name ? e.task : void 0;
|
|
209
209
|
if (!s?.id) return null;
|
|
210
210
|
const a = n.find((r) => r.name === s.taskType);
|
|
211
|
-
return /* @__PURE__ */ x(
|
|
211
|
+
return /* @__PURE__ */ x(is, { className: "linked-task", children: [
|
|
212
212
|
/* @__PURE__ */ i("span", { children: "Task" }),
|
|
213
213
|
/* @__PURE__ */ x(
|
|
214
|
-
|
|
214
|
+
rs,
|
|
215
215
|
{
|
|
216
216
|
onClick: () => t({ entityId: s.id, entityType: "task", projectName: o }),
|
|
217
217
|
children: [
|
|
218
|
-
/* @__PURE__ */ i(
|
|
218
|
+
/* @__PURE__ */ i(Ie, { icon: a?.icon || "task_alt", style: { color: a?.color || void 0 } }),
|
|
219
219
|
/* @__PURE__ */ i("span", { className: "label", children: s.label || s.name })
|
|
220
220
|
]
|
|
221
221
|
}
|
|
@@ -241,10 +241,10 @@ const Xn = I(nt)`
|
|
|
241
241
|
thumbnailHash: s.thumbnailHash,
|
|
242
242
|
projectName: s.projectName
|
|
243
243
|
}));
|
|
244
|
-
},
|
|
245
|
-
task:
|
|
246
|
-
folder:
|
|
247
|
-
product:
|
|
244
|
+
}, je = (e) => e.filter((n) => !!n.icon).reduce((n, t) => ({ ...n, [t.name]: t.icon }), {}), ht = (e) => ({
|
|
245
|
+
task: je(e.taskTypes),
|
|
246
|
+
folder: je(e.folderTypes),
|
|
247
|
+
product: je(e.productTypes)
|
|
248
248
|
}), gt = (e, n) => {
|
|
249
249
|
const t = e.length > 1, o = e[0];
|
|
250
250
|
if (t)
|
|
@@ -280,7 +280,7 @@ const Xn = I(nt)`
|
|
|
280
280
|
subTitle: o.entityType || "Unknown Type"
|
|
281
281
|
};
|
|
282
282
|
}
|
|
283
|
-
},
|
|
283
|
+
}, cs = ({
|
|
284
284
|
entityType: e,
|
|
285
285
|
entitySubTypes: n,
|
|
286
286
|
entities: t = [],
|
|
@@ -298,7 +298,7 @@ const Xn = I(nt)`
|
|
|
298
298
|
thumbnailInputRef: V,
|
|
299
299
|
versionsInputRef: U
|
|
300
300
|
}) => {
|
|
301
|
-
const { useSearchParams:
|
|
301
|
+
const { useSearchParams: O, useNavigate: c, bundleMode: g } = se(), C = c(), [I, T] = O(), D = le(null), v = w(() => ht(h), [h]), y = Kt(
|
|
302
302
|
t.map((d) => d.projectName),
|
|
303
303
|
[e]
|
|
304
304
|
), A = w(() => e === "task" ? ke(...t.map((d) => d.task?.assignees || [])) : e === "version" ? ke(
|
|
@@ -324,7 +324,7 @@ const Xn = I(nt)`
|
|
|
324
324
|
updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
325
325
|
path: ""
|
|
326
326
|
});
|
|
327
|
-
const
|
|
327
|
+
const ae = t.length > 1 ? void 0 : R?.projectName;
|
|
328
328
|
t.filter((d) => d.projectName === R?.projectName && d.id).map((d) => d.id);
|
|
329
329
|
const { data: ce } = Bt({ attributeName: "priority" }), de = mn(ce, e), ue = w(
|
|
330
330
|
() => mt(t, e, v),
|
|
@@ -332,50 +332,55 @@ const Xn = I(nt)`
|
|
|
332
332
|
), F = w(() => t.map((d) => d.status), [t]), pe = w(() => t.map((d) => d.attrib?.priority), [t]), K = w(() => t.map((d) => d.tags), [t]), me = w(
|
|
333
333
|
() => r.reduce((d, P) => (d[P.name] = P, d), {}),
|
|
334
334
|
[r]
|
|
335
|
-
),
|
|
335
|
+
), X = w(() => ke(...K), [K]), he = t.every((d) => d.projectName === R?.projectName), j = In(
|
|
336
336
|
he ? R?.projectName : void 0,
|
|
337
337
|
r
|
|
338
|
-
),
|
|
338
|
+
), z = t.length > 1, Y = w(() => Qe(K), [K]), xe = w(
|
|
339
339
|
() => Qe(t.map((d) => d.task?.assignees || [])),
|
|
340
340
|
[t]
|
|
341
|
-
),
|
|
341
|
+
), ge = !z && !!R?.hasReviewables, ve = ue.length === 1, { attribAccess: S, updateEntity: fe } = Jt({
|
|
342
342
|
entities: t,
|
|
343
343
|
entityType: e
|
|
344
|
-
}), { writableFields: k } = S,
|
|
345
|
-
if (!(d !== "attrib" && k && !k.includes(d)) && !(d === "assignees" && !
|
|
346
|
-
return P == null ? console.error("value is null or undefined") :
|
|
347
|
-
},
|
|
344
|
+
}), { writableFields: k } = S, B = !k || k.includes("status"), _ = !k || k.includes("tags"), re = e === "task" && (!k || k.includes("assignees")), oe = (d, P) => {
|
|
345
|
+
if (!(d !== "attrib" && k && !k.includes(d)) && !(d === "assignees" && !re))
|
|
346
|
+
return P == null ? console.error("value is null or undefined") : fe(d, P);
|
|
347
|
+
}, Z = (d, P) => {
|
|
348
348
|
const W = new Map(
|
|
349
|
-
t.map((
|
|
349
|
+
t.map((J) => [J.id, (d === "tags" ? J.tags : J.task?.assignees) || []])
|
|
350
350
|
);
|
|
351
|
-
d === "tags" &&
|
|
352
|
-
}, Se = () => {
|
|
353
|
-
let
|
|
354
|
-
e === "version" && R.product?.id && (
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
351
|
+
d === "tags" && j?.addTags(P.add), oe(d, (J) => Ft(W.get(J) || [], P));
|
|
352
|
+
}, Se = (d) => {
|
|
353
|
+
let P, W = R.id, J = e + "Id";
|
|
354
|
+
if (e === "version" && R.product?.id && (P = [R.id], W = R.product?.id, J = "productId"), W) {
|
|
355
|
+
const H = On(d);
|
|
356
|
+
b({
|
|
357
|
+
[J]: W,
|
|
358
|
+
projectName: ae,
|
|
359
|
+
versionIds: P,
|
|
360
|
+
reviewableIds: H && [H.fileId],
|
|
361
|
+
goToPosition: H?.position
|
|
362
|
+
});
|
|
363
|
+
}
|
|
359
364
|
}, ye = (e === "task" || e === "version") && (A.length > 0 || e === "task"), Ce = [..._t(s, A)];
|
|
360
365
|
if (ye) {
|
|
361
366
|
const d = s.map((W) => W.name), P = A.filter((W) => !d.includes(W));
|
|
362
367
|
P.length && Ce.push(...P.map((W) => ({ name: W, fullName: W })));
|
|
363
368
|
}
|
|
364
|
-
const { title:
|
|
369
|
+
const { title: ee, subTitle: M } = gt(t, e), te = y?.length !== 0 && y?.find((d) => d.name === F[0]);
|
|
365
370
|
return /* @__PURE__ */ i(Xt, { children: /* @__PURE__ */ i(
|
|
366
371
|
dn,
|
|
367
372
|
{
|
|
368
373
|
entities: t,
|
|
369
374
|
entityType: e,
|
|
370
|
-
projectName:
|
|
375
|
+
projectName: ae,
|
|
371
376
|
thumbnailInputRef: V,
|
|
372
377
|
versionsInputRef: U,
|
|
373
378
|
onVersionCreated: (d) => N?.(d, "version"),
|
|
374
|
-
children: /* @__PURE__ */ x(Yt, { className:
|
|
379
|
+
children: /* @__PURE__ */ x(Yt, { className: be("details-panel-header", { isCompact: u }), children: [
|
|
375
380
|
/* @__PURE__ */ x(
|
|
376
381
|
Zt,
|
|
377
382
|
{
|
|
378
|
-
className:
|
|
383
|
+
className: be("titles", { isCompact: u, loading: $ }, "no-shimmer"),
|
|
379
384
|
children: [
|
|
380
385
|
/* @__PURE__ */ x("div", { style: { position: "relative" }, children: [
|
|
381
386
|
/* @__PURE__ */ i(
|
|
@@ -385,15 +390,16 @@ const Xn = I(nt)`
|
|
|
385
390
|
shimmer: $,
|
|
386
391
|
thumbnails: ue,
|
|
387
392
|
onClick: ve ? Se : void 0,
|
|
388
|
-
hoverIcon:
|
|
393
|
+
hoverIcon: ge ? "play_circle" : void 0,
|
|
394
|
+
filmstrip: ge
|
|
389
395
|
}
|
|
390
396
|
),
|
|
391
|
-
|
|
397
|
+
ge && /* @__PURE__ */ i(jn, {})
|
|
392
398
|
] }),
|
|
393
|
-
/* @__PURE__ */ x(en, { className:
|
|
399
|
+
/* @__PURE__ */ x(en, { className: be({ loading: $ }), children: [
|
|
394
400
|
/* @__PURE__ */ x(tn, { children: [
|
|
395
|
-
/* @__PURE__ */ i("h2", { children:
|
|
396
|
-
_ ? /* @__PURE__ */ x(
|
|
401
|
+
/* @__PURE__ */ i("h2", { children: ee }),
|
|
402
|
+
_ ? /* @__PURE__ */ x(Ee, { children: [
|
|
397
403
|
/* @__PURE__ */ i(
|
|
398
404
|
nn,
|
|
399
405
|
{
|
|
@@ -404,13 +410,13 @@ const Xn = I(nt)`
|
|
|
404
410
|
editable: !0,
|
|
405
411
|
editor: !0,
|
|
406
412
|
onChange: (d) => {
|
|
407
|
-
|
|
413
|
+
j?.addTags(d.filter((P) => !X.includes(P))), oe("tags", d);
|
|
408
414
|
},
|
|
409
|
-
mixedCounts:
|
|
415
|
+
mixedCounts: z ? Y : void 0,
|
|
410
416
|
mixedTotal: t.length,
|
|
411
417
|
mixedLabel: `${e}s`,
|
|
412
|
-
onMixedChange: (d) =>
|
|
413
|
-
onEditOption:
|
|
418
|
+
onMixedChange: (d) => Z("tags", d),
|
|
419
|
+
onEditOption: j?.onEditOption,
|
|
414
420
|
editOptionTooltip: "Change the colour in the project tags",
|
|
415
421
|
align: "right",
|
|
416
422
|
styleDropdown: { display: $ ? "none" : "unset" },
|
|
@@ -418,7 +424,7 @@ const Xn = I(nt)`
|
|
|
418
424
|
itemClassName: "details-tag"
|
|
419
425
|
}
|
|
420
426
|
),
|
|
421
|
-
|
|
427
|
+
j && /* @__PURE__ */ i(En, { ...j.dialog })
|
|
422
428
|
] }) : /* @__PURE__ */ i(sn, { className: "tags-select", children: ke(...K).length ? ke(...K).map((d) => {
|
|
423
429
|
const P = me[d]?.color;
|
|
424
430
|
return /* @__PURE__ */ i(
|
|
@@ -441,8 +447,8 @@ const Xn = I(nt)`
|
|
|
441
447
|
] }),
|
|
442
448
|
/* @__PURE__ */ i("h3", { children: M })
|
|
443
449
|
] }),
|
|
444
|
-
e === "version" && !
|
|
445
|
-
|
|
450
|
+
e === "version" && !z && !$ && R && /* @__PURE__ */ i(
|
|
451
|
+
ls,
|
|
446
452
|
{
|
|
447
453
|
entity: R,
|
|
448
454
|
taskTypes: h.taskTypes
|
|
@@ -459,13 +465,13 @@ const Xn = I(nt)`
|
|
|
459
465
|
value: F,
|
|
460
466
|
options: y || [],
|
|
461
467
|
disabledValues: a,
|
|
462
|
-
disableOpen: !
|
|
468
|
+
disableOpen: !B,
|
|
463
469
|
invert: !0,
|
|
464
470
|
style: { maxWidth: "unset" },
|
|
465
|
-
onChange: (d) =>
|
|
466
|
-
className:
|
|
471
|
+
onChange: (d) => oe("status", d),
|
|
472
|
+
className: be("status-select", { loading: $ }),
|
|
467
473
|
align: u ? "right" : "left",
|
|
468
|
-
$textColor: Re(
|
|
474
|
+
$textColor: Re(te !== void 0 ? te.color : "#OOO")
|
|
469
475
|
}
|
|
470
476
|
),
|
|
471
477
|
!u && (!ye || $ ? /* @__PURE__ */ i("div", {}) : /* @__PURE__ */ i(
|
|
@@ -474,15 +480,15 @@ const Xn = I(nt)`
|
|
|
474
480
|
value: A,
|
|
475
481
|
options: Ce,
|
|
476
482
|
disabledValues: o.map((d) => d.name),
|
|
477
|
-
isMultiple:
|
|
478
|
-
readOnly: !
|
|
479
|
-
emptyMessage:
|
|
483
|
+
isMultiple: z && A.length > 1 && e === "task",
|
|
484
|
+
readOnly: !re,
|
|
485
|
+
emptyMessage: re ? "Assign user" : "-",
|
|
480
486
|
align: "right",
|
|
481
|
-
onChange: (d) =>
|
|
482
|
-
mixedCounts:
|
|
487
|
+
onChange: (d) => oe("assignees", d),
|
|
488
|
+
mixedCounts: z && e === "task" ? xe : void 0,
|
|
483
489
|
mixedTotal: t.length,
|
|
484
490
|
mixedLabel: `${e}s`,
|
|
485
|
-
onMixedChange: (d) =>
|
|
491
|
+
onMixedChange: (d) => Z("assignees", d),
|
|
486
492
|
className: "assignee-select",
|
|
487
493
|
"data-tooltip": A.length ? e === "task" ? "Assigned users" : "Author" : ""
|
|
488
494
|
}
|
|
@@ -494,7 +500,7 @@ const Xn = I(nt)`
|
|
|
494
500
|
entityType: e,
|
|
495
501
|
entitySubTypes: n,
|
|
496
502
|
isLoadingEntity: !!l || !!$,
|
|
497
|
-
searchParams:
|
|
503
|
+
searchParams: I,
|
|
498
504
|
bundleMode: g,
|
|
499
505
|
onSetSearchParams: T,
|
|
500
506
|
onNavigate: C
|
|
@@ -506,12 +512,12 @@ const Xn = I(nt)`
|
|
|
506
512
|
options: de,
|
|
507
513
|
placeholder: "No priority",
|
|
508
514
|
value: pe,
|
|
509
|
-
onChange: (d) =>
|
|
515
|
+
onChange: (d) => oe("attrib", { priority: d[0] }),
|
|
510
516
|
align: "right"
|
|
511
517
|
}
|
|
512
518
|
) : /* @__PURE__ */ i("div", { style: { height: 32 } }),
|
|
513
519
|
/* @__PURE__ */ i(
|
|
514
|
-
|
|
520
|
+
os,
|
|
515
521
|
{
|
|
516
522
|
entityType: e,
|
|
517
523
|
currentTab: f,
|
|
@@ -522,13 +528,13 @@ const Xn = I(nt)`
|
|
|
522
528
|
] })
|
|
523
529
|
}
|
|
524
530
|
) });
|
|
525
|
-
},
|
|
531
|
+
}, ds = E.div`
|
|
526
532
|
display: flex;
|
|
527
533
|
flex-direction: column;
|
|
528
534
|
|
|
529
535
|
height: 100%;
|
|
530
536
|
overflow: hidden;
|
|
531
|
-
`, Xe =
|
|
537
|
+
`, Xe = E.div`
|
|
532
538
|
position: relative;
|
|
533
539
|
flex: 1;
|
|
534
540
|
display: flex;
|
|
@@ -542,7 +548,7 @@ const Xn = I(nt)`
|
|
|
542
548
|
&:first-child {
|
|
543
549
|
border-bottom: 1px solid var(--md-sys-color-outline-variant);
|
|
544
550
|
}
|
|
545
|
-
`,
|
|
551
|
+
`, us = ({
|
|
546
552
|
entities: e = [],
|
|
547
553
|
scope: n,
|
|
548
554
|
isLoadingVersion: t
|
|
@@ -550,7 +556,7 @@ const Xn = I(nt)`
|
|
|
550
556
|
const o = e[0];
|
|
551
557
|
if (!o) return null;
|
|
552
558
|
let s = "Reviewables";
|
|
553
|
-
return e.length > 1 && (s += ` (${o.name})`), e.some((a) => a.entityType !== "version") ? null : /* @__PURE__ */ x(
|
|
559
|
+
return e.length > 1 && (s += ` (${o.name})`), e.some((a) => a.entityType !== "version") ? null : /* @__PURE__ */ x(ds, { children: [
|
|
554
560
|
/* @__PURE__ */ x(Xe, { children: [
|
|
555
561
|
/* @__PURE__ */ i("h4", { children: s }),
|
|
556
562
|
/* @__PURE__ */ i(
|
|
@@ -566,16 +572,16 @@ const Xn = I(nt)`
|
|
|
566
572
|
] }),
|
|
567
573
|
/* @__PURE__ */ x(Xe, { children: [
|
|
568
574
|
/* @__PURE__ */ i("h4", { children: "Representations" }),
|
|
569
|
-
/* @__PURE__ */ i(
|
|
575
|
+
/* @__PURE__ */ i(Rn, { entities: e })
|
|
570
576
|
] })
|
|
571
577
|
] });
|
|
572
|
-
},
|
|
578
|
+
}, ps = ({
|
|
573
579
|
latestVersion: e,
|
|
574
580
|
resolveVersionJump: n
|
|
575
581
|
}) => {
|
|
576
582
|
const t = n?.(e.id);
|
|
577
583
|
return /* @__PURE__ */ i(
|
|
578
|
-
|
|
584
|
+
Ln,
|
|
579
585
|
{
|
|
580
586
|
variant: "info",
|
|
581
587
|
compact: !0,
|
|
@@ -589,16 +595,16 @@ const Xn = I(nt)`
|
|
|
589
595
|
} : void 0
|
|
590
596
|
}
|
|
591
597
|
);
|
|
592
|
-
},
|
|
598
|
+
}, ms = (e) => {
|
|
593
599
|
const n = e?.version?.version, t = e?.product?.latestVersion;
|
|
594
600
|
if (!(e?.entityType !== "version" || !n || n <= 0 || !t?.active))
|
|
595
601
|
return t.version > n ? t : void 0;
|
|
596
|
-
},
|
|
597
|
-
onOpenVersionUpload:
|
|
598
|
-
}),
|
|
602
|
+
}, hs = () => ({
|
|
603
|
+
onOpenVersionUpload: Mn()?.onOpenVersionUpload ?? null
|
|
604
|
+
}), gs = (e, n, t) => {
|
|
599
605
|
const o = An({ entityType: e, id: n, projectName: t });
|
|
600
606
|
return o ? `${typeof window < "u" ? window.location.origin : ""}${o}` : null;
|
|
601
|
-
},
|
|
607
|
+
}, fs = ({
|
|
602
608
|
entityType: e,
|
|
603
609
|
entityId: n,
|
|
604
610
|
projectName: t,
|
|
@@ -615,12 +621,12 @@ const Xn = I(nt)`
|
|
|
615
621
|
onPip: N,
|
|
616
622
|
onOpenViewer: V,
|
|
617
623
|
onUploadThumbnail: U,
|
|
618
|
-
onUploadVersion:
|
|
624
|
+
onUploadVersion: O,
|
|
619
625
|
onShare: c,
|
|
620
626
|
onViewData: g,
|
|
621
627
|
onDelete: C
|
|
622
628
|
}) => {
|
|
623
|
-
const
|
|
629
|
+
const I = w(() => o.length ? o.filter((T) => !!T?.entityId).map((T) => ({
|
|
624
630
|
entityId: T.entityId,
|
|
625
631
|
entityType: T.entityType || e,
|
|
626
632
|
hasReviewables: T.hasReviewables
|
|
@@ -646,27 +652,27 @@ const Xn = I(nt)`
|
|
|
646
652
|
id: "upload-version",
|
|
647
653
|
label: "Upload version",
|
|
648
654
|
icon: "upload",
|
|
649
|
-
onClick:
|
|
650
|
-
}), m?.openAddToListDialog && t &&
|
|
651
|
-
const y =
|
|
655
|
+
onClick: O
|
|
656
|
+
}), m?.openAddToListDialog && t && I.length) {
|
|
657
|
+
const y = I[0]?.entityType || e, A = m.openAddToListDialog;
|
|
652
658
|
if (T.push({
|
|
653
659
|
id: "add-to-list",
|
|
654
660
|
label: "Add to list",
|
|
655
661
|
icon: "list_alt_add",
|
|
656
|
-
onClick: () => A(y,
|
|
662
|
+
onClick: () => A(y, I)
|
|
657
663
|
}), (y === "version" || y === "representation") && m.hasReviewAddon) {
|
|
658
|
-
const $ =
|
|
664
|
+
const $ = I.some((ae) => ae.hasReviewables === !0);
|
|
659
665
|
T.push({
|
|
660
666
|
id: "add-to-review-list",
|
|
661
667
|
label: "Add to session",
|
|
662
668
|
icon: "list_alt_add",
|
|
663
669
|
disabled: !$,
|
|
664
670
|
...$ ? {} : { "data-tooltip": "No reviewables on selected version" },
|
|
665
|
-
onClick: () => A(y,
|
|
671
|
+
onClick: () => A(y, I, { isReview: !0 })
|
|
666
672
|
});
|
|
667
673
|
}
|
|
668
674
|
}
|
|
669
|
-
const D =
|
|
675
|
+
const D = I[0], v = D?.entityId && t ? gs(
|
|
670
676
|
D.entityType || e,
|
|
671
677
|
D.entityId,
|
|
672
678
|
t
|
|
@@ -682,7 +688,7 @@ const Xn = I(nt)`
|
|
|
682
688
|
icon: "database",
|
|
683
689
|
onClick: g
|
|
684
690
|
}), f && s.length > 0) {
|
|
685
|
-
const y = new Set(s.map(($) => $.entityType)), A = y.size === 1 ? [...y][0] : "item", R = s.length === 1 ? `Delete ${A}` : `Delete ${
|
|
691
|
+
const y = new Set(s.map(($) => $.entityType)), A = y.size === 1 ? [...y][0] : "item", R = s.length === 1 ? `Delete ${A}` : `Delete ${_n(s.length, A)}`;
|
|
686
692
|
T.push({
|
|
687
693
|
id: "delete",
|
|
688
694
|
label: R,
|
|
@@ -703,28 +709,28 @@ const Xn = I(nt)`
|
|
|
703
709
|
h,
|
|
704
710
|
b,
|
|
705
711
|
t,
|
|
706
|
-
|
|
712
|
+
I,
|
|
707
713
|
e,
|
|
708
714
|
N,
|
|
709
715
|
V,
|
|
710
716
|
U,
|
|
711
|
-
|
|
717
|
+
O,
|
|
712
718
|
c,
|
|
713
719
|
g,
|
|
714
720
|
C
|
|
715
721
|
]);
|
|
716
|
-
},
|
|
722
|
+
}, bs = E.div`
|
|
717
723
|
display: flex;
|
|
718
724
|
flex-direction: column;
|
|
719
725
|
gap: 16px;
|
|
720
|
-
`, Ye =
|
|
726
|
+
`, Ye = E.div`
|
|
721
727
|
display: flex;
|
|
722
728
|
flex-direction: column;
|
|
723
729
|
gap: 6px;
|
|
724
|
-
`, Ze =
|
|
730
|
+
`, Ze = E.span`
|
|
725
731
|
font-size: 13px;
|
|
726
732
|
color: var(--md-sys-color-on-surface);
|
|
727
|
-
`, et =
|
|
733
|
+
`, et = E.button`
|
|
728
734
|
display: flex;
|
|
729
735
|
align-items: center;
|
|
730
736
|
gap: 12px;
|
|
@@ -753,28 +759,28 @@ const Xn = I(nt)`
|
|
|
753
759
|
text-overflow: ellipsis;
|
|
754
760
|
white-space: nowrap;
|
|
755
761
|
}
|
|
756
|
-
`,
|
|
762
|
+
`, vs = ({ link: e, entityLabel: n, visible: t, onHide: o }) => {
|
|
757
763
|
if (!t) return null;
|
|
758
764
|
const s = `[${n}](${e})`, a = (r) => {
|
|
759
|
-
|
|
765
|
+
Hn(r, !0), o();
|
|
760
766
|
};
|
|
761
|
-
return /* @__PURE__ */ i(
|
|
767
|
+
return /* @__PURE__ */ i(jt, { isOpen: !0, onClose: o, size: "sm", header: "Share", children: /* @__PURE__ */ x(bs, { children: [
|
|
762
768
|
/* @__PURE__ */ x(Ye, { children: [
|
|
763
769
|
/* @__PURE__ */ i(Ze, { children: "Link" }),
|
|
764
770
|
/* @__PURE__ */ x(et, { type: "button", onClick: () => a(e), "aria-label": "Copy link", children: [
|
|
765
771
|
/* @__PURE__ */ i("span", { className: "value", children: e }),
|
|
766
|
-
/* @__PURE__ */ i(
|
|
772
|
+
/* @__PURE__ */ i(Ie, { icon: "content_copy" })
|
|
767
773
|
] })
|
|
768
774
|
] }),
|
|
769
775
|
/* @__PURE__ */ x(Ye, { children: [
|
|
770
776
|
/* @__PURE__ */ i(Ze, { children: "Markdown Link" }),
|
|
771
777
|
/* @__PURE__ */ x(et, { type: "button", onClick: () => a(s), "aria-label": "Copy markdown link", children: [
|
|
772
778
|
/* @__PURE__ */ i("span", { className: "value", children: s }),
|
|
773
|
-
/* @__PURE__ */ i(
|
|
779
|
+
/* @__PURE__ */ i(Ie, { icon: "content_copy" })
|
|
774
780
|
] })
|
|
775
781
|
] })
|
|
776
782
|
] }) });
|
|
777
|
-
},
|
|
783
|
+
}, ys = (e, n, t, o) => {
|
|
778
784
|
const s = { projectName: t, quickView: !0 };
|
|
779
785
|
switch (e) {
|
|
780
786
|
case "folder":
|
|
@@ -788,7 +794,7 @@ const Xn = I(nt)`
|
|
|
788
794
|
default:
|
|
789
795
|
return null;
|
|
790
796
|
}
|
|
791
|
-
},
|
|
797
|
+
}, ks = ({
|
|
792
798
|
entityType: e,
|
|
793
799
|
entityId: n,
|
|
794
800
|
entityIds: t,
|
|
@@ -802,39 +808,39 @@ const Xn = I(nt)`
|
|
|
802
808
|
taskId: m,
|
|
803
809
|
folderId: h
|
|
804
810
|
}) => {
|
|
805
|
-
const b = le(null), [N, V] =
|
|
811
|
+
const b = le(null), [N, V] = ie(!1), [U, O] = ie(null), { menuOpen: c, toggleMenuOpen: g, setMenuOpen: C } = fn(), { triggerThumbnailUpload: I, canUploadVersion: T } = Vt(bn), { onOpenVersionUpload: D } = hs(), v = Ut(), y = w(() => {
|
|
806
812
|
const k = n || t?.[0] || "noentity";
|
|
807
813
|
return `details-more-menu-${v}-${k}-${s || "noproject"}`;
|
|
808
|
-
}, [v, n, t, s]), A = c === y, R = !!n && !!s && !!
|
|
814
|
+
}, [v, n, t, s]), A = c === y, R = !!n && !!s && !!I, $ = !!T && !!D, ae = () => {
|
|
809
815
|
D?.({ productId: f, taskId: m, folderId: h });
|
|
810
|
-
}, ce = n && s ?
|
|
811
|
-
const _ =
|
|
812
|
-
return !yn(_) || !
|
|
813
|
-
id:
|
|
816
|
+
}, ce = n && s ? ys(e, n, s, f) : null, de = !!u && !!ce, ue = vn(), F = w(() => (a.length ? a : n ? [{ entityId: n, entityType: e, projectName: s }] : []).map((B) => {
|
|
817
|
+
const _ = B.entityType || e, re = B.projectName || s;
|
|
818
|
+
return !yn(_) || !B.entityId || !re ? null : {
|
|
819
|
+
id: B.entityId,
|
|
814
820
|
entityType: _,
|
|
815
|
-
name:
|
|
816
|
-
label:
|
|
817
|
-
projectName:
|
|
818
|
-
folderId:
|
|
819
|
-
parentId:
|
|
821
|
+
name: B.name,
|
|
822
|
+
label: B.label,
|
|
823
|
+
projectName: re,
|
|
824
|
+
folderId: B.folderId,
|
|
825
|
+
parentId: B.parentId
|
|
820
826
|
};
|
|
821
|
-
}).filter((
|
|
827
|
+
}).filter((B) => B !== null), [a, n, e, s]), pe = !!ue && F.length > 0, K = () => {
|
|
822
828
|
C(!1), ue?.deleteEntities(F);
|
|
823
|
-
}, { contributions: me } = dt("detailsPanel.menuItem"),
|
|
829
|
+
}, { contributions: me } = dt("detailsPanel.menuItem"), X = w(
|
|
824
830
|
() => me.filter(
|
|
825
831
|
(k) => !k.entityTypes?.length || k.entityTypes.includes(e)
|
|
826
832
|
),
|
|
827
833
|
[me, e]
|
|
828
834
|
), he = w(() => {
|
|
829
|
-
const
|
|
835
|
+
const B = (a.length ? a : n ? [{ entityId: n, entityType: e, projectName: s }] : []).map((_) => ({
|
|
830
836
|
id: _.entityId,
|
|
831
837
|
entityType: _.entityType || e,
|
|
832
838
|
projectName: _.projectName || s || "",
|
|
833
839
|
name: _.name,
|
|
834
840
|
label: _.label || void 0
|
|
835
841
|
}));
|
|
836
|
-
return { projectName: s || "", entityType: e, entities:
|
|
837
|
-
}, [a, n, e, s]),
|
|
842
|
+
return { projectName: s || "", entityType: e, entities: B };
|
|
843
|
+
}, [a, n, e, s]), j = $t(
|
|
838
844
|
(k) => ({
|
|
839
845
|
id: k.key,
|
|
840
846
|
label: k.label,
|
|
@@ -843,26 +849,26 @@ const Xn = I(nt)`
|
|
|
843
849
|
onClick: () => Je(k, he)
|
|
844
850
|
}),
|
|
845
851
|
[he]
|
|
846
|
-
),
|
|
852
|
+
), z = w(
|
|
847
853
|
() => [
|
|
848
|
-
...Ne(
|
|
849
|
-
...Ne(
|
|
854
|
+
...Ne(X, "top"),
|
|
855
|
+
...Ne(X, "bottom")
|
|
850
856
|
].filter((k) => k.pinned),
|
|
851
|
-
[
|
|
852
|
-
),
|
|
853
|
-
() =>
|
|
854
|
-
[
|
|
857
|
+
[X]
|
|
858
|
+
), Y = w(
|
|
859
|
+
() => X.filter((k) => !k.pinned),
|
|
860
|
+
[X]
|
|
855
861
|
), xe = w(
|
|
856
|
-
() => Ne(
|
|
857
|
-
[
|
|
858
|
-
),
|
|
859
|
-
() => Ne(
|
|
860
|
-
[
|
|
862
|
+
() => Ne(Y, "top").map(j),
|
|
863
|
+
[Y, j]
|
|
864
|
+
), ge = w(
|
|
865
|
+
() => Ne(Y, "bottom").map(j),
|
|
866
|
+
[Y, j]
|
|
861
867
|
);
|
|
862
868
|
Q(() => {
|
|
863
|
-
A &&
|
|
864
|
-
}, [A,
|
|
865
|
-
const { items: ve } =
|
|
869
|
+
A && Y.forEach((k) => Le(k.run));
|
|
870
|
+
}, [A, Y]);
|
|
871
|
+
const { items: ve } = fs({
|
|
866
872
|
entityType: e,
|
|
867
873
|
entityId: n,
|
|
868
874
|
projectName: s,
|
|
@@ -875,18 +881,18 @@ const Xn = I(nt)`
|
|
|
875
881
|
canDelete: pe,
|
|
876
882
|
entityListsContext: r,
|
|
877
883
|
extraTopItems: xe,
|
|
878
|
-
extraItems:
|
|
884
|
+
extraItems: ge,
|
|
879
885
|
onPip: () => l?.(),
|
|
880
886
|
onOpenViewer: () => ce && u?.(ce),
|
|
881
|
-
onUploadThumbnail: () =>
|
|
882
|
-
onUploadVersion:
|
|
883
|
-
onShare: (k) =>
|
|
887
|
+
onUploadThumbnail: () => I?.(),
|
|
888
|
+
onUploadVersion: ae,
|
|
889
|
+
onShare: (k) => O(k),
|
|
884
890
|
onViewData: () => V(!0),
|
|
885
891
|
onDelete: K
|
|
886
|
-
}), S = t?.length ? t : n ? [n] : [],
|
|
887
|
-
return /* @__PURE__ */ x(
|
|
888
|
-
|
|
889
|
-
|
|
892
|
+
}), S = t?.length ? t : n ? [n] : [], fe = o || n || "";
|
|
893
|
+
return /* @__PURE__ */ x(Ee, { children: [
|
|
894
|
+
z.map((k) => /* @__PURE__ */ i(
|
|
895
|
+
ne,
|
|
890
896
|
{
|
|
891
897
|
icon: k.icon,
|
|
892
898
|
variant: "text",
|
|
@@ -899,20 +905,20 @@ const Xn = I(nt)`
|
|
|
899
905
|
k.key
|
|
900
906
|
)),
|
|
901
907
|
/* @__PURE__ */ i(
|
|
902
|
-
|
|
908
|
+
ne,
|
|
903
909
|
{
|
|
904
910
|
ref: b,
|
|
905
911
|
icon: "more_horiz",
|
|
906
912
|
variant: "text",
|
|
907
913
|
"data-tooltip": "More actions",
|
|
908
914
|
"aria-label": "More actions",
|
|
909
|
-
className:
|
|
915
|
+
className: be({ active: A }),
|
|
910
916
|
onClick: () => g(y)
|
|
911
917
|
}
|
|
912
918
|
),
|
|
913
|
-
/* @__PURE__ */ i(
|
|
919
|
+
/* @__PURE__ */ i(Vn, { id: y, target: b.current, align: "right", children: /* @__PURE__ */ i(Un, { menu: ve, onClose: () => C(!1) }) }),
|
|
914
920
|
N && s && S.length > 0 && /* @__PURE__ */ i(
|
|
915
|
-
|
|
921
|
+
$n,
|
|
916
922
|
{
|
|
917
923
|
projectName: s,
|
|
918
924
|
entityType: e,
|
|
@@ -922,16 +928,16 @@ const Xn = I(nt)`
|
|
|
922
928
|
}
|
|
923
929
|
),
|
|
924
930
|
U && /* @__PURE__ */ i(
|
|
925
|
-
|
|
931
|
+
vs,
|
|
926
932
|
{
|
|
927
933
|
link: U,
|
|
928
|
-
entityLabel:
|
|
934
|
+
entityLabel: fe,
|
|
929
935
|
visible: !0,
|
|
930
|
-
onHide: () =>
|
|
936
|
+
onHide: () => O(null)
|
|
931
937
|
}
|
|
932
938
|
)
|
|
933
939
|
] });
|
|
934
|
-
},
|
|
940
|
+
}, ws = (e, n) => {
|
|
935
941
|
const t = [e];
|
|
936
942
|
let o = e;
|
|
937
943
|
for (; o.parentId && o.parentId !== "root"; ) {
|
|
@@ -941,17 +947,17 @@ const Xn = I(nt)`
|
|
|
941
947
|
t.unshift(s), o = s;
|
|
942
948
|
}
|
|
943
949
|
return t;
|
|
944
|
-
},
|
|
950
|
+
}, xs = (e, n) => {
|
|
945
951
|
const t = [];
|
|
946
952
|
let o = n.get(e.folder?.id || "");
|
|
947
|
-
if ((o ?
|
|
953
|
+
if ((o ? ws(o, n) : []).forEach((a) => {
|
|
948
954
|
t.push({ type: "folder", label: a.label || a.name, id: a.id });
|
|
949
955
|
}), e.entityType === "version") {
|
|
950
956
|
const a = `${e.product?.name} - ${e.name}`;
|
|
951
957
|
t.push({ type: "version", label: a, id: e.id });
|
|
952
958
|
}
|
|
953
959
|
return e.entityType === "task" && t.push({ type: "task", label: e.label || e.name, id: e.id }), t;
|
|
954
|
-
},
|
|
960
|
+
}, Ss = ({
|
|
955
961
|
entity: e,
|
|
956
962
|
entityType: n,
|
|
957
963
|
projectName: t,
|
|
@@ -981,7 +987,7 @@ const Xn = I(nt)`
|
|
|
981
987
|
[s]
|
|
982
988
|
);
|
|
983
989
|
return [w(
|
|
984
|
-
() => r ? [] :
|
|
990
|
+
() => r ? [] : xs(e, f),
|
|
985
991
|
[r, s, e]
|
|
986
992
|
), u];
|
|
987
993
|
}, ft = (e, n) => {
|
|
@@ -1000,7 +1006,7 @@ const Xn = I(nt)`
|
|
|
1000
1006
|
exportAnnotationComposite: u,
|
|
1001
1007
|
...f
|
|
1002
1008
|
}) => {
|
|
1003
|
-
const m = { annotations: r, removeAnnotation: l, exportAnnotationComposite: u }, { user: h } =
|
|
1009
|
+
const m = { annotations: r, removeAnnotation: l, exportAnnotationComposite: u }, { user: h } = se(), b = h.name || "", N = h.attrib?.fullName || "";
|
|
1004
1010
|
return /* @__PURE__ */ x(
|
|
1005
1011
|
ut,
|
|
1006
1012
|
{
|
|
@@ -1014,12 +1020,12 @@ const Xn = I(nt)`
|
|
|
1014
1020
|
...m,
|
|
1015
1021
|
...f,
|
|
1016
1022
|
children: [
|
|
1017
|
-
/* @__PURE__ */ i(
|
|
1018
|
-
/* @__PURE__ */ i(
|
|
1023
|
+
/* @__PURE__ */ i(Bn, { ...f, statuses: f.statuses }),
|
|
1024
|
+
/* @__PURE__ */ i(Wn, {})
|
|
1019
1025
|
]
|
|
1020
1026
|
}
|
|
1021
1027
|
);
|
|
1022
|
-
},
|
|
1028
|
+
}, Cs = ({
|
|
1023
1029
|
children: e,
|
|
1024
1030
|
scope: n = "dashboard",
|
|
1025
1031
|
entities: t,
|
|
@@ -1031,7 +1037,7 @@ const Xn = I(nt)`
|
|
|
1031
1037
|
exportAnnotationComposite: u,
|
|
1032
1038
|
...f
|
|
1033
1039
|
}) => {
|
|
1034
|
-
const m = { annotations: r, removeAnnotation: l, exportAnnotationComposite: u }, { user: h } =
|
|
1040
|
+
const m = { annotations: r, removeAnnotation: l, exportAnnotationComposite: u }, { user: h } = se(), b = h?.name ?? "", N = h?.attrib?.fullName ?? "", [V, U] = ie(null);
|
|
1035
1041
|
return /* @__PURE__ */ i(
|
|
1036
1042
|
ut,
|
|
1037
1043
|
{
|
|
@@ -1093,23 +1099,23 @@ const Xn = I(nt)`
|
|
|
1093
1099
|
}), Object.keys(s).forEach((a) => {
|
|
1094
1100
|
(a === "productTypes" || s[a].length > 0) && (t[a] = o(s[a]));
|
|
1095
1101
|
}), t;
|
|
1096
|
-
},
|
|
1102
|
+
}, Ts = E.div`
|
|
1097
1103
|
display: flex;
|
|
1098
1104
|
align-items: center;
|
|
1099
1105
|
padding: 4px 8px;
|
|
1100
1106
|
gap: var(--base-gap-small);
|
|
1101
|
-
`,
|
|
1107
|
+
`, Ns = E.span`
|
|
1102
1108
|
font-weight: 600;
|
|
1103
1109
|
user-select: none;
|
|
1104
|
-
`,
|
|
1110
|
+
`, Is = E.div`
|
|
1105
1111
|
display: flex;
|
|
1106
1112
|
gap: var(--base-gap-small);
|
|
1107
|
-
`,
|
|
1113
|
+
`, Oe = E(ne)`
|
|
1108
1114
|
background-color: unset;
|
|
1109
1115
|
&.hasIcon {
|
|
1110
1116
|
padding: 4px;
|
|
1111
1117
|
}
|
|
1112
|
-
`, Es =
|
|
1118
|
+
`, Es = E.div`
|
|
1113
1119
|
display: flex;
|
|
1114
1120
|
align-items: center;
|
|
1115
1121
|
gap: var(--base-gap-small);
|
|
@@ -1126,10 +1132,10 @@ const Xn = I(nt)`
|
|
|
1126
1132
|
box-shadow: 0 0 0 1px var(--md-sys-color-primary-container);
|
|
1127
1133
|
background-color: var(--md-sys-color-surface-container-lowest);
|
|
1128
1134
|
}
|
|
1129
|
-
`,
|
|
1135
|
+
`, Ps = E(Pn)`
|
|
1130
1136
|
width: 28px;
|
|
1131
1137
|
height: 28px;
|
|
1132
|
-
`,
|
|
1138
|
+
`, Ds = E.input`
|
|
1133
1139
|
flex: 1;
|
|
1134
1140
|
min-width: 0;
|
|
1135
1141
|
border: none;
|
|
@@ -1142,7 +1148,7 @@ const Xn = I(nt)`
|
|
|
1142
1148
|
&::placeholder {
|
|
1143
1149
|
color: var(--md-sys-color-outline);
|
|
1144
1150
|
}
|
|
1145
|
-
`,
|
|
1151
|
+
`, As = E(ne)`
|
|
1146
1152
|
background-color: unset;
|
|
1147
1153
|
min-width: unset;
|
|
1148
1154
|
&.hasIcon {
|
|
@@ -1179,14 +1185,14 @@ const Xn = I(nt)`
|
|
|
1179
1185
|
operator: t,
|
|
1180
1186
|
value: a[0] || ""
|
|
1181
1187
|
};
|
|
1182
|
-
},
|
|
1188
|
+
}, Fs = ({
|
|
1183
1189
|
label: e,
|
|
1184
1190
|
filters: n,
|
|
1185
1191
|
currentFilter: t,
|
|
1186
1192
|
onFilterChange: o,
|
|
1187
1193
|
isLoading: s
|
|
1188
1194
|
}) => {
|
|
1189
|
-
const [a, r] =
|
|
1195
|
+
const [a, r] = ie(null), [l, u] = ie(""), f = le(null), m = (c) => typeof c == "object" && c !== null && !Array.isArray(c);
|
|
1190
1196
|
Q(() => {
|
|
1191
1197
|
a && f.current && f.current.focus();
|
|
1192
1198
|
}, [a]), Q(() => {
|
|
@@ -1201,7 +1207,7 @@ const Xn = I(nt)`
|
|
|
1201
1207
|
o(c.id);
|
|
1202
1208
|
return;
|
|
1203
1209
|
}
|
|
1204
|
-
const C = t.conditions ? [...t.conditions] : [],
|
|
1210
|
+
const C = t.conditions ? [...t.conditions] : [], I = {
|
|
1205
1211
|
...t,
|
|
1206
1212
|
conditions: C,
|
|
1207
1213
|
operator: t.operator || "and"
|
|
@@ -1229,38 +1235,38 @@ const Xn = I(nt)`
|
|
|
1229
1235
|
D > -1 ? C[D] = A : C.push(A);
|
|
1230
1236
|
}
|
|
1231
1237
|
}
|
|
1232
|
-
o(
|
|
1238
|
+
o(I);
|
|
1233
1239
|
}, b = (c) => {
|
|
1234
1240
|
const g = String(c.id);
|
|
1235
1241
|
if (a !== g && (r(g), m(t))) {
|
|
1236
|
-
const C = t.conditions?.find((
|
|
1242
|
+
const C = t.conditions?.find((I) => we(I, g));
|
|
1237
1243
|
u(C ? Ve(C) : "");
|
|
1238
1244
|
}
|
|
1239
1245
|
}, N = (c, g) => {
|
|
1240
1246
|
u(g), h(c, g);
|
|
1241
1247
|
}, V = (c) => {
|
|
1242
1248
|
u(""), r(null), h(c, "");
|
|
1243
|
-
}, U = (c) => m(t) ? t.conditions?.some((g) => we(g, String(c.id))) : c.id === t,
|
|
1249
|
+
}, U = (c) => m(t) ? t.conditions?.some((g) => we(g, String(c.id))) : c.id === t, O = (c) => m(t) ? t.conditions?.find(
|
|
1244
1250
|
(C) => Ue(C) && C.key === String(c.id)
|
|
1245
1251
|
)?.value || [] : [];
|
|
1246
|
-
return /* @__PURE__ */ x(
|
|
1247
|
-
/* @__PURE__ */ i(
|
|
1252
|
+
return /* @__PURE__ */ x(Ts, { className: be("panel-tabs", { loading: s }), children: [
|
|
1253
|
+
/* @__PURE__ */ i(Ns, { className: "panel-header-label", children: e }),
|
|
1248
1254
|
/* @__PURE__ */ i(st, {}),
|
|
1249
|
-
/* @__PURE__ */ i(
|
|
1255
|
+
/* @__PURE__ */ i(Is, { className: "panel-header-filters", children: n.map((c) => {
|
|
1250
1256
|
const g = U(c), C = c.type || "boolean";
|
|
1251
1257
|
if (C === "enum")
|
|
1252
1258
|
return /* @__PURE__ */ i(
|
|
1253
|
-
|
|
1259
|
+
Ps,
|
|
1254
1260
|
{
|
|
1255
1261
|
options: c.options || [],
|
|
1256
|
-
value:
|
|
1257
|
-
onChange: (
|
|
1262
|
+
value: O(c),
|
|
1263
|
+
onChange: (I) => h(c, I),
|
|
1258
1264
|
isEditing: !0,
|
|
1259
1265
|
autoOpen: !1,
|
|
1260
1266
|
align: "right",
|
|
1261
1267
|
type: "list_of_strings",
|
|
1262
1268
|
valueTemplate: () => /* @__PURE__ */ i(
|
|
1263
|
-
|
|
1269
|
+
Oe,
|
|
1264
1270
|
{
|
|
1265
1271
|
selected: g,
|
|
1266
1272
|
icon: c.icon,
|
|
@@ -1274,25 +1280,25 @@ const Xn = I(nt)`
|
|
|
1274
1280
|
String(c.id)
|
|
1275
1281
|
);
|
|
1276
1282
|
if (C === "search") {
|
|
1277
|
-
const
|
|
1283
|
+
const I = a === String(c.id);
|
|
1278
1284
|
return /* @__PURE__ */ x(
|
|
1279
1285
|
Es,
|
|
1280
1286
|
{
|
|
1281
|
-
className:
|
|
1287
|
+
className: be("panel-filter", "panel-filter-search", { expanded: I }),
|
|
1282
1288
|
children: [
|
|
1283
1289
|
/* @__PURE__ */ i(
|
|
1284
|
-
|
|
1290
|
+
Oe,
|
|
1285
1291
|
{
|
|
1286
|
-
selected: g ||
|
|
1292
|
+
selected: g || I,
|
|
1287
1293
|
onClick: () => b(c),
|
|
1288
1294
|
icon: c.icon,
|
|
1289
|
-
"data-tooltip":
|
|
1295
|
+
"data-tooltip": I ? void 0 : c.tooltip,
|
|
1290
1296
|
"data-tooltip-delay": 0
|
|
1291
1297
|
}
|
|
1292
1298
|
),
|
|
1293
|
-
|
|
1299
|
+
I && /* @__PURE__ */ x(Ee, { children: [
|
|
1294
1300
|
/* @__PURE__ */ i(
|
|
1295
|
-
|
|
1301
|
+
Ds,
|
|
1296
1302
|
{
|
|
1297
1303
|
ref: f,
|
|
1298
1304
|
value: l,
|
|
@@ -1304,7 +1310,7 @@ const Xn = I(nt)`
|
|
|
1304
1310
|
}
|
|
1305
1311
|
),
|
|
1306
1312
|
/* @__PURE__ */ i(
|
|
1307
|
-
|
|
1313
|
+
As,
|
|
1308
1314
|
{
|
|
1309
1315
|
icon: "close",
|
|
1310
1316
|
onClick: () => V(c),
|
|
@@ -1319,7 +1325,7 @@ const Xn = I(nt)`
|
|
|
1319
1325
|
);
|
|
1320
1326
|
}
|
|
1321
1327
|
return /* @__PURE__ */ i(
|
|
1322
|
-
|
|
1328
|
+
Oe,
|
|
1323
1329
|
{
|
|
1324
1330
|
selected: g,
|
|
1325
1331
|
onClick: () => h(c),
|
|
@@ -1332,7 +1338,7 @@ const Xn = I(nt)`
|
|
|
1332
1338
|
);
|
|
1333
1339
|
}) })
|
|
1334
1340
|
] });
|
|
1335
|
-
}, kt = ["done", "isDone"], wt = (e) => !!e && "key" in e,
|
|
1341
|
+
}, kt = ["done", "isDone"], wt = (e) => !!e && "key" in e, js = (e, n) => {
|
|
1336
1342
|
const t = [], o = [], s = (a) => {
|
|
1337
1343
|
if (!a) return;
|
|
1338
1344
|
if (wt(a)) {
|
|
@@ -1387,7 +1393,7 @@ const Xn = I(nt)`
|
|
|
1387
1393
|
});
|
|
1388
1394
|
return;
|
|
1389
1395
|
}
|
|
1390
|
-
const r =
|
|
1396
|
+
const r = Gn(a, n);
|
|
1391
1397
|
if (r) {
|
|
1392
1398
|
t.push(r);
|
|
1393
1399
|
return;
|
|
@@ -1398,7 +1404,7 @@ const Xn = I(nt)`
|
|
|
1398
1404
|
}, Os = (e) => {
|
|
1399
1405
|
const n = [], t = [];
|
|
1400
1406
|
return e.forEach((o) => {
|
|
1401
|
-
const s =
|
|
1407
|
+
const s = Ot(o.id), a = (o.values || []).map((r) => r.id);
|
|
1402
1408
|
if (a.length)
|
|
1403
1409
|
if (s === at)
|
|
1404
1410
|
a.forEach(
|
|
@@ -1408,12 +1414,12 @@ const Xn = I(nt)`
|
|
|
1408
1414
|
const r = a[0] === "true";
|
|
1409
1415
|
n.push({ key: s, operator: "eq", value: r });
|
|
1410
1416
|
} else if (o.type === "datetime") {
|
|
1411
|
-
const r =
|
|
1417
|
+
const r = Qn(s, o);
|
|
1412
1418
|
r && n.push(r);
|
|
1413
1419
|
} else
|
|
1414
1420
|
n.push({ key: s, operator: "in", value: a.map(String) });
|
|
1415
1421
|
}), t.length === 1 ? n.push(t[0]) : t.length > 1 && n.push({ operator: "or", conditions: t }), { operator: "and", conditions: n };
|
|
1416
|
-
}, xt = (e) => wt(e) ? e.key !== "search" || typeof e.value != "string" ? e : Ht(e.value, (n) => ({ ...e, value: n })) ?? e : { ...e, conditions: e.conditions?.map(xt) },
|
|
1422
|
+
}, xt = (e) => wt(e) ? e.key !== "search" || typeof e.value != "string" ? e : Ht(e.value, (n) => ({ ...e, value: n })) ?? e : { ...e, conditions: e.conditions?.map(xt) }, Rs = E.div`
|
|
1417
1423
|
padding: 4px 8px;
|
|
1418
1424
|
padding-bottom: 0;
|
|
1419
1425
|
|
|
@@ -1421,7 +1427,7 @@ const Xn = I(nt)`
|
|
|
1421
1427
|
opacity: 0.5;
|
|
1422
1428
|
pointer-events: none;
|
|
1423
1429
|
}
|
|
1424
|
-
`,
|
|
1430
|
+
`, Ls = ({
|
|
1425
1431
|
subtasksFilter: e,
|
|
1426
1432
|
setSubtasksFilter: n,
|
|
1427
1433
|
users: t,
|
|
@@ -1474,7 +1480,7 @@ const Xn = I(nt)`
|
|
|
1474
1480
|
// },
|
|
1475
1481
|
],
|
|
1476
1482
|
[t]
|
|
1477
|
-
), u = w(() =>
|
|
1483
|
+
), u = w(() => js(e, l), [e, l]), [f, m] = ie(u), h = le(null), b = qn();
|
|
1478
1484
|
Q(() => {
|
|
1479
1485
|
m(u);
|
|
1480
1486
|
}, [JSON.stringify(u)]);
|
|
@@ -1486,13 +1492,13 @@ const Xn = I(nt)`
|
|
|
1486
1492
|
}, U = (g, C) => {
|
|
1487
1493
|
C || r?.(g);
|
|
1488
1494
|
};
|
|
1489
|
-
let
|
|
1490
|
-
s > 0 && (
|
|
1495
|
+
let O = "";
|
|
1496
|
+
s > 0 && (O = `${a}/${s}`);
|
|
1491
1497
|
const c = w(
|
|
1492
|
-
() => [{ id: "isDone", label:
|
|
1493
|
-
[
|
|
1498
|
+
() => [{ id: "isDone", label: O, tooltip: "Status" }],
|
|
1499
|
+
[O]
|
|
1494
1500
|
);
|
|
1495
|
-
return /* @__PURE__ */ x(
|
|
1501
|
+
return /* @__PURE__ */ x(Rs, { className: o ? "loading" : void 0, children: [
|
|
1496
1502
|
/* @__PURE__ */ i(
|
|
1497
1503
|
Rt,
|
|
1498
1504
|
{
|
|
@@ -1523,7 +1529,7 @@ const Xn = I(nt)`
|
|
|
1523
1529
|
}
|
|
1524
1530
|
),
|
|
1525
1531
|
/* @__PURE__ */ i(
|
|
1526
|
-
|
|
1532
|
+
zn,
|
|
1527
1533
|
{
|
|
1528
1534
|
isOpen: !!b.customRangeFilterId,
|
|
1529
1535
|
header: l.find((g) => g.id === b.customRangeFilterId?.split("__")[0])?.label ?? "Custom range",
|
|
@@ -1536,8 +1542,8 @@ const Xn = I(nt)`
|
|
|
1536
1542
|
}
|
|
1537
1543
|
)
|
|
1538
1544
|
] });
|
|
1539
|
-
},
|
|
1540
|
-
const [n, t] =
|
|
1545
|
+
}, Vs = ({ ...e }) => {
|
|
1546
|
+
const [n, t] = ie({}), [o, s] = ie(""), [a, r] = ie([]), { dispatch: l } = se(), { data: u = [] } = ot({ projectName: e.projectName }), f = e.subtasks?.length || 0, m = e.subtasks?.filter((b) => b.isDone).length || 0, h = w(() => {
|
|
1541
1547
|
let b = n;
|
|
1542
1548
|
if (o) {
|
|
1543
1549
|
const N = { key: "search", operator: "like", value: o };
|
|
@@ -1547,11 +1553,11 @@ const Xn = I(nt)`
|
|
|
1547
1553
|
operator: "and"
|
|
1548
1554
|
};
|
|
1549
1555
|
}
|
|
1550
|
-
return
|
|
1556
|
+
return Kn(xt(b));
|
|
1551
1557
|
}, [n, o]);
|
|
1552
|
-
return /* @__PURE__ */ x(
|
|
1558
|
+
return /* @__PURE__ */ x(Ee, { children: [
|
|
1553
1559
|
/* @__PURE__ */ i(
|
|
1554
|
-
|
|
1560
|
+
Fs,
|
|
1555
1561
|
{
|
|
1556
1562
|
label: `Subtasks (${f})`,
|
|
1557
1563
|
filters: [],
|
|
@@ -1560,7 +1566,7 @@ const Xn = I(nt)`
|
|
|
1560
1566
|
}
|
|
1561
1567
|
),
|
|
1562
1568
|
/* @__PURE__ */ i(
|
|
1563
|
-
|
|
1569
|
+
Ls,
|
|
1564
1570
|
{
|
|
1565
1571
|
subtasksFilter: n,
|
|
1566
1572
|
setSubtasksFilter: t,
|
|
@@ -1584,7 +1590,7 @@ const Xn = I(nt)`
|
|
|
1584
1590
|
}
|
|
1585
1591
|
)
|
|
1586
1592
|
] });
|
|
1587
|
-
}, tt = ["product", "representation"],
|
|
1593
|
+
}, tt = ["product", "representation"], Us = ({
|
|
1588
1594
|
entityType: e,
|
|
1589
1595
|
entitySubTypes: n = [],
|
|
1590
1596
|
// entities is data we already have from kanban
|
|
@@ -1603,11 +1609,11 @@ const Xn = I(nt)`
|
|
|
1603
1609
|
scope: N,
|
|
1604
1610
|
isCompact: V = !1,
|
|
1605
1611
|
onClose: U,
|
|
1606
|
-
onWatchersUpdate:
|
|
1612
|
+
onWatchersUpdate: O,
|
|
1607
1613
|
onOpenViewer: c,
|
|
1608
1614
|
onEntityFocus: g,
|
|
1609
1615
|
onOpen: C,
|
|
1610
|
-
onUriOpen:
|
|
1616
|
+
onUriOpen: I,
|
|
1611
1617
|
// when the details panel is opened from uri
|
|
1612
1618
|
// annotations
|
|
1613
1619
|
annotations: T,
|
|
@@ -1619,7 +1625,7 @@ const Xn = I(nt)`
|
|
|
1619
1625
|
resolveVersionJump: $
|
|
1620
1626
|
}) => {
|
|
1621
1627
|
const {
|
|
1622
|
-
closeSlideOut:
|
|
1628
|
+
closeSlideOut: ae,
|
|
1623
1629
|
openPip: ce,
|
|
1624
1630
|
user: de,
|
|
1625
1631
|
isGuest: ue,
|
|
@@ -1627,19 +1633,19 @@ const Xn = I(nt)`
|
|
|
1627
1633
|
setEntities: pe,
|
|
1628
1634
|
slideOut: K,
|
|
1629
1635
|
useSearchParams: me,
|
|
1630
|
-
SubtasksManager:
|
|
1636
|
+
SubtasksManager: X,
|
|
1631
1637
|
useNavigate: he
|
|
1632
|
-
} =
|
|
1638
|
+
} = se(), { currentTab: j, setTab: z, isFeed: Y } = kn(N), [xe, ge] = me(), ve = le(!1), S = F?.entityType ?? e, fe = F?.entities ?? o, k = F?.entitySubTypes ?? n, B = F?.entities ? [] : t, _ = F?.entities ? F.entities.map((p) => p.projectName) : m;
|
|
1633
1639
|
hn(
|
|
1634
|
-
S ?
|
|
1640
|
+
S ? fe.map((p) => ({ ...p, entityType: S })) : [],
|
|
1635
1641
|
h ? qe.slideOut : qe.detailsPanel
|
|
1636
1642
|
), Q(() => {
|
|
1637
1643
|
C && !ve.current && (ve.current = !0, C());
|
|
1638
1644
|
}, []);
|
|
1639
|
-
const { tabs:
|
|
1645
|
+
const { tabs: re, isLoading: oe } = pt(S), Z = re.find((p) => p.key === j), Se = Ke(j) && oe;
|
|
1640
1646
|
Q(() => {
|
|
1641
|
-
tt.includes(S) &&
|
|
1642
|
-
}, [S,
|
|
1647
|
+
tt.includes(S) && j !== "details" && !Z && !Se && z("details");
|
|
1648
|
+
}, [S, j, z, Z, Se]), Q(() => {
|
|
1643
1649
|
o.length && F && pe(null);
|
|
1644
1650
|
}, [o, F, pe]);
|
|
1645
1651
|
const ye = w(
|
|
@@ -1647,44 +1653,44 @@ const Xn = I(nt)`
|
|
|
1647
1653
|
[f, _]
|
|
1648
1654
|
), Ce = w(() => ht(ye), [ye]);
|
|
1649
1655
|
Q(() => {
|
|
1650
|
-
|
|
1651
|
-
}, [S,
|
|
1652
|
-
let
|
|
1656
|
+
j === "files" && S !== "version" && z("feed"), j === "subtasks" && S !== "task" && z("feed"), Ke(j) && !oe && !Z && z(tt.includes(S) ? "details" : "feed");
|
|
1657
|
+
}, [S, j, N, oe, Z]);
|
|
1658
|
+
let ee = fe.length ? fe.map((p) => ({ id: p.id, projectName: p.projectName })) : (
|
|
1653
1659
|
// @ts-expect-error = not sure what's going on with activeEntitiesData, we should try and remove it
|
|
1654
|
-
|
|
1660
|
+
B.map((p) => ({ id: p.id, projectName: p.projectName }))
|
|
1655
1661
|
);
|
|
1656
|
-
|
|
1662
|
+
ee = ee.filter((p) => p.id);
|
|
1657
1663
|
const {
|
|
1658
1664
|
data: M = [],
|
|
1659
|
-
isFetching:
|
|
1665
|
+
isFetching: te,
|
|
1660
1666
|
isError: d,
|
|
1661
1667
|
originalArgs: P
|
|
1662
1668
|
} = it(
|
|
1663
|
-
{ entityType: S, entities:
|
|
1669
|
+
{ entityType: S, entities: ee },
|
|
1664
1670
|
{
|
|
1665
|
-
skip: !
|
|
1671
|
+
skip: !ee.length || !Gt.includes(S)
|
|
1666
1672
|
}
|
|
1667
1673
|
);
|
|
1668
1674
|
Q(() => {
|
|
1669
|
-
h ||
|
|
1675
|
+
h || ae();
|
|
1670
1676
|
}, [P, h]);
|
|
1671
1677
|
const W = le(null);
|
|
1672
1678
|
Q(() => {
|
|
1673
1679
|
F || (W.current = null);
|
|
1674
1680
|
}, [F]), Q(() => {
|
|
1675
|
-
if (!
|
|
1681
|
+
if (!te && (F?.source === "uri" || F?.source === "url") && F?.entities?.length && I) {
|
|
1676
1682
|
const p = F.entities[0].id;
|
|
1677
1683
|
if (W.current === p) return;
|
|
1678
1684
|
const L = M.find((q) => q.id === p);
|
|
1679
1685
|
if (!L) return;
|
|
1680
|
-
W.current = p,
|
|
1686
|
+
W.current = p, I(L, F.source);
|
|
1681
1687
|
}
|
|
1682
|
-
}, [M,
|
|
1683
|
-
const
|
|
1688
|
+
}, [M, te, F, I]);
|
|
1689
|
+
const J = ft(f), H = _[0], $e = f[H] || {}, G = M[0] || {}, Te = M[M.length - 1], Pe = _[_.length - 1], Me = N === "inbox" && S === "version" && M.length === 1 ? ms(M[0]) : void 0, [_e, St] = Ss({
|
|
1684
1690
|
entity: G,
|
|
1685
1691
|
entityType: S,
|
|
1686
|
-
projectName:
|
|
1687
|
-
isLoading:
|
|
1692
|
+
projectName: H,
|
|
1693
|
+
isLoading: te
|
|
1688
1694
|
}), { setEntityUri: Ct, setUri: He } = wn();
|
|
1689
1695
|
Q(() => {
|
|
1690
1696
|
if (!Te?.parents || !Pe) return;
|
|
@@ -1702,14 +1708,14 @@ const Xn = I(nt)`
|
|
|
1702
1708
|
}), () => {
|
|
1703
1709
|
He("");
|
|
1704
1710
|
};
|
|
1705
|
-
}, [M, _, S]),
|
|
1711
|
+
}, [M, _, S]), Xn({
|
|
1706
1712
|
entityData: Te,
|
|
1707
1713
|
project: Pe,
|
|
1708
1714
|
activeEntityType: S,
|
|
1709
|
-
entitiesToQuery:
|
|
1715
|
+
entitiesToQuery: ee
|
|
1710
1716
|
});
|
|
1711
1717
|
const Tt = () => {
|
|
1712
|
-
|
|
1718
|
+
ge(
|
|
1713
1719
|
(p) => {
|
|
1714
1720
|
const L = new URLSearchParams(p);
|
|
1715
1721
|
return L.delete("project"), L.delete("type"), L.delete("id"), L;
|
|
@@ -1717,7 +1723,7 @@ const Xn = I(nt)`
|
|
|
1717
1723
|
{ replace: !0 }
|
|
1718
1724
|
);
|
|
1719
1725
|
}, De = () => {
|
|
1720
|
-
U?.(), pe(null), He(""), Tt(),
|
|
1726
|
+
U?.(), pe(null), He(""), Tt(), ae();
|
|
1721
1727
|
};
|
|
1722
1728
|
Q(() => {
|
|
1723
1729
|
const p = (L) => {
|
|
@@ -1729,8 +1735,8 @@ const Xn = I(nt)`
|
|
|
1729
1735
|
};
|
|
1730
1736
|
return window.addEventListener("keydown", p), () => window.removeEventListener("keydown", p);
|
|
1731
1737
|
}, [De, h, K]);
|
|
1732
|
-
const { requestPipWindow: Nt } = xn(), Be = le(null), We = le(null),
|
|
1733
|
-
const p = G?.label || G?.name || "", L = G?.parents || [], q = [
|
|
1738
|
+
const { requestPipWindow: Nt } = xn(), Be = le(null), We = le(null), It = M.length === 1 && S !== "representation", Et = w(() => {
|
|
1739
|
+
const p = G?.label || G?.name || "", L = G?.parents || [], q = [H];
|
|
1734
1740
|
switch (S) {
|
|
1735
1741
|
case "folder":
|
|
1736
1742
|
case "task":
|
|
@@ -1747,26 +1753,26 @@ const Xn = I(nt)`
|
|
|
1747
1753
|
q.push(p);
|
|
1748
1754
|
}
|
|
1749
1755
|
return q.filter(Boolean).join(" - ");
|
|
1750
|
-
}, [G, S,
|
|
1756
|
+
}, [G, S, H]), Pt = () => {
|
|
1751
1757
|
ce({
|
|
1752
1758
|
entityType: S,
|
|
1753
|
-
entities:
|
|
1759
|
+
entities: ee,
|
|
1754
1760
|
scope: N
|
|
1755
1761
|
}), Nt(500, 500);
|
|
1756
1762
|
}, Dt = w(
|
|
1757
1763
|
() => ({
|
|
1758
|
-
projectName:
|
|
1764
|
+
projectName: H,
|
|
1759
1765
|
entityType: S,
|
|
1760
1766
|
entities: M.filter((p) => !!p?.id).map((p) => ({
|
|
1761
1767
|
id: p.id,
|
|
1762
1768
|
entityType: p.entityType || S,
|
|
1763
|
-
projectName: p.projectName ||
|
|
1769
|
+
projectName: p.projectName || H,
|
|
1764
1770
|
name: p.name,
|
|
1765
1771
|
label: p.label || void 0
|
|
1766
1772
|
})),
|
|
1767
1773
|
scope: N
|
|
1768
1774
|
}),
|
|
1769
|
-
[
|
|
1775
|
+
[H, S, M, N]
|
|
1770
1776
|
), ze = () => !(_.length > 1 || ue && (!y || !Object.prototype.hasOwnProperty.call(
|
|
1771
1777
|
A,
|
|
1772
1778
|
de.attrib?.email || ""
|
|
@@ -1776,31 +1782,31 @@ const Xn = I(nt)`
|
|
|
1776
1782
|
{
|
|
1777
1783
|
thumbnailInputRef: Be,
|
|
1778
1784
|
versionsInputRef: We,
|
|
1779
|
-
canUploadVersion:
|
|
1780
|
-
children: /* @__PURE__ */ x(
|
|
1781
|
-
/* @__PURE__ */ x(
|
|
1785
|
+
canUploadVersion: It,
|
|
1786
|
+
children: /* @__PURE__ */ x(ts, { className: "details-panel", children: [
|
|
1787
|
+
/* @__PURE__ */ x(Yn, { children: [
|
|
1782
1788
|
/* @__PURE__ */ i(
|
|
1783
1789
|
pn,
|
|
1784
1790
|
{
|
|
1785
1791
|
segments: _e,
|
|
1786
1792
|
versions: St,
|
|
1787
|
-
projectName:
|
|
1793
|
+
projectName: H,
|
|
1788
1794
|
hideProjectName: h,
|
|
1789
|
-
isLoading:
|
|
1795
|
+
isLoading: te || !_e.length,
|
|
1790
1796
|
entityType: S,
|
|
1791
1797
|
scope: N,
|
|
1792
1798
|
entityTypeIcons: Ce
|
|
1793
1799
|
}
|
|
1794
1800
|
),
|
|
1795
|
-
/* @__PURE__ */ x(
|
|
1801
|
+
/* @__PURE__ */ x(Zn, { className: "right-tools", children: [
|
|
1796
1802
|
/* @__PURE__ */ i(
|
|
1797
|
-
|
|
1803
|
+
ks,
|
|
1798
1804
|
{
|
|
1799
1805
|
entityType: S,
|
|
1800
1806
|
entityId: G?.id,
|
|
1801
|
-
entityIds:
|
|
1802
|
-
entityLabel:
|
|
1803
|
-
projectName:
|
|
1807
|
+
entityIds: ee.map((p) => p.id).filter(Boolean),
|
|
1808
|
+
entityLabel: Et,
|
|
1809
|
+
projectName: H,
|
|
1804
1810
|
selectedEntities: M.filter((p) => !!p?.id).map((p) => {
|
|
1805
1811
|
const L = p.entityType || S;
|
|
1806
1812
|
return {
|
|
@@ -1809,7 +1815,7 @@ const Xn = I(nt)`
|
|
|
1809
1815
|
hasReviewables: !!p.hasReviewables,
|
|
1810
1816
|
name: p.name,
|
|
1811
1817
|
label: p.label,
|
|
1812
|
-
projectName: p.projectName ||
|
|
1818
|
+
projectName: p.projectName || H,
|
|
1813
1819
|
folderId: L === "task" ? p.folder?.id : void 0
|
|
1814
1820
|
};
|
|
1815
1821
|
}),
|
|
@@ -1824,15 +1830,15 @@ const Xn = I(nt)`
|
|
|
1824
1830
|
/* @__PURE__ */ i(
|
|
1825
1831
|
ln,
|
|
1826
1832
|
{
|
|
1827
|
-
entities:
|
|
1833
|
+
entities: ee,
|
|
1828
1834
|
entityType: S,
|
|
1829
1835
|
options: r || [],
|
|
1830
|
-
onWatchersUpdate:
|
|
1836
|
+
onWatchersUpdate: O && O,
|
|
1831
1837
|
userName: de.name
|
|
1832
1838
|
}
|
|
1833
1839
|
),
|
|
1834
1840
|
U && /* @__PURE__ */ i(
|
|
1835
|
-
|
|
1841
|
+
ne,
|
|
1836
1842
|
{
|
|
1837
1843
|
icon: "close",
|
|
1838
1844
|
variant: "text",
|
|
@@ -1843,14 +1849,14 @@ const Xn = I(nt)`
|
|
|
1843
1849
|
] })
|
|
1844
1850
|
] }),
|
|
1845
1851
|
Me && /* @__PURE__ */ i(
|
|
1846
|
-
|
|
1852
|
+
ps,
|
|
1847
1853
|
{
|
|
1848
1854
|
latestVersion: Me,
|
|
1849
1855
|
resolveVersionJump: $
|
|
1850
1856
|
}
|
|
1851
1857
|
),
|
|
1852
1858
|
/* @__PURE__ */ i(
|
|
1853
|
-
|
|
1859
|
+
cs,
|
|
1854
1860
|
{
|
|
1855
1861
|
entityType: S,
|
|
1856
1862
|
entitySubTypes: k,
|
|
@@ -1859,10 +1865,10 @@ const Xn = I(nt)`
|
|
|
1859
1865
|
disabledAssignees: l,
|
|
1860
1866
|
disabledStatuses: a,
|
|
1861
1867
|
tagsOptions: s,
|
|
1862
|
-
isFetching:
|
|
1868
|
+
isFetching: te,
|
|
1863
1869
|
isCompact: V,
|
|
1864
|
-
currentTab:
|
|
1865
|
-
onTabChange:
|
|
1870
|
+
currentTab: j,
|
|
1871
|
+
onTabChange: z,
|
|
1866
1872
|
projectInfo: ye,
|
|
1867
1873
|
onOpenViewer: (p) => c?.(p),
|
|
1868
1874
|
onEntityFocus: g,
|
|
@@ -1870,18 +1876,18 @@ const Xn = I(nt)`
|
|
|
1870
1876
|
versionsInputRef: We
|
|
1871
1877
|
}
|
|
1872
1878
|
),
|
|
1873
|
-
/* @__PURE__ */ x(ct, { projectName:
|
|
1874
|
-
|
|
1879
|
+
/* @__PURE__ */ x(ct, { projectName: H, children: [
|
|
1880
|
+
Y && !d && /* @__PURE__ */ i(
|
|
1875
1881
|
bt,
|
|
1876
1882
|
{
|
|
1877
1883
|
entityType: S,
|
|
1878
1884
|
entities: M,
|
|
1879
1885
|
activeUsers: u || [],
|
|
1880
1886
|
projectInfo: $e,
|
|
1881
|
-
projectName:
|
|
1887
|
+
projectName: H,
|
|
1882
1888
|
disabled: !ze(),
|
|
1883
1889
|
scope: N,
|
|
1884
|
-
statuses:
|
|
1890
|
+
statuses: J,
|
|
1885
1891
|
readOnly: !1,
|
|
1886
1892
|
entityListId: y,
|
|
1887
1893
|
annotations: T,
|
|
@@ -1890,46 +1896,46 @@ const Xn = I(nt)`
|
|
|
1890
1896
|
isSlideOut: h
|
|
1891
1897
|
}
|
|
1892
1898
|
),
|
|
1893
|
-
|
|
1894
|
-
|
|
1899
|
+
j === "subtasks" && S === "task" && G?.id && X && /* @__PURE__ */ i(
|
|
1900
|
+
Vs,
|
|
1895
1901
|
{
|
|
1896
|
-
projectName:
|
|
1902
|
+
projectName: H,
|
|
1897
1903
|
taskId: G.id,
|
|
1898
1904
|
taskName: G.name,
|
|
1899
1905
|
folderId: G.folder?.id,
|
|
1900
1906
|
subtasks: G.task?.subtasks || [],
|
|
1901
|
-
SubtasksManager:
|
|
1907
|
+
SubtasksManager: X,
|
|
1902
1908
|
useNavigate: he,
|
|
1903
|
-
onNotFound: () =>
|
|
1909
|
+
onNotFound: () => z("feed")
|
|
1904
1910
|
}
|
|
1905
1911
|
),
|
|
1906
|
-
|
|
1912
|
+
Z && /* @__PURE__ */ i(es, { children: /* @__PURE__ */ i(
|
|
1907
1913
|
Fn,
|
|
1908
1914
|
{
|
|
1909
|
-
contribution:
|
|
1915
|
+
contribution: Z,
|
|
1910
1916
|
context: Dt
|
|
1911
1917
|
},
|
|
1912
|
-
|
|
1918
|
+
Z.key
|
|
1913
1919
|
) }),
|
|
1914
|
-
|
|
1915
|
-
|
|
1920
|
+
j === "files" && /* @__PURE__ */ i(
|
|
1921
|
+
us,
|
|
1916
1922
|
{
|
|
1917
1923
|
entities: M,
|
|
1918
1924
|
scope: N,
|
|
1919
|
-
isLoadingVersion:
|
|
1925
|
+
isLoadingVersion: te
|
|
1920
1926
|
}
|
|
1921
1927
|
),
|
|
1922
|
-
|
|
1923
|
-
|
|
1928
|
+
j === "details" && /* @__PURE__ */ i(
|
|
1929
|
+
Cs,
|
|
1924
1930
|
{
|
|
1925
1931
|
entityType: S,
|
|
1926
1932
|
entities: M,
|
|
1927
1933
|
activeUsers: u || [],
|
|
1928
1934
|
projectInfo: $e,
|
|
1929
|
-
projectName:
|
|
1935
|
+
projectName: H,
|
|
1930
1936
|
disabled: !ze(),
|
|
1931
1937
|
scope: N,
|
|
1932
|
-
statuses:
|
|
1938
|
+
statuses: J,
|
|
1933
1939
|
readOnly: !1,
|
|
1934
1940
|
annotations: T,
|
|
1935
1941
|
removeAnnotation: D,
|
|
@@ -1938,7 +1944,7 @@ const Xn = I(nt)`
|
|
|
1938
1944
|
cn,
|
|
1939
1945
|
{
|
|
1940
1946
|
entities: M,
|
|
1941
|
-
isLoading:
|
|
1947
|
+
isLoading: te
|
|
1942
1948
|
}
|
|
1943
1949
|
)
|
|
1944
1950
|
}
|
|
@@ -1947,14 +1953,14 @@ const Xn = I(nt)`
|
|
|
1947
1953
|
] })
|
|
1948
1954
|
}
|
|
1949
1955
|
);
|
|
1950
|
-
},
|
|
1956
|
+
}, $s = ({
|
|
1951
1957
|
isOpen: e,
|
|
1952
1958
|
entityType: n,
|
|
1953
1959
|
...t
|
|
1954
1960
|
}) => {
|
|
1955
|
-
const { entities: o } =
|
|
1956
|
-
return !e && !o || !n && !o ? null : /* @__PURE__ */ i(
|
|
1957
|
-
},
|
|
1961
|
+
const { entities: o } = se();
|
|
1962
|
+
return !e && !o || !n && !o ? null : /* @__PURE__ */ i(Us, { ...t, entityType: n || o?.entityType });
|
|
1963
|
+
}, Ms = Mt`
|
|
1958
1964
|
from {
|
|
1959
1965
|
translate: 0 0;
|
|
1960
1966
|
}
|
|
@@ -1962,7 +1968,7 @@ to {
|
|
|
1962
1968
|
translate: calc(-100% - 8px) 0;
|
|
1963
1969
|
|
|
1964
1970
|
}
|
|
1965
|
-
`,
|
|
1971
|
+
`, _s = E.div`
|
|
1966
1972
|
position: absolute;
|
|
1967
1973
|
left: 0;
|
|
1968
1974
|
top: 0;
|
|
@@ -1971,11 +1977,11 @@ to {
|
|
|
1971
1977
|
width: 100%;
|
|
1972
1978
|
max-width: 533px;
|
|
1973
1979
|
|
|
1974
|
-
animation: ${
|
|
1975
|
-
`,
|
|
1976
|
-
const { slideOut: t, onOpenViewer: o } =
|
|
1977
|
-
return l ? /* @__PURE__ */ i(
|
|
1978
|
-
|
|
1980
|
+
animation: ${Ms} 0.2s ease forwards;
|
|
1981
|
+
`, Ha = ({ projectsInfo: e, scope: n }) => {
|
|
1982
|
+
const { slideOut: t, onOpenViewer: o } = se(), { entityType: s, entityId: a, projectName: r } = t || {}, l = !!s && !!a && !!r, { data: u } = ot({ projectName: r }, { skip: !r }), f = e[r || ""] || {}, { tags: m = [] } = f, { closeSlideOut: h } = se(), b = () => h(), N = (V) => o?.(V);
|
|
1983
|
+
return l ? /* @__PURE__ */ i(_s, { children: /* @__PURE__ */ i(
|
|
1984
|
+
$s,
|
|
1979
1985
|
{
|
|
1980
1986
|
isOpen: !0,
|
|
1981
1987
|
entityType: s,
|
|
@@ -1993,20 +1999,20 @@ to {
|
|
|
1993
1999
|
}
|
|
1994
2000
|
) }) : null;
|
|
1995
2001
|
};
|
|
1996
|
-
|
|
2002
|
+
E(Jn)`
|
|
1997
2003
|
.p-dialog-header-icons {
|
|
1998
2004
|
display: none;
|
|
1999
2005
|
}
|
|
2000
2006
|
.p-dialog-content {
|
|
2001
2007
|
}
|
|
2002
2008
|
`;
|
|
2003
|
-
const
|
|
2009
|
+
const Hs = E.div`
|
|
2004
2010
|
display: flex;
|
|
2005
2011
|
flex-direction: column;
|
|
2006
2012
|
margin: -8px;
|
|
2007
2013
|
width: calc(100% + 16px);
|
|
2008
2014
|
height: calc(100% + 16px);
|
|
2009
|
-
`,
|
|
2015
|
+
`, Bs = E.header`
|
|
2010
2016
|
display: flex;
|
|
2011
2017
|
align-items: flex-start;
|
|
2012
2018
|
gap: var(--base-gap-large);
|
|
@@ -2018,7 +2024,7 @@ const _s = I.div`
|
|
|
2018
2024
|
display: none;
|
|
2019
2025
|
}
|
|
2020
2026
|
}
|
|
2021
|
-
`,
|
|
2027
|
+
`, Ws = E.div`
|
|
2022
2028
|
display: flex;
|
|
2023
2029
|
flex-direction: column;
|
|
2024
2030
|
height: 100%;
|
|
@@ -2055,12 +2061,12 @@ const _s = I.div`
|
|
|
2055
2061
|
align-items: center;
|
|
2056
2062
|
gap: var(--base-gap-medium);
|
|
2057
2063
|
}
|
|
2058
|
-
`,
|
|
2064
|
+
`, zs = E.div`
|
|
2059
2065
|
display: flex;
|
|
2060
2066
|
justify-content: space-between;
|
|
2061
2067
|
padding: 8px;
|
|
2062
2068
|
padding-top: 0;
|
|
2063
|
-
`,
|
|
2069
|
+
`, Gs = E.div`
|
|
2064
2070
|
border-top: solid 1px var(--md-sys-color-outline-variant);
|
|
2065
2071
|
height: 100%;
|
|
2066
2072
|
overflow: hidden;
|
|
@@ -2079,7 +2085,7 @@ const _s = I.div`
|
|
|
2079
2085
|
display: none;
|
|
2080
2086
|
}
|
|
2081
2087
|
}
|
|
2082
|
-
`,
|
|
2088
|
+
`, Qs = E.div`
|
|
2083
2089
|
display: flex;
|
|
2084
2090
|
align-items: center;
|
|
2085
2091
|
gap: var(--base-gap-small);
|
|
@@ -2090,8 +2096,8 @@ const _s = I.div`
|
|
|
2090
2096
|
.icon {
|
|
2091
2097
|
font-variation-settings: 'FILL' 1;
|
|
2092
2098
|
}
|
|
2093
|
-
`,
|
|
2094
|
-
const { pip: e } =
|
|
2099
|
+
`, Ba = () => {
|
|
2100
|
+
const { pip: e } = se(), n = e?.entityType, t = e?.entities || [], o = e?.scope || "", s = t.length > 0 && !!n, a = t.map((v) => v.projectName), { data: r = [] } = Qt({ projects: a }, { skip: !s }), { data: l = {}, isFetching: u } = qt(
|
|
2095
2101
|
{
|
|
2096
2102
|
projects: a
|
|
2097
2103
|
},
|
|
@@ -2118,24 +2124,24 @@ const _s = I.div`
|
|
|
2118
2124
|
), V = w(
|
|
2119
2125
|
() => n ? mt(m, n, N) : [],
|
|
2120
2126
|
[m, n]
|
|
2121
|
-
), U = w(() => r.filter((v) => m.some((y) => y?.task?.assignees?.includes(v.name))).map((v) => ({ ...v, avatarUrl: `/api/users/${v.name}/avatar` })), [r, t]),
|
|
2122
|
-
if (!m.length || !
|
|
2127
|
+
), U = w(() => r.filter((v) => m.some((y) => y?.task?.assignees?.includes(v.name))).map((v) => ({ ...v, avatarUrl: `/api/users/${v.name}/avatar` })), [r, t]), O = m[0];
|
|
2128
|
+
if (!m.length || !O) return null;
|
|
2123
2129
|
if (h) return /* @__PURE__ */ i("div", { children: "Loading..." });
|
|
2124
|
-
const c =
|
|
2130
|
+
const c = O?.projectName, I = m.some((v) => v?.status !== O?.status) ? {
|
|
2125
2131
|
icon: "question_mark",
|
|
2126
2132
|
color: "var(--md-sys-color-surface-container-highest)",
|
|
2127
2133
|
name: "Mixed statuses"
|
|
2128
|
-
} : f.find((v) => v.name ===
|
|
2134
|
+
} : f.find((v) => v.name === O?.status) || {
|
|
2129
2135
|
icon: "",
|
|
2130
2136
|
color: "",
|
|
2131
2137
|
name: "None"
|
|
2132
2138
|
};
|
|
2133
2139
|
if (!n) return null;
|
|
2134
2140
|
const { title: T, subTitle: D } = gt(m, n);
|
|
2135
|
-
return /* @__PURE__ */ i(Sn, { children: /* @__PURE__ */ i(ct, { projectName: c, children: /* @__PURE__ */ x(
|
|
2136
|
-
/* @__PURE__ */ x(
|
|
2141
|
+
return /* @__PURE__ */ i(Sn, { children: /* @__PURE__ */ i(ct, { projectName: c, children: /* @__PURE__ */ x(Hs, { children: [
|
|
2142
|
+
/* @__PURE__ */ x(Bs, { children: [
|
|
2137
2143
|
/* @__PURE__ */ i(rt, { thumbnails: V }),
|
|
2138
|
-
/* @__PURE__ */ x(
|
|
2144
|
+
/* @__PURE__ */ x(Ws, { children: [
|
|
2139
2145
|
/* @__PURE__ */ i("h2", { children: T }),
|
|
2140
2146
|
/* @__PURE__ */ x("div", { className: "sub-title", children: [
|
|
2141
2147
|
/* @__PURE__ */ x("span", { children: [
|
|
@@ -2146,28 +2152,28 @@ const _s = I.div`
|
|
|
2146
2152
|
] })
|
|
2147
2153
|
] })
|
|
2148
2154
|
] }),
|
|
2149
|
-
/* @__PURE__ */ x(
|
|
2155
|
+
/* @__PURE__ */ x(zs, { children: [
|
|
2150
2156
|
/* @__PURE__ */ x(
|
|
2151
|
-
|
|
2157
|
+
Qs,
|
|
2152
2158
|
{
|
|
2153
2159
|
style: {
|
|
2154
|
-
backgroundColor:
|
|
2155
|
-
color: Re(
|
|
2160
|
+
backgroundColor: I?.color,
|
|
2161
|
+
color: Re(I?.color)
|
|
2156
2162
|
},
|
|
2157
2163
|
children: [
|
|
2158
|
-
/* @__PURE__ */ i(
|
|
2159
|
-
/* @__PURE__ */ i("span", { className: "label", children:
|
|
2164
|
+
/* @__PURE__ */ i(Ie, { icon: I.icon || "question_mark", style: { color: "inherit" } }),
|
|
2165
|
+
/* @__PURE__ */ i("span", { className: "label", children: I?.name })
|
|
2160
2166
|
]
|
|
2161
2167
|
}
|
|
2162
2168
|
),
|
|
2163
2169
|
/* @__PURE__ */ i(Lt, { users: U, style: { pointerEvents: "none" } })
|
|
2164
2170
|
] }),
|
|
2165
|
-
/* @__PURE__ */ i(
|
|
2171
|
+
/* @__PURE__ */ i(Gs, { children: /* @__PURE__ */ i(
|
|
2166
2172
|
bt,
|
|
2167
2173
|
{
|
|
2168
2174
|
entityType: n,
|
|
2169
2175
|
entities: m,
|
|
2170
|
-
thumbnailHash:
|
|
2176
|
+
thumbnailHash: O?.thumbnailHash,
|
|
2171
2177
|
activeUsers: [],
|
|
2172
2178
|
projectInfo: l[c],
|
|
2173
2179
|
projectName: c,
|
|
@@ -2181,22 +2187,22 @@ const _s = I.div`
|
|
|
2181
2187
|
};
|
|
2182
2188
|
export {
|
|
2183
2189
|
on as AssigneeSelect,
|
|
2184
|
-
|
|
2190
|
+
Ga as CloseButton,
|
|
2185
2191
|
en as Content,
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2192
|
+
Qa as ContentRow,
|
|
2193
|
+
$s as DetailsPanel,
|
|
2194
|
+
Ba as DetailsPanelFloating,
|
|
2195
|
+
Ha as DetailsPanelSlideOut,
|
|
2196
|
+
qa as Footer,
|
|
2191
2197
|
Yt as Grid,
|
|
2192
2198
|
Zt as Header,
|
|
2193
2199
|
Xt as HeaderContainer,
|
|
2194
|
-
|
|
2200
|
+
Ka as LabelWrapper,
|
|
2195
2201
|
rn as PriorityEnumDropdown,
|
|
2196
2202
|
sn as ReadOnlyTags,
|
|
2197
2203
|
an as StatusSelect,
|
|
2198
2204
|
nn as TagsSelect,
|
|
2199
|
-
|
|
2205
|
+
Ja as ThumbnailWrapper,
|
|
2200
2206
|
tn as Title,
|
|
2201
2207
|
tt as entitiesWithoutFeed
|
|
2202
2208
|
};
|