tarsk 0.4.4 → 0.4.6
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/dist/index.js +447375 -37
- package/package.json +2 -2
- package/dist/agent/agent.error-utils.d.ts +0 -14
- package/dist/agent/agent.error-utils.js +0 -52
- package/dist/agent/agent.event-transformer.d.ts +0 -55
- package/dist/agent/agent.event-transformer.js +0 -175
- package/dist/agent/agent.executor.d.ts +0 -26
- package/dist/agent/agent.executor.js +0 -286
- package/dist/agent/agent.model-resolver.d.ts +0 -22
- package/dist/agent/agent.model-resolver.js +0 -67
- package/dist/agent/agent.process-manager.d.ts +0 -57
- package/dist/agent/agent.process-manager.js +0 -262
- package/dist/agent/agent.processing-state-manager.d.ts +0 -74
- package/dist/agent/agent.processing-state-manager.js +0 -87
- package/dist/agent/agent.prompt-loader.d.ts +0 -16
- package/dist/agent/agent.prompt-loader.js +0 -227
- package/dist/agent/agent.subagent-executor.d.ts +0 -35
- package/dist/agent/agent.subagent-executor.js +0 -135
- package/dist/bun/index.d.ts +0 -2
- package/dist/bun/index.js +0 -165
- package/dist/cli.d.ts +0 -3
- package/dist/cli.js +0 -22
- package/dist/core/crypto.d.ts +0 -29
- package/dist/core/crypto.js +0 -166
- package/dist/core/dev-server-cache.d.ts +0 -46
- package/dist/core/dev-server-cache.js +0 -59
- package/dist/core/env-manager.d.ts +0 -3
- package/dist/core/env-manager.js +0 -60
- package/dist/core/error-responses.d.ts +0 -61
- package/dist/core/error-responses.js +0 -64
- package/dist/core/logger.d.ts +0 -10
- package/dist/core/logger.js +0 -47
- package/dist/core/paths.d.ts +0 -22
- package/dist/core/paths.js +0 -26
- package/dist/core/random-words.d.ts +0 -18
- package/dist/core/random-words.js +0 -135
- package/dist/core/response-builder.d.ts +0 -50
- package/dist/core/response-builder.js +0 -56
- package/dist/core/route-helpers.d.ts +0 -47
- package/dist/core/route-helpers.js +0 -54
- package/dist/core/run-command-detector.d.ts +0 -26
- package/dist/core/run-command-detector.js +0 -98
- package/dist/core/stream-helper.d.ts +0 -44
- package/dist/core/stream-helper.js +0 -50
- package/dist/core/utils.d.ts +0 -43
- package/dist/core/utils.js +0 -113
- package/dist/core/validation.d.ts +0 -10
- package/dist/core/validation.js +0 -20
- package/dist/database/database.d.ts +0 -40
- package/dist/database/database.encryption.d.ts +0 -33
- package/dist/database/database.encryption.js +0 -62
- package/dist/database/database.js +0 -480
- package/dist/database/database.state.d.ts +0 -52
- package/dist/database/database.state.js +0 -119
- package/dist/database/database.test-utils.d.ts +0 -22
- package/dist/database/database.test-utils.js +0 -39
- package/dist/database/database.types.d.ts +0 -3
- package/dist/database/database.types.js +0 -2
- package/dist/features/agents/agents.manager.d.ts +0 -24
- package/dist/features/agents/agents.manager.js +0 -200
- package/dist/features/ask-user/ask-user.routes.d.ts +0 -9
- package/dist/features/ask-user/ask-user.routes.js +0 -35
- package/dist/features/chat/chat-delete.route.d.ts +0 -15
- package/dist/features/chat/chat-delete.route.js +0 -36
- package/dist/features/chat/chat-post.route.d.ts +0 -11
- package/dist/features/chat/chat-post.route.js +0 -270
- package/dist/features/chat/chat-stop.route.d.ts +0 -21
- package/dist/features/chat/chat-stop.route.js +0 -22
- package/dist/features/chat/chat-subscribe.route.d.ts +0 -9
- package/dist/features/chat/chat-subscribe.route.js +0 -71
- package/dist/features/chat/chat.routes.d.ts +0 -22
- package/dist/features/chat/chat.routes.js +0 -29
- package/dist/features/conversations/conversations-delete.route.d.ts +0 -16
- package/dist/features/conversations/conversations-delete.route.js +0 -34
- package/dist/features/conversations/conversations-get-all.route.d.ts +0 -16
- package/dist/features/conversations/conversations-get-all.route.js +0 -39
- package/dist/features/conversations/conversations-get-by-id.route.d.ts +0 -16
- package/dist/features/conversations/conversations-get-by-id.route.js +0 -38
- package/dist/features/conversations/conversations-get-deleted.route.d.ts +0 -15
- package/dist/features/conversations/conversations-get-deleted.route.js +0 -34
- package/dist/features/conversations/conversations-get-messages.route.d.ts +0 -16
- package/dist/features/conversations/conversations-get-messages.route.js +0 -49
- package/dist/features/conversations/conversations.content.d.ts +0 -28
- package/dist/features/conversations/conversations.content.js +0 -142
- package/dist/features/conversations/conversations.database.d.ts +0 -108
- package/dist/features/conversations/conversations.database.js +0 -373
- package/dist/features/conversations/conversations.manager.d.ts +0 -130
- package/dist/features/conversations/conversations.manager.js +0 -162
- package/dist/features/conversations/conversations.routes.d.ts +0 -21
- package/dist/features/conversations/conversations.routes.js +0 -38
- package/dist/features/conversations/token-usage.route.d.ts +0 -41
- package/dist/features/conversations/token-usage.route.js +0 -419
- package/dist/features/git/git-commit.route.d.ts +0 -12
- package/dist/features/git/git-commit.route.js +0 -39
- package/dist/features/git/git-create-branch.route.d.ts +0 -28
- package/dist/features/git/git-create-branch.route.js +0 -119
- package/dist/features/git/git-create-pr.route.d.ts +0 -13
- package/dist/features/git/git-create-pr.route.js +0 -50
- package/dist/features/git/git-create-repo.route.d.ts +0 -14
- package/dist/features/git/git-create-repo.route.js +0 -108
- package/dist/features/git/git-diff.route.d.ts +0 -30
- package/dist/features/git/git-diff.route.js +0 -189
- package/dist/features/git/git-fetch.route.d.ts +0 -12
- package/dist/features/git/git-fetch.route.js +0 -31
- package/dist/features/git/git-generate-commit-message.route.d.ts +0 -12
- package/dist/features/git/git-generate-commit-message.route.js +0 -76
- package/dist/features/git/git-generate-pr-info.route.d.ts +0 -13
- package/dist/features/git/git-generate-pr-info.route.js +0 -147
- package/dist/features/git/git-github-status.route.d.ts +0 -16
- package/dist/features/git/git-github-status.route.js +0 -68
- package/dist/features/git/git-log.route.d.ts +0 -17
- package/dist/features/git/git-log.route.js +0 -33
- package/dist/features/git/git-pr-status.route.d.ts +0 -15
- package/dist/features/git/git-pr-status.route.js +0 -33
- package/dist/features/git/git-pull.route.d.ts +0 -12
- package/dist/features/git/git-pull.route.js +0 -35
- package/dist/features/git/git-push.route.d.ts +0 -12
- package/dist/features/git/git-push.route.js +0 -46
- package/dist/features/git/git-status-cache.database.d.ts +0 -7
- package/dist/features/git/git-status-cache.database.js +0 -53
- package/dist/features/git/git-status.route.d.ts +0 -15
- package/dist/features/git/git-status.route.js +0 -62
- package/dist/features/git/git-sync-branch.route.d.ts +0 -4
- package/dist/features/git/git-sync-branch.route.js +0 -208
- package/dist/features/git/git-unified-status.route.d.ts +0 -30
- package/dist/features/git/git-unified-status.route.js +0 -165
- package/dist/features/git/git-username.route.d.ts +0 -3
- package/dist/features/git/git-username.route.js +0 -24
- package/dist/features/git/git.manager.d.ts +0 -139
- package/dist/features/git/git.manager.js +0 -352
- package/dist/features/git/git.routes.d.ts +0 -4
- package/dist/features/git/git.routes.js +0 -116
- package/dist/features/git/git.utils.d.ts +0 -82
- package/dist/features/git/git.utils.js +0 -1040
- package/dist/features/mcp/mcp.config.d.ts +0 -27
- package/dist/features/mcp/mcp.config.js +0 -148
- package/dist/features/mcp/mcp.manager.d.ts +0 -61
- package/dist/features/mcp/mcp.manager.js +0 -254
- package/dist/features/mcp/mcp.popular.json +0 -103
- package/dist/features/mcp/mcp.routes.d.ts +0 -13
- package/dist/features/mcp/mcp.routes.js +0 -159
- package/dist/features/mcp/mcp.types.d.ts +0 -80
- package/dist/features/mcp/mcp.types.js +0 -8
- package/dist/features/metadata/metadata.manager.d.ts +0 -126
- package/dist/features/metadata/metadata.manager.js +0 -423
- package/dist/features/models/model-info-aihubmix.d.ts +0 -25
- package/dist/features/models/model-info-aihubmix.js +0 -117
- package/dist/features/models/model-info-openrouter.d.ts +0 -25
- package/dist/features/models/model-info-openrouter.js +0 -104
- package/dist/features/models/model-info.d.ts +0 -37
- package/dist/features/models/model-info.js +0 -39
- package/dist/features/models/models-catalog.d.ts +0 -49
- package/dist/features/models/models-catalog.js +0 -80
- package/dist/features/models/models-catalog.route.d.ts +0 -43
- package/dist/features/models/models-catalog.route.js +0 -15
- package/dist/features/models/models-get-available.route.d.ts +0 -36
- package/dist/features/models/models-get-available.route.js +0 -66
- package/dist/features/models/models-get-enabled.route.d.ts +0 -33
- package/dist/features/models/models-get-enabled.route.js +0 -45
- package/dist/features/models/models-get-model-info.route.d.ts +0 -31
- package/dist/features/models/models-get-model-info.route.js +0 -84
- package/dist/features/models/models-model-disable.route.d.ts +0 -15
- package/dist/features/models/models-model-disable.route.js +0 -20
- package/dist/features/models/models-model-enable.route.d.ts +0 -13
- package/dist/features/models/models-model-enable.route.js +0 -20
- package/dist/features/models/models-provider-refresh.route.d.ts +0 -17
- package/dist/features/models/models-provider-refresh.route.js +0 -20
- package/dist/features/models/models.manager.d.ts +0 -58
- package/dist/features/models/models.manager.js +0 -138
- package/dist/features/models/models.routes.d.ts +0 -18
- package/dist/features/models/models.routes.js +0 -83
- package/dist/features/models/open-router-models.d.ts +0 -38
- package/dist/features/models/open-router-models.js +0 -73
- package/dist/features/models/openai-models.d.ts +0 -63
- package/dist/features/models/openai-models.js +0 -150
- package/dist/features/onboarding/onboarding-get-git-check.route.d.ts +0 -11
- package/dist/features/onboarding/onboarding-get-git-check.route.js +0 -28
- package/dist/features/onboarding/onboarding-get-status.route.d.ts +0 -12
- package/dist/features/onboarding/onboarding-get-status.route.js +0 -15
- package/dist/features/onboarding/onboarding-post-complete.route.d.ts +0 -12
- package/dist/features/onboarding/onboarding-post-complete.route.js +0 -15
- package/dist/features/onboarding/onboarding-post-reset.route.d.ts +0 -12
- package/dist/features/onboarding/onboarding-post-reset.route.js +0 -15
- package/dist/features/onboarding/onboarding.routes.d.ts +0 -18
- package/dist/features/onboarding/onboarding.routes.js +0 -28
- package/dist/features/project-todos/project-todos.database.d.ts +0 -38
- package/dist/features/project-todos/project-todos.database.js +0 -91
- package/dist/features/project-todos/project-todos.routes.d.ts +0 -4
- package/dist/features/project-todos/project-todos.routes.js +0 -94
- package/dist/features/projects/projects-ai-files.route.d.ts +0 -148
- package/dist/features/projects/projects-ai-files.route.js +0 -425
- package/dist/features/projects/projects-commands.route.d.ts +0 -27
- package/dist/features/projects/projects-commands.route.js +0 -39
- package/dist/features/projects/projects-create.route.d.ts +0 -19
- package/dist/features/projects/projects-create.route.js +0 -37
- package/dist/features/projects/projects-delete.route.d.ts +0 -24
- package/dist/features/projects/projects-delete.route.js +0 -34
- package/dist/features/projects/projects-get.route.d.ts +0 -47
- package/dist/features/projects/projects-get.route.js +0 -36
- package/dist/features/projects/projects-list.route.d.ts +0 -58
- package/dist/features/projects/projects-list.route.js +0 -59
- package/dist/features/projects/projects-open-folder.route.d.ts +0 -10
- package/dist/features/projects/projects-open-folder.route.js +0 -11
- package/dist/features/projects/projects-open.route.d.ts +0 -26
- package/dist/features/projects/projects-open.route.js +0 -49
- package/dist/features/projects/projects-package-scripts.route.d.ts +0 -15
- package/dist/features/projects/projects-package-scripts.route.js +0 -96
- package/dist/features/projects/projects-run-command.route.d.ts +0 -8
- package/dist/features/projects/projects-run-command.route.js +0 -21
- package/dist/features/projects/projects-run.route.d.ts +0 -51
- package/dist/features/projects/projects-run.route.js +0 -74
- package/dist/features/projects/projects-update.route.d.ts +0 -24
- package/dist/features/projects/projects-update.route.js +0 -81
- package/dist/features/projects/projects.creator.d.ts +0 -33
- package/dist/features/projects/projects.creator.js +0 -555
- package/dist/features/projects/projects.database.d.ts +0 -61
- package/dist/features/projects/projects.database.js +0 -212
- package/dist/features/projects/projects.manager.d.ts +0 -291
- package/dist/features/projects/projects.manager.js +0 -426
- package/dist/features/projects/projects.open-with.d.ts +0 -27
- package/dist/features/projects/projects.open-with.js +0 -156
- package/dist/features/projects/projects.routes.d.ts +0 -20
- package/dist/features/projects/projects.routes.js +0 -255
- package/dist/features/projects/terminal-session-manager.d.ts +0 -55
- package/dist/features/projects/terminal-session-manager.js +0 -90
- package/dist/features/providers/provider-resolver.d.ts +0 -13
- package/dist/features/providers/provider-resolver.js +0 -22
- package/dist/features/providers/providers-get-credits.route.d.ts +0 -15
- package/dist/features/providers/providers-get-credits.route.js +0 -51
- package/dist/features/providers/providers-get.route.d.ts +0 -16
- package/dist/features/providers/providers-get.route.js +0 -32
- package/dist/features/providers/providers-open-external.route.d.ts +0 -15
- package/dist/features/providers/providers-open-external.route.js +0 -49
- package/dist/features/providers/providers-post-bulk-keys.route.d.ts +0 -14
- package/dist/features/providers/providers-post-bulk-keys.route.js +0 -31
- package/dist/features/providers/providers-post-keys.route.d.ts +0 -14
- package/dist/features/providers/providers-post-keys.route.js +0 -25
- package/dist/features/providers/providers.routes.d.ts +0 -19
- package/dist/features/providers/providers.routes.js +0 -31
- package/dist/features/rules/rules-post.route.d.ts +0 -43
- package/dist/features/rules/rules-post.route.js +0 -89
- package/dist/features/rules/rules.manager.d.ts +0 -36
- package/dist/features/rules/rules.manager.js +0 -203
- package/dist/features/rules/rules.routes.d.ts +0 -12
- package/dist/features/rules/rules.routes.js +0 -13
- package/dist/features/run/run-get-running.route.d.ts +0 -15
- package/dist/features/run/run-get-running.route.js +0 -21
- package/dist/features/run/run-post-start.route.d.ts +0 -8
- package/dist/features/run/run-post-start.route.js +0 -21
- package/dist/features/run/run-post-stop.route.d.ts +0 -15
- package/dist/features/run/run-post-stop.route.js +0 -24
- package/dist/features/run/run-post-suggest.route.d.ts +0 -15
- package/dist/features/run/run-post-suggest.route.js +0 -21
- package/dist/features/run/run-put-command.route.d.ts +0 -15
- package/dist/features/run/run-put-command.route.js +0 -24
- package/dist/features/run/run.routes.d.ts +0 -19
- package/dist/features/run/run.routes.js +0 -31
- package/dist/features/scaffold/index.d.ts +0 -7
- package/dist/features/scaffold/index.js +0 -5
- package/dist/features/scaffold/scaffold-get-templates.route.d.ts +0 -27
- package/dist/features/scaffold/scaffold-get-templates.route.js +0 -17
- package/dist/features/scaffold/scaffold-post.route.d.ts +0 -8
- package/dist/features/scaffold/scaffold-post.route.js +0 -30
- package/dist/features/scaffold/scaffold.routes.d.ts +0 -10
- package/dist/features/scaffold/scaffold.routes.js +0 -16
- package/dist/features/scaffold/scaffold.runner.d.ts +0 -48
- package/dist/features/scaffold/scaffold.runner.js +0 -475
- package/dist/features/scaffold/scaffold.types.d.ts +0 -26
- package/dist/features/scaffold/scaffold.types.js +0 -5
- package/dist/features/skills/skills.activation.d.ts +0 -31
- package/dist/features/skills/skills.activation.js +0 -155
- package/dist/features/skills/skills.manager.d.ts +0 -35
- package/dist/features/skills/skills.manager.js +0 -251
- package/dist/features/slash-commands/slash-commands-delete.route.d.ts +0 -23
- package/dist/features/slash-commands/slash-commands-delete.route.js +0 -36
- package/dist/features/slash-commands/slash-commands-get.route.d.ts +0 -53
- package/dist/features/slash-commands/slash-commands-get.route.js +0 -54
- package/dist/features/slash-commands/slash-commands-post.route.d.ts +0 -39
- package/dist/features/slash-commands/slash-commands-post.route.js +0 -70
- package/dist/features/slash-commands/slash-commands-put.route.d.ts +0 -23
- package/dist/features/slash-commands/slash-commands-put.route.js +0 -36
- package/dist/features/slash-commands/slash-commands.manager.d.ts +0 -46
- package/dist/features/slash-commands/slash-commands.manager.js +0 -265
- package/dist/features/slash-commands/slash-commands.routes.d.ts +0 -13
- package/dist/features/slash-commands/slash-commands.routes.js +0 -20
- package/dist/features/threads/threads-ai-files.route.d.ts +0 -153
- package/dist/features/threads/threads-ai-files.route.js +0 -287
- package/dist/features/threads/threads-conversation-folder-path.route.d.ts +0 -14
- package/dist/features/threads/threads-conversation-folder-path.route.js +0 -23
- package/dist/features/threads/threads-create.route.d.ts +0 -22
- package/dist/features/threads/threads-create.route.js +0 -60
- package/dist/features/threads/threads-delete.route.d.ts +0 -25
- package/dist/features/threads/threads-delete.route.js +0 -35
- package/dist/features/threads/threads-files.route.d.ts +0 -15
- package/dist/features/threads/threads-files.route.js +0 -20
- package/dist/features/threads/threads-fix-comments.route.d.ts +0 -26
- package/dist/features/threads/threads-fix-comments.route.js +0 -45
- package/dist/features/threads/threads-get.route.d.ts +0 -30
- package/dist/features/threads/threads-get.route.js +0 -38
- package/dist/features/threads/threads-list.route.d.ts +0 -56
- package/dist/features/threads/threads-list.route.js +0 -58
- package/dist/features/threads/threads-messages.route.d.ts +0 -28
- package/dist/features/threads/threads-messages.route.js +0 -110
- package/dist/features/threads/threads-open.route.d.ts +0 -26
- package/dist/features/threads/threads-open.route.js +0 -62
- package/dist/features/threads/threads-select.route.d.ts +0 -25
- package/dist/features/threads/threads-select.route.js +0 -35
- package/dist/features/threads/threads-update.route.d.ts +0 -15
- package/dist/features/threads/threads-update.route.js +0 -30
- package/dist/features/threads/threads.database.d.ts +0 -68
- package/dist/features/threads/threads.database.js +0 -215
- package/dist/features/threads/threads.manager.d.ts +0 -204
- package/dist/features/threads/threads.manager.js +0 -505
- package/dist/features/threads/threads.routes.d.ts +0 -20
- package/dist/features/threads/threads.routes.js +0 -230
- package/dist/features/todos/todos.database.d.ts +0 -14
- package/dist/features/todos/todos.database.js +0 -31
- package/dist/features/updates/updates.routes.d.ts +0 -13
- package/dist/features/updates/updates.routes.js +0 -40
- package/dist/index.d.ts +0 -3
- package/dist/project-analyzer.d.ts +0 -26
- package/dist/project-analyzer.js +0 -307
- package/dist/server.d.ts +0 -12
- package/dist/server.js +0 -142
- package/dist/tools/agent-tool.d.ts +0 -49
- package/dist/tools/agent-tool.js +0 -131
- package/dist/tools/ask-user.d.ts +0 -25
- package/dist/tools/ask-user.js +0 -74
- package/dist/tools/ast-grep.d.ts +0 -28
- package/dist/tools/ast-grep.js +0 -273
- package/dist/tools/bash.d.ts +0 -33
- package/dist/tools/bash.js +0 -186
- package/dist/tools/edit-diff.d.ts +0 -24
- package/dist/tools/edit-diff.js +0 -136
- package/dist/tools/edit.d.ts +0 -28
- package/dist/tools/edit.js +0 -78
- package/dist/tools/find.d.ts +0 -31
- package/dist/tools/find.js +0 -117
- package/dist/tools/grep.d.ts +0 -37
- package/dist/tools/grep.js +0 -231
- package/dist/tools/index.d.ts +0 -93
- package/dist/tools/index.js +0 -110
- package/dist/tools/ls.d.ts +0 -31
- package/dist/tools/ls.js +0 -108
- package/dist/tools/mcp-tools.d.ts +0 -31
- package/dist/tools/mcp-tools.js +0 -59
- package/dist/tools/path-utils.d.ts +0 -14
- package/dist/tools/path-utils.js +0 -87
- package/dist/tools/read.d.ts +0 -27
- package/dist/tools/read.js +0 -86
- package/dist/tools/resolve-bin.d.ts +0 -5
- package/dist/tools/resolve-bin.js +0 -28
- package/dist/tools/shell.d.ts +0 -7
- package/dist/tools/shell.js +0 -143
- package/dist/tools/skill-reference-tool.d.ts +0 -30
- package/dist/tools/skill-reference-tool.js +0 -171
- package/dist/tools/skill-tool.d.ts +0 -33
- package/dist/tools/skill-tool.js +0 -213
- package/dist/tools/todo.d.ts +0 -20
- package/dist/tools/todo.js +0 -168
- package/dist/tools/tool-helpers.d.ts +0 -78
- package/dist/tools/tool-helpers.js +0 -109
- package/dist/tools/truncate.d.ts +0 -31
- package/dist/tools/truncate.js +0 -164
- package/dist/tools/write.d.ts +0 -21
- package/dist/tools/write.js +0 -65
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Random word generator for thread names
|
|
3
|
-
*
|
|
4
|
-
* Generates fun, quirky thread names using two random words
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* List of 100 interesting, cute, funny, or quirky words for thread names
|
|
8
|
-
*/
|
|
9
|
-
const WORD_LIST = [
|
|
10
|
-
// Cute animals
|
|
11
|
-
"panda",
|
|
12
|
-
"koala",
|
|
13
|
-
"penguin",
|
|
14
|
-
"bunny",
|
|
15
|
-
"kitten",
|
|
16
|
-
"puppy",
|
|
17
|
-
"hamster",
|
|
18
|
-
"otter",
|
|
19
|
-
"hedgehog",
|
|
20
|
-
"sloth",
|
|
21
|
-
"dolphin",
|
|
22
|
-
"owl",
|
|
23
|
-
"fox",
|
|
24
|
-
"deer",
|
|
25
|
-
"koala",
|
|
26
|
-
"walrus",
|
|
27
|
-
// Fun adjectives
|
|
28
|
-
"bouncy",
|
|
29
|
-
"sparkly",
|
|
30
|
-
"fluffy",
|
|
31
|
-
"jolly",
|
|
32
|
-
"zesty",
|
|
33
|
-
"peppy",
|
|
34
|
-
"snappy",
|
|
35
|
-
"perky",
|
|
36
|
-
"breezy",
|
|
37
|
-
"chirpy",
|
|
38
|
-
"dizzy",
|
|
39
|
-
"fizzy",
|
|
40
|
-
"glossy",
|
|
41
|
-
"groggy",
|
|
42
|
-
"loopy",
|
|
43
|
-
"quirky",
|
|
44
|
-
// Quirky objects
|
|
45
|
-
"umbrella",
|
|
46
|
-
"taco",
|
|
47
|
-
"pickle",
|
|
48
|
-
"waffle",
|
|
49
|
-
"bubble",
|
|
50
|
-
"puzzle",
|
|
51
|
-
"rocket",
|
|
52
|
-
"tornado",
|
|
53
|
-
"volcano",
|
|
54
|
-
"rainbow",
|
|
55
|
-
"diamond",
|
|
56
|
-
"crystal",
|
|
57
|
-
"lantern",
|
|
58
|
-
"treasure",
|
|
59
|
-
"whisper",
|
|
60
|
-
"echo",
|
|
61
|
-
// Fun actions
|
|
62
|
-
"boing",
|
|
63
|
-
"splat",
|
|
64
|
-
"whoosh",
|
|
65
|
-
"crunch",
|
|
66
|
-
"splash",
|
|
67
|
-
"jingle",
|
|
68
|
-
"wiggle",
|
|
69
|
-
"giggle",
|
|
70
|
-
"scramble",
|
|
71
|
-
"tumble",
|
|
72
|
-
"fumble",
|
|
73
|
-
"jumble",
|
|
74
|
-
"rumble",
|
|
75
|
-
"mumble",
|
|
76
|
-
"stumble",
|
|
77
|
-
"hustle",
|
|
78
|
-
// Interesting places
|
|
79
|
-
"castle",
|
|
80
|
-
"island",
|
|
81
|
-
"mountain",
|
|
82
|
-
"forest",
|
|
83
|
-
"meadow",
|
|
84
|
-
"lagoon",
|
|
85
|
-
"canyon",
|
|
86
|
-
"geyser",
|
|
87
|
-
"oasis",
|
|
88
|
-
"glacier",
|
|
89
|
-
"waterfall",
|
|
90
|
-
"volcano",
|
|
91
|
-
"tundra",
|
|
92
|
-
"savanna",
|
|
93
|
-
"jungle",
|
|
94
|
-
"desert",
|
|
95
|
-
// Whimsical concepts
|
|
96
|
-
"magic",
|
|
97
|
-
"dream",
|
|
98
|
-
"wonder",
|
|
99
|
-
"spark",
|
|
100
|
-
"glow",
|
|
101
|
-
"shimmer",
|
|
102
|
-
"twinkle",
|
|
103
|
-
"radiance",
|
|
104
|
-
"harmony",
|
|
105
|
-
"melody",
|
|
106
|
-
"rhythm",
|
|
107
|
-
"symphony",
|
|
108
|
-
"adventure",
|
|
109
|
-
"journey",
|
|
110
|
-
"quest",
|
|
111
|
-
"odyssey",
|
|
112
|
-
];
|
|
113
|
-
/**
|
|
114
|
-
* Get a random word from the word list
|
|
115
|
-
* @returns A random word
|
|
116
|
-
*/
|
|
117
|
-
export function getRandomWord() {
|
|
118
|
-
return WORD_LIST[Math.floor(Math.random() * WORD_LIST.length)];
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Generate a random thread name using two random words
|
|
122
|
-
* Format: {word1}-{word2}
|
|
123
|
-
*
|
|
124
|
-
* @returns A thread name like "bouncy-panda" or "sparkly-taco"
|
|
125
|
-
*/
|
|
126
|
-
export function generateRandomThreadName() {
|
|
127
|
-
const word1 = getRandomWord();
|
|
128
|
-
let word2 = getRandomWord();
|
|
129
|
-
// Ensure we don't get the same word twice
|
|
130
|
-
while (word2 === word1) {
|
|
131
|
-
word2 = getRandomWord();
|
|
132
|
-
}
|
|
133
|
-
return `${word1}-${word2}`;
|
|
134
|
-
}
|
|
135
|
-
//# sourceMappingURL=random-words.js.map
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Response builder utility for centralizing API response formatting
|
|
3
|
-
*
|
|
4
|
-
* Provides factory methods for creating consistent error and success responses
|
|
5
|
-
* across all route handlers. This eliminates duplication of response formatting
|
|
6
|
-
* logic and ensures consistent error handling throughout the API.
|
|
7
|
-
*/
|
|
8
|
-
import type { ErrorResponse } from "@tarsk/shared";
|
|
9
|
-
/**
|
|
10
|
-
* Factory for building consistent API responses
|
|
11
|
-
*/
|
|
12
|
-
export declare class ResponseBuilder {
|
|
13
|
-
/**
|
|
14
|
-
* Creates an error response with standard error structure
|
|
15
|
-
*
|
|
16
|
-
* @param code - Machine-readable error code (e.g., 'INVALID_REQUEST', 'NOT_FOUND')
|
|
17
|
-
* @param message - Human-readable error message
|
|
18
|
-
* @param statusCode - HTTP status code to return
|
|
19
|
-
* @param details - Optional additional error context
|
|
20
|
-
* @returns Object containing both response data and HTTP status code
|
|
21
|
-
*
|
|
22
|
-
* @example
|
|
23
|
-
* ```typescript
|
|
24
|
-
* const { response, statusCode } = ResponseBuilder.error('INVALID_REQUEST', 'Project ID is required', 400);
|
|
25
|
-
* return c.json(response, statusCode as any);
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
static error(code: string, message: string, statusCode: number, details?: unknown): {
|
|
29
|
-
response: ErrorResponse;
|
|
30
|
-
statusCode: number;
|
|
31
|
-
};
|
|
32
|
-
/**
|
|
33
|
-
* Creates a success response with optional data
|
|
34
|
-
*
|
|
35
|
-
* @param data - Response payload data
|
|
36
|
-
* @param statusCode - HTTP status code (default: 200)
|
|
37
|
-
* @returns Object containing both response data and HTTP status code
|
|
38
|
-
*
|
|
39
|
-
* @example
|
|
40
|
-
* ```typescript
|
|
41
|
-
* const { response, statusCode } = ResponseBuilder.success(projects, 200);
|
|
42
|
-
* return c.json(response, statusCode as any);
|
|
43
|
-
* ```
|
|
44
|
-
*/
|
|
45
|
-
static success(data: unknown, statusCode?: number): {
|
|
46
|
-
response: unknown;
|
|
47
|
-
statusCode: number;
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=response-builder.d.ts.map
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Response builder utility for centralizing API response formatting
|
|
3
|
-
*
|
|
4
|
-
* Provides factory methods for creating consistent error and success responses
|
|
5
|
-
* across all route handlers. This eliminates duplication of response formatting
|
|
6
|
-
* logic and ensures consistent error handling throughout the API.
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Factory for building consistent API responses
|
|
10
|
-
*/
|
|
11
|
-
export class ResponseBuilder {
|
|
12
|
-
/**
|
|
13
|
-
* Creates an error response with standard error structure
|
|
14
|
-
*
|
|
15
|
-
* @param code - Machine-readable error code (e.g., 'INVALID_REQUEST', 'NOT_FOUND')
|
|
16
|
-
* @param message - Human-readable error message
|
|
17
|
-
* @param statusCode - HTTP status code to return
|
|
18
|
-
* @param details - Optional additional error context
|
|
19
|
-
* @returns Object containing both response data and HTTP status code
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
* ```typescript
|
|
23
|
-
* const { response, statusCode } = ResponseBuilder.error('INVALID_REQUEST', 'Project ID is required', 400);
|
|
24
|
-
* return c.json(response, statusCode as any);
|
|
25
|
-
* ```
|
|
26
|
-
*/
|
|
27
|
-
static error(code, message, statusCode, details) {
|
|
28
|
-
const error = {
|
|
29
|
-
code,
|
|
30
|
-
message,
|
|
31
|
-
timestamp: new Date().toISOString(),
|
|
32
|
-
};
|
|
33
|
-
if (details !== undefined) {
|
|
34
|
-
error.details = details;
|
|
35
|
-
}
|
|
36
|
-
const response = { error };
|
|
37
|
-
return { response, statusCode };
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Creates a success response with optional data
|
|
41
|
-
*
|
|
42
|
-
* @param data - Response payload data
|
|
43
|
-
* @param statusCode - HTTP status code (default: 200)
|
|
44
|
-
* @returns Object containing both response data and HTTP status code
|
|
45
|
-
*
|
|
46
|
-
* @example
|
|
47
|
-
* ```typescript
|
|
48
|
-
* const { response, statusCode } = ResponseBuilder.success(projects, 200);
|
|
49
|
-
* return c.json(response, statusCode as any);
|
|
50
|
-
* ```
|
|
51
|
-
*/
|
|
52
|
-
static success(data, statusCode = 200) {
|
|
53
|
-
return { response: data, statusCode };
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=response-builder.js.map
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Route helper utilities for reducing duplication in route handlers
|
|
3
|
-
*
|
|
4
|
-
* Provides convenience functions for returning consistent error and success responses
|
|
5
|
-
* across all API routes, eliminating the need to manually destructure ResponseBuilder
|
|
6
|
-
* results and cast status codes.
|
|
7
|
-
*/
|
|
8
|
-
import type { Context } from "hono";
|
|
9
|
-
import { ErrorCode } from "./error-responses.js";
|
|
10
|
-
/**
|
|
11
|
-
* Returns an error response with standard error structure
|
|
12
|
-
*
|
|
13
|
-
* @param c - Hono context
|
|
14
|
-
* @param code - Machine-readable error code from ErrorCodes constants
|
|
15
|
-
* @param message - Human-readable error message
|
|
16
|
-
* @param statusCode - HTTP status code to return
|
|
17
|
-
* @param details - Optional additional error context
|
|
18
|
-
* @returns Hono JSON response
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* return errorResponse(c, ErrorCodes.INVALID_REQUEST, 'Project ID is required', 400);
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export declare function errorResponse(c: Context, code: ErrorCode, message: string, statusCode: number, details?: unknown): Response & import("hono").TypedResponse<{
|
|
26
|
-
error: {
|
|
27
|
-
code: string;
|
|
28
|
-
message: string;
|
|
29
|
-
details?: import("hono/utils/types").JSONValue | undefined;
|
|
30
|
-
timestamp: string;
|
|
31
|
-
};
|
|
32
|
-
}, any, "json">;
|
|
33
|
-
/**
|
|
34
|
-
* Returns a success response with optional data
|
|
35
|
-
*
|
|
36
|
-
* @param c - Hono context
|
|
37
|
-
* @param data - Response payload data
|
|
38
|
-
* @param statusCode - HTTP status code (default: 200)
|
|
39
|
-
* @returns Hono JSON response
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* ```typescript
|
|
43
|
-
* return successResponse(c, { projects });
|
|
44
|
-
* ```
|
|
45
|
-
*/
|
|
46
|
-
export declare function successResponse(c: Context, data: unknown, statusCode?: number): Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">;
|
|
47
|
-
//# sourceMappingURL=route-helpers.d.ts.map
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Route helper utilities for reducing duplication in route handlers
|
|
3
|
-
*
|
|
4
|
-
* Provides convenience functions for returning consistent error and success responses
|
|
5
|
-
* across all API routes, eliminating the need to manually destructure ResponseBuilder
|
|
6
|
-
* results and cast status codes.
|
|
7
|
-
*/
|
|
8
|
-
import { ResponseBuilder } from "./response-builder.js";
|
|
9
|
-
/**
|
|
10
|
-
* Returns an error response with standard error structure
|
|
11
|
-
*
|
|
12
|
-
* @param c - Hono context
|
|
13
|
-
* @param code - Machine-readable error code from ErrorCodes constants
|
|
14
|
-
* @param message - Human-readable error message
|
|
15
|
-
* @param statusCode - HTTP status code to return
|
|
16
|
-
* @param details - Optional additional error context
|
|
17
|
-
* @returns Hono JSON response
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```typescript
|
|
21
|
-
* return errorResponse(c, ErrorCodes.INVALID_REQUEST, 'Project ID is required', 400);
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
export function errorResponse(c, code, message, statusCode, details) {
|
|
25
|
-
// Log error to console for debugging
|
|
26
|
-
if (statusCode >= 500) {
|
|
27
|
-
console.error(`[${code}] ${message}`, details);
|
|
28
|
-
}
|
|
29
|
-
else if (statusCode >= 400) {
|
|
30
|
-
console.error(`[${code}] ${message}`);
|
|
31
|
-
}
|
|
32
|
-
const { response, statusCode: status } = ResponseBuilder.error(code, message, statusCode, details);
|
|
33
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
34
|
-
return c.json(response, status);
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Returns a success response with optional data
|
|
38
|
-
*
|
|
39
|
-
* @param c - Hono context
|
|
40
|
-
* @param data - Response payload data
|
|
41
|
-
* @param statusCode - HTTP status code (default: 200)
|
|
42
|
-
* @returns Hono JSON response
|
|
43
|
-
*
|
|
44
|
-
* @example
|
|
45
|
-
* ```typescript
|
|
46
|
-
* return successResponse(c, { projects });
|
|
47
|
-
* ```
|
|
48
|
-
*/
|
|
49
|
-
export function successResponse(c, data, statusCode = 200) {
|
|
50
|
-
const { response, statusCode: status } = ResponseBuilder.success(data, statusCode);
|
|
51
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
52
|
-
return c.json(response, status);
|
|
53
|
-
}
|
|
54
|
-
//# sourceMappingURL=route-helpers.js.map
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility functions for detecting run commands from package.json
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Detects the package manager used in a project
|
|
6
|
-
* @param projectPath - Path to the project directory
|
|
7
|
-
* @returns The package manager name (npm, bun, pnpm, yarn) or 'npm' as default
|
|
8
|
-
*/
|
|
9
|
-
export declare function detectPackageManager(projectPath: string): Promise<string>;
|
|
10
|
-
/**
|
|
11
|
-
* Detects available run scripts in package.json
|
|
12
|
-
* @param projectPath - Path to the project directory
|
|
13
|
-
* @returns Object with available scripts
|
|
14
|
-
*/
|
|
15
|
-
export declare function detectRunScripts(projectPath: string): Promise<{
|
|
16
|
-
scripts: Record<string, string>;
|
|
17
|
-
hasStart: boolean;
|
|
18
|
-
hasDev: boolean;
|
|
19
|
-
}>;
|
|
20
|
-
/**
|
|
21
|
-
* Suggests a run command based on package.json and detected package manager
|
|
22
|
-
* @param projectPath - Path to the project directory
|
|
23
|
-
* @returns Suggested run command or null if none can be detected
|
|
24
|
-
*/
|
|
25
|
-
export declare function suggestRunCommand(projectPath: string): Promise<string | null>;
|
|
26
|
-
//# sourceMappingURL=run-command-detector.d.ts.map
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility functions for detecting run commands from package.json
|
|
3
|
-
*/
|
|
4
|
-
import { readFile } from "fs/promises";
|
|
5
|
-
import { join } from "path";
|
|
6
|
-
/**
|
|
7
|
-
* Detects the package manager used in a project
|
|
8
|
-
* @param projectPath - Path to the project directory
|
|
9
|
-
* @returns The package manager name (npm, bun, pnpm, yarn) or 'npm' as default
|
|
10
|
-
*/
|
|
11
|
-
export async function detectPackageManager(projectPath) {
|
|
12
|
-
try {
|
|
13
|
-
const packageJsonPath = join(projectPath, "package.json");
|
|
14
|
-
const content = await readFile(packageJsonPath, "utf-8");
|
|
15
|
-
const packageJson = JSON.parse(content);
|
|
16
|
-
// Check packageManager field (npm v7+, yarn berry, pnpm)
|
|
17
|
-
if (packageJson.packageManager) {
|
|
18
|
-
const pm = packageJson.packageManager.split("@")[0];
|
|
19
|
-
if (["npm", "yarn", "pnpm", "bun"].includes(pm)) {
|
|
20
|
-
return pm;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
// Try to detect from lock files
|
|
24
|
-
// This would require file system checks, but for now we'll use heuristics
|
|
25
|
-
// from package.json structure
|
|
26
|
-
// Default to npm
|
|
27
|
-
return "npm";
|
|
28
|
-
}
|
|
29
|
-
catch {
|
|
30
|
-
// Default to npm if package.json doesn't exist or can't be read
|
|
31
|
-
return "npm";
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Detects available run scripts in package.json
|
|
36
|
-
* @param projectPath - Path to the project directory
|
|
37
|
-
* @returns Object with available scripts
|
|
38
|
-
*/
|
|
39
|
-
export async function detectRunScripts(projectPath) {
|
|
40
|
-
try {
|
|
41
|
-
const packageJsonPath = join(projectPath, "package.json");
|
|
42
|
-
const content = await readFile(packageJsonPath, "utf-8");
|
|
43
|
-
const packageJson = JSON.parse(content);
|
|
44
|
-
const scripts = packageJson.scripts ?? {};
|
|
45
|
-
return {
|
|
46
|
-
scripts,
|
|
47
|
-
hasStart: "start" in scripts,
|
|
48
|
-
hasDev: "dev" in scripts,
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
catch {
|
|
52
|
-
return {
|
|
53
|
-
scripts: {},
|
|
54
|
-
hasStart: false,
|
|
55
|
-
hasDev: false,
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Suggests a run command based on package.json and detected package manager
|
|
61
|
-
* @param projectPath - Path to the project directory
|
|
62
|
-
* @returns Suggested run command or null if none can be detected
|
|
63
|
-
*/
|
|
64
|
-
export async function suggestRunCommand(projectPath) {
|
|
65
|
-
try {
|
|
66
|
-
const pm = await detectPackageManager(projectPath);
|
|
67
|
-
const { hasDev, hasStart } = await detectRunScripts(projectPath);
|
|
68
|
-
// Prefer 'dev' script, then 'start' script
|
|
69
|
-
if (hasDev) {
|
|
70
|
-
if (pm === "npm" || pm === "yarn") {
|
|
71
|
-
return `${pm} run dev`;
|
|
72
|
-
}
|
|
73
|
-
else if (pm === "pnpm") {
|
|
74
|
-
return `pnpm dev`;
|
|
75
|
-
}
|
|
76
|
-
else if (pm === "bun") {
|
|
77
|
-
return `bun run dev`;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
if (hasStart) {
|
|
81
|
-
if (pm === "npm" || pm === "yarn") {
|
|
82
|
-
return `${pm} start`;
|
|
83
|
-
}
|
|
84
|
-
else if (pm === "pnpm") {
|
|
85
|
-
return `pnpm start`;
|
|
86
|
-
}
|
|
87
|
-
else if (pm === "bun") {
|
|
88
|
-
return `bun run start`;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
// If no dev or start script, return null
|
|
92
|
-
return null;
|
|
93
|
-
}
|
|
94
|
-
catch {
|
|
95
|
-
return null;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
//# sourceMappingURL=run-command-detector.js.map
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Stream helper utilities for handling async generator streaming responses
|
|
3
|
-
*
|
|
4
|
-
* Centralizes streaming logic to avoid duplication across route handlers
|
|
5
|
-
*/
|
|
6
|
-
import { Context } from "hono";
|
|
7
|
-
import { stream } from "hono/streaming";
|
|
8
|
-
/**
|
|
9
|
-
* Options for streaming async generators
|
|
10
|
-
*/
|
|
11
|
-
export interface StreamOptions<T> {
|
|
12
|
-
/**
|
|
13
|
-
* Custom error event formatter
|
|
14
|
-
* If not provided, defaults to { type: 'error', message: ... }
|
|
15
|
-
*/
|
|
16
|
-
onError?: (error: Error) => T;
|
|
17
|
-
/**
|
|
18
|
-
* Optional abort controller to support cancellation when client disconnects
|
|
19
|
-
* The controller will be aborted when the stream is closed by the client
|
|
20
|
-
*/
|
|
21
|
-
abortController?: AbortController;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Streams an async generator as newline-delimited JSON
|
|
25
|
-
*
|
|
26
|
-
* Handles:
|
|
27
|
-
* - Iterating through async generator
|
|
28
|
-
* - Serializing each event to JSON
|
|
29
|
-
* - Writing newline-delimited format
|
|
30
|
-
* - Error handling and recovery
|
|
31
|
-
* - Proper stream cleanup
|
|
32
|
-
*
|
|
33
|
-
* @param c - Hono context
|
|
34
|
-
* @param generator - Async generator yielding events
|
|
35
|
-
* @param options - Optional configuration
|
|
36
|
-
* @returns Hono response
|
|
37
|
-
*
|
|
38
|
-
* @example
|
|
39
|
-
* ```typescript
|
|
40
|
-
* return StreamHelper.streamAsyncGenerator(c, projectManager.createProject(gitUrl));
|
|
41
|
-
* ```
|
|
42
|
-
*/
|
|
43
|
-
export declare function streamAsyncGenerator<T>(c: Context, generator: AsyncGenerator<T>, options?: StreamOptions<T>): ReturnType<typeof stream>;
|
|
44
|
-
//# sourceMappingURL=stream-helper.d.ts.map
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Stream helper utilities for handling async generator streaming responses
|
|
3
|
-
*
|
|
4
|
-
* Centralizes streaming logic to avoid duplication across route handlers
|
|
5
|
-
*/
|
|
6
|
-
import { stream } from "hono/streaming";
|
|
7
|
-
/**
|
|
8
|
-
* Streams an async generator as newline-delimited JSON
|
|
9
|
-
*
|
|
10
|
-
* Handles:
|
|
11
|
-
* - Iterating through async generator
|
|
12
|
-
* - Serializing each event to JSON
|
|
13
|
-
* - Writing newline-delimited format
|
|
14
|
-
* - Error handling and recovery
|
|
15
|
-
* - Proper stream cleanup
|
|
16
|
-
*
|
|
17
|
-
* @param c - Hono context
|
|
18
|
-
* @param generator - Async generator yielding events
|
|
19
|
-
* @param options - Optional configuration
|
|
20
|
-
* @returns Hono response
|
|
21
|
-
*
|
|
22
|
-
* @example
|
|
23
|
-
* ```typescript
|
|
24
|
-
* return StreamHelper.streamAsyncGenerator(c, projectManager.createProject(gitUrl));
|
|
25
|
-
* ```
|
|
26
|
-
*/
|
|
27
|
-
export function streamAsyncGenerator(c, generator, options) {
|
|
28
|
-
return stream(c, async (writer) => {
|
|
29
|
-
// Set up abort handling if an abort controller was provided
|
|
30
|
-
if (options?.abortController) {
|
|
31
|
-
writer.onAbort(() => {
|
|
32
|
-
console.log("[stream] Client disconnected, aborting stream");
|
|
33
|
-
options.abortController?.abort();
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
try {
|
|
37
|
-
for await (const event of generator) {
|
|
38
|
-
await writer.write(JSON.stringify(event) + "\n");
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
const errorEvent = options?.onError?.(error) ?? {
|
|
43
|
-
type: "error",
|
|
44
|
-
message: error instanceof Error ? error.message : String(error),
|
|
45
|
-
};
|
|
46
|
-
await writer.write(JSON.stringify(errorEvent) + "\n");
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=stream-helper.js.map
|
package/dist/core/utils.d.ts
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility functions for the CLI
|
|
3
|
-
*/
|
|
4
|
-
import { SpawnOptions } from "child_process";
|
|
5
|
-
/**
|
|
6
|
-
* Delays execution for a specified number of milliseconds
|
|
7
|
-
* @param ms - Number of milliseconds to delay
|
|
8
|
-
* @returns Promise that resolves after the delay
|
|
9
|
-
*/
|
|
10
|
-
export declare function delay(ms: number): Promise<void>;
|
|
11
|
-
/**
|
|
12
|
-
* Spawns a child process with proper environment inheritance
|
|
13
|
-
* This ensures that processes like npm, git, etc. can be found in PATH
|
|
14
|
-
*
|
|
15
|
-
* @param command - The command to run
|
|
16
|
-
* @param args - Arguments for the command
|
|
17
|
-
* @param options - Additional spawn options
|
|
18
|
-
* @returns The spawned child process
|
|
19
|
-
*/
|
|
20
|
-
export declare function spawnProcess(command: string, args: string[], options?: SpawnOptions & {
|
|
21
|
-
env?: Record<string, string>;
|
|
22
|
-
}): import("child_process").ChildProcess;
|
|
23
|
-
/**
|
|
24
|
-
* Spawns a child process with shell option and proper environment inheritance
|
|
25
|
-
*
|
|
26
|
-
* @param command - The command to run (can include shell operators)
|
|
27
|
-
* @param options - Additional spawn options
|
|
28
|
-
* @returns The spawned child process
|
|
29
|
-
*/
|
|
30
|
-
export declare function spawnShell(command: string, options?: SpawnOptions & {
|
|
31
|
-
env?: Record<string, string>;
|
|
32
|
-
}): import("child_process").ChildProcess;
|
|
33
|
-
/**
|
|
34
|
-
* Spawns a synchronous child process with proper environment inheritance
|
|
35
|
-
* This ensures that processes like npm, git, etc. can be found in PATH
|
|
36
|
-
*
|
|
37
|
-
* @param command - The command to run
|
|
38
|
-
* @param args - Arguments for the command
|
|
39
|
-
* @param options - Additional spawnSync options
|
|
40
|
-
* @returns The result of the synchronous process
|
|
41
|
-
*/
|
|
42
|
-
export declare function spawnSyncProcess(command: string, args: string[], options?: import("child_process").SpawnSyncOptions): import("child_process").SpawnSyncReturns<string | NonSharedBuffer>;
|
|
43
|
-
//# sourceMappingURL=utils.d.ts.map
|