@ynput/ayon-frontend-shared 0.8.1 → 0.10.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 (50) hide show
  1. package/dist/DetailsPanel.es.js +39 -39
  2. package/dist/ListTable.es.js +738 -651
  3. package/dist/NewEntity.es.js +4 -2
  4. package/dist/ProjectTreeTable.es.js +4208 -4185
  5. package/dist/ProjectsTable.es.js +5 -4
  6. package/dist/Slicer.es.js +327 -294
  7. package/dist/Views.es.js +725 -713
  8. package/dist/chunks/ColumnDropIndicator.es.js +33 -27
  9. package/dist/chunks/DeleteEntitiesConfirmDialog.es.js +44 -38
  10. package/dist/chunks/EntityPickerDialog.es.js +19 -19
  11. package/dist/chunks/Feed.es.js +112 -110
  12. package/dist/chunks/FilmstripEntityCard.es.js +2 -2
  13. package/dist/chunks/GroupSettingsFallback.es.js +3 -2
  14. package/dist/chunks/MetaWidget.es.js +828 -809
  15. package/dist/chunks/NewEntityContextInstance.es.js +6 -5
  16. package/dist/chunks/ReviewablesSelector.es.js +76 -76
  17. package/dist/chunks/SimpleTable.es.js +151 -149
  18. package/dist/chunks/Slicer.es.js +637 -617
  19. package/dist/chunks/TableExportContextInstance.es.js +415 -471
  20. package/dist/chunks/ThumbnailSimple.es.js +11 -11
  21. package/dist/chunks/Watchers.es.js +46 -46
  22. package/dist/chunks/getUris.es.js +1069 -1057
  23. package/dist/chunks/searchTerms.es.js +617 -581
  24. package/dist/chunks/useCreateContextMenu.es.js +15 -13
  25. package/dist/chunks/useLocalStorage.es.js +78 -0
  26. package/dist/components.es.js +916 -884
  27. package/dist/context.es.js +348 -337
  28. package/dist/hooks.es.js +218 -187
  29. package/dist/index.es.js +11 -10
  30. package/dist/types/Actions.d.ts +17 -16
  31. package/dist/types/ContextMenu.d.ts +18 -17
  32. package/dist/types/DetailsPanel.d.ts +17 -16
  33. package/dist/types/EntityPickerDialog.d.ts +17 -16
  34. package/dist/types/Feed.d.ts +18 -17
  35. package/dist/types/ListTable.d.ts +28 -18
  36. package/dist/types/NewEntity.d.ts +19 -16
  37. package/dist/types/ProjectTreeTable.d.ts +62 -19
  38. package/dist/types/ProjectsTable.d.ts +18 -17
  39. package/dist/types/RepresentationsList.d.ts +17 -16
  40. package/dist/types/SimpleTable.d.ts +18 -17
  41. package/dist/types/Slicer.d.ts +24 -17
  42. package/dist/types/Views.d.ts +23 -17
  43. package/dist/types/api.d.ts +18 -17
  44. package/dist/types/components.d.ts +64 -18
  45. package/dist/types/context.d.ts +28 -18
  46. package/dist/types/hooks.d.ts +20 -17
  47. package/dist/types/index.d.ts +17 -16
  48. package/dist/types/util.d.ts +38 -16
  49. package/dist/util.es.js +116 -113
  50. package/package.json +2 -2
@@ -114,7 +114,7 @@ declare type PowerpackDialogType = {
114
114
  icon?: string;
115
115
  };
116
116
 
117
- declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport';
117
+ declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport' | 'personalApiKeys';
118
118
 
119
119
  export declare function useContextMenu(): ContextMenuContextType;
120
120
 
