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.
Files changed (116) hide show
  1. package/README.md +325 -0
  2. package/dist/cjs/client.js +124 -0
  3. package/dist/cjs/client.js.map +1 -0
  4. package/dist/cjs/constants.js +578 -0
  5. package/dist/cjs/constants.js.map +1 -0
  6. package/dist/cjs/errors.js +195 -0
  7. package/dist/cjs/errors.js.map +1 -0
  8. package/dist/cjs/http/client.js +218 -0
  9. package/dist/cjs/http/client.js.map +1 -0
  10. package/dist/cjs/index.js +80 -0
  11. package/dist/cjs/index.js.map +1 -0
  12. package/dist/cjs/modules/approvals.js +90 -0
  13. package/dist/cjs/modules/approvals.js.map +1 -0
  14. package/dist/cjs/modules/automation.js +110 -0
  15. package/dist/cjs/modules/automation.js.map +1 -0
  16. package/dist/cjs/modules/config.js +264 -0
  17. package/dist/cjs/modules/config.js.map +1 -0
  18. package/dist/cjs/modules/datasets.js +103 -0
  19. package/dist/cjs/modules/datasets.js.map +1 -0
  20. package/dist/cjs/modules/exports.js +126 -0
  21. package/dist/cjs/modules/exports.js.map +1 -0
  22. package/dist/cjs/modules/inboxes.js +99 -0
  23. package/dist/cjs/modules/inboxes.js.map +1 -0
  24. package/dist/cjs/modules/models.js +105 -0
  25. package/dist/cjs/modules/models.js.map +1 -0
  26. package/dist/cjs/modules/org.js +335 -0
  27. package/dist/cjs/modules/org.js.map +1 -0
  28. package/dist/cjs/modules/quick-actions.js +71 -0
  29. package/dist/cjs/modules/quick-actions.js.map +1 -0
  30. package/dist/cjs/modules/resources.js +236 -0
  31. package/dist/cjs/modules/resources.js.map +1 -0
  32. package/dist/cjs/modules/search.js +188 -0
  33. package/dist/cjs/modules/search.js.map +1 -0
  34. package/dist/cjs/modules/sentences.js +155 -0
  35. package/dist/cjs/modules/sentences.js.map +1 -0
  36. package/dist/cjs/modules/users.js +120 -0
  37. package/dist/cjs/modules/users.js.map +1 -0
  38. package/dist/cjs/types.js +8 -0
  39. package/dist/cjs/types.js.map +1 -0
  40. package/dist/esm/client.js +120 -0
  41. package/dist/esm/client.js.map +1 -0
  42. package/dist/esm/constants.js +565 -0
  43. package/dist/esm/constants.js.map +1 -0
  44. package/dist/esm/errors.js +183 -0
  45. package/dist/esm/errors.js.map +1 -0
  46. package/dist/esm/http/client.js +214 -0
  47. package/dist/esm/http/client.js.map +1 -0
  48. package/dist/esm/index.js +49 -0
  49. package/dist/esm/index.js.map +1 -0
  50. package/dist/esm/modules/approvals.js +86 -0
  51. package/dist/esm/modules/approvals.js.map +1 -0
  52. package/dist/esm/modules/automation.js +106 -0
  53. package/dist/esm/modules/automation.js.map +1 -0
  54. package/dist/esm/modules/config.js +260 -0
  55. package/dist/esm/modules/config.js.map +1 -0
  56. package/dist/esm/modules/datasets.js +99 -0
  57. package/dist/esm/modules/datasets.js.map +1 -0
  58. package/dist/esm/modules/exports.js +122 -0
  59. package/dist/esm/modules/exports.js.map +1 -0
  60. package/dist/esm/modules/inboxes.js +95 -0
  61. package/dist/esm/modules/inboxes.js.map +1 -0
  62. package/dist/esm/modules/models.js +101 -0
  63. package/dist/esm/modules/models.js.map +1 -0
  64. package/dist/esm/modules/org.js +331 -0
  65. package/dist/esm/modules/org.js.map +1 -0
  66. package/dist/esm/modules/quick-actions.js +67 -0
  67. package/dist/esm/modules/quick-actions.js.map +1 -0
  68. package/dist/esm/modules/resources.js +232 -0
  69. package/dist/esm/modules/resources.js.map +1 -0
  70. package/dist/esm/modules/search.js +184 -0
  71. package/dist/esm/modules/search.js.map +1 -0
  72. package/dist/esm/modules/sentences.js +151 -0
  73. package/dist/esm/modules/sentences.js.map +1 -0
  74. package/dist/esm/modules/users.js +116 -0
  75. package/dist/esm/modules/users.js.map +1 -0
  76. package/dist/esm/types.js +7 -0
  77. package/dist/esm/types.js.map +1 -0
  78. package/dist/types/client.d.ts +105 -0
  79. package/dist/types/client.d.ts.map +1 -0
  80. package/dist/types/constants.d.ts +505 -0
  81. package/dist/types/constants.d.ts.map +1 -0
  82. package/dist/types/errors.d.ts +143 -0
  83. package/dist/types/errors.d.ts.map +1 -0
  84. package/dist/types/http/client.d.ts +42 -0
  85. package/dist/types/http/client.d.ts.map +1 -0
  86. package/dist/types/index.d.ts +37 -0
  87. package/dist/types/index.d.ts.map +1 -0
  88. package/dist/types/modules/approvals.d.ts +62 -0
  89. package/dist/types/modules/approvals.d.ts.map +1 -0
  90. package/dist/types/modules/automation.d.ts +79 -0
  91. package/dist/types/modules/automation.d.ts.map +1 -0
  92. package/dist/types/modules/config.d.ts +173 -0
  93. package/dist/types/modules/config.d.ts.map +1 -0
  94. package/dist/types/modules/datasets.d.ts +55 -0
  95. package/dist/types/modules/datasets.d.ts.map +1 -0
  96. package/dist/types/modules/exports.d.ts +76 -0
  97. package/dist/types/modules/exports.d.ts.map +1 -0
  98. package/dist/types/modules/inboxes.d.ts +91 -0
  99. package/dist/types/modules/inboxes.d.ts.map +1 -0
  100. package/dist/types/modules/models.d.ts +91 -0
  101. package/dist/types/modules/models.d.ts.map +1 -0
  102. package/dist/types/modules/org.d.ts +122 -0
  103. package/dist/types/modules/org.d.ts.map +1 -0
  104. package/dist/types/modules/quick-actions.d.ts +58 -0
  105. package/dist/types/modules/quick-actions.d.ts.map +1 -0
  106. package/dist/types/modules/resources.d.ts +111 -0
  107. package/dist/types/modules/resources.d.ts.map +1 -0
  108. package/dist/types/modules/search.d.ts +72 -0
  109. package/dist/types/modules/search.d.ts.map +1 -0
  110. package/dist/types/modules/sentences.d.ts +105 -0
  111. package/dist/types/modules/sentences.d.ts.map +1 -0
  112. package/dist/types/modules/users.d.ts +65 -0
  113. package/dist/types/modules/users.d.ts.map +1 -0
  114. package/dist/types/types.d.ts +2056 -0
  115. package/dist/types/types.d.ts.map +1 -0
  116. package/package.json +67 -0
