@ynput/ayon-frontend-shared 0.7.5 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/DetailsPanel.es.js +471 -469
  2. package/dist/Feed.es.js +1 -1
  3. package/dist/ListTable.es.js +20 -20
  4. package/dist/NewEntity.es.js +7 -7
  5. package/dist/ProjectTreeTable.es.js +2523 -2502
  6. package/dist/ProjectsTable.es.js +5 -5
  7. package/dist/Slicer.es.js +28 -25
  8. package/dist/Views.es.js +150 -151
  9. package/dist/api.es.js +166 -165
  10. package/dist/chunks/Actions.es.js +9 -10
  11. package/dist/chunks/ColumnDropIndicator.es.js +4 -4
  12. package/dist/chunks/ColumnHeaderMenuUI.es.js +4 -5
  13. package/dist/chunks/DeleteEntitiesConfirmDialog.es.js +2 -2
  14. package/dist/chunks/DetailsDialog.es.js +3 -3
  15. package/dist/chunks/EmptyPlaceholder.es.js +7 -7
  16. package/dist/chunks/EntityPath.es.js +38 -39
  17. package/dist/chunks/EntityPickerDialog.es.js +482 -462
  18. package/dist/chunks/EntityTooltip.es.js +18 -19
  19. package/dist/chunks/Feed.es.js +1382 -1355
  20. package/dist/chunks/FilmstripEntityCard.es.js +5201 -0
  21. package/dist/chunks/FilterErrorActions.es.js +3 -4
  22. package/dist/chunks/GroupSettingsFallback.es.js +4 -4
  23. package/dist/chunks/Menu.es.js +242 -240
  24. package/dist/chunks/MetaWidget.es.js +1948 -1875
  25. package/dist/chunks/ProjectFoldersContext.es.js +237 -0
  26. package/dist/chunks/RepresentationsList.es.js +1 -1
  27. package/dist/chunks/ReviewablesSelector.es.js +1260 -1190
  28. package/dist/chunks/SimpleTable.es.js +303 -297
  29. package/dist/chunks/Slicer.es.js +420 -413
  30. package/dist/chunks/TableExportContextInstance.es.js +622 -378
  31. package/dist/chunks/TableSettingsFallback.es.js +3 -4
  32. package/dist/chunks/ThumbnailSimple.es.js +114 -99
  33. package/dist/chunks/ThumbnailUploaderContext.es.js +48 -0
  34. package/dist/chunks/VideoPlayer.es.js +8 -9
  35. package/dist/chunks/Watchers.es.js +929 -872
  36. package/dist/chunks/{ColumnDropIndicator.styled.es.js → addonColumnTags.es.js} +60 -47
  37. package/dist/chunks/expandRelativeDates.es.js +1 -1
  38. package/dist/chunks/getThumbnailUrl.es.js +33 -21
  39. package/dist/chunks/getUris.es.js +1580 -1610
  40. package/dist/chunks/queryFilterToClientFilter.es.js +1 -1
  41. package/dist/chunks/realtimeUpdatesUtils.es.js +15 -15
  42. package/dist/chunks/searchTerms.es.js +773 -696
  43. package/dist/chunks/useAttributeEnums.es.js +22 -22
  44. package/dist/chunks/useDateRangeFilter.es.js +1 -1
  45. package/dist/chunks/useHierarchySelection.es.js +3 -4
  46. package/dist/chunks/useLoadModule.es.js +3 -4
  47. package/dist/components.es.js +1391 -1253
  48. package/dist/context.es.js +645 -668
  49. package/dist/hooks.es.js +193 -171
  50. package/dist/index.es.js +4 -4
  51. package/dist/types/Actions.d.ts +10 -8
  52. package/dist/types/DetailsPanel.d.ts +54 -76
  53. package/dist/types/EntityPickerDialog.d.ts +51 -2
  54. package/dist/types/Feed.d.ts +24 -24
  55. package/dist/types/ListTable.d.ts +33 -27
  56. package/dist/types/NewEntity.d.ts +26 -39
  57. package/dist/types/ProjectTreeTable.d.ts +318 -212
  58. package/dist/types/ProjectsTable.d.ts +6 -6
  59. package/dist/types/RepresentationsList.d.ts +4 -0
  60. package/dist/types/Slicer.d.ts +63 -246
  61. package/dist/types/Views.d.ts +71 -298
  62. package/dist/types/api.d.ts +3164 -2363
  63. package/dist/types/components.d.ts +537 -497
  64. package/dist/types/context.d.ts +293 -572
  65. package/dist/types/hooks.d.ts +76 -47
  66. package/dist/types/index.d.ts +6 -0
  67. package/dist/types/util.d.ts +141 -120
  68. package/dist/util.es.js +71 -68
  69. package/package.json +6 -6
  70. package/dist/chunks/EntityUpdatesContext.es.js +0 -61
  71. package/dist/chunks/PlayableIcon.es.js +0 -5020
  72. package/dist/chunks/ProjectContext.es.js +0 -158
  73. package/dist/chunks/useQueryArgumentChangeLoading.es.js +0 -11
  74. package/dist/chunks/viewUpdateHelper.es.js +0 -153
