zudello-chat-sdk 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +325 -0
- package/dist/cjs/client.js +124 -0
- package/dist/cjs/client.js.map +1 -0
- package/dist/cjs/constants.js +578 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/errors.js +195 -0
- package/dist/cjs/errors.js.map +1 -0
- package/dist/cjs/http/client.js +218 -0
- package/dist/cjs/http/client.js.map +1 -0
- package/dist/cjs/index.js +80 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/modules/approvals.js +90 -0
- package/dist/cjs/modules/approvals.js.map +1 -0
- package/dist/cjs/modules/automation.js +110 -0
- package/dist/cjs/modules/automation.js.map +1 -0
- package/dist/cjs/modules/config.js +264 -0
- package/dist/cjs/modules/config.js.map +1 -0
- package/dist/cjs/modules/datasets.js +103 -0
- package/dist/cjs/modules/datasets.js.map +1 -0
- package/dist/cjs/modules/exports.js +126 -0
- package/dist/cjs/modules/exports.js.map +1 -0
- package/dist/cjs/modules/inboxes.js +99 -0
- package/dist/cjs/modules/inboxes.js.map +1 -0
- package/dist/cjs/modules/models.js +105 -0
- package/dist/cjs/modules/models.js.map +1 -0
- package/dist/cjs/modules/org.js +335 -0
- package/dist/cjs/modules/org.js.map +1 -0
- package/dist/cjs/modules/quick-actions.js +71 -0
- package/dist/cjs/modules/quick-actions.js.map +1 -0
- package/dist/cjs/modules/resources.js +236 -0
- package/dist/cjs/modules/resources.js.map +1 -0
- package/dist/cjs/modules/search.js +188 -0
- package/dist/cjs/modules/search.js.map +1 -0
- package/dist/cjs/modules/sentences.js +155 -0
- package/dist/cjs/modules/sentences.js.map +1 -0
- package/dist/cjs/modules/users.js +120 -0
- package/dist/cjs/modules/users.js.map +1 -0
- package/dist/cjs/types.js +8 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/client.js +120 -0
- package/dist/esm/client.js.map +1 -0
- package/dist/esm/constants.js +565 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/errors.js +183 -0
- package/dist/esm/errors.js.map +1 -0
- package/dist/esm/http/client.js +214 -0
- package/dist/esm/http/client.js.map +1 -0
- package/dist/esm/index.js +49 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/modules/approvals.js +86 -0
- package/dist/esm/modules/approvals.js.map +1 -0
- package/dist/esm/modules/automation.js +106 -0
- package/dist/esm/modules/automation.js.map +1 -0
- package/dist/esm/modules/config.js +260 -0
- package/dist/esm/modules/config.js.map +1 -0
- package/dist/esm/modules/datasets.js +99 -0
- package/dist/esm/modules/datasets.js.map +1 -0
- package/dist/esm/modules/exports.js +122 -0
- package/dist/esm/modules/exports.js.map +1 -0
- package/dist/esm/modules/inboxes.js +95 -0
- package/dist/esm/modules/inboxes.js.map +1 -0
- package/dist/esm/modules/models.js +101 -0
- package/dist/esm/modules/models.js.map +1 -0
- package/dist/esm/modules/org.js +331 -0
- package/dist/esm/modules/org.js.map +1 -0
- package/dist/esm/modules/quick-actions.js +67 -0
- package/dist/esm/modules/quick-actions.js.map +1 -0
- package/dist/esm/modules/resources.js +232 -0
- package/dist/esm/modules/resources.js.map +1 -0
- package/dist/esm/modules/search.js +184 -0
- package/dist/esm/modules/search.js.map +1 -0
- package/dist/esm/modules/sentences.js +151 -0
- package/dist/esm/modules/sentences.js.map +1 -0
- package/dist/esm/modules/users.js +116 -0
- package/dist/esm/modules/users.js.map +1 -0
- package/dist/esm/types.js +7 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/types/client.d.ts +105 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/constants.d.ts +505 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/errors.d.ts +143 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/http/client.d.ts +42 -0
- package/dist/types/http/client.d.ts.map +1 -0
- package/dist/types/index.d.ts +37 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/modules/approvals.d.ts +62 -0
- package/dist/types/modules/approvals.d.ts.map +1 -0
- package/dist/types/modules/automation.d.ts +79 -0
- package/dist/types/modules/automation.d.ts.map +1 -0
- package/dist/types/modules/config.d.ts +173 -0
- package/dist/types/modules/config.d.ts.map +1 -0
- package/dist/types/modules/datasets.d.ts +55 -0
- package/dist/types/modules/datasets.d.ts.map +1 -0
- package/dist/types/modules/exports.d.ts +76 -0
- package/dist/types/modules/exports.d.ts.map +1 -0
- package/dist/types/modules/inboxes.d.ts +91 -0
- package/dist/types/modules/inboxes.d.ts.map +1 -0
- package/dist/types/modules/models.d.ts +91 -0
- package/dist/types/modules/models.d.ts.map +1 -0
- package/dist/types/modules/org.d.ts +122 -0
- package/dist/types/modules/org.d.ts.map +1 -0
- package/dist/types/modules/quick-actions.d.ts +58 -0
- package/dist/types/modules/quick-actions.d.ts.map +1 -0
- package/dist/types/modules/resources.d.ts +111 -0
- package/dist/types/modules/resources.d.ts.map +1 -0
- package/dist/types/modules/search.d.ts +72 -0
- package/dist/types/modules/search.d.ts.map +1 -0
- package/dist/types/modules/sentences.d.ts +105 -0
- package/dist/types/modules/sentences.d.ts.map +1 -0
- package/dist/types/modules/users.d.ts +65 -0
- package/dist/types/modules/users.d.ts.map +1 -0
- package/dist/types/types.d.ts +2056 -0
- package/dist/types/types.d.ts.map +1 -0
- package/package.json +67 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automation.js","sourceRoot":"","sources":["../../../src/modules/automation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Config Module
|
|
3
|
+
*
|
|
4
|
+
* Methods for managing Zudello configurations, field settings, statuses, and document types.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Configuration management operations for Zudello.
|
|
8
|
+
*/
|
|
9
|
+
export class ConfigModule {
|
|
10
|
+
http;
|
|
11
|
+
constructor(http) {
|
|
12
|
+
this.http = http;
|
|
13
|
+
}
|
|
14
|
+
// ==========================================================================
|
|
15
|
+
// General Configs
|
|
16
|
+
// ==========================================================================
|
|
17
|
+
/**
|
|
18
|
+
* Get a config resource by UUID.
|
|
19
|
+
*/
|
|
20
|
+
async get(configUuid, resourceType) {
|
|
21
|
+
const params = new URLSearchParams({ resource_type: resourceType });
|
|
22
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/${configUuid}?${params.toString()}`);
|
|
23
|
+
if (response.success === false) {
|
|
24
|
+
return { success: false, error: response.message || 'Failed to get config' };
|
|
25
|
+
}
|
|
26
|
+
return { success: true, data: response.data };
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* List config resources of a specific type.
|
|
30
|
+
*/
|
|
31
|
+
async list(resourceType, options = {}) {
|
|
32
|
+
const params = new URLSearchParams({
|
|
33
|
+
resource_type: resourceType,
|
|
34
|
+
global_resource: String(options.includeGlobal ?? false),
|
|
35
|
+
team_uuid: this.http.config.teamId,
|
|
36
|
+
});
|
|
37
|
+
if (options.module)
|
|
38
|
+
params.append('module', String(options.module));
|
|
39
|
+
if (options.submodule)
|
|
40
|
+
params.append('submodule', String(options.submodule));
|
|
41
|
+
if (options.includePaths?.length) {
|
|
42
|
+
params.append('include_paths', JSON.stringify(options.includePaths));
|
|
43
|
+
}
|
|
44
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/?${params.toString()}`);
|
|
45
|
+
if (response.success === false) {
|
|
46
|
+
return { success: false, error: response.message || 'Failed to list configs' };
|
|
47
|
+
}
|
|
48
|
+
return { success: true, data: response.data || [] };
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Create a config resource.
|
|
52
|
+
*/
|
|
53
|
+
async create(resourceType, payload, context) {
|
|
54
|
+
const params = new URLSearchParams({ resource_type: resourceType });
|
|
55
|
+
const response = await this.http.request('POST', `/general-store/api/v1/resources/?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId });
|
|
56
|
+
if (!response.success) {
|
|
57
|
+
return { success: false, error: response.message || 'Failed to create config' };
|
|
58
|
+
}
|
|
59
|
+
return { success: true, data: response.data };
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Update a config resource.
|
|
63
|
+
*/
|
|
64
|
+
async update(configUuid, resourceType, payload, context) {
|
|
65
|
+
const params = new URLSearchParams({ resource_type: resourceType });
|
|
66
|
+
const response = await this.http.request('PUT', `/general-store/api/v1/resources/${configUuid}?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId, uuid: configUuid });
|
|
67
|
+
if (!response.success) {
|
|
68
|
+
return { success: false, error: response.message || 'Failed to update config' };
|
|
69
|
+
}
|
|
70
|
+
return { success: true, data: response.data };
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Update the order of config resources.
|
|
74
|
+
*/
|
|
75
|
+
async updateOrder(resourceType, orderedUuids) {
|
|
76
|
+
const params = new URLSearchParams({ resource_type: resourceType });
|
|
77
|
+
await this.http.request('PUT', `/general-store/api/v1/resources/order?${params.toString()}`, { uuids: orderedUuids });
|
|
78
|
+
return { success: true };
|
|
79
|
+
}
|
|
80
|
+
// ==========================================================================
|
|
81
|
+
// Field Settings
|
|
82
|
+
// ==========================================================================
|
|
83
|
+
/**
|
|
84
|
+
* List field settings.
|
|
85
|
+
*/
|
|
86
|
+
async listFieldSettings() {
|
|
87
|
+
const params = new URLSearchParams({
|
|
88
|
+
resource_type: 'field_settings',
|
|
89
|
+
global_resource: 'false',
|
|
90
|
+
team_uuid: this.http.config.teamId,
|
|
91
|
+
});
|
|
92
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/?${params.toString()}`);
|
|
93
|
+
if (response.success === false) {
|
|
94
|
+
return { success: false, error: response.message || 'Failed to list field settings' };
|
|
95
|
+
}
|
|
96
|
+
return { success: true, data: response.data || [] };
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get a single field settings by UUID.
|
|
100
|
+
*/
|
|
101
|
+
async getFieldSettings(fieldSettingsUuid) {
|
|
102
|
+
const params = new URLSearchParams({ resource_type: 'field_settings' });
|
|
103
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/${fieldSettingsUuid}?${params.toString()}`);
|
|
104
|
+
if (response.success === false) {
|
|
105
|
+
return { success: false, error: response.message || 'Failed to get field settings' };
|
|
106
|
+
}
|
|
107
|
+
return { success: true, data: response.data };
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Create field settings.
|
|
111
|
+
*/
|
|
112
|
+
async createFieldSettings(payload, context) {
|
|
113
|
+
const params = new URLSearchParams({ resource_type: 'field_settings' });
|
|
114
|
+
const response = await this.http.request('POST', `/general-store/api/v1/resources/?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId });
|
|
115
|
+
if (!response.success) {
|
|
116
|
+
return { success: false, error: response.message || 'Failed to create field settings' };
|
|
117
|
+
}
|
|
118
|
+
return { success: true, data: response.data };
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Update field settings.
|
|
122
|
+
*/
|
|
123
|
+
async updateFieldSettings(fieldSettingsUuid, payload, context) {
|
|
124
|
+
const params = new URLSearchParams({ resource_type: 'field_settings' });
|
|
125
|
+
const response = await this.http.request('PUT', `/general-store/api/v1/resources/${fieldSettingsUuid}?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId, uuid: fieldSettingsUuid });
|
|
126
|
+
if (!response.success) {
|
|
127
|
+
return { success: false, error: response.message || 'Failed to update field settings' };
|
|
128
|
+
}
|
|
129
|
+
return { success: true, data: response.data };
|
|
130
|
+
}
|
|
131
|
+
// ==========================================================================
|
|
132
|
+
// Document Statuses
|
|
133
|
+
// ==========================================================================
|
|
134
|
+
/**
|
|
135
|
+
* List document statuses.
|
|
136
|
+
*/
|
|
137
|
+
async listStatuses(options = {}) {
|
|
138
|
+
const params = new URLSearchParams({
|
|
139
|
+
resource_type: 'document_status',
|
|
140
|
+
global_resource: String(options.includeGlobal ?? false),
|
|
141
|
+
team_uuid: this.http.config.teamId,
|
|
142
|
+
});
|
|
143
|
+
if (options.module)
|
|
144
|
+
params.append('module', String(options.module));
|
|
145
|
+
if (options.submodule)
|
|
146
|
+
params.append('submodule', String(options.submodule));
|
|
147
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/?${params.toString()}`);
|
|
148
|
+
return { success: true, data: response.data || [] };
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Get a single status by UUID.
|
|
152
|
+
*/
|
|
153
|
+
async getStatus(statusUuid) {
|
|
154
|
+
const params = new URLSearchParams({ resource_type: 'document_status' });
|
|
155
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/${statusUuid}?${params.toString()}`);
|
|
156
|
+
return { success: true, data: response.data };
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Create a document status.
|
|
160
|
+
*/
|
|
161
|
+
async createStatus(payload, context) {
|
|
162
|
+
const params = new URLSearchParams({ resource_type: 'document_status' });
|
|
163
|
+
const response = await this.http.request('POST', `/general-store/api/v1/resources/?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId });
|
|
164
|
+
if (!response.success) {
|
|
165
|
+
return { success: false, error: response.message || 'Failed to create status' };
|
|
166
|
+
}
|
|
167
|
+
return { success: true, data: response.data };
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Update a document status.
|
|
171
|
+
*/
|
|
172
|
+
async updateStatus(statusUuid, payload, context) {
|
|
173
|
+
const params = new URLSearchParams({ resource_type: 'document_status' });
|
|
174
|
+
const response = await this.http.request('PUT', `/general-store/api/v1/resources/${statusUuid}?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId, uuid: statusUuid });
|
|
175
|
+
if (!response.success) {
|
|
176
|
+
return { success: false, error: response.message || 'Failed to update status' };
|
|
177
|
+
}
|
|
178
|
+
return { success: true, data: response.data };
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Reorder document statuses.
|
|
182
|
+
*/
|
|
183
|
+
async reorderStatuses(statusOrders) {
|
|
184
|
+
const params = new URLSearchParams({ resource_type: 'document_status' });
|
|
185
|
+
await this.http.request('PUT', `/general-store/api/v1/resources/order?${params.toString()}`, statusOrders);
|
|
186
|
+
return { success: true };
|
|
187
|
+
}
|
|
188
|
+
// ==========================================================================
|
|
189
|
+
// Document Types
|
|
190
|
+
// ==========================================================================
|
|
191
|
+
/**
|
|
192
|
+
* List document types.
|
|
193
|
+
*/
|
|
194
|
+
async listDocumentTypes(options = {}) {
|
|
195
|
+
const params = new URLSearchParams({
|
|
196
|
+
resource_type: 'document_type',
|
|
197
|
+
global_resource: String(options.globalResource ?? false),
|
|
198
|
+
team_uuid: this.http.config.teamId,
|
|
199
|
+
});
|
|
200
|
+
if (options.module)
|
|
201
|
+
params.append('module', options.module);
|
|
202
|
+
if (options.submodule)
|
|
203
|
+
params.append('submodule', options.submodule);
|
|
204
|
+
if (options.includePaths?.length) {
|
|
205
|
+
params.append('include_paths', JSON.stringify(options.includePaths));
|
|
206
|
+
}
|
|
207
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/?${params.toString()}`);
|
|
208
|
+
return { success: true, data: response.data || [] };
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Get a single document type by UUID.
|
|
212
|
+
*/
|
|
213
|
+
async getDocumentType(documentTypeUuid) {
|
|
214
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/${documentTypeUuid}?resource_type=document_type`);
|
|
215
|
+
if (!response.success || !response.data) {
|
|
216
|
+
return { success: false, error: `Document type not found: ${documentTypeUuid}` };
|
|
217
|
+
}
|
|
218
|
+
return { success: true, data: response.data };
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Get merged form metadata (rendered view with field settings applied).
|
|
222
|
+
*/
|
|
223
|
+
async getMergedFormMetadata(module, submodule, documentType, globalResource = false) {
|
|
224
|
+
const params = new URLSearchParams({
|
|
225
|
+
module,
|
|
226
|
+
submodule,
|
|
227
|
+
document_type: documentType,
|
|
228
|
+
team_uuid: this.http.config.teamId,
|
|
229
|
+
global_resource: String(globalResource),
|
|
230
|
+
});
|
|
231
|
+
const response = await this.http.request('GET', `/general-store/api/v1/metadata/merge-form-metadata?${params.toString()}`);
|
|
232
|
+
if (!response.success || !response.data) {
|
|
233
|
+
return { success: false, error: `Document type not found: ${module}/${submodule}/${documentType}` };
|
|
234
|
+
}
|
|
235
|
+
return { success: true, data: response.data };
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Create a document type.
|
|
239
|
+
*/
|
|
240
|
+
async createDocumentType(payload, context) {
|
|
241
|
+
const params = new URLSearchParams({ resource_type: 'document_type' });
|
|
242
|
+
const response = await this.http.request('POST', `/general-store/api/v1/resources/?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId });
|
|
243
|
+
if (!response.success) {
|
|
244
|
+
return { success: false, error: response.message || 'Failed to create document type' };
|
|
245
|
+
}
|
|
246
|
+
return { success: true, data: response.data };
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Update a document type.
|
|
250
|
+
*/
|
|
251
|
+
async updateDocumentType(documentTypeUuid, payload, context) {
|
|
252
|
+
const params = new URLSearchParams({ resource_type: 'document_type' });
|
|
253
|
+
const response = await this.http.request('PUT', `/general-store/api/v1/resources/${documentTypeUuid}?${params.toString()}`, { payload, context, team_uuid: this.http.config.teamId, uuid: documentTypeUuid });
|
|
254
|
+
if (!response.success) {
|
|
255
|
+
return { success: false, error: response.message || 'Failed to update document type' };
|
|
256
|
+
}
|
|
257
|
+
return { success: true, data: response.data };
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/modules/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Datasets Module
|
|
3
|
+
*
|
|
4
|
+
* Methods for managing Zudello datasets (lookup tables, approval DOAs, etc.).
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Dataset operations for Zudello.
|
|
8
|
+
*/
|
|
9
|
+
export class DatasetsModule {
|
|
10
|
+
http;
|
|
11
|
+
constructor(http) {
|
|
12
|
+
this.http = http;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* List all datasets.
|
|
16
|
+
*
|
|
17
|
+
* @param withColumnDefs - Include column definitions in response
|
|
18
|
+
*/
|
|
19
|
+
async list(withColumnDefs = false) {
|
|
20
|
+
const params = new URLSearchParams({
|
|
21
|
+
resource_type: 'dataset',
|
|
22
|
+
global_resource: 'false',
|
|
23
|
+
team_uuid: this.http.config.teamId,
|
|
24
|
+
});
|
|
25
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/?${params.toString()}`);
|
|
26
|
+
const summaries = (response.data || []).map(ds => ({
|
|
27
|
+
uuid: ds.uuid,
|
|
28
|
+
name: ds.payload.name,
|
|
29
|
+
datasetType: ds.payload.settings.datasetType,
|
|
30
|
+
...(withColumnDefs && { columnDefs: ds.payload.settings.columnDefs }),
|
|
31
|
+
}));
|
|
32
|
+
return { success: true, data: summaries };
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Get a single dataset by UUID.
|
|
36
|
+
*/
|
|
37
|
+
async get(datasetUuid) {
|
|
38
|
+
const params = new URLSearchParams({ resource_type: 'dataset' });
|
|
39
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/${datasetUuid}?${params.toString()}`);
|
|
40
|
+
return { success: true, data: response.data };
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Create a new dataset.
|
|
44
|
+
*
|
|
45
|
+
* @param name - Dataset name
|
|
46
|
+
* @param columnDefs - Array of column definitions
|
|
47
|
+
* @param datasetType - Dataset type (default: '')
|
|
48
|
+
* @param onDimensionMismatch - Dimension mismatch handling
|
|
49
|
+
*/
|
|
50
|
+
async create(name, columnDefs, datasetType = '', onDimensionMismatch) {
|
|
51
|
+
const params = new URLSearchParams({ resource_type: 'dataset' });
|
|
52
|
+
const payload = {
|
|
53
|
+
payload: {
|
|
54
|
+
uuid: '',
|
|
55
|
+
name,
|
|
56
|
+
settings: {
|
|
57
|
+
datasetType,
|
|
58
|
+
columnDefs,
|
|
59
|
+
...(onDimensionMismatch && { on_dimension_mismatch: onDimensionMismatch }),
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
const response = await this.http.request('POST', `/general-store/api/v1/resources/?${params.toString()}`, payload);
|
|
64
|
+
// Sync payload.uuid with resource uuid
|
|
65
|
+
const createdUuid = response.data?.uuid;
|
|
66
|
+
if (createdUuid) {
|
|
67
|
+
const syncResult = await this.update(createdUuid, name, columnDefs, datasetType, onDimensionMismatch);
|
|
68
|
+
if (!syncResult.success) {
|
|
69
|
+
return {
|
|
70
|
+
success: true,
|
|
71
|
+
data: response.data,
|
|
72
|
+
warning: 'Dataset created but payload.uuid sync failed - may cause approval workflow issues',
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
return { success: true, data: syncResult.data };
|
|
76
|
+
}
|
|
77
|
+
return { success: true, data: response.data };
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Update an existing dataset.
|
|
81
|
+
*/
|
|
82
|
+
async update(datasetUuid, name, columnDefs, datasetType = '', onDimensionMismatch) {
|
|
83
|
+
const params = new URLSearchParams({ resource_type: 'dataset' });
|
|
84
|
+
const payload = {
|
|
85
|
+
payload: {
|
|
86
|
+
uuid: datasetUuid,
|
|
87
|
+
name,
|
|
88
|
+
settings: {
|
|
89
|
+
datasetType,
|
|
90
|
+
columnDefs,
|
|
91
|
+
...(onDimensionMismatch && { on_dimension_mismatch: onDimensionMismatch }),
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
const response = await this.http.request('PUT', `/general-store/api/v1/resources/${datasetUuid}?${params.toString()}`, payload);
|
|
96
|
+
return { success: true, data: response.data };
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=datasets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datasets.js","sourceRoot":"","sources":["../../../src/modules/datasets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Exports Module
|
|
3
|
+
*
|
|
4
|
+
* Methods for managing export templates and running data exports.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Export operations for Zudello.
|
|
8
|
+
*/
|
|
9
|
+
export class ExportsModule {
|
|
10
|
+
http;
|
|
11
|
+
constructor(http) {
|
|
12
|
+
this.http = http;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* List export templates.
|
|
16
|
+
*/
|
|
17
|
+
async listTemplates() {
|
|
18
|
+
const params = new URLSearchParams({
|
|
19
|
+
resource_type: 'export_template',
|
|
20
|
+
global_resource: 'false',
|
|
21
|
+
team_uuid: this.http.config.teamId,
|
|
22
|
+
});
|
|
23
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/?${params.toString()}`);
|
|
24
|
+
return { success: true, data: response.data || [] };
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Get a single export template by UUID.
|
|
28
|
+
*/
|
|
29
|
+
async getTemplate(templateUuid) {
|
|
30
|
+
const params = new URLSearchParams({ resource_type: 'export_template' });
|
|
31
|
+
const response = await this.http.request('GET', `/general-store/api/v1/resources/${templateUuid}?${params.toString()}`);
|
|
32
|
+
return { success: true, data: response.data };
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Create an export template.
|
|
36
|
+
*/
|
|
37
|
+
async createTemplate(payload) {
|
|
38
|
+
const params = new URLSearchParams({ resource_type: 'export_template' });
|
|
39
|
+
const response = await this.http.request('POST', `/general-store/api/v1/resources/?${params.toString()}`, { payload, team_uuid: this.http.config.teamId });
|
|
40
|
+
if (!response.success) {
|
|
41
|
+
return { success: false, error: response.message || 'Failed to create export template' };
|
|
42
|
+
}
|
|
43
|
+
return { success: true, data: response.data };
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Update an export template.
|
|
47
|
+
*/
|
|
48
|
+
async updateTemplate(templateUuid, payload) {
|
|
49
|
+
const params = new URLSearchParams({ resource_type: 'export_template' });
|
|
50
|
+
const response = await this.http.request('PUT', `/general-store/api/v1/resources/${templateUuid}?${params.toString()}`, { payload, team_uuid: this.http.config.teamId, uuid: templateUuid });
|
|
51
|
+
if (!response.success) {
|
|
52
|
+
return { success: false, error: response.message || 'Failed to update export template' };
|
|
53
|
+
}
|
|
54
|
+
return { success: true, data: response.data };
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Run an export.
|
|
58
|
+
*
|
|
59
|
+
* @param templateName - Name of the export template
|
|
60
|
+
* @param userUuid - User UUID running the export
|
|
61
|
+
* @param request - Export request with filters
|
|
62
|
+
*/
|
|
63
|
+
async run(templateName, userUuid, request) {
|
|
64
|
+
const params = new URLSearchParams({
|
|
65
|
+
user_uuid: userUuid,
|
|
66
|
+
template_name: templateName,
|
|
67
|
+
});
|
|
68
|
+
await this.http.request('POST', `/team-data/v1/export/csv?${params.toString()}`, request);
|
|
69
|
+
return { success: true };
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* List exports that have been run.
|
|
73
|
+
*/
|
|
74
|
+
async list(limit = 30, offset = 0) {
|
|
75
|
+
const body = {
|
|
76
|
+
model: 'DataExport',
|
|
77
|
+
select: [
|
|
78
|
+
'uuid', 'created_by__uuid', 'created_at', 'status',
|
|
79
|
+
's3_location', 'download_count', 'template_name'
|
|
80
|
+
],
|
|
81
|
+
order_by: ['-created_at'],
|
|
82
|
+
filter: {},
|
|
83
|
+
offset,
|
|
84
|
+
limit,
|
|
85
|
+
};
|
|
86
|
+
const response = await this.http.request('POST', '/team-data/v1/resources/search?ignore_count=false&paginate=true', body);
|
|
87
|
+
return { success: true, data: response.data || [] };
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Get export download URL (presigned S3 URL).
|
|
91
|
+
*/
|
|
92
|
+
async getDownloadUrl(exportUuid) {
|
|
93
|
+
const url = `${this.http.apiBase}/team-data/v1/export/download/${exportUuid}`;
|
|
94
|
+
try {
|
|
95
|
+
const response = await fetch(url, {
|
|
96
|
+
method: 'GET',
|
|
97
|
+
headers: this.http.headers,
|
|
98
|
+
redirect: 'manual',
|
|
99
|
+
});
|
|
100
|
+
// API returns 301/302 redirect with location header containing S3 presigned URL
|
|
101
|
+
if (response.status === 301 || response.status === 302) {
|
|
102
|
+
const downloadUrl = response.headers.get('location');
|
|
103
|
+
if (downloadUrl) {
|
|
104
|
+
return { success: true, data: { downloadUrl } };
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
// If not a redirect, try to get URL from response body
|
|
108
|
+
if (response.ok) {
|
|
109
|
+
const data = await response.json();
|
|
110
|
+
const downloadUrl = data.download_url || data.downloadUrl || data.url;
|
|
111
|
+
if (downloadUrl) {
|
|
112
|
+
return { success: true, data: { downloadUrl } };
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return { success: false, error: `Failed to get download URL: ${response.status}` };
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
return { success: false, error: error.message };
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=exports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../src/modules/exports.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inboxes Module
|
|
3
|
+
*
|
|
4
|
+
* Methods for managing inboxes, checking budgets/contracts, and sending messages.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Inbox and document context operations for Zudello.
|
|
8
|
+
*/
|
|
9
|
+
export class InboxesModule {
|
|
10
|
+
http;
|
|
11
|
+
constructor(http) {
|
|
12
|
+
this.http = http;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get the inbound email domain.
|
|
16
|
+
*/
|
|
17
|
+
async getInboundDomain() {
|
|
18
|
+
const response = await this.http.request('GET', '/team-data/v1/inboxes/inbound-domain');
|
|
19
|
+
return { success: true, data: response.domain };
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* List all inboxes.
|
|
23
|
+
*/
|
|
24
|
+
async list() {
|
|
25
|
+
const response = await this.http.request('GET', '/team-data/v1/inboxes/');
|
|
26
|
+
return { success: true, data: response.data ?? [] };
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Get a single inbox by UUID.
|
|
30
|
+
*/
|
|
31
|
+
async get(inboxUuid) {
|
|
32
|
+
const response = await this.http.request('GET', `/team-data/v1/inboxes/${inboxUuid}`);
|
|
33
|
+
return { success: true, data: response.data };
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Create an inbox.
|
|
37
|
+
*/
|
|
38
|
+
async create(request) {
|
|
39
|
+
const response = await this.http.request('POST', '/team-data/v1/inboxes/', request);
|
|
40
|
+
if (!response.success) {
|
|
41
|
+
return { success: false, error: response.message || 'Failed to create inbox' };
|
|
42
|
+
}
|
|
43
|
+
return { success: true, data: response.data };
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Update an inbox.
|
|
47
|
+
*/
|
|
48
|
+
async update(inboxUuid, request) {
|
|
49
|
+
const response = await this.http.request('PUT', `/team-data/v1/inboxes/${inboxUuid}`, request);
|
|
50
|
+
if (!response.success) {
|
|
51
|
+
return { success: false, error: response.message || 'Failed to update inbox' };
|
|
52
|
+
}
|
|
53
|
+
return { success: true, data: response.data };
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Check document line items against budgets.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* const result = await client.inboxes.checkBudgets({
|
|
60
|
+
* documentUuid: 'inv-uuid',
|
|
61
|
+
* lineItems: [
|
|
62
|
+
* { uuid: 'line-1', amount: 1000, cost_centre: 'CC-001' },
|
|
63
|
+
* { uuid: 'line-2', amount: 2000, cost_centre: 'CC-002' }
|
|
64
|
+
* ]
|
|
65
|
+
* });
|
|
66
|
+
*/
|
|
67
|
+
async checkBudgets(request) {
|
|
68
|
+
const response = await this.http.request('POST', '/team-data/v1/documents/check-budgets', request);
|
|
69
|
+
return { success: true, data: response };
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Check document pricing against contracts.
|
|
73
|
+
*/
|
|
74
|
+
async checkContractPricing(request) {
|
|
75
|
+
const response = await this.http.request('POST', '/team-data/v1/documents/check-contract-pricing', request);
|
|
76
|
+
return { success: true, data: response };
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Push a notification message to Zudello.
|
|
80
|
+
*
|
|
81
|
+
* @param message - The message content
|
|
82
|
+
* @param resourceModel - Optional model name (e.g., 'Transaction')
|
|
83
|
+
* @param resourceUuid - Optional resource UUID
|
|
84
|
+
*/
|
|
85
|
+
async pushMessage(message, resourceModel, resourceUuid) {
|
|
86
|
+
const body = { message };
|
|
87
|
+
if (resourceModel)
|
|
88
|
+
body.resource_model = resourceModel;
|
|
89
|
+
if (resourceUuid)
|
|
90
|
+
body.resource_uuid = resourceUuid;
|
|
91
|
+
await this.http.request('POST', '/team-data/v1/messages/push', body);
|
|
92
|
+
return { success: true };
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=inboxes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inboxes.js","sourceRoot":"","sources":["../../../src/modules/inboxes.ts"],"names":[],"mappings":"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"}
|