@zudello/modelcontextprotocol 1.0.0 → 1.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 (259) hide show
  1. package/README.md +115 -512
  2. package/dist/services/zudello/admin.d.ts +124 -74
  3. package/dist/services/zudello/admin.d.ts.map +1 -1
  4. package/dist/services/zudello/admin.js +443 -112
  5. package/dist/services/zudello/admin.js.map +1 -1
  6. package/dist/services/zudello/document-context.js +2 -2
  7. package/dist/services/zudello/document-context.js.map +1 -1
  8. package/dist/services/zudello/inboxes.d.ts +88 -7
  9. package/dist/services/zudello/inboxes.d.ts.map +1 -1
  10. package/dist/services/zudello/inboxes.js +317 -34
  11. package/dist/services/zudello/inboxes.js.map +1 -1
  12. package/dist/services/zudello/users.d.ts +36 -6
  13. package/dist/services/zudello/users.d.ts.map +1 -1
  14. package/dist/services/zudello/users.js +183 -82
  15. package/dist/services/zudello/users.js.map +1 -1
  16. package/dist/tools/admin/datasets/create-dataset.d.ts +35 -7
  17. package/dist/tools/admin/datasets/create-dataset.d.ts.map +1 -1
  18. package/dist/tools/admin/datasets/create-dataset.js +59 -20
  19. package/dist/tools/admin/datasets/create-dataset.js.map +1 -1
  20. package/dist/tools/admin/datasets/get-dataset.d.ts +1 -1
  21. package/dist/tools/admin/datasets/get-dataset.d.ts.map +1 -1
  22. package/dist/tools/admin/datasets/get-dataset.js +8 -2
  23. package/dist/tools/admin/datasets/get-dataset.js.map +1 -1
  24. package/dist/tools/admin/datasets/list-datasets.d.ts +2 -4
  25. package/dist/tools/admin/datasets/list-datasets.d.ts.map +1 -1
  26. package/dist/tools/admin/datasets/list-datasets.js +21 -11
  27. package/dist/tools/admin/datasets/list-datasets.js.map +1 -1
  28. package/dist/tools/admin/datasets/update-dataset.d.ts +39 -6
  29. package/dist/tools/admin/datasets/update-dataset.d.ts.map +1 -1
  30. package/dist/tools/admin/datasets/update-dataset.js +39 -17
  31. package/dist/tools/admin/datasets/update-dataset.js.map +1 -1
  32. package/dist/tools/admin/fields/create-field.d.ts +7 -17
  33. package/dist/tools/admin/fields/create-field.d.ts.map +1 -1
  34. package/dist/tools/admin/fields/create-field.js +59 -28
  35. package/dist/tools/admin/fields/create-field.js.map +1 -1
  36. package/dist/tools/admin/fields/get-field.d.ts +1 -1
  37. package/dist/tools/admin/fields/get-field.d.ts.map +1 -1
  38. package/dist/tools/admin/fields/get-field.js +9 -2
  39. package/dist/tools/admin/fields/get-field.js.map +1 -1
  40. package/dist/tools/admin/fields/list-fields.d.ts +3 -5
  41. package/dist/tools/admin/fields/list-fields.d.ts.map +1 -1
  42. package/dist/tools/admin/fields/list-fields.js +21 -13
  43. package/dist/tools/admin/fields/list-fields.js.map +1 -1
  44. package/dist/tools/admin/fields/update-field.d.ts +11 -6
  45. package/dist/tools/admin/fields/update-field.d.ts.map +1 -1
  46. package/dist/tools/admin/fields/update-field.js +23 -17
  47. package/dist/tools/admin/fields/update-field.js.map +1 -1
  48. package/dist/tools/admin/quick-actions/create-quick-action.d.ts +9 -9
  49. package/dist/tools/admin/quick-actions/create-quick-action.d.ts.map +1 -1
  50. package/dist/tools/admin/quick-actions/create-quick-action.js +33 -20
  51. package/dist/tools/admin/quick-actions/create-quick-action.js.map +1 -1
  52. package/dist/tools/admin/quick-actions/get-quick-action.d.ts +1 -1
  53. package/dist/tools/admin/quick-actions/get-quick-action.d.ts.map +1 -1
  54. package/dist/tools/admin/quick-actions/get-quick-action.js +3 -2
  55. package/dist/tools/admin/quick-actions/get-quick-action.js.map +1 -1
  56. package/dist/tools/admin/quick-actions/list-quick-actions.d.ts +4 -3
  57. package/dist/tools/admin/quick-actions/list-quick-actions.d.ts.map +1 -1
  58. package/dist/tools/admin/quick-actions/list-quick-actions.js +22 -12
  59. package/dist/tools/admin/quick-actions/list-quick-actions.js.map +1 -1
  60. package/dist/tools/admin/quick-actions/trigger-quick-action.d.ts +4 -6
  61. package/dist/tools/admin/quick-actions/trigger-quick-action.d.ts.map +1 -1
  62. package/dist/tools/admin/quick-actions/trigger-quick-action.js +31 -12
  63. package/dist/tools/admin/quick-actions/trigger-quick-action.js.map +1 -1
  64. package/dist/tools/admin/quick-actions/update-quick-action.d.ts +11 -6
  65. package/dist/tools/admin/quick-actions/update-quick-action.d.ts.map +1 -1
  66. package/dist/tools/admin/quick-actions/update-quick-action.js +22 -14
  67. package/dist/tools/admin/quick-actions/update-quick-action.js.map +1 -1
  68. package/dist/tools/approvals/get-approval-flows.js +3 -3
  69. package/dist/tools/approvals/get-approval-flows.js.map +1 -1
  70. package/dist/tools/automation/get-run-logs-content.d.ts.map +1 -1
  71. package/dist/tools/automation/get-run-logs-content.js +3 -1
  72. package/dist/tools/automation/get-run-logs-content.js.map +1 -1
  73. package/dist/tools/automation/get-run-logs.d.ts.map +1 -1
  74. package/dist/tools/automation/get-run-logs.js +3 -1
  75. package/dist/tools/automation/get-run-logs.js.map +1 -1
  76. package/dist/tools/automation/get-script.d.ts.map +1 -1
  77. package/dist/tools/automation/get-script.js +3 -1
  78. package/dist/tools/automation/get-script.js.map +1 -1
  79. package/dist/tools/automation/get-trigger.d.ts.map +1 -1
  80. package/dist/tools/automation/get-trigger.js +3 -1
  81. package/dist/tools/automation/get-trigger.js.map +1 -1
  82. package/dist/tools/automation/list-scripts.d.ts.map +1 -1
  83. package/dist/tools/automation/list-scripts.js +5 -1
  84. package/dist/tools/automation/list-scripts.js.map +1 -1
  85. package/dist/tools/automation/search-runs.d.ts.map +1 -1
  86. package/dist/tools/automation/search-runs.js +3 -1
  87. package/dist/tools/automation/search-runs.js.map +1 -1
  88. package/dist/tools/config/list-configs.d.ts.map +1 -1
  89. package/dist/tools/config/list-configs.js +10 -3
  90. package/dist/tools/config/list-configs.js.map +1 -1
  91. package/dist/tools/control/initiate-sync.d.ts.map +1 -1
  92. package/dist/tools/control/initiate-sync.js +13 -3
  93. package/dist/tools/control/initiate-sync.js.map +1 -1
  94. package/dist/tools/control/set-trigger-enabled.d.ts.map +1 -1
  95. package/dist/tools/control/set-trigger-enabled.js +13 -3
  96. package/dist/tools/control/set-trigger-enabled.js.map +1 -1
  97. package/dist/tools/core/fetch.d.ts.map +1 -1
  98. package/dist/tools/core/fetch.js +12 -1
  99. package/dist/tools/core/fetch.js.map +1 -1
  100. package/dist/tools/core/push-message.d.ts.map +1 -1
  101. package/dist/tools/core/push-message.js +3 -1
  102. package/dist/tools/core/push-message.js.map +1 -1
  103. package/dist/tools/core/search.d.ts.map +1 -1
  104. package/dist/tools/core/search.js +28 -1
  105. package/dist/tools/core/search.js.map +1 -1
  106. package/dist/tools/document-context/check-contract-pricing.d.ts.map +1 -1
  107. package/dist/tools/document-context/check-contract-pricing.js +44 -1
  108. package/dist/tools/document-context/check-contract-pricing.js.map +1 -1
  109. package/dist/tools/document-context/check-document-budgets.d.ts.map +1 -1
  110. package/dist/tools/document-context/check-document-budgets.js +34 -1
  111. package/dist/tools/document-context/check-document-budgets.js.map +1 -1
  112. package/dist/tools/documents/document-types/create-document-type.d.ts.map +1 -1
  113. package/dist/tools/documents/document-types/create-document-type.js +24 -1
  114. package/dist/tools/documents/document-types/create-document-type.js.map +1 -1
  115. package/dist/tools/documents/document-types/get-document-type.d.ts.map +1 -1
  116. package/dist/tools/documents/document-types/get-document-type.js +11 -1
  117. package/dist/tools/documents/document-types/get-document-type.js.map +1 -1
  118. package/dist/tools/documents/document-types/get-merged-form-metadata.d.ts.map +1 -1
  119. package/dist/tools/documents/document-types/get-merged-form-metadata.js +13 -1
  120. package/dist/tools/documents/document-types/get-merged-form-metadata.js.map +1 -1
  121. package/dist/tools/documents/document-types/list-document-types.d.ts.map +1 -1
  122. package/dist/tools/documents/document-types/list-document-types.js +14 -1
  123. package/dist/tools/documents/document-types/list-document-types.js.map +1 -1
  124. package/dist/tools/documents/document-types/update-document-type.d.ts.map +1 -1
  125. package/dist/tools/documents/document-types/update-document-type.js +32 -1
  126. package/dist/tools/documents/document-types/update-document-type.js.map +1 -1
  127. package/dist/tools/documents/export-templates/create-export-template.d.ts.map +1 -1
  128. package/dist/tools/documents/export-templates/create-export-template.js +35 -1
  129. package/dist/tools/documents/export-templates/create-export-template.js.map +1 -1
  130. package/dist/tools/documents/export-templates/get-export-download-url.d.ts.map +1 -1
  131. package/dist/tools/documents/export-templates/get-export-download-url.js +6 -1
  132. package/dist/tools/documents/export-templates/get-export-download-url.js.map +1 -1
  133. package/dist/tools/documents/export-templates/get-export-template.d.ts.map +1 -1
  134. package/dist/tools/documents/export-templates/get-export-template.js +3 -2
  135. package/dist/tools/documents/export-templates/get-export-template.js.map +1 -1
  136. package/dist/tools/documents/export-templates/list-export-templates.d.ts.map +1 -1
  137. package/dist/tools/documents/export-templates/list-export-templates.js +12 -2
  138. package/dist/tools/documents/export-templates/list-export-templates.js.map +1 -1
  139. package/dist/tools/documents/export-templates/list-exports.d.ts.map +1 -1
  140. package/dist/tools/documents/export-templates/list-exports.js +6 -1
  141. package/dist/tools/documents/export-templates/list-exports.js.map +1 -1
  142. package/dist/tools/documents/export-templates/run-export.d.ts.map +1 -1
  143. package/dist/tools/documents/export-templates/run-export.js +20 -1
  144. package/dist/tools/documents/export-templates/run-export.js.map +1 -1
  145. package/dist/tools/documents/export-templates/update-export-template.d.ts.map +1 -1
  146. package/dist/tools/documents/export-templates/update-export-template.js +9 -1
  147. package/dist/tools/documents/export-templates/update-export-template.js.map +1 -1
  148. package/dist/tools/history/get-history.d.ts.map +1 -1
  149. package/dist/tools/history/get-history.js +9 -1
  150. package/dist/tools/history/get-history.js.map +1 -1
  151. package/dist/tools/inboxes/create-inbox-template.d.ts +1 -1
  152. package/dist/tools/inboxes/create-inbox-template.d.ts.map +1 -1
  153. package/dist/tools/inboxes/create-inbox-template.js +26 -1
  154. package/dist/tools/inboxes/create-inbox-template.js.map +1 -1
  155. package/dist/tools/inboxes/create-inbox.d.ts +1 -1
  156. package/dist/tools/inboxes/create-inbox.d.ts.map +1 -1
  157. package/dist/tools/inboxes/create-inbox.js +22 -1
  158. package/dist/tools/inboxes/create-inbox.js.map +1 -1
  159. package/dist/tools/inboxes/fetch-inbox.d.ts +1 -1
  160. package/dist/tools/inboxes/fetch-inbox.d.ts.map +1 -1
  161. package/dist/tools/inboxes/fetch-inbox.js +14 -1
  162. package/dist/tools/inboxes/fetch-inbox.js.map +1 -1
  163. package/dist/tools/inboxes/get-inbound-domain.d.ts.map +1 -1
  164. package/dist/tools/inboxes/get-inbound-domain.js +14 -1
  165. package/dist/tools/inboxes/get-inbound-domain.js.map +1 -1
  166. package/dist/tools/inboxes/list-inbox-templates.d.ts +1 -1
  167. package/dist/tools/inboxes/list-inbox-templates.d.ts.map +1 -1
  168. package/dist/tools/inboxes/list-inbox-templates.js +26 -1
  169. package/dist/tools/inboxes/list-inbox-templates.js.map +1 -1
  170. package/dist/tools/inboxes/list-inboxes.d.ts +1 -1
  171. package/dist/tools/inboxes/list-inboxes.d.ts.map +1 -1
  172. package/dist/tools/inboxes/list-inboxes.js +22 -1
  173. package/dist/tools/inboxes/list-inboxes.js.map +1 -1
  174. package/dist/tools/inboxes/update-inbox-template.d.ts +1 -1
  175. package/dist/tools/inboxes/update-inbox-template.d.ts.map +1 -1
  176. package/dist/tools/inboxes/update-inbox-template.js +22 -1
  177. package/dist/tools/inboxes/update-inbox-template.js.map +1 -1
  178. package/dist/tools/inboxes/update-inbox.d.ts +1 -1
  179. package/dist/tools/inboxes/update-inbox.d.ts.map +1 -1
  180. package/dist/tools/inboxes/update-inbox.js +25 -3
  181. package/dist/tools/inboxes/update-inbox.js.map +1 -1
  182. package/dist/tools/index.js +2 -2
  183. package/dist/tools/index.js.map +1 -1
  184. package/dist/tools/language/get-language-placeholders.d.ts.map +1 -1
  185. package/dist/tools/language/get-language-placeholders.js +33 -3
  186. package/dist/tools/language/get-language-placeholders.js.map +1 -1
  187. package/dist/tools/language/update-language-placeholders.d.ts.map +1 -1
  188. package/dist/tools/language/update-language-placeholders.js +21 -4
  189. package/dist/tools/language/update-language-placeholders.js.map +1 -1
  190. package/dist/tools/models/list-models.js +2 -2
  191. package/dist/tools/org-admin/teams/fetch-org-team.d.ts.map +1 -1
  192. package/dist/tools/org-admin/teams/fetch-org-team.js +15 -1
  193. package/dist/tools/org-admin/teams/fetch-org-team.js.map +1 -1
  194. package/dist/tools/org-admin/teams/list-org-teams.d.ts.map +1 -1
  195. package/dist/tools/org-admin/teams/list-org-teams.js +17 -1
  196. package/dist/tools/org-admin/teams/list-org-teams.js.map +1 -1
  197. package/dist/tools/org-admin/teams/update-org-team.d.ts.map +1 -1
  198. package/dist/tools/org-admin/teams/update-org-team.js +16 -1
  199. package/dist/tools/org-admin/teams/update-org-team.js.map +1 -1
  200. package/dist/tools/org-admin/users/assign-user-to-team.d.ts +1 -1
  201. package/dist/tools/org-admin/users/assign-user-to-team.d.ts.map +1 -1
  202. package/dist/tools/org-admin/users/assign-user-to-team.js +22 -4
  203. package/dist/tools/org-admin/users/assign-user-to-team.js.map +1 -1
  204. package/dist/tools/org-admin/users/create-org-user.d.ts.map +1 -1
  205. package/dist/tools/org-admin/users/create-org-user.js +15 -1
  206. package/dist/tools/org-admin/users/create-org-user.js.map +1 -1
  207. package/dist/tools/org-admin/users/fetch-org-user.d.ts.map +1 -1
  208. package/dist/tools/org-admin/users/fetch-org-user.js +15 -1
  209. package/dist/tools/org-admin/users/fetch-org-user.js.map +1 -1
  210. package/dist/tools/org-admin/users/index.d.ts +1 -1
  211. package/dist/tools/org-admin/users/index.d.ts.map +1 -1
  212. package/dist/tools/org-admin/users/index.js +1 -1
  213. package/dist/tools/org-admin/users/index.js.map +1 -1
  214. package/dist/tools/org-admin/users/list-org-user-groups.d.ts.map +1 -1
  215. package/dist/tools/org-admin/users/list-org-user-groups.js +20 -1
  216. package/dist/tools/org-admin/users/list-org-user-groups.js.map +1 -1
  217. package/dist/tools/org-admin/users/list-org-users.d.ts.map +1 -1
  218. package/dist/tools/org-admin/users/list-org-users.js +15 -1
  219. package/dist/tools/org-admin/users/list-org-users.js.map +1 -1
  220. package/dist/tools/org-admin/users/update-org-user.d.ts.map +1 -1
  221. package/dist/tools/org-admin/users/update-org-user.js +12 -1
  222. package/dist/tools/org-admin/users/update-org-user.js.map +1 -1
  223. package/dist/tools/resources/get-resources.d.ts.map +1 -1
  224. package/dist/tools/resources/get-resources.js +12 -3
  225. package/dist/tools/resources/get-resources.js.map +1 -1
  226. package/dist/tools/resources/update-or-create-resources.d.ts.map +1 -1
  227. package/dist/tools/resources/update-or-create-resources.js +36 -5
  228. package/dist/tools/resources/update-or-create-resources.js.map +1 -1
  229. package/dist/tools/sentences/create-sentence.d.ts.map +1 -1
  230. package/dist/tools/sentences/create-sentence.js +22 -1
  231. package/dist/tools/sentences/create-sentence.js.map +1 -1
  232. package/dist/tools/sentences/get-sentence-template.d.ts.map +1 -1
  233. package/dist/tools/sentences/get-sentence-template.js +3 -1
  234. package/dist/tools/sentences/get-sentence-template.js.map +1 -1
  235. package/dist/tools/sentences/get-sentence.d.ts.map +1 -1
  236. package/dist/tools/sentences/get-sentence.js +3 -1
  237. package/dist/tools/sentences/get-sentence.js.map +1 -1
  238. package/dist/tools/sentences/list-sentence-resources.d.ts.map +1 -1
  239. package/dist/tools/sentences/list-sentence-resources.js +11 -1
  240. package/dist/tools/sentences/list-sentence-resources.js.map +1 -1
  241. package/dist/tools/sentences/list-sentence-templates.d.ts.map +1 -1
  242. package/dist/tools/sentences/list-sentence-templates.js +5 -1
  243. package/dist/tools/sentences/list-sentence-templates.js.map +1 -1
  244. package/dist/tools/sentences/list-sentences.d.ts.map +1 -1
  245. package/dist/tools/sentences/list-sentences.js +7 -1
  246. package/dist/tools/sentences/list-sentences.js.map +1 -1
  247. package/dist/tools/sentences/update-sentence.d.ts.map +1 -1
  248. package/dist/tools/sentences/update-sentence.js +24 -1
  249. package/dist/tools/sentences/update-sentence.js.map +1 -1
  250. package/dist/tools/sentences/update-sentences-order.d.ts.map +1 -1
  251. package/dist/tools/sentences/update-sentences-order.js +16 -1
  252. package/dist/tools/sentences/update-sentences-order.js.map +1 -1
  253. package/dist/tools/users/get-user-groups.d.ts.map +1 -1
  254. package/dist/tools/users/get-user-groups.js +28 -3
  255. package/dist/tools/users/get-user-groups.js.map +1 -1
  256. package/dist/tools/users/get-users.d.ts.map +1 -1
  257. package/dist/tools/users/get-users.js +34 -3
  258. package/dist/tools/users/get-users.js.map +1 -1
  259. package/package.json +1 -1