@@ -0,0 +1,578 @@
1
+ "use strict";
2
+ /**
3
+ * Zudello SDK Constants
4
+ *
5
+ * Type-safe constants for models, modules, submodules, and status keys.
6
+ * Includes Zod schemas for runtime validation.
7
+ *
8
+ * @example
9
+ * import { MODELS, MODULES, SUBMODULES, zudelloModelSchema } from 'zudello-chat-sdk';
10
+ *
11
+ * // Type-safe constants
12
+ * const invoices = await client.search.query({
13
+ * model: MODELS.Transaction,
14
+ * module: MODULES.PURCHASING,
15
+ * submodule: SUBMODULES.INVOICE,
16
+ * filter: { status: 'REVIEW' }
17
+ * });
18
+ *
19
+ * // Runtime validation with Zod
20
+ * const validModel = zudelloModelSchema.parse('Transaction');
21
+ */
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.zudelloStatusKeySchema = exports.zudelloSubmoduleSchema = exports.zudelloModuleSchema = exports.zudelloModelSchema = exports.ZUDELLO_MODEL_COMBINATIONS = exports.STATUS_KEYS = exports.SUBMODULES = exports.MODULES = exports.MODELS = exports.ZUDELLO_STATUS_KEYS = exports.ZUDELLO_SUBMODULES = exports.ZUDELLO_MODULES = exports.ZUDELLO_MODELS = void 0;
24
+ exports.isValidModel = isValidModel;
25
+ exports.isValidModule = isValidModule;
26
+ exports.isValidSubmodule = isValidSubmodule;
27
+ exports.isValidStatusKey = isValidStatusKey;
28
+ exports.isValidCombination = isValidCombination;
29
+ exports.getValidModulesForModel = getValidModulesForModel;
30
+ exports.getValidSubmodulesForModel = getValidSubmodulesForModel;
31
+ exports.getModelsForModule = getModelsForModule;
32
+ exports.getCombinationsForModel = getCombinationsForModel;
33
+ exports.createValidatedModelSchema = createValidatedModelSchema;
34
+ const zod_1 = require("zod");
35
+ // ============================================================================
36
+ // Core Constants (as arrays for Zod enum compatibility)
37
+ // ============================================================================
38
+ /**
39
+ * Valid Zudello models as array.
40
+ */
41
+ exports.ZUDELLO_MODELS = [
42
+ // Budgets
43
+ 'Budget',
44
+ // Contracts
45
+ 'Contract',
46
+ // Dimensional data
47
+ 'Account',
48
+ 'AccountCategory',
49
+ 'AccountGroup',
50
+ 'AccountingPeriod',
51
+ 'AmortizationSchedule',
52
+ 'Batch',
53
+ 'Bin',
54
+ 'ContractCategory',
55
+ 'ContractGroup',
56
+ 'CostCentre',
57
+ 'CostType',
58
+ 'Currency',
59
+ 'CustomerCategory',
60
+ 'CustomerGroup',
61
+ 'Department',
62
+ 'ExpenseCategory',
63
+ 'FixedAsset',
64
+ 'ItemCategory',
65
+ 'ItemGroup',
66
+ 'Location',
67
+ 'MileageRate',
68
+ 'PaymentMethod',
69
+ 'PaymentTerm',
70
+ 'Project',
71
+ 'ProjectGroup',
72
+ 'ProjectTask',
73
+ 'ProjectType',
74
+ 'Subsidiary',
75
+ 'SupplierCategory',
76
+ 'SupplierGroup',
77
+ 'TaxRate',
78
+ 'TaxSolution',
79
+ 'TeamAddress',
80
+ 'UnitOfMeasure',
81
+ 'Warehouse',
82
+ 'Zone',
83
+ // Transactions (multi-module)
84
+ 'Transaction',
85
+ // Items
86
+ 'Item',
87
+ // Relationships
88
+ 'Customer',
89
+ 'Employee',
90
+ 'Supplier',
91
+ ];
92
+ /**
93
+ * Valid Zudello modules as array.
94
+ */
95
+ exports.ZUDELLO_MODULES = [
96
+ 'BUDGETS',
97
+ 'CONTRACTS',
98
+ 'DIMENSIONS',
99
+ 'EXPENSES',
100
+ 'INVENTORY',
101
+ 'PURCHASING',
102
+ 'RELATIONSHIPS',
103
+ 'SALES',
104
+ ];
105
+ /**
106
+ * Valid Zudello submodules as array.
107
+ */
108
+ exports.ZUDELLO_SUBMODULES = [
109
+ // Budget submodules
110
+ 'BUDGET',
111
+ // Contract submodules
112
+ 'CONTRACT',
113
+ // Dimension submodules
114
+ 'ACCOUNT',
115
+ 'ACCOUNT_CATEGORY',
116
+ 'ACCOUNT_GROUP',
117
+ 'ACCOUNTING_PERIOD',
118
+ 'AMORTIZATION_SCHEDULE',
119
+ 'BATCH',
120
+ 'BIN',
121
+ 'CONTRACT_CATEGORY',
122
+ 'CONTRACT_GROUP',
123
+ 'COST_CENTRE',
124
+ 'COST_TYPE',
125
+ 'CURRENCY',
126
+ 'CUSTOMER_CATEGORY',
127
+ 'CUSTOMER_GROUP',
128
+ 'DEPARTMENT',
129
+ 'EXPENSE_CATEGORY',
130
+ 'FIXED_ASSET',
131
+ 'ITEM_CATEGORY',
132
+ 'ITEM_GROUP',
133
+ 'LOCATION',
134
+ 'MILEAGE_RATE',
135
+ 'PAYMENT_METHOD',
136
+ 'PAYMENT_TERM',
137
+ 'PROJECT',
138
+ 'PROJECT_GROUP',
139
+ 'PROJECT_TASK',
140
+ 'PROJECT_TYPE',
141
+ 'SUBSIDIARY',
142
+ 'SUPPLIER_CATEGORY',
143
+ 'SUPPLIER_GROUP',
144
+ 'TAX_RATE',
145
+ 'TAX_SOLUTION',
146
+ 'TEAM_ADDRESS',
147
+ 'UNIT_OF_MEASURE',
148
+ 'WAREHOUSE',
149
+ 'ZONE',
150
+ // Expense submodules
151
+ 'CLAIM',
152
+ 'EXPENSE',
153
+ 'MILEAGE',
154
+ 'PAYMENT',
155
+ 'REFUND',
156
+ // Inventory submodules
157
+ 'CATALOGUE',
158
+ 'RECEIPT',
159
+ // Purchasing submodules
160
+ 'CREDIT',
161
+ 'INVOICE',
162
+ 'ORDER',
163
+ 'QUOTE',
164
+ 'REQUISITION',
165
+ 'RETURN',
166
+ 'STATEMENT',
167
+ // Relationship submodules
168
+ 'CUSTOMER',
169
+ 'EMPLOYEE',
170
+ 'SUPPLIER',
171
+ // Sales submodules
172
+ 'REMITTANCE',
173
+ ];
174
+ /**
175
+ * All unique status keys used across Zudello modules.
176
+ * IMPORTANT: Statuses are user-configurable per organization.
177
+ */
178
+ exports.ZUDELLO_STATUS_KEYS = [
179
+ // Common statuses
180
+ 'DRAFT',
181
+ 'ACTIVE',
182
+ 'INACTIVE',
183
+ 'DELETED',
184
+ 'ARCHIVED',
185
+ 'PROCESSING',
186
+ // Approval workflow statuses
187
+ 'APPROVAL',
188
+ 'REJECT',
189
+ 'REJECTED',
190
+ 'UNABLE',
191
+ // Document workflow statuses
192
+ 'SCANNING',
193
+ 'REVIEW',
194
+ 'READY',
195
+ 'COMPLETE',
196
+ 'CLOSED',
197
+ 'DUPLICATE',
198
+ // Purchasing-specific statuses
199
+ 'NEW_VENDOR',
200
+ 'PO_MISSING',
201
+ 'PO_VARIANCE',
202
+ 'GR_PENDING',
203
+ 'PENDING',
204
+ 'PLACED',
205
+ 'PARTIALLY_RECEIVED',
206
+ 'RECEIVED',
207
+ 'PARTIALLY_INVOICED',
208
+ 'INVOICED_NOT_RECEIVED',
209
+ // Statement-specific statuses
210
+ 'READY_TO_RECONCILE',
211
+ 'RECONCILE',
212
+ 'REQUESTED',
213
+ // Sales-specific statuses
214
+ 'CUSTOMER_CHECK',
215
+ 'ITEM_CHECK',
216
+ 'PRICE_CHECK',
217
+ 'STOCK_CHECK',
218
+ 'UNSUPPORTED',
219
+ ];
220
+ // ============================================================================
221
+ // Legacy Object Constants (for backward compatibility)
222
+ // ============================================================================
223
+ /**
224
+ * Valid Zudello models as object.
225
+ * @deprecated Use ZUDELLO_MODELS array for Zod compatibility
226
+ */
227
+ exports.MODELS = {
228
+ Budget: 'Budget',
229
+ Contract: 'Contract',
230
+ Account: 'Account',
231
+ AccountCategory: 'AccountCategory',
232
+ AccountGroup: 'AccountGroup',
233
+ AccountingPeriod: 'AccountingPeriod',
234
+ AmortizationSchedule: 'AmortizationSchedule',
235
+ Batch: 'Batch',
236
+ Bin: 'Bin',
237
+ ContractCategory: 'ContractCategory',
238
+ ContractGroup: 'ContractGroup',
239
+ CostCentre: 'CostCentre',
240
+ CostType: 'CostType',
241
+ Currency: 'Currency',
242
+ CustomerCategory: 'CustomerCategory',
243
+ CustomerGroup: 'CustomerGroup',
244
+ Department: 'Department',
245
+ ExpenseCategory: 'ExpenseCategory',
246
+ FixedAsset: 'FixedAsset',
247
+ ItemCategory: 'ItemCategory',
248
+ ItemGroup: 'ItemGroup',
249
+ Location: 'Location',
250
+ MileageRate: 'MileageRate',
251
+ PaymentMethod: 'PaymentMethod',
252
+ PaymentTerm: 'PaymentTerm',
253
+ Project: 'Project',
254
+ ProjectGroup: 'ProjectGroup',
255
+ ProjectTask: 'ProjectTask',
256
+ ProjectType: 'ProjectType',
257
+ Subsidiary: 'Subsidiary',
258
+ SupplierCategory: 'SupplierCategory',
259
+ SupplierGroup: 'SupplierGroup',
260
+ TaxRate: 'TaxRate',
261
+ TaxSolution: 'TaxSolution',
262
+ TeamAddress: 'TeamAddress',
263
+ UnitOfMeasure: 'UnitOfMeasure',
264
+ Warehouse: 'Warehouse',
265
+ Zone: 'Zone',
266
+ Transaction: 'Transaction',
267
+ Item: 'Item',
268
+ Customer: 'Customer',
269
+ Employee: 'Employee',
270
+ Supplier: 'Supplier',
271
+ };
272
+ /**
273
+ * Valid Zudello modules as object.
274
+ * @deprecated Use ZUDELLO_MODULES array for Zod compatibility
275
+ */
276
+ exports.MODULES = {
277
+ BUDGETS: 'BUDGETS',
278
+ CONTRACTS: 'CONTRACTS',
279
+ DIMENSIONS: 'DIMENSIONS',
280
+ EXPENSES: 'EXPENSES',
281
+ INVENTORY: 'INVENTORY',
282
+ PURCHASING: 'PURCHASING',
283
+ RELATIONSHIPS: 'RELATIONSHIPS',
284
+ SALES: 'SALES',
285
+ };
286
+ /**
287
+ * Valid Zudello submodules as object.
288
+ * @deprecated Use ZUDELLO_SUBMODULES array for Zod compatibility
289
+ */
290
+ exports.SUBMODULES = {
291
+ BUDGET: 'BUDGET',
292
+ CONTRACT: 'CONTRACT',
293
+ ACCOUNT: 'ACCOUNT',
294
+ ACCOUNT_CATEGORY: 'ACCOUNT_CATEGORY',
295
+ ACCOUNT_GROUP: 'ACCOUNT_GROUP',
296
+ ACCOUNTING_PERIOD: 'ACCOUNTING_PERIOD',
297
+ AMORTIZATION_SCHEDULE: 'AMORTIZATION_SCHEDULE',
298
+ BATCH: 'BATCH',
299
+ BIN: 'BIN',
300
+ CONTRACT_CATEGORY: 'CONTRACT_CATEGORY',
301
+ CONTRACT_GROUP: 'CONTRACT_GROUP',
302
+ COST_CENTRE: 'COST_CENTRE',
303
+ COST_TYPE: 'COST_TYPE',
304
+ CURRENCY: 'CURRENCY',
305
+ CUSTOMER_CATEGORY: 'CUSTOMER_CATEGORY',
306
+ CUSTOMER_GROUP: 'CUSTOMER_GROUP',
307
+ DEPARTMENT: 'DEPARTMENT',
308
+ EXPENSE_CATEGORY: 'EXPENSE_CATEGORY',
309
+ FIXED_ASSET: 'FIXED_ASSET',
310
+ ITEM_CATEGORY: 'ITEM_CATEGORY',
311
+ ITEM_GROUP: 'ITEM_GROUP',
312
+ LOCATION: 'LOCATION',
313
+ MILEAGE_RATE: 'MILEAGE_RATE',
314
+ PAYMENT_METHOD: 'PAYMENT_METHOD',
315
+ PAYMENT_TERM: 'PAYMENT_TERM',
316
+ PROJECT: 'PROJECT',
317
+ PROJECT_GROUP: 'PROJECT_GROUP',
318
+ PROJECT_TASK: 'PROJECT_TASK',
319
+ PROJECT_TYPE: 'PROJECT_TYPE',
320
+ SUBSIDIARY: 'SUBSIDIARY',
321
+ SUPPLIER_CATEGORY: 'SUPPLIER_CATEGORY',
322
+ SUPPLIER_GROUP: 'SUPPLIER_GROUP',
323
+ TAX_RATE: 'TAX_RATE',
324
+ TAX_SOLUTION: 'TAX_SOLUTION',
325
+ TEAM_ADDRESS: 'TEAM_ADDRESS',
326
+ UNIT_OF_MEASURE: 'UNIT_OF_MEASURE',
327
+ WAREHOUSE: 'WAREHOUSE',
328
+ ZONE: 'ZONE',
329
+ CLAIM: 'CLAIM',
330
+ EXPENSE: 'EXPENSE',
331
+ MILEAGE: 'MILEAGE',
332
+ PAYMENT: 'PAYMENT',
333
+ REFUND: 'REFUND',
334
+ CATALOGUE: 'CATALOGUE',
335
+ RECEIPT: 'RECEIPT',
336
+ CREDIT: 'CREDIT',
337
+ INVOICE: 'INVOICE',
338
+ ORDER: 'ORDER',
339
+ QUOTE: 'QUOTE',
340
+ REQUISITION: 'REQUISITION',
341
+ RETURN: 'RETURN',
342
+ STATEMENT: 'STATEMENT',
343
+ CUSTOMER: 'CUSTOMER',
344
+ EMPLOYEE: 'EMPLOYEE',
345
+ SUPPLIER: 'SUPPLIER',
346
+ REMITTANCE: 'REMITTANCE',
347
+ };
348
+ /**
349
+ * Common status keys as object.
350
+ * @deprecated Use ZUDELLO_STATUS_KEYS array for Zod compatibility
351
+ */
352
+ exports.STATUS_KEYS = {
353
+ DRAFT: 'DRAFT',
354
+ ACTIVE: 'ACTIVE',
355
+ INACTIVE: 'INACTIVE',
356
+ DELETED: 'DELETED',
357
+ ARCHIVED: 'ARCHIVED',
358
+ PROCESSING: 'PROCESSING',
359
+ APPROVAL: 'APPROVAL',
360
+ REJECT: 'REJECT',
361
+ REJECTED: 'REJECTED',
362
+ UNABLE: 'UNABLE',
363
+ SCANNING: 'SCANNING',
364
+ REVIEW: 'REVIEW',
365
+ READY: 'READY',
366
+ COMPLETE: 'COMPLETE',
367
+ CLOSED: 'CLOSED',
368
+ DUPLICATE: 'DUPLICATE',
369
+ NEW_VENDOR: 'NEW_VENDOR',
370
+ PO_MISSING: 'PO_MISSING',
371
+ PO_VARIANCE: 'PO_VARIANCE',
372
+ GR_PENDING: 'GR_PENDING',
373
+ PENDING: 'PENDING',
374
+ PLACED: 'PLACED',
375
+ PARTIALLY_RECEIVED: 'PARTIALLY_RECEIVED',
376
+ RECEIVED: 'RECEIVED',
377
+ PARTIALLY_INVOICED: 'PARTIALLY_INVOICED',
378
+ };
379
+ // ============================================================================
380
+ // Model/Module/Submodule Combinations
381
+ // ============================================================================
382
+ /**
383
+ * Valid combinations of model, module, and submodule.
384
+ * Based on the official Zudello API specification.
385
+ */
386
+ exports.ZUDELLO_MODEL_COMBINATIONS = [
387
+ // Budgets
388
+ { model: 'Budget', module: 'BUDGETS', submodule: 'BUDGET' },
389
+ // Contracts
390
+ { model: 'Contract', module: 'CONTRACTS', submodule: 'CONTRACT' },
391
+ // Dimensions
392
+ { model: 'Account', module: 'DIMENSIONS', submodule: 'ACCOUNT' },
393
+ { model: 'AccountCategory', module: 'DIMENSIONS', submodule: 'ACCOUNT_CATEGORY' },
394
+ { model: 'AccountGroup', module: 'DIMENSIONS', submodule: 'ACCOUNT_GROUP' },
395
+ { model: 'AccountingPeriod', module: 'DIMENSIONS', submodule: 'ACCOUNTING_PERIOD' },
396
+ { model: 'AmortizationSchedule', module: 'DIMENSIONS', submodule: 'AMORTIZATION_SCHEDULE' },
397
+ { model: 'Batch', module: 'DIMENSIONS', submodule: 'BATCH' },
398
+ { model: 'Bin', module: 'DIMENSIONS', submodule: 'BIN' },
399
+ { model: 'ContractCategory', module: 'DIMENSIONS', submodule: 'CONTRACT_CATEGORY' },
400
+ { model: 'ContractGroup', module: 'DIMENSIONS', submodule: 'CONTRACT_GROUP' },
401
+ { model: 'CostCentre', module: 'DIMENSIONS', submodule: 'COST_CENTRE' },
402
+ { model: 'CostType', module: 'DIMENSIONS', submodule: 'COST_TYPE' },
403
+ { model: 'Currency', module: 'DIMENSIONS', submodule: 'CURRENCY' },
404
+ { model: 'CustomerCategory', module: 'DIMENSIONS', submodule: 'CUSTOMER_CATEGORY' },
405
+ { model: 'CustomerGroup', module: 'DIMENSIONS', submodule: 'CUSTOMER_GROUP' },
406
+ { model: 'Department', module: 'DIMENSIONS', submodule: 'DEPARTMENT' },
407
+ { model: 'ExpenseCategory', module: 'DIMENSIONS', submodule: 'EXPENSE_CATEGORY' },
408
+ { model: 'FixedAsset', module: 'DIMENSIONS', submodule: 'FIXED_ASSET' },
409
+ { model: 'ItemCategory', module: 'DIMENSIONS', submodule: 'ITEM_CATEGORY' },
410
+ { model: 'ItemGroup', module: 'DIMENSIONS', submodule: 'ITEM_GROUP' },
411
+ { model: 'Location', module: 'DIMENSIONS', submodule: 'LOCATION' },
412
+ { model: 'MileageRate', module: 'DIMENSIONS', submodule: 'MILEAGE_RATE' },
413
+ { model: 'PaymentMethod', module: 'DIMENSIONS', submodule: 'PAYMENT_METHOD' },
414
+ { model: 'PaymentTerm', module: 'DIMENSIONS', submodule: 'PAYMENT_TERM' },
415
+ { model: 'Project', module: 'DIMENSIONS', submodule: 'PROJECT' },
416
+ { model: 'ProjectGroup', module: 'DIMENSIONS', submodule: 'PROJECT_GROUP' },
417
+ { model: 'ProjectTask', module: 'DIMENSIONS', submodule: 'PROJECT_TASK' },
418
+ { model: 'ProjectType', module: 'DIMENSIONS', submodule: 'PROJECT_TYPE' },
419
+ { model: 'Subsidiary', module: 'DIMENSIONS', submodule: 'SUBSIDIARY' },
420
+ { model: 'SupplierCategory', module: 'DIMENSIONS', submodule: 'SUPPLIER_CATEGORY' },
421
+ { model: 'SupplierGroup', module: 'DIMENSIONS', submodule: 'SUPPLIER_GROUP' },
422
+ { model: 'TaxRate', module: 'DIMENSIONS', submodule: 'TAX_RATE' },
423
+ { model: 'TaxSolution', module: 'DIMENSIONS', submodule: 'TAX_SOLUTION' },
424
+ { model: 'TeamAddress', module: 'DIMENSIONS', submodule: 'TEAM_ADDRESS' },
425
+ { model: 'UnitOfMeasure', module: 'DIMENSIONS', submodule: 'UNIT_OF_MEASURE' },
426
+ { model: 'Warehouse', module: 'DIMENSIONS', submodule: 'WAREHOUSE' },
427
+ { model: 'Zone', module: 'DIMENSIONS', submodule: 'ZONE' },
428
+ // Expenses - Transaction model with multiple submodules
429
+ { model: 'Transaction', module: 'EXPENSES', submodule: 'CLAIM' },
430
+ { model: 'Transaction', module: 'EXPENSES', submodule: 'EXPENSE' },
431
+ { model: 'Transaction', module: 'EXPENSES', submodule: 'MILEAGE' },
432
+ { model: 'Transaction', module: 'EXPENSES', submodule: 'PAYMENT' },
433
+ { model: 'Transaction', module: 'EXPENSES', submodule: 'REFUND' },
434
+ // Inventory
435
+ { model: 'Item', module: 'INVENTORY', submodule: 'CATALOGUE' },
436
+ { model: 'Transaction', module: 'INVENTORY', submodule: 'RECEIPT' },
437
+ // Purchasing - Transaction model with multiple submodules
438
+ { model: 'Transaction', module: 'PURCHASING', submodule: 'CREDIT' },
439
+ { model: 'Transaction', module: 'PURCHASING', submodule: 'INVOICE' },
440
+ { model: 'Transaction', module: 'PURCHASING', submodule: 'ORDER' },
441
+ { model: 'Transaction', module: 'PURCHASING', submodule: 'QUOTE' },
442
+ { model: 'Transaction', module: 'PURCHASING', submodule: 'REQUISITION' },
443
+ { model: 'Transaction', module: 'PURCHASING', submodule: 'RETURN' },
444
+ { model: 'Transaction', module: 'PURCHASING', submodule: 'STATEMENT' },
445
+ // Relationships
446
+ { model: 'Customer', module: 'RELATIONSHIPS', submodule: 'CUSTOMER' },
447
+ { model: 'Employee', module: 'RELATIONSHIPS', submodule: 'EMPLOYEE' },
448
+ { model: 'Supplier', module: 'RELATIONSHIPS', submodule: 'SUPPLIER' },
449
+ // Sales - Transaction model with multiple submodules
450
+ { model: 'Transaction', module: 'SALES', submodule: 'CREDIT' },
451
+ { model: 'Transaction', module: 'SALES', submodule: 'INVOICE' },
452
+ { model: 'Transaction', module: 'SALES', submodule: 'ORDER' },
453
+ { model: 'Transaction', module: 'SALES', submodule: 'QUOTE' },
454
+ { model: 'Transaction', module: 'SALES', submodule: 'REMITTANCE' },
455
+ ];
456
+ // ============================================================================
457
+ // Zod Validation Schemas
458
+ // ============================================================================
459
+ /**
460
+ * Zod schema for Zudello models.
461
+ * Use for runtime validation of model inputs.
462
+ */
463
+ exports.zudelloModelSchema = zod_1.z.enum(exports.ZUDELLO_MODELS).describe('Valid Zudello model. Common models: Transaction (invoices, orders, receipts), Item (products, inventory), ' +
464
+ 'Supplier/Customer/Employee (business entities), Budget/Contract (financial documents), ' +
465
+ 'Account/Department/Location (dimensional data).');
466
+ /**
467
+ * Zod schema for Zudello modules.
468
+ * Use for runtime validation of module inputs.
469
+ */
470
+ exports.zudelloModuleSchema = zod_1.z.enum(exports.ZUDELLO_MODULES).describe('Zudello module. Functional areas: BUDGETS (budget planning), CONTRACTS (contract management), ' +
471
+ 'DIMENSIONS (reference data), EXPENSES (expense tracking), INVENTORY (stock management), ' +
472
+ 'PURCHASING (procurement), RELATIONSHIPS (entities), SALES (revenue tracking).');
473
+ /**
474
+ * Zod schema for Zudello submodules.
475
+ * Use for runtime validation of submodule inputs.
476
+ */
477
+ exports.zudelloSubmoduleSchema = zod_1.z.enum(exports.ZUDELLO_SUBMODULES).describe('Zudello submodule. Specific contexts within modules, e.g., INVOICE/ORDER/QUOTE for transactions, ' +
478
+ 'CATALOGUE for items, CUSTOMER/SUPPLIER/EMPLOYEE for relationships.');
479
+ /**
480
+ * Zod schema for Zudello status keys.
481
+ * IMPORTANT: Statuses are user-configurable. These are default values.
482
+ */
483
+ exports.zudelloStatusKeySchema = zod_1.z.enum(exports.ZUDELLO_STATUS_KEYS).describe('Status key for filtering documents. Common values: DRAFT, REVIEW, APPROVAL, READY, COMPLETE, ACTIVE, INACTIVE. ' +
484
+ 'IMPORTANT: Statuses are user-configurable per organization.');
485
+ // ============================================================================
486
+ // Validation Functions
487
+ // ============================================================================
488
+ /**
489
+ * Check if a string is a valid Zudello model
490
+ */
491
+ function isValidModel(model) {
492
+ return exports.ZUDELLO_MODELS.includes(model);
493
+ }
494
+ /**
495
+ * Check if a string is a valid Zudello module
496
+ */
497
+ function isValidModule(module) {
498
+ return exports.ZUDELLO_MODULES.includes(module);
499
+ }
500
+ /**
501
+ * Check if a string is a valid Zudello submodule
502
+ */
503
+ function isValidSubmodule(submodule) {
504
+ return exports.ZUDELLO_SUBMODULES.includes(submodule);
505
+ }
506
+ /**
507
+ * Check if a string is a valid Zudello status key
508
+ */
509
+ function isValidStatusKey(statusKey) {
510
+ return exports.ZUDELLO_STATUS_KEYS.includes(statusKey);
511
+ }
512
+ /**
513
+ * Check if a model/module/submodule combination is valid
514
+ */
515
+ function isValidCombination(model, module, submodule) {
516
+ // If only model is provided, check if it's a valid model
517
+ if (!module && !submodule) {
518
+ return isValidModel(model);
519
+ }
520
+ // If module/submodule are provided, check the exact combination
521
+ return exports.ZUDELLO_MODEL_COMBINATIONS.some(combo => {
522
+ const modelMatch = combo.model === model;
523
+ const moduleMatch = !module || combo.module === module;
524
+ const submoduleMatch = !submodule || combo.submodule === submodule;
525
+ return modelMatch && moduleMatch && submoduleMatch;
526
+ });
527
+ }
528
+ /**
529
+ * Get valid modules for a given model
530
+ */
531
+ function getValidModulesForModel(model) {
532
+ return [...new Set(exports.ZUDELLO_MODEL_COMBINATIONS
533
+ .filter(combo => combo.model === model)
534
+ .map(combo => combo.module))];
535
+ }
536
+ /**
537
+ * Get valid submodules for a given model and optional module
538
+ */
539
+ function getValidSubmodulesForModel(model, module) {
540
+ return [...new Set(exports.ZUDELLO_MODEL_COMBINATIONS
541
+ .filter(combo => {
542
+ const modelMatch = combo.model === model;
543
+ const moduleMatch = !module || combo.module === module;
544
+ return modelMatch && moduleMatch;
545
+ })
546
+ .map(combo => combo.submodule))];
547
+ }
548
+ /**
549
+ * Get models available in a specific module
550
+ */
551
+ function getModelsForModule(module) {
552
+ return [...new Set(exports.ZUDELLO_MODEL_COMBINATIONS
553
+ .filter(combo => combo.module === module)
554
+ .map(combo => combo.model))];
555
+ }
556
+ /**
557
+ * Get all valid combinations for a specific model
558
+ */
559
+ function getCombinationsForModel(model) {
560
+ return exports.ZUDELLO_MODEL_COMBINATIONS.filter(combo => combo.model === model);
561
+ }
562
+ /**
563
+ * Create a Zod schema that validates model/module/submodule combinations
564
+ */
565
+ function createValidatedModelSchema(moduleParam, submoduleParam) {
566
+ return zod_1.z.string().refine((model) => {
567
+ if (!isValidModel(model)) {
568
+ return false;
569
+ }
570
+ if (moduleParam || submoduleParam) {
571
+ return isValidCombination(model, moduleParam, submoduleParam);
572
+ }
573
+ return true;
574
+ }, {
575
+ message: 'Invalid model or model/module/submodule combination.',
576
+ });
577
+ }
578
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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"}