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,511 @@
|
|
|
1
|
+
# Baskets API
|
|
2
|
+
|
|
3
|
+
The Baskets API allows you to manage shopping baskets for your users. Create baskets, add/remove items, and convert baskets into orders.
|
|
4
|
+
|
|
5
|
+
## Import
|
|
6
|
+
|
|
7
|
+
```typescript
|
|
8
|
+
import { Baskets, BasketStatus } from 'lua-cli';
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Overview
|
|
12
|
+
|
|
13
|
+
The Baskets API enables:
|
|
14
|
+
- Create and manage user shopping baskets
|
|
15
|
+
- Add and remove items from baskets
|
|
16
|
+
- Update basket metadata
|
|
17
|
+
- Filter baskets by status
|
|
18
|
+
- Convert baskets to orders
|
|
19
|
+
- Track total amount and item count
|
|
20
|
+
|
|
21
|
+
## Methods
|
|
22
|
+
|
|
23
|
+
| Method | Description |
|
|
24
|
+
|--------|-------------|
|
|
25
|
+
| `Baskets.create(data)` | Create a new basket |
|
|
26
|
+
| `Baskets.get(status?)` | Get all user baskets, optionally filtered by status |
|
|
27
|
+
| `Baskets.getById(basketId)` | Get a specific basket by ID |
|
|
28
|
+
|
|
29
|
+
## Basket Status
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
enum BasketStatus {
|
|
33
|
+
ACTIVE = 'active',
|
|
34
|
+
CHECKED_OUT = 'checked_out',
|
|
35
|
+
ABANDONED = 'abandoned'
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## BasketInstance Methods
|
|
40
|
+
|
|
41
|
+
Once you have a basket instance, you can call these methods:
|
|
42
|
+
|
|
43
|
+
### `basket.addItem(item)`
|
|
44
|
+
|
|
45
|
+
Adds an item to the basket.
|
|
46
|
+
|
|
47
|
+
**Parameters:**
|
|
48
|
+
- `item` (object) - Item to add
|
|
49
|
+
- `productId` (string) - Product ID
|
|
50
|
+
- `quantity` (number) - Quantity
|
|
51
|
+
- `metadata` (object, optional) - Custom metadata
|
|
52
|
+
|
|
53
|
+
**Returns:** `Promise<Basket>` - Updated basket data
|
|
54
|
+
|
|
55
|
+
**Example:**
|
|
56
|
+
```typescript
|
|
57
|
+
await basket.addItem({
|
|
58
|
+
productId: 'prod_123',
|
|
59
|
+
quantity: 2,
|
|
60
|
+
metadata: { color: 'blue' }
|
|
61
|
+
});
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### `basket.removeItem(itemId)`
|
|
65
|
+
|
|
66
|
+
Removes an item from the basket.
|
|
67
|
+
|
|
68
|
+
**Parameters:**
|
|
69
|
+
- `itemId` (string) - Item ID to remove
|
|
70
|
+
|
|
71
|
+
**Returns:** `Promise<Basket>` - Updated basket data
|
|
72
|
+
|
|
73
|
+
**Example:**
|
|
74
|
+
```typescript
|
|
75
|
+
await basket.removeItem('item_456');
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### `basket.clear()`
|
|
79
|
+
|
|
80
|
+
Removes all items from the basket.
|
|
81
|
+
|
|
82
|
+
**Returns:** `Promise<Basket>` - Empty basket data
|
|
83
|
+
|
|
84
|
+
**Example:**
|
|
85
|
+
```typescript
|
|
86
|
+
await basket.clear();
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### `basket.updateMetadata(metadata)`
|
|
90
|
+
|
|
91
|
+
Updates the basket's metadata.
|
|
92
|
+
|
|
93
|
+
**Parameters:**
|
|
94
|
+
- `metadata` (object) - Metadata object to merge
|
|
95
|
+
|
|
96
|
+
**Returns:** `Promise<Basket>` - Updated basket data
|
|
97
|
+
|
|
98
|
+
**Example:**
|
|
99
|
+
```typescript
|
|
100
|
+
await basket.updateMetadata({
|
|
101
|
+
couponCode: 'SAVE10',
|
|
102
|
+
giftWrap: true
|
|
103
|
+
});
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### `basket.updateStatus(status)`
|
|
107
|
+
|
|
108
|
+
Updates the basket's status.
|
|
109
|
+
|
|
110
|
+
**Parameters:**
|
|
111
|
+
- `status` (BasketStatus) - New status
|
|
112
|
+
|
|
113
|
+
**Returns:** `Promise<Basket>` - Updated basket data
|
|
114
|
+
|
|
115
|
+
**Example:**
|
|
116
|
+
```typescript
|
|
117
|
+
await basket.updateStatus(BasketStatus.ABANDONED);
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### `basket.placeOrder(data)`
|
|
121
|
+
|
|
122
|
+
Converts the basket into an order.
|
|
123
|
+
|
|
124
|
+
**Parameters:**
|
|
125
|
+
- `data` (object) - Order data
|
|
126
|
+
- `shippingAddress` (object) - Shipping address
|
|
127
|
+
- `billingAddress` (object) - Billing address
|
|
128
|
+
- `paymentMethod` (string) - Payment method
|
|
129
|
+
- Any other order-related data
|
|
130
|
+
|
|
131
|
+
**Returns:** `Promise<OrderInstance>` - Created order instance
|
|
132
|
+
|
|
133
|
+
**Example:**
|
|
134
|
+
```typescript
|
|
135
|
+
const order = await basket.placeOrder({
|
|
136
|
+
shippingAddress: {
|
|
137
|
+
street: '123 Main St',
|
|
138
|
+
city: 'New York',
|
|
139
|
+
zip: '10001'
|
|
140
|
+
},
|
|
141
|
+
paymentMethod: 'credit_card'
|
|
142
|
+
});
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## Complete Examples
|
|
146
|
+
|
|
147
|
+
### Shopping Cart Tool
|
|
148
|
+
|
|
149
|
+
```typescript
|
|
150
|
+
import { LuaTool, Baskets, Products, BasketStatus } from 'lua-cli';
|
|
151
|
+
import { z } from 'zod';
|
|
152
|
+
|
|
153
|
+
export default class AddToCartTool implements LuaTool {
|
|
154
|
+
name = 'add_to_cart';
|
|
155
|
+
description = 'Add a product to the shopping cart';
|
|
156
|
+
|
|
157
|
+
inputSchema = z.object({
|
|
158
|
+
productId: z.string().describe('Product ID'),
|
|
159
|
+
quantity: z.number().min(1).default(1).describe('Quantity')
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
163
|
+
// Get or create active basket
|
|
164
|
+
const baskets = await Baskets.get(BasketStatus.ACTIVE);
|
|
165
|
+
let basket = baskets.length > 0 ? baskets[0] : await Baskets.create({
|
|
166
|
+
userId: 'current', // Automatically uses current user
|
|
167
|
+
metadata: {}
|
|
168
|
+
});
|
|
169
|
+
|
|
170
|
+
// Verify product exists
|
|
171
|
+
const product = await Products.getById(input.productId);
|
|
172
|
+
if (!product) {
|
|
173
|
+
return {
|
|
174
|
+
success: false,
|
|
175
|
+
error: 'Product not found'
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
// Add item to basket
|
|
180
|
+
await basket.addItem({
|
|
181
|
+
productId: input.productId,
|
|
182
|
+
quantity: input.quantity,
|
|
183
|
+
metadata: {
|
|
184
|
+
name: product.name,
|
|
185
|
+
price: product.price
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
|
|
189
|
+
return {
|
|
190
|
+
success: true,
|
|
191
|
+
message: `Added ${input.quantity}x ${product.name} to cart`,
|
|
192
|
+
basketId: basket.id,
|
|
193
|
+
itemCount: basket.itemCount,
|
|
194
|
+
totalAmount: basket.totalAmount
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### View Cart Tool
|
|
201
|
+
|
|
202
|
+
```typescript
|
|
203
|
+
import { LuaTool, Baskets, BasketStatus } from 'lua-cli';
|
|
204
|
+
import { z } from 'zod';
|
|
205
|
+
|
|
206
|
+
export default class ViewCartTool implements LuaTool {
|
|
207
|
+
name = 'view_cart';
|
|
208
|
+
description = 'View current shopping cart';
|
|
209
|
+
|
|
210
|
+
inputSchema = z.object({});
|
|
211
|
+
|
|
212
|
+
async execute() {
|
|
213
|
+
const baskets = await Baskets.get(BasketStatus.ACTIVE);
|
|
214
|
+
|
|
215
|
+
if (baskets.length === 0) {
|
|
216
|
+
return {
|
|
217
|
+
success: true,
|
|
218
|
+
message: 'Your cart is empty',
|
|
219
|
+
items: [],
|
|
220
|
+
total: 0
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
const basket = baskets[0];
|
|
225
|
+
|
|
226
|
+
return {
|
|
227
|
+
success: true,
|
|
228
|
+
basketId: basket.id,
|
|
229
|
+
items: basket.items,
|
|
230
|
+
itemCount: basket.itemCount,
|
|
231
|
+
totalAmount: basket.totalAmount,
|
|
232
|
+
metadata: basket.metadata
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### Remove from Cart Tool
|
|
239
|
+
|
|
240
|
+
```typescript
|
|
241
|
+
import { LuaTool, Baskets, BasketStatus } from 'lua-cli';
|
|
242
|
+
import { z } from 'zod';
|
|
243
|
+
|
|
244
|
+
export default class RemoveFromCartTool implements LuaTool {
|
|
245
|
+
name = 'remove_from_cart';
|
|
246
|
+
description = 'Remove an item from the shopping cart';
|
|
247
|
+
|
|
248
|
+
inputSchema = z.object({
|
|
249
|
+
itemId: z.string().describe('Item ID to remove')
|
|
250
|
+
});
|
|
251
|
+
|
|
252
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
253
|
+
const baskets = await Baskets.get(BasketStatus.ACTIVE);
|
|
254
|
+
|
|
255
|
+
if (baskets.length === 0) {
|
|
256
|
+
return {
|
|
257
|
+
success: false,
|
|
258
|
+
error: 'No active basket found'
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
const basket = baskets[0];
|
|
263
|
+
|
|
264
|
+
try {
|
|
265
|
+
await basket.removeItem(input.itemId);
|
|
266
|
+
|
|
267
|
+
return {
|
|
268
|
+
success: true,
|
|
269
|
+
message: 'Item removed from cart',
|
|
270
|
+
itemCount: basket.itemCount,
|
|
271
|
+
totalAmount: basket.totalAmount
|
|
272
|
+
};
|
|
273
|
+
} catch (error) {
|
|
274
|
+
return {
|
|
275
|
+
success: false,
|
|
276
|
+
error: 'Item not found in basket'
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### Checkout Tool
|
|
284
|
+
|
|
285
|
+
```typescript
|
|
286
|
+
import { LuaTool, Baskets, BasketStatus, User } from 'lua-cli';
|
|
287
|
+
import { z } from 'zod';
|
|
288
|
+
|
|
289
|
+
export default class CheckoutTool implements LuaTool {
|
|
290
|
+
name = 'checkout';
|
|
291
|
+
description = 'Complete checkout and create an order';
|
|
292
|
+
|
|
293
|
+
inputSchema = z.object({
|
|
294
|
+
shippingAddress: z.object({
|
|
295
|
+
street: z.string(),
|
|
296
|
+
city: z.string(),
|
|
297
|
+
state: z.string(),
|
|
298
|
+
zip: z.string(),
|
|
299
|
+
country: z.string()
|
|
300
|
+
}),
|
|
301
|
+
paymentMethod: z.enum(['credit_card', 'paypal', 'cash_on_delivery'])
|
|
302
|
+
});
|
|
303
|
+
|
|
304
|
+
async execute(input: z.infer<typeof this.inputSchema>) {
|
|
305
|
+
// Get active basket
|
|
306
|
+
const baskets = await Baskets.get(BasketStatus.ACTIVE);
|
|
307
|
+
|
|
308
|
+
if (baskets.length === 0) {
|
|
309
|
+
return {
|
|
310
|
+
success: false,
|
|
311
|
+
error: 'No active basket found'
|
|
312
|
+
};
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
const basket = baskets[0];
|
|
316
|
+
|
|
317
|
+
if (basket.itemCount === 0) {
|
|
318
|
+
return {
|
|
319
|
+
success: false,
|
|
320
|
+
error: 'Cannot checkout with empty basket'
|
|
321
|
+
};
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
// Get user info
|
|
325
|
+
const user = await User.get();
|
|
326
|
+
|
|
327
|
+
// Place order
|
|
328
|
+
try {
|
|
329
|
+
const order = await basket.placeOrder({
|
|
330
|
+
shippingAddress: input.shippingAddress,
|
|
331
|
+
billingAddress: input.shippingAddress, // Use same as shipping
|
|
332
|
+
paymentMethod: input.paymentMethod,
|
|
333
|
+
customerEmail: user.email,
|
|
334
|
+
customerName: user.name
|
|
335
|
+
});
|
|
336
|
+
|
|
337
|
+
return {
|
|
338
|
+
success: true,
|
|
339
|
+
message: 'Order placed successfully!',
|
|
340
|
+
orderId: order.orderId,
|
|
341
|
+
totalAmount: basket.totalAmount,
|
|
342
|
+
items: basket.items,
|
|
343
|
+
estimatedDelivery: '3-5 business days'
|
|
344
|
+
};
|
|
345
|
+
} catch (error) {
|
|
346
|
+
return {
|
|
347
|
+
success: false,
|
|
348
|
+
error: error instanceof Error ? error.message : 'Checkout failed'
|
|
349
|
+
};
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
### Clear Cart Tool
|
|
356
|
+
|
|
357
|
+
```typescript
|
|
358
|
+
import { LuaTool, Baskets, BasketStatus } from 'lua-cli';
|
|
359
|
+
import { z } from 'zod';
|
|
360
|
+
|
|
361
|
+
export default class ClearCartTool implements LuaTool {
|
|
362
|
+
name = 'clear_cart';
|
|
363
|
+
description = 'Empty the shopping cart';
|
|
364
|
+
|
|
365
|
+
inputSchema = z.object({});
|
|
366
|
+
|
|
367
|
+
async execute() {
|
|
368
|
+
const baskets = await Baskets.get(BasketStatus.ACTIVE);
|
|
369
|
+
|
|
370
|
+
if (baskets.length === 0) {
|
|
371
|
+
return {
|
|
372
|
+
success: true,
|
|
373
|
+
message: 'Cart is already empty'
|
|
374
|
+
};
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
const basket = baskets[0];
|
|
378
|
+
await basket.clear();
|
|
379
|
+
|
|
380
|
+
return {
|
|
381
|
+
success: true,
|
|
382
|
+
message: 'Cart cleared successfully'
|
|
383
|
+
};
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
## Basket Properties
|
|
389
|
+
|
|
390
|
+
Basket instances provide direct access to properties:
|
|
391
|
+
|
|
392
|
+
```typescript
|
|
393
|
+
const basket = await Baskets.getById('basket_123');
|
|
394
|
+
|
|
395
|
+
console.log(basket.id); // Basket ID
|
|
396
|
+
console.log(basket.items); // Array of basket items
|
|
397
|
+
console.log(basket.itemCount); // Total number of items
|
|
398
|
+
console.log(basket.totalAmount); // Total basket value
|
|
399
|
+
console.log(basket.status); // Basket status
|
|
400
|
+
console.log(basket.metadata); // Custom metadata
|
|
401
|
+
```
|
|
402
|
+
|
|
403
|
+
## Best Practices
|
|
404
|
+
|
|
405
|
+
### ✅ DO
|
|
406
|
+
|
|
407
|
+
- Create one basket per user at a time
|
|
408
|
+
- Check for existing active baskets before creating new ones
|
|
409
|
+
- Validate products exist before adding to basket
|
|
410
|
+
- Use metadata for custom data (gift wrap, notes, etc.)
|
|
411
|
+
- Handle checkout failures gracefully
|
|
412
|
+
- Update basket status appropriately (active → checked_out)
|
|
413
|
+
|
|
414
|
+
### ❌ DON'T
|
|
415
|
+
|
|
416
|
+
- Don't create multiple active baskets for the same user
|
|
417
|
+
- Don't forget to validate product availability
|
|
418
|
+
- Don't skip error handling on addItem/checkout
|
|
419
|
+
- Don't place orders from empty baskets
|
|
420
|
+
- Don't assume basket items are still available during checkout
|
|
421
|
+
|
|
422
|
+
## Error Handling
|
|
423
|
+
|
|
424
|
+
```typescript
|
|
425
|
+
try {
|
|
426
|
+
const basket = await Baskets.getById('basket_123');
|
|
427
|
+
await basket.addItem({
|
|
428
|
+
productId: 'prod_456',
|
|
429
|
+
quantity: 1
|
|
430
|
+
});
|
|
431
|
+
} catch (error) {
|
|
432
|
+
if (error.message.includes('not found')) {
|
|
433
|
+
console.log('Basket or product not found');
|
|
434
|
+
} else if (error.message.includes('stock')) {
|
|
435
|
+
console.log('Product out of stock');
|
|
436
|
+
} else {
|
|
437
|
+
console.log('Failed to add item:', error.message);
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
## Common Patterns
|
|
443
|
+
|
|
444
|
+
### Get or Create Basket
|
|
445
|
+
|
|
446
|
+
```typescript
|
|
447
|
+
async function getOrCreateBasket(): Promise<BasketInstance> {
|
|
448
|
+
const baskets = await Baskets.get(BasketStatus.ACTIVE);
|
|
449
|
+
|
|
450
|
+
if (baskets.length > 0) {
|
|
451
|
+
return baskets[0];
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
return await Baskets.create({
|
|
455
|
+
userId: 'current',
|
|
456
|
+
metadata: { createdAt: new Date().toISOString() }
|
|
457
|
+
});
|
|
458
|
+
}
|
|
459
|
+
```
|
|
460
|
+
|
|
461
|
+
### Update Item Quantity
|
|
462
|
+
|
|
463
|
+
```typescript
|
|
464
|
+
async function updateItemQuantity(
|
|
465
|
+
basket: BasketInstance,
|
|
466
|
+
itemId: string,
|
|
467
|
+
newQuantity: number
|
|
468
|
+
): Promise<void> {
|
|
469
|
+
// Remove old item
|
|
470
|
+
await basket.removeItem(itemId);
|
|
471
|
+
|
|
472
|
+
// Add with new quantity
|
|
473
|
+
const item = basket.items.find(i => i.id === itemId);
|
|
474
|
+
if (item) {
|
|
475
|
+
await basket.addItem({
|
|
476
|
+
productId: item.productId,
|
|
477
|
+
quantity: newQuantity,
|
|
478
|
+
metadata: item.metadata
|
|
479
|
+
});
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
```
|
|
483
|
+
|
|
484
|
+
### Apply Coupon Code
|
|
485
|
+
|
|
486
|
+
```typescript
|
|
487
|
+
async function applyCoupon(
|
|
488
|
+
basket: BasketInstance,
|
|
489
|
+
couponCode: string
|
|
490
|
+
): Promise<void> {
|
|
491
|
+
// Validate coupon (your business logic)
|
|
492
|
+
const discount = validateCoupon(couponCode);
|
|
493
|
+
|
|
494
|
+
await basket.updateMetadata({
|
|
495
|
+
couponCode,
|
|
496
|
+
discount,
|
|
497
|
+
discountedTotal: basket.totalAmount - discount
|
|
498
|
+
});
|
|
499
|
+
}
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
## Related APIs
|
|
503
|
+
|
|
504
|
+
- [Products API](./Products.md) - Product catalog management
|
|
505
|
+
- [Orders API](./Orders.md) - Order management after checkout
|
|
506
|
+
- [User API](./User.md) - User data for checkout
|
|
507
|
+
|
|
508
|
+
## See Also
|
|
509
|
+
|
|
510
|
+
- [E-commerce Guide](../guides/Ecommerce.md)
|
|
511
|
+
- [Checkout Flow](../guides/CheckoutFlow.md)
|