@pitcher/js-api 1.25.0-beta.2 → 1.25.0-beta.3

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 (153) hide show
  1. package/impact-js-api.spec.json +7 -1
  2. package/js-api.esm.js +21 -4
  3. package/js-api.esm.js.map +1 -1
  4. package/js-api.umd.min.js +10 -10
  5. package/js-api.umd.min.js.map +1 -1
  6. package/lib/apps/browser/App.vue.d.ts +10 -9
  7. package/lib/apps/browser/components/Content/ActionsToolbar/ActionsToolbar.vue.d.ts +195 -132
  8. package/lib/apps/browser/components/Content/AllContent/Table/FoldersFilesTable.vue.d.ts +96 -0
  9. package/lib/apps/browser/components/Content/Panel/DetailsDrawer/DetailsDrawer.vue.d.ts +17 -0
  10. package/lib/apps/browser/components/FileSmartFolders.vue.d.ts +209 -0
  11. package/lib/apps/browser/stores/api.d.ts +6 -0
  12. package/lib/apps/browser/stores/app.d.ts +7 -2
  13. package/lib/apps/browser/stores/upload.d.ts +4 -4
  14. package/lib/apps/browser/stores/upload.types.d.ts +0 -1
  15. package/lib/apps/canvas-builder/App.vue.d.ts +356 -11
  16. package/lib/apps/canvas-builder/components/container/CanvasDrawerTheme/CanvasDrawerTheme.vue.d.ts +5 -1
  17. package/lib/apps/canvas-builder/components/container/ControlBar/AppGrid.vue.d.ts +10 -0
  18. package/lib/apps/canvas-builder/components/container/ControlBar/ControlBar.vue.d.ts +3 -1
  19. package/lib/apps/canvas-builder/components/container/Navigator/Navigator.vue.d.ts +1230 -0
  20. package/lib/apps/canvas-builder/components/container/SectionInfoProvider/SectionInfoProvider.vue.d.ts +22 -0
  21. package/lib/apps/canvas-builder/components/ui/CollectionPlayer/CollectionPlayer.vue.d.ts +3 -0
  22. package/lib/apps/canvas-builder/components/ui/ContentGrid/ContentGridList.vue.d.ts +12 -0
  23. package/lib/apps/canvas-builder/components/ui/ContentGrid/ContentGridListItem.vue.d.ts +12 -0
  24. package/lib/apps/canvas-builder/components/ui/DynamicDataTable/DynamicDataTable.raw.grouped.vue.d.ts +4 -1
  25. package/lib/apps/canvas-builder/components/ui/DynamicDataTable/DynamicDataTable.raw.header.vue.d.ts +9 -1
  26. package/lib/apps/canvas-builder/components/ui/DynamicDataTable/DynamicDataTable.raw.simple.vue.d.ts +3 -1
  27. package/lib/apps/canvas-builder/components/ui/Grid/Grid.vue.d.ts +1 -0
  28. package/lib/apps/canvas-builder/components/ui/Multimedia/Multimedia.edit.vue.d.ts +6 -1
  29. package/lib/apps/canvas-builder/components/ui/Scribble/Scribble.original.vue.d.ts +31 -0
  30. package/lib/apps/canvas-builder/components/ui/Scribble/Scribble.responsive.vue.d.ts +31 -0
  31. package/lib/apps/canvas-builder/components/ui/Scribble/Scribble.vue.d.ts +1 -6
  32. package/lib/apps/canvas-builder/components/ui/SectionList/SectionList.raw.vue.d.ts +1 -0
  33. package/lib/apps/canvas-builder/components/ui/SectionList/SectionList.vue.d.ts +2 -0
  34. package/lib/apps/canvas-builder/components/ui/SectionList/SectionListCollapsibles.vue.d.ts +12 -6
  35. package/lib/apps/canvas-builder/components/ui/Text/Text.vue.d.ts +111 -0
  36. package/lib/apps/canvas-builder/composables/useCanvas.d.ts +206 -31
  37. package/lib/apps/canvas-builder/composables/useCanvasBlocks.d.ts +46 -6
  38. package/lib/apps/canvas-builder/composables/useCanvasHistory.d.ts +44 -6
  39. package/lib/apps/canvas-builder/composables/useCanvasHooks.d.ts +2 -0
  40. package/lib/apps/canvas-builder/composables/useCanvasNodes.d.ts +16 -0
  41. package/lib/apps/canvas-builder/composables/useCanvasPages.d.ts +2 -1
  42. package/lib/apps/canvas-builder/composables/useCanvasTheme.d.ts +120 -3
  43. package/lib/apps/canvas-builder/composables/useCanvasThemeAssets.d.ts +23 -0
  44. package/lib/apps/canvas-builder/composables/useContentSelector.d.ts +4 -1
  45. package/lib/apps/canvas-builder/composables/useCrmShape.d.ts +1 -0
  46. package/lib/apps/canvas-builder/composables/useDataTablePrint.d.ts +5 -0
  47. package/lib/apps/canvas-builder/composables/useInstalledEmbeddables.d.ts +1 -1
  48. package/lib/apps/canvas-builder/composables/useSectionNavigation.d.ts +3 -2
  49. package/lib/apps/canvas-builder/types/canvas.d.ts +45 -11
  50. package/lib/apps/canvas-builder/util/canvas.util.d.ts +1 -0
  51. package/lib/apps/canvas-builder/util/print.util.d.ts +1 -1
  52. package/lib/apps/canvas-builder/util/tiptap-table.util.d.ts +20 -0
  53. package/lib/apps/collection-player/App.vue.d.ts +1 -0
  54. package/lib/apps/collection-player/components/AppFooter.vue.d.ts +56 -1
  55. package/lib/apps/collection-player/components/ImageWithAnnotations.vue.d.ts +15 -0
  56. package/lib/apps/collection-player/components/MainImage.vue.d.ts +3 -1
  57. package/lib/apps/collection-player/composables/annotation-layer.use.d.ts +13 -0
  58. package/lib/apps/collection-player/composables/laser-pointer-marker.use.d.ts +166 -0
  59. package/lib/apps/collection-player/composables/markerjs.use.d.ts +8 -0
  60. package/lib/apps/collection-player/composables/new-zoom.use.d.ts +12 -0
  61. package/lib/apps/collection-player/stores/app.store.d.ts +4 -1
  62. package/lib/apps/collection-selector/App.vue.d.ts +33 -0
  63. package/lib/apps/content-selector/appTypes.d.ts +1 -0
  64. package/lib/apps/content-selector/components/Content/AllContent/List/FoldersFilesList.vue.d.ts +195 -132
  65. package/lib/apps/content-selector/components/MultimediaSelectorApp.vue.d.ts +12 -0
  66. package/lib/apps/content-selector/components/ThemeImages.vue.d.ts +2 -0
  67. package/lib/apps/content-selector/components/ui/GridItem.vue.d.ts +4 -0
  68. package/lib/apps/content-selector/composables/useMultimediaSelectorApps.d.ts +21 -0
  69. package/lib/apps/content-selector/composables/useStore.d.ts +4 -0
  70. package/lib/apps/content-selector/stores/api.d.ts +19 -228
  71. package/lib/apps/content-selector/stores/app.d.ts +45 -66
  72. package/lib/canvas-comments/components/CommentButton.vue.d.ts +6 -0
  73. package/lib/canvas-comments/components/CommentableComponent.vue.d.ts +21 -0
  74. package/lib/canvas-comments/components/SimpleComments.vue.d.ts +14 -0
  75. package/lib/components/CApexChart/CApexChartLine.vue.d.ts +1 -1
  76. package/lib/components/CButton/CButton.vue.d.ts +3 -3
  77. package/lib/components/CCreateThemeModal/steps/CThemeAssetsStep.vue.d.ts +19 -0
  78. package/lib/components/CFileThumbnail/CFileThumbnail.vue.d.ts +1 -1
  79. package/lib/components/CFileViewer/CFileViewer.types.d.ts +8 -0
  80. package/lib/components/CFileViewer/CFileViewer.vue.d.ts +10 -0
  81. package/lib/components/CFileViewer/CFileViewerTop.vue.d.ts +3 -0
  82. package/lib/components/CFileViewer/pdf/CFileViewerBottom.pdf.vue.d.ts +3 -0
  83. package/lib/components/CFileViewer/pdf/CFileViewerCopyPagesMetadata.pdf.vue.d.ts +69 -0
  84. package/lib/components/CInfoBadge/CInfoBadge.vue.d.ts +2 -0
  85. package/lib/components/CInput/CInput.vue.d.ts +3 -3
  86. package/lib/components/CList/CList.vue.d.ts +1 -1
  87. package/lib/components/CRichTextEditor/CRichTextEditor.vue.d.ts +4 -4
  88. package/lib/components/CSearchFilters/CSearchFilters.vue.d.ts +90 -1
  89. package/lib/components/CTable/CTable.vue.d.ts +7 -1
  90. package/lib/components/CTableTag/CTableTag.vue.d.ts +4687 -0
  91. package/lib/components/CTags/CTags.vue.d.ts +3 -3
  92. package/lib/components/CThemePreview/CThemePreview.vue.d.ts +1 -1
  93. package/lib/components/CThumbnail/CThumbnail.vue.d.ts +43 -0
  94. package/lib/components/CUserMenu/CUserMenu.vue.d.ts +7 -9
  95. package/lib/components/canvas-blocks/CBlockManagement.vue.d.ts +14 -2
  96. package/lib/components/canvas-templates/CTemplateManagement.vue.d.ts +590 -266
  97. package/lib/components/canvas-templates/CTemplateManagementToolbar.vue.d.ts +195 -132
  98. package/lib/components/filters/CSearchFilter.vue.d.ts +2 -0
  99. package/lib/components/savedCanvases/CCanvasAccountModal.vue.d.ts +23 -0
  100. package/lib/components/savedCanvases/CSavedCanvasesManagement.vue.d.ts +36 -5
  101. package/lib/components/savedCanvases/CSavedCanvasesManagementActionsCell.vue.d.ts +20 -2
  102. package/lib/components/savedCanvases/smartFolders/SmartFolders.use.d.ts +4 -0
  103. package/lib/components/savedCanvases/smartFolders/SmartFolders.vue.d.ts +7 -1
  104. package/lib/components/sections/CSectionManagement.vue.d.ts +14 -2
  105. package/lib/components/themes/CThemeManagement.vue.d.ts +14 -2
  106. package/lib/composables/useCanvasLocks.d.ts +3 -4
  107. package/lib/composables/useCommentTracking.d.ts +25 -0
  108. package/lib/composables/useCommentsStorage.d.ts +70 -0
  109. package/lib/composables/useFileDisplayHelpers.d.ts +2 -0
  110. package/lib/composables/useInstalledApps.d.ts +1 -0
  111. package/lib/composables/useMetadataFilters.d.ts +2 -2
  112. package/lib/composables/useMetadataSearch.d.ts +2 -1
  113. package/lib/composables/useSharedCommentsStorage.d.ts +32 -0
  114. package/lib/constants/cdp.const.d.ts +6 -0
  115. package/lib/constants/roles.const.d.ts +16 -0
  116. package/lib/main.lib.d.ts +5 -0
  117. package/lib/sdk/api/HighLevelApi.d.ts +1 -0
  118. package/lib/sdk/api/modules/admin/index.d.ts +1 -0
  119. package/lib/sdk/api/modules/admin/types.admin.d.ts +1 -0
  120. package/lib/sdk/api/modules/admin/users.admin.d.ts +14 -0
  121. package/lib/sdk/api/modules/query.d.ts +2 -1
  122. package/lib/sdk/api/modules/ui/types.ui.d.ts +4 -0
  123. package/lib/sdk/interfaces.d.ts +1 -0
  124. package/lib/sdk/main.d.ts +5 -0
  125. package/lib/sdk/payload.types.d.ts +14 -0
  126. package/lib/types/app.d.ts +12 -1
  127. package/lib/types/call.d.ts +0 -1
  128. package/lib/types/canvasTheme.d.ts +12 -0
  129. package/lib/types/core/MetadataFilter.d.ts +1 -0
  130. package/lib/types/i18n.types.d.ts +1 -1
  131. package/lib/types/instanceSettings.types.d.ts +2 -0
  132. package/lib/types/launchDarkly.types.d.ts +1 -1
  133. package/lib/types/organizationSettings.types.d.ts +19 -0
  134. package/lib/util/image.d.ts +4 -0
  135. package/lib/util/style.util.d.ts +1 -0
  136. package/lib/util/userAgents.d.ts +1 -0
  137. package/package.json +1 -1
  138. package/types/openapi/models/App.d.ts +1 -0
  139. package/types/openapi/models/CanvasCreate.d.ts +1 -0
  140. package/types/openapi/models/CanvasRecommendedFile.d.ts +2 -0
  141. package/types/openapi/models/CanvasRetrieve.d.ts +1 -0
  142. package/types/openapi/models/CanvasUpdate.d.ts +1 -0
  143. package/types/openapi/models/CanvasUpdateRequest.d.ts +1 -0
  144. package/types/openapi/models/DeletedFile.d.ts +2 -0
  145. package/types/openapi/models/File.d.ts +2 -0
  146. package/types/openapi/models/FileCreate.d.ts +2 -0
  147. package/types/openapi/models/FileCreateRequest.d.ts +1 -0
  148. package/types/openapi/models/FileRetrieve.d.ts +2 -0
  149. package/types/openapi/models/FileUpdate.d.ts +2 -0
  150. package/types/openapi/models/FileUpdateRequest.d.ts +1 -0
  151. package/types/openapi/models/InstanceMembershipUser.d.ts +2 -0
  152. package/types/openapi/models/PatchedCanvasUpdateRequest.d.ts +1 -0
  153. package/types/openapi/models/PatchedFileUpdateRequest.d.ts +1 -0
