@ynput/ayon-frontend-shared 0.3.49 → 0.3.51
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/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +13 -11
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs10.js +1 -1
- package/dist/_virtual/index.cjs11.js +1 -1
- package/dist/_virtual/index.cjs12.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.es10.js +3 -3
- package/dist/_virtual/index.es11.js +5 -5
- package/dist/_virtual/index.es12.js +5 -5
- package/dist/_virtual/index.es5.js +5 -2
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/_virtual/index.es6.js +2 -5
- package/dist/_virtual/index.es6.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +112 -109
- package/dist/components.es.js.map +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
- package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +1 -1
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js +1 -1
- package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/columnStats.es.js +56 -44
- package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/groupCounts.cjs.js +1 -1
- package/dist/shared/src/api/queries/columnStats/groupCounts.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/groupCounts.es.js +10 -8
- package/dist/shared/src/api/queries/columnStats/groupCounts.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +220 -216
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.es.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +2 -2
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +138 -127
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +56 -55
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +249 -254
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +41 -40
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js +55 -47
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js +319 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +118 -104
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +57 -55
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/util/confirmDelete.cjs.js +1 -1
- package/dist/shared/src/util/confirmDelete.cjs.js.map +1 -1
- package/dist/shared/src/util/confirmDelete.es.js +28 -24
- package/dist/shared/src/util/confirmDelete.es.js.map +1 -1
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/containers/Feed/components/FeedSearchFilter.d.ts +2 -2
- package/dist/types/containers/ProjectTreeTable/hooks/useGroupCounts.d.ts +2 -3
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +8 -0
- package/dist/types/containers/ProjectTreeTable/types/table.d.ts +0 -1
- package/dist/types/containers/SimpleTable/SimpleTable.types.d.ts +1 -0
- package/dist/types/containers/Slicer/components/Slicer.d.ts +2 -0
- package/dist/types/containers/Slicer/hooks/index.d.ts +1 -0
- package/dist/types/containers/Slicer/hooks/useSlicerCounts.d.ts +17 -0
- package/dist/types/containers/Slicer/hooks/useTableDataBySlice.d.ts +5 -1
- package/dist/types/util/confirmDelete.d.ts +3 -1
- package/dist/util.cjs.js +1 -1
- package/dist/util.es.js +77 -76
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useState as
|
|
1
|
+
import { useState as k, useEffect as Q, useMemo as C } from "react";
|
|
2
2
|
import "../../../context/RemoteModulesContext.es.js";
|
|
3
3
|
import "../../../../node_modules/@module-federation/runtime/dist/index.es.js";
|
|
4
4
|
import "../../../../../_virtual/semver.es.js";
|
|
@@ -105,8 +105,8 @@ import "../../../../../_virtual/jsx-runtime.es.js";
|
|
|
105
105
|
import "../../../context/PowerpackContextInstance.es.js";
|
|
106
106
|
import "../../../context/UriContext.es.js";
|
|
107
107
|
import "../../../context/DetailsPanelContextInstance.es.js";
|
|
108
|
-
import { getEntityTypeIcon as
|
|
109
|
-
import { getAttributeIcon as
|
|
108
|
+
import { getEntityTypeIcon as L } from "../../../util/getEntityTypeIcon.es.js";
|
|
109
|
+
import { getAttributeIcon as X } from "../../../util/getAttributeIcon.es.js";
|
|
110
110
|
import "uuid";
|
|
111
111
|
import "../../../util/pubsub.es.js";
|
|
112
112
|
import "../../../context/SubtasksModulesContextInstance.es.js";
|
|
@@ -121,7 +121,7 @@ import "../../../context/MoveEntityContext.es.js";
|
|
|
121
121
|
import "../../../context/MenuContext.es.js";
|
|
122
122
|
import "../../../context/WebsocketContext.es.js";
|
|
123
123
|
import "../../../context/GlobalContext.es.js";
|
|
124
|
-
import { useProjectContext as
|
|
124
|
+
import { useProjectContext as Y } from "../../../context/ProjectContext.es.js";
|
|
125
125
|
import "../../../context/ProjectFoldersContextInstance.es.js";
|
|
126
126
|
import "../../../context/EntityUpdatesContextInstance.es.js";
|
|
127
127
|
import "../../ContextMenu/ContextMenuContext.es.js";
|
|
@@ -204,12 +204,12 @@ import "../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
|
|
|
204
204
|
import "../../../components/SizeSlider/SizeSlider.es.js";
|
|
205
205
|
import "react-router-dom";
|
|
206
206
|
import "../components/Slicer.es.js";
|
|
207
|
-
import { useSlicerContext as
|
|
208
|
-
import
|
|
209
|
-
import
|
|
207
|
+
import { useSlicerContext as Z } from "../context/SlicerContext.es.js";
|
|
208
|
+
import tt from "./useProjectAnatomySlices.es.js";
|
|
209
|
+
import it from "./useSlicerAttributesData.es.js";
|
|
210
210
|
import "../components/SlicerDropdownFallback.es.js";
|
|
211
|
-
import
|
|
212
|
-
import { useEntityListsSlice as
|
|
211
|
+
import ot from "./useUsersTable.es.js";
|
|
212
|
+
import { useEntityListsSlice as rt } from "./useEntityListsSlice.es.js";
|
|
213
213
|
import "react-redux";
|
|
214
214
|
import "../../../components/ReviewableCard/ReviewableCard.es.js";
|
|
215
215
|
import "../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
@@ -270,6 +270,7 @@ import "../../ProjectTreeTable/context/ColumnSettingsContext.es.js";
|
|
|
270
270
|
import "../../ProjectTreeTable/context/SelectedRowsContext.es.js";
|
|
271
271
|
import "../../ProjectTreeTable/context/DetailsPanelEntityContext.es.js";
|
|
272
272
|
import "../../ProjectTreeTable/context/ProjectDataContextInstance.es.js";
|
|
273
|
+
import { UNGROUPED_VALUE as pt } from "../../ProjectTreeTable/hooks/useBuildGroupByTableData.es.js";
|
|
273
274
|
import "../../ProjectTreeTable/context/ProjectTableContextInstance.es.js";
|
|
274
275
|
import "../../ProjectTreeTable/widgets/EmptyWidget.es.js";
|
|
275
276
|
import "../../ProjectTreeTable/widgets/ErrorWidget.es.js";
|
|
@@ -301,27 +302,34 @@ import "../../ListTable/ListTableRow.es.js";
|
|
|
301
302
|
import "../../ListTable/ListTable.styled.es.js";
|
|
302
303
|
import "../../../context/DeleteEntitiesContext.es.js";
|
|
303
304
|
import "custom-protocol-check";
|
|
304
|
-
import { useHierarchyTable as
|
|
305
|
+
import { useHierarchyTable as mt } from "../../../hooks/useHierarchyTable.es.js";
|
|
305
306
|
import "../../ProjectTreeTable/components/GroupSettingsFallback.es.js";
|
|
306
|
-
const
|
|
307
|
+
const et = (i, p, s, a) => i.id === "noValue" ? p.get(pt)?.count ?? (a ? 0 : void 0) : i.id === "hasValue" ? a ? s : void 0 : p.get(i.id)?.count ?? (i.name ? p.get(i.name)?.count : void 0) ?? (a ? 0 : void 0), U = (i, p, s, a) => p ? i.map((e) => {
|
|
308
|
+
const r = et(e, p, s, a);
|
|
309
|
+
return {
|
|
310
|
+
...e,
|
|
311
|
+
badge: r != null ? String(r) : e.badge,
|
|
312
|
+
subRows: e.subRows?.length ? U(e.subRows, p, s, a) : e.subRows
|
|
313
|
+
};
|
|
314
|
+
}) : i, at = (i) => ({
|
|
307
315
|
id: "noValue",
|
|
308
316
|
name: "noValue",
|
|
309
|
-
label: `No ${
|
|
317
|
+
label: `No ${i}`,
|
|
310
318
|
icon: "unpublished",
|
|
311
319
|
subRows: [],
|
|
312
320
|
data: {
|
|
313
321
|
id: "noValue"
|
|
314
322
|
}
|
|
315
|
-
}),
|
|
323
|
+
}), st = (i) => ({
|
|
316
324
|
id: "hasValue",
|
|
317
325
|
name: "hasValue",
|
|
318
|
-
label: `Some ${
|
|
326
|
+
label: `Some ${i}`,
|
|
319
327
|
icon: "check",
|
|
320
328
|
subRows: [],
|
|
321
329
|
data: {
|
|
322
330
|
id: "hasValue"
|
|
323
331
|
}
|
|
324
|
-
}),
|
|
332
|
+
}), j = [
|
|
325
333
|
{
|
|
326
334
|
label: "Hierarchy",
|
|
327
335
|
value: "hierarchy",
|
|
@@ -340,17 +348,17 @@ const tt = (p) => ({
|
|
|
340
348
|
{
|
|
341
349
|
label: "Task Type",
|
|
342
350
|
value: "taskType",
|
|
343
|
-
icon:
|
|
351
|
+
icon: L("task")
|
|
344
352
|
},
|
|
345
353
|
{
|
|
346
354
|
label: "Folder Type",
|
|
347
355
|
value: "folderType",
|
|
348
|
-
icon:
|
|
356
|
+
icon: L("folder")
|
|
349
357
|
},
|
|
350
358
|
{
|
|
351
359
|
label: "Product Type",
|
|
352
360
|
value: "productType",
|
|
353
|
-
icon:
|
|
361
|
+
icon: L("product")
|
|
354
362
|
},
|
|
355
363
|
{
|
|
356
364
|
label: "Author",
|
|
@@ -362,148 +370,154 @@ const tt = (p) => ({
|
|
|
362
370
|
value: "entityList",
|
|
363
371
|
icon: "list_alt"
|
|
364
372
|
}
|
|
365
|
-
],
|
|
366
|
-
sliceFields:
|
|
367
|
-
entityTypes:
|
|
373
|
+
], Wm = ({
|
|
374
|
+
sliceFields: i,
|
|
375
|
+
entityTypes: p = [],
|
|
376
|
+
counts: s,
|
|
377
|
+
filled: a = 0,
|
|
378
|
+
countsComplete: e = !1
|
|
368
379
|
}) => {
|
|
369
|
-
const { sliceType:
|
|
370
|
-
...
|
|
380
|
+
const { sliceType: r, onSliceTypeChange: E, useExtraSlices: c, isLoadingExtraSlices: N } = Z(), { projectName: d } = Y(), { formatAttribute: O } = c(), D = i.filter((t) => j.some((o) => o.value === t.value)).map((t) => ({
|
|
381
|
+
...j.find((m) => m.value === t.value),
|
|
371
382
|
...t
|
|
372
|
-
})),
|
|
373
|
-
entityTypes:
|
|
383
|
+
})), S = i.some((t) => t.value === "attributes"), { attributes: v, isLoading: x } = it({
|
|
384
|
+
entityTypes: p
|
|
374
385
|
});
|
|
375
|
-
|
|
376
|
-
(t) =>
|
|
386
|
+
S && typeof O == "function" && v.forEach(
|
|
387
|
+
(t) => D.push({
|
|
377
388
|
label: t.data.title || t.name,
|
|
378
389
|
value: "attrib." + t.name,
|
|
379
|
-
icon:
|
|
390
|
+
icon: X(t.name, t.data.type, !!t.data.enum?.length)
|
|
380
391
|
})
|
|
381
392
|
);
|
|
382
|
-
const [
|
|
383
|
-
project:
|
|
384
|
-
getStatuses:
|
|
385
|
-
getTypes:
|
|
386
|
-
getTaskTypes:
|
|
387
|
-
getProductTypes:
|
|
388
|
-
getAttribute:
|
|
389
|
-
isLoading:
|
|
390
|
-
} =
|
|
391
|
-
data:
|
|
392
|
-
getData:
|
|
393
|
-
isFetching:
|
|
394
|
-
} =
|
|
395
|
-
projectName:
|
|
396
|
-
folderTypes:
|
|
393
|
+
const [_, T] = k(!1), {
|
|
394
|
+
project: H,
|
|
395
|
+
getStatuses: I,
|
|
396
|
+
getTypes: B,
|
|
397
|
+
getTaskTypes: M,
|
|
398
|
+
getProductTypes: $,
|
|
399
|
+
getAttribute: q,
|
|
400
|
+
isLoading: u
|
|
401
|
+
} = tt({ scopes: p, useExtraSlices: c }), {
|
|
402
|
+
data: F,
|
|
403
|
+
getData: G,
|
|
404
|
+
isFetching: w
|
|
405
|
+
} = mt({
|
|
406
|
+
projectName: d || "",
|
|
407
|
+
folderTypes: H?.folderTypes || [],
|
|
397
408
|
includeColors: !0
|
|
398
|
-
}), { getData:
|
|
399
|
-
projectName:
|
|
400
|
-
useExtraSlices:
|
|
409
|
+
}), { getData: V, isLoading: g } = ot({
|
|
410
|
+
projectName: d,
|
|
411
|
+
useExtraSlices: c
|
|
401
412
|
}), {
|
|
402
|
-
getData:
|
|
403
|
-
isLoading:
|
|
404
|
-
isExpandable:
|
|
405
|
-
} =
|
|
413
|
+
getData: W,
|
|
414
|
+
isLoading: A,
|
|
415
|
+
isExpandable: z
|
|
416
|
+
} = rt(p, r === "entityList"), f = w || u || g || N && r !== "hierarchy" || A && r === "entityList" || x, n = {
|
|
406
417
|
hierarchy: {
|
|
407
|
-
getData:
|
|
408
|
-
isLoading:
|
|
418
|
+
getData: G,
|
|
419
|
+
isLoading: w,
|
|
409
420
|
isExpandable: !0
|
|
410
421
|
},
|
|
411
422
|
assignees: {
|
|
412
|
-
getData:
|
|
413
|
-
isLoading:
|
|
423
|
+
getData: V,
|
|
424
|
+
isLoading: g,
|
|
414
425
|
isExpandable: !1,
|
|
415
426
|
noValue: !0,
|
|
416
427
|
hasValue: !0
|
|
417
428
|
},
|
|
418
429
|
author: {
|
|
419
|
-
getData:
|
|
420
|
-
isLoading:
|
|
430
|
+
getData: V,
|
|
431
|
+
isLoading: g,
|
|
421
432
|
isExpandable: !1
|
|
422
433
|
},
|
|
423
434
|
status: {
|
|
424
|
-
getData:
|
|
425
|
-
isLoading:
|
|
435
|
+
getData: I,
|
|
436
|
+
isLoading: u,
|
|
426
437
|
isExpandable: !1
|
|
427
438
|
},
|
|
428
439
|
type: {
|
|
429
|
-
getData:
|
|
430
|
-
isLoading:
|
|
440
|
+
getData: B,
|
|
441
|
+
isLoading: u,
|
|
431
442
|
isExpandable: !0
|
|
432
443
|
},
|
|
433
444
|
taskType: {
|
|
434
|
-
getData:
|
|
435
|
-
isLoading:
|
|
445
|
+
getData: M,
|
|
446
|
+
isLoading: u,
|
|
436
447
|
isExpandable: !1
|
|
437
448
|
},
|
|
438
449
|
productType: {
|
|
439
|
-
getData:
|
|
450
|
+
getData: $,
|
|
440
451
|
isLoading: !1,
|
|
441
452
|
isExpandable: !1
|
|
442
453
|
},
|
|
443
454
|
entityList: {
|
|
444
|
-
getData:
|
|
445
|
-
isLoading:
|
|
446
|
-
isExpandable:
|
|
455
|
+
getData: W,
|
|
456
|
+
isLoading: A,
|
|
457
|
+
isExpandable: z
|
|
447
458
|
}
|
|
448
459
|
};
|
|
449
|
-
for (const t of
|
|
450
|
-
|
|
451
|
-
getData: () =>
|
|
452
|
-
isLoading:
|
|
460
|
+
for (const t of v)
|
|
461
|
+
n["attrib." + t.name] = {
|
|
462
|
+
getData: () => q(t),
|
|
463
|
+
isLoading: x,
|
|
453
464
|
isExpandable: !1,
|
|
454
465
|
isAttribute: !0
|
|
455
466
|
};
|
|
456
|
-
const
|
|
457
|
-
const
|
|
458
|
-
if (!
|
|
467
|
+
const R = { data: [], isExpandable: !1 }, [b, P] = k(R), l = n[r], J = (t, o) => {
|
|
468
|
+
const m = n[t];
|
|
469
|
+
if (!m) {
|
|
459
470
|
console.warn(`Slice type ${t} not found`);
|
|
460
471
|
return;
|
|
461
472
|
}
|
|
462
|
-
(
|
|
473
|
+
(m.isAttribute && S || i.some((y) => y.value === t)) && E(t, o);
|
|
463
474
|
};
|
|
464
|
-
|
|
465
|
-
if (
|
|
475
|
+
Q(() => {
|
|
476
|
+
if (f) return;
|
|
466
477
|
(async () => {
|
|
467
478
|
try {
|
|
468
|
-
if (!
|
|
469
|
-
|
|
470
|
-
const
|
|
471
|
-
if (
|
|
479
|
+
if (!l) return;
|
|
480
|
+
T(!0);
|
|
481
|
+
const o = await l.getData();
|
|
482
|
+
if (o === void 0)
|
|
472
483
|
throw window.alert(
|
|
473
484
|
"Slice options failed to load. This likely means the PowerFeatures addon is out of date. Please update to the latest version."
|
|
474
|
-
),
|
|
475
|
-
|
|
476
|
-
data:
|
|
477
|
-
isExpandable:
|
|
485
|
+
), E("hierarchy", !1), new Error("Slice data is undefined");
|
|
486
|
+
l.hasValue && o.unshift(st(r)), l.noValue && o.unshift(at(r)), P({
|
|
487
|
+
data: o,
|
|
488
|
+
isExpandable: l.isExpandable
|
|
478
489
|
});
|
|
479
|
-
} catch (
|
|
480
|
-
console.error("Error fetching slice data:",
|
|
490
|
+
} catch (o) {
|
|
491
|
+
console.error("Error fetching slice data:", o), P(R);
|
|
481
492
|
} finally {
|
|
482
|
-
|
|
493
|
+
T(!1);
|
|
483
494
|
}
|
|
484
495
|
})();
|
|
485
|
-
}, [
|
|
486
|
-
const
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
496
|
+
}, [r, d, f, r === "hierarchy" ? F : null]);
|
|
497
|
+
const h = C(
|
|
498
|
+
() => U(b.data, s, a, e),
|
|
499
|
+
[b.data, s, a, e]
|
|
500
|
+
), K = C(() => {
|
|
501
|
+
const t = /* @__PURE__ */ new Map(), o = [...h];
|
|
502
|
+
for (; o.length > 0; ) {
|
|
503
|
+
const m = o.shift();
|
|
504
|
+
if (m && (t.set(m.id, m), m.subRows && m.subRows.length > 0))
|
|
505
|
+
for (const y of m.subRows)
|
|
506
|
+
o.push(y);
|
|
493
507
|
}
|
|
494
508
|
return t;
|
|
495
|
-
}, [
|
|
509
|
+
}, [h]);
|
|
496
510
|
return {
|
|
497
|
-
sliceOptions:
|
|
498
|
-
table:
|
|
499
|
-
sliceMap:
|
|
500
|
-
isLoading:
|
|
501
|
-
sliceType:
|
|
502
|
-
handleSliceTypeChange:
|
|
511
|
+
sliceOptions: D,
|
|
512
|
+
table: { ...b, data: h },
|
|
513
|
+
sliceMap: K,
|
|
514
|
+
isLoading: n[r] && n[r].isLoading || _ || f,
|
|
515
|
+
sliceType: r,
|
|
516
|
+
handleSliceTypeChange: J
|
|
503
517
|
};
|
|
504
518
|
};
|
|
505
519
|
export {
|
|
506
|
-
|
|
507
|
-
|
|
520
|
+
Wm as default,
|
|
521
|
+
j as defaultSliceOptions
|
|
508
522
|
};
|
|
509
523
|
//# sourceMappingURL=useTableDataBySlice.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTableDataBySlice.es.js","sources":["../../../../../../src/containers/Slicer/hooks/useTableDataBySlice.ts"],"sourcesContent":["import { useEffect, useMemo, useState } from 'react'\nimport { useHierarchyTable } from '@shared/hooks'\nimport useUsersTable from './useUsersTable'\nimport useProjectAnatomySlices from './useProjectAnatomySlices'\nimport { Slice, SliceData, SliceTypeField, TableData } from '../types'\nimport { SimpleTableRow } from '@shared/containers/SimpleTable'\nimport { SliceType } from '@shared/containers/Slicer'\nimport { useSlicerContext } from '../context/SlicerContext'\nimport useSlicerAttributesData from './useSlicerAttributesData'\nimport { useEntityListsSlice } from './useEntityListsSlice'\nimport { getAttributeIcon, getEntityTypeIcon } from '@shared/util'\nimport { useProjectContext } from '@shared/context'\n\ninterface TableDataBySliceProps {\n sliceFields: SliceTypeField[]\n entityTypes?: string[] // entity types\n}\n\nconst getNoValue = (field: string): SimpleTableRow => ({\n id: 'noValue',\n name: 'noValue',\n label: `No ${field}`,\n icon: 'unpublished',\n subRows: [],\n data: {\n id: 'noValue',\n },\n})\n\nconst getSomeValue = (field: string): SimpleTableRow => ({\n id: 'hasValue',\n name: 'hasValue',\n label: `Some ${field}`,\n icon: 'check',\n subRows: [],\n data: {\n id: 'hasValue',\n },\n})\n\nexport const defaultSliceOptions: SliceTypeField[] = [\n {\n label: 'Hierarchy',\n value: 'hierarchy' as SliceType,\n icon: 'table_rows',\n },\n {\n label: 'Assignee',\n value: 'assignees' as SliceType,\n icon: 'person',\n },\n {\n label: 'Status',\n value: 'status' as SliceType,\n icon: 'arrow_circle_right',\n },\n {\n label: 'Task Type',\n value: 'taskType' as SliceType,\n icon: getEntityTypeIcon('task'),\n },\n {\n label: 'Folder Type',\n value: 'folderType' as SliceType,\n icon: getEntityTypeIcon('folder'),\n },\n {\n label: 'Product Type',\n value: 'productType' as SliceType,\n icon: getEntityTypeIcon('product'),\n },\n {\n label: 'Author',\n value: 'author' as SliceType,\n icon: 'attribution',\n },\n {\n label: 'Lists',\n value: 'entityList' as SliceType,\n icon: 'list_alt',\n },\n]\n\nconst useTableDataBySlice = ({\n sliceFields,\n entityTypes = [],\n}: TableDataBySliceProps): TableData => {\n const { sliceType, onSliceTypeChange, useExtraSlices, isLoadingExtraSlices } = useSlicerContext()\n const { projectName } = useProjectContext()\n const { formatAttribute } = useExtraSlices()\n\n const sliceOptions = sliceFields\n .filter((f) => defaultSliceOptions.some((o) => o.value === f.value))\n .map((field) => {\n const defaultOption = defaultSliceOptions.find((opt) => opt.value === field.value)\n // use default option as fallback data\n return {\n ...defaultOption,\n ...field,\n }\n })\n\n const showAttributes = sliceFields.some((field) => field.value === 'attributes')\n const { attributes: slicerAttribs, isLoading: isLoadingAttribs } = useSlicerAttributesData({\n entityTypes,\n })\n\n if (showAttributes && typeof formatAttribute === 'function') {\n slicerAttribs.forEach((attr) =>\n sliceOptions.push({\n label: attr.data.title || attr.name,\n value: 'attrib.' + attr.name,\n icon: getAttributeIcon(attr.name, attr.data.type, !!attr.data.enum?.length),\n }),\n )\n }\n\n const [isLoading, setIsLoading] = useState(false)\n\n // project info\n const {\n project,\n getStatuses,\n getTypes,\n getTaskTypes,\n getProductTypes,\n getAttribute,\n isLoading: isLoadingProject,\n } = useProjectAnatomySlices({ scopes: entityTypes, useExtraSlices })\n\n // Hierarchy\n const {\n data: hierarchyData,\n getData: getHierarchyData,\n isFetching: isLoadingHierarchy,\n } = useHierarchyTable({\n projectName: projectName || '',\n folderTypes: project?.folderTypes || [],\n includeColors: true,\n })\n // Users\n const { getData: getUsersData, isLoading: isUsersLoading } = useUsersTable({\n projectName,\n useExtraSlices,\n })\n // Entity Lists\n const {\n getData: getEntityListsData,\n isLoading: isLoadingLists,\n isExpandable: isEntityListExpandable,\n } = useEntityListsSlice(entityTypes, sliceType === 'entityList')\n const isLoadingData =\n isLoadingHierarchy ||\n isLoadingProject ||\n isUsersLoading ||\n (isLoadingExtraSlices && sliceType !== 'hierarchy') ||\n (isLoadingLists && sliceType === 'entityList') ||\n isLoadingAttribs\n\n const builtInSlices: Record<SliceType, SliceData> = {\n hierarchy: {\n getData: getHierarchyData,\n isLoading: isLoadingHierarchy,\n isExpandable: true,\n },\n assignees: {\n getData: getUsersData,\n isLoading: isUsersLoading,\n isExpandable: false,\n noValue: true,\n hasValue: true,\n },\n author: {\n getData: getUsersData,\n isLoading: isUsersLoading,\n isExpandable: false,\n },\n status: {\n getData: getStatuses,\n isLoading: isLoadingProject,\n isExpandable: false,\n },\n type: {\n getData: getTypes,\n isLoading: isLoadingProject,\n isExpandable: true,\n },\n taskType: {\n getData: getTaskTypes,\n isLoading: isLoadingProject,\n isExpandable: false,\n },\n productType: {\n getData: getProductTypes,\n isLoading: false,\n isExpandable: false,\n },\n entityList: {\n getData: getEntityListsData,\n isLoading: isLoadingLists,\n isExpandable: isEntityListExpandable,\n },\n }\n\n for (const attrib of slicerAttribs) {\n builtInSlices['attrib.' + attrib.name] = {\n getData: () => getAttribute(attrib),\n isLoading: isLoadingAttribs,\n isExpandable: false,\n isAttribute: true,\n }\n }\n\n const initSlice = { data: [], isExpandable: false }\n const [slice, setSlice] = useState<Slice>(initSlice)\n const sliceConfig = builtInSlices[sliceType]\n\n const handleSliceTypeChange = (sliceType: SliceType, pinCurrent?: boolean) => {\n // get slice data object\n const sliceConfig = builtInSlices[sliceType]\n if (!sliceConfig) {\n console.warn(`Slice type ${sliceType} not found`)\n return\n }\n // check slice type is enabled\n if (\n (sliceConfig.isAttribute && showAttributes) ||\n sliceFields.some((field) => field.value === sliceType)\n ) {\n onSliceTypeChange(sliceType, pinCurrent)\n }\n }\n\n useEffect(() => {\n // wait for hierarchy data to load before fetching slice data\n if (isLoadingData) return\n\n const fetchData = async () => {\n try {\n if (!sliceConfig) return\n setIsLoading(true)\n const newData = await sliceConfig.getData()\n\n if (newData === undefined) {\n window.alert(\n 'Slice options failed to load. This likely means the PowerFeatures addon is out of date. Please update to the latest version.',\n )\n // setSlice type to hierarchy\n onSliceTypeChange('hierarchy', false)\n throw new Error('Slice data is undefined')\n }\n\n // add some value option\n if (sliceConfig.hasValue) newData.unshift(getSomeValue(sliceType))\n\n // add no value option\n if (sliceConfig.noValue) newData.unshift(getNoValue(sliceType))\n setSlice({\n data: newData,\n isExpandable: sliceConfig.isExpandable,\n })\n } catch (error) {\n console.error('Error fetching slice data:', error)\n // set to initial empty state\n setSlice(initSlice)\n } finally {\n setIsLoading(false)\n }\n }\n\n fetchData()\n }, [sliceType, projectName, isLoadingData, sliceType === 'hierarchy' ? hierarchyData : null])\n\n // from slice data, flatten into a map of ids to rows\n const sliceMap = useMemo(() => {\n const map = new Map<string, SimpleTableRow>()\n const queue: SimpleTableRow[] = [...slice.data]\n\n while (queue.length > 0) {\n const row = queue.shift()\n if (row) {\n map.set(row.id, row)\n if (row.subRows && row.subRows.length > 0) {\n for (const subRow of row.subRows) {\n queue.push(subRow)\n }\n }\n }\n }\n return map\n }, [slice.data])\n\n return {\n sliceOptions,\n table: slice,\n sliceMap,\n isLoading:\n (builtInSlices[sliceType] && builtInSlices[sliceType].isLoading) ||\n isLoading ||\n isLoadingData,\n sliceType,\n handleSliceTypeChange,\n }\n}\n\nexport default useTableDataBySlice\n"],"names":["getNoValue","field","getSomeValue","defaultSliceOptions","getEntityTypeIcon","useTableDataBySlice","sliceFields","entityTypes","sliceType","onSliceTypeChange","useExtraSlices","isLoadingExtraSlices","useSlicerContext","projectName","useProjectContext","formatAttribute","sliceOptions","f","o","opt","showAttributes","slicerAttribs","isLoadingAttribs","useSlicerAttributesData","attr","getAttributeIcon","isLoading","setIsLoading","useState","project","getStatuses","getTypes","getTaskTypes","getProductTypes","getAttribute","isLoadingProject","useProjectAnatomySlices","hierarchyData","getHierarchyData","isLoadingHierarchy","useHierarchyTable","getUsersData","isUsersLoading","useUsersTable","getEntityListsData","isLoadingLists","isEntityListExpandable","useEntityListsSlice","isLoadingData","builtInSlices","attrib","initSlice","slice","setSlice","sliceConfig","handleSliceTypeChange","pinCurrent","useEffect","newData","error","sliceMap","useMemo","map","queue","row","subRow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useTableDataBySlice.es.js","sources":["../../../../../../src/containers/Slicer/hooks/useTableDataBySlice.ts"],"sourcesContent":["import { useEffect, useMemo, useState } from 'react'\nimport { useHierarchyTable } from '@shared/hooks'\nimport useUsersTable from './useUsersTable'\nimport useProjectAnatomySlices from './useProjectAnatomySlices'\nimport { Slice, SliceData, SliceTypeField, TableData } from '../types'\nimport { SimpleTableRow } from '@shared/containers/SimpleTable'\nimport { SliceType } from '@shared/containers/Slicer'\nimport { useSlicerContext } from '../context/SlicerContext'\nimport useSlicerAttributesData from './useSlicerAttributesData'\nimport { useEntityListsSlice } from './useEntityListsSlice'\nimport { getAttributeIcon, getEntityTypeIcon } from '@shared/util'\nimport { useProjectContext } from '@shared/context'\nimport type { GroupCountsMap } from '@shared/api'\nimport { UNGROUPED_VALUE } from '../../ProjectTreeTable/hooks/useBuildGroupByTableData'\n\ninterface TableDataBySliceProps {\n sliceFields: SliceTypeField[]\n entityTypes?: string[] // entity types\n counts?: GroupCountsMap\n filled?: number\n countsComplete?: boolean\n}\n\nconst getRowCount = (\n row: SimpleTableRow,\n counts: GroupCountsMap,\n filled: number,\n complete: boolean,\n): number | undefined => {\n if (row.id === 'noValue') return counts.get(UNGROUPED_VALUE)?.count ?? (complete ? 0 : undefined)\n if (row.id === 'hasValue') return complete ? filled : undefined\n const hit = counts.get(row.id)?.count ?? (row.name ? counts.get(row.name)?.count : undefined)\n return hit ?? (complete ? 0 : undefined)\n}\n\nconst decorateBadges = (\n rows: SimpleTableRow[],\n counts: GroupCountsMap | undefined,\n filled: number,\n complete: boolean,\n): SimpleTableRow[] => {\n if (!counts) return rows\n return rows.map((row) => {\n const count = getRowCount(row, counts, filled, complete)\n return {\n ...row,\n badge: count != null ? String(count) : row.badge,\n subRows: row.subRows?.length\n ? decorateBadges(row.subRows, counts, filled, complete)\n : row.subRows,\n }\n })\n}\n\nconst getNoValue = (field: string): SimpleTableRow => ({\n id: 'noValue',\n name: 'noValue',\n label: `No ${field}`,\n icon: 'unpublished',\n subRows: [],\n data: {\n id: 'noValue',\n },\n})\n\nconst getSomeValue = (field: string): SimpleTableRow => ({\n id: 'hasValue',\n name: 'hasValue',\n label: `Some ${field}`,\n icon: 'check',\n subRows: [],\n data: {\n id: 'hasValue',\n },\n})\n\nexport const defaultSliceOptions: SliceTypeField[] = [\n {\n label: 'Hierarchy',\n value: 'hierarchy' as SliceType,\n icon: 'table_rows',\n },\n {\n label: 'Assignee',\n value: 'assignees' as SliceType,\n icon: 'person',\n },\n {\n label: 'Status',\n value: 'status' as SliceType,\n icon: 'arrow_circle_right',\n },\n {\n label: 'Task Type',\n value: 'taskType' as SliceType,\n icon: getEntityTypeIcon('task'),\n },\n {\n label: 'Folder Type',\n value: 'folderType' as SliceType,\n icon: getEntityTypeIcon('folder'),\n },\n {\n label: 'Product Type',\n value: 'productType' as SliceType,\n icon: getEntityTypeIcon('product'),\n },\n {\n label: 'Author',\n value: 'author' as SliceType,\n icon: 'attribution',\n },\n {\n label: 'Lists',\n value: 'entityList' as SliceType,\n icon: 'list_alt',\n },\n]\n\nconst useTableDataBySlice = ({\n sliceFields,\n entityTypes = [],\n counts,\n filled = 0,\n countsComplete = false,\n}: TableDataBySliceProps): TableData => {\n const { sliceType, onSliceTypeChange, useExtraSlices, isLoadingExtraSlices } = useSlicerContext()\n const { projectName } = useProjectContext()\n const { formatAttribute } = useExtraSlices()\n\n const sliceOptions = sliceFields\n .filter((f) => defaultSliceOptions.some((o) => o.value === f.value))\n .map((field) => {\n const defaultOption = defaultSliceOptions.find((opt) => opt.value === field.value)\n // use default option as fallback data\n return {\n ...defaultOption,\n ...field,\n }\n })\n\n const showAttributes = sliceFields.some((field) => field.value === 'attributes')\n const { attributes: slicerAttribs, isLoading: isLoadingAttribs } = useSlicerAttributesData({\n entityTypes,\n })\n\n if (showAttributes && typeof formatAttribute === 'function') {\n slicerAttribs.forEach((attr) =>\n sliceOptions.push({\n label: attr.data.title || attr.name,\n value: 'attrib.' + attr.name,\n icon: getAttributeIcon(attr.name, attr.data.type, !!attr.data.enum?.length),\n }),\n )\n }\n\n const [isLoading, setIsLoading] = useState(false)\n\n // project info\n const {\n project,\n getStatuses,\n getTypes,\n getTaskTypes,\n getProductTypes,\n getAttribute,\n isLoading: isLoadingProject,\n } = useProjectAnatomySlices({ scopes: entityTypes, useExtraSlices })\n\n // Hierarchy\n const {\n data: hierarchyData,\n getData: getHierarchyData,\n isFetching: isLoadingHierarchy,\n } = useHierarchyTable({\n projectName: projectName || '',\n folderTypes: project?.folderTypes || [],\n includeColors: true,\n })\n // Users\n const { getData: getUsersData, isLoading: isUsersLoading } = useUsersTable({\n projectName,\n useExtraSlices,\n })\n // Entity Lists\n const {\n getData: getEntityListsData,\n isLoading: isLoadingLists,\n isExpandable: isEntityListExpandable,\n } = useEntityListsSlice(entityTypes, sliceType === 'entityList')\n const isLoadingData =\n isLoadingHierarchy ||\n isLoadingProject ||\n isUsersLoading ||\n (isLoadingExtraSlices && sliceType !== 'hierarchy') ||\n (isLoadingLists && sliceType === 'entityList') ||\n isLoadingAttribs\n\n const builtInSlices: Record<SliceType, SliceData> = {\n hierarchy: {\n getData: getHierarchyData,\n isLoading: isLoadingHierarchy,\n isExpandable: true,\n },\n assignees: {\n getData: getUsersData,\n isLoading: isUsersLoading,\n isExpandable: false,\n noValue: true,\n hasValue: true,\n },\n author: {\n getData: getUsersData,\n isLoading: isUsersLoading,\n isExpandable: false,\n },\n status: {\n getData: getStatuses,\n isLoading: isLoadingProject,\n isExpandable: false,\n },\n type: {\n getData: getTypes,\n isLoading: isLoadingProject,\n isExpandable: true,\n },\n taskType: {\n getData: getTaskTypes,\n isLoading: isLoadingProject,\n isExpandable: false,\n },\n productType: {\n getData: getProductTypes,\n isLoading: false,\n isExpandable: false,\n },\n entityList: {\n getData: getEntityListsData,\n isLoading: isLoadingLists,\n isExpandable: isEntityListExpandable,\n },\n }\n\n for (const attrib of slicerAttribs) {\n builtInSlices['attrib.' + attrib.name] = {\n getData: () => getAttribute(attrib),\n isLoading: isLoadingAttribs,\n isExpandable: false,\n isAttribute: true,\n }\n }\n\n const initSlice = { data: [], isExpandable: false }\n const [slice, setSlice] = useState<Slice>(initSlice)\n const sliceConfig = builtInSlices[sliceType]\n\n const handleSliceTypeChange = (sliceType: SliceType, pinCurrent?: boolean) => {\n // get slice data object\n const sliceConfig = builtInSlices[sliceType]\n if (!sliceConfig) {\n console.warn(`Slice type ${sliceType} not found`)\n return\n }\n // check slice type is enabled\n if (\n (sliceConfig.isAttribute && showAttributes) ||\n sliceFields.some((field) => field.value === sliceType)\n ) {\n onSliceTypeChange(sliceType, pinCurrent)\n }\n }\n\n useEffect(() => {\n // wait for hierarchy data to load before fetching slice data\n if (isLoadingData) return\n\n const fetchData = async () => {\n try {\n if (!sliceConfig) return\n setIsLoading(true)\n const newData = await sliceConfig.getData()\n\n if (newData === undefined) {\n window.alert(\n 'Slice options failed to load. This likely means the PowerFeatures addon is out of date. Please update to the latest version.',\n )\n // setSlice type to hierarchy\n onSliceTypeChange('hierarchy', false)\n throw new Error('Slice data is undefined')\n }\n\n // add some value option\n if (sliceConfig.hasValue) newData.unshift(getSomeValue(sliceType))\n\n // add no value option\n if (sliceConfig.noValue) newData.unshift(getNoValue(sliceType))\n setSlice({\n data: newData,\n isExpandable: sliceConfig.isExpandable,\n })\n } catch (error) {\n console.error('Error fetching slice data:', error)\n // set to initial empty state\n setSlice(initSlice)\n } finally {\n setIsLoading(false)\n }\n }\n\n fetchData()\n }, [sliceType, projectName, isLoadingData, sliceType === 'hierarchy' ? hierarchyData : null])\n\n const dataWithBadges = useMemo(\n () => decorateBadges(slice.data, counts, filled, countsComplete),\n [slice.data, counts, filled, countsComplete],\n )\n\n // from slice data, flatten into a map of ids to rows\n const sliceMap = useMemo(() => {\n const map = new Map<string, SimpleTableRow>()\n const queue: SimpleTableRow[] = [...dataWithBadges]\n\n while (queue.length > 0) {\n const row = queue.shift()\n if (row) {\n map.set(row.id, row)\n if (row.subRows && row.subRows.length > 0) {\n for (const subRow of row.subRows) {\n queue.push(subRow)\n }\n }\n }\n }\n return map\n }, [dataWithBadges])\n\n return {\n sliceOptions,\n table: { ...slice, data: dataWithBadges },\n sliceMap,\n isLoading:\n (builtInSlices[sliceType] && builtInSlices[sliceType].isLoading) ||\n isLoading ||\n isLoadingData,\n sliceType,\n handleSliceTypeChange,\n }\n}\n\nexport default useTableDataBySlice\n"],"names":["getRowCount","row","counts","filled","complete","UNGROUPED_VALUE","decorateBadges","rows","count","getNoValue","field","getSomeValue","defaultSliceOptions","getEntityTypeIcon","useTableDataBySlice","sliceFields","entityTypes","countsComplete","sliceType","onSliceTypeChange","useExtraSlices","isLoadingExtraSlices","useSlicerContext","projectName","useProjectContext","formatAttribute","sliceOptions","f","opt","showAttributes","slicerAttribs","isLoadingAttribs","useSlicerAttributesData","attr","getAttributeIcon","isLoading","setIsLoading","useState","project","getStatuses","getTypes","getTaskTypes","getProductTypes","getAttribute","isLoadingProject","useProjectAnatomySlices","hierarchyData","getHierarchyData","isLoadingHierarchy","useHierarchyTable","getUsersData","isUsersLoading","useUsersTable","getEntityListsData","isLoadingLists","isEntityListExpandable","useEntityListsSlice","isLoadingData","builtInSlices","attrib","initSlice","slice","setSlice","sliceConfig","handleSliceTypeChange","pinCurrent","useEffect","newData","error","dataWithBadges","useMemo","sliceMap","map","queue","subRow"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ie=require("../../../_virtual/jsx-runtime.cjs.js"),e=require("react"),ue=require("./PowerpackContext.cjs.js"),qe=require("./UriContext.cjs.js"),L=require("../hooks/useLocalStorage.cjs.js"),j=require("../hooks/useSessionStorage.cjs.js");require("./RemoteModulesContext.cjs.js");require("../../node_modules/@module-federation/runtime/dist/index.cjs.js");require("../../../_virtual/semver.cjs.js");require("../api/base/client.cjs.js");require("../api/generated/graphql.cjs.js");require("../api/generated/graphqlLinks.cjs.js");require("../api/generated/access.cjs.js");require("../api/generated/actions.cjs.js");require("../api/generated/activityFeed.cjs.js");require("../api/generated/addons.cjs.js");require("../api/generated/anatomy.cjs.js");require("../api/generated/attributes.cjs.js");require("../api/generated/authentication.cjs.js");require("../api/generated/bundles.cjs.js");require("../api/generated/configuration.cjs.js");require("../api/generated/dataImport.cjs.js");require("../api/generated/desktop.cjs.js");require("../api/generated/entityLists.cjs.js");require("../api/generated/events.cjs.js");require("../api/generated/files.cjs.js");require("../api/generated/folders.cjs.js");require("../api/generated/inbox.cjs.js");require("../api/generated/links.cjs.js");require("../api/generated/market.cjs.js");require("../api/generated/onboarding.cjs.js");require("../api/generated/operations.cjs.js");require("../api/generated/products.cjs.js");require("../api/generated/projectDashboard.cjs.js");require("../api/generated/projects.cjs.js");require("../api/generated/projectFolders.cjs.js");require("../api/generated/reviewables.cjs.js");require("../api/generated/services.cjs.js");require("../api/generated/system.cjs.js");require("../api/generated/tasks.cjs.js");require("../api/generated/teams.cjs.js");require("../api/generated/thumbnails.cjs.js");require("../api/generated/uRIs.cjs.js");require("../api/generated/users.cjs.js");require("../api/generated/versions.cjs.js");require("../api/generated/workfiles.cjs.js");require("../api/generated/ynputCloud.cjs.js");require("../api/generated/grouping.cjs.js");require("../api/generated/views.cjs.js");require("../api/queries/actions/getActions.cjs.js");require("../api/queries/activities/getActivities.cjs.js");require("../api/queries/activities/updateReaction.cjs.js");require("../api/queries/activities/getMentions.cjs.js");require("../api/queries/activities/getCategories.cjs.js");require("../api/queries/addons/getAddons.cjs.js");require("../api/queries/addons/updateAddons.cjs.js");require("../api/queries/attributes/getAttributes.cjs.js");require("../api/queries/attributes/updateAttributes.cjs.js");require("../api/queries/authentication/getAuthentication.cjs.js");require("../api/queries/bundles/getBundles.cjs.js");require("../api/queries/bundles/updateBundles.cjs.js");require("../api/queries/cloud/cloud.cjs.js");require("../api/queries/columnStats/metricTargets.cjs.js");require("../api/queries/columnStats/groupCounts.cjs.js");require("../api/queries/config/getConfig.cjs.js");require("../api/queries/config/updateConfig.cjs.js");require("../api/queries/entities/getEntity.cjs.js");require("../api/queries/entities/getEntityPanel.cjs.js");require("../api/queries/overview/getOverview.cjs.js");require("../api/queries/overview/updateOverview.cjs.js");require("../api/queries/versions/getVersionsProducts.cjs.js");require("../api/queries/links/getEntityLinks.cjs.js");require("../api/queries/entities/updateEntity.cjs.js");require("../api/queries/entityLists/getLists.cjs.js");require("../api/queries/entityLists/updateLists.cjs.js");require("../api/queries/entityLists/getListsAttributes.cjs.js");require("../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../api/queries/entityLists/updateListsAttributes.cjs.js");require("../api/queries/entityLists/listFolders.cjs.js");require("../api/queries/folders/getFolders.cjs.js");require("../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../api/queries/grouping/getGrouping.cjs.js");require("../api/queries/links/updateLinks.cjs.js");require("../api/queries/links/getLinks.cjs.js");require("../api/queries/permissions/getPermissions.cjs.js");require("../api/queries/products/createProduct.cjs.js");require("../api/queries/products/getFolderProducts.cjs.js");require("../api/queries/project/getProject.cjs.js");require("../api/queries/project/updateProject.cjs.js");require("../api/queries/projectFolders/projectFolders.cjs.js");require("../api/queries/review/getReview.cjs.js");require("../api/queries/review/updateReview.cjs.js");require("../api/queries/share/share.cjs.js");require("../api/queries/system/getSystem.cjs.js");require("../api/queries/tasks/getTasks.cjs.js");require("../api/queries/tasks/updateTasks.cjs.js");require("../api/queries/teams/getTeams.cjs.js");require("../api/queries/userDashboard/getUserDashboard.cjs.js");require("../api/queries/users/getUsers.cjs.js");require("../api/queries/users/updateUsers.cjs.js");require("../api/queries/users/guests.cjs.js");require("../api/queries/versions/updateVersions.cjs.js");require("../api/queries/views/getViews.cjs.js");require("../api/queries/views/updateViews.cjs.js");require("../api/queries/watchers/getWatchers.cjs.js");require("../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");const I=require("./DetailsPanelContextInstance.cjs.js");require("uuid");const te=require("../util/getBundleMode.cjs.js");require("../util/pubsub.cjs.js");require("./SubtasksModulesContextInstance.cjs.js");require("./ThumbnailUploaderContext.cjs.js");require("./SettingsPanelContext.cjs.js");require("./pip/PiPProvider.cjs.js");require("react-dom");require("./pip/PiPWrapper.cjs.js");require("./AddonProjectContext.cjs.js");require("./AddonContext.cjs.js");require("./MoveEntityContext.cjs.js");require("./MenuContext.cjs.js");require("./WebsocketContext.cjs.js");require("./GlobalContext.cjs.js");require("./ProjectContext.cjs.js");require("./ProjectFoldersContextInstance.cjs.js");require("./EntityUpdatesContextInstance.cjs.js");require("../containers/ContextMenu/ContextMenuContext.cjs.js");require("@ynput/ayon-react-components");;/* empty css */require("clsx");require("../containers/Feed/context/FeedContext.cjs.js");require("../containers/Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../containers/Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../containers/Feed/components/CommentInput/CommentInput.cjs.js");require("../containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../containers/Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../containers/Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../components/AccessUser/AccessUser.cjs.js");require("../components/AttributeEditor/AttributeEditor.cjs.js");require("../components/AttributeEditor/attributeTypeMap.cjs.js");require("../components/Badge/Badge.cjs.js");require("../components/Chips/Chips.cjs.js");require("date-fns");require("../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../components/LinksManager/CellEditingDialog.cjs.js");require("../components/DeleteEntitiesConfirm/DeleteConfirmContent.cjs.js");require("../../../_virtual/index.cjs.js");require("../../../node_modules/refractor/lib/common.cjs.js");require("../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../components/QuillListStyles/QuillListStyles.cjs.js");require("../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("rehype-raw");require("../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../containers/Feed/components/CommentInput/modules/index.cjs.js");require("../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../components/EarlyPreview/EarlyPreview.cjs.js");require("../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../components/InfoMessage/InfoMessage.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../components/EnumEditor/EnumEditor.styled.cjs.js");require("../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../components/EntityPath/EntityPath.styled.cjs.js");require("../components/EntityPath/SegmentProvider.cjs.js");require("../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../components/Feedback/FeedbackContextInstance.cjs.js");require("../components/Feedback/SupportBubble.cjs.js");require("../components/FileThumbnail/FileThumbnail.cjs.js");require("../components/LegacyBadge/LegacyBadge.cjs.js");require("../components/LinksManager/LinksManager.styled.cjs.js");require("../containers/EntityPickerDialog/EntityPickerDialog.cjs.js");require("../components/Powerpack/PowerpackButton.cjs.js");require("../components/Powerpack/FreeTrialLink.cjs.js");require("../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../components/Powerpack/CTAButton.cjs.js");require("../components/Powerpack/RequiredAddonVersion.cjs.js");require("../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../components/SizeSlider/SizeSlider.cjs.js");require("react-router-dom");require("../containers/Slicer/components/Slicer.cjs.js");require("../containers/Slicer/context/SlicerContextInstance.cjs.js");require("../containers/Slicer/components/SlicerDropdownFallback.cjs.js");require("../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("react-redux");require("../components/ReviewableCard/ReviewableCard.cjs.js");require("../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../components/SearchFilter/filterDates.cjs.js");require("../components/SearchFilter/CustomDateRangeDialog.cjs.js");require("../components/SettingsPanel/SettingsPanel.cjs.js");require("../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../components/StyledLink/StyledLink.cjs.js");require("../components/SyncButton/SyncButton.cjs.js");require("../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../components/Thumbnail/Thumbnail.styled.cjs.js");require("../components/Thumbnail/StackedThumbnails.cjs.js");require("../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../components/VersionUploader/context/VersionUploadContextInstance.cjs.js");require("../components/Watchers/Watchers.cjs.js");require("../components/Menu/Menu.styled.cjs.js");require("../components/Menu/MenuItem.cjs.js");require("../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../components/ColumnHeaderMenuUI.cjs.js");require("../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("../containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../containers/Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../containers/Feed/components/ActivityDate.cjs.js");require("../containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js");require("../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../containers/Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../containers/Feed/Feed.styled.cjs.js");require("../containers/Feed/components/FeedSearchFilter.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/DateWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../containers/ProjectTreeTable/widgets/TextWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/CellWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/LinksWidget.cjs.js");require("short-uuid");require("../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");require("../containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../containers/ProjectTreeTable/context/ClipboardContext.cjs.js");require("../containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js");require("../containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js");require("../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../containers/ProjectTreeTable/components/SelectionCell.cjs.js");require("../containers/ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../containers/ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../containers/ProjectTreeTable/components/TableFooterRow.cjs.js");require("../containers/DetailsPanel/DetailsPanel.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../components/PlayableIcon/PlayableIcon.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../containers/Actions/Actions.styled.cjs.js");require("../containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../containers/Actions/ActionIcon.cjs.js");require("../containers/Views/ViewsMenu/ViewsMenu.cjs.js");require("../containers/Views/context/ViewsContextInstance.cjs.js");require("../containers/Views/Views.styled.cjs.js");require("../containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../containers/ListTable/ListTableRow.cjs.js");require("../containers/ListTable/ListTable.styled.cjs.js");require("./DeleteEntitiesContext.cjs.js");require("custom-protocol-check");require("../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");const se=["feed","subtasks","details","files"],A=r=>typeof r=="string"&&se.includes(r),ne=({children:r,defaultTab:s="feed",hasLicense:a,debug:n={},...o})=>{const c=o.user,p=te.getBundleModeFromUser(c),d="isGuest"in n?n.isGuest:c?.data?.isGuest,{powerLicense:g,setPowerpackDialog:f}=ue.usePowerpack(),l="hasLicense"in n?n.hasLicense:!!g||a,[q,x]=e.useState({}),[N,R]=e.useState([]),_=e.useCallback(i=>q[i]?q[i]:!1,[q]),G=e.useCallback((i,t)=>{const u={...q};u[i]=t,x(u)},[q]),[S,M]=j.useSessionStorage(b,{}),Y=e.useCallback(i=>{const t=S[i];return A(t)?t:s},[S,s]),[O,k]=e.useState(null),H=e.useCallback(i=>{k(i)},[]),E=e.useCallback(()=>{k(null),O&&C([])},[]);e.useEffect(()=>{E()},[o.useLocation().pathname]);const[K,m]=e.useState(null),z=e.useCallback(i=>{m(i)},[]),J=e.useCallback(()=>{m(null)},[]),[Q,T]=e.useState(null),[V,C]=e.useState([]),{uriType:W,uri:X,entity:P,getUriEntities:Z}=qe.useURIContext(),[y]=o.useSearchParams(),D=y.get("project"),h=y.get("type"),v=y.get("id"),w=y.get("activity");e.useEffect(()=>{if(W==="entity"&&P&&P.entityType!=="product"){Z().then(i=>{if(i.length===0)return;const t=i.find(re=>re.uri===X),u=t?.entities?.[0];if(!t||!u)return;const B=u?.projectName||P.projectName||"",F=u.representationId||u.versionId||u.productId||u.taskId||u.folderId;if(!B||!F)return;const ee={entityType:P.entityType,entities:[{id:F,projectName:B}],source:"uri"};T(ee)}).catch(i=>{console.warn("Failed to get URI entities:",i)});return}D&&h&&v&&(T({entityType:h,entities:[{id:v,projectName:D}],source:"url"}),w&&(C([w]),M({...S,overview:"feed"})))},[D,h,v]);const $={panelOpenByScope:q,getOpenForScope:_,setPanelOpen:G,setPanelOpenByScope:x,tabsByScope:S,getTabForScope:Y,slideOut:O,openSlideOut:H,closeSlideOut:E,highlightedActivities:V,setHighlightedActivities:C,pip:K,openPip:z,closePip:J,entities:Q,setEntities:T,feedAnnotations:N,setFeedAnnotations:R,bundleMode:p,isGuest:d,hasLicense:l,onPowerFeature:f,...o};return ie.jsxRuntimeExports.jsx(I.DetailsPanelContext.Provider,{value:$,children:r})},U=()=>{const r=e.useContext(I.DetailsPanelContext);if(r===void 0)throw new Error("useDetailsPanel must be used within a DetailsPanelProvider");return r},b="details/tabs-by-scope",oe=(r,s)=>{const a=L.readLocalStorage(b,{});L.writeLocalStorage(b,{...a,[r]:s})},ae=r=>{const{getOpenForScope:s,setPanelOpen:a,getTabForScope:n}=U(),[o,c]=j.useSessionStorage(b,{}),p=o[r],d=A(p)?p:n(r),g=e.useCallback(l=>{c(q=>({...q,[r]:l}))},[r,c]),f=d==="feed";return{isOpen:s(r),setOpen:l=>a(r,l),currentTab:d,setTab:g,isFeed:f}};exports.DetailsPanelProvider=ne;exports.setDetailsPanelTabForScope=oe;exports.useDetailsPanelContext=U;exports.useScopedDetailsPanel=ae;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ie=require("../../../_virtual/jsx-runtime.cjs.js"),e=require("react"),ue=require("./PowerpackContext.cjs.js"),qe=require("./UriContext.cjs.js"),L=require("../hooks/useLocalStorage.cjs.js"),j=require("../hooks/useSessionStorage.cjs.js");require("./RemoteModulesContext.cjs.js");require("../../node_modules/@module-federation/runtime/dist/index.cjs.js");require("../../../_virtual/semver.cjs.js");require("../api/base/client.cjs.js");require("../api/generated/graphql.cjs.js");require("../api/generated/graphqlLinks.cjs.js");require("../api/generated/access.cjs.js");require("../api/generated/actions.cjs.js");require("../api/generated/activityFeed.cjs.js");require("../api/generated/addons.cjs.js");require("../api/generated/anatomy.cjs.js");require("../api/generated/attributes.cjs.js");require("../api/generated/authentication.cjs.js");require("../api/generated/bundles.cjs.js");require("../api/generated/configuration.cjs.js");require("../api/generated/dataImport.cjs.js");require("../api/generated/desktop.cjs.js");require("../api/generated/entityLists.cjs.js");require("../api/generated/events.cjs.js");require("../api/generated/files.cjs.js");require("../api/generated/folders.cjs.js");require("../api/generated/inbox.cjs.js");require("../api/generated/links.cjs.js");require("../api/generated/market.cjs.js");require("../api/generated/onboarding.cjs.js");require("../api/generated/operations.cjs.js");require("../api/generated/products.cjs.js");require("../api/generated/projectDashboard.cjs.js");require("../api/generated/projects.cjs.js");require("../api/generated/projectFolders.cjs.js");require("../api/generated/reviewables.cjs.js");require("../api/generated/services.cjs.js");require("../api/generated/system.cjs.js");require("../api/generated/tasks.cjs.js");require("../api/generated/teams.cjs.js");require("../api/generated/thumbnails.cjs.js");require("../api/generated/uRIs.cjs.js");require("../api/generated/users.cjs.js");require("../api/generated/versions.cjs.js");require("../api/generated/workfiles.cjs.js");require("../api/generated/ynputCloud.cjs.js");require("../api/generated/grouping.cjs.js");require("../api/generated/views.cjs.js");require("../api/queries/actions/getActions.cjs.js");require("../api/queries/activities/getActivities.cjs.js");require("../api/queries/activities/updateReaction.cjs.js");require("../api/queries/activities/getMentions.cjs.js");require("../api/queries/activities/getCategories.cjs.js");require("../api/queries/addons/getAddons.cjs.js");require("../api/queries/addons/updateAddons.cjs.js");require("../api/queries/attributes/getAttributes.cjs.js");require("../api/queries/attributes/updateAttributes.cjs.js");require("../api/queries/authentication/getAuthentication.cjs.js");require("../api/queries/bundles/getBundles.cjs.js");require("../api/queries/bundles/updateBundles.cjs.js");require("../api/queries/cloud/cloud.cjs.js");require("../api/queries/columnStats/metricTargets.cjs.js");require("../api/queries/columnStats/groupCounts.cjs.js");require("../api/queries/config/getConfig.cjs.js");require("../api/queries/config/updateConfig.cjs.js");require("../api/queries/entities/getEntity.cjs.js");require("../api/queries/entities/getEntityPanel.cjs.js");require("../api/queries/overview/getOverview.cjs.js");require("../api/queries/overview/updateOverview.cjs.js");require("../api/queries/versions/getVersionsProducts.cjs.js");require("../api/queries/links/getEntityLinks.cjs.js");require("../api/queries/entities/updateEntity.cjs.js");require("../api/queries/entityLists/getLists.cjs.js");require("../api/queries/entityLists/updateLists.cjs.js");require("../api/queries/entityLists/getListsAttributes.cjs.js");require("../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../api/queries/entityLists/updateListsAttributes.cjs.js");require("../api/queries/entityLists/listFolders.cjs.js");require("../api/queries/folders/getFolders.cjs.js");require("../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../api/queries/grouping/getGrouping.cjs.js");require("../api/queries/links/updateLinks.cjs.js");require("../api/queries/links/getLinks.cjs.js");require("../api/queries/permissions/getPermissions.cjs.js");require("../api/queries/products/createProduct.cjs.js");require("../api/queries/products/getFolderProducts.cjs.js");require("../api/queries/project/getProject.cjs.js");require("../api/queries/project/updateProject.cjs.js");require("../api/queries/projectFolders/projectFolders.cjs.js");require("../api/queries/review/getReview.cjs.js");require("../api/queries/review/updateReview.cjs.js");require("../api/queries/share/share.cjs.js");require("../api/queries/system/getSystem.cjs.js");require("../api/queries/tasks/getTasks.cjs.js");require("../api/queries/tasks/updateTasks.cjs.js");require("../api/queries/teams/getTeams.cjs.js");require("../api/queries/userDashboard/getUserDashboard.cjs.js");require("../api/queries/users/getUsers.cjs.js");require("../api/queries/users/updateUsers.cjs.js");require("../api/queries/users/guests.cjs.js");require("../api/queries/versions/updateVersions.cjs.js");require("../api/queries/views/getViews.cjs.js");require("../api/queries/views/updateViews.cjs.js");require("../api/queries/watchers/getWatchers.cjs.js");require("../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");const I=require("./DetailsPanelContextInstance.cjs.js");require("uuid");const te=require("../util/getBundleMode.cjs.js");require("../util/pubsub.cjs.js");require("./SubtasksModulesContextInstance.cjs.js");require("./ThumbnailUploaderContext.cjs.js");require("./SettingsPanelContext.cjs.js");require("./pip/PiPProvider.cjs.js");require("react-dom");require("./pip/PiPWrapper.cjs.js");require("./AddonProjectContext.cjs.js");require("./AddonContext.cjs.js");require("./MoveEntityContext.cjs.js");require("./MenuContext.cjs.js");require("./WebsocketContext.cjs.js");require("./GlobalContext.cjs.js");require("./ProjectContext.cjs.js");require("./ProjectFoldersContextInstance.cjs.js");require("./EntityUpdatesContextInstance.cjs.js");require("../containers/ContextMenu/ContextMenuContext.cjs.js");require("@ynput/ayon-react-components");;/* empty css */require("clsx");require("../containers/Feed/context/FeedContext.cjs.js");require("../containers/Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../containers/Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../containers/Feed/components/CommentInput/CommentInput.cjs.js");require("../containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../containers/Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../containers/Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../components/AccessUser/AccessUser.cjs.js");require("../components/AttributeEditor/AttributeEditor.cjs.js");require("../components/AttributeEditor/attributeTypeMap.cjs.js");require("../components/Badge/Badge.cjs.js");require("../components/Chips/Chips.cjs.js");require("date-fns");require("../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../components/LinksManager/CellEditingDialog.cjs.js");require("../components/DeleteEntitiesConfirm/DeleteConfirmContent.cjs.js");require("../../../_virtual/index.cjs.js");require("../../../node_modules/refractor/lib/common.cjs.js");require("../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../components/QuillListStyles/QuillListStyles.cjs.js");require("../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("rehype-raw");require("../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../containers/Feed/components/CommentInput/modules/index.cjs.js");require("../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../components/EarlyPreview/EarlyPreview.cjs.js");require("../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../components/InfoMessage/InfoMessage.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../components/EnumEditor/EnumEditor.styled.cjs.js");require("../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../components/EntityPath/EntityPath.styled.cjs.js");require("../components/EntityPath/SegmentProvider.cjs.js");require("../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../components/Feedback/FeedbackContextInstance.cjs.js");require("../components/Feedback/SupportBubble.cjs.js");require("../components/FileThumbnail/FileThumbnail.cjs.js");require("../components/LegacyBadge/LegacyBadge.cjs.js");require("../components/LinksManager/LinksManager.styled.cjs.js");require("../containers/EntityPickerDialog/EntityPickerDialog.cjs.js");require("../components/Powerpack/PowerpackButton.cjs.js");require("../components/Powerpack/FreeTrialLink.cjs.js");require("../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../components/Powerpack/CTAButton.cjs.js");require("../components/Powerpack/RequiredAddonVersion.cjs.js");require("../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../components/SizeSlider/SizeSlider.cjs.js");require("react-router-dom");require("../containers/Slicer/components/Slicer.cjs.js");require("../containers/Slicer/context/SlicerContextInstance.cjs.js");require("../containers/Slicer/components/SlicerDropdownFallback.cjs.js");require("../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("react-redux");require("../components/ReviewableCard/ReviewableCard.cjs.js");require("../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../components/SearchFilter/filterDates.cjs.js");require("../components/SearchFilter/CustomDateRangeDialog.cjs.js");require("../components/SettingsPanel/SettingsPanel.cjs.js");require("../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../components/StyledLink/StyledLink.cjs.js");require("../components/SyncButton/SyncButton.cjs.js");require("../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../components/Thumbnail/Thumbnail.styled.cjs.js");require("../components/Thumbnail/StackedThumbnails.cjs.js");require("../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../components/VersionUploader/context/VersionUploadContextInstance.cjs.js");require("../components/Watchers/Watchers.cjs.js");require("../components/Menu/Menu.styled.cjs.js");require("../components/Menu/MenuItem.cjs.js");require("../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../components/ColumnHeaderMenuUI.cjs.js");require("../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("../containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../containers/Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../containers/Feed/components/ActivityDate.cjs.js");require("../containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js");require("../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../containers/Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../containers/Feed/Feed.styled.cjs.js");require("../containers/Feed/components/FeedSearchFilter.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/DateWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../containers/ProjectTreeTable/widgets/TextWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/CellWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/LinksWidget.cjs.js");require("short-uuid");require("../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");require("../containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../containers/ProjectTreeTable/context/ClipboardContext.cjs.js");require("../containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js");require("../containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js");require("../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../containers/ProjectTreeTable/components/SelectionCell.cjs.js");require("../containers/ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../containers/ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../containers/ProjectTreeTable/components/TableFooterRow.cjs.js");require("../containers/DetailsPanel/DetailsPanel.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../components/PlayableIcon/PlayableIcon.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../containers/Actions/Actions.styled.cjs.js");require("../containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../containers/Actions/ActionIcon.cjs.js");require("../containers/Views/ViewsMenu/ViewsMenu.cjs.js");require("../containers/Views/context/ViewsContextInstance.cjs.js");require("../containers/Views/Views.styled.cjs.js");require("../containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../containers/ListTable/ListTableRow.cjs.js");require("../containers/ListTable/ListTable.styled.cjs.js");require("./DeleteEntitiesContext.cjs.js");require("custom-protocol-check");require("../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");const se=["feed","subtasks","details","files"],A=r=>typeof r=="string"&&se.includes(r),ne=({children:r,defaultTab:s="feed",hasLicense:a,debug:n={},...o})=>{const c=o.user,p=te.getBundleModeFromUser(c),d="isGuest"in n?n.isGuest:c?.data?.isGuest,{powerLicense:C,setPowerpackDialog:D}=ue.usePowerpack(),l="hasLicense"in n?n.hasLicense:!!C||a,[q,x]=e.useState({}),[N,R]=e.useState([]),_=e.useCallback(i=>q[i]?q[i]:!1,[q]),G=e.useCallback((i,t)=>{const u={...q};u[i]=t,x(u)},[q]),[S,M]=j.useSessionStorage(T,{}),Y=e.useCallback(i=>{const t=S[i];return A(t)?t:s},[S,s]),[O,k]=e.useState(null),H=e.useCallback(i=>{k(i)},[]),E=e.useCallback(()=>{k(null),O&&v([])},[]);e.useEffect(()=>{E()},[o.useLocation().pathname]);const[K,m]=e.useState(null),z=e.useCallback(i=>{m(i)},[]),J=e.useCallback(()=>{m(null)},[]),[Q,h]=e.useState(null),[V,v]=e.useState([]),{uriType:W,uri:X,entity:P,getUriEntities:Z}=qe.useURIContext(),[y]=o.useSearchParams(),b=y.get("project"),g=y.get("type"),f=y.get("id"),w=y.get("activity");e.useEffect(()=>{if(!(!b&&!g&&!f)){if(W==="entity"&&P&&P.entityType!=="product"){Z().then(i=>{if(i.length===0)return;const t=i.find(re=>re.uri===X),u=t?.entities?.[0];if(!t||!u)return;const B=u?.projectName||P.projectName||"",F=u.representationId||u.versionId||u.productId||u.taskId||u.folderId;if(!B||!F)return;const ee={entityType:P.entityType,entities:[{id:F,projectName:B}],source:"uri"};h(ee)}).catch(i=>{console.warn("Failed to get URI entities:",i)});return}b&&g&&f&&(h({entityType:g,entities:[{id:f,projectName:b}],source:"url"}),w&&(v([w]),M({...S,overview:"feed"})))}},[b,g,f]);const $={panelOpenByScope:q,getOpenForScope:_,setPanelOpen:G,setPanelOpenByScope:x,tabsByScope:S,getTabForScope:Y,slideOut:O,openSlideOut:H,closeSlideOut:E,highlightedActivities:V,setHighlightedActivities:v,pip:K,openPip:z,closePip:J,entities:Q,setEntities:h,feedAnnotations:N,setFeedAnnotations:R,bundleMode:p,isGuest:d,hasLicense:l,onPowerFeature:D,...o};return ie.jsxRuntimeExports.jsx(I.DetailsPanelContext.Provider,{value:$,children:r})},U=()=>{const r=e.useContext(I.DetailsPanelContext);if(r===void 0)throw new Error("useDetailsPanel must be used within a DetailsPanelProvider");return r},T="details/tabs-by-scope",oe=(r,s)=>{const a=L.readLocalStorage(T,{});L.writeLocalStorage(T,{...a,[r]:s})},ae=r=>{const{getOpenForScope:s,setPanelOpen:a,getTabForScope:n}=U(),[o,c]=j.useSessionStorage(T,{}),p=o[r],d=A(p)?p:n(r),C=e.useCallback(l=>{c(q=>({...q,[r]:l}))},[r,c]),D=d==="feed";return{isOpen:s(r),setOpen:l=>a(r,l),currentTab:d,setTab:C,isFeed:D}};exports.DetailsPanelProvider=ne;exports.setDetailsPanelTabForScope=oe;exports.useDetailsPanelContext=U;exports.useScopedDetailsPanel=ae;
|
|
2
2
|
//# sourceMappingURL=DetailsPanelContext.cjs.js.map
|