lua-cli 3.5.0-alpha.3 → 3.5.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +137 -689
- package/dist/api/agent.api.service.d.ts +1 -8
- package/dist/api/agent.api.service.js +1 -11
- package/dist/api/agent.api.service.js.map +1 -1
- package/dist/api/auth.api.service.d.ts +1 -1
- package/dist/api/auth.api.service.js +1 -1
- package/dist/api/auth.api.service.js.map +1 -1
- package/dist/api/backup.api.service.d.ts +80 -0
- package/dist/api/backup.api.service.js +101 -0
- package/dist/api/backup.api.service.js.map +1 -0
- package/dist/api/basket.api.service.d.ts +4 -5
- package/dist/api/basket.api.service.js +13 -18
- package/dist/api/basket.api.service.js.map +1 -1
- package/dist/api/cdn.api.service.d.ts +2 -0
- package/dist/api/cdn.api.service.js +2 -0
- package/dist/api/cdn.api.service.js.map +1 -1
- package/dist/api/chat.api.service.d.ts +10 -2
- package/dist/api/chat.api.service.js +21 -2
- package/dist/api/chat.api.service.js.map +1 -1
- package/dist/api/credentials.js +5 -8
- package/dist/api/credentials.js.map +1 -1
- package/dist/api/custom.data.api.service.d.ts +3 -3
- package/dist/api/custom.data.api.service.js +9 -10
- package/dist/api/custom.data.api.service.js.map +1 -1
- package/dist/api/developer.api.service.d.ts +1 -1
- package/dist/api/developer.api.service.js +1 -1
- package/dist/api/developer.api.service.js.map +1 -1
- package/dist/api/http.client.js.map +1 -0
- package/dist/api/job.api.service.d.ts +2 -2
- package/dist/api/job.api.service.js +2 -2
- package/dist/api/job.api.service.js.map +1 -1
- package/dist/api/logs.api.service.d.ts +1 -1
- package/dist/api/logs.api.service.js +1 -1
- package/dist/api/logs.api.service.js.map +1 -1
- package/dist/api/marketplace.api.service.d.ts +6 -6
- package/dist/api/marketplace.api.service.js.map +1 -1
- package/dist/api/order.api.service.d.ts +3 -4
- package/dist/api/order.api.service.js +8 -10
- package/dist/api/order.api.service.js.map +1 -1
- package/dist/api/persona.api.service.d.ts +1 -1
- package/dist/api/persona.api.service.js +1 -1
- package/dist/api/persona.api.service.js.map +1 -1
- package/dist/api/postprocessor.api.service.d.ts +1 -1
- package/dist/api/postprocessor.api.service.js +1 -1
- package/dist/api/postprocessor.api.service.js.map +1 -1
- package/dist/api/preprocessor.api.service.d.ts +1 -1
- package/dist/api/preprocessor.api.service.js +1 -1
- package/dist/api/preprocessor.api.service.js.map +1 -1
- package/dist/api/products.api.service.d.ts +4 -4
- package/dist/api/products.api.service.js +6 -6
- package/dist/api/products.api.service.js.map +1 -1
- package/dist/api/resource.api.service.d.ts +76 -0
- package/dist/api/resource.api.service.js +74 -0
- package/dist/api/resource.api.service.js.map +1 -0
- package/dist/api/skills.api.service.d.ts +7 -15
- package/dist/api/skills.api.service.js +1 -1
- package/dist/api/skills.api.service.js.map +1 -1
- package/dist/api/tool.api.service.d.ts +1 -1
- package/dist/api/tool.api.service.js +1 -1
- package/dist/api/tool.api.service.js.map +1 -1
- package/dist/api/unifiedto.api.service.d.ts +1 -1
- package/dist/api/unifiedto.api.service.js +1 -1
- package/dist/api/unifiedto.api.service.js.map +1 -1
- package/dist/api/user.data.api.service.d.ts +7 -8
- package/dist/api/user.data.api.service.js +2 -3
- package/dist/api/user.data.api.service.js.map +1 -1
- package/dist/api/webhook.api.service.d.ts +1 -1
- package/dist/api/webhook.api.service.js +1 -1
- package/dist/api/webhook.api.service.js.map +1 -1
- package/dist/api/whatsapp-templates.api.service.d.ts +1 -1
- package/dist/api/whatsapp-templates.api.service.js +1 -1
- package/dist/api/whatsapp-templates.api.service.js.map +1 -1
- package/dist/api-exports.d.ts +14 -12
- package/dist/api-exports.js +8 -8
- package/dist/api-exports.js.map +1 -1
- package/dist/cli/command-definitions.js +32 -17
- package/dist/cli/command-definitions.js.map +1 -1
- package/dist/commands/admin.js +3 -24
- package/dist/commands/admin.js.map +1 -1
- package/dist/commands/agents.d.ts +8 -7
- package/dist/commands/agents.js +63 -21
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/channels.js +11 -23
- package/dist/commands/channels.js.map +1 -1
- package/dist/commands/chat.js +33 -47
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/chatClear.js +11 -41
- package/dist/commands/chatClear.js.map +1 -1
- package/dist/commands/compile.d.ts +26 -23
- package/dist/commands/compile.js +98 -403
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/completion.js +1 -1
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/deploy.js +55 -25
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/dev.js +29 -45
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/env.js +12 -25
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/evals.js +3 -20
- package/dist/commands/evals.js.map +1 -1
- package/dist/commands/features.js +10 -23
- package/dist/commands/features.js.map +1 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.js +1 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.js +135 -19
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/integrations.js +26 -37
- package/dist/commands/integrations.js.map +1 -1
- package/dist/commands/jobs.js +32 -56
- package/dist/commands/jobs.js.map +1 -1
- package/dist/commands/logs.js +9 -20
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/marketplace.js +34 -52
- package/dist/commands/marketplace.js.map +1 -1
- package/dist/commands/mcp.js +10 -23
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/persona.js +43 -74
- package/dist/commands/persona.js.map +1 -1
- package/dist/commands/postprocessors.js +15 -28
- package/dist/commands/postprocessors.js.map +1 -1
- package/dist/commands/preprocessors.js +15 -28
- package/dist/commands/preprocessors.js.map +1 -1
- package/dist/commands/production.js +30 -63
- package/dist/commands/production.js.map +1 -1
- package/dist/commands/push.js +294 -1241
- package/dist/commands/push.js.map +1 -1
- package/dist/commands/pushBackup.d.ts +22 -0
- package/dist/commands/pushBackup.js +133 -0
- package/dist/commands/pushBackup.js.map +1 -0
- package/dist/commands/resources.js +29 -72
- package/dist/commands/resources.js.map +1 -1
- package/dist/commands/skills.d.ts +1 -1
- package/dist/commands/skills.js +58 -70
- package/dist/commands/skills.js.map +1 -1
- package/dist/commands/sync.d.ts +1 -3
- package/dist/commands/sync.js +12 -24
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/test.js +135 -104
- package/dist/commands/test.js.map +1 -1
- package/dist/commands/webhooks.js +15 -28
- package/dist/commands/webhooks.js.map +1 -1
- package/dist/compiler/agent-traverser.d.ts +104 -0
- package/dist/compiler/agent-traverser.js +311 -0
- package/dist/compiler/agent-traverser.js.map +1 -0
- package/dist/compiler/bundler.d.ts +42 -0
- package/dist/compiler/bundler.js +187 -0
- package/dist/compiler/bundler.js.map +1 -0
- package/dist/compiler/compiler.d.ts +177 -0
- package/dist/compiler/compiler.js +580 -0
- package/dist/compiler/compiler.js.map +1 -0
- package/dist/compiler/index.d.ts +36 -0
- package/dist/compiler/index.js +42 -0
- package/dist/compiler/index.js.map +1 -0
- package/dist/compiler/plugins/base.d.ts +264 -0
- package/dist/compiler/plugins/base.js +307 -0
- package/dist/compiler/plugins/base.js.map +1 -0
- package/dist/compiler/plugins/job.plugin.d.ts +33 -0
- package/dist/compiler/plugins/job.plugin.js +143 -0
- package/dist/compiler/plugins/job.plugin.js.map +1 -0
- package/dist/compiler/plugins/mcp-server.plugin.d.ts +50 -0
- package/dist/compiler/plugins/mcp-server.plugin.js +186 -0
- package/dist/compiler/plugins/mcp-server.plugin.js.map +1 -0
- package/dist/compiler/plugins/postprocessor.plugin.d.ts +20 -0
- package/dist/compiler/plugins/postprocessor.plugin.js +39 -0
- package/dist/compiler/plugins/postprocessor.plugin.js.map +1 -0
- package/dist/compiler/plugins/preprocessor.plugin.d.ts +20 -0
- package/dist/compiler/plugins/preprocessor.plugin.js +48 -0
- package/dist/compiler/plugins/preprocessor.plugin.js.map +1 -0
- package/dist/compiler/plugins/processor-base.d.ts +16 -0
- package/dist/compiler/plugins/processor-base.js +34 -0
- package/dist/compiler/plugins/processor-base.js.map +1 -0
- package/dist/compiler/plugins/registry.d.ts +61 -0
- package/dist/compiler/plugins/registry.js +107 -0
- package/dist/compiler/plugins/registry.js.map +1 -0
- package/dist/compiler/plugins/skill.plugin.d.ts +71 -0
- package/dist/compiler/plugins/skill.plugin.js +243 -0
- package/dist/compiler/plugins/skill.plugin.js.map +1 -0
- package/dist/compiler/plugins/tool.plugin.d.ts +67 -0
- package/dist/compiler/plugins/tool.plugin.js +279 -0
- package/dist/compiler/plugins/tool.plugin.js.map +1 -0
- package/dist/compiler/plugins/webhook.plugin.d.ts +37 -0
- package/dist/compiler/plugins/webhook.plugin.js +127 -0
- package/dist/compiler/plugins/webhook.plugin.js.map +1 -0
- package/dist/compiler/source-writer.d.ts +98 -0
- package/dist/compiler/source-writer.js +223 -0
- package/dist/compiler/source-writer.js.map +1 -0
- package/dist/compiler/types.d.ts +289 -0
- package/dist/compiler/types.js +20 -0
- package/dist/compiler/types.js.map +1 -0
- package/dist/compiler/utils/ast-helpers.d.ts +57 -0
- package/dist/compiler/utils/ast-helpers.js +164 -0
- package/dist/compiler/utils/ast-helpers.js.map +1 -0
- package/dist/compiler/utils/common.d.ts +23 -0
- package/dist/compiler/utils/common.js +66 -0
- package/dist/compiler/utils/common.js.map +1 -0
- package/dist/compiler/utils/file-discovery.d.ts +34 -0
- package/dist/compiler/utils/file-discovery.js +68 -0
- package/dist/compiler/utils/file-discovery.js.map +1 -0
- package/dist/compiler/utils/path-resolver.d.ts +25 -0
- package/dist/compiler/utils/path-resolver.js +66 -0
- package/dist/compiler/utils/path-resolver.js.map +1 -0
- package/dist/compiler/utils/schema-converter.d.ts +26 -0
- package/dist/compiler/utils/schema-converter.js +94 -0
- package/dist/compiler/utils/schema-converter.js.map +1 -0
- package/dist/config/compile.constants.d.ts +2 -22
- package/dist/config/compile.constants.js +2 -49
- package/dist/config/compile.constants.js.map +1 -1
- package/dist/config/constants.d.ts +18 -2
- package/dist/config/constants.js +28 -8
- package/dist/config/constants.js.map +1 -1
- package/dist/config/dev.constants.d.ts +0 -10
- package/dist/config/dev.constants.js +0 -10
- package/dist/config/dev.constants.js.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/instances/basket.instance.js.map +1 -0
- package/dist/instances/data.entry.instance.js.map +1 -0
- package/dist/instances/job.instance.js.map +1 -0
- package/dist/instances/order.instance.js.map +1 -0
- package/dist/instances/product.instance.js.map +1 -0
- package/dist/instances/product.pagination.instance.js.map +1 -0
- package/dist/instances/product.search.instance.js.map +1 -0
- package/dist/instances/user.instance.js.map +1 -0
- package/dist/interfaces/admin.d.ts +0 -38
- package/dist/interfaces/backup.d.ts +125 -0
- package/dist/interfaces/backup.js +8 -0
- package/dist/interfaces/backup.js.map +1 -0
- package/dist/interfaces/baskets.d.ts +0 -56
- package/dist/interfaces/common.d.ts +1 -0
- package/dist/interfaces/deploy.d.ts +0 -15
- package/dist/interfaces/index.d.ts +1 -1
- package/dist/interfaces/marketplace.d.ts +51 -0
- package/dist/interfaces/marketplace.js +1 -1
- package/dist/interfaces/marketplace.js.map +1 -1
- package/dist/interfaces/message.d.ts +0 -3
- package/dist/interfaces/orders.d.ts +0 -24
- package/dist/interfaces/postprocessors.d.ts +0 -18
- package/dist/interfaces/preprocessors.d.ts +0 -18
- package/dist/interfaces/skills.d.ts +61 -0
- package/dist/interfaces/user.d.ts +25 -0
- package/dist/interfaces/webhooks.d.ts +0 -9
- package/dist/primitives/base.handler.d.ts +106 -0
- package/dist/primitives/base.handler.js +370 -0
- package/dist/primitives/base.handler.js.map +1 -0
- package/dist/primitives/index.d.ts +47 -0
- package/dist/primitives/index.js +78 -0
- package/dist/primitives/index.js.map +1 -0
- package/dist/primitives/job.handler.d.ts +52 -0
- package/dist/primitives/job.handler.js +118 -0
- package/dist/primitives/job.handler.js.map +1 -0
- package/dist/primitives/mcp-server.handler.d.ts +54 -0
- package/dist/primitives/mcp-server.handler.js +91 -0
- package/dist/primitives/mcp-server.handler.js.map +1 -0
- package/dist/primitives/postprocessor.handler.d.ts +49 -0
- package/dist/primitives/postprocessor.handler.js +81 -0
- package/dist/primitives/postprocessor.handler.js.map +1 -0
- package/dist/primitives/preprocessor.handler.d.ts +54 -0
- package/dist/primitives/preprocessor.handler.js +95 -0
- package/dist/primitives/preprocessor.handler.js.map +1 -0
- package/dist/primitives/skill.handler.d.ts +44 -0
- package/dist/primitives/skill.handler.js +192 -0
- package/dist/primitives/skill.handler.js.map +1 -0
- package/dist/primitives/types.d.ts +72 -0
- package/dist/primitives/types.js +17 -0
- package/dist/primitives/types.js.map +1 -0
- package/dist/primitives/webhook.handler.d.ts +50 -0
- package/dist/primitives/webhook.handler.js +96 -0
- package/dist/primitives/webhook.handler.js.map +1 -0
- package/dist/services/auth.js +1 -2
- package/dist/services/auth.js.map +1 -1
- package/dist/services/sandbox.service.d.ts +103 -0
- package/dist/services/sandbox.service.js +479 -0
- package/dist/services/sandbox.service.js.map +1 -0
- package/dist/types/api-contracts.d.ts +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/skill.d.ts +8 -2
- package/dist/types/skill.js +8 -0
- package/dist/types/skill.js.map +1 -1
- package/dist/types/yaml.types.d.ts +69 -0
- package/dist/types/yaml.types.js +6 -0
- package/dist/types/yaml.types.js.map +1 -0
- package/dist/utils/artifact-loader.d.ts +108 -0
- package/dist/utils/artifact-loader.js +188 -0
- package/dist/utils/artifact-loader.js.map +1 -0
- package/dist/utils/backup-helpers.d.ts +122 -0
- package/dist/utils/backup-helpers.js +274 -0
- package/dist/utils/backup-helpers.js.map +1 -0
- package/dist/utils/cli.d.ts +8 -0
- package/dist/utils/cli.js +19 -2
- package/dist/utils/cli.js.map +1 -1
- package/dist/utils/command-utils.d.ts +42 -0
- package/dist/utils/command-utils.js +83 -0
- package/dist/utils/command-utils.js.map +1 -0
- package/dist/utils/deploy-helpers.d.ts +0 -29
- package/dist/utils/deploy-helpers.js +0 -70
- package/dist/utils/deploy-helpers.js.map +1 -1
- package/dist/utils/dev-api.d.ts +3 -99
- package/dist/utils/dev-api.js +3 -430
- package/dist/utils/dev-api.js.map +1 -1
- package/dist/utils/dev-server.d.ts +3 -1
- package/dist/utils/dev-server.js +69 -145
- package/dist/utils/dev-server.js.map +1 -1
- package/dist/utils/dev-watcher.d.ts +0 -1
- package/dist/utils/dev-watcher.js +23 -8
- package/dist/utils/dev-watcher.js.map +1 -1
- package/dist/utils/env-loader.utils.d.ts +10 -1
- package/dist/utils/env-loader.utils.js +39 -31
- package/dist/utils/env-loader.utils.js.map +1 -1
- package/dist/utils/files.d.ts +47 -3
- package/dist/utils/files.js +98 -40
- package/dist/utils/files.js.map +1 -1
- package/dist/utils/init-agent.js +1 -2
- package/dist/utils/init-agent.js.map +1 -1
- package/dist/utils/init-helpers.d.ts +2 -10
- package/dist/utils/init-helpers.js +9 -17
- package/dist/utils/init-helpers.js.map +1 -1
- package/dist/utils/init-prompts.d.ts +0 -8
- package/dist/utils/init-prompts.js +0 -22
- package/dist/utils/init-prompts.js.map +1 -1
- package/dist/utils/prompt-handler.d.ts +3 -0
- package/dist/utils/prompt-handler.js +13 -0
- package/dist/utils/prompt-handler.js.map +1 -1
- package/dist/utils/sandbox-storage.d.ts +6 -5
- package/dist/utils/sandbox-storage.js +12 -12
- package/dist/utils/sandbox-storage.js.map +1 -1
- package/dist/utils/sandbox.d.ts +7 -30
- package/dist/utils/sandbox.js +247 -223
- package/dist/utils/sandbox.js.map +1 -1
- package/dist/utils/semver.d.ts +12 -0
- package/dist/utils/semver.js +23 -0
- package/dist/utils/semver.js.map +1 -1
- package/dist/utils/sync-display.d.ts +9 -0
- package/dist/utils/sync-display.js +67 -0
- package/dist/utils/sync-display.js.map +1 -0
- package/dist/utils/sync-fetch.d.ts +23 -0
- package/dist/utils/sync-fetch.js +64 -0
- package/dist/utils/sync-fetch.js.map +1 -0
- package/dist/utils/sync-helpers.d.ts +4 -59
- package/dist/utils/sync-helpers.js +4 -206
- package/dist/utils/sync-helpers.js.map +1 -1
- package/dist/web/app.css +912 -186
- package/dist/web/app.js +46 -46
- package/docs/API_INDEX.md +100 -0
- package/docs/API_REFERENCE.md +773 -0
- package/docs/CLI_REFERENCE.md +924 -0
- package/docs/GETTING_STARTED.md +862 -0
- package/docs/README.md +270 -0
- package/docs/api/AI.md +882 -0
- package/docs/api/Baskets.md +511 -0
- package/docs/api/CDN.md +524 -0
- package/docs/api/Data.md +446 -0
- package/docs/api/Jobs.md +524 -0
- package/docs/api/LuaAgent.md +454 -0
- package/docs/api/LuaJob.md +604 -0
- package/docs/api/LuaSkill.md +396 -0
- package/docs/api/LuaTool.md +521 -0
- package/docs/api/LuaWebhook.md +601 -0
- package/docs/api/Orders.md +514 -0
- package/docs/api/PostProcessor.md +565 -0
- package/docs/api/PreProcessor.md +630 -0
- package/docs/api/Products.md +507 -0
- package/docs/api/Templates.md +662 -0
- package/docs/api/User.md +567 -0
- package/docs/archive/DEVELOPMENT_GUIDE_V1.md +1294 -0
- package/docs/compiler-v2/ASSESSMENT.md +205 -0
- package/docs/compiler-v2/TEST_PLAN.md +306 -0
- package/package.json +3 -7
- package/template/tsconfig.json +1 -1
- package/dist/common/basket.instance.js.map +0 -1
- package/dist/common/data.entry.instance.js.map +0 -1
- package/dist/common/http.client.js.map +0 -1
- package/dist/common/job.instance.js.map +0 -1
- package/dist/common/order.instance.js.map +0 -1
- package/dist/common/product.instance.js.map +0 -1
- package/dist/common/product.pagination.instance.js.map +0 -1
- package/dist/common/product.search.instance.js.map +0 -1
- package/dist/common/user.instance.js.map +0 -1
- package/dist/config/auth.constants.d.ts +0 -11
- package/dist/config/auth.constants.js +0 -12
- package/dist/config/auth.constants.js.map +0 -1
- package/dist/config/init.constants.d.ts +0 -15
- package/dist/config/init.constants.js +0 -20
- package/dist/config/init.constants.js.map +0 -1
- package/dist/interfaces/compile.d.ts +0 -12
- package/dist/interfaces/compile.js +0 -5
- package/dist/interfaces/compile.js.map +0 -1
- package/dist/types/compile.types.d.ts +0 -131
- package/dist/types/compile.types.js +0 -6
- package/dist/types/compile.types.js.map +0 -1
- package/dist/utils/agent-code-utils.d.ts +0 -25
- package/dist/utils/agent-code-utils.js +0 -107
- package/dist/utils/agent-code-utils.js.map +0 -1
- package/dist/utils/bundling.d.ts +0 -89
- package/dist/utils/bundling.js +0 -1068
- package/dist/utils/bundling.js.map +0 -1
- package/dist/utils/compile.d.ts +0 -116
- package/dist/utils/compile.js +0 -1062
- package/dist/utils/compile.js.map +0 -1
- package/dist/utils/deploy-api.d.ts +0 -26
- package/dist/utils/deploy-api.js +0 -54
- package/dist/utils/deploy-api.js.map +0 -1
- package/dist/utils/deployment.d.ts +0 -26
- package/dist/utils/deployment.js +0 -218
- package/dist/utils/deployment.js.map +0 -1
- package/dist/utils/dev-helpers.d.ts +0 -47
- package/dist/utils/dev-helpers.js +0 -82
- package/dist/utils/dev-helpers.js.map +0 -1
- package/dist/utils/job-management.d.ts +0 -27
- package/dist/utils/job-management.js +0 -248
- package/dist/utils/job-management.js.map +0 -1
- package/dist/utils/mcp-server-management.d.ts +0 -26
- package/dist/utils/mcp-server-management.js +0 -197
- package/dist/utils/mcp-server-management.js.map +0 -1
- package/dist/utils/postprocessor-management.d.ts +0 -9
- package/dist/utils/postprocessor-management.js +0 -117
- package/dist/utils/postprocessor-management.js.map +0 -1
- package/dist/utils/pre-bundle-jobs.d.ts +0 -27
- package/dist/utils/pre-bundle-jobs.js +0 -189
- package/dist/utils/pre-bundle-jobs.js.map +0 -1
- package/dist/utils/preprocessor-management.d.ts +0 -9
- package/dist/utils/preprocessor-management.js +0 -117
- package/dist/utils/preprocessor-management.js.map +0 -1
- package/dist/utils/push-api.d.ts +0 -15
- package/dist/utils/push-api.js +0 -49
- package/dist/utils/push-api.js.map +0 -1
- package/dist/utils/push-helpers.d.ts +0 -82
- package/dist/utils/push-helpers.js +0 -246
- package/dist/utils/push-helpers.js.map +0 -1
- package/dist/utils/skill-management.d.ts +0 -39
- package/dist/utils/skill-management.js +0 -299
- package/dist/utils/skill-management.js.map +0 -1
- package/dist/utils/test-helpers.d.ts +0 -33
- package/dist/utils/test-helpers.js +0 -84
- package/dist/utils/test-helpers.js.map +0 -1
- package/dist/utils/test-prompts.d.ts +0 -23
- package/dist/utils/test-prompts.js +0 -187
- package/dist/utils/test-prompts.js.map +0 -1
- package/dist/utils/tool-detection.d.ts +0 -19
- package/dist/utils/tool-detection.js +0 -125
- package/dist/utils/tool-detection.js.map +0 -1
- package/dist/utils/webhook-management.d.ts +0 -27
- package/dist/utils/webhook-management.js +0 -241
- package/dist/utils/webhook-management.js.map +0 -1
- /package/dist/{common → api}/http.client.d.ts +0 -0
- /package/dist/{common → api}/http.client.js +0 -0
- /package/dist/{common → instances}/basket.instance.d.ts +0 -0
- /package/dist/{common → instances}/basket.instance.js +0 -0
- /package/dist/{common → instances}/data.entry.instance.d.ts +0 -0
- /package/dist/{common → instances}/data.entry.instance.js +0 -0
- /package/dist/{common → instances}/job.instance.d.ts +0 -0
- /package/dist/{common → instances}/job.instance.js +0 -0
- /package/dist/{common → instances}/order.instance.d.ts +0 -0
- /package/dist/{common → instances}/order.instance.js +0 -0
- /package/dist/{common → instances}/product.instance.d.ts +0 -0
- /package/dist/{common → instances}/product.instance.js +0 -0
- /package/dist/{common → instances}/product.pagination.instance.d.ts +0 -0
- /package/dist/{common → instances}/product.pagination.instance.js +0 -0
- /package/dist/{common → instances}/product.search.instance.d.ts +0 -0
- /package/dist/{common → instances}/product.search.instance.js +0 -0
- /package/dist/{common → instances}/user.instance.d.ts +0 -0
- /package/dist/{common → instances}/user.instance.js +0 -0
|
@@ -0,0 +1,514 @@
|
|
|
1
|
+
# Orders API
|
|
2
|
+
|
|
3
|
+
The Orders API allows you to manage orders created from baskets. Track order status, update order data, and retrieve order history.
|
|
4
|
+
|
|
5
|
+
## Import
|
|
6
|
+
|
|
7
|
+
```typescript
|
|
8
|
+
import { Orders, OrderStatus } from 'lua-cli';
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Overview
|
|
12
|
+
|
|
13
|
+
The Orders API enables:
|
|
14
|
+
- Retrieve user orders with optional status filtering
|
|
15
|
+
- Get specific orders by ID
|
|
16
|
+
- Update order status (pending → processing → shipped → delivered)
|
|
17
|
+
- Update order data (shipping info, tracking, notes)
|
|
18
|
+
- Track order lifecycle
|
|
19
|
+
- Save changes to orders
|
|
20
|
+
|
|
21
|
+
## Methods
|
|
22
|
+
|
|
23
|
+
| Method | Description |
|
|
24
|
+
|--------|-------------|
|
|
25
|
+
| `Orders.get(status?)` | Get all user orders, optionally filtered by status |
|
|
26
|
+
| `Orders.getById(orderId)` | Get a specific order by ID |
|
|
27
|
+
|
|
28
|
+
## Order Status
|
|
29
|
+
|
|
30
|
+
```typescript
|
|
31
|
+
enum OrderStatus {
|
|
32
|
+
PENDING = 'pending',
|
|
33
|
+
PROCESSING = 'processing',
|
|
34
|
+
SHIPPED = 'shipped',
|
|
35
|
+
DELIVERED = 'delivered',
|
|
36
|
+
CANCELLED = 'cancelled',
|
|
37
|
+
REFUNDED = 'refunded'
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## OrderInstance Methods
|
|
42
|
+
|
|
43
|
+
Once you have an order instance, you can call these methods:
|
|
44
|
+
|
|
45
|
+
### `order.updateStatus(status)`
|
|
46
|
+
|
|
47
|
+
Updates the order's status.
|
|
48
|
+
|
|
49
|
+
**Parameters:**
|
|
50
|
+
- `status` (OrderStatus) - New order status
|
|
51
|
+
|
|
52
|
+
**Returns:** `Promise<Order>` - Updated order data
|
|
53
|
+
|
|
54
|
+
**Example:**
|
|
55
|
+
```typescript
|
|
56
|
+
await order.updateStatus(OrderStatus.SHIPPED);
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### `order.update(data)`
|
|
60
|
+
|
|
61
|
+
Updates the order's data fields.
|
|
62
|
+
|
|
63
|
+
**Parameters:**
|
|
64
|
+
- `data` (object) - Data fields to update
|
|
65
|
+
- `trackingNumber` (string, optional)
|
|
66
|
+
- `shippingCarrier` (string, optional)
|
|
67
|
+
- `notes` (string, optional)
|
|
68
|
+
- `estimatedDelivery` (string, optional)
|
|
69
|
+
- Any custom fields
|
|
70
|
+
|
|
71
|
+
**Returns:** `Promise<Order>` - Updated order data
|
|
72
|
+
|
|
73
|
+
**Example:**
|
|
74
|
+
```typescript
|
|
75
|
+
await order.update({
|
|
76
|
+
trackingNumber: 'TRACK123456',
|
|
77
|
+
shippingCarrier: 'FedEx',
|
|
78
|
+
estimatedDelivery: '2025-02-10'
|
|
79
|
+
});
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### `order.save()`
|
|
83
|
+
|
|
84
|
+
Saves the current order data.
|
|
85
|
+
|
|
86
|
+
**Returns:** `Promise<boolean>` - True if save was successful
|
|
87
|
+
|
|
88
|
+
**Example:**
|
|
89
|
+
```typescript
|
|
90
|
+
order.notes = 'Customer requested gift wrap';
|
|
91
|
+
await order.save();
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Complete Examples
|
|
95
|
+
|
|
96
|
+
### Track Order Tool
|
|
97
|
+
|
|
98
|
+
```typescript
|
|
99
|
+
import { LuaTool, Orders } from 'lua-cli';
|
|
100
|
+
import { z } from 'zod';
|
|
101
|
+
|
|
102
|
+
export default class TrackOrderTool implements LuaTool {
|
|
103
|
+
name = 'track_order';
|
|
104
|
+
description = 'Track an order by order ID';
|
|
105
|
+
|
|
106
|
+
inputSchema = z.object({
|
|
107
|
+
orderId: z.string().describe('Order ID to track')
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
111
|
+
try {
|
|
112
|
+
const order = await Orders.getById(input.orderId);
|
|
113
|
+
|
|
114
|
+
return {
|
|
115
|
+
success: true,
|
|
116
|
+
orderId: order.orderId,
|
|
117
|
+
status: order.status,
|
|
118
|
+
trackingNumber: order.trackingNumber || 'Not available yet',
|
|
119
|
+
shippingCarrier: order.shippingCarrier || 'N/A',
|
|
120
|
+
estimatedDelivery: order.estimatedDelivery || 'TBD',
|
|
121
|
+
items: order.items,
|
|
122
|
+
totalAmount: order.totalAmount
|
|
123
|
+
};
|
|
124
|
+
} catch (error) {
|
|
125
|
+
return {
|
|
126
|
+
success: false,
|
|
127
|
+
error: 'Order not found'
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Order History Tool
|
|
135
|
+
|
|
136
|
+
```typescript
|
|
137
|
+
import { LuaTool, Orders, OrderStatus } from 'lua-cli';
|
|
138
|
+
import { z } from 'zod';
|
|
139
|
+
|
|
140
|
+
export default class OrderHistoryTool implements LuaTool {
|
|
141
|
+
name = 'order_history';
|
|
142
|
+
description = 'View order history';
|
|
143
|
+
|
|
144
|
+
inputSchema = z.object({
|
|
145
|
+
status: z.nativeEnum(OrderStatus).optional()
|
|
146
|
+
.describe('Filter by order status')
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
150
|
+
const orders = await Orders.get(input.status);
|
|
151
|
+
|
|
152
|
+
if (orders.length === 0) {
|
|
153
|
+
return {
|
|
154
|
+
success: true,
|
|
155
|
+
message: input.status
|
|
156
|
+
? `No ${input.status} orders found`
|
|
157
|
+
: 'No orders found',
|
|
158
|
+
orders: []
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
return {
|
|
163
|
+
success: true,
|
|
164
|
+
orderCount: orders.length,
|
|
165
|
+
orders: orders.map(order => ({
|
|
166
|
+
orderId: order.orderId,
|
|
167
|
+
status: order.status,
|
|
168
|
+
totalAmount: order.totalAmount,
|
|
169
|
+
itemCount: order.items?.length || 0,
|
|
170
|
+
createdAt: order.createdAt,
|
|
171
|
+
trackingNumber: order.trackingNumber
|
|
172
|
+
}))
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
### Cancel Order Tool
|
|
179
|
+
|
|
180
|
+
```typescript
|
|
181
|
+
import { LuaTool, Orders, OrderStatus } from 'lua-cli';
|
|
182
|
+
import { z } from 'zod';
|
|
183
|
+
|
|
184
|
+
export default class CancelOrderTool implements LuaTool {
|
|
185
|
+
name = 'cancel_order';
|
|
186
|
+
description = 'Cancel a pending order';
|
|
187
|
+
|
|
188
|
+
inputSchema = z.object({
|
|
189
|
+
orderId: z.string().describe('Order ID to cancel'),
|
|
190
|
+
reason: z.string().optional().describe('Cancellation reason')
|
|
191
|
+
});
|
|
192
|
+
|
|
193
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
194
|
+
try {
|
|
195
|
+
const order = await Orders.getById(input.orderId);
|
|
196
|
+
|
|
197
|
+
// Only allow cancellation of pending/processing orders
|
|
198
|
+
if (order.status === OrderStatus.SHIPPED ||
|
|
199
|
+
order.status === OrderStatus.DELIVERED) {
|
|
200
|
+
return {
|
|
201
|
+
success: false,
|
|
202
|
+
error: 'Cannot cancel orders that are already shipped or delivered'
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
if (order.status === OrderStatus.CANCELLED) {
|
|
207
|
+
return {
|
|
208
|
+
success: false,
|
|
209
|
+
error: 'Order is already cancelled'
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
// Update order
|
|
214
|
+
await order.updateStatus(OrderStatus.CANCELLED);
|
|
215
|
+
await order.update({
|
|
216
|
+
cancellationReason: input.reason || 'Customer request',
|
|
217
|
+
cancelledAt: new Date().toISOString()
|
|
218
|
+
});
|
|
219
|
+
|
|
220
|
+
return {
|
|
221
|
+
success: true,
|
|
222
|
+
message: 'Order cancelled successfully',
|
|
223
|
+
orderId: order.orderId,
|
|
224
|
+
refundAmount: order.totalAmount
|
|
225
|
+
};
|
|
226
|
+
} catch (error) {
|
|
227
|
+
return {
|
|
228
|
+
success: false,
|
|
229
|
+
error: error instanceof Error ? error.message : 'Failed to cancel order'
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
### Update Shipping Tool
|
|
237
|
+
|
|
238
|
+
```typescript
|
|
239
|
+
import { LuaTool, Orders, OrderStatus } from 'lua-cli';
|
|
240
|
+
import { z } from 'zod';
|
|
241
|
+
|
|
242
|
+
export default class UpdateShippingTool implements LuaTool {
|
|
243
|
+
name = 'update_shipping';
|
|
244
|
+
description = 'Update order shipping information';
|
|
245
|
+
|
|
246
|
+
inputSchema = z.object({
|
|
247
|
+
orderId: z.string(),
|
|
248
|
+
trackingNumber: z.string(),
|
|
249
|
+
carrier: z.string().optional(),
|
|
250
|
+
estimatedDelivery: z.string().optional()
|
|
251
|
+
});
|
|
252
|
+
|
|
253
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
254
|
+
try {
|
|
255
|
+
const order = await Orders.getById(input.orderId);
|
|
256
|
+
|
|
257
|
+
// Update status to shipped if not already
|
|
258
|
+
if (order.status === OrderStatus.PENDING ||
|
|
259
|
+
order.status === OrderStatus.PROCESSING) {
|
|
260
|
+
await order.updateStatus(OrderStatus.SHIPPED);
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
// Update shipping details
|
|
264
|
+
await order.update({
|
|
265
|
+
trackingNumber: input.trackingNumber,
|
|
266
|
+
shippingCarrier: input.carrier || 'Standard',
|
|
267
|
+
estimatedDelivery: input.estimatedDelivery,
|
|
268
|
+
shippedAt: new Date().toISOString()
|
|
269
|
+
});
|
|
270
|
+
|
|
271
|
+
return {
|
|
272
|
+
success: true,
|
|
273
|
+
message: 'Shipping information updated',
|
|
274
|
+
orderId: order.orderId,
|
|
275
|
+
trackingNumber: input.trackingNumber,
|
|
276
|
+
status: order.status
|
|
277
|
+
};
|
|
278
|
+
} catch (error) {
|
|
279
|
+
return {
|
|
280
|
+
success: false,
|
|
281
|
+
error: error instanceof Error ? error.message : 'Update failed'
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
### Recent Orders Tool
|
|
289
|
+
|
|
290
|
+
```typescript
|
|
291
|
+
import { LuaTool, Orders } from 'lua-cli';
|
|
292
|
+
import { z } from 'zod';
|
|
293
|
+
|
|
294
|
+
export default class RecentOrdersTool implements LuaTool {
|
|
295
|
+
name = 'recent_orders';
|
|
296
|
+
description = 'Get recent orders (last 5)';
|
|
297
|
+
|
|
298
|
+
inputSchema = z.object({});
|
|
299
|
+
|
|
300
|
+
async execute() {
|
|
301
|
+
const orders = await Orders.get();
|
|
302
|
+
|
|
303
|
+
// Sort by creation date (most recent first)
|
|
304
|
+
const sortedOrders = orders
|
|
305
|
+
.sort((a, b) =>
|
|
306
|
+
new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime()
|
|
307
|
+
)
|
|
308
|
+
.slice(0, 5);
|
|
309
|
+
|
|
310
|
+
if (sortedOrders.length === 0) {
|
|
311
|
+
return {
|
|
312
|
+
success: true,
|
|
313
|
+
message: 'No orders found',
|
|
314
|
+
orders: []
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
return {
|
|
319
|
+
success: true,
|
|
320
|
+
orderCount: sortedOrders.length,
|
|
321
|
+
orders: sortedOrders.map(order => ({
|
|
322
|
+
orderId: order.orderId,
|
|
323
|
+
status: order.status,
|
|
324
|
+
totalAmount: order.totalAmount,
|
|
325
|
+
itemCount: order.items?.length || 0,
|
|
326
|
+
createdAt: order.createdAt
|
|
327
|
+
}))
|
|
328
|
+
};
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
### Mark as Delivered Tool
|
|
334
|
+
|
|
335
|
+
```typescript
|
|
336
|
+
import { LuaTool, Orders, OrderStatus, User } from 'lua-cli';
|
|
337
|
+
import { z } from 'zod';
|
|
338
|
+
|
|
339
|
+
export default class MarkDeliveredTool implements LuaTool {
|
|
340
|
+
name = 'mark_delivered';
|
|
341
|
+
description = 'Mark order as delivered';
|
|
342
|
+
|
|
343
|
+
inputSchema = z.object({
|
|
344
|
+
orderId: z.string(),
|
|
345
|
+
signature: z.string().optional(),
|
|
346
|
+
deliveredTo: z.string().optional()
|
|
347
|
+
});
|
|
348
|
+
|
|
349
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
350
|
+
try {
|
|
351
|
+
const order = await Orders.getById(input.orderId);
|
|
352
|
+
|
|
353
|
+
// Verify order was shipped
|
|
354
|
+
if (order.status !== OrderStatus.SHIPPED) {
|
|
355
|
+
return {
|
|
356
|
+
success: false,
|
|
357
|
+
error: 'Only shipped orders can be marked as delivered'
|
|
358
|
+
};
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
// Update status
|
|
362
|
+
await order.updateStatus(OrderStatus.DELIVERED);
|
|
363
|
+
|
|
364
|
+
// Update delivery details
|
|
365
|
+
await order.update({
|
|
366
|
+
deliveredAt: new Date().toISOString(),
|
|
367
|
+
deliveredTo: input.deliveredTo,
|
|
368
|
+
signature: input.signature
|
|
369
|
+
});
|
|
370
|
+
|
|
371
|
+
// Notify user
|
|
372
|
+
const user = await User.get();
|
|
373
|
+
await user.send([{
|
|
374
|
+
type: 'text',
|
|
375
|
+
text: `✅ Your order #${order.orderId} has been delivered!`
|
|
376
|
+
}]);
|
|
377
|
+
|
|
378
|
+
return {
|
|
379
|
+
success: true,
|
|
380
|
+
message: 'Order marked as delivered',
|
|
381
|
+
orderId: order.orderId,
|
|
382
|
+
deliveredAt: new Date().toISOString()
|
|
383
|
+
};
|
|
384
|
+
} catch (error) {
|
|
385
|
+
return {
|
|
386
|
+
success: false,
|
|
387
|
+
error: error instanceof Error ? error.message : 'Update failed'
|
|
388
|
+
};
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
## Order Properties
|
|
395
|
+
|
|
396
|
+
Order instances provide direct access to properties:
|
|
397
|
+
|
|
398
|
+
```typescript
|
|
399
|
+
const order = await Orders.getById('order_123');
|
|
400
|
+
|
|
401
|
+
console.log(order.id); // Internal ID
|
|
402
|
+
console.log(order.orderId); // Order ID
|
|
403
|
+
console.log(order.status); // Order status
|
|
404
|
+
console.log(order.items); // Array of order items
|
|
405
|
+
console.log(order.totalAmount); // Total order value
|
|
406
|
+
console.log(order.shippingAddress); // Shipping address
|
|
407
|
+
console.log(order.trackingNumber); // Tracking number
|
|
408
|
+
console.log(order.shippingCarrier); // Carrier name
|
|
409
|
+
console.log(order.estimatedDelivery); // Estimated delivery date
|
|
410
|
+
console.log(order.createdAt); // Creation timestamp
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
## Best Practices
|
|
414
|
+
|
|
415
|
+
### ✅ DO
|
|
416
|
+
|
|
417
|
+
- Update order status as it progresses through fulfillment
|
|
418
|
+
- Provide tracking information as soon as available
|
|
419
|
+
- Use appropriate status values for each stage
|
|
420
|
+
- Keep customers informed with notifications
|
|
421
|
+
- Validate status transitions (don't skip steps)
|
|
422
|
+
- Add tracking numbers when marking as shipped
|
|
423
|
+
- Store delivery confirmations
|
|
424
|
+
|
|
425
|
+
### ❌ DON'T
|
|
426
|
+
|
|
427
|
+
- Don't skip from pending directly to delivered
|
|
428
|
+
- Don't update orders without proper validation
|
|
429
|
+
- Don't forget to notify customers of status changes
|
|
430
|
+
- Don't lose tracking information
|
|
431
|
+
- Don't allow cancellation of shipped/delivered orders
|
|
432
|
+
- Don't mark as delivered without confirmation
|
|
433
|
+
|
|
434
|
+
## Error Handling
|
|
435
|
+
|
|
436
|
+
```typescript
|
|
437
|
+
try {
|
|
438
|
+
const order = await Orders.getById('order_123');
|
|
439
|
+
await order.updateStatus(OrderStatus.SHIPPED);
|
|
440
|
+
} catch (error) {
|
|
441
|
+
if (error.message.includes('not found')) {
|
|
442
|
+
console.log('Order not found');
|
|
443
|
+
} else if (error.message.includes('invalid status')) {
|
|
444
|
+
console.log('Invalid status transition');
|
|
445
|
+
} else {
|
|
446
|
+
console.log('Failed to update order:', error.message);
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
```
|
|
450
|
+
|
|
451
|
+
## Common Patterns
|
|
452
|
+
|
|
453
|
+
### Status Workflow
|
|
454
|
+
|
|
455
|
+
```typescript
|
|
456
|
+
// Typical order lifecycle
|
|
457
|
+
await order.updateStatus(OrderStatus.PENDING); // Order placed
|
|
458
|
+
await order.updateStatus(OrderStatus.PROCESSING); // Payment confirmed
|
|
459
|
+
await order.updateStatus(OrderStatus.SHIPPED); // Package shipped
|
|
460
|
+
await order.updateStatus(OrderStatus.DELIVERED); // Package delivered
|
|
461
|
+
|
|
462
|
+
// Alternative flows
|
|
463
|
+
await order.updateStatus(OrderStatus.CANCELLED); // Cancelled by customer
|
|
464
|
+
await order.updateStatus(OrderStatus.REFUNDED); // Refund processed
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
### Send Status Update Notification
|
|
468
|
+
|
|
469
|
+
```typescript
|
|
470
|
+
async function notifyOrderStatus(
|
|
471
|
+
order: OrderInstance,
|
|
472
|
+
newStatus: OrderStatus
|
|
473
|
+
): Promise<void> {
|
|
474
|
+
const user = await User.get();
|
|
475
|
+
|
|
476
|
+
const messages = {
|
|
477
|
+
[OrderStatus.PROCESSING]: 'Your order is being processed',
|
|
478
|
+
[OrderStatus.SHIPPED]: `Your order has shipped! Tracking: ${order.trackingNumber}`,
|
|
479
|
+
[OrderStatus.DELIVERED]: 'Your order has been delivered!',
|
|
480
|
+
[OrderStatus.CANCELLED]: 'Your order has been cancelled',
|
|
481
|
+
};
|
|
482
|
+
|
|
483
|
+
await user.send([{
|
|
484
|
+
type: 'text',
|
|
485
|
+
text: messages[newStatus] || `Order status: ${newStatus}`
|
|
486
|
+
}]);
|
|
487
|
+
}
|
|
488
|
+
```
|
|
489
|
+
|
|
490
|
+
### Get Order Summary
|
|
491
|
+
|
|
492
|
+
```typescript
|
|
493
|
+
function getOrderSummary(order: OrderInstance) {
|
|
494
|
+
return {
|
|
495
|
+
orderId: order.orderId,
|
|
496
|
+
status: order.status,
|
|
497
|
+
totalItems: order.items?.length || 0,
|
|
498
|
+
totalAmount: order.totalAmount,
|
|
499
|
+
tracking: order.trackingNumber || 'Not available',
|
|
500
|
+
createdAt: order.createdAt
|
|
501
|
+
};
|
|
502
|
+
}
|
|
503
|
+
```
|
|
504
|
+
|
|
505
|
+
## Related APIs
|
|
506
|
+
|
|
507
|
+
- [Baskets API](./Baskets.md) - Create orders from baskets
|
|
508
|
+
- [Products API](./Products.md) - Product information
|
|
509
|
+
- [User API](./User.md) - Notify users about orders
|
|
510
|
+
|
|
511
|
+
## See Also
|
|
512
|
+
|
|
513
|
+
- [Order Fulfillment Guide](../guides/OrderFulfillment.md)
|
|
514
|
+
- [E-commerce Guide](../guides/Ecommerce.md)
|