@@ -132,6 +132,22 @@ RefObject<{
132
132
  export { }
133
133
 
134
134
 
135
+ declare module '@tanstack/react-table' {
136
+ interface FilterFns {
137
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
138
+ }
139
+ interface FilterMeta {
140
+ itemRank: RankingInfo;
141
+ }
142
+ interface TableMeta<TData extends RowData> {
143
+ isExpandable?: boolean;
144
+ isLoading?: boolean;
145
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
146
+ [key: string]: any;
147
+ }
148
+ }
149
+
150
+
135
151
  declare module '@tanstack/react-table' {
136
152
  interface ColumnMeta<TData extends RowData, TValue> {
137
153
  addonColumn?: AddonColumnMeta;
@@ -149,22 +165,6 @@ declare module '@tanstack/react-table' {
149
165
  }
150
166
 
151
167
 
152
- declare module '@tanstack/react-table' {
153
- interface FilterFns {
154
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
155
- }
156
- interface FilterMeta {
157
- itemRank: RankingInfo;
158
- }
159
- interface TableMeta<TData extends RowData> {
160
- isExpandable?: boolean;
161
- isLoading?: boolean;
162
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
163
- [key: string]: any;
164
- }
165
- }
166
-
167
-
168
168
  declare global {
169
169
  interface Window {
170
170
  senderId: string;
@@ -175,6 +175,7 @@ declare global {
175
175
  declare module '@tanstack/react-table' {
176
176
  interface ColumnMeta<TData extends RowData, TValue> {
177
177
  listTableCustomCell?: boolean;
178
+ listTableGrow?: boolean;
178
179
  editable?: boolean;
179
180
  }
180
181
  interface TableMeta<TData extends RowData> {
@@ -491,6 +491,22 @@ declare type User = {
491
491
  export { }
492
492
 
493
493
 
494
+ declare module '@tanstack/react-table' {
495
+ interface FilterFns {
496
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
497
+ }
498
+ interface FilterMeta {
499
+ itemRank: RankingInfo;
500
+ }
501
+ interface TableMeta<TData extends RowData> {
502
+ isExpandable?: boolean;
503
+ isLoading?: boolean;
504
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
505
+ [key: string]: any;
506
+ }
507
+ }
508
+
509
+
494
510
  declare module '@tanstack/react-table' {
495
511
  interface ColumnMeta<TData extends RowData, TValue> {
496
512
  addonColumn?: AddonColumnMeta;
@@ -508,22 +524,6 @@ declare module '@tanstack/react-table' {
508
524
  }
509
525
 
510
526
 
511
- declare module '@tanstack/react-table' {
512
- interface FilterFns {
513
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
514
- }
515
- interface FilterMeta {
516
- itemRank: RankingInfo;
517
- }
518
- interface TableMeta<TData extends RowData> {
519
- isExpandable?: boolean;
520
- isLoading?: boolean;
521
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
522
- [key: string]: any;
523
- }
524
- }
525
-
526
-
527
527
  declare global {
528
528
  interface Window {
529
529
  senderId: string;
@@ -534,6 +534,7 @@ declare global {
534
534
  declare module '@tanstack/react-table' {
535
535
  interface ColumnMeta<TData extends RowData, TValue> {
536
536
  listTableCustomCell?: boolean;
537
+ listTableGrow?: boolean;
537
538
  editable?: boolean;
538
539
  }
539
540
  interface TableMeta<TData extends RowData> {
@@ -80,6 +80,22 @@ declare type SearchEntityLink = {
80
80
  export { }
81
81
 
82
82
 
83
+ declare module '@tanstack/react-table' {
84
+ interface FilterFns {
85
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
86
+ }
87
+ interface FilterMeta {
88
+ itemRank: RankingInfo;
89
+ }
90
+ interface TableMeta<TData extends RowData> {
91
+ isExpandable?: boolean;
92
+ isLoading?: boolean;
93
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
94
+ [key: string]: any;
95
+ }
96
+ }
97
+
98
+
83
99
  declare module '@tanstack/react-table' {
84
100
  interface ColumnMeta<TData extends RowData, TValue> {
85
101
  addonColumn?: AddonColumnMeta;
@@ -97,22 +113,6 @@ declare module '@tanstack/react-table' {
97
113
  }
98
114
 
99
115
 
100
- declare module '@tanstack/react-table' {
101
- interface FilterFns {
102
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
103
- }
104
- interface FilterMeta {
105
- itemRank: RankingInfo;
106
- }
107
- interface TableMeta<TData extends RowData> {
108
- isExpandable?: boolean;
109
- isLoading?: boolean;
110
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
111
- [key: string]: any;
112
- }
113
- }
114
-
115
-
116
116
  declare global {
117
117
  interface Window {
118
118
  senderId: string;
@@ -123,6 +123,7 @@ declare global {
123
123
  declare module '@tanstack/react-table' {
124
124
  interface ColumnMeta<TData extends RowData, TValue> {
125
125
  listTableCustomCell?: boolean;
126
+ listTableGrow?: boolean;
126
127
  editable?: boolean;
127
128
  }
128
129
  interface TableMeta<TData extends RowData> {
@@ -234,7 +234,7 @@ export declare type MimeTypeDefinition = {
234
234
  callback?: (file: any) => void;
235
235
  };
236
236
 
237
- declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport';
237
+ declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport' | 'personalApiKeys';
238
238
 
239
239
  declare type ProductSuggestionItem = {
240
240
  /** The date and time when the suggested entity was created */
@@ -374,6 +374,22 @@ declare type VersionSuggestionItem = {
374
374
  export { }
375
375
 
376
376
 
377
+ declare module '@tanstack/react-table' {
378
+ interface FilterFns {
379
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
380
+ }
381
+ interface FilterMeta {
382
+ itemRank: RankingInfo;
383
+ }
384
+ interface TableMeta<TData extends RowData> {
385
+ isExpandable?: boolean;
386
+ isLoading?: boolean;
387
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
388
+ [key: string]: any;
389
+ }
390
+ }
391
+
392
+
377
393
  declare module '@tanstack/react-table' {
378
394
  interface ColumnMeta<TData extends RowData, TValue> {
379
395
  addonColumn?: AddonColumnMeta;
@@ -391,22 +407,6 @@ declare module '@tanstack/react-table' {
391
407
  }
392
408
 
393
409
 
394
- declare module '@tanstack/react-table' {
395
- interface FilterFns {
396
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
397
- }
398
- interface FilterMeta {
399
- itemRank: RankingInfo;
400
- }
401
- interface TableMeta<TData extends RowData> {
402
- isExpandable?: boolean;
403
- isLoading?: boolean;
404
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
405
- [key: string]: any;
406
- }
407
- }
408
-
409
-
410
410
  declare global {
411
411
  interface Window {
412
412
  senderId: string;
@@ -417,6 +417,7 @@ declare global {
417
417
  declare module '@tanstack/react-table' {
418
418
  interface ColumnMeta<TData extends RowData, TValue> {
419
419
  listTableCustomCell?: boolean;
420
+ listTableGrow?: boolean;
420
421
  editable?: boolean;
421
422
  }
422
423
  interface TableMeta<TData extends RowData> {
@@ -9,6 +9,7 @@ import { RefObject } from 'react';
9
9
  import { Row } from '@tanstack/react-table';
10
10
  import { RowData } from '@tanstack/react-table';
11
11
  import { SortingState } from '@tanstack/react-table';
12
+ import { Table } from '@tanstack/react-table';
12
13
  import { VisibilityState } from '@tanstack/react-table';
13
14
 
14
15
  declare type AttributeData = {
@@ -137,6 +138,8 @@ export declare const getGroupItemValue: (value: ListTableGroupingPathItem | unde
137
138
 
138
139
  export declare const getListTableCellId: (rowId: string, columnId: string) => string;
139
140
 
141
+ export declare const getListTableRowId: (tableId: string, rowIndex: number) => string;
142
+
140
143
  export declare type GetRowColumnValue<TData> = (row: TData, columnId: string) => unknown;
141
144
 
142
145
  declare type IconModel = {
@@ -153,7 +156,9 @@ export declare const isListTableGroupDisplayObject: (value: unknown) => value is
153
156
 
154
157
  export declare const isListTableGroupRow: <TData>(row: TData | ListTableGroupRow<TData>) => row is ListTableGroupRow<TData>;
155
158
 
156
- export declare function ListTable<TData extends RowData>({ data, columns, getRowId, fetchNextPage, hasNextPage, isFetchingNextPage, onUpdateRow, onOpenViewer, editable, onReorderRows, rowContextMenuBuilders, onRowDoubleClick, selectedRows, onSelectedRowsChange, multiSelection, cellWrapper, columnAttributeData, dataTypeWidgets, enableColumnReordering, columnOrder: columnOrderProp, onColumnOrderChange, enableColumnVisibility, columnVisibility: columnVisibilityProp, defaultColumnVisibility, onColumnVisibilityChange, enableColumnResizing, columnSizing: columnSizingProp, onColumnSizingChange, enableSorting, sorting: sortingProp, onSortingChange, enableExpanding, expanded: expandedProp, onExpandedChange, getIsRowInactive, }: ListTableProps<TData>): JSX_2.Element;
159
+ export declare const isListTableGrowColumn: <TData extends RowData>(table: Table<TData>, columnId: string) => boolean;
160
+
161
+ export declare function ListTable<TData extends RowData>({ data, columns, getRowId, fetchNextPage, hasNextPage, isFetchingNextPage, onUpdateRow, onOpenViewer, editable, onReorderRows, rowContextMenuBuilders, onRowDoubleClick, selectedRows, onSelectedRowsChange, multiSelection, cellWrapper, columnAttributeData, dataTypeWidgets, enableColumnReordering, columnOrder: columnOrderProp, onColumnOrderChange, enableColumnVisibility, columnVisibility: columnVisibilityProp, defaultColumnVisibility, onColumnVisibilityChange, enableColumnResizing, columnSizing: columnSizingProp, onColumnSizingChange, enableSorting, sorting: sortingProp, onSortingChange, enableExpanding, expanded: expandedProp, onExpandedChange, getIsRowInactive, getRowClassName, variant, scrollToSelection, ariaLabel, }: ListTableProps<TData>): JSX_2.Element;
157
162
 
158
163
  export declare type ListTableAttributeType = NonNullable<AttributeData['type']>;
159
164
 
@@ -221,6 +226,10 @@ export declare interface ListTableProps<TData> {
221
226
  expanded?: ExpandedState;
222
227
  onExpandedChange?: (expanded: ExpandedState) => void;
223
228
  getIsRowInactive?: (row: TData) => boolean;
229
+ getRowClassName?: (row: TData) => string | undefined;
230
+ variant?: 'default' | 'data';
231
+ scrollToSelection?: boolean;
232
+ ariaLabel?: string;
224
233
  }
225
234
 
226
235
  export declare type ListTableRowContextMenuBuilder<TData extends RowData> = (e: React.MouseEvent<HTMLTableRowElement>, context: ListTableRowContextMenuContext<TData>) => ContextMenuItemType | ContextMenuItemType[] | undefined;
@@ -265,13 +274,29 @@ export declare interface ListTableWidgetRenderContext<TData extends RowData> {
265
274
 
266
275
  export declare type ListTableWidgetRenderer<TData extends RowData> = (context: ListTableWidgetRenderContext<TData>) => React.ReactNode;
267
276
 
268
- declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport';
277
+ declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport' | 'personalApiKeys';
269
278
 
270
279
  export declare const renderListTableFallbackValue: (value: unknown) => string;
271
280
 
272
281
  export { }
273
282
 
274
283
 
284
+ declare module '@tanstack/react-table' {
285
+ interface FilterFns {
286
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
287
+ }
288
+ interface FilterMeta {
289
+ itemRank: RankingInfo;
290
+ }
291
+ interface TableMeta<TData extends RowData> {
292
+ isExpandable?: boolean;
293
+ isLoading?: boolean;
294
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
295
+ [key: string]: any;
296
+ }
297
+ }
298
+
299
+
275
300
  declare module '@tanstack/react-table' {
276
301
  interface ColumnMeta<TData extends RowData, TValue> {
277
302
  addonColumn?: AddonColumnMeta;
@@ -289,22 +314,6 @@ declare module '@tanstack/react-table' {
289
314
  }
290
315
 
291
316
 
292
- declare module '@tanstack/react-table' {
293
- interface FilterFns {
294
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
295
- }
296
- interface FilterMeta {
297
- itemRank: RankingInfo;
298
- }
299
- interface TableMeta<TData extends RowData> {
300
- isExpandable?: boolean;
301
- isLoading?: boolean;
302
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
303
- [key: string]: any;
304
- }
305
- }
306
-
307
-
308
317
  declare global {
309
318
  interface Window {
310
319
  senderId: string;
@@ -315,6 +324,7 @@ declare global {
315
324
  declare module '@tanstack/react-table' {
316
325
  interface ColumnMeta<TData extends RowData, TValue> {
317
326
  listTableCustomCell?: boolean;
327
+ listTableGrow?: boolean;
318
328
  editable?: boolean;
319
329
  }
320
330
  interface TableMeta<TData extends RowData> {
@@ -187,9 +187,27 @@ declare type TaskType_2 = {
187
187
 
188
188
  export declare const useNewEntityContext: () => NewEntityContextType;
189
189
 
190
+ export declare const useOptionalNewEntityContext: () => NewEntityContextType | undefined;
191
+
190
192
  export { }
191
193
 
192
194
 
195
+ declare module '@tanstack/react-table' {
196
+ interface FilterFns {
197
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
198
+ }
199
+ interface FilterMeta {
200
+ itemRank: RankingInfo;
201
+ }
202
+ interface TableMeta<TData extends RowData> {
203
+ isExpandable?: boolean;
204
+ isLoading?: boolean;
205
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
206
+ [key: string]: any;
207
+ }
208
+ }
209
+
210
+
193
211
  declare module '@tanstack/react-table' {
194
212
  interface ColumnMeta<TData extends RowData, TValue> {
195
213
  addonColumn?: AddonColumnMeta;
@@ -207,22 +225,6 @@ declare module '@tanstack/react-table' {
207
225
  }
208
226
 
209
227
 
210
- declare module '@tanstack/react-table' {
211
- interface FilterFns {
212
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
213
- }
214
- interface FilterMeta {
215
- itemRank: RankingInfo;
216
- }
217
- interface TableMeta<TData extends RowData> {
218
- isExpandable?: boolean;
219
- isLoading?: boolean;
220
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
221
- [key: string]: any;
222
- }
223
- }
224
-
225
-
226
228
  declare global {
227
229
  interface Window {
228
230
  senderId: string;
@@ -233,6 +235,7 @@ declare global {
233
235
  declare module '@tanstack/react-table' {
234
236
  interface ColumnMeta<TData extends RowData, TValue> {
235
237
  listTableCustomCell?: boolean;
238
+ listTableGrow?: boolean;
236
239
  editable?: boolean;
237
240
  }
238
241
  interface TableMeta<TData extends RowData> {
@@ -738,6 +738,7 @@ declare type ContextEvent = React.MouseEvent<HTMLTableSectionElement, MouseEvent
738
738
 
739
739
  export declare type ContextMenuItemConstructor = (e: ContextEvent, cell: TableCellContextData, selectedCells: TableCellContextData[], meta: {
740
740
  selectedCells: string[];
741
+ scopedCells: string[];
741
742
  selectedRows: string[];
742
743
  selectedColumns: string[];
743
744
  selectedFullRows: string[];
@@ -1623,6 +1624,8 @@ export declare const getCellId: (rowId: RowId, colId: ColId) => CellId;
1623
1624
 
1624
1625
  export declare const getCellValue: (obj: any, path: string) => any;
1625
1626
 
1627
+ declare type GetChildFolderIds = (folderIds: string[], includeSelf?: boolean) => string[];
1628
+
1626
1629
  export declare const getColumnIcon: (columnId: string) => string;
1627
1630
 
1628
1631
  export declare const getColumnLabel: (columnId: string, scopes?: string[]) => string;
@@ -2808,7 +2811,7 @@ declare type PowerpackDialogType = {
2808
2811
  icon?: string;
2809
2812
  };
2810
2813
 
2811
- declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport';
2814
+ declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport' | 'personalApiKeys';
2812
2815
 
2813
2816
  export declare const processFieldValue: (value: string, fieldValueType: "string" | "number" | "boolean" | "array") => any;
2814
2817
 
@@ -2868,6 +2871,24 @@ declare type ProductTypeListItem = {
2868
2871
  icon?: string | null;
2869
2872
  };
2870
2873
 
2874
+ /** Context of a profile section: nothing besides `user`, the signed-in user it is about. */
2875
+ declare type ProfileSectionContext = Record<never, never>
2876
+
2877
+ /** Description of a `profile.section` contribution. */
2878
+ declare interface ProfileSectionMeta {
2879
+ /** unique among the addon's sections */
2880
+ id: string
2881
+ /** the section's title, above its content */
2882
+ title: string
2883
+ /** order among addon sections, lowest first */
2884
+ order?: number
2885
+ /**
2886
+ * a Power Pack feature: shown only with a Power Pack licence. Without one, AYON shows its own
2887
+ * preview of the feature where it has one. `false` by default
2888
+ */
2889
+ powerFeature?: boolean
2890
+ }
2891
+
2871
2892
  declare interface ProjectContextValue extends ProjectModelWithProducts {
2872
2893
  projectName: string;
2873
2894
  isLoading: boolean;
@@ -3085,6 +3106,7 @@ export declare interface ProjectOverviewContextType {
3085
3106
  export declare interface ProjectOverviewProviderProps {
3086
3107
  children: ReactNode;
3087
3108
  modules: ProjectTableModulesType;
3109
+ page?: string;
3088
3110
  }
3089
3111
 
3090
3112
  /** Description of a `project.page` contribution: a page, and what the host adds around it. */
@@ -3134,6 +3156,8 @@ export declare interface ProjectTableContextType {
3134
3156
  onSyncData: ProjectTableProviderProps['onSyncData'];
3135
3157
  getEntityById: (id: string, field?: string) => EntityMap | undefined;
3136
3158
  isRowReadOnly: (rowId: string) => boolean;
3159
+ readOnly?: boolean;
3160
+ tableId: string;
3137
3161
  loadingLinksEntityIds?: Set<string>;
3138
3162
  groups: ProjectTableProviderProps['groups'];
3139
3163
  overrideGroupBy?: ProjectTableProviderProps['overrideGroupBy'];
@@ -3194,7 +3218,7 @@ declare type ProjectTableModulesType = {
3194
3218
  /** The project pages with a project table (ProjectTreeTable). */
3195
3219
  declare type ProjectTablePage = 'overview' | 'products' | 'lists'
3196
3220
 
3197
- export declare const ProjectTableProvider: ({ children, foldersMap, tableRows, tasksMap, entitiesMap, tasksByFolderMap, selectedFolders, expanded, showHierarchy, loadingTasks, isLoadingMore, isLoading, error, softError, softErrorAction, isInitialized, users, attribFields, scopes, groups, groupRowFunc, overrideGroupBy, groupCounts, groupCountsComplete, queryFilters, updateShowHierarchy, toggleExpanded, updateExpanded, fetchNextPage, onSyncData, setExpanded, contextMenuItems, powerpack, modules, loadingLinksEntityIds, groupByConfig, hierarchyOptions, hierarchyActive, isFlatFolderView, SubtasksManager, playerOpen, onOpenPlayer, onResetView, hiddenListIds, useParams, useNavigate, useLocation, useSearchParams, dispatch, }: ProjectTableProviderProps) => JSX_2.Element;
3221
+ export declare const ProjectTableProvider: ({ children, foldersMap, tableRows, tasksMap, entitiesMap, tasksByFolderMap, selectedFolders, expanded, showHierarchy, loadingTasks, isLoadingMore, isLoading, error, softError, softErrorAction, isInitialized, users, attribFields, scopes, groups, groupRowFunc, overrideGroupBy, groupCounts, groupCountsComplete, queryFilters, updateShowHierarchy, toggleExpanded, updateExpanded, fetchNextPage, onSyncData, setExpanded, contextMenuItems, powerpack, modules, loadingLinksEntityIds, groupByConfig, hierarchyOptions, hierarchyActive, isFlatFolderView, SubtasksManager, playerOpen, onOpenPlayer, onResetView, hiddenListIds, readOnly, useParams, useNavigate, useLocation, useSearchParams, dispatch, }: ProjectTableProviderProps) => JSX_2.Element;
3198
3222
 
3199
3223
  export declare interface ProjectTableProviderProps {
3200
3224
  children: ReactNode;
@@ -3239,6 +3263,7 @@ export declare interface ProjectTableProviderProps {
3239
3263
  modules: ProjectTableModulesType;
3240
3264
  groupByConfig?: {
3241
3265
  entityType?: GroupByEntityType;
3266
+ hideEmpty?: boolean;
3242
3267
  };
3243
3268
  hierarchyOptions?: Array<{
3244
3269
  value: string;
@@ -3260,6 +3285,7 @@ export declare interface ProjectTableProviderProps {
3260
3285
  }) => void;
3261
3286
  onResetView?: () => void;
3262
3287
  hiddenListIds?: string[];
3288
+ readOnly?: boolean;
3263
3289
  useParams?: typeof useParams;
3264
3290
  useNavigate?: typeof useNavigate;
3265
3291
  useLocation?: typeof useLocation;
@@ -3456,6 +3482,8 @@ export declare const resolveColumnVisibility: (columnVisibility: VisibilityState
3456
3482
  */
3457
3483
  export declare const resolveRelativeValue: (value: string) => string;
3458
3484
 
3485
+ export declare const resolveSlicerFolders: (slices: SliceRowSelection[], entityListFolderIds?: string[], getChildFolderIds?: GetChildFolderIds, searchFolderIds?: string[] | null) => SelectedFoldersResult;
3486
+
3459
3487
  export declare const RESTRICTED_ENTITY_ICON = "lock";
3460
3488
 
3461
3489
  export declare const RESTRICTED_ENTITY_LABEL = "Access Restricted - Insufficient Permissions";
@@ -3877,6 +3905,17 @@ declare interface SlotMap {
3877
3905
  context: UserDetailsContext
3878
3906
  pieces: { run: Loader<RunPiece<'userDetails.menuItem'>> }
3879
3907
  }
3908
+ /**
3909
+ * A section on the signed-in user's profile page (Account → Profile), below AYON's own forms.
3910
+ * The section shows from the description, titled like AYON's; `component` loads when it is first
3911
+ * shown. Saving is the section's own: AYON's "Save profile" button doesn't see it.
3912
+ */
3913
+ 'profile.section': {
3914
+ version: 1
3915
+ meta: ProfileSectionMeta
3916
+ context: ProfileSectionContext
3917
+ pieces: { component: Loader<ComponentType<SlotProps<'profile.section'>>> }
3918
+ }
3880
3919
  /**
3881
3920
  * Code with no UI that runs while AYON is open, whatever the page: keeping a state, listening to
3882
3921
  * websocket events, registering a store listener. `component` loads at startup and is mounted
@@ -4669,6 +4708,8 @@ declare interface UseHistoryReturn {
4669
4708
  /** Like useCellEditing, but returns undefined outside of a CellEditingProvider. */
4670
4709
  export declare const useOptionalCellEditing: () => CellEditingContextType | undefined;
4671
4710
 
4711
+ export declare const useOptionalProjectDataContext: () => ProjectDataContextProps | undefined;
4712
+
4672
4713
  export declare const useOptionalProjectTableContext: () => ProjectTableContextType | undefined;
4673
4714
 
4674
4715
  export declare const useOptionalSelectedRowsContext: () => SelectedRowsContextType | undefined;
@@ -4787,12 +4828,13 @@ declare interface UseScopedAttributeFieldsProps<T extends AttributeField> {
4787
4828
  allowedScopes?: string[];
4788
4829
  }
4789
4830
 
4790
- export declare const useSelectedFolders: ({ slices, entityListFolderIds, getChildFolderIds, }: UseSelectedFoldersProps) => SelectedFoldersResult;
4831
+ export declare const useSelectedFolders: ({ slices, entityListFolderIds, getChildFolderIds, searchFolderIds, }: UseSelectedFoldersProps) => SelectedFoldersResult;
4791
4832
 
4792
4833
  declare interface UseSelectedFoldersProps {
4793
4834
  slices: SliceRowSelection[];
4794
4835
  entityListFolderIds?: string[];
4795
4836
  getChildFolderIds?: (folderIds: string[], includeSelf?: boolean) => string[];
4837
+ searchFolderIds?: string[] | null;
4796
4838
  }
4797
4839
 
4798
4840
  export declare const useSelectedRowsContext: () => SelectedRowsContextType;
@@ -5064,6 +5106,22 @@ export declare const WRAP_MIN_ROW_HEIGHT: number;
5064
5106
  export { }
5065
5107
 
5066
5108
 
5109
+ declare module '@tanstack/react-table' {
5110
+ interface FilterFns {
5111
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
5112
+ }
5113
+ interface FilterMeta {
5114
+ itemRank: RankingInfo;
5115
+ }
5116
+ interface TableMeta<TData extends RowData> {
5117
+ isExpandable?: boolean;
5118
+ isLoading?: boolean;
5119
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
5120
+ [key: string]: any;
5121
+ }
5122
+ }
5123
+
5124
+
5067
5125
  declare module '@tanstack/react-table' {
5068
5126
  interface ColumnMeta<TData extends RowData, TValue> {
5069
5127
  addonColumn?: AddonColumnMeta;
@@ -5081,22 +5139,6 @@ declare module '@tanstack/react-table' {
5081
5139
  }
5082
5140
 
5083
5141
 
5084
- declare module '@tanstack/react-table' {
5085
- interface FilterFns {
5086
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
5087
- }
5088
- interface FilterMeta {
5089
- itemRank: RankingInfo;
5090
- }
5091
- interface TableMeta<TData extends RowData> {
5092
- isExpandable?: boolean;
5093
- isLoading?: boolean;
5094
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
5095
- [key: string]: any;
5096
- }
5097
- }
5098
-
5099
-
5100
5142
  declare global {
5101
5143
  interface Window {
5102
5144
  senderId: string;
@@ -5107,6 +5149,7 @@ declare global {
5107
5149
  declare module '@tanstack/react-table' {
5108
5150
  interface ColumnMeta<TData extends RowData, TValue> {
5109
5151
  listTableCustomCell?: boolean;
5152
+ listTableGrow?: boolean;
5110
5153
  editable?: boolean;
5111
5154
  }
5112
5155
  interface TableMeta<TData extends RowData> {
@@ -68,7 +68,7 @@ declare type ListProjectsItemModel = {
68
68
 
69
69
  export declare const parseProjectFolderRowId: (rowId: string) => string | null;
70
70
 
71
- declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport';
71
+ declare type PowerpackFeature = 'slicer' | 'annotations' | 'releases' | 'advancedFilters' | 'listAttributes' | 'listFolders' | 'listAccess' | 'groupAttributes' | 'sharedViews' | 'commentCategories' | 'projectFolders' | 'columnSummaries' | 'listValues' | 'entityLinks' | 'tableExport' | 'personalApiKeys';
72
72
 
73
73
  export declare const PROJECT_FOLDER_ROW_ID_PREFIX = "folder";
74
74
 
@@ -176,6 +176,22 @@ declare type SimpleTableRowContextMenuContext = {
176
176
  export { }
177
177
 
178
178
 
179
+ declare module '@tanstack/react-table' {
180
+ interface FilterFns {
181
+ fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
182
+ }
183
+ interface FilterMeta {
184
+ itemRank: RankingInfo;
185
+ }
186
+ interface TableMeta<TData extends RowData> {
187
+ isExpandable?: boolean;
188
+ isLoading?: boolean;
189
+ children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
190
+ [key: string]: any;
191
+ }
192
+ }
193
+
194
+
179
195
  declare module '@tanstack/react-table' {
180
196
  interface ColumnMeta<TData extends RowData, TValue> {
181
197
  addonColumn?: AddonColumnMeta;
@@ -193,22 +209,6 @@ declare module '@tanstack/react-table' {
193
209
  }
194
210
 
195
211
 
196
- declare module '@tanstack/react-table' {
197
- interface FilterFns {
198
- fuzzy: (row: Row<any>, columnId: string, searchValue: string[][], addMeta: (meta: any) => void) => boolean;
199
- }
200
- interface FilterMeta {
201
- itemRank: RankingInfo;
202
- }
203
- interface TableMeta<TData extends RowData> {
204
- isExpandable?: boolean;
205
- isLoading?: boolean;
206
- children?: (props: SimpleTableCellTemplateProps, row: Row<TData>, table: Table<SimpleTableRow>) => JSX.Element;
207
- [key: string]: any;
208
- }
209
- }
210
-
211
-
212
212
  declare global {
213
213
  interface Window {
214
214
  senderId: string;
@@ -219,6 +219,7 @@ declare global {
219
219
  declare module '@tanstack/react-table' {
220
220
  interface ColumnMeta<TData extends RowData, TValue> {
221
221
  listTableCustomCell?: boolean;
222
+ listTableGrow?: boolean;
222
223
  editable?: boolean;
223
224
  }
224
225
  interface TableMeta<TData extends RowData> {