@ynput/ayon-frontend-shared 0.7.0 → 0.7.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.
Files changed (36) hide show
  1. package/dist/DetailsPanel.es.js +765 -739
  2. package/dist/ListTable.es.js +80 -80
  3. package/dist/NewEntity.es.js +2 -2
  4. package/dist/ProjectTreeTable.es.js +1424 -1409
  5. package/dist/Views.es.js +572 -570
  6. package/dist/api.es.js +300 -298
  7. package/dist/chunks/Actions.es.js +5 -5
  8. package/dist/chunks/DetailsDialog.es.js +3 -3
  9. package/dist/chunks/EntityPath.es.js +14 -14
  10. package/dist/chunks/EntityPickerDialog.es.js +1 -1
  11. package/dist/chunks/EntityTooltip.es.js +18 -18
  12. package/dist/chunks/Feed.es.js +2 -2
  13. package/dist/chunks/MetaWidget.es.js +2422 -2149
  14. package/dist/chunks/PlayableIcon.es.js +20 -20
  15. package/dist/chunks/ProjectContext.es.js +6 -6
  16. package/dist/chunks/RepresentationsList.es.js +1 -1
  17. package/dist/chunks/ReviewablesSelector.es.js +2 -2
  18. package/dist/chunks/Slicer.es.js +2 -2
  19. package/dist/chunks/TableExportContextInstance.es.js +1 -1
  20. package/dist/chunks/ThumbnailSimple.es.js +12 -12
  21. package/dist/chunks/Watchers.es.js +907 -855
  22. package/dist/chunks/getUris.es.js +1272 -1209
  23. package/dist/chunks/searchTerms.es.js +30 -66
  24. package/dist/chunks/useAttributeEnums.es.js +37 -37
  25. package/dist/chunks/viewUpdateHelper.es.js +10 -10
  26. package/dist/components.es.js +132 -131
  27. package/dist/context.es.js +76 -76
  28. package/dist/hooks.es.js +51 -50
  29. package/dist/types/ProjectTreeTable.d.ts +21 -1
  30. package/dist/types/Slicer.d.ts +6 -4
  31. package/dist/types/Views.d.ts +4 -0
  32. package/dist/types/api.d.ts +411 -438
  33. package/dist/types/components.d.ts +22 -0
  34. package/dist/types/context.d.ts +2 -0
  35. package/dist/types/hooks.d.ts +36 -1
  36. package/package.json +3 -3
@@ -2,23 +2,23 @@ import { jsx as T, jsxs as ge } from "react/jsx-runtime";
2
2
  import { useState as w, useRef as ae, useEffect as _, useCallback as E, useMemo as j } from "react";
3
3
  import { registerRemotes as me } from "@module-federation/enhanced/runtime";
4
4
  import { toast as R } from "react-toastify";
5
- import { d as ie, z as he, R as ye, a as X, p as Pe, A as ve, B as be, G as we, H as Se, I as Ce, J as Ie, K as Ee, L as ke, N as xe, O as Le, Q as Te, U as De, V as Fe, W as je, c as Ae, X as Oe, Y as Re } from "./chunks/TableExportContextInstance.es.js";
6
- import { E as Wt, M as Vt, Z as qt, P as Ht, _ as zt, $ as Yt, T as Kt, a0 as Jt, a1 as Xt, g as Zt, a2 as en, m as tn, b as nn, a3 as on, t as sn, a4 as rn, a5 as an, a6 as ln, a7 as cn, a8 as dn, o as un, u as pn, n as fn, a9 as gn, x as mn, y as hn, aa as yn, ab as Pn, ac as vn, ad as bn, ae as wn, af as Sn, ag as Cn } from "./chunks/TableExportContextInstance.es.js";
5
+ import { d as ie, z as he, R as ye, a as Z, p as Pe, A as ve, B as be, G as we, H as Se, I as Ce, J as Ie, K as Ee, L as ke, N as xe, O as Le, Q as Te, U as De, V as Fe, W as je, c as Oe, X as Ae, Y as Re } from "./chunks/TableExportContextInstance.es.js";
6
+ import { E as Qt, M as Vt, Z as qt, P as Ht, _ as zt, $ as Yt, T as Kt, a0 as Xt, a1 as Zt, g as Jt, a2 as en, m as tn, b as nn, a3 as on, t as sn, a4 as rn, a5 as an, a6 as ln, a7 as cn, a8 as dn, o as un, u as pn, n as fn, a9 as gn, x as mn, y as hn, aa as yn, ab as Pn, ac as vn, ad as bn, ae as wn, af as Sn, ag as Cn } from "./chunks/TableExportContextInstance.es.js";
7
7
  import { aH as Me, bt as Ue } from "./chunks/searchTerms.es.js";
8
- import { cY as Ne, c9 as _e, cn as Be, bt as Ge, c_ as $e, cJ as Qe, bN as We, d4 as Ve, du as qe, cQ as He } from "./chunks/getUris.es.js";
8
+ import { cZ as Ne, ca as _e, co as $e, bu as Be, c$ as Ge, cK as We, bO as Qe, d5 as Ve, dw as qe, cR as He } from "./chunks/getUris.es.js";
9
9
  import "primereact/confirmdialog";