@@ -2,10 +2,42 @@ import { logger } from "../../../utils/logger.js";
2
2
  import { createZudelloDataset } from "../../../services/zudello/admin.js";
3
3
  export const zudelloCreateDataset = {
4
4
  name: "zudelloCreateDataset",
5
- description: `Create a new dataset.
5
+ description: `Create a new dataset in Zudello.
6
6
 
7
- Datasets define data sources and collections. Use this to set up new data structures.
8
- Requires name, model type, and optional description and configuration.`,
7
+ ## Dataset Types
8
+ - "" (empty): Generic lookup/mapping table
9
+ - "approval_doa": Delegation of Authority with user/limit
10
+ - "approval_doa_group": DOA using user groups
11
+ - "approval_management_tree": Manager hierarchy
12
+ - "approval_user_limit": User-specific limits
13
+
14
+ ## Editor Types
15
+ - TEXT: Free text input
16
+ - NUMERIC: Number input
17
+ - DD_SINGLE: Single-select dropdown (requires select config)
18
+ - DD_MULTIPLE: Multi-select dropdown (requires select config)
19
+ - DATE: Date picker
20
+
21
+ ## Common Storage Getters for Dropdowns
22
+ - activeTeamUsers: Team users (label: "{first_name} {last_name}")
23
+ - departmentList: Departments (label: "{code} - {name}")
24
+ - projectList: Projects (label: "{code} - {name}")
25
+ - supplierList: Suppliers (label: "{code} - {trading_name}")
26
+ - customerList: Customers (label: "{code} - {trading_name}")
27
+ - getLocations: Locations (label: "{code} - {name}")
28
+ - getSubsidiaries: Entities (label: "{code} - {name}")
29
+ - glAccountList: GL Accounts (label: "{code} - {name}")
30
+ - costCentreList: Cost Centres (label: "{code} - {name}")
31
+ - UserGroup: User groups (label: "name")
32
+
33
+ ## Approval Field Values
34
+ - "": No approval significance
35
+ - "step_name": Step identifier
36
+ - "user": Approver user
37
+ - "user_group": Approver group
38
+ - "limit": Approval limit threshold
39
+ - "dimension": Dimensional filter for DOA
40
+ - "manager": Manager in hierarchy`,
9
41
  inputSchema: {
10
42
  type: "object",
11
43
  properties: {
@@ -13,30 +45,37 @@ Requires name, model type, and optional description and configuration.`,
13
45
  type: "string",
14
46
  description: "Name of the dataset"
15
47
  },
16
- model: {
17
- type: "string",
18
- description: "Model type for the dataset"
48
+ columnDefs: {
49
+ type: "array",
50
+ description: "Array of column definitions with id, name, type, and optional required/options",
51
+ items: {
52
+ type: "object",
53
+ properties: {
54
+ id: { type: "string", description: "Column identifier" },
55
+ name: { type: "string", description: "Column display name" },
56
+ type: { type: "string", description: "Column data type" },
57
+ required: { type: "boolean", description: "Whether column is required" },
58
+ options: { type: "object", description: "Additional column options" }
59
+ },
60
+ required: ["id", "name", "type"]
61
+ }
19
62
  },
20
- description: {
63
+ datasetType: {
21
64
  type: "string",
22
- description: "Optional: Description of the dataset purpose"
65
+ description: "Optional: Type categorization for the dataset"
23
66
  },
24
- configuration: {
25
- type: "object",
26
- description: "Optional: Dataset configuration settings"
67
+ onDimensionMismatch: {
68
+ type: "string",
69
+ enum: ["fail_sentence", "skip_sentence", "skip_line"],
70
+ description: "Optional: How to handle dimension mismatches"
27
71
  }
28
72
  },
29
- required: ["name", "model"]
73
+ required: ["name", "columnDefs"]
30
74
  },
31
75
  execute: async (input, authContext) => {
32
76
  try {
33
- logger.info("zudelloCreateDataset executed", input);
34
- const response = await createZudelloDataset(authContext, {
35
- name: input.name,
36
- model: input.model,
37
- description: input.description,
38
- configuration: input.configuration
39
- });
77
+ logger.info("zudelloCreateDataset executed", { name: input.name, columnCount: input.columnDefs.length });
78
+ const response = await createZudelloDataset(authContext, input.name, input.columnDefs, input.datasetType || "", input.onDimensionMismatch);
40
79
  if (!response.success) {
41
80
  throw new Error(response.error || "Failed to create dataset");
42
81
  }
@@ -47,7 +86,7 @@ Requires name, model type, and optional description and configuration.`,
47
86
  };
48
87
  }
49
88
  catch (error) {
50
- logger.error("zudelloCreateDataset error", input, error);
89
+ logger.error("zudelloCreateDataset error", { name: input.name }, error);
51
90
  return {
52
91
  success: false,
53
92
  error: error.message
@@ -1 +1 @@
1
- {"version":3,"file":"create-dataset.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/create-dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE;;;uEAGwD;IACrE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qBAAqB;aACnC;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4BAA4B;aAC1C;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8CAA8C;aAC5D;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0CAA0C;aACxD;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;KAC5B;IACD,OAAO,EAAE,KAAK,EACZ,KAKC,EACD,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YAEpD,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE;gBACvD,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;YAChE,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,OAAO,EAAE,YAAY,KAAK,CAAC,IAAI,wBAAwB;aACxD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,EAAE,KAAc,CAAC,CAAC;YAClE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"create-dataset.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/create-dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAI1E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAmCmB;IAChC,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qBAAqB;aACnC;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,gFAAgF;gBAC7F,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;wBACxD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;wBAC5D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;wBACzD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE;wBACxE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;qBACtE;oBACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC;iBACjC;aACF;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;YACD,mBAAmB,EAAE;gBACnB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,WAAW,CAAC;gBACrD,WAAW,EAAE,8CAA8C;aAC5D;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;KACjC;IACD,OAAO,EAAE,KAAK,EACZ,KAKC,EACD,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;YAEzG,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CACzC,WAAW,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,WAAW,IAAI,EAAE,EACvB,KAAK,CAAC,mBAAmB,CAC1B,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;YAChE,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,OAAO,EAAE,YAAY,KAAK,CAAC,IAAI,wBAAwB;aACxD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAc,CAAC,CAAC;YACjF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -16,7 +16,7 @@ export declare const zudelloGetDataset: {
16
16
  uuid: string;
17
17
  }, authContext: AuthContext) => Promise<{
18
18
  success: boolean;
19
- dataset: import("../../../services/zudello/admin.js").Dataset | undefined;
19
+ dataset: import("../../../services/zudello/admin.js").ZudelloDataset | undefined;
20
20
  error?: undefined;
21
21
  } | {
22
22
  success: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"get-dataset.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/get-dataset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;qBAgBnB;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,eACV,WAAW;;;;;;;;;CAuB3B,CAAC"}
1
+ {"version":3,"file":"get-dataset.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/get-dataset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;qBAsBnB;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,eACV,WAAW;;;;;;;;;CAuB3B,CAAC"}
@@ -2,9 +2,15 @@ import { logger } from "../../../utils/logger.js";
2
2
  import { getZudelloDataset } from "../../../services/zudello/admin.js";
3
3
  export const zudelloGetDataset = {
4
4
  name: "zudelloGetDataset",
5
- description: `Get details for a specific dataset.
5
+ description: `Get full details of a specific dataset by UUID.
6
6
 
7
- Returns complete dataset configuration including name, model, description, and settings.`,
7
+ Returns the complete dataset schema including:
8
+ - name: Display name
9
+ - settings.datasetType: Type for approval workflows
10
+ - settings.columnDefs: Array of column definitions
11
+ - settings.on_dimension_mismatch: Handling for unmatched dimensions
12
+
13
+ Use zudelloListDatasets first to find the UUID.`,
8
14
  inputSchema: {
9
15
  type: "object",
10
16
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"get-dataset.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/get-dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAGvE,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE;;yFAE0E;IACvF,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iCAAiC;aAC/C;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;IACD,OAAO,EAAE,KAAK,EACZ,KAAuB,EACvB,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YAElD,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAElE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,uBAAuB,CAAC,CAAC;YAC7D,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI;aACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,EAAE,KAAc,CAAC,CAAC;YAC/D,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"get-dataset.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/get-dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAGvE,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE;;;;;;;;gDAQiC;IAC9C,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iCAAiC;aAC/C;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;IACD,OAAO,EAAE,KAAK,EACZ,KAAuB,EACvB,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YAElD,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAElE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,uBAAuB,CAAC,CAAC;YAC7D,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI;aACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,EAAE,KAAc,CAAC,CAAC;YAC/D,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -18,10 +18,8 @@ export declare const zudelloListDatasets: {
18
18
  datasets: {
19
19
  uuid: string;
20
20
  name: string;
21
- description: string | undefined;
22
- model: string;
23
- createdAt: string;
24
- updatedAt: string;
21
+ datasetType: string;
22
+ columnDefs: import("../../../services/zudello/admin.js").DatasetColumnDef[] | undefined;
25
23
  }[];
26
24
  count: number;
27
25
  error?: undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"list-datasets.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/list-datasets.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;qBAgBrB;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,eACZ,WAAW;;;;;;;;;;;;;;;;;;CAkC3B,CAAC"}
1
+ {"version":3,"file":"list-datasets.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/list-datasets.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;qBAuBrB;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,eACZ,WAAW;;;;;;;;;;;;;;;;CAwC3B,CAAC"}
@@ -2,10 +2,17 @@ import { logger } from "../../../utils/logger.js";
2
2
  import { listZudelloDatasets } from "../../../services/zudello/admin.js";
3
3
  export const zudelloListDatasets = {
4
4
  name: "zudelloListDatasets",
5
- description: `List all datasets configured for the team.
5
+ description: `List all datasets in Zudello with their names, UUIDs, and types.
6
6
 
7
- Datasets define data sources and collections used across the system.
8
- Returns dataset names, models, descriptions, and configuration details.`,
7
+ Datasets are virtual tables that can be used for:
8
+ - Lookup/mapping tables (empty datasetType)
9
+ - Approval DOA workflows (datasetType: approval_doa, approval_doa_group)
10
+ - Manager hierarchy (datasetType: approval_management_tree)
11
+ - User approval limits (datasetType: approval_user_limit)
12
+
13
+ Returns: uuid, name, datasetType, and optionally columnDefs.
14
+
15
+ Set includeColumns=true when looking for existing approval datasets to reference in sentences - this shows the schema structure including dimension columns and approval fields.`,
9
16
  inputSchema: {
10
17
  type: "object",
11
18
  properties: {
@@ -17,27 +24,30 @@ Returns dataset names, models, descriptions, and configuration details.`,
17
24
  },
18
25
  execute: async (input, authContext) => {
19
26
  try {
20
- logger.debug("zudelloListDatasets executed", input);
21
- const response = await listZudelloDatasets(authContext, { model: input.model });
27
+ logger.debug("zudelloListDatasets executed", { model: input.model });
28
+ // Note: The API doesn't support model filtering, but we can filter client-side if needed
29
+ const response = await listZudelloDatasets(authContext, { includeColumns: true });
22
30
  if (!response.success) {
23
31
  throw new Error(response.error || "Failed to list datasets");
24
32
  }
25
- const datasets = response.data || [];
33
+ let datasets = response.data || [];
34
+ // Client-side filtering if model is specified
35
+ if (input.model) {
36
+ datasets = datasets.filter((d) => d.datasetType?.toLowerCase().includes(input.model.toLowerCase()));
37
+ }
26
38
  return {
27
39
  success: true,
28
40
  datasets: datasets.map((d) => ({
29
41
  uuid: d.uuid,
30
42
  name: d.name,
31
- description: d.description,
32
- model: d.model,
33
- createdAt: d.createdAt,
34
- updatedAt: d.updatedAt,
43
+ datasetType: d.datasetType,
44
+ columnDefs: d.columnDefs,
35
45
  })),
36
46
  count: datasets.length,
37
47
  };
38
48
  }
39
49
  catch (error) {
40
- logger.error("zudelloListDatasets error", input, error);
50
+ logger.error("zudelloListDatasets error", { model: input.model }, error);
41
51
  return {
42
52
  success: false,
43
53
  error: error.message,
@@ -1 +1 @@
1
- {"version":3,"file":"list-datasets.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/list-datasets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAGzE,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE;;;wEAGyD;IACtE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yCAAyC;aACvD;SACF;KACF;IACD,OAAO,EAAE,KAAK,EACZ,KAAyB,EACzB,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YAEpD,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAEhF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,yBAAyB,CAAC,CAAC;YAC/D,CAAC;YAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;YAErC,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC7B,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,SAAS,EAAE,CAAC,CAAC,SAAS;iBACvB,CAAC,CAAC;gBACH,KAAK,EAAE,QAAQ,CAAC,MAAM;aACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,EAAE,KAAc,CAAC,CAAC;YACjE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"list-datasets.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/list-datasets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAGzE,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE;;;;;;;;;;iLAUkK;IAC/K,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yCAAyC;aACvD;SACF;KACF;IACD,OAAO,EAAE,KAAK,EACZ,KAAyB,EACzB,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAErE,yFAAyF;YACzF,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;YAElF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,yBAAyB,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,QAAQ,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;YAEnC,8CAA8C;YAC9C,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/B,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAM,CAAC,WAAW,EAAE,CAAC,CAClE,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC7B,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;iBACzB,CAAC,CAAC;gBACH,KAAK,EAAE,QAAQ,CAAC,MAAM;aACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,KAAc,CAAC,CAAC;YAClF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { AuthContext } from "../../../context/auth.js";
2
+ import type { DatasetColumnDef } from "../../../services/zudello/admin.js";
2
3
  export declare const zudelloUpdateDataset: {
3
4
  name: string;
4
5
  description: string;
@@ -13,25 +14,57 @@ export declare const zudelloUpdateDataset: {
13
14
  type: string;
14
15
  description: string;
15
16
  };
16
- description: {
17
+ columnDefs: {
17
18
  type: string;
18
19
  description: string;
20
+ items: {
21
+ type: string;
22
+ properties: {
23
+ id: {
24
+ type: string;
25
+ description: string;
26
+ };
27
+ name: {
28
+ type: string;
29
+ description: string;
30
+ };
31
+ type: {
32
+ type: string;
33
+ description: string;
34
+ };
35
+ required: {
36
+ type: string;
37
+ description: string;
38
+ };
39
+ options: {
40
+ type: string;
41
+ description: string;
42
+ };
43
+ };
44
+ required: string[];
45
+ };
19
46
  };
20
- configuration: {
47
+ datasetType: {
21
48
  type: string;
22
49
  description: string;
23
50
  };
51
+ onDimensionMismatch: {
52
+ type: string;
53
+ enum: string[];
54
+ description: string;
55
+ };
24
56
  };
25
57
  required: string[];
26
58
  };
27
59
  execute: (input: {
28
60
  uuid: string;
29
- name?: string;
30
- description?: string;
31
- configuration?: Record<string, unknown>;
61
+ name: string;
62
+ columnDefs: DatasetColumnDef[];
63
+ datasetType?: string;
64
+ onDimensionMismatch?: "fail_sentence" | "skip_sentence" | "skip_line";
32
65
  }, authContext: AuthContext) => Promise<{
33
66
  success: boolean;
34
- dataset: import("../../../services/zudello/admin.js").Dataset | undefined;
67
+ dataset: import("../../../services/zudello/admin.js").ZudelloDataset | undefined;
35
68
  message: string;
36
69
  error?: undefined;
37
70
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"update-dataset.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/update-dataset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;qBA6BtB;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACzC,eACY,WAAW;;;;;;;;;;;CA4B3B,CAAC"}
1
+ {"version":3,"file":"update-dataset.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/update-dataset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAuDtB;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,gBAAgB,EAAE,CAAC;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,mBAAmB,CAAC,EAAE,eAAe,GAAG,eAAe,GAAG,WAAW,CAAC;KACvE,eACY,WAAW;;;;;;;;;;;CA+B3B,CAAC"}
@@ -2,10 +2,20 @@ import { logger } from "../../../utils/logger.js";
2
2
  import { updateZudelloDataset } from "../../../services/zudello/admin.js";
3
3
  export const zudelloUpdateDataset = {
4
4
  name: "zudelloUpdateDataset",
5
- description: `Update an existing dataset.
5
+ description: `Update an existing dataset schema in Zudello.
6
6
 
7
- Modify dataset name, description, or configuration settings.
8
- Changes affect how data is structured and accessed.`,
7
+ IMPORTANT: Always use zudelloGetDataset first to retrieve the current schema.
8
+ When updating, provide the complete column definitions - columns not included will be removed.
9
+
10
+ To preserve existing columns:
11
+ 1. Get the current dataset with zudelloGetDataset
12
+ 2. Modify the columnDefs as needed
13
+ 3. Pass all columns (modified and unchanged) to this tool
14
+
15
+ Column IDs (colId) must be preserved for existing columns to maintain data integrity.
16
+ New columns will get auto-generated IDs.
17
+
18
+ See zudelloCreateDataset description for column configuration details.`,
9
19
  inputSchema: {
10
20
  type: "object",
11
21
  properties: {
@@ -15,27 +25,39 @@ Changes affect how data is structured and accessed.`,
15
25
  },
16
26
  name: {
17
27
  type: "string",
18
- description: "Optional: New name for the dataset"
28
+ description: "Name for the dataset"
19
29
  },
20
- description: {
30
+ columnDefs: {
31
+ type: "array",
32
+ description: "Array of column definitions with id, name, type, and optional required/options",
33
+ items: {
34
+ type: "object",
35
+ properties: {
36
+ id: { type: "string", description: "Column identifier" },
37
+ name: { type: "string", description: "Column display name" },
38
+ type: { type: "string", description: "Column data type" },
39
+ required: { type: "boolean", description: "Whether column is required" },
40
+ options: { type: "object", description: "Additional column options" }
41
+ },
42
+ required: ["id", "name", "type"]
43
+ }
44
+ },
45
+ datasetType: {
21
46
  type: "string",
22
- description: "Optional: New description"
47
+ description: "Optional: Type categorization for the dataset"
23
48
  },
24
- configuration: {
25
- type: "object",
26
- description: "Optional: Updated configuration settings"
49
+ onDimensionMismatch: {
50
+ type: "string",
51
+ enum: ["fail_sentence", "skip_sentence", "skip_line"],
52
+ description: "Optional: How to handle dimension mismatches"
27
53
  }
28
54
  },
29
- required: ["uuid"]
55
+ required: ["uuid", "name", "columnDefs"]
30
56
  },
31
57
  execute: async (input, authContext) => {
32
58
  try {
33
- logger.info("zudelloUpdateDataset executed", input);
34
- const response = await updateZudelloDataset(authContext, input.uuid, {
35
- name: input.name,
36
- description: input.description,
37
- configuration: input.configuration
38
- });
59
+ logger.info("zudelloUpdateDataset executed", { uuid: input.uuid, name: input.name });
60
+ const response = await updateZudelloDataset(authContext, input.uuid, input.name, input.columnDefs, input.datasetType || "", input.onDimensionMismatch);
39
61
  if (!response.success) {
40
62
  throw new Error(response.error || "Failed to update dataset");
41
63
  }
@@ -46,7 +68,7 @@ Changes affect how data is structured and accessed.`,
46
68
  };
47
69
  }
48
70
  catch (error) {
49
- logger.error("zudelloUpdateDataset error", input, error);
71
+ logger.error("zudelloUpdateDataset error", { uuid: input.uuid }, error);
50
72
  return {
51
73
  success: false,
52
74
  error: error.message
@@ -1 +1 @@
1
- {"version":3,"file":"update-dataset.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/update-dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE;;;oDAGqC;IAClD,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+BAA+B;aAC7C;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oCAAoC;aAClD;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2BAA2B;aACzC;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0CAA0C;aACxD;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;IACD,OAAO,EAAE,KAAK,EACZ,KAKC,EACD,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YAEpD,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE;gBACnE,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;YAChE,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,OAAO,EAAE,8BAA8B;aACxC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,EAAE,KAAc,CAAC,CAAC;YAClE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"update-dataset.js","sourceRoot":"","sources":["../../../../src/tools/admin/datasets/update-dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAI1E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE;;;;;;;;;;;;;uEAawD;IACrE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+BAA+B;aAC7C;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sBAAsB;aACpC;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,gFAAgF;gBAC7F,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;wBACxD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;wBAC5D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;wBACzD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE;wBACxE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;qBACtE;oBACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC;iBACjC;aACF;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;YACD,mBAAmB,EAAE;gBACnB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,WAAW,CAAC;gBACrD,WAAW,EAAE,8CAA8C;aAC5D;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;KACzC;IACD,OAAO,EAAE,KAAK,EACZ,KAMC,EACD,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAErF,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CACzC,WAAW,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,WAAW,IAAI,EAAE,EACvB,KAAK,CAAC,mBAAmB,CAC1B,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;YAChE,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,OAAO,EAAE,8BAA8B;aACxC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAc,CAAC,CAAC;YACjF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -5,7 +5,7 @@ export declare const zudelloCreateField: {
5
5
  inputSchema: {
6
6
  type: "object";
7
7
  properties: {
8
- name: {
8
+ path: {
9
9
  type: string;
10
10
  description: string;
11
11
  };
@@ -13,19 +13,11 @@ export declare const zudelloCreateField: {
13
13
  type: string;
14
14
  description: string;
15
15
  };
16
- type: {
16
+ model_name: {
17
17
  type: string;
18
18
  description: string;
19
19
  };
20
- model: {
21
- type: string;
22
- description: string;
23
- };
24
- required: {
25
- type: string;
26
- description: string;
27
- };
28
- options: {
20
+ context: {
29
21
  type: string;
30
22
  description: string;
31
23
  };
@@ -33,15 +25,13 @@ export declare const zudelloCreateField: {
33
25
  required: string[];
34
26
  };
35
27
  execute: (input: {
36
- name: string;
28
+ path: string;
37
29
  label: string;
38
- type: string;
39
- model: string;
40
- required?: boolean;
41
- options?: Record<string, unknown>;
30
+ model_name: string;
31
+ context?: Record<string, string[]>;
42
32
  }, authContext: AuthContext) => Promise<{
43
33
  success: boolean;
44
- field: import("../../../services/zudello/admin.js").Field | undefined;
34
+ field: import("../../../services/zudello/admin.js").ZudelloFieldSettings | undefined;
45
35
  message: string;
46
36
  error?: undefined;
47
37
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"create-field.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/fields/create-field.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAqCpB;QACL,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,eACY,WAAW;;;;;;;;;;;CA+B3B,CAAC"}
1
+ {"version":3,"file":"create-field.d.ts","sourceRoot":"","sources":["../../../../src/tools/admin/fields/create-field.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;qBAuEpB;QACL,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;KACpC,eACY,WAAW;;;;;;;;;;;CAgC3B,CAAC"}
@@ -1,52 +1,83 @@
1
1
  import { logger } from "../../../utils/logger.js";
2
- import { createZudelloField } from "../../../services/zudello/admin.js";
2
+ import { createZudelloFieldSettings } from "../../../services/zudello/admin.js";
3
3
  export const zudelloCreateField = {
4
4
  name: "zudelloCreateField",
5
- description: `Create a new custom field.
5
+ description: `Create a new custom field or override a system field's behavior in Zudello.
6
6
 
7
- Define a new field with name, type, validation rules, and display settings.
8
- Fields extend data models with custom attributes.`,
7
+ ## Path Naming Conventions
8
+ - System field override: Use existing path (e.g., 'document_number', 'payment_method', 'code')
9
+ - Custom header field: 'custom__fieldname' (e.g., 'custom__employer_name')
10
+ - Custom line field: 'lines__custom__fieldname' (e.g., 'lines__custom__vehicleRegistrationNumber')
11
+
12
+ ## Editor Types
13
+ - TEXT: Simple text input. Optional 'mask' for formatting (e.g., 'XXX-XX-XXXX', '######')
14
+ - NUMERIC: Number input. Set 'numeric.precision' (0, 2, or 4)
15
+ - BOOLEAN: Checkbox. Optional 'default' value
16
+ - DATE: Date picker
17
+ - DD_SINGLE: Single-select dropdown (requires 'select' config)
18
+ - DD_MULTIPLE: Multi-select dropdown (requires 'select' config)
19
+
20
+ ## Common Storage Getters for Dropdowns
21
+ - activeTeamUsers: Team users (label: "{first_name} {last_name}")
22
+ - departmentList: Departments (label: "{code} - {name}")
23
+ - getLocations: Locations (label: "{code} - {name}")
24
+ - getSubsidiaries: Entities (label: "{code} - {name}")
25
+ - glAccountList: GL Accounts (label: "{code} - {name}")
26
+ - costCentreList: Cost Centres (label: "{code} - {name}")
27
+ - taxRateList: Tax Rates (label: "{code} - {name}")
28
+ - projectList: Projects (label: "{code} - {name}")
29
+ - supplierList: Suppliers (label: "{code} - {trading_name}")
30
+ - customerList: Customers (label: "{code} - {trading_name}")
31
+ - PaymentMethod: Payment methods (label: "name")
32
+ - ExpenseCategory: Expense categories (label: "name")
33
+
34
+ ## Validations
35
+ - required: Field must have a value. Params: {}
36
+ - requiredIf: Conditional. Params: {path, value, condition: "==", category: "field", subcategory: "static"}
37
+ - number: Must be numeric. Params: {}
38
+ - maxLength: Max string length. Params: {value: 40}
39
+ - minLength: Min string length. Params: {value: 6}
40
+ - Levels: "error" (blocks save), "warning" (allows with warning), "info" (informational)
41
+
42
+ ## Rules
43
+ - visibleIf: Show field conditionally. Params: {path, value, condition: "==", category: "field", subcategory: "static"}
44
+ - computeField: Auto-generate value. Params: {template: "PO-{{ \\"%05d\\" % counter }}", counterKey: "{{ module }}-{{ submodule }}"}
45
+
46
+ ## Context Scoping
47
+ - {} (empty): Applies to all modules/submodules
48
+ - {"MODULE": []}: Applies to all submodules in module
49
+ - {"MODULE": ["SUBMODULE"]}: Applies to specific submodule
50
+ - {"SALES": ["INVOICE"], "PURCHASING": ["INVOICE"]}: Multiple modules`,
9
51
  inputSchema: {
10
52
  type: "object",
11
53
  properties: {
12
- name: {
54
+ path: {
13
55
  type: "string",
14
- description: "Field name (internal identifier)"
56
+ description: "Field path (internal identifier)"
15
57
  },
16
58
  label: {
17
59
  type: "string",
18
60
  description: "Display label for the field"
19
61
  },
20
- type: {
21
- type: "string",
22
- description: "Field type (text, number, date, select, etc.)"
23
- },
24
- model: {
62
+ model_name: {
25
63
  type: "string",
26
- description: "Model type this field belongs to"
27
- },
28
- required: {
29
- type: "boolean",
30
- description: "Optional: Whether field is required"
64
+ description: "Model name this field belongs to"
31
65
  },
32
- options: {
66
+ context: {
33
67
  type: "object",
34
- description: "Optional: Field-specific options and validation rules"
68
+ description: "Optional: Module/submodule context mapping (e.g., {PURCHASING: ['INVOICE']})"
35
69
  }
36
70
  },
37
- required: ["name", "label", "type", "model"]
71
+ required: ["path", "label", "model_name"]
38
72
  },
39
73
  execute: async (input, authContext) => {
40
74
  try {
41
- logger.info("zudelloCreateField executed", input);
42
- const response = await createZudelloField(authContext, {
43
- name: input.name,
75
+ logger.info("zudelloCreateField executed", { path: input.path, label: input.label, model_name: input.model_name });
76
+ const response = await createZudelloFieldSettings(authContext, {
77
+ path: input.path,
44
78
  label: input.label,
45
- type: input.type,
46
- model: input.model,
47
- required: input.required,
48
- options: input.options
49
- });
79
+ model_name: input.model_name,
80
+ }, input.context || {});
50
81
  if (!response.success) {
51
82
  throw new Error(response.error || "Failed to create field");
52
83
  }
@@ -57,7 +88,7 @@ Fields extend data models with custom attributes.`,
57
88
  };
58
89
  }
59
90
  catch (error) {
60
- logger.error("zudelloCreateField error", input, error);
91
+ logger.error("zudelloCreateField error", { path: input.path }, error);
61
92
  return {
62
93
  success: false,
63
94
  error: error.message
@@ -1 +1 @@
1
- {"version":3,"file":"create-field.js","sourceRoot":"","sources":["../../../../src/tools/admin/fields/create-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAGxE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;kDAGmC;IAChD,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kCAAkC;aAChD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kCAAkC;aAChD;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,qCAAqC;aACnD;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uDAAuD;aACrE;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;KAC7C;IACD,OAAO,EAAE,KAAK,EACZ,KAOC,EACD,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YAElD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE;gBACrD,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC9D,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,QAAQ,CAAC,IAAI;gBACpB,OAAO,EAAE,UAAU,KAAK,CAAC,KAAK,wBAAwB;aACvD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,EAAE,KAAc,CAAC,CAAC;YAChE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"create-field.js","sourceRoot":"","sources":["../../../../src/tools/admin/fields/create-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAGhF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sEA6CuD;IACpE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kCAAkC;aAChD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kCAAkC;aAChD;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8EAA8E;aAC5F;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC;KAC1C;IACD,OAAO,EAAE,KAAK,EACZ,KAKC,EACD,WAAwB,EACxB,EAAE;QACF,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAEnH,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAC/C,WAAW,EACX;gBACE,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,EACD,KAAK,CAAC,OAAO,IAAI,EAAE,CACpB,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC9D,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,QAAQ,CAAC,IAAI;gBACpB,OAAO,EAAE,UAAU,KAAK,CAAC,KAAK,wBAAwB;aACvD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAc,CAAC,CAAC;YAC/E,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -16,7 +16,7 @@ export declare const zudelloGetField: {
16
16
  uuid: string;
17
17
  }, authContext: AuthContext) => Promise<{
18
18
  success: boolean;
19
- field: import("../../../services/zudello/admin.js").Field | undefined;
19
+ field: import("../../../services/zudello/admin.js").ZudelloFieldSettings | undefined;
20
20
  error?: undefined;
21
21
  } | {
22
22
  success: boolean;