@pitcher/js-api 1.25.1 → 1.26.0-beta.10

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 (103) hide show
  1. package/impact-js-api.spec.json +15 -0
  2. package/js-api.esm.js +343 -2
  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/agenda-selector/components/modals/ApplicationBlockSelectorModal.vue.d.ts +148 -36
  7. package/lib/apps/browser/components/UploadFilesModal/UploadFilesModal.vue.d.ts +2 -2
  8. package/lib/apps/browser/stores/api.d.ts +22 -1
  9. package/lib/apps/canvas-builder/components/container/AddComponentModal/AddComponentModal.vue.d.ts +148 -36
  10. package/lib/apps/canvas-builder/components/container/CanvasContent/CanvasContent.vue.d.ts +2 -2
  11. package/lib/apps/canvas-builder/components/container/Navigator/Navigator.vue.d.ts +162 -37
  12. package/lib/apps/canvas-builder/components/ui/Carousel/Carousel.settings.vue.d.ts +2 -2
  13. package/lib/apps/canvas-builder/components/ui/ContentGrid/ContentGridCarousel.vue.d.ts +20 -20
  14. package/lib/apps/canvas-builder/components/ui/ContentList/ContentList.raw.vue.d.ts +30 -0
  15. package/lib/apps/canvas-builder/components/ui/ContentList/ContentList.vue.d.ts +76 -0
  16. package/lib/apps/canvas-builder/components/ui/ContentList/ContentListItems.vue.d.ts +21 -0
  17. package/lib/apps/canvas-builder/components/ui/ContentList/content.store.d.ts +11 -0
  18. package/lib/apps/canvas-builder/components/ui/DataCharts/DataCharts.raw.vue.d.ts +4 -0
  19. package/lib/apps/canvas-builder/components/ui/DataCharts/types.d.ts +87 -8
  20. package/lib/apps/canvas-builder/components/ui/Embeddable/Embeddable.settings.vue.d.ts +4 -4
  21. package/lib/apps/canvas-builder/components/ui/IFrame/IFrame.settings.vue.d.ts +2 -2
  22. package/lib/apps/canvas-builder/components/ui/Link/Link.settings.vue.d.ts +2 -2
  23. package/lib/apps/canvas-builder/components/ui/Multimedia/Multimedia.settings.vue.d.ts +2 -2
  24. package/lib/apps/canvas-builder/components/ui/Page/Page.settings.vue.d.ts +2 -2
  25. package/lib/apps/canvas-builder/components/ui/Root/Root.settings.vue.d.ts +2 -2
  26. package/lib/apps/canvas-builder/composables/useCanvas.d.ts +368 -202
  27. package/lib/apps/canvas-builder/composables/useCanvasBlocks.d.ts +30 -2
  28. package/lib/apps/canvas-builder/composables/useCanvasCompletionWizard.d.ts +1 -1
  29. package/lib/apps/canvas-builder/composables/useCanvasHistory.d.ts +28 -0
  30. package/lib/apps/canvas-builder/composables/useCanvasPages.d.ts +7 -9
  31. package/lib/apps/canvas-builder/composables/useCanvasSectionOverrides.d.ts +1 -1
  32. package/lib/apps/canvas-builder/composables/useCanvasTheme.d.ts +18 -18
  33. package/lib/apps/canvas-builder/composables/useCanvasVisibility.d.ts +1 -1
  34. package/lib/apps/canvas-builder/composables/usePitcherEvents.d.ts +0 -6
  35. package/lib/apps/canvas-builder/composables/usePopupApps.d.ts +2 -0
  36. package/lib/apps/canvas-builder/composables/useReorderComponent.d.ts +3 -3
  37. package/lib/apps/canvas-builder/composables/useScribbleChild.d.ts +1 -1
  38. package/lib/apps/canvas-builder/types/canvas.d.ts +20 -2
  39. package/lib/apps/canvas-builder/util/canvas.util.d.ts +4 -4
  40. package/lib/apps/canvas-selector/stores/app.d.ts +14 -14
  41. package/lib/apps/content-selector/components/Assets.vue.d.ts +2 -2
  42. package/lib/apps/content-selector/components/Content.vue.d.ts +2 -2
  43. package/lib/components/CCarousel/CCarousel.vue.d.ts +98 -20
  44. package/lib/components/CComponentListItem/CComponentListItem.vue.d.ts +8 -8
  45. package/lib/components/CConfigEditor/CConfigEditor.vue.d.ts +2 -2
  46. package/lib/components/CContactSelector/CContactSelectorAccountsWithContacts.vue.d.ts +3 -3
  47. package/lib/components/CCreateTemplateSectionBlockModal/CCreateTemplateSectionBlockModal.vue.d.ts +2 -2
  48. package/lib/components/CCreateThemeModal/steps/CThemeSettingsStep.vue.d.ts +10 -8
  49. package/lib/components/CDataTable/CDataTable.vue.d.ts +876 -100
  50. package/lib/components/CFileViewer/pdf/CFileViewerPageDrawer.pdf.vue.d.ts +2 -2
  51. package/lib/components/CImage/CImage.vue.d.ts +99 -20
  52. package/lib/components/CInput/CInput.vue.d.ts +148 -36
  53. package/lib/components/CRichTextEditor/components/CDynamicValueTreeSelect.vue.d.ts +288 -80
  54. package/lib/components/CRichTextEditor/components/CFormatterWithFieldSelect.vue.d.ts +468 -130
  55. package/lib/components/CRichTextEditor/components/CHandlebarsHelperTreeSelect.vue.d.ts +288 -80
  56. package/lib/components/CRichTextEditor/components/CHyperLinkToolbar.vue.d.ts +148 -36
  57. package/lib/components/CTableInput/CTableInput.vue.d.ts +296 -72
  58. package/lib/components/CTableTag/CTableTag.vue.d.ts +290 -38
  59. package/lib/components/CTags/CTags.vue.d.ts +290 -38
  60. package/lib/components/CTemplateAccessInfo/CTemplateAccessInfo.vue.d.ts +25 -0
  61. package/lib/components/CTemplateAccessManage/CTemplateAccessManage.vue.d.ts +26 -0
  62. package/lib/components/CUpsertFolderModal/CUpsertFolderModal.vue.d.ts +2 -2
  63. package/lib/components/CUserMenu/CUserMenu.vue.d.ts +108 -30
  64. package/lib/components/canvas-templates/CTemplateManagement.vue.d.ts +2 -0
  65. package/lib/components/savedCanvases/CSavedCanvasesManagementOwnerCell.vue.d.ts +176 -46
  66. package/lib/components/savedCanvases/smartFolders/SmartFolders.use.d.ts +4 -4
  67. package/lib/constants/cdp.const.d.ts +3 -0
  68. package/lib/main.lib.d.ts +5 -0
  69. package/lib/sdk/api/HighLevelApi.d.ts +7 -0
  70. package/lib/sdk/api/modules/query.d.ts +153 -1
  71. package/lib/sdk/interfaces.d.ts +4 -1
  72. package/lib/sdk/main.d.ts +22 -0
  73. package/lib/sdk/payload.types.d.ts +116 -0
  74. package/lib/sdk/peer-connectivity/index.d.ts +3 -0
  75. package/lib/sdk/peer-connectivity/peerConnectivity.constants.d.ts +13 -0
  76. package/lib/sdk/peer-connectivity/peerConnectivity.d.ts +3 -0
  77. package/lib/sdk/peer-connectivity/peerConnectivity.types.d.ts +35 -0
  78. package/lib/theme/light.d.ts +113 -8
  79. package/lib/types/app.d.ts +7 -0
  80. package/lib/types/canvases.d.ts +2 -0
  81. package/lib/types/instanceSettings.types.d.ts +1 -0
  82. package/lib/types/launchDarkly.types.d.ts +1 -1
  83. package/lib/types/organizationSettings.types.d.ts +3 -0
  84. package/lib/util/app.util.d.ts +46 -0
  85. package/lib/util/handlebars.d.ts +35 -0
  86. package/npm-cache/_cacache/content-v2/sha512/3e/27/b4826de89487d07340c5facfb59a809827e65850e472a2d853f7f72dbfc2b4ce5b453253d8c1b11077f5dccb02ea418d8708e7f3f52f756f276b663740a3 +0 -0
  87. package/npm-cache/_cacache/content-v2/sha512/64/5a/421e053f6177ae9816e985e900126bd7808f16ec0cc5f58c3e082c79c37d1610e6d493c0b99e4d09224e84ad12bcefb46b8f4cabd04d0f397fa8a5b999e3 +0 -0
  88. package/npm-cache/_cacache/index-v5/ef/db/1a303888dee96dbf0872b6eb0b16af940d57c22846114d55ac441140c1a2 +3 -0
  89. package/npm-cache/_logs/2025-12-12T08_06_50_883Z-debug-0.log +1194 -0
  90. package/npm-cache/_logs/2025-12-12T08_20_34_296Z-debug-0.log +1218 -0
  91. package/package.json +1 -1
  92. package/types/openapi/models/Account.d.ts +1 -1
  93. package/types/openapi/models/AccountRequest.d.ts +1 -1
  94. package/types/openapi/models/DeletedFolder.d.ts +1 -0
  95. package/types/openapi/models/Folder.d.ts +1 -0
  96. package/types/openapi/models/FolderCreate.d.ts +3 -0
  97. package/types/openapi/models/FolderFile.d.ts +2 -0
  98. package/types/openapi/models/FolderRetrieve.d.ts +4 -0
  99. package/types/openapi/models/FolderUpdate.d.ts +3 -0
  100. package/types/openapi/models/InstanceMembershipUser.d.ts +1 -0
  101. package/types/openapi/models/OfflineSyncFolder.d.ts +1 -0
  102. package/types/openapi/models/User.d.ts +4 -1
  103. /package/lib/apps/canvas-builder/components/{ui/SectionList/SectionSearch.vue.d.ts → container/Search/Search.vue.d.ts} +0 -0
