@pitcher/js-api 1.21.0-beta.13 → 1.21.0-beta.15

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 (101) hide show
  1. package/js-api.esm.js +111 -6
  2. package/js-api.esm.js.map +1 -1
  3. package/js-api.umd.min.js +10 -10
  4. package/js-api.umd.min.js.map +1 -1
  5. package/lib/apps/browser/stores/api.d.ts +164 -104
  6. package/lib/apps/browser/stores/app.d.ts +6 -1
  7. package/lib/apps/browser/stores/upload.d.ts +30 -30
  8. package/lib/apps/canvas-builder/composables/useCanvas.d.ts +508 -421
  9. package/lib/apps/canvas-builder/composables/useCanvasHistory.d.ts +86 -74
  10. package/lib/apps/canvas-builder/composables/useCanvasTheme.d.ts +18 -20
  11. package/lib/apps/canvas-builder/composables/useContentSelector.d.ts +5 -5
  12. package/lib/apps/canvas-builder/composables/useInstalledEmbeddables.d.ts +4 -1
  13. package/lib/apps/canvas-builder/types/canvas.d.ts +1 -0
  14. package/lib/apps/canvas-builder/util/canvas.util.d.ts +1 -0
  15. package/lib/apps/content-selector/stores/app.d.ts +8 -1
  16. package/lib/components/CFileViewer/CFileViewer.use.d.ts +2 -4
  17. package/lib/components/CFileViewer/CFileViewerFullScreen.use.d.ts +1 -1
  18. package/lib/components/filters/filter.util.d.ts +1 -1
  19. package/lib/composables/instanceTagsActions.use.d.ts +14 -0
  20. package/lib/composables/recentFiles.use.d.ts +1 -1
  21. package/lib/composables/suggestedTags.use.d.ts +3 -0
  22. package/lib/composables/tableColumnsSettings.use.d.ts +25 -0
  23. package/lib/composables/useCanvasOverlay.d.ts +20 -0
  24. package/lib/composables/useConfirmation.d.ts +1 -0
  25. package/lib/composables/useElementHeightResize.d.ts +5 -0
  26. package/lib/composables/useFiles.d.ts +11 -0
  27. package/lib/constants/pitcherSettings.const.d.ts +4 -0
  28. package/lib/main.lib.d.ts +26 -20
  29. package/lib/sdk/api/HighLevelApi.d.ts +95 -2
  30. package/lib/sdk/api/modules/admin/canvas.admin.d.ts +24 -8
  31. package/lib/sdk/api/modules/admin/env.admin.d.ts +3 -2
  32. package/lib/sdk/api/modules/admin/files.admin.d.ts +10 -10
  33. package/lib/sdk/api/modules/admin/index.d.ts +20 -0
  34. package/lib/sdk/api/modules/admin/metadataTemplates.admin.d.ts +1 -2
  35. package/lib/sdk/api/modules/admin/types.admin.d.ts +94 -0
  36. package/lib/sdk/api/modules/canvas.d.ts +2 -4
  37. package/lib/sdk/api/modules/dsr/env.dsr.d.ts +4 -3
  38. package/lib/sdk/api/modules/dsr/index.d.ts +7 -0
  39. package/lib/sdk/api/modules/dsr/loading.dsr.d.ts +6 -0
  40. package/lib/sdk/api/modules/env.d.ts +16 -0
  41. package/lib/sdk/api/modules/favorites.d.ts +9 -0
  42. package/lib/sdk/api/modules/feedback.d.ts +3 -0
  43. package/lib/sdk/api/modules/files.d.ts +1 -2
  44. package/lib/sdk/api/modules/folders.d.ts +29 -0
  45. package/lib/sdk/api/modules/open.d.ts +6 -0
  46. package/lib/sdk/api/modules/sync.d.ts +1 -2
  47. package/lib/sdk/api/modules/ui/app-errors.ui.d.ts +12 -0
  48. package/lib/sdk/api/modules/ui/canvas.ui.d.ts +73 -0
  49. package/lib/sdk/api/modules/ui/content.ui.d.ts +36 -3
  50. package/lib/sdk/api/modules/ui/index.d.ts +114 -0
  51. package/lib/sdk/api/modules/ui/loading.ui.d.ts +15 -0
  52. package/lib/sdk/api/modules/ui/location.ui.d.ts +17 -0
  53. package/lib/sdk/api/modules/ui/post-call.ui.d.ts +25 -0
  54. package/lib/sdk/api/modules/ui/types.ui.d.ts +60 -0
  55. package/lib/sdk/api/modules/users.d.ts +4 -0
  56. package/lib/sdk/interfaces.d.ts +117 -0
  57. package/lib/sdk/main.d.ts +102 -6
  58. package/lib/sdk/payload.types.d.ts +132 -0
  59. package/lib/types/app.d.ts +11 -0
  60. package/lib/types/filter.d.ts +5 -0
  61. package/lib/types/instanceSettings.types.d.ts +8 -2
  62. package/lib/types/launchDarkly.types.d.ts +4 -4
  63. package/lib/types/organizationSettings.types.d.ts +4 -0
  64. package/lib/types/recentFiles.types.d.ts +4 -1
  65. package/lib/types/users.d.ts +13 -0
  66. package/lib/util/fullscreen.util.d.ts +1 -1
  67. package/lib/util/string.d.ts +1 -0
  68. package/package.json +1 -1
  69. package/types/openapi/index.d.ts +4 -5
  70. package/types/openapi/models/AccessTypeEnum.d.ts +3 -1
  71. package/types/openapi/models/Canvas.d.ts +1 -0
  72. package/types/openapi/models/CanvasCreate.d.ts +1 -0
  73. package/types/openapi/models/CanvasCreateRequest.d.ts +1 -0
  74. package/types/openapi/models/CanvasRetrieve.d.ts +1 -0
  75. package/types/openapi/models/CanvasUpdate.d.ts +1 -0
  76. package/types/openapi/models/CanvasUpdateRequest.d.ts +1 -0
  77. package/types/openapi/models/DeletedCanvas.d.ts +1 -0
  78. package/types/openapi/models/DeletedFolder.d.ts +3 -3
  79. package/types/openapi/models/Folder.d.ts +3 -3
  80. package/types/openapi/models/FolderCanvas.d.ts +11 -0
  81. package/types/openapi/models/FolderCreate.d.ts +7 -7
  82. package/types/openapi/models/FolderCreateRequest.d.ts +3 -2
  83. package/types/openapi/models/FolderFile.d.ts +2 -0
  84. package/types/openapi/models/FolderFolder.d.ts +4 -2
  85. package/types/openapi/models/FolderRetrieve.d.ts +7 -8
  86. package/types/openapi/models/FolderRule.d.ts +7 -0
  87. package/types/openapi/models/FolderRuleRequest.d.ts +7 -0
  88. package/types/openapi/models/FolderUpdate.d.ts +7 -8
  89. package/types/openapi/models/FolderUpdateRequest.d.ts +2 -0
  90. package/types/openapi/models/OperatorEnum.d.ts +64 -0
  91. package/types/openapi/models/PatchedCanvasUpdateRequest.d.ts +1 -0
  92. package/types/openapi/models/PatchedFolderUpdateRequest.d.ts +2 -0
  93. package/lib/apps/canvas-builder/util/tsUtils.d.ts +0 -3
  94. package/lib/composables/useDetailsView.d.ts +0 -19
  95. package/lib/types/templateActions.d.ts +0 -10
  96. package/lib/util/gesture.util.d.ts +0 -6
  97. package/types/openapi/models/FileRequest.d.ts +0 -16
  98. package/types/openapi/models/PSPDFKitAuthPayload.d.ts +0 -3
  99. package/types/openapi/models/PSPDFKitAuthPayloadRequest.d.ts +0 -3
  100. package/types/openapi/models/PSPDFKitToken.d.ts +0 -7
  101. package/types/openapi/models/PSPDFKitTokenRequest.d.ts +0 -3