10
10
  import "lodash";
11
- import { v4 as J } from "uuid";
12
- import { g as ze, c as Ye, p as Ke, b as Je } from "./chunks/getBundleMode.es.js";
11
+ import { v4 as X } from "uuid";
12
+ import { g as ze, c as Ye, p as Ke, b as Xe } from "./chunks/getBundleMode.es.js";
13
13
  import { U as En } from "./chunks/getBundleMode.es.js";
14
14
  import { u as le } from "./chunks/useLoadModule.es.js";
15
15
  import { P as xn, T as Ln } from "./chunks/ProjectContext.es.js";
16
16
  import "react-dom";
17
- import { p as Xe, c as Ze, d as et, e as tt, b as se } from "./chunks/DeleteEntitiesConfirmDialog.es.js";
17
+ import { p as Ze, c as Je, d as et, e as tt, b as se } from "./chunks/DeleteEntitiesConfirmDialog.es.js";
18
18
  import { a as Dn } from "./chunks/DeleteEntitiesConfirmDialog.es.js";
19
19
  import { M as jn } from "./chunks/MenuContext.es.js";
20
20
  import { u as nt } from "./chunks/useQueryArgumentChangeLoading.es.js";
21
- import { E as On, F as Rn } from "./chunks/EntityUpdatesContext.es.js";
21
+ import { E as An, F as Rn } from "./chunks/EntityUpdatesContext.es.js";
22
22
  import { useSearchParams as ot } from "react-router-dom";