@@ -1,9 +1,9 @@
1
- import { jsxs as Q, jsx as f, Fragment as ke } from "react/jsx-runtime";
2
- import te, { forwardRef as Ee, useRef as oe, useEffect as Y, useLayoutEffect as ce, useState as de, useCallback as Le } from "react";
3
- import { Button as pe, Icon as K, ShortcutTag as Pe } from "@ynput/ayon-react-components";
4
- import A, { keyframes as Re } from "styled-components";
5
- import { isArray as Ce } from "lodash";
6
- import { Link as Se } from "react-router-dom";
1
+ import { jsxs as Q, jsx as p, Fragment as Me } from "react/jsx-runtime";
2
+ import te, { forwardRef as ke, useRef as oe, useEffect as Y, useLayoutEffect as le, useState as ce, useCallback as Ee } from "react";
3
+ import { Button as de, Icon as K, ShortcutTag as Le } from "@ynput/ayon-react-components";
4
+ import A, { keyframes as Pe } from "styled-components";
5
+ import { isArray as Re } from "lodash";
6
+ import { Link as Ce } from "react-router-dom";
7
7
  import fe from "clsx";
8
8
  import "@module-federation/enhanced/runtime";
9
9
  import "@ynput/ayon-addon/host";
@@ -11,15 +11,14 @@ import "react-toastify";
11
11
  import "./searchTerms.es.js";
12
12
  import "./getUris.es.js";
13
13
  import "primereact/confirmdialog";
14
- import { b as ne, u as ue } from "./TableExportContextInstance.es.js";
15
14
  import "uuid";
16
15
  import "axios";
16
+ import { b as ne, u as ue } from "./TableExportContextInstance.es.js";
17
17
  import "semver";
18
18
  import "./ContextMenuContextInstance.es.js";
19
- import { createPortal as Te } from "react-dom";
20
- import "react-redux";
21
- import { c as Ne } from "./copyToClipboard.es.js";
22
- const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
19
+ import { createPortal as Se } from "react-dom";
20
+ import { c as Te } from "./copyToClipboard.es.js";
21
+ const z = 42, Ne = 8, U = z + Ne, Ae = A.dialog`
23
22
  position: fixed;
24
23
  margin: 0;
25
24
  inset: 0;
@@ -41,7 +40,7 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
41
40
  display: none;
42
41
  }
43
42
  padding-bottom: 60px;
44
- `, Ie = Re`
43
+ `, De = Pe`
45
44
  from {
46
45
  scale: 0.95;
47
46
  opacity: 0.6;
@@ -64,7 +63,7 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
64
63
  z-index: 30;
65
64
 
66
65
  /* animate */
67
- animation: ${Ie} 0.03s ease-in forwards;
66
+ animation: ${De} 0.03s ease-in forwards;
68
67
 
69
68
  /* transform origin based on alignment */
70
69
  &.right {
@@ -88,7 +87,7 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
88
87
  color: var(--md-sys-color-on-surface, #fff) !important;
89
88
  }
90
89
  }
91
- `, He = A.section`
90
+ `, Ie = A.section`
92
91
  position: relative;
93
92
  display: flex;
94
93
  flex-direction: column;
@@ -101,7 +100,7 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
101
100
  color: var(--md-sys-color-on-surface);
102
101
  z-index: 10;
103
102
  overflow: hidden;
104
- `, _e = A.div`
103
+ `, He = A.div`
105
104
  position: relative;
106
105
  border-radius: 8px;
107
106
  display: flex;
@@ -125,7 +124,7 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
125
124
  overflow-x: hidden;
126
125
  }
127
126
  }
128
- `, Be = A.menu`
127
+ `, _e = A.menu`
129
128
  /* reset defaults */
130
129
  display: flex;
131
130
  list-style-type: none;
@@ -160,7 +159,7 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
160
159
  opacity: 0.5;
161
160
  border-color: var(--md-sys-color-surface-container-highest);
162
161
  }
163
- `, Fe = A.li`
162
+ `, Be = A.li`
164
163
  display: flex;
165
164
  padding: 6px 16px 6px 12px;
166
165
  justify-content: flex-start;
@@ -269,13 +268,13 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
269
268
  }
270
269
  background-color: unset;
271
270
  }
272
- `, We = A.div`
271
+ `, Fe = A.div`
273
272
  display: flex;
274
273
  align-items: center;
275
274
  gap: var(--base-gap-small);
276
275
  margin-left: auto;
277
276
  padding-left: 24px;
278
- `, $e = A(pe)`
277
+ `, We = A(de)`
279
278
  margin-left: auto;
280
279
  &.hasIcon {
281
280
  padding: 4px;
@@ -288,11 +287,11 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
288
287
  background-color: var(--md-sys-color-on-primary);
289
288
  color: var(--md-sys-color-primary);
290
289
  }
291
- `, ze = A.img`
290
+ `, $e = A.img`
292
291
  width: 18px;
293
292
  height: 18px;
294
293
  object-fit: contain;
295
- `, qe = A.footer`
294
+ `, ze = A.footer`
296
295
  position: relative;
297
296
  display: flex;
298
297
  padding: 8px;
@@ -321,114 +320,114 @@ const z = 42, Ae = 8, U = z + Ae, De = A.dialog`
321
320
  display: flex;
322
321
  }
323
322
  }