@@ -130,6 +130,8 @@ declare function __VLS_template(): {
130
130
  selectedRowsCount: ComputedRef<number>;
131
131
  pageRowsCount: ComputedRef<number>;
132
132
  isRowDisabled: (id: string | number) => boolean;
133
+ saveScrollPosition: () => void;
134
+ restoreScrollPosition: () => void;
133
135
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
134
136
  sortChanged: (s: SortingState) => any;
135
137
  pageChanged: (p: PaginationState) => any;
@@ -152,7 +154,9 @@ declare function __VLS_template(): {
152
154
  hideTotalResults: boolean;
153
155
  serverSide: boolean;
154
156
  disabledIds: Array<string | number>;
155
- }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
157
+ }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
158
+ tableScroller: HTMLDivElement;
159
+ }, HTMLDivElement, import('vue').ComponentProvideOptions, {
156
160
  P: {};
157
161
  B: {};
158
162
  D: {};
@@ -195,6 +199,8 @@ declare function __VLS_template(): {
195
199
  selectedRowsCount: ComputedRef<number>;
196
200
  pageRowsCount: ComputedRef<number>;
197
201
  isRowDisabled: (id: string | number) => boolean;
202
+ saveScrollPosition: () => void;
203
+ restoreScrollPosition: () => void;
198
204
  }, {}, {}, {}, {
199
205
  data: {
200
206
  [x: string]: any;
@@ -329,6 +335,8 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
329
335
  selectedRowsCount: ComputedRef<number>;
330
336
  pageRowsCount: ComputedRef<number>;
331
337
  isRowDisabled: (id: string | number) => boolean;
338
+ saveScrollPosition: () => void;
339
+ restoreScrollPosition: () => void;
332
340
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
333
341
  sortChanged: (s: SortingState) => any;
334
342
  pageChanged: (p: PaginationState) => any;
@@ -351,7 +359,9 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
351
359
  hideTotalResults: boolean;
352
360
  serverSide: boolean;
353
361
  disabledIds: Array<string | number>;
354
- }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
362
+ }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
363
+ tableScroller: HTMLDivElement;
364
+ }, HTMLDivElement, import('vue').ComponentProvideOptions, {
355
365
  P: {};
356
366
  B: {};
357
367
  D: {};
@@ -394,6 +404,8 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
394
404
  selectedRowsCount: ComputedRef<number>;
395
405
  pageRowsCount: ComputedRef<number>;
396
406
  isRowDisabled: (id: string | number) => boolean;
407
+ saveScrollPosition: () => void;
408
+ restoreScrollPosition: () => void;
397
409
  }, {}, {}, {}, {
398
410
  data: {
399
411
  [x: string]: any;
@@ -95,6 +95,8 @@ declare function __VLS_template(): {
95
95
  selectedRowsCount: ComputedRef<number>;
96
96
  pageRowsCount: ComputedRef<number>;
97
97
  isRowDisabled: (id: string | number) => boolean;
98
+ saveScrollPosition: () => void;
99
+ restoreScrollPosition: () => void;
98
100
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
99
101
  sortChanged: (s: SortingState) => any;
100
102
  pageChanged: (p: PaginationState) => any;
@@ -117,7 +119,9 @@ declare function __VLS_template(): {
117
119
  hideTotalResults: boolean;
118
120
  serverSide: boolean;
119
121
  disabledIds: Array<string | number>;
120
- }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
122
+ }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
123
+ tableScroller: HTMLDivElement;
124
+ }, HTMLDivElement, import('vue').ComponentProvideOptions, {
121
125
  P: {};
122
126
  B: {};
123
127
  D: {};
@@ -160,6 +164,8 @@ declare function __VLS_template(): {
160
164
  selectedRowsCount: ComputedRef<number>;
161
165
  pageRowsCount: ComputedRef<number>;
162
166
  isRowDisabled: (id: string | number) => boolean;
167
+ saveScrollPosition: () => void;
168
+ restoreScrollPosition: () => void;
163
169
  }, {}, {}, {}, {
164
170
  data: {
165
171
  [x: string]: any;
@@ -261,6 +267,8 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
261
267
  selectedRowsCount: ComputedRef<number>;
262
268
  pageRowsCount: ComputedRef<number>;
263
269
  isRowDisabled: (id: string | number) => boolean;
270
+ saveScrollPosition: () => void;
271
+ restoreScrollPosition: () => void;
264
272
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
265
273
  sortChanged: (s: SortingState) => any;
266
274
  pageChanged: (p: PaginationState) => any;
@@ -283,7 +291,9 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
283
291
  hideTotalResults: boolean;
284
292
  serverSide: boolean;
285
293
  disabledIds: Array<string | number>;
286
- }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
294
+ }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
295
+ tableScroller: HTMLDivElement;
296
+ }, HTMLDivElement, import('vue').ComponentProvideOptions, {
287
297
  P: {};
288
298
  B: {};
289
299
  D: {};
@@ -326,6 +336,8 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
326
336
  selectedRowsCount: ComputedRef<number>;
327
337
  pageRowsCount: ComputedRef<number>;
328
338
  isRowDisabled: (id: string | number) => boolean;
339
+ saveScrollPosition: () => void;
340
+ restoreScrollPosition: () => void;
329
341
  }, {}, {}, {}, {
330
342
  data: {
331
343
  [x: string]: any;
@@ -12,10 +12,7 @@ export interface CanvasLock {
12
12
  locked_by: LockedBy;
13
13
  expires_at: string | null;
14
14
  }
15
- export default function useCanvasLocks(options?: {
16
- instanceId?: string;
17
- pollingInterval?: number;
18
- }): {
15
+ export default function useCanvasLocks(): {
19
16
  locks: import('vue').Ref<{
20
17
  id: string;
21
18
  canvas_id: string;
@@ -47,8 +44,10 @@ export default function useCanvasLocks(options?: {
47
44
  isCanvasLocked: (canvasId: string) => boolean;
48
45
  getCanvasLock: (canvasId: string) => CanvasLock;
49
46
  isLockedByCurrentUser: (canvasId: string) => boolean;
47
+ getCanvasLockTooltip: (canvasId: string) => string;
50
48
  fetchLocks: () => Promise<void>;
51
49
  lockCanvas: (canvasId: string) => Promise<CanvasLock>;
52
50
  unlockCanvas: (lockId: string) => Promise<boolean>;
51
+ isLockedBySomeoneElse: (canvasId: string) => boolean;
53
52
  };
54
53
  export {};
@@ -0,0 +1,25 @@
1
+ interface CommentTrackingPayload {
2
+ canvasId?: string;
3
+ componentId?: string;
4
+ threadId: string;
5
+ commentId?: string;
6
+ action: string;
7
+ content?: string;
8
+ authorId?: string | number;
9
+ authorName?: string;
10
+ authorEmail?: string;
11
+ assigneeId?: string | number;
12
+ assigneeName?: string;
13
+ assigneeEmail?: string;
14
+ resolved?: boolean;
15
+ deleted?: boolean;
16
+ timestamp?: string;
17
+ }
18
+ export declare function useCommentTracking(): {
19
+ trackCommentAdded: (payload: Omit<CommentTrackingPayload, "action">) => Promise<void>;
20
+ trackCommentReplied: (payload: Omit<CommentTrackingPayload, "action">) => Promise<void>;
21
+ trackCommentAssigned: (payload: Omit<CommentTrackingPayload, "action">) => Promise<void>;
22
+ trackCommentResolved: (payload: Omit<CommentTrackingPayload, "action">) => Promise<void>;
23
+ trackCommentDeleted: (payload: Omit<CommentTrackingPayload, "action">) => Promise<void>;
24
+ };
25
+ export {};
@@ -0,0 +1,70 @@
1
+ import { Ref } from 'vue';
2
+ interface Comment {
3
+ id: string;
4
+ content: string;
5
+ author?: string;
6
+ authorId?: string | number;
7
+ authorEmail?: string;
8
+ createdAt: string;
9
+ }
10
+ interface Thread {
11
+ id: string;
12
+ content: string;
13
+ author: string;
14
+ authorId?: string | number;
15
+ authorEmail?: string;
16
+ createdAt: string;
17
+ resolved: boolean;
18
+ canvasId?: string;
19
+ componentId?: string;
20
+ assignee?: any;
21
+ comments: Comment[];
22
+ }
23
+ export declare function useCommentsStorage(canvasId: Ref<string | undefined>): {
24
+ threads: Ref<{
25
+ id: string;
26
+ content: string;
27
+ author: string;
28
+ authorId?: string | number | undefined;
29
+ authorEmail?: string | undefined;
30
+ createdAt: string;
31
+ resolved: boolean;
32
+ canvasId?: string | undefined;
33
+ componentId?: string | undefined;
34
+ assignee?: any;
35
+ comments: {
36
+ id: string;
37
+ content: string;
38
+ author?: string | undefined;
39
+ authorId?: string | number | undefined;
40
+ authorEmail?: string | undefined;
41
+ createdAt: string;
42
+ }[];
43
+ }[], Thread[] | {
44
+ id: string;
45
+ content: string;
46
+ author: string;
47
+ authorId?: string | number | undefined;
48
+ authorEmail?: string | undefined;
49
+ createdAt: string;
50
+ resolved: boolean;
51
+ canvasId?: string | undefined;
52
+ componentId?: string | undefined;
53
+ assignee?: any;
54
+ comments: {
55
+ id: string;
56
+ content: string;
57
+ author?: string | undefined;
58
+ authorId?: string | number | undefined;
59
+ authorEmail?: string | undefined;
60
+ createdAt: string;
61
+ }[];
62
+ }[]>;
63
+ isLoading: Ref<boolean, boolean>;
64
+ isSaving: Ref<boolean, boolean>;
65
+ lastSaved: Ref<Date | null, Date | null>;
66
+ saveComments: () => Promise<void>;
67
+ loadComments: () => Promise<void>;
68
+ deleteComments: () => Promise<void>;
69
+ };
70
+ export {};
@@ -10,4 +10,6 @@ export default function useFileDisplayHelpers(): {
10
10
  renderContentType: (contentType: FileContentTypeEnum) => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
11
11
  [key: string]: any;
12
12
  }>;
13
+ isFileExpired: (expiresAt: string) => boolean | "";
14
+ isFileExpiring: (expiresAt: string) => string | null;
13
15
  };
@@ -1,2 +1,3 @@
1
1
  import { AppFile } from '../types/app';
2
2
  export declare const loadCanvasAndDsrApps: () => Promise<AppFile[]>;
3
+ export declare const loadCrmShapeFromApps: () => Promise<Record<string, any>>;
@@ -1,11 +1,11 @@
1
1
  import { MetadataTemplateField, MetadataTemplateOption } from '../../types/openapi';
2
2
  export declare function getComponentNameByFilterType(type: string): "CSearchFilter" | "CSelectFilter" | "CDateRangeFilter";
3
3
  export default function useMetadataFilters(t: (input: string) => string): {
4
- getBooleanOptions: () => {
4
+ getBooleanOptions: (availableValues?: Array<string | boolean | number>) => {
5
5
  label: string;
6
6
  value: string;
7
7
  }[];
8
8
  getComponentNameByFilterType: typeof getComponentNameByFilterType;
9
9
  getDefaultDateOptions: () => MetadataTemplateOption[];
10
- getFilterOptions: (type: MetadataTemplateField["type"], options: MetadataTemplateField["options"]) => MetadataTemplateOption[];
10
+ getFilterOptions: (type: MetadataTemplateField["type"], options: MetadataTemplateField["options"], availableValues?: Array<string | boolean | number>) => MetadataTemplateOption[];
11
11
  };
@@ -4,7 +4,7 @@ interface UseMetadataSearchOptions {
4
4
  includeSearchTermAsOption?: boolean;
5
5
  }
6
6
  export default function useMetadataSearch(options?: UseMetadataSearchOptions): {
7
- handleFetch: (searchTerm: string, entity: MetadataFilterRequest["entity"], { includeNameSearch, includeDraftValues, isSection, isTemplate, isBlock, key, ownerId, searchMode, threshold, }?: {
7
+ handleFetch: (searchTerm: string, entity: MetadataFilterRequest["entity"], { includeNameSearch, includeDraftValues, isSection, isTemplate, isBlock, key, ownerId, searchMode, threshold, fetchAllUnique, }?: {
8
8
  includeNameSearch?: boolean;
9
9
  includeDraftValues?: boolean;
10
10
  isSection?: boolean;
@@ -14,6 +14,7 @@ export default function useMetadataSearch(options?: UseMetadataSearchOptions): {
14
14
  ownerId?: number | null;
15
15
  searchMode?: MetadataSearchParams["searchMode"];
16
16
  threshold?: number;
17
+ fetchAllUnique?: boolean;
17
18
  }) => Promise<StyledAutoCompleteOption[]>;
18
19
  };
19
20
  export {};
@@ -0,0 +1,32 @@
1
+ import { Ref } from 'vue';
2
+ interface Comment {
3
+ id: string;
4
+ content: string;
5
+ author?: string;
6
+ authorId?: string | number;
7
+ authorEmail?: string;
8
+ createdAt: string;
9
+ }
10
+ interface Thread {
11
+ id: string;
12
+ content: string;
13
+ author: string;
14
+ authorId?: string | number;
15
+ authorEmail?: string;
16
+ createdAt: string;
17
+ resolved: boolean;
18
+ canvasId?: string;
19
+ componentId?: string;
20
+ assignee?: any;
21
+ comments: Comment[];
22
+ }
23
+ export declare function useSharedCommentsStorage(canvasId: Ref<string | undefined>): {
24
+ threads: import('vue').ComputedRef<Thread[]>;
25
+ isLoading: import('vue').ComputedRef<boolean>;
26
+ isSaving: import('vue').ComputedRef<boolean>;
27
+ lastSaved: import('vue').ComputedRef<Date | null>;
28
+ saveComments: () => Promise<void>;
29
+ loadComments: (silent?: boolean) => Promise<void>;
30
+ deleteComments: () => Promise<void>;
31
+ };
32
+ export {};
@@ -23,11 +23,17 @@ export declare const CDP_EVENT_TYPE: {
23
23
  readonly userFileReviewed: "User File Reviewed";
24
24
  readonly hotspotClicked: "Hotspot Clicked";
25
25
  readonly collectionPlayerContentChanged: "Collection Player Content Changed";
26
+ readonly commentAdded: "Comment Added";
27
+ readonly commentReplied: "Comment Replied";
28
+ readonly commentAssigned: "Comment Assigned";
29
+ readonly commentResolved: "Comment Resolved";
30
+ readonly commentDeleted: "Comment Deleted";
26
31
  };
27
32
  export declare const CLIENT_TYPE: {
28
33
  readonly admin: "admin";
29
34
  readonly impact: "impact";
30
35
  readonly dsr: "dsr";
36
+ readonly impactCanvasHome: "impact-canvas-home";
31
37
  };
32
38
  export declare const DSR_TYPE: {
33
39
  readonly file: "file";
@@ -0,0 +1,16 @@
1
+ export declare const NON_MEMBER_ROLES: readonly ["Org Admin", "Admin", "Editor", "Dev"];
2
+ export declare const isNonMemberRole: (role: string | null | undefined) => boolean;
3
+ export interface RolePermissions {
4
+ isOrgAdmin: boolean;
5
+ isCurrentInstanceAdmin: boolean;
6
+ isCurrentInstanceEditor: boolean;
7
+ isOrgDeveloper: boolean;
8
+ }
9
+ /**
10
+ * Determine user role based on permissions
11
+ */
12
+ export declare const determineUserRole: (permissions: RolePermissions) => string;
13
+ /**
14
+ * Get the icon class for a given role
15
+ */
16
+ export declare const getRoleIcon: (role: string | null | undefined) => string;
package/lib/main.lib.d.ts CHANGED
@@ -100,6 +100,7 @@ export { default as CSettingsEditor } from './components/CSettingsEditor/CSettin
100
100
  export { default as CFilePanel } from './components/CFilePanel/CFilePanel.vue';
101
101
  export { default as CWarningAlert } from './components/CWarningAlert/CWarningAlert.vue';
102
102
  export { default as CUpsertFolderModal } from './components/CUpsertFolderModal/CUpsertFolderModal.vue';
103
+ export { default as CInfoBadge } from './components/CInfoBadge/CInfoBadge.vue';
103
104
  export { default as CanvasBuilderApp } from './apps/canvas-builder/App.vue';
104
105
  export { default as CollectionSelectorApp } from './apps/collection-selector/App.vue';
105
106
  export { default as CollectionPlayerApp } from './apps/collection-player/App.vue';
@@ -139,6 +140,8 @@ export { default as useMetadataTemplates } from './composables/useMetadataTempla
139
140
  export { default as useMetadataSearch } from './composables/useMetadataSearch';
140
141
  export * from './composables/appsDb.use';
141
142
  export { default as useCanvasLocks } from './composables/useCanvasLocks';
143
+ export { useCommentTracking } from './composables/useCommentTracking';
144
+ export { useSharedCommentsStorage } from './composables/useSharedCommentsStorage';
142
145
  export * from './plugins/vueQuery';
143
146
  export * from './apps/canvas-builder/util/canvas.util';
144
147
  export * from './apps/canvas-builder/util/tree';
@@ -221,6 +224,8 @@ export * from './constants/config.const';
221
224
  export * from './constants/pitcherSettings.const';
222
225
  export * from './constants/appsDb.const';
223
226
  export * from './apps/canvas-builder/constants/theme.const';
227
+ export * from './constants/roles.const';
228
+ export type { RolePermissions } from './constants/roles.const';
224
229
  export * from './api/events/events.queries';
225
230
  export * from './api/users/users.queries';
226
231
  export * from './api/canvases/canvases.queries';
@@ -210,6 +210,7 @@ export declare function createHighLevelApi(options?: ApiOptions): {
210
210
  message: string;
211
211
  }): Promise<void>;
212
212
  query(payload: import('../payload.types').QueryPayload): Promise<any>;
213
+ crmQuery(payload: import('../payload.types').CRMQueryPayload): Promise<any>;
213
214
  getFolders(payload: import('../payload.types').FolderListRequest): Promise<import('../../main.lib').PaginatedFolderList>;
214
215
  getFolder(payload?: {
215
216
  id: import('../../main.lib').FolderRetrieve["id"];
@@ -15,6 +15,7 @@ declare function on(type: (typeof ADMIN_MESSAGE_TYPES)[keyof typeof ADMIN_MESSAG
15
15
  */
16
16
  declare function toast(payload: AdminToastRequest): Promise<void>;
17
17
  declare const _default: {
18
+ getUsers(payload?: import('../../../../main.lib').GetUsersParams): Promise<import('../../../../main.lib').PaginatedData<import('../../../../main.lib').User>>;
18
19
  getAppConfig(payload: {
19
20
  app_name: string;
20
21
  }): Promise<Record<string, any>>;
@@ -29,6 +29,7 @@ export declare const ADMIN_API_METHOD_TYPES: {
29
29
  readonly CLOSE: "admin_close_file_overlay";
30
30
  readonly GET_FILES: "admin_get_files";
31
31
  readonly GET_INSTANCE_METADATA_TEMPLATES: "admin_get_instance_metadata_templates";
32
+ readonly GET_USERS: "admin_get_users";
32
33
  readonly TOAST: "admin_toast";
33
34
  readonly UPDATE_CANVAS: "admin_update_canvas";
34
35
  readonly SELECT_COLLECTION_PLAYER_CONTENT: "admin_select_collection_player_content";
@@ -0,0 +1,14 @@
1
+ import { GetUsersParams } from '../../../../types/users';
2
+ import { PaginatedData } from '../../../../types/paginatedData';
3
+ import { User } from '../../../../../types/openapi';
4
+ /**
5
+ * Fetches a list of users from the admin API.
6
+ *
7
+ * @param payload - Optional parameters for filtering users
8
+ * @returns Promise resolving to a paginated list of users
9
+ *
10
+ * @example
11
+ * const adminApi = useAdmin()
12
+ * const users = await adminApi.getUsers({ page_size: 100 })
13
+ */
14
+ export declare function getUsers(payload?: GetUsersParams): Promise<PaginatedData<User>>;
@@ -1,2 +1,3 @@
1
- import { QueryPayload } from '../../payload.types';
1
+ import { QueryPayload, CRMQueryPayload } from '../../payload.types';
2
2
  export declare function query(payload: QueryPayload): Promise<any>;
3
+ export declare function crmQuery(payload: CRMQueryPayload): Promise<any>;
@@ -242,6 +242,10 @@ export type UiAppSetDataPayload = {
242
242
  height: string | undefined;
243
243
  /** Display mode */
244
244
  display_mode: string | undefined;
245
+ /** Section index in section list */
246
+ section_index: number | null;
247
+ /** Section list ID */
248
+ section_list_id: string | null;
245
249
  };
246
250
  export type UiAppUpdateDataPayload = {
247
251
  /** Call status */
@@ -66,6 +66,7 @@ export interface PitcherEnv {
66
66
  id: File['id'];
67
67
  };
68
68
  };
69
+ device_locale?: string;
69
70
  }
70
71
  export interface PitcherAPI extends Emitter<ApiEventMap> {
71
72
  request(type: string, body: any, callback: () => any): Promise<PitcherResponse>;
package/lib/sdk/main.d.ts CHANGED
@@ -85,6 +85,7 @@ export declare function useUi(): {
85
85
  * ```
86
86
  */
87
87
  export declare function useAdmin(): {
88
+ getUsers(payload?: import('../main.lib').GetUsersParams): Promise<import('../main.lib').PaginatedData<import('../main.lib').User>>;
88
89
  getAppConfig(payload: {
89
90
  app_name: string;
90
91
  }): Promise<Record<string, any>>;
@@ -287,6 +288,7 @@ export declare function useApi(options?: ApiOptions): {
287
288
  message: string;
288
289
  }): Promise<void>;
289
290
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
291
+ crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
290
292
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
291
293
  getFolder(payload?: {
292
294
  id: import('../main.lib').FolderRetrieve["id"];
@@ -337,6 +339,7 @@ export declare function useApi(options?: ApiOptions): {
337
339
  }>;
338
340
  API: import('./api/LowLevelApi').LowLevelApi;
339
341
  } | {
342
+ getUsers(payload?: import('../main.lib').GetUsersParams): Promise<import('../main.lib').PaginatedData<import('../main.lib').User>>;
340
343
  getAppConfig(payload: {
341
344
  app_name: string;
342
345
  }): Promise<Record<string, any>>;
@@ -558,6 +561,7 @@ export declare function useApi(options?: ApiOptions): {
558
561
  message: string;
559
562
  }): Promise<void>;
560
563
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
564
+ crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
561
565
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
562
566
  getFolder(payload?: {
563
567
  id: import('../main.lib').FolderRetrieve["id"];
@@ -759,6 +763,7 @@ export declare function useApi(options?: ApiOptions): {
759
763
  };
760
764
  }): Promise<ArrayBuffer>;
761
765
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
766
+ crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
762
767
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
763
768
  getFolder(payload?: {
764
769
  id: import('../main.lib').FolderRetrieve["id"];
@@ -84,6 +84,20 @@ export interface QueryPayload {
84
84
  */
85
85
  args?: string[][];
86
86
  }
87
+ export type CRMServiceType = 'salesforce' | 'dynamics' | 'sap';
88
+ /**
89
+ * Payload for executing a query against CRM.
90
+ */
91
+ export interface CRMQueryPayload {
92
+ /**
93
+ * The query string to execute.
94
+ */
95
+ query: string;
96
+ /**
97
+ * Optional name of the service to be queried.
98
+ */
99
+ service?: CRMServiceType;
100
+ }
87
101
  /**
88
102
  * Payload for submitting user feedback.
89
103
  */
@@ -48,17 +48,27 @@ export type Module = {
48
48
  };
49
49
  shortcuts: EmbeddedAppShortcutsDict;
50
50
  } & EmbeddedLocationProperties;
51
+ type AppJsonOptions = {
52
+ dimensions?: {
53
+ width?: number | string;
54
+ height?: number | string;
55
+ };
56
+ placement?: 'top-left' | 'top-center' | 'top-right' | 'left' | 'center' | 'right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
57
+ };
51
58
  export type AppJson = {
52
59
  name: string;
53
60
  display_name: string;
54
61
  icon?: string;
55
62
  type?: 'web';
56
- provide?: ('ui' | 'account_browser' | 'scheduler' | 'postcall' | 'crm_shape')[];
63
+ provide?: ('ui' | 'account_browser' | 'scheduler' | 'postcall' | 'crm_shape' | 'multimedia_selector')[];
57
64
  require?: 'crm'[];
58
65
  version: string;
59
66
  description?: string;
60
67
  authors?: string[];
61
68
  module: Record<EmbedLocation, Module>;
69
+ app_type?: 'canvas-popup' | 'section-selector';
70
+ app_options?: AppJsonOptions;
71
+ order_override?: number;
62
72
  };
63
73
  export type AppFile = File & {
64
74
  app_metadata?: AppJson;
@@ -71,3 +81,4 @@ export type PitcherInfo = {
71
81
  platform?: 'impact' | 'admin';
72
82
  isOrgAdmin?: boolean;
73
83
  } | undefined;
84
+ export {};
@@ -9,7 +9,6 @@ export interface EventDate {
9
9
  export declare enum CallState {
10
10
  NO_CALL = "NO_CALL",
11
11
  IN_CALL = "IN_CALL",
12
- PAUSED = "PAUSED",
13
12
  STOPPED = "STOPPED"
14
13
  }
15
14
  export declare enum PostAction {
@@ -14,10 +14,16 @@ export declare enum CanvasThemeStatus {
14
14
  READY = "ready",
15
15
  DRAFT = "draft"
16
16
  }
17
+ export interface CanvasThemeAsset {
18
+ id: string;
19
+ name: string;
20
+ url: string;
21
+ }
17
22
  export interface CanvasThemeSettings {
18
23
  component_spacing: number;
19
24
  background_color: string;
20
25
  palette: string[];
26
+ assets?: CanvasThemeAsset[];
21
27
  }
22
28
  export interface CanvasThemeRetrieve {
23
29
  id: string;
@@ -30,6 +36,8 @@ export interface CanvasThemeRetrieve {
30
36
  owned_by: User;
31
37
  created_by: User;
32
38
  modified_by?: User;
39
+ logo?: CanvasThemeAsset;
40
+ assets?: CanvasThemeAsset[];
33
41
  settings: CanvasThemeSettings;
34
42
  typography: Record<string, CanvasTypographyPreset>;
35
43
  used_in_canvases_count?: number;
@@ -45,4 +53,8 @@ export interface CanvasThemeFormData {
45
53
  palette: string[];
46
54
  };
47
55
  typography: Record<string, CanvasTypographyPreset>;
56
+ assets: {
57
+ logo?: CanvasThemeAsset;
58
+ images: CanvasThemeAsset[];
59
+ };
48
60
  }
@@ -20,6 +20,7 @@ export type MetadataSearchParams = MetadataFilterRequest & {
20
20
  threshold?: number;
21
21
  cursor?: string;
22
22
  page_size?: number;
23
+ fetch_all_unique?: boolean;
23
24
  };
24
25
  interface MetadataResultItem {
25
26
  id: string;
@@ -1 +1 @@
1
- export type SupportedLocale = 'en' | 'de' | 'pl' | 'tr' | 'el';
1
+ export type SupportedLocale = 'en' | 'de' | 'pl' | 'tr' | 'el' | 'fr' | 'es';
@@ -32,9 +32,11 @@ export type InstanceSettings = OrganizationSettings & {
32
32
  autoselect_selected_canvas_account?: boolean;
33
33
  require_account_on_canvas_creation?: boolean;
34
34
  pptx_slide_image_width?: number;
35
+ enable_download_in_presentation_mode?: boolean;
35
36
  completion_wizard?: {
36
37
  enabled?: boolean;
37
38
  };
39
+ correlation_id_cleanup_delay?: number;
38
40
  };
39
41
  enable_recents?: boolean;
40
42
  enable_favorites?: boolean;
@@ -1,4 +1,4 @@
1
- export type LaunchDarklyBooleanFlagKey = 'allow_ai_prompts_in_canvas_text' | 'allow_bulk_actions_canvases_files' | 'allow_canvas_duplication' | 'allow_canvas_history' | 'allow_canvas_ownership_change' | 'allow_canvases_tables_columns_settings' | 'allow_content_grid_autofill' | 'allow_creating_canvas_with_no_template' | 'allow_embeddable_hiding' | 'allow_multimedia_for_scribble_component' | 'allow_note_taking' | 'allow_rep_canvas_metadata_edit' | 'allow_rep_file_rating' | 'allow_rep_file_upload' | 'allow_saving_annotations_in_personal_layer' | 'allow_user_to_edit_font_size_and_color_in_canvas_tokens' | 'are_sections_system_controlled' | 'copy_context_to_canvas' | 'copy_template_metadata_to_canvas' | 'disable_canvas_edit_for_reps' | 'disable_file_edit_content' | 'disable_fullscreen_canvas_builder' | 'disable_impact_web_browser_fullscreen' | 'display_section_list_name' | 'enable_ai_generated_thumbnails' | 'enable_analytics' | 'enable_app_developer_role' | 'enable_background_image_theme_options' | 'enable_bulk_update_file_attributes' | 'enable_canvas_blocks' | 'enable_canvas_node_debugging' | 'enable_canvas_tokens' | 'enable_content_type_change_in_content_selector' | 'enable_create_section_from_section_template' | 'enable_default_crm_shape' | 'enable_dynamic_data_table_component' | 'enable_embedded_video_autoplay' | 'enable_embedded_video' | 'enable_enhanced_indicators' | 'enable_experimental_canvas_builder_dnd' | 'enable_file_pages_metadata' | 'enable_file_revisions' | 'enable_folder_details_edit' | 'enable_handlebar_template_support' | 'enable_height_in_component_theming' | 'enable_insearch_in_section_selector' | 'enable_instance_editor_role' | 'enable_knock_notifications' | 'enable_maintain_section_theme_control' | 'enable_metadata_in_file_uploads_with_default_values' | 'enable_multimedia_component_ai_images' | 'enable_pia_assistant' | 'enable_pipe_character_multi_search' | 'enable_resizable_multimedia_component' | 'enable_saved_canvases_filters' | 'enable_scribble_component' | 'enable_search_and_filters_in_multimedia_component' | 'enable_section_context_in_dsr' | 'enable_section_selector_drag_n_drop' | 'enable_smart_folders' | 'enable_smart_folders_in_files' | 'enable_suggested_tags' | 'enable_template_folders' | 'enable_theme_options_border_radius' | 'enable_themes' | 'hide_asset_uploader' | 'include_files_content_in_print' | 'interpolate_rep_canvases_on_edit_mode' | 'is_fe_sentry_enabled' | 'is_meeting_bar_account_selection_disabled' | 'is_meeting_bar_hidden' | 'is_rep_canvas_creation_disabled' | 'is_shared_link_creation_disabled' | 'is_timeline_component_allowed' | 'launch_in_full_screen_on_present_mode' | 'launch_in_present_mode_on_creation' | 'prefer_online_handlers' | 'reorder_component_in_drawer' | 'show_asset_manager_for_multimedia' | 'show_clear_all_annotations_button' | 'show_content_selector_list_view' | 'show_metadata_filters_in_all_canvas_things' | 'show_popularity_icons' | 'show_system_filters' | 'use_core_endpoint_for_analytics' | 'use_short_url_for_shared_link' | 'use_zoho_instead_of_ms_wopi';
1
+ export type LaunchDarklyBooleanFlagKey = 'allow_ai_prompts_in_canvas_text' | 'allow_bulk_actions_canvases_files' | 'allow_canvas_duplication' | 'allow_canvas_history' | 'allow_canvas_ownership_change' | 'allow_canvases_tables_columns_settings' | 'allow_content_grid_autofill' | 'allow_creating_canvas_with_no_template' | 'allow_embeddable_hiding' | 'allow_multimedia_for_scribble_component' | 'allow_note_taking' | 'allow_rep_canvas_metadata_edit' | 'allow_rep_file_rating' | 'allow_rep_file_upload' | 'allow_saving_annotations_in_personal_layer' | 'allow_user_to_edit_font_size_and_color_in_canvas_tokens' | 'are_sections_system_controlled' | 'enable_canvas_core_distributions' | 'enable_file_core_distributions' | 'copy_context_to_canvas' | 'copy_template_metadata_to_canvas' | 'disable_canvas_edit_for_reps' | 'disable_custom_tooltips' | 'disable_file_edit_content' | 'disable_fullscreen_canvas_builder' | 'disable_impact_web_browser_fullscreen' | 'display_section_list_name' | 'enable_ai_generated_thumbnails' | 'enable_analytics' | 'enable_app_developer_role' | 'enable_background_image_theme_options' | 'enable_bulk_update_file_attributes' | 'enable_canvas_as_home' | 'enable_canvas_blocks' | 'enable_canvas_node_debugging' | 'enable_canvas_template_edit_in_impact' | 'enable_canvas_tokens' | 'enable_client_only_canvas_context' | 'enable_collaborations' | 'enable_content_type_change_in_content_selector' | 'enable_create_section_from_section_template' | 'enable_custom_display_overrides' | 'enable_default_crm_shape' | 'enable_dynamic_data_table_component' | 'enable_embedded_video_autoplay' | 'enable_embedded_video' | 'enable_enhanced_indicators' | 'enable_experimental_canvas_builder_dnd' | 'enable_file_pages_metadata' | 'enable_file_revisions' | 'enable_folder_details_edit' | 'enable_handlebar_template_support' | 'enable_height_in_component_theming' | 'enable_insearch_in_section_selector' | 'enable_instance_editor_role' | 'enable_knock_notifications' | 'enable_maintain_section_theme_control' | 'enable_metadata_in_file_uploads_with_default_values' | 'enable_multimedia_component_ai_images' | 'enable_sorting_in_tiptap_table' | 'enable_theme_assets' | 'enable_toc_enhancements_to_support_same_section_in_section_list' | 'enable_pia_assistant' | 'enable_pipe_character_multi_search' | 'enable_popup_apps' | 'enable_pptx_download' | 'enable_print_mode_experiments' | 'enable_resizable_multimedia_component' | 'enable_responsive_scribble_component' | 'enable_saved_canvases_filters' | 'enable_scribble_component' | 'enable_search_and_filters_in_multimedia_component' | 'enable_section_context_in_dsr' | 'enable_section_selector_drag_n_drop' | 'enable_smart_folders' | 'enable_smart_folders_in_files' | 'enable_suggested_tags' | 'enable_template_folders' | 'enable_theme_options_border_radius' | 'enable_themes' | 'hide_asset_uploader' | 'include_files_content_in_print' | 'interpolate_rep_canvases_on_edit_mode' | 'is_fe_sentry_enabled' | 'is_meeting_bar_account_selection_disabled' | 'is_meeting_bar_hidden' | 'is_rep_canvas_creation_disabled' | 'is_shared_link_creation_disabled' | 'is_timeline_component_allowed' | 'launch_in_full_screen_on_present_mode' | 'launch_in_present_mode_on_creation' | 'prefer_online_handlers' | 'reorder_component_in_drawer' | 'show_asset_manager_for_multimedia' | 'show_clear_all_annotations_button' | 'show_content_selector_list_view' | 'show_metadata_filters_in_all_canvas_things' | 'show_popularity_icons' | 'show_system_filters' | 'use_core_endpoint_for_analytics' | 'use_short_url_for_shared_link' | 'use_zoho_instead_of_ms_wopi';
2
2
  export type LaunchDarklyNumberFlagKey = 'canvas_section_selector_page_size' | 'canvas_section_selector_selected_items_with_thumbnail_size';
3
3
  type LaunchDarklyObjectFlags = {
4
4
  canvas_table_pagination: CanvasTablePagination;