@@ -233,6 +233,13 @@ export declare function createHighLevelApi(options?: ApiOptions): {
233
233
  }): Promise<void>;
234
234
  query(payload: import('../payload.types').QueryPayload): Promise<any>;
235
235
  crmQuery(payload: import('../payload.types').CRMQueryPayload): Promise<any>;
236
+ crmSmartQuery(payload: import('../payload.types').CRMQueryPayload): Promise<Array<any>>;
237
+ crmSmartObjectMetadata(payload: import('../payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
238
+ crmSmartUpsertObjects(payload: import('../payload.types').UpsertCRMObjectsPayload): Promise<any>;
239
+ crmSmartObjectValidationRules(payload: import('../payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
240
+ crmSmartDeleteObjects(payload: import('../payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
241
+ crmCreate(payload: import('../payload.types').CRMCreatePayload): Promise<any>;
242
+ crmUpsert(payload: import('../payload.types').CRMUpsertPayload): Promise<any>;
236
243
  getFolders(payload: import('../payload.types').FolderListRequest): Promise<import('../../main.lib').PaginatedFolderList>;
237
244
  getFolder(payload?: {
238
245
  id: import('../../main.lib').FolderRetrieve["id"];
@@ -1,3 +1,155 @@
1
- import { QueryPayload, CRMQueryPayload } from '../../payload.types';
1
+ import { QueryPayload, CRMQueryPayload, UpsertCRMObjectsPayload, CRMSmartObjectValidationRulesPayload, CRMSmartObjectMetadataPayload, CRMSmartDeleteObjectsPayload, CRMCreatePayload, CRMUpsertPayload } from '../../payload.types';
2
2
  export declare function query(payload: QueryPayload): Promise<any>;
3
3
  export declare function crmQuery(payload: CRMQueryPayload): Promise<any>;
4
+ /**
5
+ * Executes a SmartStore query against local CRM data (iOS only).
6
+ * Uses Salesforce Mobile SDK SmartStore query syntax.
7
+ * Validates that the query uses SmartStore syntax before execution.
8
+ *
9
+ * @param {CRMQueryPayload} payload - The query payload containing the SmartStore query string.
10
+ * @returns {Promise<Array<any>>} - Promise resolving with an array of query results from SmartStore.
11
+ * @throws {Error} - Throws an error if the query is not a valid SmartStore query.
12
+ *
13
+ * @example
14
+ * // iOS only method to execute a SmartStore query.
15
+ * api.crmSmartQuery({ query: 'SELECT {Account:Id}, {Account:Name} FROM {Account} ORDER BY {Account:Name} LIMIT 10' })
16
+ */
17
+ export declare function crmSmartQuery(payload: CRMQueryPayload): Promise<Array<any>>;
18
+ /**
19
+ * Retrieves metadata for a CRM smart object (iOS only).
20
+ * Fetches object metadata from the Salesforce Mobile SDK cache.
21
+ *
22
+ * @param {CRMSmartObjectMetadataPayload} payload - The payload containing the object name.
23
+ * @returns {Promise<any>} - Promise resolving with the object metadata.
24
+ * @throws {Error} - Throws an error if the object name is not provided.
25
+ *
26
+ * @example
27
+ * // iOS only method to retrieve CRM object metadata.
28
+ * api.crmSmartObjectMetadata({ object: 'Account' })
29
+ */
30
+ export declare function crmSmartObjectMetadata(payload: CRMSmartObjectMetadataPayload): Promise<any>;
31
+ /**
32
+ * Upserts CRM objects into local CRM data (iOS only).
33
+ * Uses Salesforce Mobile SDK SmartStore to insert or update records.
34
+ * Each object in the payload specifies a table name, the objects to upsert, and an optional external ID path.
35
+ *
36
+ * **Important**: Always provide `external_id_path` when performing updates to ensure records are
37
+ * matched correctly. Without it, the operation may create duplicate records instead of updating existing ones.
38
+ *
39
+ * **Note**: When creating new records, you must provide an explicit identifier field (e.g., `Id`)
40
+ * in each record object passed from the frontend. The backend does not auto-generate IDs.
41
+ *
42
+ * @param {UpsertCRMObjectsPayload} payload - The upsert payload containing an array of UpsertCRMObject items.
43
+ * @returns {Promise<any>} - Promise resolving with the result of the upsert operation.
44
+ * @throws {Error} - Throws an error if the payload is invalid.
45
+ *
46
+ * @example
47
+ * // iOS only method to upsert CRM objects.
48
+ *
49
+ * // Updating existing records - always include external_id_path
50
+ * api.crmSmartUpsertObjects({
51
+ * objects: [
52
+ * {
53
+ * table_name: 'Account',
54
+ * objects: [{ Id: '001xx000003DGbQAAW', Name: 'Acme Corp Updated' }],
55
+ * external_id_path: 'Id' // Required for updates to match existing records
56
+ * }
57
+ * ]
58
+ * })
59
+ *
60
+ * // Creating new records - explicit ID required in each record
61
+ * api.crmSmartUpsertObjects({
62
+ * objects: [
63
+ * {
64
+ * table_name: 'Account',
65
+ * objects: [
66
+ * { Id: '001xx000003NEW001', Name: 'New Company' }, // Explicit ID required
67
+ * { Id: '001xx000003NEW002', Name: 'Another Company' }
68
+ * ]
69
+ * }
70
+ * ]
71
+ * })
72
+ */
73
+ export declare function crmSmartUpsertObjects(payload: UpsertCRMObjectsPayload): Promise<any>;
74
+ /**
75
+ * Retrieves validation rules for a CRM smart object (iOS only).
76
+ * This method fetches the validation rules configured for a specific CRM object type
77
+ * from the local SmartStore cache.
78
+ *
79
+ * @param {CRMSmartObjectValidationRulesPayload} payload - The payload containing the object name.
80
+ * @returns {Promise<any>} - Promise resolving with the validation rules for the specified object.
81
+ *
82
+ * @example
83
+ * // iOS only method to get validation rules for an Account object.
84
+ * api.crmSmartObjectValidationRules({ object: 'Account' })
85
+ *
86
+ * @example
87
+ * // Get validation rules for a Contact object.
88
+ * api.crmSmartObjectValidationRules({ object: 'Contact' })
89
+ */
90
+ export declare function crmSmartObjectValidationRules(payload: CRMSmartObjectValidationRulesPayload): Promise<any>;
91
+ /**
92
+ * Deletes CRM objects from local CRM data (iOS only).
93
+ * Uses Salesforce Mobile SDK SmartStore to delete records.
94
+ * Each object in the payload specifies a table name and an array of IDs to delete.
95
+ *
96
+ * @param {CRMSmartDeleteObjectsPayload} payload - The delete payload containing an array of CRMDeleteObject items.
97
+ * @returns {Promise<any>} - Promise resolving with the result of the delete operation.
98
+ * @throws {Error} - Throws an error if the payload is invalid.
99
+ *
100
+ * @example
101
+ * // iOS only method to delete CRM objects.
102
+ * api.crmSmartDeleteObjects({
103
+ * objects: [
104
+ * {
105
+ * table_name: 'Account',
106
+ * ids: ['001xx000003DGbQAAW', '001xx000003DGbRABW']
107
+ * },
108
+ * {
109
+ * table_name: 'Contact',
110
+ * ids: ['003xx000004TmiQAAS']
111
+ * }
112
+ * ]
113
+ * })
114
+ */
115
+ export declare function crmSmartDeleteObjects(payload: CRMSmartDeleteObjectsPayload): Promise<any>;
116
+ /**
117
+ * Creates new records in CRM (Web only).
118
+ * Uses Salesforce REST API to create records.
119
+ *
120
+ * @param {CRMCreatePayload} payload - The create payload containing sobject type and records.
121
+ * @returns {Promise<any>} - Promise resolving with the result of the create operation.
122
+ * @throws {Error} - Throws an error if the payload is invalid.
123
+ *
124
+ * @example
125
+ * // Web only method to create CRM records.
126
+ * api.crmCreate({
127
+ * sobject: 'Order__c',
128
+ * records: [
129
+ * { Account__c: '001xx000003DGbQAAW', Order_Date__c: '2024-01-15' },
130
+ * { Account__c: '001xx000003DGbRABW', Order_Date__c: '2024-01-16' }
131
+ * ]
132
+ * })
133
+ */
134
+ export declare function crmCreate(payload: CRMCreatePayload): Promise<any>;
135
+ /**
136
+ * Upserts records in CRM (Web only).
137
+ * Uses Salesforce REST API to insert or update records based on external ID.
138
+ * If a record with matching external ID exists, it will be updated; otherwise, a new record is created.
139
+ *
140
+ * @param {CRMUpsertPayload} payload - The upsert payload containing sobject type, records, and external ID field.
141
+ * @returns {Promise<any>} - Promise resolving with the result of the upsert operation.
142
+ * @throws {Error} - Throws an error if the payload is invalid.
143
+ *
144
+ * @example
145
+ * // Web only method to upsert CRM records.
146
+ * api.crmUpsert({
147
+ * sobject: 'Order__c',
148
+ * records: [
149
+ * { External_Id__c: 'ORD-001', Account__c: '001xx000003DGbQAAW', Status__c: 'Submitted' },
150
+ * { External_Id__c: 'ORD-002', Account__c: '001xx000003DGbRABW', Status__c: 'Draft' }
151
+ * ],
152
+ * external_id_field: 'External_Id__c'
153
+ * })
154
+ */
155
+ export declare function crmUpsert(payload: CRMUpsertPayload): Promise<any>;
@@ -5,6 +5,7 @@ import { PitcherInstance } from '../types/instance.types';
5
5
  import { PaginatedData } from '../types/paginatedData';
6
6
  import { LaunchDarklyEnv } from '../types/launchDarkly.types';
7
7
  import { CDP_EVENT_TYPE, CLIENT_TYPE } from '../constants/cdp.const';
8
+ import { PeerConnectivityEvent } from './peer-connectivity';
8
9
  export declare const PITCHER_EVENT: "PITCHER_EVENT";
9
10
  export declare enum PitcherMessageType {
10
11
  REQUEST = "PITCHER_REQUEST",
@@ -145,7 +146,8 @@ export declare enum PitcherEventName {
145
146
  ITEM_SHAREBOX_STATUS_UPDATED = "item_sharebox_status_updated",
146
147
  ITEM_SHAREBOX_ADD_REQUESTED = "item_sharebox_add_requested",
147
148
  ITEM_SHAREBOX_ADD_COMPLETED = "item_sharebox_add_completed",
148
- SYNC_BADGE_VALUE_REPORTED = "sync_badge_value_reported"
149
+ SYNC_BADGE_VALUE_REPORTED = "sync_badge_value_reported",
150
+ PEER_CONNECTIVITY_EVENT = "peer_connectivity_event"
149
151
  }
150
152
  export declare enum PitcherBroadcastedEventName {
151
153
  UI_SHOW_MODAL = "ui:show-modal",
@@ -442,6 +444,7 @@ export interface PitcherEventMap {
442
444
  [PitcherEventName.SYNC_BADGE_VALUE_REPORTED]: {
443
445
  count: number;
444
446
  };
447
+ [PitcherEventName.PEER_CONNECTIVITY_EVENT]: PeerConnectivityEvent;
445
448
  [PitcherBroadcastedEventName.UI_SHOW_MODAL]: void;
446
449
  [PitcherBroadcastedEventName.UI_HIDE_MODAL]: void;
447
450
  [PitcherBroadcastedEventName.FAVORITES_CHANGED]: {
package/lib/sdk/main.d.ts CHANGED
@@ -5,6 +5,7 @@ export * from './payload.types';
5
5
  export * from './api/modules/ui/types.ui';
6
6
  export * from './api/modules/admin/types.admin';
7
7
  export * from './api/modules/dsr/types.dsr';
8
+ export * from './peer-connectivity';
8
9
  export declare let highLevelApi: ReturnType<typeof createHighLevelApi>;
9
10
  /**
10
11
  * Check out the returned object documentation for the list of available methods.
@@ -301,6 +302,13 @@ export declare function useApi(options?: ApiOptions): {
301
302
  }): Promise<void>;
302
303
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
303
304
  crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
305
+ crmSmartQuery(payload: import('./payload.types').CRMQueryPayload): Promise<Array<any>>;
306
+ crmSmartObjectMetadata(payload: import('./payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
307
+ crmSmartUpsertObjects(payload: import('./payload.types').UpsertCRMObjectsPayload): Promise<any>;
308
+ crmSmartObjectValidationRules(payload: import('./payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
309
+ crmSmartDeleteObjects(payload: import('./payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
310
+ crmCreate(payload: import('./payload.types').CRMCreatePayload): Promise<any>;
311
+ crmUpsert(payload: import('./payload.types').CRMUpsertPayload): Promise<any>;
304
312
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
305
313
  getFolder(payload?: {
306
314
  id: import('../main.lib').FolderRetrieve["id"];
@@ -577,6 +585,13 @@ export declare function useApi(options?: ApiOptions): {
577
585
  }): Promise<void>;
578
586
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
579
587
  crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
588
+ crmSmartQuery(payload: import('./payload.types').CRMQueryPayload): Promise<Array<any>>;
589
+ crmSmartObjectMetadata(payload: import('./payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
590
+ crmSmartUpsertObjects(payload: import('./payload.types').UpsertCRMObjectsPayload): Promise<any>;
591
+ crmSmartObjectValidationRules(payload: import('./payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
592
+ crmSmartDeleteObjects(payload: import('./payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
593
+ crmCreate(payload: import('./payload.types').CRMCreatePayload): Promise<any>;
594
+ crmUpsert(payload: import('./payload.types').CRMUpsertPayload): Promise<any>;
580
595
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
581
596
  getFolder(payload?: {
582
597
  id: import('../main.lib').FolderRetrieve["id"];
@@ -789,6 +804,13 @@ export declare function useApi(options?: ApiOptions): {
789
804
  }): Promise<ArrayBuffer>;
790
805
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
791
806
  crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
807
+ crmSmartQuery(payload: import('./payload.types').CRMQueryPayload): Promise<Array<any>>;
808
+ crmSmartObjectMetadata(payload: import('./payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
809
+ crmSmartUpsertObjects(payload: import('./payload.types').UpsertCRMObjectsPayload): Promise<any>;
810
+ crmSmartObjectValidationRules(payload: import('./payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
811
+ crmSmartDeleteObjects(payload: import('./payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
812
+ crmCreate(payload: import('./payload.types').CRMCreatePayload): Promise<any>;
813
+ crmUpsert(payload: import('./payload.types').CRMUpsertPayload): Promise<any>;
792
814
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
793
815
  getFolder(payload?: {
794
816
  id: import('../main.lib').FolderRetrieve["id"];
@@ -98,6 +98,15 @@ export interface CRMQueryPayload {
98
98
  */
99
99
  service?: CRMServiceType;
100
100
  }
101
+ /**
102
+ * Payload for retrieving CRM smart object metadata (iOS only).
103
+ */
104
+ export interface CRMSmartObjectMetadataPayload {
105
+ /**
106
+ * The name of the CRM object to retrieve metadata for (e.g., 'Account', 'Contact', 'Opportunity').
107
+ */
108
+ object: string;
109
+ }
101
110
  /**
102
111
  * Payload for submitting user feedback.
103
112
  */
@@ -288,3 +297,110 @@ export type FolderListRequest = {
288
297
  page_size?: number;
289
298
  id__in?: string[];
290
299
  };
300
+ /**
301
+ * Represents a single CRM object to be upserted.
302
+ */
303
+ export interface UpsertCRMObject {
304
+ /**
305
+ * The name of the CRM table/object to upsert into.
306
+ */
307
+ table_name: string;
308
+ /**
309
+ * Array of objects to upsert. Each object is a key-value map of field names to values.
310
+ *
311
+ * **Important**: When creating new records, each object must include an explicit identifier field
312
+ * (e.g., `Id`) passed from the frontend. The backend does not auto-generate IDs.
313
+ */
314
+ objects: Array<Record<string, any>>;
315
+ /**
316
+ * Optional external ID path for identifying records during upsert.
317
+ * Used to determine if a record should be created or updated.
318
+ *
319
+ * **Important**: Always provide this field when performing updates to ensure records are
320
+ * matched correctly. Without it, the operation may create duplicate records instead of updating existing ones.
321
+ */
322
+ external_id_path?: string;
323
+ }
324
+ /**
325
+ * Payload for upserting CRM objects (iOS only).
326
+ */
327
+ export interface UpsertCRMObjectsPayload {
328
+ /**
329
+ * Array of CRM objects to be upserted.
330
+ */
331
+ objects: UpsertCRMObject[];
332
+ }
333
+ /**
334
+ * Payload for getting CRM smart object validation rules (iOS only).
335
+ */
336
+ export interface CRMSmartObjectValidationRulesPayload {
337
+ /**
338
+ * The name of the CRM object (e.g., 'Account', 'Contact', 'Opportunity').
339
+ */
340
+ object: string;
341
+ }
342
+ /**
343
+ * Represents a single CRM object to be deleted.
344
+ */
345
+ export interface CRMDeleteObject {
346
+ /**
347
+ * Array of IDs of the records to delete.
348
+ */
349
+ ids: string[];
350
+ /**
351
+ * The name of the CRM table/object to delete from.
352
+ */
353
+ table_name: string;
354
+ }
355
+ /**
356
+ * Payload for deleting CRM objects (iOS only).
357
+ */
358
+ export interface CRMSmartDeleteObjectsPayload {
359
+ /**
360
+ * Array of CRM objects to be deleted.
361
+ */
362
+ objects: CRMDeleteObject[];
363
+ }
364
+ /**
365
+ * Payload for creating CRM records (Web only).
366
+ * Uses Salesforce REST API to create records.
367
+ */
368
+ export interface CRMCreatePayload {
369
+ /**
370
+ * The Salesforce object type (e.g., 'Account', 'Contact', 'Order__c').
371
+ */
372
+ sobject: string;
373
+ /**
374
+ * Array of records to create. Each record is a key-value map of field names to values.
375
+ * Field names should use Salesforce API names (e.g., 'Account__c', 'Order_Date__c').
376
+ */
377
+ records: Array<Record<string, unknown>>;
378
+ /**
379
+ * Optional name of the CRM service to use.
380
+ */
381
+ service?: CRMServiceType;
382
+ }
383
+ /**
384
+ * Payload for upserting CRM records (Web only).
385
+ * Uses Salesforce REST API to insert or update records based on external ID.
386
+ */
387
+ export interface CRMUpsertPayload {
388
+ /**
389
+ * The Salesforce object type (e.g., 'Account', 'Contact', 'Order__c').
390
+ */
391
+ sobject: string;
392
+ /**
393
+ * Array of records to upsert. Each record is a key-value map of field names to values.
394
+ * Field names should use Salesforce API names (e.g., 'Account__c', 'Order_Date__c').
395
+ */
396
+ records: Array<Record<string, unknown>>;
397
+ /**
398
+ * The external ID field used to match existing records for update.
399
+ * If a record with matching external ID exists, it will be updated; otherwise, a new record is created.
400
+ */
401
+ external_id_field: string;
402
+ /**
403
+ * Optional name of the CRM service to use.
404
+ */
405
+ service?: CRMServiceType;
406
+ }
@@ -0,0 +1,3 @@
1
+ export * from './peerConnectivity.constants';
2
+ export * from './peerConnectivity.types';
3
+ export { registerPeerConnectivityHandler, sendPeerConnectivityEvent } from './peerConnectivity';
@@ -0,0 +1,13 @@
1
+ export declare const PEER_CONNECTIVITY_EVENT = "peer_connectivity_event";
2
+ export declare const PeerConnectivityActions: {
3
+ readonly CANVAS_PAGE_NEXT: "canvas.navigate.next";
4
+ readonly CANVAS_PAGE_PREVIOUS: "canvas.navigate.previous";
5
+ readonly CANVAS_OPEN: "canvas.open";
6
+ readonly CANVAS_CLOSE: "canvas.close";
7
+ readonly ROUTE_CHANGE: "route.change";
8
+ readonly FILE_OPEN: "file.open";
9
+ readonly FILE_CLOSE: "file.close";
10
+ readonly BROWSER_FOLDER_OPEN: "browser.folder.open";
11
+ };
12
+ export declare const DEFAULT_PEER_CONNECTIVITY_VERSION = 1;
13
+ export declare const PEER_CONNECTIVITY_HANDLER_MATCH_ALL = "*";
@@ -0,0 +1,3 @@
1
+ import { PeerConnectivityDispatchOptions, PeerConnectivityEventHandler, PeerConnectivityEventPayload } from './peerConnectivity.types';
2
+ export declare function registerPeerConnectivityHandler(actionOrActions: string | string[], handler: PeerConnectivityEventHandler): () => void;
3
+ export declare function sendPeerConnectivityEvent(payload: PeerConnectivityEventPayload, options?: PeerConnectivityDispatchOptions): Promise<void>;
@@ -0,0 +1,35 @@
1
+ import { PeerConnectivityActions } from './peerConnectivity.constants';
2
+ export interface PeerConnectivityContext {
3
+ canvasId?: string;
4
+ fileId?: string;
5
+ routeName?: string;
6
+ routePath?: string;
7
+ viewId?: string;
8
+ viewType?: string;
9
+ [key: string]: unknown;
10
+ }
11
+ export interface PeerConnectivityMetadata {
12
+ correlationId: string;
13
+ source: string;
14
+ timestamp: number;
15
+ extras?: Record<string, unknown>;
16
+ }
17
+ export interface PeerConnectivityEventPayload<TData extends Record<string, unknown> = Record<string, unknown>, TContext extends PeerConnectivityContext = PeerConnectivityContext> {
18
+ version?: number;
19
+ action: string;
20
+ context?: TContext;
21
+ data?: TData;
22
+ metadata?: Partial<PeerConnectivityMetadata>;
23
+ }
24
+ export interface PeerConnectivityEvent<TData extends Record<string, unknown> = Record<string, unknown>, TContext extends PeerConnectivityContext = PeerConnectivityContext> extends PeerConnectivityEventPayload<TData, TContext> {
25
+ version: number;
26
+ metadata: PeerConnectivityMetadata;
27
+ }
28
+ export type PeerConnectivityAction = (typeof PeerConnectivityActions)[keyof typeof PeerConnectivityActions] | string;
29
+ export type PeerConnectivityEventHandler<TData extends Record<string, unknown> = Record<string, unknown>, TContext extends PeerConnectivityContext = PeerConnectivityContext> = (event: PeerConnectivityEvent<TData, TContext>) => void;
30
+ export interface PeerConnectivityDispatchOptions {
31
+ /**
32
+ * Guards if feature flag is enabled for the current organization.
33
+ */
34
+ isFeatureEnabled?: boolean;
35
+ }
@@ -741,7 +741,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
741
741
  arrowOffsetVertical: string;
742
742
  arrowHeight: string;
743
743
  padding: string;
744
- }, any>;
744
+ }, {
745
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
746
+ height: string;
747
+ width: string;
748
+ borderRadius: string;
749
+ color: string;
750
+ colorHover: string;
751
+ railInsetHorizontalBottom: string;
752
+ railInsetHorizontalTop: string;
753
+ railInsetVerticalRight: string;
754
+ railInsetVerticalLeft: string;
755
+ railColor: string;
756
+ }, any>;
757
+ }>;
745
758
  }>> | undefined;
746
759
  InternalSelectMenu?: import('naive-ui/es/_mixins/use-theme').ExtractThemeOverrides<import('naive-ui/es/_mixins').Theme<"InternalSelectMenu", {
747
760
  optionFontSizeTiny: string;
@@ -948,7 +961,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
948
961
  paddingMedium: string;
949
962
  paddingLarge: string;
950
963
  clearSize: string;
951
- }, any>> | undefined;
964
+ }, {
965
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
966
+ height: string;
967
+ width: string;
968
+ borderRadius: string;
969
+ color: string;
970
+ colorHover: string;
971
+ railInsetHorizontalBottom: string;
972
+ railInsetHorizontalTop: string;
973
+ railInsetVerticalRight: string;
974
+ railInsetVerticalLeft: string;
975
+ railColor: string;
976
+ }, any>;
977
+ }>> | undefined;
952
978
  } | undefined;
953
979
  } & {
954
980
  common?: Partial<ThemeCommonVars>;
@@ -1538,7 +1564,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
1538
1564
  arrowOffsetVertical: string;
1539
1565
  arrowHeight: string;
1540
1566
  padding: string;
1541
- }, any>;
1567
+ }, {
1568
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
1569
+ height: string;
1570
+ width: string;
1571
+ borderRadius: string;
1572
+ color: string;
1573
+ colorHover: string;
1574
+ railInsetHorizontalBottom: string;
1575
+ railInsetHorizontalTop: string;
1576
+ railInsetVerticalRight: string;
1577
+ railInsetVerticalLeft: string;
1578
+ railColor: string;
1579
+ }, any>;
1580
+ }>;
1542
1581
  }>;
