@zudello/modelcontextprotocol 1.0.0
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 +667 -0
- package/dist/constants/zudello.d.ts +627 -0
- package/dist/constants/zudello.d.ts.map +1 -0
- package/dist/constants/zudello.js +1467 -0
- package/dist/constants/zudello.js.map +1 -0
- package/dist/context/auth.d.ts +22 -0
- package/dist/context/auth.d.ts.map +1 -0
- package/dist/context/auth.js +62 -0
- package/dist/context/auth.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +126 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/zudello-system.d.ts +6 -0
- package/dist/prompts/zudello-system.d.ts.map +1 -0
- package/dist/prompts/zudello-system.js +1821 -0
- package/dist/prompts/zudello-system.js.map +1 -0
- package/dist/services/zudello/admin.d.ts +93 -0
- package/dist/services/zudello/admin.d.ts.map +1 -0
- package/dist/services/zudello/admin.js +264 -0
- package/dist/services/zudello/admin.js.map +1 -0
- package/dist/services/zudello/automation.d.ts +92 -0
- package/dist/services/zudello/automation.d.ts.map +1 -0
- package/dist/services/zudello/automation.js +365 -0
- package/dist/services/zudello/automation.js.map +1 -0
- package/dist/services/zudello/connections.d.ts +111 -0
- package/dist/services/zudello/connections.d.ts.map +1 -0
- package/dist/services/zudello/connections.js +289 -0
- package/dist/services/zudello/connections.js.map +1 -0
- package/dist/services/zudello/core.d.ts +26 -0
- package/dist/services/zudello/core.d.ts.map +1 -0
- package/dist/services/zudello/core.js +51 -0
- package/dist/services/zudello/core.js.map +1 -0
- package/dist/services/zudello/document-context.d.ts +5 -0
- package/dist/services/zudello/document-context.d.ts.map +1 -0
- package/dist/services/zudello/document-context.js +33 -0
- package/dist/services/zudello/document-context.js.map +1 -0
- package/dist/services/zudello/documents.d.ts +110 -0
- package/dist/services/zudello/documents.d.ts.map +1 -0
- package/dist/services/zudello/documents.js +865 -0
- package/dist/services/zudello/documents.js.map +1 -0
- package/dist/services/zudello/inboxes.d.ts +13 -0
- package/dist/services/zudello/inboxes.d.ts.map +1 -0
- package/dist/services/zudello/inboxes.js +115 -0
- package/dist/services/zudello/inboxes.js.map +1 -0
- package/dist/services/zudello/index.d.ts +21 -0
- package/dist/services/zudello/index.d.ts.map +1 -0
- package/dist/services/zudello/index.js +55 -0
- package/dist/services/zudello/index.js.map +1 -0
- package/dist/services/zudello/language.d.ts +18 -0
- package/dist/services/zudello/language.d.ts.map +1 -0
- package/dist/services/zudello/language.js +83 -0
- package/dist/services/zudello/language.js.map +1 -0
- package/dist/services/zudello/notifications.d.ts +20 -0
- package/dist/services/zudello/notifications.d.ts.map +1 -0
- package/dist/services/zudello/notifications.js +106 -0
- package/dist/services/zudello/notifications.js.map +1 -0
- package/dist/services/zudello/organization.d.ts +125 -0
- package/dist/services/zudello/organization.d.ts.map +1 -0
- package/dist/services/zudello/organization.js +686 -0
- package/dist/services/zudello/organization.js.map +1 -0
- package/dist/services/zudello/resources.d.ts +83 -0
- package/dist/services/zudello/resources.d.ts.map +1 -0
- package/dist/services/zudello/resources.js +554 -0
- package/dist/services/zudello/resources.js.map +1 -0
- package/dist/services/zudello/sentences.d.ts +79 -0
- package/dist/services/zudello/sentences.d.ts.map +1 -0
- package/dist/services/zudello/sentences.js +357 -0
- package/dist/services/zudello/sentences.js.map +1 -0
- package/dist/services/zudello/types.d.ts +1126 -0
- package/dist/services/zudello/types.d.ts.map +1 -0
- package/dist/services/zudello/types.js +8 -0
- package/dist/services/zudello/types.js.map +1 -0
- package/dist/services/zudello/users.d.ts +66 -0
- package/dist/services/zudello/users.d.ts.map +1 -0
- package/dist/services/zudello/users.js +187 -0
- package/dist/services/zudello/users.js.map +1 -0
- package/dist/tools/admin/datasets/create-dataset.d.ts +44 -0
- package/dist/tools/admin/datasets/create-dataset.d.ts.map +1 -0
- package/dist/tools/admin/datasets/create-dataset.js +58 -0
- package/dist/tools/admin/datasets/create-dataset.js.map +1 -0
- package/dist/tools/admin/datasets/get-dataset.d.ts +27 -0
- package/dist/tools/admin/datasets/get-dataset.d.ts.map +1 -0
- package/dist/tools/admin/datasets/get-dataset.js +39 -0
- package/dist/tools/admin/datasets/get-dataset.js.map +1 -0
- package/dist/tools/admin/datasets/index.d.ts +5 -0
- package/dist/tools/admin/datasets/index.d.ts.map +1 -0
- package/dist/tools/admin/datasets/index.js +5 -0
- package/dist/tools/admin/datasets/index.js.map +1 -0
- package/dist/tools/admin/datasets/list-datasets.d.ts +35 -0
- package/dist/tools/admin/datasets/list-datasets.d.ts.map +1 -0
- package/dist/tools/admin/datasets/list-datasets.js +49 -0
- package/dist/tools/admin/datasets/list-datasets.js.map +1 -0
- package/dist/tools/admin/datasets/update-dataset.d.ts +44 -0
- package/dist/tools/admin/datasets/update-dataset.d.ts.map +1 -0
- package/dist/tools/admin/datasets/update-dataset.js +57 -0
- package/dist/tools/admin/datasets/update-dataset.js.map +1 -0
- package/dist/tools/admin/fields/create-field.d.ts +54 -0
- package/dist/tools/admin/fields/create-field.d.ts.map +1 -0
- package/dist/tools/admin/fields/create-field.js +68 -0
- package/dist/tools/admin/fields/create-field.js.map +1 -0
- package/dist/tools/admin/fields/get-field.d.ts +27 -0
- package/dist/tools/admin/fields/get-field.d.ts.map +1 -0
- package/dist/tools/admin/fields/get-field.js +39 -0
- package/dist/tools/admin/fields/get-field.js.map +1 -0
- package/dist/tools/admin/fields/index.d.ts +5 -0
- package/dist/tools/admin/fields/index.d.ts.map +1 -0
- package/dist/tools/admin/fields/index.js +5 -0
- package/dist/tools/admin/fields/index.js.map +1 -0
- package/dist/tools/admin/fields/list-fields.d.ts +36 -0
- package/dist/tools/admin/fields/list-fields.d.ts.map +1 -0
- package/dist/tools/admin/fields/list-fields.js +50 -0
- package/dist/tools/admin/fields/list-fields.js.map +1 -0
- package/dist/tools/admin/fields/update-field.d.ts +44 -0
- package/dist/tools/admin/fields/update-field.d.ts.map +1 -0
- package/dist/tools/admin/fields/update-field.js +57 -0
- package/dist/tools/admin/fields/update-field.js.map +1 -0
- package/dist/tools/admin/index.d.ts +4 -0
- package/dist/tools/admin/index.d.ts.map +1 -0
- package/dist/tools/admin/index.js +7 -0
- package/dist/tools/admin/index.js.map +1 -0
- package/dist/tools/admin/quick-actions/create-quick-action.d.ts +49 -0
- package/dist/tools/admin/quick-actions/create-quick-action.d.ts.map +1 -0
- package/dist/tools/admin/quick-actions/create-quick-action.js +63 -0
- package/dist/tools/admin/quick-actions/create-quick-action.js.map +1 -0
- package/dist/tools/admin/quick-actions/get-quick-action.d.ts +27 -0
- package/dist/tools/admin/quick-actions/get-quick-action.d.ts.map +1 -0
- package/dist/tools/admin/quick-actions/get-quick-action.js +39 -0
- package/dist/tools/admin/quick-actions/get-quick-action.js.map +1 -0
- package/dist/tools/admin/quick-actions/index.d.ts +6 -0
- package/dist/tools/admin/quick-actions/index.d.ts.map +1 -0
- package/dist/tools/admin/quick-actions/index.js +6 -0
- package/dist/tools/admin/quick-actions/index.js.map +1 -0
- package/dist/tools/admin/quick-actions/list-quick-actions.d.ts +35 -0
- package/dist/tools/admin/quick-actions/list-quick-actions.d.ts.map +1 -0
- package/dist/tools/admin/quick-actions/list-quick-actions.js +49 -0
- package/dist/tools/admin/quick-actions/list-quick-actions.js.map +1 -0
- package/dist/tools/admin/quick-actions/trigger-quick-action.d.ts +41 -0
- package/dist/tools/admin/quick-actions/trigger-quick-action.d.ts.map +1 -0
- package/dist/tools/admin/quick-actions/trigger-quick-action.js +53 -0
- package/dist/tools/admin/quick-actions/trigger-quick-action.js.map +1 -0
- package/dist/tools/admin/quick-actions/update-quick-action.d.ts +49 -0
- package/dist/tools/admin/quick-actions/update-quick-action.d.ts.map +1 -0
- package/dist/tools/admin/quick-actions/update-quick-action.js +62 -0
- package/dist/tools/admin/quick-actions/update-quick-action.js.map +1 -0
- package/dist/tools/approvals/get-approval-flows.d.ts +27 -0
- package/dist/tools/approvals/get-approval-flows.d.ts.map +1 -0
- package/dist/tools/approvals/get-approval-flows.js +35 -0
- package/dist/tools/approvals/get-approval-flows.js.map +1 -0
- package/dist/tools/approvals/index.d.ts +2 -0
- package/dist/tools/approvals/index.d.ts.map +1 -0
- package/dist/tools/approvals/index.js +2 -0
- package/dist/tools/approvals/index.js.map +1 -0
- package/dist/tools/automation/get-automation-logs.d.ts +59 -0
- package/dist/tools/automation/get-automation-logs.d.ts.map +1 -0
- package/dist/tools/automation/get-automation-logs.js +75 -0
- package/dist/tools/automation/get-automation-logs.js.map +1 -0
- package/dist/tools/automation/get-run-logs-content.d.ts +42 -0
- package/dist/tools/automation/get-run-logs-content.d.ts.map +1 -0
- package/dist/tools/automation/get-run-logs-content.js +27 -0
- package/dist/tools/automation/get-run-logs-content.js.map +1 -0
- package/dist/tools/automation/get-run-logs.d.ts +37 -0
- package/dist/tools/automation/get-run-logs.d.ts.map +1 -0
- package/dist/tools/automation/get-run-logs.js +27 -0
- package/dist/tools/automation/get-run-logs.js.map +1 -0
- package/dist/tools/automation/get-script.d.ts +33 -0
- package/dist/tools/automation/get-script.d.ts.map +1 -0
- package/dist/tools/automation/get-script.js +24 -0
- package/dist/tools/automation/get-script.js.map +1 -0
- package/dist/tools/automation/get-trigger.d.ts +27 -0
- package/dist/tools/automation/get-trigger.d.ts.map +1 -0
- package/dist/tools/automation/get-trigger.js +24 -0
- package/dist/tools/automation/get-trigger.js.map +1 -0
- package/dist/tools/automation/index.d.ts +16 -0
- package/dist/tools/automation/index.d.ts.map +1 -0
- package/dist/tools/automation/index.js +16 -0
- package/dist/tools/automation/index.js.map +1 -0
- package/dist/tools/automation/list-global-integrations.d.ts +23 -0
- package/dist/tools/automation/list-global-integrations.d.ts.map +1 -0
- package/dist/tools/automation/list-global-integrations.js +41 -0
- package/dist/tools/automation/list-global-integrations.js.map +1 -0
- package/dist/tools/automation/list-global-scripts-for-integration.d.ts +38 -0
- package/dist/tools/automation/list-global-scripts-for-integration.d.ts.map +1 -0
- package/dist/tools/automation/list-global-scripts-for-integration.js +50 -0
- package/dist/tools/automation/list-global-scripts-for-integration.js.map +1 -0
- package/dist/tools/automation/list-scripts.d.ts +26 -0
- package/dist/tools/automation/list-scripts.d.ts.map +1 -0
- package/dist/tools/automation/list-scripts.js +23 -0
- package/dist/tools/automation/list-scripts.js.map +1 -0
- package/dist/tools/automation/list-triggers.d.ts +23 -0
- package/dist/tools/automation/list-triggers.d.ts.map +1 -0
- package/dist/tools/automation/list-triggers.js +38 -0
- package/dist/tools/automation/list-triggers.js.map +1 -0
- package/dist/tools/automation/search-runs.d.ts +43 -0
- package/dist/tools/automation/search-runs.d.ts.map +1 -0
- package/dist/tools/automation/search-runs.js +32 -0
- package/dist/tools/automation/search-runs.js.map +1 -0
- package/dist/tools/bulk/approve-milestones.d.ts +59 -0
- package/dist/tools/bulk/approve-milestones.d.ts.map +1 -0
- package/dist/tools/bulk/approve-milestones.js +47 -0
- package/dist/tools/bulk/approve-milestones.js.map +1 -0
- package/dist/tools/bulk/index.d.ts +3 -0
- package/dist/tools/bulk/index.d.ts.map +1 -0
- package/dist/tools/bulk/index.js +3 -0
- package/dist/tools/bulk/index.js.map +1 -0
- package/dist/tools/bulk/send-reminders.d.ts +32 -0
- package/dist/tools/bulk/send-reminders.d.ts.map +1 -0
- package/dist/tools/bulk/send-reminders.js +37 -0
- package/dist/tools/bulk/send-reminders.js.map +1 -0
- package/dist/tools/config/create-config.d.ts +43 -0
- package/dist/tools/config/create-config.d.ts.map +1 -0
- package/dist/tools/config/create-config.js +61 -0
- package/dist/tools/config/create-config.js.map +1 -0
- package/dist/tools/config/get-config.d.ts +40 -0
- package/dist/tools/config/get-config.d.ts.map +1 -0
- package/dist/tools/config/get-config.js +52 -0
- package/dist/tools/config/get-config.js.map +1 -0
- package/dist/tools/config/index.d.ts +11 -0
- package/dist/tools/config/index.d.ts.map +1 -0
- package/dist/tools/config/index.js +11 -0
- package/dist/tools/config/index.js.map +1 -0
- package/dist/tools/config/list-configs.d.ts +48 -0
- package/dist/tools/config/list-configs.d.ts.map +1 -0
- package/dist/tools/config/list-configs.js +74 -0
- package/dist/tools/config/list-configs.js.map +1 -0
- package/dist/tools/config/update-config.d.ts +48 -0
- package/dist/tools/config/update-config.d.ts.map +1 -0
- package/dist/tools/config/update-config.js +64 -0
- package/dist/tools/config/update-config.js.map +1 -0
- package/dist/tools/config/update-configs-order.d.ts +39 -0
- package/dist/tools/config/update-configs-order.d.ts.map +1 -0
- package/dist/tools/config/update-configs-order.js +58 -0
- package/dist/tools/config/update-configs-order.js.map +1 -0
- package/dist/tools/connections/check-connection-status.d.ts +60 -0
- package/dist/tools/connections/check-connection-status.d.ts.map +1 -0
- package/dist/tools/connections/check-connection-status.js +94 -0
- package/dist/tools/connections/check-connection-status.js.map +1 -0
- package/dist/tools/connections/get-connection-template.d.ts +44 -0
- package/dist/tools/connections/get-connection-template.d.ts.map +1 -0
- package/dist/tools/connections/get-connection-template.js +55 -0
- package/dist/tools/connections/get-connection-template.js.map +1 -0
- package/dist/tools/connections/index.d.ts +11 -0
- package/dist/tools/connections/index.d.ts.map +1 -0
- package/dist/tools/connections/index.js +11 -0
- package/dist/tools/connections/index.js.map +1 -0
- package/dist/tools/connections/list-available-integrations.d.ts +29 -0
- package/dist/tools/connections/list-available-integrations.d.ts.map +1 -0
- package/dist/tools/connections/list-available-integrations.js +46 -0
- package/dist/tools/connections/list-available-integrations.js.map +1 -0
- package/dist/tools/connections/list-connections.d.ts +29 -0
- package/dist/tools/connections/list-connections.d.ts.map +1 -0
- package/dist/tools/connections/list-connections.js +48 -0
- package/dist/tools/connections/list-connections.js.map +1 -0
- package/dist/tools/connections/reconnect.d.ts +40 -0
- package/dist/tools/connections/reconnect.d.ts.map +1 -0
- package/dist/tools/connections/reconnect.js +67 -0
- package/dist/tools/connections/reconnect.js.map +1 -0
- package/dist/tools/control/index.d.ts +7 -0
- package/dist/tools/control/index.d.ts.map +1 -0
- package/dist/tools/control/index.js +7 -0
- package/dist/tools/control/index.js.map +1 -0
- package/dist/tools/control/initiate-sync.d.ts +38 -0
- package/dist/tools/control/initiate-sync.d.ts.map +1 -0
- package/dist/tools/control/initiate-sync.js +47 -0
- package/dist/tools/control/initiate-sync.js.map +1 -0
- package/dist/tools/control/set-trigger-enabled.d.ts +36 -0
- package/dist/tools/control/set-trigger-enabled.d.ts.map +1 -0
- package/dist/tools/control/set-trigger-enabled.js +46 -0
- package/dist/tools/control/set-trigger-enabled.js.map +1 -0
- package/dist/tools/core/fetch.d.ts +8 -0
- package/dist/tools/core/fetch.d.ts.map +1 -0
- package/dist/tools/core/fetch.js +48 -0
- package/dist/tools/core/fetch.js.map +1 -0
- package/dist/tools/core/index.d.ts +4 -0
- package/dist/tools/core/index.d.ts.map +1 -0
- package/dist/tools/core/index.js +4 -0
- package/dist/tools/core/index.js.map +1 -0
- package/dist/tools/core/push-message.d.ts +85 -0
- package/dist/tools/core/push-message.d.ts.map +1 -0
- package/dist/tools/core/push-message.js +116 -0
- package/dist/tools/core/push-message.js.map +1 -0
- package/dist/tools/core/search.d.ts +8 -0
- package/dist/tools/core/search.d.ts.map +1 -0
- package/dist/tools/core/search.js +38 -0
- package/dist/tools/core/search.js.map +1 -0
- package/dist/tools/document-context/check-contract-pricing.d.ts +30 -0
- package/dist/tools/document-context/check-contract-pricing.d.ts.map +1 -0
- package/dist/tools/document-context/check-contract-pricing.js +18 -0
- package/dist/tools/document-context/check-contract-pricing.js.map +1 -0
- package/dist/tools/document-context/check-document-budgets.d.ts +36 -0
- package/dist/tools/document-context/check-document-budgets.d.ts.map +1 -0
- package/dist/tools/document-context/check-document-budgets.js +18 -0
- package/dist/tools/document-context/check-document-budgets.js.map +1 -0
- package/dist/tools/document-context/index.d.ts +3 -0
- package/dist/tools/document-context/index.d.ts.map +1 -0
- package/dist/tools/document-context/index.js +3 -0
- package/dist/tools/document-context/index.js.map +1 -0
- package/dist/tools/documents/document-types/create-document-type.d.ts +19 -0
- package/dist/tools/documents/document-types/create-document-type.d.ts.map +1 -0
- package/dist/tools/documents/document-types/create-document-type.js +18 -0
- package/dist/tools/documents/document-types/create-document-type.js.map +1 -0
- package/dist/tools/documents/document-types/get-document-type.d.ts +24 -0
- package/dist/tools/documents/document-types/get-document-type.d.ts.map +1 -0
- package/dist/tools/documents/document-types/get-document-type.js +18 -0
- package/dist/tools/documents/document-types/get-document-type.js.map +1 -0
- package/dist/tools/documents/document-types/get-merged-form-metadata.d.ts +24 -0
- package/dist/tools/documents/document-types/get-merged-form-metadata.d.ts.map +1 -0
- package/dist/tools/documents/document-types/get-merged-form-metadata.js +18 -0
- package/dist/tools/documents/document-types/get-merged-form-metadata.js.map +1 -0
- package/dist/tools/documents/document-types/index.d.ts +6 -0
- package/dist/tools/documents/document-types/index.d.ts.map +1 -0
- package/dist/tools/documents/document-types/index.js +6 -0
- package/dist/tools/documents/document-types/index.js.map +1 -0
- package/dist/tools/documents/document-types/list-document-types.d.ts +21 -0
- package/dist/tools/documents/document-types/list-document-types.d.ts.map +1 -0
- package/dist/tools/documents/document-types/list-document-types.js +18 -0
- package/dist/tools/documents/document-types/list-document-types.js.map +1 -0
- package/dist/tools/documents/document-types/update-document-type.d.ts +24 -0
- package/dist/tools/documents/document-types/update-document-type.d.ts.map +1 -0
- package/dist/tools/documents/document-types/update-document-type.js +18 -0
- package/dist/tools/documents/document-types/update-document-type.js.map +1 -0
- package/dist/tools/documents/export-templates/create-export-template.d.ts +19 -0
- package/dist/tools/documents/export-templates/create-export-template.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/create-export-template.js +18 -0
- package/dist/tools/documents/export-templates/create-export-template.js.map +1 -0
- package/dist/tools/documents/export-templates/get-export-download-url.d.ts +26 -0
- package/dist/tools/documents/export-templates/get-export-download-url.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/get-export-download-url.js +18 -0
- package/dist/tools/documents/export-templates/get-export-download-url.js.map +1 -0
- package/dist/tools/documents/export-templates/get-export-template.d.ts +27 -0
- package/dist/tools/documents/export-templates/get-export-template.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/get-export-template.js +33 -0
- package/dist/tools/documents/export-templates/get-export-template.js.map +1 -0
- package/dist/tools/documents/export-templates/index.d.ts +8 -0
- package/dist/tools/documents/export-templates/index.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/index.js +8 -0
- package/dist/tools/documents/export-templates/index.js.map +1 -0
- package/dist/tools/documents/export-templates/list-export-templates.d.ts +21 -0
- package/dist/tools/documents/export-templates/list-export-templates.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/list-export-templates.js +31 -0
- package/dist/tools/documents/export-templates/list-export-templates.js.map +1 -0
- package/dist/tools/documents/export-templates/list-exports.d.ts +21 -0
- package/dist/tools/documents/export-templates/list-exports.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/list-exports.js +18 -0
- package/dist/tools/documents/export-templates/list-exports.js.map +1 -0
- package/dist/tools/documents/export-templates/run-export.d.ts +26 -0
- package/dist/tools/documents/export-templates/run-export.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/run-export.js +18 -0
- package/dist/tools/documents/export-templates/run-export.js.map +1 -0
- package/dist/tools/documents/export-templates/update-export-template.d.ts +24 -0
- package/dist/tools/documents/export-templates/update-export-template.d.ts.map +1 -0
- package/dist/tools/documents/export-templates/update-export-template.js +18 -0
- package/dist/tools/documents/export-templates/update-export-template.js.map +1 -0
- package/dist/tools/documents/index.d.ts +3 -0
- package/dist/tools/documents/index.d.ts.map +1 -0
- package/dist/tools/documents/index.js +3 -0
- package/dist/tools/documents/index.js.map +1 -0
- package/dist/tools/exceptions/budget/create-budget-exception-reason.d.ts +42 -0
- package/dist/tools/exceptions/budget/create-budget-exception-reason.d.ts.map +1 -0
- package/dist/tools/exceptions/budget/create-budget-exception-reason.js +82 -0
- package/dist/tools/exceptions/budget/create-budget-exception-reason.js.map +1 -0
- package/dist/tools/exceptions/budget/index.d.ts +4 -0
- package/dist/tools/exceptions/budget/index.d.ts.map +1 -0
- package/dist/tools/exceptions/budget/index.js +4 -0
- package/dist/tools/exceptions/budget/index.js.map +1 -0
- package/dist/tools/exceptions/budget/list-budget-exception-reasons.d.ts +29 -0
- package/dist/tools/exceptions/budget/list-budget-exception-reasons.d.ts.map +1 -0
- package/dist/tools/exceptions/budget/list-budget-exception-reasons.js +60 -0
- package/dist/tools/exceptions/budget/list-budget-exception-reasons.js.map +1 -0
- package/dist/tools/exceptions/budget/update-budget-exception-reason.d.ts +47 -0
- package/dist/tools/exceptions/budget/update-budget-exception-reason.d.ts.map +1 -0
- package/dist/tools/exceptions/budget/update-budget-exception-reason.js +77 -0
- package/dist/tools/exceptions/budget/update-budget-exception-reason.js.map +1 -0
- package/dist/tools/exceptions/contract/create-contract-exception-reason.d.ts +42 -0
- package/dist/tools/exceptions/contract/create-contract-exception-reason.d.ts.map +1 -0
- package/dist/tools/exceptions/contract/create-contract-exception-reason.js +82 -0
- package/dist/tools/exceptions/contract/create-contract-exception-reason.js.map +1 -0
- package/dist/tools/exceptions/contract/index.d.ts +4 -0
- package/dist/tools/exceptions/contract/index.d.ts.map +1 -0
- package/dist/tools/exceptions/contract/index.js +4 -0
- package/dist/tools/exceptions/contract/index.js.map +1 -0
- package/dist/tools/exceptions/contract/list-contract-exception-reasons.d.ts +29 -0
- package/dist/tools/exceptions/contract/list-contract-exception-reasons.d.ts.map +1 -0
- package/dist/tools/exceptions/contract/list-contract-exception-reasons.js +60 -0
- package/dist/tools/exceptions/contract/list-contract-exception-reasons.js.map +1 -0
- package/dist/tools/exceptions/contract/update-contract-exception-reason.d.ts +47 -0
- package/dist/tools/exceptions/contract/update-contract-exception-reason.d.ts.map +1 -0
- package/dist/tools/exceptions/contract/update-contract-exception-reason.js +77 -0
- package/dist/tools/exceptions/contract/update-contract-exception-reason.js.map +1 -0
- package/dist/tools/exceptions/index.d.ts +3 -0
- package/dist/tools/exceptions/index.d.ts.map +1 -0
- package/dist/tools/exceptions/index.js +3 -0
- package/dist/tools/exceptions/index.js.map +1 -0
- package/dist/tools/history/get-history.d.ts +34 -0
- package/dist/tools/history/get-history.d.ts.map +1 -0
- package/dist/tools/history/get-history.js +29 -0
- package/dist/tools/history/get-history.js.map +1 -0
- package/dist/tools/history/index.d.ts +7 -0
- package/dist/tools/history/index.d.ts.map +1 -0
- package/dist/tools/history/index.js +7 -0
- package/dist/tools/history/index.js.map +1 -0
- package/dist/tools/inboxes/create-inbox-template.d.ts +23 -0
- package/dist/tools/inboxes/create-inbox-template.d.ts.map +1 -0
- package/dist/tools/inboxes/create-inbox-template.js +26 -0
- package/dist/tools/inboxes/create-inbox-template.js.map +1 -0
- package/dist/tools/inboxes/create-inbox.d.ts +26 -0
- package/dist/tools/inboxes/create-inbox.d.ts.map +1 -0
- package/dist/tools/inboxes/create-inbox.js +26 -0
- package/dist/tools/inboxes/create-inbox.js.map +1 -0
- package/dist/tools/inboxes/fetch-inbox.d.ts +24 -0
- package/dist/tools/inboxes/fetch-inbox.d.ts.map +1 -0
- package/dist/tools/inboxes/fetch-inbox.js +26 -0
- package/dist/tools/inboxes/fetch-inbox.js.map +1 -0
- package/dist/tools/inboxes/get-inbound-domain.d.ts +21 -0
- package/dist/tools/inboxes/get-inbound-domain.d.ts.map +1 -0
- package/dist/tools/inboxes/get-inbound-domain.js +26 -0
- package/dist/tools/inboxes/get-inbound-domain.js.map +1 -0
- package/dist/tools/inboxes/index.d.ts +9 -0
- package/dist/tools/inboxes/index.d.ts.map +1 -0
- package/dist/tools/inboxes/index.js +9 -0
- package/dist/tools/inboxes/index.js.map +1 -0
- package/dist/tools/inboxes/list-inbox-templates.d.ts +21 -0
- package/dist/tools/inboxes/list-inbox-templates.d.ts.map +1 -0
- package/dist/tools/inboxes/list-inbox-templates.js +26 -0
- package/dist/tools/inboxes/list-inbox-templates.js.map +1 -0
- package/dist/tools/inboxes/list-inboxes.d.ts +21 -0
- package/dist/tools/inboxes/list-inboxes.d.ts.map +1 -0
- package/dist/tools/inboxes/list-inboxes.js +26 -0
- package/dist/tools/inboxes/list-inboxes.js.map +1 -0
- package/dist/tools/inboxes/update-inbox-template.d.ts +23 -0
- package/dist/tools/inboxes/update-inbox-template.d.ts.map +1 -0
- package/dist/tools/inboxes/update-inbox-template.js +26 -0
- package/dist/tools/inboxes/update-inbox-template.js.map +1 -0
- package/dist/tools/inboxes/update-inbox.d.ts +23 -0
- package/dist/tools/inboxes/update-inbox.d.ts.map +1 -0
- package/dist/tools/inboxes/update-inbox.js +26 -0
- package/dist/tools/inboxes/update-inbox.js.map +1 -0
- package/dist/tools/index.d.ts +18 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +171 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/language/get-language-placeholders.d.ts +27 -0
- package/dist/tools/language/get-language-placeholders.d.ts.map +1 -0
- package/dist/tools/language/get-language-placeholders.js +40 -0
- package/dist/tools/language/get-language-placeholders.js.map +1 -0
- package/dist/tools/language/index.d.ts +3 -0
- package/dist/tools/language/index.d.ts.map +1 -0
- package/dist/tools/language/index.js +3 -0
- package/dist/tools/language/index.js.map +1 -0
- package/dist/tools/language/update-language-placeholders.d.ts +39 -0
- package/dist/tools/language/update-language-placeholders.d.ts.map +1 -0
- package/dist/tools/language/update-language-placeholders.js +56 -0
- package/dist/tools/language/update-language-placeholders.js.map +1 -0
- package/dist/tools/models/get-field-metadata.d.ts +49 -0
- package/dist/tools/models/get-field-metadata.d.ts.map +1 -0
- package/dist/tools/models/get-field-metadata.js +77 -0
- package/dist/tools/models/get-field-metadata.js.map +1 -0
- package/dist/tools/models/get-model-metadata.d.ts +32 -0
- package/dist/tools/models/get-model-metadata.d.ts.map +1 -0
- package/dist/tools/models/get-model-metadata.js +46 -0
- package/dist/tools/models/get-model-metadata.js.map +1 -0
- package/dist/tools/models/get-model-relations.d.ts +32 -0
- package/dist/tools/models/get-model-relations.d.ts.map +1 -0
- package/dist/tools/models/get-model-relations.js +47 -0
- package/dist/tools/models/get-model-relations.js.map +1 -0
- package/dist/tools/models/get-model-schema.d.ts +32 -0
- package/dist/tools/models/get-model-schema.d.ts.map +1 -0
- package/dist/tools/models/get-model-schema.js +46 -0
- package/dist/tools/models/get-model-schema.js.map +1 -0
- package/dist/tools/models/index.d.ts +11 -0
- package/dist/tools/models/index.d.ts.map +1 -0
- package/dist/tools/models/index.js +11 -0
- package/dist/tools/models/index.js.map +1 -0
- package/dist/tools/models/list-models.d.ts +24 -0
- package/dist/tools/models/list-models.d.ts.map +1 -0
- package/dist/tools/models/list-models.js +45 -0
- package/dist/tools/models/list-models.js.map +1 -0
- package/dist/tools/notifications/get-notification-preferences.d.ts +41 -0
- package/dist/tools/notifications/get-notification-preferences.d.ts.map +1 -0
- package/dist/tools/notifications/get-notification-preferences.js +72 -0
- package/dist/tools/notifications/get-notification-preferences.js.map +1 -0
- package/dist/tools/notifications/index.d.ts +4 -0
- package/dist/tools/notifications/index.d.ts.map +1 -0
- package/dist/tools/notifications/index.js +4 -0
- package/dist/tools/notifications/index.js.map +1 -0
- package/dist/tools/notifications/list-notification-types.d.ts +23 -0
- package/dist/tools/notifications/list-notification-types.d.ts.map +1 -0
- package/dist/tools/notifications/list-notification-types.js +56 -0
- package/dist/tools/notifications/list-notification-types.js.map +1 -0
- package/dist/tools/notifications/update-notification-preferences.d.ts +65 -0
- package/dist/tools/notifications/update-notification-preferences.d.ts.map +1 -0
- package/dist/tools/notifications/update-notification-preferences.js +84 -0
- package/dist/tools/notifications/update-notification-preferences.js.map +1 -0
- package/dist/tools/org-admin/index.d.ts +3 -0
- package/dist/tools/org-admin/index.d.ts.map +1 -0
- package/dist/tools/org-admin/index.js +3 -0
- package/dist/tools/org-admin/index.js.map +1 -0
- package/dist/tools/org-admin/teams/fetch-org-team.d.ts +24 -0
- package/dist/tools/org-admin/teams/fetch-org-team.d.ts.map +1 -0
- package/dist/tools/org-admin/teams/fetch-org-team.js +18 -0
- package/dist/tools/org-admin/teams/fetch-org-team.js.map +1 -0
- package/dist/tools/org-admin/teams/index.d.ts +4 -0
- package/dist/tools/org-admin/teams/index.d.ts.map +1 -0
- package/dist/tools/org-admin/teams/index.js +4 -0
- package/dist/tools/org-admin/teams/index.js.map +1 -0
- package/dist/tools/org-admin/teams/list-org-teams.d.ts +21 -0
- package/dist/tools/org-admin/teams/list-org-teams.d.ts.map +1 -0
- package/dist/tools/org-admin/teams/list-org-teams.js +18 -0
- package/dist/tools/org-admin/teams/list-org-teams.js.map +1 -0
- package/dist/tools/org-admin/teams/update-org-team.d.ts +24 -0
- package/dist/tools/org-admin/teams/update-org-team.d.ts.map +1 -0
- package/dist/tools/org-admin/teams/update-org-team.js +18 -0
- package/dist/tools/org-admin/teams/update-org-team.js.map +1 -0
- package/dist/tools/org-admin/users/assign-user-to-team.d.ts +27 -0
- package/dist/tools/org-admin/users/assign-user-to-team.d.ts.map +1 -0
- package/dist/tools/org-admin/users/assign-user-to-team.js +22 -0
- package/dist/tools/org-admin/users/assign-user-to-team.js.map +1 -0
- package/dist/tools/org-admin/users/create-org-user.d.ts +19 -0
- package/dist/tools/org-admin/users/create-org-user.d.ts.map +1 -0
- package/dist/tools/org-admin/users/create-org-user.js +18 -0
- package/dist/tools/org-admin/users/create-org-user.js.map +1 -0
- package/dist/tools/org-admin/users/fetch-org-user.d.ts +24 -0
- package/dist/tools/org-admin/users/fetch-org-user.d.ts.map +1 -0
- package/dist/tools/org-admin/users/fetch-org-user.js +18 -0
- package/dist/tools/org-admin/users/fetch-org-user.js.map +1 -0
- package/dist/tools/org-admin/users/index.d.ts +7 -0
- package/dist/tools/org-admin/users/index.d.ts.map +1 -0
- package/dist/tools/org-admin/users/index.js +7 -0
- package/dist/tools/org-admin/users/index.js.map +1 -0
- package/dist/tools/org-admin/users/list-org-user-groups.d.ts +21 -0
- package/dist/tools/org-admin/users/list-org-user-groups.d.ts.map +1 -0
- package/dist/tools/org-admin/users/list-org-user-groups.js +18 -0
- package/dist/tools/org-admin/users/list-org-user-groups.js.map +1 -0
- package/dist/tools/org-admin/users/list-org-users.d.ts +21 -0
- package/dist/tools/org-admin/users/list-org-users.d.ts.map +1 -0
- package/dist/tools/org-admin/users/list-org-users.js +18 -0
- package/dist/tools/org-admin/users/list-org-users.js.map +1 -0
- package/dist/tools/org-admin/users/update-org-user.d.ts +24 -0
- package/dist/tools/org-admin/users/update-org-user.d.ts.map +1 -0
- package/dist/tools/org-admin/users/update-org-user.js +18 -0
- package/dist/tools/org-admin/users/update-org-user.js.map +1 -0
- package/dist/tools/resources/get-resources.d.ts +46 -0
- package/dist/tools/resources/get-resources.d.ts.map +1 -0
- package/dist/tools/resources/get-resources.js +56 -0
- package/dist/tools/resources/get-resources.js.map +1 -0
- package/dist/tools/resources/index.d.ts +8 -0
- package/dist/tools/resources/index.d.ts.map +1 -0
- package/dist/tools/resources/index.js +8 -0
- package/dist/tools/resources/index.js.map +1 -0
- package/dist/tools/resources/update-or-create-resources.d.ts +48 -0
- package/dist/tools/resources/update-or-create-resources.d.ts.map +1 -0
- package/dist/tools/resources/update-or-create-resources.js +64 -0
- package/dist/tools/resources/update-or-create-resources.js.map +1 -0
- package/dist/tools/sentences/create-sentence.d.ts +39 -0
- package/dist/tools/sentences/create-sentence.d.ts.map +1 -0
- package/dist/tools/sentences/create-sentence.js +33 -0
- package/dist/tools/sentences/create-sentence.js.map +1 -0
- package/dist/tools/sentences/get-sentence-template.d.ts +32 -0
- package/dist/tools/sentences/get-sentence-template.d.ts.map +1 -0
- package/dist/tools/sentences/get-sentence-template.js +27 -0
- package/dist/tools/sentences/get-sentence-template.js.map +1 -0
- package/dist/tools/sentences/get-sentence.d.ts +32 -0
- package/dist/tools/sentences/get-sentence.d.ts.map +1 -0
- package/dist/tools/sentences/get-sentence.js +27 -0
- package/dist/tools/sentences/get-sentence.js.map +1 -0
- package/dist/tools/sentences/index.d.ts +14 -0
- package/dist/tools/sentences/index.d.ts.map +1 -0
- package/dist/tools/sentences/index.js +14 -0
- package/dist/tools/sentences/index.js.map +1 -0
- package/dist/tools/sentences/list-sentence-resources.d.ts +46 -0
- package/dist/tools/sentences/list-sentence-resources.d.ts.map +1 -0
- package/dist/tools/sentences/list-sentence-resources.js +31 -0
- package/dist/tools/sentences/list-sentence-resources.js.map +1 -0
- package/dist/tools/sentences/list-sentence-templates.d.ts +34 -0
- package/dist/tools/sentences/list-sentence-templates.d.ts.map +1 -0
- package/dist/tools/sentences/list-sentence-templates.js +27 -0
- package/dist/tools/sentences/list-sentence-templates.js.map +1 -0
- package/dist/tools/sentences/list-sentences.d.ts +43 -0
- package/dist/tools/sentences/list-sentences.d.ts.map +1 -0
- package/dist/tools/sentences/list-sentences.js +35 -0
- package/dist/tools/sentences/list-sentences.js.map +1 -0
- package/dist/tools/sentences/update-sentence.d.ts +34 -0
- package/dist/tools/sentences/update-sentence.d.ts.map +1 -0
- package/dist/tools/sentences/update-sentence.js +31 -0
- package/dist/tools/sentences/update-sentence.js.map +1 -0
- package/dist/tools/sentences/update-sentences-order.d.ts +33 -0
- package/dist/tools/sentences/update-sentences-order.d.ts.map +1 -0
- package/dist/tools/sentences/update-sentences-order.js +33 -0
- package/dist/tools/sentences/update-sentences-order.js.map +1 -0
- package/dist/tools/statuses/create-status.d.ts +75 -0
- package/dist/tools/statuses/create-status.d.ts.map +1 -0
- package/dist/tools/statuses/create-status.js +115 -0
- package/dist/tools/statuses/create-status.js.map +1 -0
- package/dist/tools/statuses/get-status.d.ts +27 -0
- package/dist/tools/statuses/get-status.d.ts.map +1 -0
- package/dist/tools/statuses/get-status.js +37 -0
- package/dist/tools/statuses/get-status.js.map +1 -0
- package/dist/tools/statuses/index.d.ts +6 -0
- package/dist/tools/statuses/index.d.ts.map +1 -0
- package/dist/tools/statuses/index.js +6 -0
- package/dist/tools/statuses/index.js.map +1 -0
- package/dist/tools/statuses/list-statuses.d.ts +41 -0
- package/dist/tools/statuses/list-statuses.d.ts.map +1 -0
- package/dist/tools/statuses/list-statuses.js +58 -0
- package/dist/tools/statuses/list-statuses.js.map +1 -0
- package/dist/tools/statuses/reorder-statuses.d.ts +44 -0
- package/dist/tools/statuses/reorder-statuses.d.ts.map +1 -0
- package/dist/tools/statuses/reorder-statuses.js +55 -0
- package/dist/tools/statuses/reorder-statuses.js.map +1 -0
- package/dist/tools/statuses/update-status.d.ts +80 -0
- package/dist/tools/statuses/update-status.d.ts.map +1 -0
- package/dist/tools/statuses/update-status.js +79 -0
- package/dist/tools/statuses/update-status.js.map +1 -0
- package/dist/tools/users/get-user-groups.d.ts +38 -0
- package/dist/tools/users/get-user-groups.d.ts.map +1 -0
- package/dist/tools/users/get-user-groups.js +33 -0
- package/dist/tools/users/get-user-groups.js.map +1 -0
- package/dist/tools/users/get-users.d.ts +66 -0
- package/dist/tools/users/get-users.d.ts.map +1 -0
- package/dist/tools/users/get-users.js +46 -0
- package/dist/tools/users/get-users.js.map +1 -0
- package/dist/tools/users/index.d.ts +3 -0
- package/dist/tools/users/index.d.ts.map +1 -0
- package/dist/tools/users/index.js +3 -0
- package/dist/tools/users/index.js.map +1 -0
- package/dist/types/index.d.ts +49 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +5 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/logger.d.ts +10 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +46 -0
- package/dist/utils/logger.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1,865 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zudello Document Services
|
|
3
|
+
*
|
|
4
|
+
* Document Status, Export Template, and Document Type CRUD operations.
|
|
5
|
+
* Extracted from zudello.ts for modularity.
|
|
6
|
+
*/
|
|
7
|
+
import { logger } from "../../utils/logger.js";
|
|
8
|
+
import { buildZudelloRequest } from "./core.js";
|
|
9
|
+
// ============================================================================
|
|
10
|
+
// Document Status Services
|
|
11
|
+
// ============================================================================
|
|
12
|
+
/**
|
|
13
|
+
* List document statuses with optional filtering
|
|
14
|
+
*/
|
|
15
|
+
export async function listZudelloStatuses(authContext, module, submodule, includePaths) {
|
|
16
|
+
try {
|
|
17
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
18
|
+
const params = new URLSearchParams({
|
|
19
|
+
resource_type: "document_status",
|
|
20
|
+
});
|
|
21
|
+
if (module)
|
|
22
|
+
params.append("module", module);
|
|
23
|
+
if (submodule)
|
|
24
|
+
params.append("submodule", submodule);
|
|
25
|
+
if (includePaths && includePaths.length > 0) {
|
|
26
|
+
params.append("include_paths", JSON.stringify(includePaths));
|
|
27
|
+
}
|
|
28
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
29
|
+
logger.info("Zudello list statuses request", {
|
|
30
|
+
url,
|
|
31
|
+
queryParams: Object.fromEntries(params.entries()),
|
|
32
|
+
module,
|
|
33
|
+
submodule,
|
|
34
|
+
});
|
|
35
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
36
|
+
if (!response.ok) {
|
|
37
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
38
|
+
}
|
|
39
|
+
const data = await response.json();
|
|
40
|
+
logger.info("Zudello list statuses response received", {
|
|
41
|
+
httpStatus: response.status,
|
|
42
|
+
success: data.success,
|
|
43
|
+
resultCount: Array.isArray(data.data) ? data.data.length : 0,
|
|
44
|
+
});
|
|
45
|
+
return { success: true, data: data.data || [] };
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
logger.error("Zudello list statuses error", { module, submodule }, error);
|
|
49
|
+
return { success: false, error: error.message };
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Get a single document status by UUID
|
|
54
|
+
*/
|
|
55
|
+
export async function getZudelloStatus(authContext, statusUuid) {
|
|
56
|
+
try {
|
|
57
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
58
|
+
const params = new URLSearchParams({
|
|
59
|
+
resource_type: "document_status",
|
|
60
|
+
});
|
|
61
|
+
const url = `${apiBase}/general-store/api/v1/resources/${statusUuid}?${params.toString()}`;
|
|
62
|
+
logger.info("Zudello get status request", { url, statusUuid });
|
|
63
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
64
|
+
if (!response.ok) {
|
|
65
|
+
if (response.status === 404) {
|
|
66
|
+
return { success: false, error: `Status not found: ${statusUuid}` };
|
|
67
|
+
}
|
|
68
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
69
|
+
}
|
|
70
|
+
const data = await response.json();
|
|
71
|
+
logger.info("Zudello get status response received", {
|
|
72
|
+
httpStatus: response.status,
|
|
73
|
+
success: data.success,
|
|
74
|
+
hasData: !!data.data,
|
|
75
|
+
});
|
|
76
|
+
if (!data.success || !data.data) {
|
|
77
|
+
return { success: false, error: `Status not found with UUID: ${statusUuid}` };
|
|
78
|
+
}
|
|
79
|
+
return { success: true, data: data.data };
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
logger.error("Zudello get status error", { statusUuid }, error);
|
|
83
|
+
return { success: false, error: error.message };
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Create a new document status
|
|
88
|
+
*/
|
|
89
|
+
export async function createZudelloStatus(authContext, payload, context) {
|
|
90
|
+
try {
|
|
91
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
92
|
+
const params = new URLSearchParams({
|
|
93
|
+
resource_type: "document_status",
|
|
94
|
+
});
|
|
95
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
96
|
+
const body = {
|
|
97
|
+
payload,
|
|
98
|
+
context,
|
|
99
|
+
};
|
|
100
|
+
logger.info("Zudello create status request", {
|
|
101
|
+
url,
|
|
102
|
+
key: payload.key,
|
|
103
|
+
name: payload.name,
|
|
104
|
+
type: payload.type,
|
|
105
|
+
context,
|
|
106
|
+
});
|
|
107
|
+
const response = await fetch(url, {
|
|
108
|
+
method: "POST",
|
|
109
|
+
headers,
|
|
110
|
+
body: JSON.stringify(body),
|
|
111
|
+
});
|
|
112
|
+
if (!response.ok) {
|
|
113
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
114
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
115
|
+
}
|
|
116
|
+
const data = await response.json();
|
|
117
|
+
logger.info("Zudello create status response received", {
|
|
118
|
+
httpStatus: response.status,
|
|
119
|
+
success: data.success,
|
|
120
|
+
uuid: data.data?.uuid,
|
|
121
|
+
});
|
|
122
|
+
if (!data.success) {
|
|
123
|
+
return { success: false, error: data.message || "Failed to create status" };
|
|
124
|
+
}
|
|
125
|
+
return { success: true, data: data.data };
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
logger.error("Zudello create status error", { key: payload.key }, error);
|
|
129
|
+
return { success: false, error: error.message };
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Update an existing document status
|
|
134
|
+
*/
|
|
135
|
+
export async function updateZudelloStatus(authContext, statusUuid, payload, context) {
|
|
136
|
+
try {
|
|
137
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
138
|
+
const params = new URLSearchParams({
|
|
139
|
+
resource_type: "document_status",
|
|
140
|
+
});
|
|
141
|
+
const url = `${apiBase}/general-store/api/v1/resources/${statusUuid}?${params.toString()}`;
|
|
142
|
+
const body = {
|
|
143
|
+
payload,
|
|
144
|
+
context,
|
|
145
|
+
};
|
|
146
|
+
logger.info("Zudello update status request", {
|
|
147
|
+
url,
|
|
148
|
+
statusUuid,
|
|
149
|
+
key: payload.key,
|
|
150
|
+
name: payload.name,
|
|
151
|
+
});
|
|
152
|
+
const response = await fetch(url, {
|
|
153
|
+
method: "PUT",
|
|
154
|
+
headers,
|
|
155
|
+
body: JSON.stringify(body),
|
|
156
|
+
});
|
|
157
|
+
if (!response.ok) {
|
|
158
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
159
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
160
|
+
}
|
|
161
|
+
const data = await response.json();
|
|
162
|
+
logger.info("Zudello update status response received", {
|
|
163
|
+
httpStatus: response.status,
|
|
164
|
+
success: data.success,
|
|
165
|
+
version: data.data?.version,
|
|
166
|
+
});
|
|
167
|
+
if (!data.success) {
|
|
168
|
+
return { success: false, error: data.message || "Failed to update status" };
|
|
169
|
+
}
|
|
170
|
+
return { success: true, data: data.data };
|
|
171
|
+
}
|
|
172
|
+
catch (error) {
|
|
173
|
+
logger.error("Zudello update status error", { statusUuid }, error);
|
|
174
|
+
return { success: false, error: error.message };
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Reorder document statuses
|
|
179
|
+
* Takes an array of {uuid, order} objects to set the display order
|
|
180
|
+
*/
|
|
181
|
+
export async function reorderZudelloStatuses(authContext, statusOrders) {
|
|
182
|
+
try {
|
|
183
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
184
|
+
const params = new URLSearchParams({
|
|
185
|
+
resource_type: "document_status",
|
|
186
|
+
});
|
|
187
|
+
const url = `${apiBase}/general-store/api/v1/resources/order?${params.toString()}`;
|
|
188
|
+
logger.info("Zudello reorder statuses request", {
|
|
189
|
+
url,
|
|
190
|
+
statusCount: statusOrders.length,
|
|
191
|
+
});
|
|
192
|
+
const response = await fetch(url, {
|
|
193
|
+
method: "POST",
|
|
194
|
+
headers,
|
|
195
|
+
body: JSON.stringify(statusOrders),
|
|
196
|
+
});
|
|
197
|
+
if (!response.ok) {
|
|
198
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
199
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
200
|
+
}
|
|
201
|
+
const data = await response.json().catch(() => ({ success: true }));
|
|
202
|
+
logger.info("Zudello reorder statuses response received", {
|
|
203
|
+
httpStatus: response.status,
|
|
204
|
+
success: data.success,
|
|
205
|
+
});
|
|
206
|
+
return { success: true, data: { success: true } };
|
|
207
|
+
}
|
|
208
|
+
catch (error) {
|
|
209
|
+
logger.error("Zudello reorder statuses error", {}, error);
|
|
210
|
+
return { success: false, error: error.message };
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
// ============================================================================
|
|
214
|
+
// Export Template Services
|
|
215
|
+
// ============================================================================
|
|
216
|
+
/**
|
|
217
|
+
* List export templates
|
|
218
|
+
*/
|
|
219
|
+
export async function listZudelloExportTemplates(authContext) {
|
|
220
|
+
try {
|
|
221
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
222
|
+
const params = new URLSearchParams({
|
|
223
|
+
resource_type: "export_template",
|
|
224
|
+
});
|
|
225
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
226
|
+
logger.info("Zudello list export templates request", { url });
|
|
227
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
228
|
+
if (!response.ok) {
|
|
229
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
230
|
+
}
|
|
231
|
+
const data = await response.json();
|
|
232
|
+
logger.info("Zudello list export templates response received", {
|
|
233
|
+
httpStatus: response.status,
|
|
234
|
+
success: data.success,
|
|
235
|
+
resultCount: Array.isArray(data.data) ? data.data.length : 0,
|
|
236
|
+
});
|
|
237
|
+
return { success: true, data: data.data || [] };
|
|
238
|
+
}
|
|
239
|
+
catch (error) {
|
|
240
|
+
logger.error("Zudello list export templates error", {}, error);
|
|
241
|
+
return { success: false, error: error.message };
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Get a single export template by UUID
|
|
246
|
+
*/
|
|
247
|
+
export async function getZudelloExportTemplate(authContext, templateUuid) {
|
|
248
|
+
try {
|
|
249
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
250
|
+
const params = new URLSearchParams({
|
|
251
|
+
resource_type: "export_template",
|
|
252
|
+
});
|
|
253
|
+
const url = `${apiBase}/general-store/api/v1/resources/${templateUuid}?${params.toString()}`;
|
|
254
|
+
logger.info("Zudello get export template request", { url, templateUuid });
|
|
255
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
256
|
+
if (!response.ok) {
|
|
257
|
+
if (response.status === 404) {
|
|
258
|
+
return { success: false, error: `Export template not found: ${templateUuid}` };
|
|
259
|
+
}
|
|
260
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
261
|
+
}
|
|
262
|
+
const data = await response.json();
|
|
263
|
+
logger.info("Zudello get export template response received", {
|
|
264
|
+
httpStatus: response.status,
|
|
265
|
+
success: data.success,
|
|
266
|
+
hasData: !!data.data,
|
|
267
|
+
});
|
|
268
|
+
if (!data.success || !data.data) {
|
|
269
|
+
return { success: false, error: `Export template not found with UUID: ${templateUuid}` };
|
|
270
|
+
}
|
|
271
|
+
return { success: true, data: data.data };
|
|
272
|
+
}
|
|
273
|
+
catch (error) {
|
|
274
|
+
logger.error("Zudello get export template error", { templateUuid }, error);
|
|
275
|
+
return { success: false, error: error.message };
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Create a new export template
|
|
280
|
+
*/
|
|
281
|
+
export async function createZudelloExportTemplate(authContext, payload) {
|
|
282
|
+
try {
|
|
283
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
284
|
+
const params = new URLSearchParams({
|
|
285
|
+
resource_type: "export_template",
|
|
286
|
+
});
|
|
287
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
288
|
+
const body = { payload };
|
|
289
|
+
logger.info("Zudello create export template request", {
|
|
290
|
+
url,
|
|
291
|
+
name: payload.name,
|
|
292
|
+
module: payload.module,
|
|
293
|
+
submodule: payload.submodule,
|
|
294
|
+
});
|
|
295
|
+
const response = await fetch(url, {
|
|
296
|
+
method: "POST",
|
|
297
|
+
headers,
|
|
298
|
+
body: JSON.stringify(body),
|
|
299
|
+
});
|
|
300
|
+
if (!response.ok) {
|
|
301
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
302
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
303
|
+
}
|
|
304
|
+
const data = await response.json();
|
|
305
|
+
logger.info("Zudello create export template response received", {
|
|
306
|
+
httpStatus: response.status,
|
|
307
|
+
success: data.success,
|
|
308
|
+
uuid: data.data?.uuid,
|
|
309
|
+
});
|
|
310
|
+
if (!data.success) {
|
|
311
|
+
return { success: false, error: data.message || "Failed to create export template" };
|
|
312
|
+
}
|
|
313
|
+
return { success: true, data: data.data };
|
|
314
|
+
}
|
|
315
|
+
catch (error) {
|
|
316
|
+
logger.error("Zudello create export template error", { name: payload.name }, error);
|
|
317
|
+
return { success: false, error: error.message };
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Update an existing export template
|
|
322
|
+
*/
|
|
323
|
+
export async function updateZudelloExportTemplate(authContext, templateUuid, payload) {
|
|
324
|
+
try {
|
|
325
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
326
|
+
const params = new URLSearchParams({
|
|
327
|
+
resource_type: "export_template",
|
|
328
|
+
});
|
|
329
|
+
const url = `${apiBase}/general-store/api/v1/resources/${templateUuid}?${params.toString()}`;
|
|
330
|
+
const body = { payload };
|
|
331
|
+
logger.info("Zudello update export template request", {
|
|
332
|
+
url,
|
|
333
|
+
templateUuid,
|
|
334
|
+
name: payload.name,
|
|
335
|
+
});
|
|
336
|
+
const response = await fetch(url, {
|
|
337
|
+
method: "PUT",
|
|
338
|
+
headers,
|
|
339
|
+
body: JSON.stringify(body),
|
|
340
|
+
});
|
|
341
|
+
if (!response.ok) {
|
|
342
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
343
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
344
|
+
}
|
|
345
|
+
const data = await response.json();
|
|
346
|
+
logger.info("Zudello update export template response received", {
|
|
347
|
+
httpStatus: response.status,
|
|
348
|
+
success: data.success,
|
|
349
|
+
version: data.data?.version,
|
|
350
|
+
});
|
|
351
|
+
if (!data.success) {
|
|
352
|
+
return { success: false, error: data.message || "Failed to update export template" };
|
|
353
|
+
}
|
|
354
|
+
return { success: true, data: data.data };
|
|
355
|
+
}
|
|
356
|
+
catch (error) {
|
|
357
|
+
logger.error("Zudello update export template error", { templateUuid }, error);
|
|
358
|
+
return { success: false, error: error.message };
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
/**
|
|
362
|
+
* Run an export using a template
|
|
363
|
+
*/
|
|
364
|
+
export async function runZudelloExport(authContext, templateName, userUuid, exportRequest) {
|
|
365
|
+
try {
|
|
366
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
367
|
+
const params = new URLSearchParams({
|
|
368
|
+
user_uuid: userUuid,
|
|
369
|
+
template_name: templateName,
|
|
370
|
+
});
|
|
371
|
+
const url = `${apiBase}/team-data/v1/export/csv?${params.toString()}`;
|
|
372
|
+
logger.info("Zudello run export request", {
|
|
373
|
+
url,
|
|
374
|
+
templateName,
|
|
375
|
+
userUuid,
|
|
376
|
+
model: exportRequest.model,
|
|
377
|
+
});
|
|
378
|
+
const response = await fetch(url, {
|
|
379
|
+
method: "POST",
|
|
380
|
+
headers,
|
|
381
|
+
body: JSON.stringify(exportRequest),
|
|
382
|
+
});
|
|
383
|
+
if (!response.ok) {
|
|
384
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
385
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
386
|
+
}
|
|
387
|
+
logger.info("Zudello run export response received", {
|
|
388
|
+
httpStatus: response.status,
|
|
389
|
+
});
|
|
390
|
+
return { success: true, data: { success: true } };
|
|
391
|
+
}
|
|
392
|
+
catch (error) {
|
|
393
|
+
logger.error("Zudello run export error", { templateName }, error);
|
|
394
|
+
return { success: false, error: error.message };
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
/**
|
|
398
|
+
* List exports that have been run
|
|
399
|
+
*/
|
|
400
|
+
export async function listZudelloExports(authContext, limit = 30, offset = 0) {
|
|
401
|
+
try {
|
|
402
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
403
|
+
const params = new URLSearchParams({
|
|
404
|
+
ignore_count: "false",
|
|
405
|
+
paginate: "true",
|
|
406
|
+
});
|
|
407
|
+
const url = `${apiBase}/team-data/v1/resources/search?${params.toString()}`;
|
|
408
|
+
const body = {
|
|
409
|
+
model: "DataExport",
|
|
410
|
+
select: [
|
|
411
|
+
"uuid",
|
|
412
|
+
"created_by__uuid",
|
|
413
|
+
"created_at",
|
|
414
|
+
"status",
|
|
415
|
+
"s3_location",
|
|
416
|
+
"download_count",
|
|
417
|
+
"template_name",
|
|
418
|
+
],
|
|
419
|
+
order_by: ["-created_at"],
|
|
420
|
+
filter: {},
|
|
421
|
+
offset,
|
|
422
|
+
limit,
|
|
423
|
+
};
|
|
424
|
+
logger.info("Zudello list exports request", { url, limit, offset });
|
|
425
|
+
const response = await fetch(url, {
|
|
426
|
+
method: "POST",
|
|
427
|
+
headers,
|
|
428
|
+
body: JSON.stringify(body),
|
|
429
|
+
});
|
|
430
|
+
if (!response.ok) {
|
|
431
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
432
|
+
}
|
|
433
|
+
const data = await response.json();
|
|
434
|
+
logger.info("Zudello list exports response received", {
|
|
435
|
+
httpStatus: response.status,
|
|
436
|
+
count: data.count,
|
|
437
|
+
totalCount: data.total_count,
|
|
438
|
+
});
|
|
439
|
+
return { success: true, data: data.data || [] };
|
|
440
|
+
}
|
|
441
|
+
catch (error) {
|
|
442
|
+
logger.error("Zudello list exports error", {}, error);
|
|
443
|
+
return { success: false, error: error.message };
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
/**
|
|
447
|
+
* Get export download URL (presigned S3 URL)
|
|
448
|
+
*/
|
|
449
|
+
export async function getZudelloExportDownloadUrl(authContext, exportUuid) {
|
|
450
|
+
try {
|
|
451
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
452
|
+
const url = `${apiBase}/team-data/v1/export/download/${exportUuid}`;
|
|
453
|
+
logger.info("Zudello get export download URL request", { url, exportUuid });
|
|
454
|
+
// Use redirect: 'manual' to capture the redirect location
|
|
455
|
+
const response = await fetch(url, {
|
|
456
|
+
method: "GET",
|
|
457
|
+
headers,
|
|
458
|
+
redirect: "manual",
|
|
459
|
+
});
|
|
460
|
+
// API returns 301/302 redirect with location header containing S3 presigned URL
|
|
461
|
+
if (response.status === 301 || response.status === 302) {
|
|
462
|
+
const downloadUrl = response.headers.get("location");
|
|
463
|
+
if (downloadUrl) {
|
|
464
|
+
logger.info("Zudello get export download URL success", {
|
|
465
|
+
httpStatus: response.status,
|
|
466
|
+
hasDownloadUrl: true,
|
|
467
|
+
});
|
|
468
|
+
return { success: true, data: { downloadUrl } };
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
// If not a redirect, try to get URL from response body
|
|
472
|
+
if (response.ok) {
|
|
473
|
+
const data = await response.json();
|
|
474
|
+
if (data.download_url || data.downloadUrl || data.url) {
|
|
475
|
+
const downloadUrl = data.download_url || data.downloadUrl || data.url;
|
|
476
|
+
return { success: true, data: { downloadUrl } };
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
throw new Error(`Failed to get download URL: ${response.status}`);
|
|
480
|
+
}
|
|
481
|
+
catch (error) {
|
|
482
|
+
logger.error("Zudello get export download URL error", { exportUuid }, error);
|
|
483
|
+
return { success: false, error: error.message };
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
// ============================================================================
|
|
487
|
+
// Document Type Services
|
|
488
|
+
// ============================================================================
|
|
489
|
+
/**
|
|
490
|
+
* List document types with optional filtering
|
|
491
|
+
*/
|
|
492
|
+
export async function listZudelloDocumentTypes(authContext, module, submodule, includePaths, globalResource = false) {
|
|
493
|
+
try {
|
|
494
|
+
const { headers, apiBase, teamId } = await buildZudelloRequest(authContext);
|
|
495
|
+
const params = new URLSearchParams({
|
|
496
|
+
resource_type: "document_type",
|
|
497
|
+
global_resource: String(globalResource),
|
|
498
|
+
team_uuid: teamId,
|
|
499
|
+
});
|
|
500
|
+
if (module)
|
|
501
|
+
params.append("module", module);
|
|
502
|
+
if (submodule)
|
|
503
|
+
params.append("submodule", submodule);
|
|
504
|
+
if (includePaths && includePaths.length > 0) {
|
|
505
|
+
params.append("include_paths", JSON.stringify(includePaths));
|
|
506
|
+
}
|
|
507
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
508
|
+
logger.info("Zudello list document types request", {
|
|
509
|
+
url,
|
|
510
|
+
queryParams: Object.fromEntries(params.entries()),
|
|
511
|
+
module,
|
|
512
|
+
submodule,
|
|
513
|
+
});
|
|
514
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
515
|
+
if (!response.ok) {
|
|
516
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
517
|
+
}
|
|
518
|
+
const data = await response.json();
|
|
519
|
+
logger.info("Zudello list document types response received", {
|
|
520
|
+
httpStatus: response.status,
|
|
521
|
+
success: data.success,
|
|
522
|
+
resultCount: Array.isArray(data.data) ? data.data.length : 0,
|
|
523
|
+
});
|
|
524
|
+
return { success: true, data: data.data || [] };
|
|
525
|
+
}
|
|
526
|
+
catch (error) {
|
|
527
|
+
logger.error("Zudello list document types error", { module, submodule }, error);
|
|
528
|
+
return { success: false, error: error.message };
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
/**
|
|
532
|
+
* Get a single document type by UUID
|
|
533
|
+
*/
|
|
534
|
+
export async function getZudelloDocumentType(authContext, documentTypeUuid) {
|
|
535
|
+
try {
|
|
536
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
537
|
+
const params = new URLSearchParams({
|
|
538
|
+
resource_type: "document_type",
|
|
539
|
+
});
|
|
540
|
+
const url = `${apiBase}/general-store/api/v1/resources/${documentTypeUuid}?${params.toString()}`;
|
|
541
|
+
logger.info("Zudello get document type request", { url, documentTypeUuid });
|
|
542
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
543
|
+
if (!response.ok) {
|
|
544
|
+
if (response.status === 404) {
|
|
545
|
+
return { success: false, error: `Document type not found: ${documentTypeUuid}` };
|
|
546
|
+
}
|
|
547
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
548
|
+
}
|
|
549
|
+
const data = await response.json();
|
|
550
|
+
logger.info("Zudello get document type response received", {
|
|
551
|
+
httpStatus: response.status,
|
|
552
|
+
success: data.success,
|
|
553
|
+
hasData: !!data.data,
|
|
554
|
+
});
|
|
555
|
+
if (!data.success || !data.data) {
|
|
556
|
+
return { success: false, error: `Document type not found with UUID: ${documentTypeUuid}` };
|
|
557
|
+
}
|
|
558
|
+
return { success: true, data: data.data };
|
|
559
|
+
}
|
|
560
|
+
catch (error) {
|
|
561
|
+
logger.error("Zudello get document type error", { documentTypeUuid }, error);
|
|
562
|
+
return { success: false, error: error.message };
|
|
563
|
+
}
|
|
564
|
+
}
|
|
565
|
+
/**
|
|
566
|
+
* Get merged form metadata (rendered view for end users)
|
|
567
|
+
* This returns the document type with all field metadata merged from field settings
|
|
568
|
+
*/
|
|
569
|
+
export async function getZudelloMergedFormMetadata(authContext, module, submodule, documentType, globalResource = false) {
|
|
570
|
+
try {
|
|
571
|
+
const { headers, apiBase, teamId } = await buildZudelloRequest(authContext);
|
|
572
|
+
const params = new URLSearchParams({
|
|
573
|
+
module,
|
|
574
|
+
submodule,
|
|
575
|
+
document_type: documentType,
|
|
576
|
+
team_uuid: teamId,
|
|
577
|
+
global_resource: String(globalResource),
|
|
578
|
+
});
|
|
579
|
+
const url = `${apiBase}/general-store/api/v1/metadata/merge-form-metadata?${params.toString()}`;
|
|
580
|
+
logger.info("Zudello get merged form metadata request", {
|
|
581
|
+
url,
|
|
582
|
+
module,
|
|
583
|
+
submodule,
|
|
584
|
+
documentType,
|
|
585
|
+
});
|
|
586
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
587
|
+
if (!response.ok) {
|
|
588
|
+
if (response.status === 404) {
|
|
589
|
+
return { success: false, error: `Document type not found: ${module}/${submodule}/${documentType}` };
|
|
590
|
+
}
|
|
591
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
592
|
+
}
|
|
593
|
+
const data = await response.json();
|
|
594
|
+
logger.info("Zudello get merged form metadata response received", {
|
|
595
|
+
httpStatus: response.status,
|
|
596
|
+
success: data.success,
|
|
597
|
+
hasData: !!data.data,
|
|
598
|
+
});
|
|
599
|
+
if (!data.success || !data.data) {
|
|
600
|
+
return { success: false, error: `Document type not found: ${module}/${submodule}/${documentType}` };
|
|
601
|
+
}
|
|
602
|
+
return { success: true, data: data.data };
|
|
603
|
+
}
|
|
604
|
+
catch (error) {
|
|
605
|
+
logger.error("Zudello get merged form metadata error", { module, submodule, documentType }, error);
|
|
606
|
+
return { success: false, error: error.message };
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
/**
|
|
610
|
+
* Create a new document type
|
|
611
|
+
*/
|
|
612
|
+
export async function createZudelloDocumentType(authContext, payload, context) {
|
|
613
|
+
try {
|
|
614
|
+
const { headers, apiBase, teamId } = await buildZudelloRequest(authContext);
|
|
615
|
+
const params = new URLSearchParams({
|
|
616
|
+
resource_type: "document_type",
|
|
617
|
+
});
|
|
618
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
619
|
+
const body = {
|
|
620
|
+
payload,
|
|
621
|
+
context,
|
|
622
|
+
team_uuid: teamId,
|
|
623
|
+
};
|
|
624
|
+
logger.info("Zudello create document type request", {
|
|
625
|
+
url,
|
|
626
|
+
display: payload.display,
|
|
627
|
+
type: payload.type,
|
|
628
|
+
module: payload.module,
|
|
629
|
+
submodule: payload.submodule,
|
|
630
|
+
context,
|
|
631
|
+
});
|
|
632
|
+
const response = await fetch(url, {
|
|
633
|
+
method: "POST",
|
|
634
|
+
headers,
|
|
635
|
+
body: JSON.stringify(body),
|
|
636
|
+
});
|
|
637
|
+
if (!response.ok) {
|
|
638
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
639
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
640
|
+
}
|
|
641
|
+
const data = await response.json();
|
|
642
|
+
logger.info("Zudello create document type response received", {
|
|
643
|
+
httpStatus: response.status,
|
|
644
|
+
success: data.success,
|
|
645
|
+
uuid: data.data?.uuid,
|
|
646
|
+
});
|
|
647
|
+
if (!data.success) {
|
|
648
|
+
return { success: false, error: data.message || "Failed to create document type" };
|
|
649
|
+
}
|
|
650
|
+
return { success: true, data: data.data };
|
|
651
|
+
}
|
|
652
|
+
catch (error) {
|
|
653
|
+
logger.error("Zudello create document type error", { display: payload.display }, error);
|
|
654
|
+
return { success: false, error: error.message };
|
|
655
|
+
}
|
|
656
|
+
}
|
|
657
|
+
/**
|
|
658
|
+
* Update an existing document type
|
|
659
|
+
*/
|
|
660
|
+
export async function updateZudelloDocumentType(authContext, documentTypeUuid, payload, context) {
|
|
661
|
+
try {
|
|
662
|
+
const { headers, apiBase, teamId } = await buildZudelloRequest(authContext);
|
|
663
|
+
const params = new URLSearchParams({
|
|
664
|
+
resource_type: "document_type",
|
|
665
|
+
});
|
|
666
|
+
const url = `${apiBase}/general-store/api/v1/resources/${documentTypeUuid}?${params.toString()}`;
|
|
667
|
+
const body = {
|
|
668
|
+
payload,
|
|
669
|
+
context,
|
|
670
|
+
team_uuid: teamId,
|
|
671
|
+
uuid: documentTypeUuid,
|
|
672
|
+
};
|
|
673
|
+
logger.info("Zudello update document type request", {
|
|
674
|
+
url,
|
|
675
|
+
documentTypeUuid,
|
|
676
|
+
display: payload.display,
|
|
677
|
+
type: payload.type,
|
|
678
|
+
});
|
|
679
|
+
const response = await fetch(url, {
|
|
680
|
+
method: "PUT",
|
|
681
|
+
headers,
|
|
682
|
+
body: JSON.stringify(body),
|
|
683
|
+
});
|
|
684
|
+
if (!response.ok) {
|
|
685
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
686
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
687
|
+
}
|
|
688
|
+
const data = await response.json();
|
|
689
|
+
logger.info("Zudello update document type response received", {
|
|
690
|
+
httpStatus: response.status,
|
|
691
|
+
success: data.success,
|
|
692
|
+
version: data.data?.version,
|
|
693
|
+
});
|
|
694
|
+
if (!data.success) {
|
|
695
|
+
return { success: false, error: data.message || "Failed to update document type" };
|
|
696
|
+
}
|
|
697
|
+
return { success: true, data: data.data };
|
|
698
|
+
}
|
|
699
|
+
catch (error) {
|
|
700
|
+
logger.error("Zudello update document type error", { documentTypeUuid }, error);
|
|
701
|
+
return { success: false, error: error.message };
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
// ============================================================================
|
|
705
|
+
// Configuration Services
|
|
706
|
+
// ============================================================================
|
|
707
|
+
/**
|
|
708
|
+
* Get a specific configuration by UUID
|
|
709
|
+
*/
|
|
710
|
+
export async function getZudelloConfig(authContext, configUuid, globalConfig = false, returnDeleted = false) {
|
|
711
|
+
try {
|
|
712
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
713
|
+
const params = new URLSearchParams();
|
|
714
|
+
if (globalConfig)
|
|
715
|
+
params.append("global_config", "true");
|
|
716
|
+
if (returnDeleted)
|
|
717
|
+
params.append("return_deleted", "true");
|
|
718
|
+
const url = `${apiBase}/general-store/api/v1/resources/${configUuid}?${params.toString()}`;
|
|
719
|
+
logger.info("Zudello get config request", { url, configUuid });
|
|
720
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
721
|
+
if (!response.ok) {
|
|
722
|
+
if (response.status === 404) {
|
|
723
|
+
return { success: false, error: `Config not found: ${configUuid}` };
|
|
724
|
+
}
|
|
725
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
726
|
+
}
|
|
727
|
+
const data = await response.json();
|
|
728
|
+
if (!data.success || !data.data) {
|
|
729
|
+
return { success: false, error: `Config not found with UUID: ${configUuid}` };
|
|
730
|
+
}
|
|
731
|
+
return { success: true, data: data.data };
|
|
732
|
+
}
|
|
733
|
+
catch (error) {
|
|
734
|
+
logger.error("Zudello get config error", { configUuid }, error);
|
|
735
|
+
return { success: false, error: error.message };
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
/**
|
|
739
|
+
* List configurations by type
|
|
740
|
+
*/
|
|
741
|
+
export async function listZudelloConfigs(authContext, configType, globalConfig = false, module, submodule) {
|
|
742
|
+
try {
|
|
743
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
744
|
+
const params = new URLSearchParams({
|
|
745
|
+
resource_type: configType,
|
|
746
|
+
});
|
|
747
|
+
if (globalConfig)
|
|
748
|
+
params.append("global_config", "true");
|
|
749
|
+
if (module)
|
|
750
|
+
params.append("module", module);
|
|
751
|
+
if (submodule)
|
|
752
|
+
params.append("submodule", submodule);
|
|
753
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
754
|
+
logger.info("Zudello list configs request", { url, configType });
|
|
755
|
+
const response = await fetch(url, { method: "GET", headers });
|
|
756
|
+
if (!response.ok) {
|
|
757
|
+
throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
|
|
758
|
+
}
|
|
759
|
+
const data = await response.json();
|
|
760
|
+
const configs = Array.isArray(data.data) ? data.data : (data.data ? [data.data] : []);
|
|
761
|
+
return { success: true, data: configs };
|
|
762
|
+
}
|
|
763
|
+
catch (error) {
|
|
764
|
+
logger.error("Zudello list configs error", { configType }, error);
|
|
765
|
+
return { success: false, error: error.message };
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
/**
|
|
769
|
+
* Create a new configuration
|
|
770
|
+
*/
|
|
771
|
+
export async function createZudelloConfig(authContext, configType, payload, configContext) {
|
|
772
|
+
try {
|
|
773
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
774
|
+
const params = new URLSearchParams({
|
|
775
|
+
resource_type: configType,
|
|
776
|
+
});
|
|
777
|
+
const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
|
|
778
|
+
const body = {
|
|
779
|
+
payload,
|
|
780
|
+
context: configContext,
|
|
781
|
+
};
|
|
782
|
+
logger.info("Zudello create config request", { url, configType });
|
|
783
|
+
const response = await fetch(url, {
|
|
784
|
+
method: "POST",
|
|
785
|
+
headers,
|
|
786
|
+
body: JSON.stringify(body),
|
|
787
|
+
});
|
|
788
|
+
if (!response.ok) {
|
|
789
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
790
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
791
|
+
}
|
|
792
|
+
const data = await response.json();
|
|
793
|
+
if (!data.success || !data.data) {
|
|
794
|
+
return { success: false, error: `Failed to create config of type: ${configType}` };
|
|
795
|
+
}
|
|
796
|
+
return { success: true, data: data.data };
|
|
797
|
+
}
|
|
798
|
+
catch (error) {
|
|
799
|
+
logger.error("Zudello create config error", { configType }, error);
|
|
800
|
+
return { success: false, error: error.message };
|
|
801
|
+
}
|
|
802
|
+
}
|
|
803
|
+
/**
|
|
804
|
+
* Update an existing configuration
|
|
805
|
+
*/
|
|
806
|
+
export async function updateZudelloConfig(authContext, configUuid, configType, payload, configContext) {
|
|
807
|
+
try {
|
|
808
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
809
|
+
const params = new URLSearchParams({
|
|
810
|
+
resource_type: configType,
|
|
811
|
+
});
|
|
812
|
+
const url = `${apiBase}/general-store/api/v1/resources/${configUuid}?${params.toString()}`;
|
|
813
|
+
const body = {
|
|
814
|
+
payload,
|
|
815
|
+
context: configContext,
|
|
816
|
+
};
|
|
817
|
+
logger.info("Zudello update config request", { url, configUuid });
|
|
818
|
+
const response = await fetch(url, {
|
|
819
|
+
method: "PUT",
|
|
820
|
+
headers,
|
|
821
|
+
body: JSON.stringify(body),
|
|
822
|
+
});
|
|
823
|
+
if (!response.ok) {
|
|
824
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
825
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
826
|
+
}
|
|
827
|
+
const data = await response.json();
|
|
828
|
+
if (!data.success || !data.data) {
|
|
829
|
+
return { success: false, error: `Failed to update config: ${configUuid}` };
|
|
830
|
+
}
|
|
831
|
+
return { success: true, data: data.data };
|
|
832
|
+
}
|
|
833
|
+
catch (error) {
|
|
834
|
+
logger.error("Zudello update config error", { configUuid }, error);
|
|
835
|
+
return { success: false, error: error.message };
|
|
836
|
+
}
|
|
837
|
+
}
|
|
838
|
+
/**
|
|
839
|
+
* Update the display order of configurations
|
|
840
|
+
*/
|
|
841
|
+
export async function updateZudelloConfigsOrder(authContext, configType, uuids) {
|
|
842
|
+
try {
|
|
843
|
+
const { headers, apiBase } = await buildZudelloRequest(authContext);
|
|
844
|
+
const params = new URLSearchParams({
|
|
845
|
+
resource_type: configType,
|
|
846
|
+
});
|
|
847
|
+
const url = `${apiBase}/general-store/api/v1/resources/order?${params.toString()}`;
|
|
848
|
+
logger.info("Zudello update configs order request", { url, configType, count: uuids.length });
|
|
849
|
+
const response = await fetch(url, {
|
|
850
|
+
method: "POST",
|
|
851
|
+
headers,
|
|
852
|
+
body: JSON.stringify(uuids),
|
|
853
|
+
});
|
|
854
|
+
if (!response.ok) {
|
|
855
|
+
const errorText = await response.text().catch(() => "Unknown error");
|
|
856
|
+
throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
|
|
857
|
+
}
|
|
858
|
+
return { success: true, data: { success: true } };
|
|
859
|
+
}
|
|
860
|
+
catch (error) {
|
|
861
|
+
logger.error("Zudello update configs order error", { configType }, error);
|
|
862
|
+
return { success: false, error: error.message };
|
|
863
|
+
}
|
|
864
|
+
}
|
|
865
|
+
//# sourceMappingURL=documents.js.map
|