gitx.do 0.1.1 → 0.1.3
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 +40 -353
- package/dist/do/logger.d.ts +50 -0
- package/dist/do/logger.d.ts.map +1 -0
- package/dist/do/logger.js +122 -0
- package/dist/do/logger.js.map +1 -0
- package/dist/{durable-object → do}/schema.d.ts +3 -3
- package/dist/do/schema.d.ts.map +1 -0
- package/dist/{durable-object → do}/schema.js +4 -3
- package/dist/do/schema.js.map +1 -0
- package/dist/do/types.d.ts +267 -0
- package/dist/do/types.d.ts.map +1 -0
- package/dist/do/types.js +62 -0
- package/dist/do/types.js.map +1 -0
- package/dist/index.d.ts +15 -469
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +39 -481
- package/dist/index.js.map +1 -1
- package/dist/mcp/auth.d.ts +77 -0
- package/dist/mcp/auth.d.ts.map +1 -0
- package/dist/mcp/auth.js +278 -0
- package/dist/mcp/auth.js.map +1 -0
- package/dist/mcp/index.d.ts +13 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +19 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/server.d.ts +200 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +275 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tool-registry.d.ts +47 -0
- package/dist/mcp/tool-registry.d.ts.map +1 -0
- package/dist/mcp/tool-registry.js +284 -0
- package/dist/mcp/tool-registry.js.map +1 -0
- package/dist/mcp/tools.d.ts +103 -515
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +676 -3087
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/types.d.ts +124 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +9 -0
- package/dist/mcp/types.js.map +1 -0
- package/package.json +19 -21
- package/dist/cli/commands/add.d.ts +0 -176
- package/dist/cli/commands/add.d.ts.map +0 -1
- package/dist/cli/commands/add.js +0 -979
- package/dist/cli/commands/add.js.map +0 -1
- package/dist/cli/commands/blame.d.ts +0 -259
- package/dist/cli/commands/blame.d.ts.map +0 -1
- package/dist/cli/commands/blame.js +0 -609
- package/dist/cli/commands/blame.js.map +0 -1
- package/dist/cli/commands/branch.d.ts +0 -249
- package/dist/cli/commands/branch.d.ts.map +0 -1
- package/dist/cli/commands/branch.js +0 -693
- package/dist/cli/commands/branch.js.map +0 -1
- package/dist/cli/commands/checkout.d.ts +0 -73
- package/dist/cli/commands/checkout.d.ts.map +0 -1
- package/dist/cli/commands/checkout.js +0 -725
- package/dist/cli/commands/checkout.js.map +0 -1
- package/dist/cli/commands/commit.d.ts +0 -182
- package/dist/cli/commands/commit.d.ts.map +0 -1
- package/dist/cli/commands/commit.js +0 -457
- package/dist/cli/commands/commit.js.map +0 -1
- package/dist/cli/commands/diff.d.ts +0 -464
- package/dist/cli/commands/diff.d.ts.map +0 -1
- package/dist/cli/commands/diff.js +0 -959
- package/dist/cli/commands/diff.js.map +0 -1
- package/dist/cli/commands/log.d.ts +0 -239
- package/dist/cli/commands/log.d.ts.map +0 -1
- package/dist/cli/commands/log.js +0 -535
- package/dist/cli/commands/log.js.map +0 -1
- package/dist/cli/commands/merge.d.ts +0 -106
- package/dist/cli/commands/merge.d.ts.map +0 -1
- package/dist/cli/commands/merge.js +0 -852
- package/dist/cli/commands/merge.js.map +0 -1
- package/dist/cli/commands/review.d.ts +0 -457
- package/dist/cli/commands/review.d.ts.map +0 -1
- package/dist/cli/commands/review.js +0 -558
- package/dist/cli/commands/review.js.map +0 -1
- package/dist/cli/commands/stash.d.ts +0 -157
- package/dist/cli/commands/stash.d.ts.map +0 -1
- package/dist/cli/commands/stash.js +0 -655
- package/dist/cli/commands/stash.js.map +0 -1
- package/dist/cli/commands/status.d.ts +0 -269
- package/dist/cli/commands/status.d.ts.map +0 -1
- package/dist/cli/commands/status.js +0 -492
- package/dist/cli/commands/status.js.map +0 -1
- package/dist/cli/commands/web.d.ts +0 -199
- package/dist/cli/commands/web.d.ts.map +0 -1
- package/dist/cli/commands/web.js +0 -697
- package/dist/cli/commands/web.js.map +0 -1
- package/dist/cli/fs-adapter.d.ts +0 -656
- package/dist/cli/fs-adapter.d.ts.map +0 -1
- package/dist/cli/fs-adapter.js +0 -1177
- package/dist/cli/fs-adapter.js.map +0 -1
- package/dist/cli/fsx-cli-adapter.d.ts +0 -359
- package/dist/cli/fsx-cli-adapter.d.ts.map +0 -1
- package/dist/cli/fsx-cli-adapter.js +0 -619
- package/dist/cli/fsx-cli-adapter.js.map +0 -1
- package/dist/cli/index.d.ts +0 -387
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -579
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/ui/components/DiffView.d.ts +0 -12
- package/dist/cli/ui/components/DiffView.d.ts.map +0 -1
- package/dist/cli/ui/components/DiffView.js +0 -11
- package/dist/cli/ui/components/DiffView.js.map +0 -1
- package/dist/cli/ui/components/ErrorDisplay.d.ts +0 -10
- package/dist/cli/ui/components/ErrorDisplay.d.ts.map +0 -1
- package/dist/cli/ui/components/ErrorDisplay.js +0 -11
- package/dist/cli/ui/components/ErrorDisplay.js.map +0 -1
- package/dist/cli/ui/components/FuzzySearch.d.ts +0 -15
- package/dist/cli/ui/components/FuzzySearch.d.ts.map +0 -1
- package/dist/cli/ui/components/FuzzySearch.js +0 -12
- package/dist/cli/ui/components/FuzzySearch.js.map +0 -1
- package/dist/cli/ui/components/LoadingSpinner.d.ts +0 -10
- package/dist/cli/ui/components/LoadingSpinner.d.ts.map +0 -1
- package/dist/cli/ui/components/LoadingSpinner.js +0 -10
- package/dist/cli/ui/components/LoadingSpinner.js.map +0 -1
- package/dist/cli/ui/components/NavigationList.d.ts +0 -14
- package/dist/cli/ui/components/NavigationList.d.ts.map +0 -1
- package/dist/cli/ui/components/NavigationList.js +0 -11
- package/dist/cli/ui/components/NavigationList.js.map +0 -1
- package/dist/cli/ui/components/ScrollableContent.d.ts +0 -13
- package/dist/cli/ui/components/ScrollableContent.d.ts.map +0 -1
- package/dist/cli/ui/components/ScrollableContent.js +0 -11
- package/dist/cli/ui/components/ScrollableContent.js.map +0 -1
- package/dist/cli/ui/components/index.d.ts +0 -7
- package/dist/cli/ui/components/index.d.ts.map +0 -1
- package/dist/cli/ui/components/index.js +0 -9
- package/dist/cli/ui/components/index.js.map +0 -1
- package/dist/cli/ui/terminal-ui.d.ts +0 -85
- package/dist/cli/ui/terminal-ui.d.ts.map +0 -1
- package/dist/cli/ui/terminal-ui.js +0 -121
- package/dist/cli/ui/terminal-ui.js.map +0 -1
- package/dist/do/BashModule.d.ts +0 -871
- package/dist/do/BashModule.d.ts.map +0 -1
- package/dist/do/BashModule.js +0 -1143
- package/dist/do/BashModule.js.map +0 -1
- package/dist/do/FsModule.d.ts +0 -612
- package/dist/do/FsModule.d.ts.map +0 -1
- package/dist/do/FsModule.js +0 -1120
- package/dist/do/FsModule.js.map +0 -1
- package/dist/do/GitModule.d.ts +0 -635
- package/dist/do/GitModule.d.ts.map +0 -1
- package/dist/do/GitModule.js +0 -784
- package/dist/do/GitModule.js.map +0 -1
- package/dist/do/GitRepoDO.d.ts +0 -281
- package/dist/do/GitRepoDO.d.ts.map +0 -1
- package/dist/do/GitRepoDO.js +0 -479
- package/dist/do/GitRepoDO.js.map +0 -1
- package/dist/do/bash-ast.d.ts +0 -246
- package/dist/do/bash-ast.d.ts.map +0 -1
- package/dist/do/bash-ast.js +0 -888
- package/dist/do/bash-ast.js.map +0 -1
- package/dist/do/container-executor.d.ts +0 -491
- package/dist/do/container-executor.d.ts.map +0 -1
- package/dist/do/container-executor.js +0 -731
- package/dist/do/container-executor.js.map +0 -1
- package/dist/do/index.d.ts +0 -53
- package/dist/do/index.d.ts.map +0 -1
- package/dist/do/index.js +0 -91
- package/dist/do/index.js.map +0 -1
- package/dist/do/tiered-storage.d.ts +0 -403
- package/dist/do/tiered-storage.d.ts.map +0 -1
- package/dist/do/tiered-storage.js +0 -689
- package/dist/do/tiered-storage.js.map +0 -1
- package/dist/do/withBash.d.ts +0 -231
- package/dist/do/withBash.d.ts.map +0 -1
- package/dist/do/withBash.js +0 -244
- package/dist/do/withBash.js.map +0 -1
- package/dist/do/withFs.d.ts +0 -237
- package/dist/do/withFs.d.ts.map +0 -1
- package/dist/do/withFs.js +0 -387
- package/dist/do/withFs.js.map +0 -1
- package/dist/do/withGit.d.ts +0 -180
- package/dist/do/withGit.d.ts.map +0 -1
- package/dist/do/withGit.js +0 -271
- package/dist/do/withGit.js.map +0 -1
- package/dist/durable-object/object-store.d.ts +0 -633
- package/dist/durable-object/object-store.d.ts.map +0 -1
- package/dist/durable-object/object-store.js +0 -1164
- package/dist/durable-object/object-store.js.map +0 -1
- package/dist/durable-object/schema.d.ts.map +0 -1
- package/dist/durable-object/schema.js.map +0 -1
- package/dist/durable-object/wal.d.ts +0 -416
- package/dist/durable-object/wal.d.ts.map +0 -1
- package/dist/durable-object/wal.js +0 -445
- package/dist/durable-object/wal.js.map +0 -1
- package/dist/mcp/adapter.d.ts +0 -772
- package/dist/mcp/adapter.d.ts.map +0 -1
- package/dist/mcp/adapter.js +0 -895
- package/dist/mcp/adapter.js.map +0 -1
- package/dist/mcp/sandbox/miniflare-evaluator.d.ts +0 -22
- package/dist/mcp/sandbox/miniflare-evaluator.d.ts.map +0 -1
- package/dist/mcp/sandbox/miniflare-evaluator.js +0 -140
- package/dist/mcp/sandbox/miniflare-evaluator.js.map +0 -1
- package/dist/mcp/sandbox/object-store-proxy.d.ts +0 -32
- package/dist/mcp/sandbox/object-store-proxy.d.ts.map +0 -1
- package/dist/mcp/sandbox/object-store-proxy.js +0 -30
- package/dist/mcp/sandbox/object-store-proxy.js.map +0 -1
- package/dist/mcp/sandbox/template.d.ts +0 -17
- package/dist/mcp/sandbox/template.d.ts.map +0 -1
- package/dist/mcp/sandbox/template.js +0 -71
- package/dist/mcp/sandbox/template.js.map +0 -1
- package/dist/mcp/sandbox.d.ts +0 -764
- package/dist/mcp/sandbox.d.ts.map +0 -1
- package/dist/mcp/sandbox.js +0 -1362
- package/dist/mcp/sandbox.js.map +0 -1
- package/dist/mcp/sdk-adapter.d.ts +0 -835
- package/dist/mcp/sdk-adapter.d.ts.map +0 -1
- package/dist/mcp/sdk-adapter.js +0 -974
- package/dist/mcp/sdk-adapter.js.map +0 -1
- package/dist/mcp/tools/do.d.ts +0 -32
- package/dist/mcp/tools/do.d.ts.map +0 -1
- package/dist/mcp/tools/do.js +0 -117
- package/dist/mcp/tools/do.js.map +0 -1
- package/dist/ops/blame.d.ts +0 -551
- package/dist/ops/blame.d.ts.map +0 -1
- package/dist/ops/blame.js +0 -1037
- package/dist/ops/blame.js.map +0 -1
- package/dist/ops/branch.d.ts +0 -766
- package/dist/ops/branch.d.ts.map +0 -1
- package/dist/ops/branch.js +0 -950
- package/dist/ops/branch.js.map +0 -1
- package/dist/ops/commit-traversal.d.ts +0 -349
- package/dist/ops/commit-traversal.d.ts.map +0 -1
- package/dist/ops/commit-traversal.js +0 -821
- package/dist/ops/commit-traversal.js.map +0 -1
- package/dist/ops/commit.d.ts +0 -555
- package/dist/ops/commit.d.ts.map +0 -1
- package/dist/ops/commit.js +0 -826
- package/dist/ops/commit.js.map +0 -1
- package/dist/ops/merge-base.d.ts +0 -397
- package/dist/ops/merge-base.d.ts.map +0 -1
- package/dist/ops/merge-base.js +0 -691
- package/dist/ops/merge-base.js.map +0 -1
- package/dist/ops/merge.d.ts +0 -855
- package/dist/ops/merge.d.ts.map +0 -1
- package/dist/ops/merge.js +0 -1551
- package/dist/ops/merge.js.map +0 -1
- package/dist/ops/tag.d.ts +0 -247
- package/dist/ops/tag.d.ts.map +0 -1
- package/dist/ops/tag.js +0 -649
- package/dist/ops/tag.js.map +0 -1
- package/dist/ops/tree-builder.d.ts +0 -178
- package/dist/ops/tree-builder.d.ts.map +0 -1
- package/dist/ops/tree-builder.js +0 -271
- package/dist/ops/tree-builder.js.map +0 -1
- package/dist/ops/tree-diff.d.ts +0 -291
- package/dist/ops/tree-diff.d.ts.map +0 -1
- package/dist/ops/tree-diff.js +0 -705
- package/dist/ops/tree-diff.js.map +0 -1
- package/dist/pack/delta.d.ts +0 -248
- package/dist/pack/delta.d.ts.map +0 -1
- package/dist/pack/delta.js +0 -740
- package/dist/pack/delta.js.map +0 -1
- package/dist/pack/format.d.ts +0 -446
- package/dist/pack/format.d.ts.map +0 -1
- package/dist/pack/format.js +0 -572
- package/dist/pack/format.js.map +0 -1
- package/dist/pack/full-generation.d.ts +0 -612
- package/dist/pack/full-generation.d.ts.map +0 -1
- package/dist/pack/full-generation.js +0 -1378
- package/dist/pack/full-generation.js.map +0 -1
- package/dist/pack/generation.d.ts +0 -441
- package/dist/pack/generation.d.ts.map +0 -1
- package/dist/pack/generation.js +0 -707
- package/dist/pack/generation.js.map +0 -1
- package/dist/pack/index.d.ts +0 -502
- package/dist/pack/index.d.ts.map +0 -1
- package/dist/pack/index.js +0 -833
- package/dist/pack/index.js.map +0 -1
- package/dist/refs/branch.d.ts +0 -683
- package/dist/refs/branch.d.ts.map +0 -1
- package/dist/refs/branch.js +0 -881
- package/dist/refs/branch.js.map +0 -1
- package/dist/refs/storage.d.ts +0 -833
- package/dist/refs/storage.d.ts.map +0 -1
- package/dist/refs/storage.js +0 -1023
- package/dist/refs/storage.js.map +0 -1
- package/dist/refs/tag.d.ts +0 -860
- package/dist/refs/tag.d.ts.map +0 -1
- package/dist/refs/tag.js +0 -996
- package/dist/refs/tag.js.map +0 -1
- package/dist/storage/backend.d.ts +0 -425
- package/dist/storage/backend.d.ts.map +0 -1
- package/dist/storage/backend.js +0 -41
- package/dist/storage/backend.js.map +0 -1
- package/dist/storage/fsx-adapter.d.ts +0 -204
- package/dist/storage/fsx-adapter.d.ts.map +0 -1
- package/dist/storage/fsx-adapter.js +0 -518
- package/dist/storage/fsx-adapter.js.map +0 -1
- package/dist/storage/lru-cache.d.ts +0 -691
- package/dist/storage/lru-cache.d.ts.map +0 -1
- package/dist/storage/lru-cache.js +0 -813
- package/dist/storage/lru-cache.js.map +0 -1
- package/dist/storage/object-index.d.ts +0 -585
- package/dist/storage/object-index.d.ts.map +0 -1
- package/dist/storage/object-index.js +0 -532
- package/dist/storage/object-index.js.map +0 -1
- package/dist/storage/r2-pack.d.ts +0 -1257
- package/dist/storage/r2-pack.d.ts.map +0 -1
- package/dist/storage/r2-pack.js +0 -1773
- package/dist/storage/r2-pack.js.map +0 -1
- package/dist/tiered/cdc-pipeline.d.ts +0 -1888
- package/dist/tiered/cdc-pipeline.d.ts.map +0 -1
- package/dist/tiered/cdc-pipeline.js +0 -1880
- package/dist/tiered/cdc-pipeline.js.map +0 -1
- package/dist/tiered/migration.d.ts +0 -1104
- package/dist/tiered/migration.d.ts.map +0 -1
- package/dist/tiered/migration.js +0 -1217
- package/dist/tiered/migration.js.map +0 -1
- package/dist/tiered/parquet-writer.d.ts +0 -1145
- package/dist/tiered/parquet-writer.d.ts.map +0 -1
- package/dist/tiered/parquet-writer.js +0 -1183
- package/dist/tiered/parquet-writer.js.map +0 -1
- package/dist/tiered/read-path.d.ts +0 -835
- package/dist/tiered/read-path.d.ts.map +0 -1
- package/dist/tiered/read-path.js +0 -487
- package/dist/tiered/read-path.js.map +0 -1
- package/dist/types/capability.d.ts +0 -1385
- package/dist/types/capability.d.ts.map +0 -1
- package/dist/types/capability.js +0 -36
- package/dist/types/capability.js.map +0 -1
- package/dist/types/index.d.ts +0 -13
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -18
- package/dist/types/index.js.map +0 -1
- package/dist/types/interfaces.d.ts +0 -673
- package/dist/types/interfaces.d.ts.map +0 -1
- package/dist/types/interfaces.js +0 -26
- package/dist/types/interfaces.js.map +0 -1
- package/dist/types/objects.d.ts +0 -692
- package/dist/types/objects.d.ts.map +0 -1
- package/dist/types/objects.js +0 -837
- package/dist/types/objects.js.map +0 -1
- package/dist/types/storage.d.ts +0 -603
- package/dist/types/storage.d.ts.map +0 -1
- package/dist/types/storage.js +0 -191
- package/dist/types/storage.js.map +0 -1
- package/dist/types/worker-loader.d.ts +0 -60
- package/dist/types/worker-loader.d.ts.map +0 -1
- package/dist/types/worker-loader.js +0 -62
- package/dist/types/worker-loader.js.map +0 -1
- package/dist/utils/hash.d.ts +0 -198
- package/dist/utils/hash.d.ts.map +0 -1
- package/dist/utils/hash.js +0 -272
- package/dist/utils/hash.js.map +0 -1
- package/dist/utils/sha1.d.ts +0 -325
- package/dist/utils/sha1.d.ts.map +0 -1
- package/dist/utils/sha1.js +0 -635
- package/dist/utils/sha1.js.map +0 -1
- package/dist/wire/capabilities.d.ts +0 -1044
- package/dist/wire/capabilities.d.ts.map +0 -1
- package/dist/wire/capabilities.js +0 -941
- package/dist/wire/capabilities.js.map +0 -1
- package/dist/wire/path-security.d.ts +0 -157
- package/dist/wire/path-security.d.ts.map +0 -1
- package/dist/wire/path-security.js +0 -307
- package/dist/wire/path-security.js.map +0 -1
- package/dist/wire/pkt-line.d.ts +0 -345
- package/dist/wire/pkt-line.d.ts.map +0 -1
- package/dist/wire/pkt-line.js +0 -381
- package/dist/wire/pkt-line.js.map +0 -1
- package/dist/wire/receive-pack.d.ts +0 -1059
- package/dist/wire/receive-pack.d.ts.map +0 -1
- package/dist/wire/receive-pack.js +0 -1414
- package/dist/wire/receive-pack.js.map +0 -1
- package/dist/wire/smart-http.d.ts +0 -799
- package/dist/wire/smart-http.d.ts.map +0 -1
- package/dist/wire/smart-http.js +0 -945
- package/dist/wire/smart-http.js.map +0 -1
- package/dist/wire/upload-pack.d.ts +0 -727
- package/dist/wire/upload-pack.d.ts.map +0 -1
- package/dist/wire/upload-pack.js +0 -1141
- package/dist/wire/upload-pack.js.map +0 -1
package/dist/do/withGit.d.ts
DELETED
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview withGit Mixin Function for DO Composition
|
|
3
|
-
*
|
|
4
|
-
* This module provides a mixin function that adds git capability to any
|
|
5
|
-
* Durable Object class. The mixin supports lazy initialization of the
|
|
6
|
-
* GitModule for optimal performance.
|
|
7
|
-
*
|
|
8
|
-
* @module do/withGit
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```typescript
|
|
12
|
-
* import { withGit } from 'gitx.do/do'
|
|
13
|
-
* import { DO } from 'dotdo'
|
|
14
|
-
*
|
|
15
|
-
* // Basic usage - adds this.git property
|
|
16
|
-
* class MyDO extends withGit(DO, { repo: 'org/repo' }) {
|
|
17
|
-
* async handleRequest() {
|
|
18
|
-
* await this.git.sync()
|
|
19
|
-
* const status = await this.git.status()
|
|
20
|
-
* return new Response(JSON.stringify(status))
|
|
21
|
-
* }
|
|
22
|
-
* }
|
|
23
|
-
*
|
|
24
|
-
* // With $.git context integration
|
|
25
|
-
* class WorkflowDO extends withGit(DO, {
|
|
26
|
-
* repo: 'org/repo',
|
|
27
|
-
* contextMode: true
|
|
28
|
-
* }) {
|
|
29
|
-
* async handleRequest() {
|
|
30
|
-
* // Access via $.git when contextMode is enabled
|
|
31
|
-
* await this.$.git.sync()
|
|
32
|
-
* }
|
|
33
|
-
* }
|
|
34
|
-
* ```
|
|
35
|
-
*/
|
|
36
|
-
import { GitModule, type GitModuleOptions, type GitBinding, type GitStatus, type SyncResult, type PushResult, type FsCapability, type R2BucketLike } from './GitModule';
|
|
37
|
-
/**
|
|
38
|
-
* Type for a class constructor.
|
|
39
|
-
* @template T - The type that the constructor creates
|
|
40
|
-
*/
|
|
41
|
-
export type Constructor<T = object> = new (...args: any[]) => T;
|
|
42
|
-
/**
|
|
43
|
-
* Interface for DOs that have git capability.
|
|
44
|
-
* This is the shape of a class after applying the withGit mixin.
|
|
45
|
-
*/
|
|
46
|
-
export interface WithGitCapability {
|
|
47
|
-
/** The GitModule instance providing git operations */
|
|
48
|
-
git: GitModule;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Interface for the extended WorkflowContext with git capability.
|
|
52
|
-
* Used when contextMode is enabled.
|
|
53
|
-
*/
|
|
54
|
-
export interface WithGitContext {
|
|
55
|
-
git: GitModule;
|
|
56
|
-
[key: string]: unknown;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Configuration options for the withGit mixin.
|
|
60
|
-
*/
|
|
61
|
-
export interface WithGitOptions {
|
|
62
|
-
/**
|
|
63
|
-
* Repository identifier (e.g., 'org/repo' or full URL)
|
|
64
|
-
*/
|
|
65
|
-
repo: string;
|
|
66
|
-
/**
|
|
67
|
-
* Branch to track
|
|
68
|
-
* @default 'main'
|
|
69
|
-
*/
|
|
70
|
-
branch?: string;
|
|
71
|
-
/**
|
|
72
|
-
* Path prefix within the repository
|
|
73
|
-
*/
|
|
74
|
-
path?: string;
|
|
75
|
-
/**
|
|
76
|
-
* R2 binding name in env to use for object storage
|
|
77
|
-
* @default 'R2_BUCKET'
|
|
78
|
-
*/
|
|
79
|
-
r2Binding?: string;
|
|
80
|
-
/**
|
|
81
|
-
* Custom object key prefix in R2
|
|
82
|
-
* @default 'git/objects'
|
|
83
|
-
*/
|
|
84
|
-
objectPrefix?: string;
|
|
85
|
-
/**
|
|
86
|
-
* Whether to extend the $ WorkflowContext with git capability.
|
|
87
|
-
* When true, this.$.git will be available in addition to this.git.
|
|
88
|
-
* @default false
|
|
89
|
-
*/
|
|
90
|
-
contextMode?: boolean;
|
|
91
|
-
/**
|
|
92
|
-
* Whether to auto-initialize the GitModule on construction.
|
|
93
|
-
* When false (default), GitModule is lazily initialized on first access.
|
|
94
|
-
* @default false
|
|
95
|
-
*/
|
|
96
|
-
autoInit?: boolean;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Mixin function to add git capability to a DO class.
|
|
100
|
-
*
|
|
101
|
-
* @description
|
|
102
|
-
* Composes git functionality into a Durable Object class using the mixin pattern.
|
|
103
|
-
* The resulting class will have a `git` property that provides GitModule functionality.
|
|
104
|
-
*
|
|
105
|
-
* Features:
|
|
106
|
-
* - Lazy initialization: GitModule is only created when first accessed
|
|
107
|
-
* - R2 integration: Automatically resolves R2 bucket from env bindings
|
|
108
|
-
* - Context mode: Optionally extends the $ WorkflowContext with git capability
|
|
109
|
-
* - Composable: Can be combined with other mixins like withBash
|
|
110
|
-
*
|
|
111
|
-
* @param Base - Base class to extend
|
|
112
|
-
* @param options - Git configuration options
|
|
113
|
-
* @returns Extended class with git capability
|
|
114
|
-
*
|
|
115
|
-
* @example
|
|
116
|
-
* ```typescript
|
|
117
|
-
* // Basic usage
|
|
118
|
-
* import { withGit } from 'gitx.do/do'
|
|
119
|
-
* import { DO } from 'dotdo'
|
|
120
|
-
*
|
|
121
|
-
* class MyDO extends withGit(DO, { repo: 'org/repo' }) {
|
|
122
|
-
* async syncAndCommit() {
|
|
123
|
-
* await this.git.sync()
|
|
124
|
-
* await this.git.add('.')
|
|
125
|
-
* await this.git.commit('Update files')
|
|
126
|
-
* await this.git.push()
|
|
127
|
-
* }
|
|
128
|
-
* }
|
|
129
|
-
* ```
|
|
130
|
-
*
|
|
131
|
-
* @example
|
|
132
|
-
* ```typescript
|
|
133
|
-
* // With custom R2 binding
|
|
134
|
-
* class MyDO extends withGit(DO, {
|
|
135
|
-
* repo: 'org/repo',
|
|
136
|
-
* branch: 'develop',
|
|
137
|
-
* r2Binding: 'GIT_OBJECTS'
|
|
138
|
-
* }) {
|
|
139
|
-
* async handleRequest() {
|
|
140
|
-
* await this.git.sync()
|
|
141
|
-
* return new Response('Synced!')
|
|
142
|
-
* }
|
|
143
|
-
* }
|
|
144
|
-
* ```
|
|
145
|
-
*
|
|
146
|
-
* @example
|
|
147
|
-
* ```typescript
|
|
148
|
-
* // Composing with other mixins
|
|
149
|
-
* import { withGit, withBash } from 'gitx.do/do'
|
|
150
|
-
*
|
|
151
|
-
* class DevDO extends withBash(withGit(DO, { repo: 'org/repo' }), {
|
|
152
|
-
* cwd: '/workspace'
|
|
153
|
-
* }) {
|
|
154
|
-
* async buildAndPush() {
|
|
155
|
-
* await this.git.sync()
|
|
156
|
-
* await this.bash.exec('npm', ['run', 'build'])
|
|
157
|
-
* await this.git.add('dist/')
|
|
158
|
-
* await this.git.commit('Build: update dist')
|
|
159
|
-
* await this.git.push()
|
|
160
|
-
* }
|
|
161
|
-
* }
|
|
162
|
-
* ```
|
|
163
|
-
*/
|
|
164
|
-
export declare function withGit<TBase extends Constructor>(Base: TBase, options: WithGitOptions): TBase & Constructor<WithGitCapability>;
|
|
165
|
-
/**
|
|
166
|
-
* Check if a value has git capability.
|
|
167
|
-
*
|
|
168
|
-
* @param value - Value to check
|
|
169
|
-
* @returns True if value has the git property and it's a GitModule
|
|
170
|
-
*
|
|
171
|
-
* @example
|
|
172
|
-
* ```typescript
|
|
173
|
-
* if (hasGitCapability(instance)) {
|
|
174
|
-
* await instance.git.sync()
|
|
175
|
-
* }
|
|
176
|
-
* ```
|
|
177
|
-
*/
|
|
178
|
-
export declare function hasGitCapability(value: unknown): value is WithGitCapability;
|
|
179
|
-
export { GitModule, type GitModuleOptions, type GitBinding, type GitStatus, type SyncResult, type PushResult, type FsCapability, type R2BucketLike, };
|
|
180
|
-
//# sourceMappingURL=withGit.d.ts.map
|
package/dist/do/withGit.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"withGit.d.ts","sourceRoot":"","sources":["../../src/do/withGit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,EACL,SAAS,EACT,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,aAAa,CAAA;AAMpB;;;GAGG;AAEH,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AAE/D;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,GAAG,EAAE,SAAS,CAAA;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,SAAS,CAAA;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AA8BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,wBAAgB,OAAO,CAAC,KAAK,SAAS,WAAW,EAC/C,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,cAAc,GACtB,KAAK,GAAG,WAAW,CAAC,iBAAiB,CAAC,CA+IxC;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAO3E;AAMD,OAAO,EACL,SAAS,EACT,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,CAAA"}
|
package/dist/do/withGit.js
DELETED
|
@@ -1,271 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview withGit Mixin Function for DO Composition
|
|
3
|
-
*
|
|
4
|
-
* This module provides a mixin function that adds git capability to any
|
|
5
|
-
* Durable Object class. The mixin supports lazy initialization of the
|
|
6
|
-
* GitModule for optimal performance.
|
|
7
|
-
*
|
|
8
|
-
* @module do/withGit
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```typescript
|
|
12
|
-
* import { withGit } from 'gitx.do/do'
|
|
13
|
-
* import { DO } from 'dotdo'
|
|
14
|
-
*
|
|
15
|
-
* // Basic usage - adds this.git property
|
|
16
|
-
* class MyDO extends withGit(DO, { repo: 'org/repo' }) {
|
|
17
|
-
* async handleRequest() {
|
|
18
|
-
* await this.git.sync()
|
|
19
|
-
* const status = await this.git.status()
|
|
20
|
-
* return new Response(JSON.stringify(status))
|
|
21
|
-
* }
|
|
22
|
-
* }
|
|
23
|
-
*
|
|
24
|
-
* // With $.git context integration
|
|
25
|
-
* class WorkflowDO extends withGit(DO, {
|
|
26
|
-
* repo: 'org/repo',
|
|
27
|
-
* contextMode: true
|
|
28
|
-
* }) {
|
|
29
|
-
* async handleRequest() {
|
|
30
|
-
* // Access via $.git when contextMode is enabled
|
|
31
|
-
* await this.$.git.sync()
|
|
32
|
-
* }
|
|
33
|
-
* }
|
|
34
|
-
* ```
|
|
35
|
-
*/
|
|
36
|
-
import { GitModule, } from './GitModule';
|
|
37
|
-
// ============================================================================
|
|
38
|
-
// Symbol for Lazy Initialization Cache
|
|
39
|
-
// ============================================================================
|
|
40
|
-
/**
|
|
41
|
-
* Symbol key for caching the GitModule instance.
|
|
42
|
-
* Using a symbol prevents property name collisions.
|
|
43
|
-
*/
|
|
44
|
-
const GIT_MODULE_CACHE = Symbol('gitModuleCache');
|
|
45
|
-
/**
|
|
46
|
-
* Symbol key for storing resolved options.
|
|
47
|
-
*/
|
|
48
|
-
const GIT_OPTIONS = Symbol('gitOptions');
|
|
49
|
-
// ============================================================================
|
|
50
|
-
// withGit Mixin Function
|
|
51
|
-
// ============================================================================
|
|
52
|
-
/**
|
|
53
|
-
* Mixin function to add git capability to a DO class.
|
|
54
|
-
*
|
|
55
|
-
* @description
|
|
56
|
-
* Composes git functionality into a Durable Object class using the mixin pattern.
|
|
57
|
-
* The resulting class will have a `git` property that provides GitModule functionality.
|
|
58
|
-
*
|
|
59
|
-
* Features:
|
|
60
|
-
* - Lazy initialization: GitModule is only created when first accessed
|
|
61
|
-
* - R2 integration: Automatically resolves R2 bucket from env bindings
|
|
62
|
-
* - Context mode: Optionally extends the $ WorkflowContext with git capability
|
|
63
|
-
* - Composable: Can be combined with other mixins like withBash
|
|
64
|
-
*
|
|
65
|
-
* @param Base - Base class to extend
|
|
66
|
-
* @param options - Git configuration options
|
|
67
|
-
* @returns Extended class with git capability
|
|
68
|
-
*
|
|
69
|
-
* @example
|
|
70
|
-
* ```typescript
|
|
71
|
-
* // Basic usage
|
|
72
|
-
* import { withGit } from 'gitx.do/do'
|
|
73
|
-
* import { DO } from 'dotdo'
|
|
74
|
-
*
|
|
75
|
-
* class MyDO extends withGit(DO, { repo: 'org/repo' }) {
|
|
76
|
-
* async syncAndCommit() {
|
|
77
|
-
* await this.git.sync()
|
|
78
|
-
* await this.git.add('.')
|
|
79
|
-
* await this.git.commit('Update files')
|
|
80
|
-
* await this.git.push()
|
|
81
|
-
* }
|
|
82
|
-
* }
|
|
83
|
-
* ```
|
|
84
|
-
*
|
|
85
|
-
* @example
|
|
86
|
-
* ```typescript
|
|
87
|
-
* // With custom R2 binding
|
|
88
|
-
* class MyDO extends withGit(DO, {
|
|
89
|
-
* repo: 'org/repo',
|
|
90
|
-
* branch: 'develop',
|
|
91
|
-
* r2Binding: 'GIT_OBJECTS'
|
|
92
|
-
* }) {
|
|
93
|
-
* async handleRequest() {
|
|
94
|
-
* await this.git.sync()
|
|
95
|
-
* return new Response('Synced!')
|
|
96
|
-
* }
|
|
97
|
-
* }
|
|
98
|
-
* ```
|
|
99
|
-
*
|
|
100
|
-
* @example
|
|
101
|
-
* ```typescript
|
|
102
|
-
* // Composing with other mixins
|
|
103
|
-
* import { withGit, withBash } from 'gitx.do/do'
|
|
104
|
-
*
|
|
105
|
-
* class DevDO extends withBash(withGit(DO, { repo: 'org/repo' }), {
|
|
106
|
-
* cwd: '/workspace'
|
|
107
|
-
* }) {
|
|
108
|
-
* async buildAndPush() {
|
|
109
|
-
* await this.git.sync()
|
|
110
|
-
* await this.bash.exec('npm', ['run', 'build'])
|
|
111
|
-
* await this.git.add('dist/')
|
|
112
|
-
* await this.git.commit('Build: update dist')
|
|
113
|
-
* await this.git.push()
|
|
114
|
-
* }
|
|
115
|
-
* }
|
|
116
|
-
* ```
|
|
117
|
-
*/
|
|
118
|
-
export function withGit(Base, options) {
|
|
119
|
-
// Validate required options
|
|
120
|
-
if (!options.repo) {
|
|
121
|
-
throw new Error('withGit: repo option is required');
|
|
122
|
-
}
|
|
123
|
-
return class WithGitMixin extends Base {
|
|
124
|
-
/**
|
|
125
|
-
* Static list of capabilities for introspection.
|
|
126
|
-
*/
|
|
127
|
-
static capabilities = [...(Base.capabilities || []), 'git'];
|
|
128
|
-
/**
|
|
129
|
-
* Cached GitModule instance (lazy initialized).
|
|
130
|
-
*/
|
|
131
|
-
[GIT_MODULE_CACHE];
|
|
132
|
-
/**
|
|
133
|
-
* Resolved options for GitModule creation.
|
|
134
|
-
*/
|
|
135
|
-
[GIT_OPTIONS];
|
|
136
|
-
/**
|
|
137
|
-
* Whether the git module has been initialized.
|
|
138
|
-
*/
|
|
139
|
-
gitInitialized = false;
|
|
140
|
-
/**
|
|
141
|
-
* The git property provides access to the GitModule.
|
|
142
|
-
* Implements lazy initialization - the module is only created
|
|
143
|
-
* when this property is first accessed.
|
|
144
|
-
*/
|
|
145
|
-
get git() {
|
|
146
|
-
if (!this[GIT_MODULE_CACHE]) {
|
|
147
|
-
this[GIT_MODULE_CACHE] = this.createGitModule();
|
|
148
|
-
}
|
|
149
|
-
return this[GIT_MODULE_CACHE];
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Check if this DO class has a specific capability.
|
|
153
|
-
* @param name - Capability name to check
|
|
154
|
-
* @returns True if the capability is available
|
|
155
|
-
*/
|
|
156
|
-
hasCapability(name) {
|
|
157
|
-
if (name === 'git')
|
|
158
|
-
return true;
|
|
159
|
-
// Check if parent class has the hasCapability method
|
|
160
|
-
const baseProto = Base.prototype;
|
|
161
|
-
if (baseProto && typeof baseProto.hasCapability === 'function') {
|
|
162
|
-
return baseProto.hasCapability.call(this, name);
|
|
163
|
-
}
|
|
164
|
-
return false;
|
|
165
|
-
}
|
|
166
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
167
|
-
constructor(...args) {
|
|
168
|
-
super(...args);
|
|
169
|
-
// Resolve R2 bucket from env if available
|
|
170
|
-
const env = this.env;
|
|
171
|
-
const r2BindingName = options.r2Binding ?? 'R2_BUCKET';
|
|
172
|
-
const r2 = env?.[r2BindingName];
|
|
173
|
-
// Get filesystem capability if available from $ context
|
|
174
|
-
const dollarContext = this.$;
|
|
175
|
-
const fs = dollarContext?.fs;
|
|
176
|
-
// Store resolved options
|
|
177
|
-
this[GIT_OPTIONS] = {
|
|
178
|
-
...options,
|
|
179
|
-
r2,
|
|
180
|
-
fs,
|
|
181
|
-
};
|
|
182
|
-
// Extend $ context if contextMode is enabled
|
|
183
|
-
if (options.contextMode && dollarContext) {
|
|
184
|
-
const self = this;
|
|
185
|
-
const original$ = dollarContext;
|
|
186
|
-
this.$ = new Proxy(original$, {
|
|
187
|
-
get(target, prop) {
|
|
188
|
-
if (prop === 'git') {
|
|
189
|
-
return self.git;
|
|
190
|
-
}
|
|
191
|
-
// Forward to original context
|
|
192
|
-
const value = target[prop];
|
|
193
|
-
if (typeof value === 'function') {
|
|
194
|
-
return value.bind(target);
|
|
195
|
-
}
|
|
196
|
-
return value;
|
|
197
|
-
},
|
|
198
|
-
});
|
|
199
|
-
}
|
|
200
|
-
// Auto-initialize if requested
|
|
201
|
-
if (options.autoInit) {
|
|
202
|
-
// Access git to trigger lazy initialization
|
|
203
|
-
void this.git.initialize();
|
|
204
|
-
this.gitInitialized = true;
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Creates the GitModule instance with resolved options.
|
|
209
|
-
* @returns A new GitModule instance
|
|
210
|
-
*/
|
|
211
|
-
createGitModule() {
|
|
212
|
-
const opts = this[GIT_OPTIONS];
|
|
213
|
-
return new GitModule({
|
|
214
|
-
repo: opts.repo,
|
|
215
|
-
branch: opts.branch,
|
|
216
|
-
path: opts.path,
|
|
217
|
-
r2: opts.r2,
|
|
218
|
-
fs: opts.fs,
|
|
219
|
-
objectPrefix: opts.objectPrefix,
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
/**
|
|
223
|
-
* Initialize the git module explicitly.
|
|
224
|
-
* This is useful when you need to ensure the module is ready
|
|
225
|
-
* before performing operations.
|
|
226
|
-
*/
|
|
227
|
-
async initializeGit() {
|
|
228
|
-
if (!this.gitInitialized) {
|
|
229
|
-
await this.git.initialize();
|
|
230
|
-
this.gitInitialized = true;
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
/**
|
|
234
|
-
* Dispose the git module and clean up resources.
|
|
235
|
-
*/
|
|
236
|
-
async disposeGit() {
|
|
237
|
-
if (this[GIT_MODULE_CACHE]) {
|
|
238
|
-
await this[GIT_MODULE_CACHE].dispose();
|
|
239
|
-
this[GIT_MODULE_CACHE] = undefined;
|
|
240
|
-
this.gitInitialized = false;
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
};
|
|
244
|
-
}
|
|
245
|
-
// ============================================================================
|
|
246
|
-
// Type Guards
|
|
247
|
-
// ============================================================================
|
|
248
|
-
/**
|
|
249
|
-
* Check if a value has git capability.
|
|
250
|
-
*
|
|
251
|
-
* @param value - Value to check
|
|
252
|
-
* @returns True if value has the git property and it's a GitModule
|
|
253
|
-
*
|
|
254
|
-
* @example
|
|
255
|
-
* ```typescript
|
|
256
|
-
* if (hasGitCapability(instance)) {
|
|
257
|
-
* await instance.git.sync()
|
|
258
|
-
* }
|
|
259
|
-
* ```
|
|
260
|
-
*/
|
|
261
|
-
export function hasGitCapability(value) {
|
|
262
|
-
return (typeof value === 'object' &&
|
|
263
|
-
value !== null &&
|
|
264
|
-
'git' in value &&
|
|
265
|
-
value.git instanceof GitModule);
|
|
266
|
-
}
|
|
267
|
-
// ============================================================================
|
|
268
|
-
// Re-exports for Convenience
|
|
269
|
-
// ============================================================================
|
|
270
|
-
export { GitModule, };
|
|
271
|
-
//# sourceMappingURL=withGit.js.map
|
package/dist/do/withGit.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"withGit.js","sourceRoot":"","sources":["../../src/do/withGit.ts"],"names":[],"mappings":"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"}
|