1543
1582
  InternalSelectMenu: import('naive-ui/es/_mixins').Theme<"InternalSelectMenu", {
1544
1583
  optionFontSizeTiny: string;
@@ -1669,7 +1708,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
1669
1708
  paddingMedium: string;
1670
1709
  paddingLarge: string;
1671
1710
  clearSize: string;
1672
- }, any>;
1711
+ }, {
1712
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
1713
+ height: string;
1714
+ width: string;
1715
+ borderRadius: string;
1716
+ color: string;
1717
+ colorHover: string;
1718
+ railInsetHorizontalBottom: string;
1719
+ railInsetHorizontalTop: string;
1720
+ railInsetVerticalRight: string;
1721
+ railInsetVerticalLeft: string;
1722
+ railColor: string;
1723
+ }, any>;
1724
+ }>;
1673
1725
  Popselect: import('naive-ui/es/_mixins').Theme<"Popselect", {
1674
1726
  menuBoxShadow: string;
1675
1727
  }, {
@@ -1686,7 +1738,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
1686
1738
  arrowOffsetVertical: string;
1687
1739
  arrowHeight: string;
1688
1740
  padding: string;
1689
- }, any>;
1741
+ }, {
1742
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
1743
+ height: string;
1744
+ width: string;
1745
+ borderRadius: string;
1746
+ color: string;
1747
+ colorHover: string;
1748
+ railInsetHorizontalBottom: string;
1749
+ railInsetHorizontalTop: string;
1750
+ railInsetVerticalRight: string;
1751
+ railInsetVerticalLeft: string;
1752
+ railColor: string;
1753
+ }, any>;
1754
+ }>;
1690
1755
  InternalSelectMenu: import('naive-ui/es/_mixins').Theme<"InternalSelectMenu", {
1691
1756
  optionFontSizeTiny: string;
1692
1757
  optionFontSizeSmall: string;
@@ -1796,7 +1861,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
1796
1861
  arrowOffsetVertical: string;
1797
1862
  arrowHeight: string;
1798
1863
  padding: string;
1799
- }, any>> | undefined;
1864
+ }, {
1865
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
1866
+ height: string;
1867
+ width: string;
1868
+ borderRadius: string;
1869
+ color: string;
1870
+ colorHover: string;
1871
+ railInsetHorizontalBottom: string;
1872
+ railInsetHorizontalTop: string;
1873
+ railInsetVerticalRight: string;
1874
+ railInsetVerticalLeft: string;
1875
+ railColor: string;
1876
+ }, any>;
1877
+ }>> | undefined;
1800
1878
  Ellipsis?: import('naive-ui/es/_mixins/use-theme').ExtractThemeOverrides<import('naive-ui/es/_mixins').Theme<"Ellipsis", unknown, {
1801
1879
  Tooltip: import('naive-ui/es/_mixins').Theme<"Tooltip", {
1802
1880
  borderRadius: string;
@@ -1818,7 +1896,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
1818
1896
  arrowOffsetVertical: string;
1819
1897
  arrowHeight: string;
1820
1898
  padding: string;
1821
- }, any>;
1899
+ }, {
1900
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
1901
+ height: string;
1902
+ width: string;
1903
+ borderRadius: string;
1904
+ color: string;
1905
+ colorHover: string;
1906
+ railInsetHorizontalBottom: string;
1907
+ railInsetHorizontalTop: string;
1908
+ railInsetVerticalRight: string;
1909
+ railInsetVerticalLeft: string;
1910
+ railColor: string;
1911
+ }, any>;
1912
+ }>;
1822
1913
  }>;