@@ -27,9 +27,8 @@ export declare function createFile(payload: Omit<AllFileCreateRequest, 'instance
27
27
  /**
28
28
  * Dispatches iOS native file selector and returns the selected file.
29
29
  *
30
- * ```
30
+ * @example
31
31
  * // iOS only method to select a file from the device.
32
32
  * api.selectDeviceFile()
33
- * ```
34
33
  */
35
34
  export declare function selectDeviceFile(): Promise<DeviceFile>;
@@ -1,16 +1,45 @@
1
1
  import { File, Folder, FolderRetrieve, FolderCreateRequest, FolderUpdateRequest } from '../../../../types/openapi';
2
2
 
3
+ /**
4
+ * Retrieves a folder by its ID.
5
+ * @param payload - An object containing the folder ID.
6
+ * @param payload.id - The ID of the folder to retrieve. Defaults to 'root'.
7
+ * @returns A promise that resolves to the retrieved folder.
8
+ */
3
9
  export declare function getFolder(payload?: {
4
10
  id: FolderRetrieve['id'];
5
11
  }): Promise<FolderRetrieve>;
12
+ /**
13
+ * Creates a new folder.
14
+ * @param payload - The folder creation request payload, excluding the instance_id.
15
+ * @returns A promise that resolves to the created folder.
16
+ */
6
17
  export declare function createFolder(payload: Omit<FolderCreateRequest, 'instance_id'>): Promise<FolderRetrieve>;
7
18
  type UpdateFolderPayload = FolderUpdateRequest & {
8
19
  id: Folder['id'];
9
20
  };
21
+ /**
22
+ * Updates an existing folder.
23
+ * @param payload - The folder update payload, including the folder ID and update data.
24
+ * @returns A promise that resolves to the updated folder.
25
+ */
10
26
  export declare function updateFolder(payload: UpdateFolderPayload): Promise<FolderRetrieve>;
27
+ /**
28
+ * Deletes a folder.
29
+ * @param payload - An object containing the ID of the folder to delete.
30
+ * @param payload.folder_id - The ID of the folder to delete.
31
+ * @returns A promise that resolves when the folder is deleted.
32
+ */
11
33
  export declare function deleteFolder(payload: {
12
34
  folder_id: FolderRetrieve['id'];
13
35
  }): Promise<void>;
36
+ /**
37
+ * Moves items (files or folders) to a target folder.
38
+ * @param payload - The payload containing the target folder ID and items to move.
39
+ * @param payload.target_folder_id - The ID of the target folder.
40
+ * @param payload.items - An array of items to move, each with an ID and type.
41
+ * @returns A promise that resolves to the updated target folder.
42
+ */
14
43
  export declare function moveFolderItems(payload: {
15
44
  target_folder_id: Folder['id'];
16
45
  items: {
@@ -1,4 +1,10 @@
1
1
  import { OpenExternalUrlRequestPayload, OpenRequestPayload } from '../../payload.types';
2
2
 
3
+ /**
4
+ * Open a file in the CatalogIQ instance.
5
+ */
3
6
  export declare function open(payload?: OpenRequestPayload): Promise<string>;
7
+ /**
8
+ * Open external URL in a new tab. Works on both web and mobile.
9
+ */
4
10
  export declare function openExternalUrl(payload: OpenExternalUrlRequestPayload): Promise<void>;
@@ -1,9 +1,8 @@
1
1
  /**
2
2
  * Dispatches iOS only sync method for non-files.
3
3
  *
4
- * ```
4
+ * @example
5
5
  * // iOS only method to sync non-files from the server.
6
6
  * api.triggerNonFilesSync()
7
- * ```
8
7
  */
9
8
  export declare function triggerNonFilesSync(): Promise<void>;
@@ -1,3 +1,15 @@
1
1
  import { UiCaptureAppErrorRequest } from './types.ui';
2
2
 
3
+ /**
4
+ * Send an app error to Pitcher sentry instance.
5
+ *
6
+ * @example
7
+ * try {
8
+ * throw new Error('This is an error')
9
+ * } catch (error) {
10
+ * useUi().capture_app_error(error)
11
+ * }
12
+ *
13
+ * @param payload error object to send to Pitcher sentry instance
14
+ */
3
15
  export declare function capture_app_error(payload: UiCaptureAppErrorRequest): Promise<void>;
@@ -1,9 +1,82 @@
1
1
  import { CanvasRetrieve } from '../../../../../types/openapi';
2
2
  import { UiAppResizeRequest, UiCanvasNavigatePageReuqest, UiUpdateCanvasRequest } from './types.ui';
3
3
 
4
+ /**
5
+ * Modify the currently loaded canvas. On the web it sends
6
+ * an [update_canvas](https://pitcher.readme.io/reference/update_canvas) request to the server.
7
+ *
8
+ * @param payload parts of the canvas object to update with fields to return
9
+ */
4
10
  export declare function update_canvas(payload: UiUpdateCanvasRequest): Promise<CanvasRetrieve>;
11
+ /**
12
+ * Notify the CatalogIQ instance that the app is loaded and ready to get the data. Triggering this method will trigger
13
+ * the `on_app_set_data` event.
14
+ *
15
+ * @example
16
+ * @example
17
+ * useUi().app_loaded()
18
+ */
5
19
  export declare function app_loaded(): Promise<void>;
20
+ /**
21
+ * Resize the app iframe to a given height.
22
+ *
23
+ * Note that initial iframe height comes from the `app.json` manifest file. It can also be adjusted by the user when adding
24
+ * app component to the canvas. In case when the app must be temporarily resized to show larger ui elements it can read the
25
+ * user-set height from the [on_app_set_data](#on-app-set-data) event.
26
+ * @param payload object containing requested height of the iframe as the number of pixels
27
+ */
6
28
  export declare function app_resize(payload: UiAppResizeRequest): Promise<void>;
29
+ /**
30
+ * Navigate to the next page in the current canvas. Noop if the current page is the last one.
31
+ *
32
+ * @example
33
+ * useUi().canvas_navigate_next_page()
34
+ */
7
35
  export declare function canvas_navigate_next_page(): Promise<void>;
36
+ /**
37
+ * Navigate to the previous page in the current canvas. Noop if the current page is the first one.
38
+ *
39
+ * @example
40
+ * useUi().canvas_navigate_previous_page()
41
+ */
8
42
  export declare function canvas_navigate_previous_page(): Promise<void>;
43
+ /**
44
+ * Navigate to a specific canvas place in the current canvas. Despite the event and parameter name, it takes the component
45
+ * id that we want to put in view.
46
+ *
47
+ * @example
48
+ * const uiApi = useUi() // our useApi()
49
+ *
50
+ * let activeCanvas = null
51
+ * const unsubscribe = uiApi.on_app_set_data((data) => {
52
+ * activeCanvas = data?.canvas
53
+ * })
54
+ *
55
+ * document.getElementById('my-button').addEventListener('click', () => {
56
+ * const target = activeCanvas?.content?.data?.find((i: any) => i.data.app_name === 'my-target-app-id') || null
57
+ * if (target) {
58
+ * uiApi.canvas_navigate_page({ page: target.id })
59
+ * }
60
+ * })
61
+ */
9
62
  export declare function canvas_navigate_page(payload: UiCanvasNavigatePageReuqest): Promise<void>;
63
+ /**
64
+ * Opens a modal to view a canvas by ID.
65
+ *
66
+ * ```
67
+ * onMounted(() => {
68
+ * uiApi.openCanvasOverlay({
69
+ * id: '01HH4RCBH631K4JDHWAQB0RPR6',
70
+ * edit_mode: false,
71
+ * fullscreen: true,
72
+ * })
73
+ * })
74
+ * ```
75
+ */
76
+ export declare function openCanvasOverlay(payload: {
77
+ id: CanvasRetrieve['id'];
78
+ edit_mode?: boolean;
79
+ fullscreen?: boolean;
80
+ component_id?: string;
81
+ section_id?: string;
82
+ }): Promise<void>;
@@ -1,9 +1,17 @@
1
1
  import { UiSelectContentRequest, UiSelectContentResponse, UiOpenRequest, UiToastRequest, UiPreselectSfdcMeetingIdRequest, UiPreselectSfdcMeetingIdResponse } from './types.ui';
2
2
 
3
+ /**
4
+ * @hidden
5
+ * @deprecated
6
+ */
3
7
  export declare function ui_select_content(payload?: UiSelectContentRequest): Promise<UiSelectContentResponse>;
4
8
  /**
5
- * Allows you to select (and preselect) content from your Pitcher content.
6
- * ```
9
+ * Allows the user to select (and preselect) content from the instance.
10
+ *
11
+ * Opens the content selector dialog to allow the user to select content and handle the outcome. This method allows you to
12
+ * prompt the user to select content from the CatalogIQ instance and use that content in your application.
13
+ *
14
+ * @example
7
15
  * const api = useApi() // or useUi() if you know that you 're in UI context
8
16
  * api
9
17
  * .select_content({
@@ -16,9 +24,34 @@ export declare function ui_select_content(payload?: UiSelectContentRequest): Pro
16
24
  * },
17
25
  * ],
18
26
  * })
19
- * ```
27
+ *
28
+ * @param payload optional payload to preselect speciffic content
29
+ * @returns Promise with the user action and selected content
20
30
  */
21
31
  export declare function select_content(payload?: UiSelectContentRequest): Promise<UiSelectContentResponse>;
32
+ /**
33
+ * Open a file in the CatalogIQ instance.
34
+ */
22
35
  export declare function open(payload: UiOpenRequest): Promise<void>;
36
+ /**
37
+ * Show a toast message to the user.
38
+ *
39
+ * @example
40
+ * useUi().toast({ type: 'info', message: 'Hello, world!' })
41
+ */
23
42
  export declare function toast(payload: UiToastRequest): Promise<void>;
43
+ /**
44
+ * Preselect a meeting in the top meeting bar by Salesforce Meeting ID. From there, the user can easily start the meeting
45
+ * with a single click.
46
+ *
47
+ * @example
48
+ * const objectFetchedFromSalesforce = {
49
+ * // fetch dynamiccaly from Salesforce or provide in another way
50
+ * EventId: '00U1r00000D1J1zEAF',
51
+ * }
52
+ * ui.preselect_sfdc_meeting_id({ eventId: objectFetchedFromSalesforce.EventId }).then((response) => {
53
+ * // e.g. display advanced meeting details inside your app
54
+ * console.log(response.event)
55
+ * })
56
+ */
24
57
  export declare function preselect_sfdc_meeting_id(payload: UiPreselectSfdcMeetingIdRequest): Promise<UiPreselectSfdcMeetingIdResponse>;
@@ -1,14 +1,121 @@
1
1
  import { UiMeetingCanceledPayload, UiCanvasUpdatedPayload, UiSectionListUpdatedPayload, UiAppSetDataPayload, UiAppUpdateDataPayload, UiBroadcastRequest, UiMessagePayloads } from './types.ui';
2
2
 
3
+ /**
4
+ * Subscribe to a given event type by its key.
5
+ *
6
+ * @example
7
+ * const unsubscribeFromSectionListUpdate = useUi().on('ui_section_list_updated', (event: object) => {
8
+ * // handle event
9
+ * })
10
+ *
11
+ * // later
12
+ * unsubscribeFromSectionListUpdate.then(unsubscribe => unsubscribe())
13
+ *
14
+ * @param type The event type/key to subscribe to.
15
+ * @param handler The handler function to call when the event is emitted.
16
+ * @returns A Promise resolving to a cleanup function to unsubscribe from the event.
17
+ */
3
18
  declare function on<T extends keyof UiMessagePayloads>(type: T, handler: (data: UiMessagePayloads[T]) => Promise<void>): Promise<() => void>;
19
+ /**
20
+ * Subscribe to the meeting canceled event.
21
+ *
22
+ * @example
23
+ * const unsubscribeFromMeetingCanceled = useUi().on_meeting_canceled((event: {
24
+ * accountId?: string;
25
+ * eventId?: string;
26
+ * }) => {
27
+ * // handle event
28
+ * })
29
+ *
30
+ * // later
31
+ * unsubscribeFromMeetingCanceled.then(cancel => cancel())
32
+ *
33
+ * @param handler
34
+ * @returns A Promise resolving to a cleanup function to unsubscribe from the event.
35
+ */
4
36
  declare function on_meeting_canceled(handler: (data: UiMeetingCanceledPayload) => Promise<void>): Promise<() => void>;
37
+ /**
38
+ * Subscribe to the canvas updated event. It is triggered when the current canvas of the app is updated.
39
+ *
40
+ * @example
41
+ * const unsubscribePromise = useUi().on_canvas_updated((event: { canvas }) => {
42
+ * // handle event
43
+ * })
44
+ *
45
+ * // later
46
+ * unsubscribePromise.then(unsubscribe => unsubscribe())
47
+ *
48
+ * @returns A Promise resolving to a cleanup function to unsubscribe from the event.
49
+ */
5
50
  declare function on_canvas_updated(handler: (data: UiCanvasUpdatedPayload) => Promise<void>): Promise<() => void>;
51
+ /**
52
+ * Subscribe to the section list updated event. It is triggered when the list of sections (products) in the current canvas
53
+ * is updated.
54
+ *
55
+ * @example
56
+ * const unsubscribePromise = useUi().on_section_list_updated((event: { canvas }) => {
57
+ * // handle event
58
+ * })
59
+ *
60
+ * // later
61
+ * unsubscribePromise.then(unsubscribe => unsubscribe())
62
+ *
63
+ * @returns A Promise resolving to a cleanup function to unsubscribe from the event.
64
+ */
6
65
  declare function on_section_list_updated(handler: (data: UiSectionListUpdatedPayload) => Promise<void>): Promise<() => void>;
66
+ /**
67
+ * Subscribe to the app set data event. It is triggered when the app data is set. This event is triggered when the app is
68
+ * loaded and in certain other cases after loading.
69
+ *
70
+ * This is the main event for the canvas app to receive data from the CatalogIQ instance and know about its environment.
71
+ *
72
+ * @example
73
+ * let user = null
74
+ * let isEditMode = null
75
+ * let activeCanvas = null
76
+ * let isPrintMode = false
77
+ * const unsubscribePromise = useUi().on_app_set_data((data) => {
78
+ * user = data?.user
79
+ * isEditMode = data?.is_edit_mode
80
+ * activeCanvas = data?.canvas
81
+ * isPrintMode = data?.display_mode === 'print' || data?.client === 'dsr'
82
+ * // ...mode logic...
83
+ * })
84
+ *
85
+ * // later
86
+ * unsubscribePromise.then(unsubscribe => unsubscribe())
87
+ *
88
+ * @returns A Promise resolving to a cleanup function to unsubscribe from the event.
89
+ */
7
90
  declare function on_app_set_data(handler: (data: UiAppSetDataPayload) => Promise<void>): Promise<() => void>;
91
+ /**
92
+ * Subscribe to the app update data event. It is triggered when the user changes from edit mode to view mode or vice versa
93
+ * and when the call is started or ended.
94
+ *
95
+ * @example
96
+ * let inCall = false
97
+ * let isEditMode = false
98
+ * const unsubscribePromise = useUi().on_app_update_data((data) => {
99
+ * isEditMode = data?.is_edit_mode
100
+ * inCall = data?.in_call
101
+ * // ...mode logic...
102
+ * })
103
+ *
104
+ * // later
105
+ * unsubscribePromise.then(unsubscribe => unsubscribe())
106
+ *
107
+ * @returns A Promise resolving to a cleanup function to unsubscribe from the event.
108
+ */
8
109
  declare function on_app_update_data(handler: (data: UiAppUpdateDataPayload) => Promise<void>): Promise<() => void>;
110
+ /**
111
+ * Broadcast event to the UI. Hidden from the documentation.
112
+ *
113
+ * @hidden
114
+ */
9
115
  declare function ui_broadcast(payload: UiBroadcastRequest): Promise<void>;
10
116
  declare const _default: {
11
117
  complete_postcall(payload: import('../../../../main.lib').UiCompletePostcallRequest): Promise<void>;
118
+ stop_meeting(): Promise<void>;
12
119
  enable_postcall_submit(): Promise<void>;
13
120
  disable_postcall_submit(): Promise<void>;
14
121
  set_postcall_style(payload: import('../../../../main.lib').UiSetPostcallStyleRequest): Promise<void>;
@@ -18,6 +125,13 @@ declare const _default: {
18
125
  canvas_navigate_next_page(): Promise<void>;
19
126
  canvas_navigate_previous_page(): Promise<void>;
20
127
  canvas_navigate_page(payload: import('../../../../main.lib').UiCanvasNavigatePageReuqest): Promise<void>;
128
+ openCanvasOverlay(payload: {
129
+ id: import('../../../../main.lib').CanvasRetrieve["id"];
130
+ edit_mode?: boolean;
131
+ fullscreen?: boolean;
132
+ component_id?: string;
133
+ section_id?: string;
134
+ }): Promise<void>;
21
135
  capture_app_error(payload: import('../../../../main.lib').UiCaptureAppErrorRequest): Promise<void>;
22
136
  update_location(payload: import('../../../../main.lib').UpdateLocationPitcherEvent): Promise<any>;
23
137
  embeddable_ready(): Promise<void>;
@@ -1 +1,16 @@
1
+ /**
2
+ * Notify the CatalogIQ instance that the app is loaded. This method should be called when the app is fully loaded and
3
+ * ready to be displayed.
4
+ *
5
+ * ::: warning
6
+ * This method is deprecated. If you find yourself needing it, contact the Pitcher team.
7
+ * :::
8
+ *
9
+ * [//]: # 'TODO: Is this even needed today? We should probably remove it'
10
+ *
11
+ * @example
12
+ * useUi().embeddable_ready()
13
+ *
14
+ * @deprecated
15
+ */
1
16
  export declare function embeddable_ready(): Promise<void>;
@@ -1,3 +1,20 @@
1
1
  import { UpdateLocationPitcherEvent } from '../../../interfaces';
2
2
 
3
+ /**
4
+ * Navigate to another page in the CatalogIQ instance.
5
+ *
6
+ * [//]: # 'TODO: This is a very powerful event, we need to expand documentation here'
7
+ *
8
+ * @example
9
+ * const canvasId = '1234567890abcdef12345678' // obtain target canvasId
10
+ * useUi().update_location({
11
+ * action: 'restore',
12
+ * routes: {
13
+ * 'slotty-ui': {
14
+ * path: '/canvases/saved-canvases/' + canvasId + '/build/present',
15
+ * query: {},
16
+ * },
17
+ * },
18
+ * })
19
+ */
3
20
  export declare function update_location(payload: UpdateLocationPitcherEvent): Promise<any>;
@@ -1,6 +1,31 @@
1
1
  import { UiCompletePostcallRequest, UiSetPostcallStyleRequest } from './types.ui';
2
2
 
3
3
  export declare function complete_postcall(payload: UiCompletePostcallRequest): Promise<void>;
4
+ /**
5
+ * Ends current meeting and shows postcall form.
6
+ *
7
+ * @example
8
+ * useUi().stop_meeting()
9
+ */
10
+ export declare function stop_meeting(): Promise<void>;
11
+ /**
12
+ * Mark the postcall form as possible to submit by the user.
13
+ *
14
+ * @example
15
+ * useUi().enable_postcall_submit()
16
+ */
4
17
  export declare function enable_postcall_submit(): Promise<void>;
18
+ /**
19
+ * Mark the postcall form as **not** possible to submit by the user. Useful while processing the form data.
20
+ *
21
+ * @example
22
+ * useUi().disable_postcall_submit()
23
+ */
5
24
  export declare function disable_postcall_submit(): Promise<void>;
25
+ /**
26
+ * Change the height of the postcall form.
27
+ *
28
+ * @example
29
+ * useUi().set_postcall_style({ height: 100 })
30
+ */
6
31
  export declare function set_postcall_style(payload: UiSetPostcallStyleRequest): Promise<void>;
@@ -14,12 +14,14 @@ export declare const UI_API_METHOD_TYPES: {
14
14
  readonly UI_TOAST: "ui_toast";
15
15
  readonly UI_CAPTURE_APP_ERROR: "ui_capture_app_error";
16
16
  readonly UI_UPDATE_CANVAS: "ui_update_canvas";
17
+ readonly UI_OPEN_CANVAS_OVERLAY: "ui_open_canvas_overlay";
17
18
  readonly UI_UPDATE_LOCATION: "ui_update_location";
18
19
  readonly UI_PRESELECT_SFDC_MEETING_ID: "ui_preselect_sfdc_meeting_id";
19
20
  readonly UI_SET_POSTCALL_STYLE: "ui_set_postcall_style";
20
21
  readonly UI_ENABLE_POSTCALL_SUBMIT: "ui_enable_postcall_submit";
21
22
  readonly UI_DISABLE_POSTCALL_SUBMIT: "ui_disable_postcall_submit";
22
23
  readonly UI_COMPLETE_POSTCALL: "ui_complete_postcall";
24
+ readonly UI_STOP_MEETING: "ui_stop_meeting";
23
25
  readonly UI_CANVAS_NAVIGATE_NEXT_PAGE: "ui_canvas_navigate_next_page";
24
26
  readonly UI_CANVAS_NAVIGATE_PREVIOUS_PAGE: "ui_canvas_navigate_previous_page";
25
27
  readonly UI_CANVAS_NAVIGATE_PAGE: "ui_canvas_navigate_page";
@@ -36,39 +38,75 @@ export declare const UI_MESSAGE_TYPES: {
36
38
  export declare const UI_NATIVE_MESSAGE_TYPES: readonly ["ui_app_set_data", "ui_app_update_data", "ui_canvas_updated"];
37
39
  export type UiBroadcastRequest = Record<string, any>;
38
40
  export type UiSelectContentRequest = {
41
+ /** Array of selections */
39
42
  selections?: Selection[];
40
43
  };
41
44
  export type UiSelectContentResponse = {
45
+ /** User action result */
42
46
  user_action: 'cancelled' | 'selected';
47
+ /** Selected content */
43
48
  content?: (ContentSelectorSelectedFile | ContentSelectorSelectedPage)[];
44
49
  };
50
+ /**
51
+ * Error object to send to Pitcher sentry instance
52
+ */
45
53
  export type UiCaptureAppErrorRequest = Record<string, any>;
46
54
  export type UiUpdateCanvasRequest = Mutable<CanvasRetrieve> & {
55
+ /** Comma-separated list of field keys to return from the server */
47
56
  fields?: string;
48
57
  };
49
58
  export type UiOpenRequest = OpenRequestPayload;
50
59
  export type UiCompletePostcallRequest = {
60
+ /** Indicates if the postcall was successfully submitted */
51
61
  was_successfully_submitted?: boolean;
52
62
  };
53
63
  export type UiSetPostcallStyleRequest = Record<string, any>;
54
64
  export type UiAppResizeRequest = {
65
+ /** Requested height as the number of pixels */
55
66
  height: number;
56
67
  };
57
68
  export type UiCanvasNavigatePageReuqest = {
69
+ /** The id of the component we want to navigate to */
58
70
  page: ComponentNode['id'];
59
71
  };
60
72
  export interface UiToastRequest {
73
+ /**
74
+ * Type of the toast, influences the default icon
75
+ * @defaultValue **REQUIRED**
76
+ */
61
77
  type: 'info' | 'error' | 'warning' | 'success' | 'loading';
78
+ /**
79
+ * Text to show inside the toast
80
+ * @defaultValue **REQUIRED**
81
+ */
62
82
  message: string;
83
+ /**
84
+ * Optional, value in milliseconds
85
+ * @defaultValue 3500
86
+ */
63
87
  duration?: number;
88
+ /**
89
+ * Visibility of the close button, default is true
90
+ * @defaultValue true
91
+ */
64
92
  closable?: boolean;
93
+ /**
94
+ * Toast won't be hidden as long as it is hovered
95
+ * @defaultValue true
96
+ */
65
97
  keepAliveOnHover?: boolean;
98
+ /**
99
+ * Set to `false` to hide the icon
100
+ * @defaultValue true
101
+ */
66
102
  showIcon?: boolean;
67
103
  }
68
104
  export interface UiPreselectSfdcMeetingIdRequest {
105
+ /** Salesforce Meeting ID */
69
106
  eventId: string;
70
107
  }
71
108
  export interface UiPreselectSfdcMeetingIdResponse {
109
+ /** Salesforce Event */
72
110
  event: SfEvent | null;
73
111
  }
74
112
  export type UiMessagePayloads = {
@@ -79,36 +117,58 @@ export type UiMessagePayloads = {
79
117
  [UI_MESSAGE_TYPES.UI_SECTION_LIST_UPDATED]: UiSectionListUpdatedPayload;
80
118
  };
81
119
  export type UiMessageEnvelope<T extends (typeof UI_MESSAGE_TYPES)[keyof typeof UI_MESSAGE_TYPES] = (typeof UI_MESSAGE_TYPES)[keyof typeof UI_MESSAGE_TYPES]> = {
120
+ /** Message type */
82
121
  type: T;
122
+ /** Message body */
83
123
  body: UiMessagePayloads[T];
84
124
  };
85
125
  export type UiMeetingCanceledPayload = {
126
+ /** Account ID */
86
127
  accountId?: string;
128
+ /** Event ID */
87
129
  eventId?: string;
88
130
  };
89
131
  export type UiAppSetDataPayload = {
132
+ /** Client name */
90
133
  client: string | null;
134
+ /** Platform name */
91
135
  platform: string | undefined;
136
+ /** User information */
92
137
  user: User | null;
138
+ /** Edit mode status */
93
139
  is_edit_mode: boolean;
140
+ /** Call status */
94
141
  in_call: boolean;
142
+ /** Canvas data */
95
143
  canvas: CanvasRetrieve;
144
+ /** Section used in canvas */
96
145
  used_in_section: CanvasSection | null;
146
+ /** Component ID */
97
147
  component_id: string;
148
+ /** Embeddable settings */
98
149
  settings: EmbeddableProps['settings'] | null;
150
+ /** Width of the canvas */
99
151
  width: string | undefined;
152
+ /** Height of the canvas */
100
153
  height: string | undefined;
154
+ /** Display mode */
101
155
  display_mode: string | undefined;
102
156
  };
103
157
  export type UiAppUpdateDataPayload = {
158
+ /** Call status */
104
159
  in_call: boolean;
160
+ /** Edit mode status */
105
161
  is_edit_mode: boolean;
106
162
  };
107
163
  export type UiCanvasUpdatedPayload = {
164
+ /** Canvas data */
108
165
  canvas: CanvasRetrieve;
109
166
  };
110
167
  export type UiSectionListUpdatedPayload = {
168
+ /** List of section IDs */
111
169
  section_list_ids: string[];
170
+ /** Section list component ID */
112
171
  section_list_component_id: string;
172
+ /** Canvas data */
113
173
  canvas: CanvasRetrieve | null;
114
174
  };
@@ -3,5 +3,9 @@ import { PaginatedData } from '../../../types/paginatedData';
3
3
  import { User } from '../../../../types/openapi';
4
4
 
5
5
  export declare function getUsers(payload?: GetUsersParams): Promise<PaginatedData<User>>;
6
+ /**
7
+ * Ask for a refreshed Salesforce token. In case the token hasn't expired yet, this method will return the same token as the current one found in the (`getEnv`)[#getenv] result.
8
+ * @returns Promise resolving to an object containing the token
9
+ */
6
10
  export declare function refreshServiceToken(payload?: RefreshServiceTokenRequest): Promise<RefreshServiceTokenResponse>;
7
11
  export declare function refreshAccessToken(): any;