324
- `, me = Ee(
323
+ `, pe = ke(
325
324
  ({
326
- label: s,
327
- icon: n,
325
+ label: a,
326
+ icon: i,
328
327
  hoverIcon: r,
329
- img: i,
330
- highlighted: d,
328
+ img: n,
329
+ highlighted: f,
331
330
  notification: u,
332
- selected: c,
331
+ selected: l,
333
332
  danger: t,
334
- items: m = [],
335
- className: a,
333
+ items: g = [],
334
+ className: c,
336
335
  isLink: h,
337
- isDev: g,
336
+ isDev: m,
338
337
  shortcut: L,
339
338
  disabled: e,
340
- powerFeature: l,
341
- active: p,
339
+ powerFeature: s,
340
+ active: d,
342
341
  reserveActiveSlot: w,
343
- endActions: b = [],
342
+ endActions: y = [],
344
343
  ...N
345
344
  }, q) => {
346
- const J = Ce(s) ? s : [s], { powerLicense: v } = ne(), C = !v && l, S = /* @__PURE__ */ Q(
347
- Fe,
345
+ const J = Re(a) ? a : [a], { powerLicense: v } = ne(), C = !v && s, S = /* @__PURE__ */ Q(
346
+ Be,
348
347
  {
349
348
  ref: q,
350
349
  className: fe(
351
350
  "menu-item",
352
351
  {
353
- highlighted: d,
354
- selected: c,
352
+ highlighted: f,
353
+ selected: l,
355
354
  notification: u,
356
355
  danger: t,
357
- dev: g,
356
+ dev: m,
358
357
  disabled: e,
359
358
  power: C
360
359
  },
361
- a
360
+ c
362
361
  ),
363
362
  ...N,
364
363
  "aria-label": J.join(", "),
365
364
  children: [
366
- n && /* @__PURE__ */ f(K, { icon: n, className: r ? "hover-swap-default" : void 0 }),
367
- r && /* @__PURE__ */ f(K, { icon: r, className: "hover-swap" }),
368
- i && /* @__PURE__ */ f(ze, { src: i, alt: `${s} icon` }),
369
- J.map((y, x) => /* @__PURE__ */ f("span", { children: y }, x)),
370
- L && /* @__PURE__ */ f(Pe, { style: { minWidth: 22, textAlign: "center" }, align: "right", children: L }),
371
- (p || w) && /* @__PURE__ */ f(
365
+ i && /* @__PURE__ */ p(K, { icon: i, className: r ? "hover-swap-default" : void 0 }),
366
+ r && /* @__PURE__ */ p(K, { icon: r, className: "hover-swap" }),
367
+ n && /* @__PURE__ */ p($e, { src: n, alt: `${a} icon` }),
368
+ J.map((b, x) => /* @__PURE__ */ p("span", { children: b }, x)),
369
+ L && /* @__PURE__ */ p(Le, { style: { minWidth: 22, textAlign: "center" }, align: "right", children: L }),
370
+ (d || w) && /* @__PURE__ */ p(
372
371
  K,
373
372
  {
374
373
  icon: "check",
375
- style: { marginLeft: "auto", visibility: p ? "visible" : "hidden" }
374
+ style: { marginLeft: "auto", visibility: d ? "visible" : "hidden" }
376
375
  }
377
376
  ),
378
- !!b.length && /* @__PURE__ */ f(We, { children: b.map((y) => /* @__PURE__ */ f(
379
- $e,
377
+ !!y.length && /* @__PURE__ */ p(Fe, { children: y.map((b) => /* @__PURE__ */ p(
378
+ We,
380
379
  {
381
380
  variant: "text",
382
- icon: y.icon,
381
+ icon: b.icon,
383
382
  className: "menu-item-end-action",
384
- "data-tooltip": y.tooltip,
385
- "aria-label": y.tooltip,
383
+ "data-tooltip": b.tooltip,
384
+ "aria-label": b.tooltip,
386
385
  onClick: (x) => {
387
- x.stopPropagation(), y.onClick(x);
386
+ x.stopPropagation(), b.onClick(x);
388
387
  },
389
388
  onKeyDown: (x) => x.stopPropagation()
390
389
  },
391
- y.icon
390
+ b.icon
392
391
  )) }),
393
- C && /* @__PURE__ */ f(K, { icon: "bolt", className: "power-bolt" }),
394
- !!m.length && /* @__PURE__ */ f(K, { icon: "arrow_right", className: "more" })
392
+ C && /* @__PURE__ */ p(K, { icon: "bolt", className: "power-bolt" }),
393
+ !!g.length && /* @__PURE__ */ p(K, { icon: "arrow_right", className: "more" })
395
394
  ]
396
395
  }
397
396
  );
398
- return h ? /* @__PURE__ */ f(Se, { to: h, target: N.target, children: S }) : S;
397
+ return h ? /* @__PURE__ */ p(Ce, { to: h, target: N.target, children: S }) : S;
399
398
  }
400
399
  );
401
- me.displayName = "MenuItem";
400
+ pe.displayName = "MenuItem";
402
401
  const ae = ({
403
- items: s,
404
- handleClick: n,
402
+ items: a,
403
+ handleClick: i,
405
404
  onSubMenu: r,
406
- onSubMenuLayout: i,
407
- subMenu: d,
405
+ onSubMenuLayout: n,
406
+ subMenu: f,
408
407
  level: u,
409
- id: c = "root-menu",
408
+ id: l = "root-menu",
410
409
  parentRef: t,
411
- parentEl: m,
412
- style: a,
410
+ parentEl: g,
411
+ style: c,
413
412
  placement: h,
414
- onClose: g,
413
+ onClose: m,
415
414
  onMenuClose: L,
416
415
  itemClassName: e,
417
- itemStyle: l,
418
- setPowerpackDialog: p,
416
+ itemStyle: s,
417
+ setPowerpackDialog: d,
419
418
  ...w
420
419
  }) => {
421
- const b = oe({}), N = oe(null), q = (v, C, S) => {
422
- const y = b.current[C], x = N.current;
423
- if (!y || !x) return;
424
- const _ = (x.offsetParent ?? document.body).getBoundingClientRect(), D = y.getBoundingClientRect(), k = (x.querySelector("menu") ?? x).getBoundingClientRect(), V = window.innerWidth, B = window.innerHeight, M = 8, T = Math.max(240, k.width), I = Math.min(
420
+ const y = oe({}), N = oe(null), q = (v, C, S) => {
421
+ const b = y.current[C], x = N.current;
422
+ if (!b || !x) return;
423
+ const _ = (x.offsetParent ?? document.body).getBoundingClientRect(), D = b.getBoundingClientRect(), k = (x.querySelector("menu") ?? x).getBoundingClientRect(), V = window.innerWidth, B = window.innerHeight, M = 8, T = Math.max(240, k.width), O = Math.min(
425
424
  S.length * 36 + 16,
426
425
  B - U - M
427
- ), E = 4, F = () => Math.max(M, k.left - T - E), O = () => k.right + E, j = O() + T <= V - M, $ = F() >= M;
426
+ ), E = 4, F = () => Math.max(M, k.left - T - E), I = () => k.right + E, j = I() + T <= V - M, $ = F() >= M;
428
427
  let R, o;
429
- h === "left" && $ ? (R = "left", o = F()) : j ? (R = "right", o = O()) : $ ? (R = "left", o = F()) : (R = "left", o = Math.max(M, V - T - M));
428
+ h === "left" && $ ? (R = "left", o = F()) : j ? (R = "right", o = I()) : $ ? (R = "left", o = F()) : (R = "left", o = Math.max(M, V - T - M));
430
429
  let W = D.top - 8;
431
- W + I > B - M && (W = B - I - M), W = Math.max(U, W);
430
+ W + O > B - M && (W = B - O - M), W = Math.max(U, W);
432
431
  const ee = R === "left" ? o - 16 : o;
433
432
  r?.(v, {
434
433
  id: C,
@@ -442,49 +441,49 @@ const ae = ({
442
441
  placement: R,
443
442
  // Pass the actual menu-item element so sub-menu measurement uses the <li>
444
443
  // instead of whatever inner span the mouse event bubbled from.
445
- parentEl: y
444
+ parentEl: b
446
445
  });
447
446
  }, J = (v) => {
448
- d && r?.(v, { id: "parent", items: [] });
447
+ f && r?.(v, { id: "parent", items: [] });
449
448
  };
450
449
  return Y(() => {
451
- d && N.current && N.current.querySelectorAll("li, button")[0]?.focus();
452
- }, [d]), ce(() => {
453
- if (!d || !N.current || !t || !i || !c) return;
450
+ f && N.current && N.current.querySelectorAll("li, button")[0]?.focus();
451
+ }, [f]), le(() => {
452
+ if (!f || !N.current || !t || !n || !l) return;
454
453
  const v = N.current, C = t, S = C.closest(".menu-list, .sub-menu");
455
454
  if (!S) return;
456
- const y = v.querySelector("menu") ?? v, x = S.querySelector("menu") ?? S, _ = (v.offsetParent ?? document.body).getBoundingClientRect(), D = v.getBoundingClientRect(), P = y.getBoundingClientRect(), k = x.getBoundingClientRect(), V = C.getBoundingClientRect(), B = P.left - D.left, M = P.width, T = window.innerWidth, I = window.innerHeight, E = 8, F = 4, O = () => Math.max(E, k.left - M - F), j = () => k.right + F, $ = j() + M <= T - E, R = O() >= E;
455
+ const b = v.querySelector("menu") ?? v, x = S.querySelector("menu") ?? S, _ = (v.offsetParent ?? document.body).getBoundingClientRect(), D = v.getBoundingClientRect(), P = b.getBoundingClientRect(), k = x.getBoundingClientRect(), V = C.getBoundingClientRect(), B = P.left - D.left, M = P.width, T = window.innerWidth, O = window.innerHeight, E = 8, F = 4, I = () => Math.max(E, k.left - M - F), j = () => k.right + F, $ = j() + M <= T - E, R = I() >= E;
457
456
  let o, H;
458
- h === "left" && R ? (o = "left", H = O()) : $ ? (o = "right", H = j()) : R ? (o = "left", H = O()) : (o = "left", H = Math.max(E, T - M - E));
459
- const Z = y.querySelector(":scope > li")?.getBoundingClientRect(), ee = V.top, ve = Z ? Z.top : D.top + 8, be = ee - ve, ie = y.scrollHeight;
460
- let G = D.top + be;
461
- if (G + ie > I - E) {
462
- const Me = Math.min(ie, I - U - E);
463
- G = I - Me - E;
457
+ h === "left" && R ? (o = "left", H = I()) : $ ? (o = "right", H = j()) : R ? (o = "left", H = I()) : (o = "left", H = Math.max(E, T - M - E));
458
+ const Z = b.querySelector(":scope > li")?.getBoundingClientRect(), ee = V.top, he = Z ? Z.top : D.top + 8, ve = ee - he, ie = b.scrollHeight;
459
+ let G = D.top + ve;
460
+ if (G + ie > O - E) {
461
+ const xe = Math.min(ie, O - U - E);
462
+ G = O - xe - E;
464
463
  }
465
464
  G = Math.max(U, G);
466
- const ye = o === "left" ? H - B : H, re = G - _.top, se = ye - _.left, we = typeof a?.top == "number" ? a.top : parseFloat(String(a?.top)), xe = typeof a?.left == "number" ? a.left : parseFloat(String(a?.left));
467
- (Math.abs(re - we) > 1 || Math.abs(se - xe) > 1) && i(
468
- c,
469
- { top: re, left: se, maxHeight: I - G - E },
465
+ const ye = o === "left" ? H - B : H, re = G - _.top, se = ye - _.left, be = typeof c?.top == "number" ? c.top : parseFloat(String(c?.top)), we = typeof c?.left == "number" ? c.left : parseFloat(String(c?.left));
466
+ (Math.abs(re - be) > 1 || Math.abs(se - we) > 1) && n(
467
+ l,
468
+ { top: re, left: se, maxHeight: O - G - E },
470
469
  o
471
470
  );
472
- }, [d, s, t, c, h, a?.top, a?.left, i]), /* @__PURE__ */ f(
473
- _e,
471
+ }, [f, a, t, l, h, c?.top, c?.left, n]), /* @__PURE__ */ p(
472
+ He,
474
473
  {
475
- style: { paddingLeft: d ? 16 : 0, ...a },
476
- className: d ? "sub-menu" : "menu-list",
477
- id: c,
474
+ style: { paddingLeft: f ? 16 : 0, ...c },
475
+ className: f ? "sub-menu" : "menu-list",
476
+ id: l,
478
477
  onMouseLeave: J,
479
478
  ...w,
480
479
  ref: N,
481
- children: /* @__PURE__ */ f(Be, { children: s.filter((v) => !v.hidden).map((v, C) => {
480
+ children: /* @__PURE__ */ p(_e, { children: a.filter((v) => !v.hidden).map((v, C) => {
482
481
  if (v.node)
483
482
  return v.node;
484
- if (v?.id === "divider" || v?.separator) return /* @__PURE__ */ f("hr", {}, C);
483
+ if (v?.id === "divider" || v?.separator) return /* @__PURE__ */ p("hr", {}, C);
485
484
  const {
486
485
  label: S,
487
- icon: y,
486
+ icon: b,
488
487
  img: x,
489
488
  highlighted: X,
490
489
  onClick: _,
@@ -495,42 +494,42 @@ const ae = ({
495
494
  selected: B,
496
495
  disabled: M,
497
496
  powerFeature: T,
498
- active: I,
497
+ active: O,
499
498
  reserveActiveSlot: E,
500
499
  endActions: F,
501
- ...O
500
+ ...I
502
501
  } = v, { powerLicense: j } = ne(), $ = !j && T, R = (o) => {
503
- o.preventDefault(), o.stopPropagation(), T && p?.(T), L?.();
502
+ o.preventDefault(), o.stopPropagation(), T && d?.(T), L?.();
504
503
  };
505
- return /* @__PURE__ */ f(
506
- me,
504
+ return /* @__PURE__ */ p(
505
+ pe,
507
506
  {
508
507
  tabIndex: 0,
509
508
  label: S,
510
- icon: y,
509
+ icon: b,
511
510
  img: x,
512
511
  highlighted: X,
513
512
  items: P,
514
513
  selected: B,
515
514
  disabled: M,
516
515
  powerFeature: T,
517
- active: I,
516
+ active: O,
518
517
  reserveActiveSlot: E,
519
518
  endActions: F,
520
519
  isLink: D,
521
- onClick: (o) => $ ? R(o) : P.length ? q(o, k, P) : n(o, _, D, V),
520
+ onClick: (o) => $ ? R(o) : P.length ? q(o, k, P) : i(o, _, D, V),
522
521
  onKeyDown: (o) => {
523
- o.key === "Enter" && ($ ? R(o) : P.length ? q(o, k, P) : n(o, _, D));
522
+ o.key === "Enter" && ($ ? R(o) : P.length ? q(o, k, P) : i(o, _, D));
524
523
  const H = !o.target.nextSibling;
525
- o.key === "Tab" && H && !o.shiftKey && (o.preventDefault(), o.stopPropagation(), N.current?.querySelectorAll("li, button")[0]?.focus()), o.key === "Escape" && d && t && (o.preventDefault(), o.stopPropagation(), t.focus(), g?.(k));
524
+ o.key === "Tab" && H && !o.shiftKey && (o.preventDefault(), o.stopPropagation(), N.current?.querySelectorAll("li, button")[0]?.focus()), o.key === "Escape" && f && t && (o.preventDefault(), o.stopPropagation(), t.focus(), m?.(k));
526
525
  },
527
- style: { paddingRight: P.length ? "0" : "16px", ...l },
528
- ref: (o) => b.current[k] = o,
526
+ style: { paddingRight: P.length ? "0" : "16px", ...s },
527
+ ref: (o) => y.current[k] = o,
529
528
  onMouseEnter: (o) => q(o, k, P),
530
529
  onMouseLeave: (o) => q(o, k, []),
531
- className: `${e} ${O.className || ""}`,
532
- ...O,
533
- children: !!P.length && /* @__PURE__ */ f(K, { icon: "arrow_right", style: { marginLeft: "auto" } })
530
+ className: `${e} ${I.className || ""}`,
531
+ ...I,
532
+ children: !!P.length && /* @__PURE__ */ p(K, { icon: "arrow_right", style: { marginLeft: "auto" } })
534
533
  },
535
534
  `${k}-${C}`
536
535
  );
@@ -538,219 +537,222 @@ const ae = ({
538
537
  }
539
538
  );
540
539
  };
541
- function Ve(s, n, r = "right") {
542
- if (!s) return null;
543
- const i = s.getBoundingClientRect(), d = n?.getBoundingClientRect(), u = d?.width || 200, c = d?.height || 300, t = 8, m = window.innerWidth, a = window.innerHeight;
544
- let h = i.bottom + 8 - z, g;
540
+ function qe(a, i, r = "right") {
541
+ if (!a) return null;
542
+ const n = a.getBoundingClientRect(), f = i?.getBoundingClientRect(), u = f?.width || 200, l = f?.height || 300, t = 8, g = window.innerWidth, c = window.innerHeight;
543
+ let h = n.bottom + 8 - z, m;
545
544
  const L = U - z;
546
- if (h + z + c > a - t) {
547
- const e = i.top - 8 - c - z;
545
+ if (h + z + l > c - t) {
546
+ const e = n.top - 8 - l - z;
548
547
  e >= L && (h = e);
549
548
  }
550
549
  if (h = Math.max(L, h), r === "right") {
551
- const e = i.right - u;
552
- e >= t ? g = e : g = i.left;
550
+ const e = n.right - u;
551
+ e >= t ? m = e : m = n.left;
553
552
  } else {
554
- const e = i.left;
555
- e + u <= m - t ? g = e : g = i.right - u;
553
+ const e = n.left;
554
+ e + u <= g - t ? m = e : m = n.right - u;
556
555
  }
557
- return g !== void 0 && (g = Math.max(t, Math.min(g, m - u - t))), { top: h, left: g, maxHeight: a - (h + z) - t };
556
+ return m !== void 0 && (m = Math.max(t, Math.min(m, g - u - t))), { top: h, left: m, maxHeight: c - (h + z) - t };
558
557
  }
559
- function je(s, n, r = "right") {
560
- const [i, d] = de(null), u = oe(null), c = Le(() => {
561
- let t = s;
562
- if (!t && n && (t = document.getElementById(n)), !t) {
563
- n && console.warn(`Target element with id '${n}' not found`);
558
+ function Ve(a, i, r = "right") {
559
+ const [n, f] = ce(null), u = oe(null), l = Ee(() => {
560
+ let t = a;
561
+ if (!t && i && (t = document.getElementById(i)), !t) {
562
+ i && console.warn(`Target element with id '${i}' not found`);
564
563
  return;
565
564
  }
566
565
  if (!u.current) return;
567
- const m = Ve(t, u.current, r);
568
- m && d(
569
- (a) => a && Math.abs(a.top - m.top) < 1 && Math.abs((a.left ?? 0) - (m.left ?? 0)) < 1 && Math.abs((a.maxHeight ?? 0) - (m.maxHeight ?? 0)) < 1 ? a : m
566
+ const g = qe(t, u.current, r);
567
+ g && f(
568
+ (c) => c && Math.abs(c.top - g.top) < 1 && Math.abs((c.left ?? 0) - (g.left ?? 0)) < 1 && Math.abs((c.maxHeight ?? 0) - (g.maxHeight ?? 0)) < 1 ? c : g
570
569
  );
571
- }, [s, n, r]);
572
- return ce(() => {
573
- c();
574
- }, [c]), Y(() => {
575
- const t = () => requestAnimationFrame(c);
570
+ }, [a, i, r]);
571
+ return le(() => {
572
+ l();
573
+ }, [l]), Y(() => {
574
+ const t = () => requestAnimationFrame(l);
576
575
  return window.addEventListener("resize", t, { passive: !0 }), window.addEventListener("scroll", t, { passive: !0 }), () => {
577
576
  window.removeEventListener("resize", t), window.removeEventListener("scroll", t);
578
577
  };
579
- }, [c]), Y(() => {
578
+ }, [l]), Y(() => {
580
579
  if (!u.current) return;
581
580
  const t = new ResizeObserver(() => {
582
- c();
581
+ l();
583
582
  });
584
583
  return t.observe(u.current), () => {
585
584
  t.disconnect();
586
585
  };
587
- }, [c]), { position: i, menuRef: u };
586
+ }, [l]), { position: n, menuRef: u };
588
587
  }
589
- const le = "ayon-menu-dialog", ge = "ayon-menu-content", ht = ({
590
- id: s,
591
- target: n,
588
+ const je = "ayon-menu-dialog", me = "ayon-menu-content", gt = ({
589
+ id: a,
590
+ target: i,
592
591
  targetId: r = "",
593
- align: i = "right",
594
- theme: d = "light",
595
- children: u,
596
- ...c
592
+ align: n = "right",
593
+ theme: f = "light",
594
+ isOpen: u,
595
+ onDismiss: l,
596
+ children: t,
597
+ ...g
597
598
  }) => {
598
- const { menuOpen: t, setMenuOpen: m, navigate: a } = ue(), h = t === s, g = () => {
599
- m(!1);
600
- }, L = (e) => {
601
- console.log("navigate and close"), g(), !a && e ? console.log("navigate not found") : a && e && a(e);
599
+ const { menuOpen: c, setMenuOpen: h, navigate: m } = ue(), L = u ?? c === a, e = () => {
600
+ u !== void 0 ? l?.() : h(!1);
601
+ }, s = (d) => {
602
+ console.log("navigate and close"), e(), !m && d ? console.log("navigate not found") : m && d && m(d);
602
603
  };
603
- return h ? /* @__PURE__ */ f(
604
+ return L ? /* @__PURE__ */ p(
604
605
  Ge,
605
606
  {
606
- handleClose: g,
607
- handleNavigate: L,
608
- target: n,
607
+ handleClose: e,
608
+ handleNavigate: s,
609
+ target: i,
609
610
  targetId: r,
610
- align: i,
611
- theme: d,
612
- children: u,
613
- ...c
611
+ align: n,
612
+ theme: f,
613
+ children: t,
614
+ ...g
614
615
  }
615
616
  ) : null;
616
617
  }, Ge = ({
617
- handleClose: s,
618
- handleNavigate: n,
618
+ handleClose: a,
619
+ handleNavigate: i,
619
620
  target: r,
620
- targetId: i,
621
- align: d = "right",
621
+ targetId: n,
622
+ align: f = "right",
622
623
  children: u,
623
- ...c
624
+ ...l
624
625
  }) => {
625
- const { position: t, menuRef: m } = je(r ?? null, i ?? "", d);
626
+ const { position: t, menuRef: g } = Ve(r ?? null, n ?? "", f);
626
627
  Y(() => {
627
- t && m.current && m.current.querySelectorAll("li, button")[0]?.focus();
628
+ t && g.current && g.current.querySelectorAll("li, button")[0]?.focus();
628
629
  }, [t]);
629
- const a = (e) => {
630
- e.key === "Escape" && s();
630
+ const c = (e) => {
631
+ if (e.key !== "Escape") return;
632
+ e.preventDefault(), e.stopPropagation(), a(), (r ?? (n ? document.getElementById(n) : null))?.focus();
631
633
  }, h = (e) => {
632
- e.target.id === le && s();
633
- }, g = te.Children.map(u, (e, l) => te.isValidElement(e) ? te.cloneElement(e, {
634
- onClose: s,
635
- index: l,
636
- navigate: n
634
+ e.target === e.currentTarget && a();
635
+ }, m = te.Children.map(u, (e, s) => te.isValidElement(e) ? te.cloneElement(e, {
636
+ onClose: a,
637
+ index: s,
638
+ navigate: i
637
639
  }) : e);
638
- return Te(
639
- /* @__PURE__ */ f(
640
- De,
640
+ return Se(
641
+ /* @__PURE__ */ p(
642
+ Ae,
641
643
  {
642
644
  open: !0,
643
645
  onClick: h,
644
- onKeyDown: a,
645
- ...c,
646
- id: le,
647
- children: /* @__PURE__ */ f(
646
+ onKeyDown: c,
647
+ ...l,
648
+ id: je,
649
+ children: /* @__PURE__ */ p(
648
650
  Oe,
649
651
  {
650
- id: ge,
652
+ id: me,
651
653
  style: t || { top: 0, left: 0, opacity: 0, visibility: "hidden" },
652
- className: fe(d),
653
- ref: m,
654
- children: g
654
+ className: fe(f),
655
+ ref: g,
656
+ children: m
655
657
  }
656
658
  )
657
659
  }
658
660
  ),
659
661
  document.body
660
662
  );
661
- }, he = (s, n) => {
662
- for (const r of s) {
663
- if (r.id === n) return r.items?.length ? r.items : void 0;
664
- const i = r.items?.length ? he(r.items, n) : void 0;
665
- if (i) return i;
663
+ }, ge = (a, i) => {
664
+ for (const r of a) {
665
+ if (r.id === i) return r.items?.length ? r.items : void 0;
666
+ const n = r.items?.length ? ge(r.items, i) : void 0;
667
+ if (n) return n;
666
668
  }
667
- }, Ke = (s = [], n = []) => s.length === n.length && s.every((r, i) => r.icon === n[i].icon && r.tooltip === n[i].tooltip), Ue = (s, n) => s.length === n.length && s.every(
668
- (r, i) => r.id === n[i].id && r.icon === n[i].icon && r.selected === n[i].selected && r.active === n[i].active && Ke(r.endActions, n[i].endActions)
669
- ), vt = ({ menu: s = [], onClose: n, header: r, footer: i = "" }) => {
670
- const { setPowerpackDialog: d } = ne(), { setMenuOpen: u } = ue(), [c, t] = de([]), m = (e, l, p, w) => {
671
- if (p) return n?.();
672
- l?.(e), !w && n && n();
673
- }, a = (e, l) => {
674
- if (l.items.length) {
675
- if (!c.find((p) => p.id === l.id)) {
676
- const p = l.parentEl ?? e.currentTarget ?? e.target;
669
+ }, Ke = (a = [], i = []) => a.length === i.length && a.every((r, n) => r.icon === i[n].icon && r.tooltip === i[n].tooltip), Ue = (a, i) => a.length === i.length && a.every(
670
+ (r, n) => r.id === i[n].id && r.icon === i[n].icon && r.selected === i[n].selected && r.active === i[n].active && Ke(r.endActions, i[n].endActions)
671
+ ), ht = ({ menu: a = [], onClose: i, header: r, footer: n = "" }) => {
672
+ const { setPowerpackDialog: f } = ne(), { setMenuOpen: u } = ue(), [l, t] = ce([]), g = (e, s, d, w) => {
673
+ if (d) return i?.();
674
+ s?.(e), !w && i && i();
675
+ }, c = (e, s) => {
676
+ if (s.items.length) {
677
+ if (!l.find((d) => d.id === s.id)) {
678
+ const d = s.parentEl ?? e.currentTarget ?? e.target;
677
679
  t([
678
- ...c.filter((w) => w.level < (l.level || 0) + 1),
680
+ ...l.filter((w) => w.level < (s.level || 0) + 1),
679
681
  {
680
- ...l,
681
- id: l.id,
682
- level: (l.level || 0) + 1,
683
- parentRef: p
682
+ ...s,
683
+ id: s.id,
684
+ level: (s.level || 0) + 1,
685
+ parentRef: d
684
686
  }
685
687
  ]);
686
688
  }
687
689
  } else
688
- t(c.filter((p) => p.level <= (l.level || 0)));
689
- }, h = (e, l = {}) => {
690
- const p = e.relatedTarget;
691
- if (!p) return;
692
- if (p.tagName === "DIALOG") return t([]);
693
- typeof p.closest == "function" && p.closest(`#${ge}`) || c.find((b) => b.id === p.id) || t(c.filter((b) => b.level <= (l.level || 0) + 1));
694
- }, g = (e, l) => {
695
- e.type === "mouseenter" || e.type === "keydown" ? a(e, l) : e.type === "mouseleave" && h(e, l);
690
+ t(l.filter((d) => d.level <= (s.level || 0)));
691
+ }, h = (e, s = {}) => {
692
+ const d = e.relatedTarget;
693
+ if (!d) return;
694
+ if (d.tagName === "DIALOG") return t([]);
695
+ typeof d.closest == "function" && d.closest(`#${me}`) || l.find((y) => y.id === d.id) || t(l.filter((y) => y.level <= (s.level || 0) + 1));
696
+ }, m = (e, s) => {
697
+ e.type === "mouseenter" || e.type === "keydown" ? c(e, s) : e.type === "mouseleave" && h(e, s);
696
698
  };
697
699
  Y(() => {
698
700
  t((e) => {
699
701
  if (!e.length) return e;
700
- const l = e.flatMap((w) => {
701
- const b = he(s, w.id);
702
- return b ? [{ ...w, items: b }] : [];
702
+ const s = e.flatMap((w) => {
703
+ const y = ge(a, w.id);
704
+ return y ? [{ ...w, items: y }] : [];
703
705
  });
704
- return l.length === e.length && l.every((w, b) => Ue(w.items, e[b].items)) ? e : l;
706
+ return s.length === e.length && s.every((w, y) => Ue(w.items, e[y].items)) ? e : s;
705
707
  });
706
- }, [s]);
707
- const L = (e, l, p) => {
708
- t((w) => w.map((b) => b.id === e ? { ...b, style: l, placement: p } : b));
708
+ }, [a]);
709
+ const L = (e, s, d) => {
710
+ t((w) => w.map((y) => y.id === e ? { ...y, style: s, placement: d } : y));
709
711
  };
710
- return /* @__PURE__ */ Q(ke, { children: [
711
- /* @__PURE__ */ Q(He, { children: [
712
+ return /* @__PURE__ */ Q(Me, { children: [
713
+ /* @__PURE__ */ Q(Ie, { children: [
712
714
  r && r,
713
- /* @__PURE__ */ f(
715
+ /* @__PURE__ */ p(
714
716
  ae,
715
717
  {
716
- items: s,
717
- handleClick: m,
718
- onSubMenu: g,
718
+ items: a,
719
+ handleClick: g,
720
+ onSubMenu: m,
719
721
  level: 0,
720
- setPowerpackDialog: d,
722
+ setPowerpackDialog: f,
721
723
  onMenuClose: () => u(!1)
722
724
  }
723
725
  ),
724
- i && /* @__PURE__ */ Q(qe, { children: [
725
- i,
726
- /* @__PURE__ */ f(pe, { icon: "content_copy", variant: "text", onClick: () => Ne(i) })
726
+ n && /* @__PURE__ */ Q(ze, { children: [
727
+ n,
728
+ /* @__PURE__ */ p(de, { icon: "content_copy", variant: "text", onClick: () => Te(n) })
727
729
  ] })
728
730
  ] }),
729
- c.map((e, l) => /* @__PURE__ */ f(
731
+ l.map((e, s) => /* @__PURE__ */ p(
730
732
  ae,
731
733
  {
732
734
  ...e,
733
735
  parentRef: e.parentRef || null,
734
736
  style: e.style || {},
735
- handleClick: m,
737
+ handleClick: g,
736
738
  subMenu: !0,
737
- onSubMenu: g,
739
+ onSubMenu: m,
738
740
  onSubMenuLayout: L,
739
- onClose: () => t(c.filter((p) => p.id !== e.id)),
741
+ onClose: () => t(l.filter((d) => d.id !== e.id)),
740
742
  onMenuClose: () => u(!1),
741
- onChange: a,
742
- setPowerpackDialog: d,
743
+ onChange: c,
744
+ setPowerpackDialog: f,
743
745
  itemClassName: void 0,
744
746
  itemStyle: void 0
745
747
  },
746
- l
748
+ s
747
749
  ))
748
750
  ] });
749
751
  };
750
752
  export {
751
- ht as M,
752
- vt as a,
753
- ge as b,
754
- le as c,
753
+ gt as M,
754
+ ht as a,
755
+ me as b,
756
+ je as c,
755
757
  ae as d
756
758
  };