23
23
  const Tt = ({ children: u, skip: i }) => {
24
24
  const {
@@ -131,22 +131,22 @@ const Tt = ({ children: u, skip: i }) => {
131
131
  debug: n = {},
132
132
  ...a
133
133
  }) => {
134
- const d = a.user, f = ze(d), g = "isGuest" in n ? n.isGuest : d?.data?.isGuest, { powerLicense: P, setPowerpackDialog: v } = X(), c = "hasLicense" in n ? n.hasLicense : !!P || o, [t, e] = w({}), [l, p] = w([]), [S, y] = w([]), L = E(
134
+ const d = a.user, f = ze(d), g = "isGuest" in n ? n.isGuest : d?.data?.isGuest, { powerLicense: P, setPowerpackDialog: v } = Z(), c = "hasLicense" in n ? n.hasLicense : !!P || o, [t, e] = w({}), [l, p] = w([]), [S, y] = w([]), L = E(
135
135
  (C) => t[C] ? t[C] : !1,
136
136
  [t]
137
137
  ), D = E(
138
- (C, B) => {
138
+ (C, $) => {
139
139
  const M = { ...t };
140
- M[C] = B, e(M);
140
+ M[C] = $, e(M);
141
141
  },
142
142
  [t]
143
143
  ), [m, s] = Pe(ve, {}), h = E(
144
144
  (C) => {
145
- const B = m[C];
146
- return be(B) ? B : i;
145
+ const $ = m[C];
146
+ return be($) ? $ : i;
147
147
  },
148
148
  [m, i]
149
- ), [b, I] = w(null), A = E((C) => {
149
+ ), [b, I] = w(null), O = E((C) => {
150
150
  I(C);
151
151
  }, []), F = E(() => {
152
152
  I(null), b && N([]);
@@ -156,20 +156,20 @@ const Tt = ({ children: u, skip: i }) => {
156
156
  }, [a.useLocation().pathname]);
157
157
  const [r, k] = w(null), x = E((C) => {
158
158
  k(C);
159
- }, []), O = E(() => {
159
+ }, []), A = E(() => {
160
160
  k(null);
161
- }, []), [U, G] = w(null), [z, N] = w([]), { uriType: Y, uri: de, entity: $, getUriEntities: ue } = we(), [Q] = a.useSearchParams(), W = Q.get("project"), V = Q.get("type"), q = Q.get("id"), Z = Q.get("activity");
161
+ }, []), [U, B] = w(null), [z, N] = w([]), { uriType: Y, uri: de, entity: G, getUriEntities: ue } = we(), [W] = a.useSearchParams(), Q = W.get("project"), V = W.get("type"), q = W.get("id"), J = W.get("activity");
162
162
  _(() => {
163
- if (!(!W && !V && !q)) {
164
- if (Y === "entity" && $ && $.entityType !== "product") {
163
+ if (!(!Q && !V && !q)) {
164
+ if (Y === "entity" && G && G.entityType !== "product") {
165
165
  ue().then((C) => {
166
166
  if (C.length === 0) return;
167
- const B = C.find((fe) => fe.uri === de), M = B?.entities?.[0];
168
- if (!B || !M) return;
169
- const ne = M?.projectName || $.projectName || "", oe = M.representationId || M.versionId || M.productId || M.taskId || M.folderId;
167
+ const $ = C.find((fe) => fe.uri === de), M = $?.entities?.[0];
168
+ if (!$ || !M) return;
169
+ const ne = M?.projectName || G.projectName || "", oe = M.representationId || M.versionId || M.productId || M.taskId || M.folderId;
170
170
  if (!ne || !oe) return;
171
171
  const pe = {
172
- entityType: $.entityType,
172
+ entityType: G.entityType,
173
173
  entities: [
174
174
  {
175
175
  id: oe,
@@ -178,27 +178,27 @@ const Tt = ({ children: u, skip: i }) => {
178
178
  ],
179
179
  source: "uri"
180
180
  };
181
- G(pe);
181
+ B(pe);
182
182
  }).catch((C) => {
183
183
  console.warn("Failed to get URI entities:", C);
184
184
  });
185
185
  return;
186
186
  }
187
- W && V && q && (G({
187
+ Q && V && q && (B({
188
188
  entityType: V,
189
189
  entities: [
190
190
  {
191
191
  id: q,
192
- projectName: W
192
+ projectName: Q
193
193
  }
194
194
  ],
195
195
  source: "url"
196
- }), Z && (N([Z]), s({
196
+ }), J && (N([J]), s({
197
197
  ...m,
198
198
  overview: "feed"
199
199
  })));
200
200
  }
201
- }, [W, V, q]);
201
+ }, [Q, V, q]);
202
202
  const H = {
203
203
  // open state for the panel by scope
204
204
  panelOpenByScope: t,
@@ -210,7 +210,7 @@ const Tt = ({ children: u, skip: i }) => {
210
210
  getTabForScope: h,
211
211
  // slide out state
212
212
  slideOut: b,
213
- openSlideOut: A,
213
+ openSlideOut: O,
214
214
  closeSlideOut: F,
215
215
  // highlighted activities
216
216
  highlightedActivities: z,
@@ -218,10 +218,10 @@ const Tt = ({ children: u, skip: i }) => {
218
218
  // PiP state
219
219
  pip: r,
220
220
  openPip: x,
221
- closePip: O,
221
+ closePip: A,
222
222
  // entities state
223
223
  entities: U,
224
- setEntities: G,
224
+ setEntities: B,
225
225
  feedAnnotations: l,
226
226
  setFeedAnnotations: p,
227
227
  feedFrameLinks: S,
@@ -234,7 +234,7 @@ const Tt = ({ children: u, skip: i }) => {
234
234
  }, K = ae(H), ee = K.current, te = Object.keys(H);
235
235
  return (te.length !== Object.keys(ee).length || te.some((C) => ee[C] !== H[C])) && (K.current = H), /* @__PURE__ */ T(Se.Provider, { value: K.current, children: u });
236
236
  }, rt = (u) => {
237
- const { setPowerpackDialog: i } = X();
237
+ const { setPowerpackDialog: i } = Z();
238
238
  return _(() => {
239
239
  i({ addon: "planner", feature: "subtasks" }), u?.onNotFound?.();
240
240
  }, [i, u.onNotFound]), null;
@@ -286,17 +286,17 @@ const Tt = ({ children: u, skip: i }) => {
286
286
  }
287
287
  );
288
288
  };
289
- function At({ children: u }) {
289
+ function Ot({ children: u }) {
290
290
  const i = window.location.protocol === "https:" || window.location.hostname === "localhost", o = "documentPictureInPicture" in window && i, [n, a] = w(null), [d, f] = w(null), g = E(() => {
291
291
  f(null), n != null && (n.close(), a(null));
292
292
  }, [n, d]), P = E(
293
293
  async (c, t) => {
294
294
  if (!o) {
295
- f(J());
295
+ f(X());
296
296
  return;
297
297
  }
298
298
  if (n != null) {
299
- console.log("pipWindow is already open"), f(J());
299
+ console.log("pipWindow is already open"), f(X());
300
300
  return;
301
301
  }
302
302
  const e = await window.documentPictureInPicture.requestWindow({
@@ -305,7 +305,7 @@ function At({ children: u }) {
305
305
  });
306
306
  e.addEventListener("pagehide", () => {
307
307
  a(null), f(null);
308
- }), a(e), f(J());
308
+ }), a(e), f(X());
309
309
  },
310
310
  [n, d]
311
311
  );
@@ -339,7 +339,7 @@ function At({ children: u }) {
339
339
  }), [g, o, n, P]);
340
340
  return /* @__PURE__ */ T(Ee.Provider, { value: v, children: u });
341
341
  }
342
- const Ot = ({
342
+ const At = ({
343
343
  children: u,
344
344
  projectName: i,
345
345
  // utils
@@ -381,7 +381,7 @@ const Ot = ({
381
381
  }) => {
382
382
  const [o, n] = w(null), [a, d] = w(null), f = (s) => s !== null && typeof s == "object" && "addon" in s, g = E((s) => {
383
383
  s === null ? (n(null), d(null)) : f(s) ? (n(null), d(s)) : (d(null), n(s));
384
- }, []), P = (s) => s ? Xe[s] : null, v = (s) => {
384
+ }, []), P = (s) => s ? Ze[s] : null, v = (s) => {
385
385
  if (!s) return null;
386
386
  const h = st[s.addon];
387
387
  return h ? { ...h, selectedFeature: s.feature } : null;
@@ -427,15 +427,15 @@ const Ot = ({
427
427
  data: o = {},
428
428
  isLoading: n,
429
429
  error: a
430
- } = Be({ full: !0 }, { skip: i }), { data: d, isLoading: f, error: g } = Ge(), {
430
+ } = $e({ full: !0 }, { skip: i }), { data: d, isLoading: f, error: g } = Be(), {
431
431
  data: P = [],
432
432
  isLoading: v,
433
433
  error: c
434
- } = $e({}, { skip: i }), t = j(() => P.filter((S) => S.active), [P]), {
434
+ } = Ge({}, { skip: i }), t = j(() => P.filter((S) => S.active), [P]), {
435
435
  data: e,
436
436
  isLoading: l,
437
437
  error: p
438
- } = Qe(void 0, { skip: !d?.name });
438
+ } = We(void 0, { skip: !d?.name });
439
439
  return /* @__PURE__ */ T(
440
440
  Te.Provider,
441
441
  {
@@ -476,7 +476,7 @@ const Ot = ({
476
476
  isUninitialized: f,
477
477
  error: g,
478
478
  refetch: P
479
- } = We({ projectName: u, attrib: !0 }), v = nt({ projectName: u }, a || n), c = j(() => {
479
+ } = Qe({ projectName: u, attrib: !0 }), v = nt({ projectName: u }, a || n), c = j(() => {
480
480
  const m = /* @__PURE__ */ new Map();
481
481
  for (const s of o)
482
482
  m.set(s.id, s);
@@ -484,16 +484,16 @@ const Ot = ({
484
484
  }, [o]), t = j(() => (m) => c.get(m), [c]), e = j(
485
485
  () => (m, s, h = {}) => {
486
486
  if (!s.length) return {};
487
- const b = {}, I = new Set(s), A = /* @__PURE__ */ new Set();
487
+ const b = {}, I = new Set(s), O = /* @__PURE__ */ new Set();
488
488
  let F = m;
489
- for (; I.size > 0 && F && !A.has(F); ) {
490
- A.add(F);
489
+ for (; I.size > 0 && F && !O.has(F); ) {
490
+ O.add(F);
491
491
  const r = c.get(F);
492
492
  if (!r) break;
493
493
  const k = r.attrib || {};
494
494
  for (const x of Array.from(I))
495
495
  r.ownAttrib?.includes(x) && x in k && (b[x] = Object.entries(k).find(
496
- ([O]) => O === x
496
+ ([A]) => A === x
497
497
  )?.[1], I.delete(x));
498
498
  F = r.parentId;
499
499
  }
@@ -536,8 +536,8 @@ const Ot = ({
536
536
  const h = s ? [...m] : [], b = [...m];
537
537
  for (; b.length > 0; ) {
538
538
  const I = b.shift();
539
- for (const A of S.get(I) || [])
540
- h.push(A), b.push(A);
539
+ for (const O of S.get(I) || [])
540
+ h.push(O), b.push(O);
541
541
  }
542
542
  return h;
543
543
  },
@@ -582,7 +582,7 @@ const Ot = ({
582
582
  }, [i, n]);
583
583
  const { type: d, entity: f, settings: g } = Ke(o), P = E(
584
584
  ({ projectName: e, folderPath: l, taskName: p, productName: S, versionName: y }) => {
585
- const L = Je({ projectName: e, folderPath: l, taskName: p, productName: S, versionName: y });
585
+ const L = Xe({ projectName: e, folderPath: l, taskName: p, productName: S, versionName: y });
586
586
  n(L);
587
587
  },
588
588
  [n]
@@ -611,7 +611,7 @@ const Ot = ({
611
611
  "product",
612
612
  "task",
613
613
  "folder"
614
- ], lt = "delete-folder-with-children", Bt = ({ children: u }) => {
614
+ ], lt = "delete-folder-with-children", $t = ({ children: u }) => {
615
615
  const [i] = qe(), [o] = He(), [n, a] = w(null), [d, f] = w(null), g = E(
616
616
  (t) => new Promise((e) => f({ payload: t, resolve: e })),
617
617
  []
@@ -629,12 +629,12 @@ const Ot = ({
629
629
  const S = new Set(p.map((r) => r.id)), y = p.filter((r) => r.entityType === "folder" && r.parentId ? !S.has(r.parentId) : (r.entityType === "task" || r.entityType === "product") && r.folderId ? !S.has(r.folderId) : !0), L = async (r, k) => {
630
630
  if (r.length === 0) return;
631
631
  const x = /* @__PURE__ */ new Map();
632
- for (const O of r) {
633
- const U = x.get(O.projectName) || [];
634
- U.push(O), x.set(O.projectName, U);
632
+ for (const A of r) {
633
+ const U = x.get(A.projectName) || [];
634
+ U.push(A), x.set(A.projectName, U);
635
635
  }
636
636
  await Promise.all(
637
- Array.from(x.entries()).map(([O, U]) => {
637
+ Array.from(x.entries()).map(([A, U]) => {
638
638
  const z = [...U].sort(
639
639
  (N, Y) => re.indexOf(N.entityType) - re.indexOf(Y.entityType)
640
640
  ).map((N) => ({
@@ -645,7 +645,7 @@ const Ot = ({
645
645
  }));
646
646
  return i({
647
647
  operationsRequestModel: { operations: z },
648
- projectName: O
648
+ projectName: A
649
649
  }).unwrap();
650
650
  })
651
651
  );
@@ -669,9 +669,9 @@ const Ot = ({
669
669
  try {
670
670
  h = (await Promise.all(
671
671
  Array.from(r.entries()).map(
672
- ([x, O]) => o({
672
+ ([x, A]) => o({
673
673
  projectName: x,
674
- folderIds: O.map((U) => U.id)
674
+ folderIds: A.map((U) => U.id)
675
675
  }).unwrap()
676
676
  )
677
677
  )).flat();
@@ -679,22 +679,22 @@ const Ot = ({
679
679
  console.warn("Failed to fetch folder delete info, falling back to local data", k);
680
680
  }
681
681
  }
682
- const b = Ze(s, h), I = y.filter((r) => r.entityType === "product").length;
682
+ const b = Je(s, h), I = y.filter((r) => r.entityType === "product").length;
683
683
  I > 0 && b.push(
684
684
  I > 1 ? "Deleting these products also deletes all their versions" : "Deleting this product also deletes all its versions"
685
685
  );
686
- const A = et(y), F = y.length === 1 ? y[0] : void 0;
686
+ const O = et(y), F = y.length === 1 ? y[0] : void 0;
687
687
  a({
688
688
  payload: {
689
- entityLabel: A,
689
+ entityLabel: O,
690
690
  childrenDetails: b,
691
691
  expectedCounts: tt(y, h),
692
692
  expectedName: F && (F.label || F.name || F.id)
693
693
  },
694
694
  accept: D,
695
695
  recover: async (r) => Me(r).includes(lt) ? await g({
696
- entityLabel: A,
697
- message: `Are you really sure you want to delete ${A} and all of its dependencies? This cannot be undone. (NOT RECOMMENDED)`,
696
+ entityLabel: O,
697
+ message: `Are you really sure you want to delete ${O} and all of its dependencies? This cannot be undone. (NOT RECOMMENDED)`,
698
698
  childrenDetails: [],
699
699
  expectedCounts: {},
700
700
  expectedName: "force delete",
@@ -762,15 +762,15 @@ const Ot = ({
762
762
  }
763
763
  )
764
764
  ] });
765
- }, ct = "powerpack", dt = "tableExport", ut = "TableExportApp", pt = "1.6.9", Gt = ({ children: u }) => {
766
- const [i, o] = w(null), [, n] = ot(), { powerLicense: a, setPowerpackDialog: d } = X(), { modules: f } = Ae(), g = f.some(
765
+ }, ct = "powerpack", dt = "tableExport", ut = "TableExportApp", pt = "1.6.9", Bt = ({ children: u }) => {
766
+ const [i, o] = w(null), [, n] = ot(), { powerLicense: a, setPowerpackDialog: d } = Z(), { modules: f } = Oe(), g = f.some(
767
767
  (e) => e.addonName === ct && e.modules[dt]?.includes(ut)
768
768
  ), P = !!a && g, v = E((e) => (o(e), () => o((l) => l === e ? null : l)), []), c = E(
769
769
  (e) => {
770
770
  if (!a) return d("tableExport");
771
771
  if (!g)
772
772
  return void R.error("Update to Power Pack " + pt + " to export tables");
773
- n((l) => (l.set(Oe, e), l));
773
+ n((l) => (l.set(Ae, e), l));
774
774
  },
775
775
  [a, g, d, n]
776
776
  ), t = j(
@@ -782,21 +782,21 @@ const Ot = ({
782
782
  export {
783
783
  xe as AddonContext,
784
784
  ke as AddonProjectContext,
785
- Ot as AddonProjectProvider,
785
+ At as AddonProjectProvider,
786
786
  Rt as AddonProvider,
787
787
  je as DeleteEntitiesContext,
788
- Bt as DeleteEntitiesProvider,
788
+ $t as DeleteEntitiesProvider,
789
789
  Se as DetailsPanelContext,
790
790
  Dt as DetailsPanelProvider,
791
- Wt as EntityUpdatesContext,
792
- On as EntityUpdatesProvider,
791
+ Qt as EntityUpdatesContext,
792
+ An as EntityUpdatesProvider,
793
793
  Rn as FORCE_AUTO_SYNC,
794
794
  Te as GlobalContext,
795
795
  Ut as GlobalProvider,
796
796
  Vt as MenuContext,
797
797
  jn as MenuProvider,
798
798
  Ee as PiPContext,
799
- At as PiPProvider,
799
+ Ot as PiPProvider,
800
800
  qt as PiPWrapper,
801
801
  Le as PowerpackContext,
802
802
  Mt as PowerpackProvider,
@@ -812,25 +812,25 @@ export {
812
812
  Yt as SocketProvider,
813
813
  Ce as SubtasksModulesContext,
814
814
  Ft as SubtasksModulesProvider,
815
- Oe as TABLE_EXPORT_SEARCH_PARAM,
815
+ Ae as TABLE_EXPORT_SEARCH_PARAM,
816
816
  ve as TABS_BY_SCOPE_KEY,
817
817
  Re as TableExportContext,
818
- Gt as TableExportProvider,
818
+ Bt as TableExportProvider,
819
819
  Kt as ThumbnailUploadContext,
820
820
  Ln as ThumbnailUploadProvider,
821
821
  Fe as URIContext,
822
822
  _t as URIProvider,
823
823
  En as URL_PARAM_ID,
824
824
  st as addonConfigs,
825
- Jt as getActivityFrameLink,
826
- Xt as getAutoSyncForTopic,
827
- Zt as getUpdateType,
825
+ Xt as getActivityFrameLink,
826
+ Zt as getAutoSyncForTopic,
827
+ Jt as getUpdateType,
828
828
  en as isDeletableEntityType,
829
829
  be as isDetailsPanelTab,
830
830
  tn as matchesProject,
831
831
  nn as matchesTopic,
832
832
  Dn as powerpackFeatureOrder,
833
- Xe as powerpackFeatures,
833
+ Ze as powerpackFeatures,
834
834
  on as setDetailsPanelTabForScope,
835
835
  sn as toggleSyncAll,
836
836
  rn as useAddonContext,
@@ -843,10 +843,10 @@ export {
843
843
  pn as useMenuContext,
844
844
  fn as useOptionalProjectContext,
845
845
  gn as usePiPWindow,
846
- X as usePowerpack,
846
+ Z as usePowerpack,
847
847
  mn as useProjectContext,
848
848
  hn as useProjectFoldersContext,
849
- Ae as useRemoteModules,
849
+ Oe as useRemoteModules,
850
850
  yn as useScopedDetailsPanel,
851
851
  Pn as useSettingsPanel,
852
852
  vn as useSocketContext,
package/dist/hooks.es.js CHANGED
@@ -1,13 +1,13 @@
1
- import { d as k, a as T } from "./chunks/TableExportContextInstance.es.js";
2
- import { q as ie, r as ae, s as ue, p as de, v as ce, w as le } from "./chunks/TableExportContextInstance.es.js";
1
+ import { d as T, a as k } from "./chunks/TableExportContextInstance.es.js";
2
+ import { q as se, r as ie, s as ae, p as ue, v as de, w as ce } from "./chunks/TableExportContextInstance.es.js";
3
3
  import { u as R } from "./chunks/useLoadModule.es.js";
4
4
  import { loadRemote as V } from "@module-federation/enhanced/runtime";
5
5
  import { useRef as G, useState as S, useEffect as v, useCallback as M } from "react";
6
6
  import A from "semver";
7
- import { k as fe, l as pe, m as ge, n as he, o as ye, p as we } from "./chunks/Watchers.es.js";
8
- import { u as Le } from "./chunks/useActionTriggers.es.js";
7
+ import { k as me, l as fe, m as pe, n as ge, o as he, p as ye } from "./chunks/Watchers.es.js";
8
+ import { u as Ee } from "./chunks/useActionTriggers.es.js";
9
9
  import { bc as C } from "./chunks/searchTerms.es.js";
10
- import { bz as N, cW as O } from "./chunks/getUris.es.js";
10
+ import { bA as N, cX as O } from "./chunks/getUris.es.js";
11
11
  import "primereact/confirmdialog";
12
12
  import { jsx as x, jsxs as K } from "react/jsx-runtime";
13
13
  import { toast as U } from "react-toastify";
@@ -19,13 +19,13 @@ import "clsx";
19
19
  import "react-dom";
20
20
  import "react-redux";
21
21
  import "react-router-dom";
22
- import { u as ve } from "./chunks/EntityPickerDialog.es.js";
23
- import { u as Ie } from "./chunks/useQueryArgumentChangeLoading.es.js";
24
- import { u as xe } from "./chunks/useGroupedPagination.es.js";
22
+ import { u as Se } from "./chunks/EntityPickerDialog.es.js";
23
+ import { u as be } from "./chunks/useQueryArgumentChangeLoading.es.js";
24
+ import { u as Ae } from "./chunks/useGroupedPagination.es.js";
25
25
  import "./chunks/ReviewablesSelector.es.js";
26
26
  import "match-sorter";
27
27
  import "./chunks/SimpleForm.es.js";
28
- import "./chunks/MetaWidget.es.js";
28
+ import { f as He } from "./chunks/MetaWidget.es.js";
29
29
  import "date-fns";
30
30
  import "./chunks/PlayableIcon.es.js";
31
31
  import "./chunks/JsonViewer.es.js";
@@ -56,9 +56,9 @@ import "./chunks/ThumbnailSimple.es.js";
56
56
  import "./chunks/Menu.es.js";
57
57
  import H from "styled-components";
58
58
  import { i as W } from "./chunks/isHTMLElement.es.js";
59
- import { u as Pe } from "./chunks/useAttributeEnums.es.js";
59
+ import { u as Te } from "./chunks/useAttributeEnums.es.js";
60
60
  import { a as $ } from "./chunks/afterStartup.es.js";
61
- const Jt = (t, n, e) => {
61
+ const Xt = (t, n, e) => {
62
62
  const o = G(/* @__PURE__ */ new Set()), [m, r] = S(
63
63
  () => p(t)
64
64
  ), [s, f] = S(n.length > 0 && !e);
@@ -183,8 +183,8 @@ const Jt = (t, n, e) => {
183
183
  });
184
184
  }
185
185
  return { modules: m, isLoading: s };
186
- }, Xt = ({ selectors: t = [], init: n }) => {
187
- const { user: e } = k(), { data: { frontendPreferences: o = {} } = {} } = e || {}, m = t.filter((i) => i != null).map((i) => i.replace(/\s/g, ""));
186
+ }, Dt = ({ selectors: t = [], init: n }) => {
187
+ const { user: e } = T(), { data: { frontendPreferences: o = {} } = {} } = e || {}, m = t.filter((i) => i != null).map((i) => i.replace(/\s/g, ""));
188
188
  let r = o;
189
189
  for (const i of m)
190
190
  r = r?.[i];
@@ -212,7 +212,7 @@ const Jt = (t, n, e) => {
212
212
  console.error(p), U.error(p.data?.detail);
213
213
  }
214
214
  }, { isSuccess: !0 }];
215
- }, Yt = ({ groupBy: t, projectName: n, entityType: e }) => {
215
+ }, Jt = ({ groupBy: t, projectName: n, entityType: e }) => {
216
216
  t?.id === "taskType" && (e = "task");
217
217
  const o = t?.id || "", { data: { groups: m = [] } = {}, error: r } = N(
218
218
  { projectName: n, entityType: e, groupingKey: o, empty: !0 },
@@ -222,22 +222,22 @@ const Jt = (t, n, e) => {
222
222
  groups: m,
223
223
  error: r
224
224
  };
225
- }, z = H.li`
225
+ }, q = H.li`
226
226
  display: flex;
227
227
  align-items: center;
228
228
  padding: 0;
229
229
  margin: 0;
230
- `, q = H(_)`
230
+ `, z = H(_)`
231
231
  width: 100%;
232
232
  justify-content: start;
233
233
  `, B = ({
234
234
  requiredVersion: t,
235
235
  fields: n
236
- }) => /* @__PURE__ */ x(F, { feature: "groupAttributes", requiredVersion: t, children: n.map((e) => /* @__PURE__ */ x(z, { children: /* @__PURE__ */ K(q, { variant: "text", icon: e.icon, children: [
236
+ }) => /* @__PURE__ */ x(F, { feature: "groupAttributes", requiredVersion: t, children: n.map((e) => /* @__PURE__ */ x(q, { children: /* @__PURE__ */ K(z, { variant: "text", icon: e.icon, children: [
237
237
  e.label,
238
238
  /* @__PURE__ */ x(j, { icon: "bolt", style: { marginLeft: "auto" } })
239
- ] }) }, e.value)) }), Zt = () => {
240
- const { powerLicense: t } = T(), [n, { outdated: e, isLoading: o }] = R({
239
+ ] }) }, e.value)) }), Yt = () => {
240
+ const { powerLicense: t } = k(), [n, { outdated: e, isLoading: o }] = R({
241
241
  addon: "powerpack",
242
242
  remote: "slicer",
243
243
  module: "GroupSettings",
@@ -252,7 +252,7 @@ const Jt = (t, n, e) => {
252
252
  isLoading: o
253
253
  };
254
254
  }, Q = ["w", "s"];
255
- function te({
255
+ function Zt({
256
256
  reviewables: t,
257
257
  selected: n,
258
258
  onChange: e,
@@ -271,8 +271,8 @@ function te({
271
271
  return window.addEventListener("keydown", r), () => window.removeEventListener("keydown", r);
272
272
  }, [m, t, n, e, o]);
273
273
  }
274
- const D = 4, J = 0.3;
275
- function ee({
274
+ const X = 4, D = 0.3;
275
+ function te({
276
276
  containerRef: t,
277
277
  toolsRef: n,
278
278
  reviewablesCount: e
@@ -287,9 +287,9 @@ function ee({
287
287
  E();
288
288
  const g = new ResizeObserver(E);
289
289
  return g.observe(i), p && g.observe(p), () => g.disconnect();
290
- }, [t, n]), e <= D || !o || !r ? "column" : o - r < o * J ? "row" : "column";
290
+ }, [t, n]), e <= X || !o || !r ? "column" : o - r < o * D ? "row" : "column";
291
291
  }
292
- const re = () => {
292
+ const ee = () => {
293
293
  const { data: t, isLoading: n, isError: e } = O({});
294
294
  return {
295
295
  getProductionAddon: M(
@@ -311,35 +311,36 @@ const re = () => {
311
311
  isLoading: n,
312
312
  isError: e
313
313
  };
314
- }, oe = (t) => {
314
+ }, re = (t) => {
315
315
  const [n, e] = S(!1);
316
316
  return v(() => $(() => e(!0), t), [t]), n;
317
317
  };
318
318
  export {
319
- fe as filterProjectStatuses,
320
- ie as readLocalStorage,
321
- ae as readSessionStorage,
322
- Le as useActionTriggers,
323
- oe as useAfterStartup,
324
- pe as useAttributeEnumOptions,
325
- Pe as useAttributeEnums,
326
- ge as useEntityUpdate,
327
- he as useFetchAttributeEnumOptions,
328
- Yt as useGetEntityGroups,
329
- re as useGetProductionAddon,
330
- Zt as useGroupByRemoteModules,
331
- xe as useGroupedPagination,
332
- ve as useHierarchyTable,
319
+ me as filterProjectStatuses,
320
+ se as readLocalStorage,
321
+ ie as readSessionStorage,
322
+ Ee as useActionTriggers,
323
+ re as useAfterStartup,
324
+ fe as useAttributeEnumOptions,
325
+ Te as useAttributeEnums,
326
+ He as useEditProjectTags,
327
+ pe as useEntityUpdate,
328
+ ge as useFetchAttributeEnumOptions,
329
+ Jt as useGetEntityGroups,
330
+ ee as useGetProductionAddon,
331
+ Yt as useGroupByRemoteModules,
332
+ Ae as useGroupedPagination,
333
+ Se as useHierarchyTable,
333
334
  R as useLoadModule,
334
- Jt as useLoadModules,
335
- ue as useLocalStorage,
336
- Ie as useQueryArgumentChangeLoading,
337
- te as useReviewablesKeyboardNavigation,
338
- ee as useReviewablesLayout,
339
- ye as useScopedStatuses,
340
- we as useScopedTypes,
341
- de as useSessionStorage,
342
- Xt as useUserProjectConfig,
343
- ce as writeLocalStorage,
344
- le as writeSessionStorage
335
+ Xt as useLoadModules,
336
+ ae as useLocalStorage,
337
+ be as useQueryArgumentChangeLoading,
338
+ Zt as useReviewablesKeyboardNavigation,
339
+ te as useReviewablesLayout,
340
+ he as useScopedStatuses,
341
+ ye as useScopedTypes,
342
+ ue as useSessionStorage,
343
+ Dt as useUserProjectConfig,
344
+ de as writeLocalStorage,
345
+ ce as writeSessionStorage
345
346
  };
@@ -26,6 +26,7 @@ import { IconProps } from '@ynput/ayon-react-components';
26
26
  import { Id } from 'react-toastify';
27
27
  import { IStyledComponentBase } from 'styled-components/dist/types';
28
28
  import { JSX as JSX_2 } from 'react/jsx-runtime';
29
+ import { MixedChange } from '@ynput/ayon-react-components';
29
30
  import { Modifier } from '@dnd-kit/core';
30
31
  import { MouseEvent as MouseEvent_2 } from 'react';
31
32
  import { MutableRefObject } from 'react';
@@ -782,7 +783,7 @@ declare interface EditorCellProps extends Omit<React.HTMLAttributes<HTMLDivEleme
782
783
  midnightExclusiveFields?: string[];
783
784
  tooltip?: string;
784
785
  mark?: CellMark;
785
- onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape') => void;
786
+ onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape', listChange?: ListChange) => void;
786
787
  pt?: {
787
788
  enum?: Partial<EnumWidgetProps>;
788
789
  text?: Partial<TextWidgetProps>;
@@ -2107,6 +2108,10 @@ export declare const LIST_COLUMN_IDS: string[];
2107
2108
 
2108
2109
  export declare const LIST_COLUMNS: Record<string, ListColumnConfig>;
2109
2110
 
2111
+ declare type ListChange = MixedChange & {
2112
+ cellIds: string[];
2113
+ };
2114
+
2110
2115
  declare type ListColumnConfig = {
2111
2116
  label: string;
2112
2117
  icon: string;
@@ -3471,6 +3476,21 @@ declare type Tag_5 = {
3471
3476
  color?: string;
3472
3477
  };
3473
3478
 
3479
+ export declare const TagsWidget: ({ value, options, projectName, isEditing, isReadOnly, onChange, onCancelEdit, placeholder, align, className, isProjectTags, pt, ...mixedProps }: TagsWidgetProps) => JSX_2.Element;
3480
+
3481
+ export declare interface TagsWidgetProps extends Pick<DropdownProps, 'mixedCounts' | 'mixedTotal' | 'mixedLabel' | 'onMixedChange'>, WidgetBaseProps {
3482
+ value: (string | number | boolean)[];
3483
+ options: EnumItem[];
3484
+ projectName?: string;
3485
+ placeholder?: string;
3486
+ align?: 'left' | 'right';
3487
+ className?: string;
3488
+ isProjectTags?: boolean;
3489
+ pt?: {
3490
+ template?: Partial<EnumTemplateProps>;
3491
+ };
3492
+ }
3493
+
3474
3494
  export declare interface TaskEntityData extends BaseEntityData {
3475
3495
  entityType: 'task';
3476
3496
  subType: string;