1823
1914
  }>> | undefined;
1824
1915
  Dropdown?: import('naive-ui/es/_mixins/use-theme').ExtractThemeOverrides<import('naive-ui/es/_mixins').Theme<"Dropdown", {
@@ -1889,7 +1980,20 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
1889
1980
  arrowOffsetVertical: string;
1890
1981
  arrowHeight: string;
1891
1982
  padding: string;
1892
- }, any>;
1983
+ }, {
1984
+ Scrollbar: import('naive-ui/es/_mixins').Theme<"Scrollbar", {
1985
+ height: string;
1986
+ width: string;
1987
+ borderRadius: string;
1988
+ color: string;
1989
+ colorHover: string;
1990
+ railInsetHorizontalBottom: string;
1991
+ railInsetHorizontalTop: string;
1992
+ railInsetVerticalRight: string;
1993
+ railInsetVerticalLeft: string;
1994
+ railColor: string;
1995
+ }, any>;
1996
+ }>;
1893
1997
  }>> | undefined;
1894
1998
  } | undefined;
1895
1999
  } & {
@@ -2241,6 +2345,7 @@ export declare const lightThemeOverrides: import('vue').ComputedRef<{
2241
2345
  loadingColor: string;
2242
2346
  lineHeight: string;
2243
2347
  borderRadius: string;
2348
+ border: string;
2244
2349
  margin: string;
2245
2350
  padding: string;
2246
2351
  maxWidth: string;
@@ -1,5 +1,11 @@
1
1
  import { File, MetadataTemplateFieldTypeEnum } from '../../types/openapi';
2
2
  export type EmbedLocation = 'ui_app' | 'canvas' | 'dsr' | 'admin_instance' | 'overlay_app' | 'canvas_section_execution' | 'canvas_drawer';
3
+ export interface AppRouteConfig {
4
+ display_name?: string;
5
+ icon?: string;
6
+ [key: string]: unknown;
7
+ }
8
+ export type AppRoutesMap = Record<string, AppRouteConfig>;
3
9
  export type ModuleSettingsOption = {
4
10
  label: string;
5
11
  value: string;
@@ -86,6 +92,7 @@ export type AppJson = {
86
92
  app_type?: 'canvas-popup' | 'section-selector' | 'sharebox';
87
93
  app_options?: AppTypeJsonOptions;
88
94
  order_override?: number;
95
+ has_multiple_routes?: boolean;
89
96
  };
90
97
  export type AppFile = File & {
91
98
  app_metadata?: AppJson;
@@ -13,8 +13,10 @@ export interface GetCanvasesParams {
13
13
  page_size?: number;
14
14
  section_ids?: string[];
15
15
  tags__in?: string[];
16
+ tags__not_in?: string;
16
17
  id__in?: string;
17
18
  access_type?: string;
19
+ template__id?: string;
18
20
  }
19
21
  export interface CanvasMetadataRetrieve {
20
22
  canvas_id: CanvasRetrieve['id'];
@@ -62,5 +62,6 @@ export type InstanceSettings = OrganizationSettings & {
62
62
  enable_sync_file_filtering?: boolean;
63
63
  time_format?: string;
64
64
  date_format?: string;
65
+ is_file_expiration_mandatory?: boolean;
65
66
  ios?: InstanceSettings;
66
67
  };