gitx.do 0.0.2 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +319 -92
- package/dist/cli/commands/add.d.ts +174 -0
- package/dist/cli/commands/add.d.ts.map +1 -0
- package/dist/cli/commands/add.js +131 -0
- package/dist/cli/commands/add.js.map +1 -0
- package/dist/cli/commands/blame.d.ts +259 -0
- package/dist/cli/commands/blame.d.ts.map +1 -0
- package/dist/cli/commands/blame.js +609 -0
- package/dist/cli/commands/blame.js.map +1 -0
- package/dist/cli/commands/branch.d.ts +249 -0
- package/dist/cli/commands/branch.d.ts.map +1 -0
- package/dist/cli/commands/branch.js +693 -0
- package/dist/cli/commands/branch.js.map +1 -0
- package/dist/cli/commands/commit.d.ts +182 -0
- package/dist/cli/commands/commit.d.ts.map +1 -0
- package/dist/cli/commands/commit.js +437 -0
- package/dist/cli/commands/commit.js.map +1 -0
- package/dist/cli/commands/diff.d.ts +464 -0
- package/dist/cli/commands/diff.d.ts.map +1 -0
- package/dist/cli/commands/diff.js +958 -0
- package/dist/cli/commands/diff.js.map +1 -0
- package/dist/cli/commands/log.d.ts +239 -0
- package/dist/cli/commands/log.d.ts.map +1 -0
- package/dist/cli/commands/log.js +535 -0
- package/dist/cli/commands/log.js.map +1 -0
- package/dist/cli/commands/merge.d.ts +106 -0
- package/dist/cli/commands/merge.d.ts.map +1 -0
- package/dist/cli/commands/merge.js +55 -0
- package/dist/cli/commands/merge.js.map +1 -0
- package/dist/cli/commands/review.d.ts +457 -0
- package/dist/cli/commands/review.d.ts.map +1 -0
- package/dist/cli/commands/review.js +533 -0
- package/dist/cli/commands/review.js.map +1 -0
- package/dist/cli/commands/status.d.ts +269 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +493 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/web.d.ts +199 -0
- package/dist/cli/commands/web.d.ts.map +1 -0
- package/dist/cli/commands/web.js +696 -0
- package/dist/cli/commands/web.js.map +1 -0
- package/dist/cli/fs-adapter.d.ts +656 -0
- package/dist/cli/fs-adapter.d.ts.map +1 -0
- package/dist/cli/fs-adapter.js +1179 -0
- package/dist/cli/fs-adapter.js.map +1 -0
- package/dist/cli/fsx-cli-adapter.d.ts +359 -0
- package/dist/cli/fsx-cli-adapter.d.ts.map +1 -0
- package/dist/cli/fsx-cli-adapter.js +619 -0
- package/dist/cli/fsx-cli-adapter.js.map +1 -0
- package/dist/cli/index.d.ts +387 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +523 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/ui/components/DiffView.d.ts +7 -0
- package/dist/cli/ui/components/DiffView.d.ts.map +1 -0
- package/dist/cli/ui/components/DiffView.js +11 -0
- package/dist/cli/ui/components/DiffView.js.map +1 -0
- package/dist/cli/ui/components/ErrorDisplay.d.ts +6 -0
- package/dist/cli/ui/components/ErrorDisplay.d.ts.map +1 -0
- package/dist/cli/ui/components/ErrorDisplay.js +11 -0
- package/dist/cli/ui/components/ErrorDisplay.js.map +1 -0
- package/dist/cli/ui/components/FuzzySearch.d.ts +9 -0
- package/dist/cli/ui/components/FuzzySearch.d.ts.map +1 -0
- package/dist/cli/ui/components/FuzzySearch.js +12 -0
- package/dist/cli/ui/components/FuzzySearch.js.map +1 -0
- package/dist/cli/ui/components/LoadingSpinner.d.ts +6 -0
- package/dist/cli/ui/components/LoadingSpinner.d.ts.map +1 -0
- package/dist/cli/ui/components/LoadingSpinner.js +10 -0
- package/dist/cli/ui/components/LoadingSpinner.js.map +1 -0
- package/dist/cli/ui/components/NavigationList.d.ts +9 -0
- package/dist/cli/ui/components/NavigationList.d.ts.map +1 -0
- package/dist/cli/ui/components/NavigationList.js +11 -0
- package/dist/cli/ui/components/NavigationList.js.map +1 -0
- package/dist/cli/ui/components/ScrollableContent.d.ts +8 -0
- package/dist/cli/ui/components/ScrollableContent.d.ts.map +1 -0
- package/dist/cli/ui/components/ScrollableContent.js +11 -0
- package/dist/cli/ui/components/ScrollableContent.js.map +1 -0
- package/dist/cli/ui/components/index.d.ts +7 -0
- package/dist/cli/ui/components/index.d.ts.map +1 -0
- package/dist/cli/ui/components/index.js +9 -0
- package/dist/cli/ui/components/index.js.map +1 -0
- package/dist/cli/ui/terminal-ui.d.ts +52 -0
- package/dist/cli/ui/terminal-ui.d.ts.map +1 -0
- package/dist/cli/ui/terminal-ui.js +121 -0
- package/dist/cli/ui/terminal-ui.js.map +1 -0
- package/dist/do/BashModule.d.ts +871 -0
- package/dist/do/BashModule.d.ts.map +1 -0
- package/dist/do/BashModule.js +1143 -0
- package/dist/do/BashModule.js.map +1 -0
- package/dist/do/FsModule.d.ts +601 -0
- package/dist/do/FsModule.d.ts.map +1 -0
- package/dist/do/FsModule.js +1120 -0
- package/dist/do/FsModule.js.map +1 -0
- package/dist/do/GitModule.d.ts +635 -0
- package/dist/do/GitModule.d.ts.map +1 -0
- package/dist/do/GitModule.js +781 -0
- package/dist/do/GitModule.js.map +1 -0
- package/dist/do/GitRepoDO.d.ts +281 -0
- package/dist/do/GitRepoDO.d.ts.map +1 -0
- package/dist/do/GitRepoDO.js +479 -0
- package/dist/do/GitRepoDO.js.map +1 -0
- package/dist/do/bash-ast.d.ts +246 -0
- package/dist/do/bash-ast.d.ts.map +1 -0
- package/dist/do/bash-ast.js +888 -0
- package/dist/do/bash-ast.js.map +1 -0
- package/dist/do/container-executor.d.ts +491 -0
- package/dist/do/container-executor.d.ts.map +1 -0
- package/dist/do/container-executor.js +730 -0
- package/dist/do/container-executor.js.map +1 -0
- package/dist/do/index.d.ts +53 -0
- package/dist/do/index.d.ts.map +1 -0
- package/dist/do/index.js +91 -0
- package/dist/do/index.js.map +1 -0
- package/dist/do/tiered-storage.d.ts +403 -0
- package/dist/do/tiered-storage.d.ts.map +1 -0
- package/dist/do/tiered-storage.js +689 -0
- package/dist/do/tiered-storage.js.map +1 -0
- package/dist/do/withBash.d.ts +231 -0
- package/dist/do/withBash.d.ts.map +1 -0
- package/dist/do/withBash.js +244 -0
- package/dist/do/withBash.js.map +1 -0
- package/dist/do/withFs.d.ts +237 -0
- package/dist/do/withFs.d.ts.map +1 -0
- package/dist/do/withFs.js +387 -0
- package/dist/do/withFs.js.map +1 -0
- package/dist/do/withGit.d.ts +180 -0
- package/dist/do/withGit.d.ts.map +1 -0
- package/dist/do/withGit.js +271 -0
- package/dist/do/withGit.js.map +1 -0
- package/dist/durable-object/object-store.d.ts +545 -25
- package/dist/durable-object/object-store.d.ts.map +1 -1
- package/dist/durable-object/object-store.js +833 -59
- package/dist/durable-object/object-store.js.map +1 -1
- package/dist/durable-object/schema.d.ts +200 -1
- package/dist/durable-object/schema.d.ts.map +1 -1
- package/dist/durable-object/schema.js +247 -2
- package/dist/durable-object/schema.js.map +1 -1
- package/dist/durable-object/wal.d.ts +336 -31
- package/dist/durable-object/wal.d.ts.map +1 -1
- package/dist/durable-object/wal.js +272 -27
- package/dist/durable-object/wal.js.map +1 -1
- package/dist/index.d.ts +408 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +413 -7
- package/dist/index.js.map +1 -1
- package/dist/mcp/adapter.d.ts +579 -38
- package/dist/mcp/adapter.d.ts.map +1 -1
- package/dist/mcp/adapter.js +426 -33
- package/dist/mcp/adapter.js.map +1 -1
- package/dist/mcp/sandbox/miniflare-evaluator.d.ts +22 -0
- package/dist/mcp/sandbox/miniflare-evaluator.d.ts.map +1 -0
- package/dist/mcp/sandbox/miniflare-evaluator.js +140 -0
- package/dist/mcp/sandbox/miniflare-evaluator.js.map +1 -0
- package/dist/mcp/sandbox/object-store-proxy.d.ts +32 -0
- package/dist/mcp/sandbox/object-store-proxy.d.ts.map +1 -0
- package/dist/mcp/sandbox/object-store-proxy.js +30 -0
- package/dist/mcp/sandbox/object-store-proxy.js.map +1 -0
- package/dist/mcp/sandbox/template.d.ts +17 -0
- package/dist/mcp/sandbox/template.d.ts.map +1 -0
- package/dist/mcp/sandbox/template.js +71 -0
- package/dist/mcp/sandbox/template.js.map +1 -0
- package/dist/mcp/sandbox.d.ts +532 -29
- package/dist/mcp/sandbox.d.ts.map +1 -1
- package/dist/mcp/sandbox.js +405 -26
- package/dist/mcp/sandbox.js.map +1 -1
- package/dist/mcp/sdk-adapter.d.ts +478 -56
- package/dist/mcp/sdk-adapter.d.ts.map +1 -1
- package/dist/mcp/sdk-adapter.js +346 -44
- package/dist/mcp/sdk-adapter.js.map +1 -1
- package/dist/mcp/tools/do.d.ts +32 -0
- package/dist/mcp/tools/do.d.ts.map +1 -0
- package/dist/mcp/tools/do.js +115 -0
- package/dist/mcp/tools/do.js.map +1 -0
- package/dist/mcp/tools.d.ts +445 -30
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +363 -33
- package/dist/mcp/tools.js.map +1 -1
- package/dist/ops/blame.d.ts +424 -21
- package/dist/ops/blame.d.ts.map +1 -1
- package/dist/ops/blame.js +303 -20
- package/dist/ops/blame.js.map +1 -1
- package/dist/ops/branch.d.ts +583 -32
- package/dist/ops/branch.d.ts.map +1 -1
- package/dist/ops/branch.js +365 -23
- package/dist/ops/branch.js.map +1 -1
- package/dist/ops/commit-traversal.d.ts +164 -24
- package/dist/ops/commit-traversal.d.ts.map +1 -1
- package/dist/ops/commit-traversal.js +68 -2
- package/dist/ops/commit-traversal.js.map +1 -1
- package/dist/ops/commit.d.ts +387 -53
- package/dist/ops/commit.d.ts.map +1 -1
- package/dist/ops/commit.js +249 -29
- package/dist/ops/commit.js.map +1 -1
- package/dist/ops/merge-base.d.ts +195 -21
- package/dist/ops/merge-base.d.ts.map +1 -1
- package/dist/ops/merge-base.js +122 -12
- package/dist/ops/merge-base.js.map +1 -1
- package/dist/ops/merge.d.ts +600 -130
- package/dist/ops/merge.d.ts.map +1 -1
- package/dist/ops/merge.js +408 -60
- package/dist/ops/merge.js.map +1 -1
- package/dist/ops/tag.d.ts +67 -2
- package/dist/ops/tag.d.ts.map +1 -1
- package/dist/ops/tag.js +42 -1
- package/dist/ops/tag.js.map +1 -1
- package/dist/ops/tree-builder.d.ts +102 -6
- package/dist/ops/tree-builder.d.ts.map +1 -1
- package/dist/ops/tree-builder.js +30 -5
- package/dist/ops/tree-builder.js.map +1 -1
- package/dist/ops/tree-diff.d.ts +50 -2
- package/dist/ops/tree-diff.d.ts.map +1 -1
- package/dist/ops/tree-diff.js +50 -2
- package/dist/ops/tree-diff.js.map +1 -1
- package/dist/pack/delta.d.ts +219 -39
- package/dist/pack/delta.d.ts.map +1 -1
- package/dist/pack/delta.js +468 -75
- package/dist/pack/delta.js.map +1 -1
- package/dist/pack/format.d.ts +390 -28
- package/dist/pack/format.d.ts.map +1 -1
- package/dist/pack/format.js +344 -33
- package/dist/pack/format.js.map +1 -1
- package/dist/pack/full-generation.d.ts +313 -28
- package/dist/pack/full-generation.d.ts.map +1 -1
- package/dist/pack/full-generation.js +238 -19
- package/dist/pack/full-generation.js.map +1 -1
- package/dist/pack/generation.d.ts +346 -23
- package/dist/pack/generation.d.ts.map +1 -1
- package/dist/pack/generation.js +269 -21
- package/dist/pack/generation.js.map +1 -1
- package/dist/pack/index.d.ts +407 -86
- package/dist/pack/index.d.ts.map +1 -1
- package/dist/pack/index.js +351 -70
- package/dist/pack/index.js.map +1 -1
- package/dist/refs/branch.d.ts +534 -90
- package/dist/refs/branch.d.ts.map +1 -1
- package/dist/refs/branch.js +814 -87
- package/dist/refs/branch.js.map +1 -1
- package/dist/refs/storage.d.ts +684 -59
- package/dist/refs/storage.d.ts.map +1 -1
- package/dist/refs/storage.js +671 -69
- package/dist/refs/storage.js.map +1 -1
- package/dist/refs/tag.d.ts +721 -91
- package/dist/refs/tag.d.ts.map +1 -1
- package/dist/refs/tag.js +908 -100
- package/dist/refs/tag.js.map +1 -1
- package/dist/storage/backend.d.ts +425 -0
- package/dist/storage/backend.d.ts.map +1 -0
- package/dist/storage/backend.js +41 -0
- package/dist/storage/backend.js.map +1 -0
- package/dist/storage/fsx-adapter.d.ts +204 -0
- package/dist/storage/fsx-adapter.d.ts.map +1 -0
- package/dist/storage/fsx-adapter.js +470 -0
- package/dist/storage/fsx-adapter.js.map +1 -0
- package/dist/storage/lru-cache.d.ts +556 -53
- package/dist/storage/lru-cache.d.ts.map +1 -1
- package/dist/storage/lru-cache.js +439 -36
- package/dist/storage/lru-cache.js.map +1 -1
- package/dist/storage/object-index.d.ts +483 -38
- package/dist/storage/object-index.d.ts.map +1 -1
- package/dist/storage/object-index.js +388 -22
- package/dist/storage/object-index.js.map +1 -1
- package/dist/storage/r2-pack.d.ts +957 -94
- package/dist/storage/r2-pack.d.ts.map +1 -1
- package/dist/storage/r2-pack.js +756 -48
- package/dist/storage/r2-pack.js.map +1 -1
- package/dist/tiered/cdc-pipeline.d.ts +1610 -38
- package/dist/tiered/cdc-pipeline.d.ts.map +1 -1
- package/dist/tiered/cdc-pipeline.js +1131 -22
- package/dist/tiered/cdc-pipeline.js.map +1 -1
- package/dist/tiered/migration.d.ts +903 -41
- package/dist/tiered/migration.d.ts.map +1 -1
- package/dist/tiered/migration.js +646 -24
- package/dist/tiered/migration.js.map +1 -1
- package/dist/tiered/parquet-writer.d.ts +944 -47
- package/dist/tiered/parquet-writer.d.ts.map +1 -1
- package/dist/tiered/parquet-writer.js +667 -39
- package/dist/tiered/parquet-writer.js.map +1 -1
- package/dist/tiered/read-path.d.ts +728 -34
- package/dist/tiered/read-path.d.ts.map +1 -1
- package/dist/tiered/read-path.js +310 -27
- package/dist/tiered/read-path.js.map +1 -1
- package/dist/types/capability.d.ts +1385 -0
- package/dist/types/capability.d.ts.map +1 -0
- package/dist/types/capability.js +36 -0
- package/dist/types/capability.js.map +1 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +18 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/objects.d.ts +639 -0
- package/dist/types/objects.d.ts.map +1 -1
- package/dist/types/objects.js +554 -8
- package/dist/types/objects.js.map +1 -1
- package/dist/types/storage.d.ts +521 -35
- package/dist/types/storage.d.ts.map +1 -1
- package/dist/types/storage.js +187 -4
- package/dist/types/storage.js.map +1 -1
- package/dist/types/worker-loader.d.ts +60 -0
- package/dist/types/worker-loader.d.ts.map +1 -0
- package/dist/types/worker-loader.js +62 -0
- package/dist/types/worker-loader.js.map +1 -0
- package/dist/utils/hash.d.ts +186 -20
- package/dist/utils/hash.d.ts.map +1 -1
- package/dist/utils/hash.js +249 -41
- package/dist/utils/hash.js.map +1 -1
- package/dist/utils/sha1.d.ts +273 -9
- package/dist/utils/sha1.d.ts.map +1 -1
- package/dist/utils/sha1.js +466 -11
- package/dist/utils/sha1.js.map +1 -1
- package/dist/wire/capabilities.d.ts +896 -88
- package/dist/wire/capabilities.d.ts.map +1 -1
- package/dist/wire/capabilities.js +566 -62
- package/dist/wire/capabilities.js.map +1 -1
- package/dist/wire/path-security.d.ts +157 -0
- package/dist/wire/path-security.d.ts.map +1 -0
- package/dist/wire/path-security.js +307 -0
- package/dist/wire/path-security.js.map +1 -0
- package/dist/wire/pkt-line.d.ts +293 -15
- package/dist/wire/pkt-line.d.ts.map +1 -1
- package/dist/wire/pkt-line.js +251 -15
- package/dist/wire/pkt-line.js.map +1 -1
- package/dist/wire/receive-pack.d.ts +821 -64
- package/dist/wire/receive-pack.d.ts.map +1 -1
- package/dist/wire/receive-pack.js +571 -42
- package/dist/wire/receive-pack.js.map +1 -1
- package/dist/wire/smart-http.d.ts +575 -97
- package/dist/wire/smart-http.d.ts.map +1 -1
- package/dist/wire/smart-http.js +337 -46
- package/dist/wire/smart-http.js.map +1 -1
- package/dist/wire/upload-pack.d.ts +492 -98
- package/dist/wire/upload-pack.d.ts.map +1 -1
- package/dist/wire/upload-pack.js +347 -59
- package/dist/wire/upload-pack.js.map +1 -1
- package/package.json +10 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bash-ast.js","sourceRoot":"","sources":["../../src/do/bash-ast.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AA2PH;;GAEG;AACH,SAAS,QAAQ,CAAC,KAAa;IAC7B,MAAM,MAAM,GAAY,EAAE,CAAA;IAC1B,IAAI,GAAG,GAAG,CAAC,CAAA;IAEX,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IAChF,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEpG,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1B,kBAAkB;QAClB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YACjD,GAAG,EAAE,CAAA;YACL,SAAQ;QACV,CAAC;QAED,UAAU;QACV,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAA;YACvE,GAAG,EAAE,CAAA;YACL,SAAQ;QACV,CAAC;QAED,WAAW;QACX,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;YACvB,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;gBACjD,GAAG,EAAE,CAAA;YACP,CAAC;YACD,SAAQ;QACV,CAAC;QAED,0DAA0D;QAC1D,IAAI,aAAa,GAAG,KAAK,CAAA;QACzB,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;YAC7B,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC7C,oCAAoC;gBACpC,IAAI,WAAW,GAAG,GAAG,CAAA;gBACrB,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzC,+DAA+D;oBAC/D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;oBAC3C,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC5E,MAAM,CAAC,GAAG,EAAE,CAAA;wBACZ,WAAW,GAAG,SAAS,CAAC,KAAK,CAAA;oBAC/B,CAAC;gBACH,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC7H,GAAG,IAAI,EAAE,CAAC,MAAM,CAAA;gBAChB,aAAa,GAAG,IAAI,CAAA;gBACpB,MAAK;YACP,CAAC;QACH,CAAC;QACD,IAAI,aAAa;YAAE,SAAQ;QAE3B,sBAAsB;QACtB,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC9E,GAAG,IAAI,EAAE,CAAC,MAAM,CAAA;gBAChB,OAAO,GAAG,IAAI,CAAA;gBACd,MAAK;YACP,CAAC;QACH,CAAC;QACD,IAAI,OAAO;YAAE,SAAQ;QAErB,kCAAkC;QAClC,MAAM,SAAS,GAAG,GAAG,CAAA;QACrB,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;YAErB,cAAc;YACd,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC/E,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;gBACrE,MAAK;YACP,CAAC;YAED,uBAAuB;YACvB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,GAAG,EAAE,CAAA;gBACL,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;oBAChD,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;oBAClB,GAAG,EAAE,CAAA;gBACP,CAAC;gBACD,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM;oBAAE,GAAG,EAAE,CAAA,CAAC,qBAAqB;gBACnD,SAAQ;YACV,CAAC;YAED,uBAAuB;YACvB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,GAAG,EAAE,CAAA;gBACL,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;oBAChD,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;wBAClD,IAAI,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;wBACtB,GAAG,IAAI,CAAC,CAAA;oBACV,CAAC;yBAAM,CAAC;wBACN,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;wBAClB,GAAG,EAAE,CAAA;oBACP,CAAC;gBACH,CAAC;gBACD,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM;oBAAE,GAAG,EAAE,CAAA,CAAC,qBAAqB;gBACnD,SAAQ;YACV,CAAC;YAED,mBAAmB;YACnB,IAAI,EAAE,KAAK,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC1C,IAAI,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;gBACtB,GAAG,IAAI,CAAC,CAAA;gBACR,SAAQ;YACV,CAAC;YAED,2BAA2B;YAC3B,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACnE,IAAI,KAAK,GAAG,CAAC,CAAA;gBACb,IAAI,IAAI,IAAI,CAAA;gBACZ,GAAG,IAAI,CAAC,CAAA;gBACR,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACvC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG;wBAAE,KAAK,EAAE,CAAA;yBAC1B,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG;wBAAE,KAAK,EAAE,CAAA;oBACpC,IAAI,KAAK,GAAG,CAAC;wBAAE,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;oBACjC,GAAG,EAAE,CAAA;gBACP,CAAC;gBACD,IAAI,IAAI,GAAG,CAAA;gBACX,SAAQ;YACV,CAAC;YAED,wBAAwB;YACxB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,IAAI,IAAI,EAAE,CAAA;gBACV,GAAG,EAAE,CAAA;gBACL,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;oBAChD,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;wBAClD,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;wBACnC,GAAG,IAAI,CAAC,CAAA;oBACV,CAAC;yBAAM,CAAC;wBACN,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;wBAClB,GAAG,EAAE,CAAA;oBACP,CAAC;gBACH,CAAC;gBACD,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;oBACvB,IAAI,IAAI,GAAG,CAAA;oBACX,GAAG,EAAE,CAAA;gBACP,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,qBAAqB;YACrB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,IAAI,IAAI,EAAE,CAAA;gBACV,GAAG,EAAE,CAAA;gBACL,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;oBAC7C,IAAI,IAAI,GAAG,CAAA;oBACX,GAAG,EAAE,CAAA;oBACL,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;wBAChD,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;wBAClB,GAAG,EAAE,CAAA;oBACP,CAAC;oBACD,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;wBACvB,IAAI,IAAI,GAAG,CAAA;wBACX,GAAG,EAAE,CAAA;oBACP,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC7D,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;wBAClB,GAAG,EAAE,CAAA;oBACP,CAAC;gBACH,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,oBAAoB;YACpB,IAAI,IAAI,EAAE,CAAA;YACV,GAAG,EAAE,CAAA;QACP,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;QACxE,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7D,OAAO,MAAM,CAAA;AACf,CAAC;AAeD;;GAEG;AACH,SAAS,IAAI,CAAC,KAAkB;IAC9B,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;AAClH,CAAC;AAED;;GAEG;AACH,SAAS,OAAO,CAAC,KAAkB;IACjC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;AACpH,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,KAAkB,EAAE,IAAe,EAAE,KAAc;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;IACzB,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IACrC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK;QAAE,OAAO,KAAK,CAAA;IAC9D,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,KAAkB;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5B,IAAI,MAAM,GAAuB,MAAM,CAAA;IACvC,IAAI,UAAU,GAAG,KAAK,CAAA;IAEtB,kCAAkC;IAClC,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,UAAU,GAAG,IAAI,CAAA;IAChD,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,MAAM,GAAG,QAAQ,CAAA;SAC7C,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,MAAM,GAAG,QAAQ,CAAA;SAClD,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,MAAM,GAAG,SAAS,CAAA;IAEvD,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;QAC9C,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM;QACN,UAAU;QACV,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,KAAK,CAAC,GAAG;KACf,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,KAAkB;IACvC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAE1C,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IACpC,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAiB,CAAA;IACxE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEzG,aAAa;IACb,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;QAC1B,0BAA0B;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;IAE/B,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;QACvD,QAAQ;QACR,MAAM;QACN,EAAE;QACF,KAAK,EAAE,aAAa,CAAC,KAAK;QAC1B,GAAG,EAAE,MAAM,CAAC,GAAG;KAChB,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,KAAkB;IACtC,qBAAqB;IACrB,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC;QACD,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;YAC3D,IAAI;YACJ,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK;SACvB,CAAA;IACH,CAAC;IAED,gBAAgB;IAChB,OAAO,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IAE9C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAA;IAClC,MAAM,WAAW,GAAqB,EAAE,CAAA;IACxC,MAAM,IAAI,GAAe,EAAE,CAAA;IAC3B,MAAM,SAAS,GAAmB,EAAE,CAAA;IAEpC,qCAAqC;IACrC,OAAO,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAClF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACtC,WAAW,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,KAAK,CAAC,KAAK;YAChB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;YACjC,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;gBACjC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;gBACnC,MAAM,EAAE,MAAM;gBACd,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACtD,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC;gBAC9B,GAAG,EAAE,KAAK,CAAC,GAAG;aACf;YACD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,EAAE,KAAK,CAAC,GAAG;SACf,CAAC,CAAA;IACJ,CAAC;IAED,mBAAmB;IACnB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;QAC1B,0BAA0B;QAC1B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YACtD,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC;gBAChD,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE;gBAC7G,IAAI,EAAE,EAAE;gBACR,SAAS,EAAE,EAAE;gBACb,WAAW;gBACX,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,QAAQ;gBACf,GAAG,EAAE,UAAU,CAAC,GAAG;aACpB,CAAA;QACH,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;IAE7B,gCAAgC;IAChC,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,QAAQ,EAAE,CAAC;YACb,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACxB,SAAQ;QACV,CAAC;QAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;YAC3B,SAAQ;QACV,CAAC;QAED,MAAK;IACP,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC7C,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC5D,IAAI,CAAC,GAAG,CAAA;IAEvB,OAAO;QACL,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;QACxC,IAAI;QACJ,IAAI;QACJ,SAAS;QACT,WAAW;QACX,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,QAAQ;QACf,GAAG,EAAE,MAAM;KACZ,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,KAAkB;IACvC,qBAAqB;IACrB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,GAAG,CAAA;IACjE,IAAI,OAAO;QAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IAE3B,MAAM,QAAQ,GAAmC,EAAE,CAAA;IAEnD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAEpB,mBAAmB;IACnB,OAAO,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,CAAA;QACd,OAAO,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC;YAAE,OAAO,CAAC,KAAK,CAAC,CAAA;QAC9C,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;QAChC,IAAI,CAAC,IAAI;YAAE,MAAK;QAChB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;IAEhD,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;QACxC,QAAQ;QACR,OAAO;QACP,KAAK,EAAE,QAAQ;QACf,GAAG,EAAE,MAAM;KACZ,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,KAAkB;IACnC,MAAM,SAAS,GAAmB,EAAE,CAAA;IACpC,MAAM,SAAS,GAAmB,EAAE,CAAA;IAEpC,wBAAwB;IACxB,OAAO,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IAE9C,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAClC,IAAI,KAAK,EAAE,CAAC;QACV,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAErB,OAAO,IAAI,EAAE,CAAC;YACZ,2BAA2B;YAC3B,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC;gBAChE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC;gBACnE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,KAAqB,CAAA;gBAC/C,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAElB,2CAA2C;gBAC3C,IAAI,EAAE,KAAK,GAAG,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvC,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;oBACpD,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrC,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;wBACvE,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;4BAC/B,OAAO,CAAC,UAAU,GAAG,IAAI,CAAA;wBAC3B,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,+BAA+B;gBAC/B,OAAO,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC;oBAAE,OAAO,CAAC,KAAK,CAAC,CAAA;gBAE9C,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;gBACjC,IAAI,IAAI,EAAE,CAAC;oBACT,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACtB,CAAC;qBAAM,CAAC;oBACN,MAAK;gBACP,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACd,OAAO,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC;oBAAE,OAAO,CAAC,KAAK,CAAC,CAAA;gBAE9C,wBAAwB;gBACxB,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;gBACjC,IAAI,IAAI,EAAE,CAAC;oBACT,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACnB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACtB,CAAC;qBAAM,CAAC;oBACN,MAAK;gBACP,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAE7E,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;QACxC,SAAS;QACT,SAAS;QACT,KAAK,EAAE,QAAQ;QACf,GAAG,EAAE,MAAM;KACZ,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9B,MAAM,KAAK,GAAgB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAA;IACpD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;AACzB,CAAC;AAED,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;IAC9C,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAChD,MAAM,EAAE,SAAS,EAAE,OAAO;IAC1B,OAAO,EAAE,OAAO,EAAE,OAAO;IACzB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS;CACjD,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI;IAChD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM;IAClD,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU;IACxD,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU;CAC9C,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK;CAC9B,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAClD,IAAI,EAAE,OAAO,EAAE,MAAM;CACtB,CAAC,CAAA;AAEF;;;GAGG;AACH,MAAM,iBAAiB,GAGlB;IACH,mDAAmD;IACnD,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,6CAA6C,EAAE;IAClG,EAAE,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,yCAAyC,EAAE;IAC5F,6DAA6D;IAC7D,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,2CAA2C,EAAE;IAChG,qBAAqB;IACrB,EAAE,OAAO,EAAE,0CAA0C,EAAE,OAAO,EAAE,oBAAoB,EAAE;IACtF,EAAE,OAAO,EAAE,8CAA8C,EAAE,OAAO,EAAE,4BAA4B,EAAE;IAClG,uCAAuC;IACvC,EAAE,OAAO,EAAE,6DAA6D,EAAE,OAAO,EAAE,6BAA6B,EAAE;IAClH,EAAE,OAAO,EAAE,0DAA0D,EAAE,OAAO,EAAE,6BAA6B,EAAE;IAC/G,kBAAkB;IAClB,EAAE,OAAO,EAAE,sDAAsD,EAAE,OAAO,EAAE,mCAAmC,EAAE;IACjH,8CAA8C;IAC9C,EAAE,OAAO,EAAE,uDAAuD,EAAE,OAAO,EAAE,2BAA2B,EAAE;IAC1G,uDAAuD;IACvD,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,uCAAuC,EAAE;IACtF,EAAE,OAAO,EAAE,wBAAwB,EAAE,OAAO,EAAE,uCAAuC,EAAE;IACvF,wBAAwB;IACxB,EAAE,OAAO,EAAE,0CAA0C,EAAE,OAAO,EAAE,6BAA6B,EAAE;IAC/F,qCAAqC;IACrC,EAAE,OAAO,EAAE,0DAA0D,EAAE,OAAO,EAAE,gCAAgC,EAAE;IAClH,kCAAkC;IAClC,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,uBAAuB,EAAE;IAC7D,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,qBAAqB,EAAE;IAC1E,4BAA4B;IAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,6BAA6B,EAAE;IACnE,EAAE,OAAO,EAAE,8BAA8B,EAAE,OAAO,EAAE,6BAA6B,EAAE;CACpF,CAAA;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,KAAa;IAC3C,KAAK,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,iBAAiB,EAAE,CAAC;QACrD,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,YAAY;IACZ,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAE5C,eAAe;IACf,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAA;IAExC,qBAAqB;IACrB,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;IACzG,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;IAC7D,CAAC;IAED,iBAAiB;IACjB,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,IAAI,CAAA;IAE/C,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,QAAsB;IACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAA;IAEpC,mBAAmB;IACnB,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAA;IAE3C,wBAAwB;IACxB,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAA;IAE3C,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,GAAY;IACnC,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,SAAS,KAAK,CAAC,IAAa;QAC1B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,SAAS;gBACZ,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACpB,gCAAgC;oBAChC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAA;oBAChE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACrB,CAAC;gBACD,MAAK;YACP,KAAK,UAAU;gBACb,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC5B,MAAK;YACP,KAAK,MAAM;gBACT,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC7B,MAAK;YACP,KAAK,UAAU;gBACb,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAChB,MAAK;QACT,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,CAAA;IACV,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,GAAY,EAAE,kBAA+B,IAAI,GAAG,EAAE,EAAE,aAAsB;IACtG,MAAM,MAAM,GAAkB,EAAE,CAAA;IAEhC,SAAS,KAAK,CAAC,IAAa;QAC1B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAA;gBAEnE,yBAAyB;gBACzB,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;oBACjC,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,iBAAiB;wBACvB,OAAO,EAAE,YAAY,OAAO,cAAc;wBAC1C,QAAQ,EAAE,UAAU;wBACpB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,GAAG,EAAE,IAAI,CAAC,GAAG;qBACd,CAAC,CAAA;gBACJ,CAAC;gBAED,2BAA2B;gBAC3B,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpC,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,mBAAmB;wBACzB,OAAO,EAAE,YAAY,OAAO,4BAA4B;wBACxD,QAAQ,EAAE,MAAM;wBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,GAAG,EAAE,IAAI,CAAC,GAAG;qBACd,CAAC,CAAA;gBACJ,CAAC;gBAED,sCAAsC;gBACtC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACzC,GAAG,CAAC,KAAK,KAAK,KAAK,IAAI,GAAG,CAAC,KAAK,KAAK,KAAK;wBAC1C,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA;oBAClF,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;oBAC1E,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;oBAClE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;oBAClF,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,oBAAoB,CAAC,CAAA;oBAEnF,yDAAyD;oBACzD,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC,IAAI,iBAAiB,EAAE,CAAC;wBACxD,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,kBAAkB;4BACxB,OAAO,EAAE,gDAAgD;4BACzD,QAAQ,EAAE,UAAU;4BACpB,QAAQ,EAAE,IAAI;4BACd,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,GAAG,EAAE,IAAI,CAAC,GAAG;yBACd,CAAC,CAAA;oBACJ,CAAC;yBAAM,IAAI,CAAC,aAAa,IAAI,gBAAgB,CAAC,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC,EAAE,CAAC;wBACjF,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,kBAAkB;4BACxB,OAAO,EAAE,wDAAwD;4BACjE,QAAQ,EAAE,UAAU;4BACpB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,GAAG,EAAE,IAAI,CAAC,GAAG;yBACd,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAED,qBAAqB;gBACrB,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;oBAChE,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC3C,qFAAqF;wBACrF,MAAM,YAAY,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;wBACjH,IAAI,CAAC,YAAY,EAAE,CAAC;4BAClB,MAAM,CAAC,IAAI,CAAC;gCACV,IAAI,EAAE,kBAAkB;gCACxB,OAAO,EAAE,wCAAwC;gCACjD,QAAQ,EAAE,UAAU;gCACpB,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE,IAAI,CAAC,KAAK;gCACjB,GAAG,EAAE,IAAI,CAAC,GAAG;6BACd,CAAC,CAAA;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,kBAAkB;gBAClB,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;oBACxB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC;wBAC/C,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,mBAAmB;4BACzB,OAAO,EAAE,sCAAsC;4BAC/C,QAAQ,EAAE,MAAM;4BAChB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,GAAG,EAAE,IAAI,CAAC,GAAG;yBACd,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAED,4BAA4B;gBAC5B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACtC,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAClC,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,kBAAkB;4BACxB,OAAO,EAAE,+BAA+B,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE;4BAC/D,QAAQ,EAAE,MAAM;4BAChB,KAAK,EAAE,QAAQ,CAAC,KAAK;4BACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;yBAClB,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAED,MAAK;YACP,CAAC;YAED,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,wEAAwE;gBACxE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAA;gBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBACzC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;oBACvB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;oBACxB,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;wBAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;wBACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;wBACjD,IAAI,CAAC,WAAW,KAAK,MAAM,IAAI,WAAW,KAAK,MAAM,CAAC;4BAClD,CAAC,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,KAAK,CAAC,EAAE,CAAC;4BACrE,MAAM,CAAC,IAAI,CAAC;gCACV,IAAI,EAAE,kBAAkB;gCACxB,OAAO,EAAE,UAAU,WAAW,oCAAoC;gCAClE,QAAQ,EAAE,UAAU;gCACpB,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE,IAAI,CAAC,KAAK;gCACjB,GAAG,EAAE,IAAI,CAAC,GAAG;6BACd,CAAC,CAAA;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC5B,MAAK;YACP,CAAC;YAED,KAAK,MAAM;gBACT,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC7B,MAAK;YAEP,KAAK,UAAU;gBACb,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAChB,MAAK;QACT,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,CAAA;IAEV,oDAAoD;IACpD,MAAM,WAAW,GAAG,aAAa,IAAI,GAAG,CAAC,GAAG,CAAA;IAC5C,MAAM,aAAa,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAA;IACzD,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,WAAW,CAAC,MAAM;SACxB,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAAqB,EAAE,QAAkB;IAChE,qBAAqB;IACrB,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC;QAAE,OAAO,UAAU,CAAA;IAClE,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC;QAAE,OAAO,MAAM,CAAA;IAC1D,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAA;IAC9D,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAExD,sBAAsB;IACtB,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,MAAM,CAAA;QAC9C,IAAI,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,QAAQ,CAAA;QACpD,IAAI,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;IAChD,CAAC;IAED,oBAAoB;IACpB,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,MAAM,CAAA;IAEhE,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,MAAqB;IACjD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,OAAO,UAAU,CAAA;IACnB,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,WAAW,CAAA;IACpB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,gBAAgB,CAC9B,GAAa,EACb,kBAA+B,IAAI,GAAG,EAAE,EACxC,aAAsB;IAEtB,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;IACrC,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,aAAa,CAAC,CAAA;IACpE,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAChD,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;IAEnC,OAAO;QACL,SAAS;QACT,WAAW;QACX,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QACzD,QAAQ;QACR,MAAM;QACN,MAAM;QACN,GAAG;KACJ,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAa,EACb,kBAA+B,IAAI,GAAG,EAAE;IAExC,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;IACnC,OAAO,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC,CAAA;AACtD,CAAC"}
|
|
@@ -0,0 +1,491 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Cloudflare Container Executor Integration
|
|
3
|
+
*
|
|
4
|
+
* This module provides executor implementations for running bash commands
|
|
5
|
+
* in Cloudflare Containers. It supports multiple execution modes:
|
|
6
|
+
*
|
|
7
|
+
* - HTTP-based execution with the Sandbox SDK (exec/execStream)
|
|
8
|
+
* - WebSocket streaming for interactive sessions
|
|
9
|
+
* - Session isolation for multi-tenant environments
|
|
10
|
+
*
|
|
11
|
+
* @module do/container-executor
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* import { CloudflareContainerExecutor } from 'gitx.do/do'
|
|
16
|
+
*
|
|
17
|
+
* const executor = new CloudflareContainerExecutor({
|
|
18
|
+
* sandbox: env.Sandbox,
|
|
19
|
+
* sessionId: 'user-123',
|
|
20
|
+
* })
|
|
21
|
+
*
|
|
22
|
+
* const result = await executor.execute('ls -la')
|
|
23
|
+
* console.log(result.stdout)
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
import type { BashExecutor, BashResult, ExecOptions, SpawnHandle, SpawnOptions } from './BashModule';
|
|
27
|
+
/**
|
|
28
|
+
* Cloudflare Sandbox interface.
|
|
29
|
+
* Matches the Sandbox SDK API from @cloudflare/sandbox.
|
|
30
|
+
*/
|
|
31
|
+
export interface CloudflareSandbox {
|
|
32
|
+
/**
|
|
33
|
+
* Execute a command and wait for completion.
|
|
34
|
+
* Returns stdout, stderr, exitCode, and success flag.
|
|
35
|
+
*/
|
|
36
|
+
exec(command: string, options?: SandboxExecOptions): Promise<SandboxExecResult>;
|
|
37
|
+
/**
|
|
38
|
+
* Execute a command with streaming output.
|
|
39
|
+
* Returns a readable stream of output chunks.
|
|
40
|
+
*/
|
|
41
|
+
execStream?(command: string, options?: SandboxExecOptions): Promise<SandboxStreamResult>;
|
|
42
|
+
/**
|
|
43
|
+
* Start a background process.
|
|
44
|
+
* Returns a handle for managing the process.
|
|
45
|
+
*/
|
|
46
|
+
startProcess?(command: string, options?: SandboxExecOptions): Promise<SandboxProcessHandle>;
|
|
47
|
+
/**
|
|
48
|
+
* Write a file to the sandbox filesystem.
|
|
49
|
+
*/
|
|
50
|
+
writeFile?(path: string, content: string | Uint8Array): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Read a file from the sandbox filesystem.
|
|
53
|
+
*/
|
|
54
|
+
readFile?(path: string): Promise<string | Uint8Array>;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Options for sandbox execution.
|
|
58
|
+
*/
|
|
59
|
+
export interface SandboxExecOptions {
|
|
60
|
+
/**
|
|
61
|
+
* Working directory for command execution.
|
|
62
|
+
*/
|
|
63
|
+
cwd?: string;
|
|
64
|
+
/**
|
|
65
|
+
* Environment variables.
|
|
66
|
+
*/
|
|
67
|
+
env?: Record<string, string>;
|
|
68
|
+
/**
|
|
69
|
+
* Timeout in milliseconds.
|
|
70
|
+
*/
|
|
71
|
+
timeout?: number;
|
|
72
|
+
/**
|
|
73
|
+
* Input to provide to stdin.
|
|
74
|
+
*/
|
|
75
|
+
stdin?: string;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Result from sandbox command execution.
|
|
79
|
+
*/
|
|
80
|
+
export interface SandboxExecResult {
|
|
81
|
+
/**
|
|
82
|
+
* Standard output from the command.
|
|
83
|
+
*/
|
|
84
|
+
stdout: string;
|
|
85
|
+
/**
|
|
86
|
+
* Standard error from the command.
|
|
87
|
+
*/
|
|
88
|
+
stderr: string;
|
|
89
|
+
/**
|
|
90
|
+
* Exit code of the command.
|
|
91
|
+
*/
|
|
92
|
+
exitCode: number;
|
|
93
|
+
/**
|
|
94
|
+
* Whether the command succeeded (exitCode === 0).
|
|
95
|
+
*/
|
|
96
|
+
success: boolean;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Result from streaming command execution.
|
|
100
|
+
*/
|
|
101
|
+
export interface SandboxStreamResult {
|
|
102
|
+
/**
|
|
103
|
+
* Readable stream of output.
|
|
104
|
+
*/
|
|
105
|
+
stream: ReadableStream<SandboxStreamChunk>;
|
|
106
|
+
/**
|
|
107
|
+
* Promise that resolves when command completes.
|
|
108
|
+
*/
|
|
109
|
+
done: Promise<SandboxExecResult>;
|
|
110
|
+
/**
|
|
111
|
+
* Abort the streaming execution.
|
|
112
|
+
*/
|
|
113
|
+
abort(): void;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Chunk from streaming output.
|
|
117
|
+
*/
|
|
118
|
+
export interface SandboxStreamChunk {
|
|
119
|
+
/**
|
|
120
|
+
* Type of output: 'stdout', 'stderr', or 'exit'.
|
|
121
|
+
*/
|
|
122
|
+
type: 'stdout' | 'stderr' | 'exit';
|
|
123
|
+
/**
|
|
124
|
+
* Data content for stdout/stderr, exit code for exit.
|
|
125
|
+
*/
|
|
126
|
+
data: string | number;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Handle for managing a background process.
|
|
130
|
+
*/
|
|
131
|
+
export interface SandboxProcessHandle {
|
|
132
|
+
/**
|
|
133
|
+
* Process ID.
|
|
134
|
+
*/
|
|
135
|
+
pid: number;
|
|
136
|
+
/**
|
|
137
|
+
* Send signal to the process.
|
|
138
|
+
*/
|
|
139
|
+
kill(signal?: 'SIGTERM' | 'SIGKILL' | 'SIGINT'): Promise<void>;
|
|
140
|
+
/**
|
|
141
|
+
* Write to process stdin.
|
|
142
|
+
*/
|
|
143
|
+
write(data: string): Promise<void>;
|
|
144
|
+
/**
|
|
145
|
+
* Close stdin.
|
|
146
|
+
*/
|
|
147
|
+
closeStdin(): Promise<void>;
|
|
148
|
+
/**
|
|
149
|
+
* Promise that resolves when process exits.
|
|
150
|
+
*/
|
|
151
|
+
exited: Promise<SandboxExecResult>;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Cloudflare Container binding interface.
|
|
155
|
+
* For use with native Cloudflare Containers (when exec becomes available).
|
|
156
|
+
*/
|
|
157
|
+
export interface CloudflareContainer {
|
|
158
|
+
/**
|
|
159
|
+
* Fetch method for HTTP requests to the container.
|
|
160
|
+
*/
|
|
161
|
+
fetch(request: Request): Promise<Response>;
|
|
162
|
+
/**
|
|
163
|
+
* Get a container instance.
|
|
164
|
+
*/
|
|
165
|
+
get(id: DurableObjectId): CloudflareContainerInstance;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Container instance interface.
|
|
169
|
+
*/
|
|
170
|
+
export interface CloudflareContainerInstance {
|
|
171
|
+
/**
|
|
172
|
+
* Fetch method for HTTP requests.
|
|
173
|
+
*/
|
|
174
|
+
fetch(request: Request): Promise<Response>;
|
|
175
|
+
/**
|
|
176
|
+
* Start the container.
|
|
177
|
+
*/
|
|
178
|
+
start?(options?: ContainerStartOptions): Promise<void>;
|
|
179
|
+
/**
|
|
180
|
+
* Stop the container.
|
|
181
|
+
*/
|
|
182
|
+
stop?(): Promise<void>;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Options for starting a container.
|
|
186
|
+
*/
|
|
187
|
+
export interface ContainerStartOptions {
|
|
188
|
+
/**
|
|
189
|
+
* Override the entrypoint command.
|
|
190
|
+
*/
|
|
191
|
+
entrypoint?: string[];
|
|
192
|
+
/**
|
|
193
|
+
* Environment variables.
|
|
194
|
+
*/
|
|
195
|
+
env?: Record<string, string>;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* DurableObjectId type (simplified).
|
|
199
|
+
*/
|
|
200
|
+
export interface DurableObjectId {
|
|
201
|
+
toString(): string;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Configuration options for CloudflareContainerExecutor.
|
|
205
|
+
*/
|
|
206
|
+
export interface ContainerExecutorOptions {
|
|
207
|
+
/**
|
|
208
|
+
* Cloudflare Sandbox binding.
|
|
209
|
+
* Use this for Sandbox SDK-based execution.
|
|
210
|
+
*/
|
|
211
|
+
sandbox?: CloudflareSandbox;
|
|
212
|
+
/**
|
|
213
|
+
* Cloudflare Container binding.
|
|
214
|
+
* Use this for native container-based execution.
|
|
215
|
+
*/
|
|
216
|
+
container?: CloudflareContainer | CloudflareContainerInstance;
|
|
217
|
+
/**
|
|
218
|
+
* Session ID for isolation.
|
|
219
|
+
* Each session gets its own sandbox/container instance.
|
|
220
|
+
*/
|
|
221
|
+
sessionId?: string;
|
|
222
|
+
/**
|
|
223
|
+
* Default working directory.
|
|
224
|
+
* @default '/'
|
|
225
|
+
*/
|
|
226
|
+
cwd?: string;
|
|
227
|
+
/**
|
|
228
|
+
* Default timeout in milliseconds.
|
|
229
|
+
* @default 30000
|
|
230
|
+
*/
|
|
231
|
+
timeout?: number;
|
|
232
|
+
/**
|
|
233
|
+
* Default environment variables.
|
|
234
|
+
*/
|
|
235
|
+
env?: Record<string, string>;
|
|
236
|
+
/**
|
|
237
|
+
* WebSocket endpoint for streaming execution.
|
|
238
|
+
* Used when connecting to a container with WebSocket support.
|
|
239
|
+
*/
|
|
240
|
+
wsEndpoint?: string;
|
|
241
|
+
/**
|
|
242
|
+
* HTTP exec endpoint for command execution.
|
|
243
|
+
* Used when connecting to a container with HTTP exec API.
|
|
244
|
+
*/
|
|
245
|
+
httpExecEndpoint?: string;
|
|
246
|
+
/**
|
|
247
|
+
* Custom fetch function for HTTP requests.
|
|
248
|
+
* Useful for testing or custom transport layers.
|
|
249
|
+
*/
|
|
250
|
+
fetch?: typeof fetch;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Internal session state.
|
|
254
|
+
*/
|
|
255
|
+
interface SessionState {
|
|
256
|
+
/**
|
|
257
|
+
* Session ID.
|
|
258
|
+
*/
|
|
259
|
+
id: string;
|
|
260
|
+
/**
|
|
261
|
+
* Working directory.
|
|
262
|
+
*/
|
|
263
|
+
cwd: string;
|
|
264
|
+
/**
|
|
265
|
+
* Environment variables.
|
|
266
|
+
*/
|
|
267
|
+
env: Record<string, string>;
|
|
268
|
+
/**
|
|
269
|
+
* Active processes.
|
|
270
|
+
*/
|
|
271
|
+
processes: Map<number, SandboxProcessHandle>;
|
|
272
|
+
/**
|
|
273
|
+
* Last activity timestamp.
|
|
274
|
+
*/
|
|
275
|
+
lastActivity: number;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* CloudflareContainerExecutor - Execute bash commands in Cloudflare Containers.
|
|
279
|
+
*
|
|
280
|
+
* This executor implements the BashExecutor interface and supports multiple
|
|
281
|
+
* execution backends:
|
|
282
|
+
*
|
|
283
|
+
* 1. **Sandbox SDK**: Uses `exec()` and `execStream()` from @cloudflare/sandbox
|
|
284
|
+
* 2. **HTTP Exec**: Sends commands to an HTTP endpoint in the container
|
|
285
|
+
* 3. **WebSocket Streaming**: Connects to container via WebSocket for streaming
|
|
286
|
+
*
|
|
287
|
+
* @example
|
|
288
|
+
* ```typescript
|
|
289
|
+
* // Using Sandbox SDK
|
|
290
|
+
* const executor = new CloudflareContainerExecutor({
|
|
291
|
+
* sandbox: env.Sandbox,
|
|
292
|
+
* sessionId: 'session-123',
|
|
293
|
+
* })
|
|
294
|
+
*
|
|
295
|
+
* // Execute a command
|
|
296
|
+
* const result = await executor.execute('npm install')
|
|
297
|
+
*
|
|
298
|
+
* // Spawn for streaming
|
|
299
|
+
* const handle = await executor.spawn('npm', ['run', 'dev'], {
|
|
300
|
+
* onStdout: (chunk) => console.log(chunk),
|
|
301
|
+
* onStderr: (chunk) => console.error(chunk),
|
|
302
|
+
* })
|
|
303
|
+
* ```
|
|
304
|
+
*
|
|
305
|
+
* @example
|
|
306
|
+
* ```typescript
|
|
307
|
+
* // Using HTTP exec endpoint
|
|
308
|
+
* const executor = new CloudflareContainerExecutor({
|
|
309
|
+
* httpExecEndpoint: 'https://container.example.com/exec',
|
|
310
|
+
* sessionId: 'session-456',
|
|
311
|
+
* })
|
|
312
|
+
*
|
|
313
|
+
* const result = await executor.execute('ls -la')
|
|
314
|
+
* ```
|
|
315
|
+
*/
|
|
316
|
+
export declare class CloudflareContainerExecutor implements BashExecutor {
|
|
317
|
+
private readonly sandbox?;
|
|
318
|
+
private readonly container?;
|
|
319
|
+
private readonly sessionId;
|
|
320
|
+
private readonly defaultCwd;
|
|
321
|
+
private readonly defaultTimeout;
|
|
322
|
+
private readonly defaultEnv;
|
|
323
|
+
private readonly wsEndpoint?;
|
|
324
|
+
private readonly httpExecEndpoint?;
|
|
325
|
+
private readonly fetchFn;
|
|
326
|
+
/**
|
|
327
|
+
* Session state for isolation.
|
|
328
|
+
*/
|
|
329
|
+
private session;
|
|
330
|
+
/**
|
|
331
|
+
* Process ID counter for spawn handles.
|
|
332
|
+
*/
|
|
333
|
+
private pidCounter;
|
|
334
|
+
/**
|
|
335
|
+
* Create a new CloudflareContainerExecutor.
|
|
336
|
+
*
|
|
337
|
+
* @param options - Configuration options
|
|
338
|
+
*/
|
|
339
|
+
constructor(options?: ContainerExecutorOptions);
|
|
340
|
+
/**
|
|
341
|
+
* Execute a command and return the result.
|
|
342
|
+
*
|
|
343
|
+
* @param command - The command to execute
|
|
344
|
+
* @param options - Execution options
|
|
345
|
+
* @returns Promise resolving to the execution result
|
|
346
|
+
*/
|
|
347
|
+
execute(command: string, options?: ExecOptions): Promise<BashResult>;
|
|
348
|
+
/**
|
|
349
|
+
* Spawn a command for streaming execution.
|
|
350
|
+
*
|
|
351
|
+
* @param command - The command to spawn
|
|
352
|
+
* @param args - Command arguments
|
|
353
|
+
* @param options - Spawn options
|
|
354
|
+
* @returns Promise resolving to a spawn handle
|
|
355
|
+
*/
|
|
356
|
+
spawn(command: string, args?: string[], options?: SpawnOptions): Promise<SpawnHandle>;
|
|
357
|
+
/**
|
|
358
|
+
* Execute a command using the Sandbox SDK.
|
|
359
|
+
*/
|
|
360
|
+
private executeViaSandbox;
|
|
361
|
+
/**
|
|
362
|
+
* Spawn a command using Sandbox SDK streaming.
|
|
363
|
+
*/
|
|
364
|
+
private spawnViaSandbox;
|
|
365
|
+
/**
|
|
366
|
+
* Spawn a command using Sandbox SDK startProcess.
|
|
367
|
+
*/
|
|
368
|
+
private spawnViaProcess;
|
|
369
|
+
/**
|
|
370
|
+
* Execute a command via HTTP exec endpoint.
|
|
371
|
+
*/
|
|
372
|
+
private executeViaHttp;
|
|
373
|
+
/**
|
|
374
|
+
* Execute a command via container fetch.
|
|
375
|
+
*/
|
|
376
|
+
private executeViaContainer;
|
|
377
|
+
/**
|
|
378
|
+
* Spawn a command via WebSocket connection.
|
|
379
|
+
*/
|
|
380
|
+
private spawnViaWebSocket;
|
|
381
|
+
/**
|
|
382
|
+
* Spawn a command by executing and simulating streaming output.
|
|
383
|
+
*/
|
|
384
|
+
private spawnViaExec;
|
|
385
|
+
/**
|
|
386
|
+
* Get the current session ID.
|
|
387
|
+
*
|
|
388
|
+
* @returns The session ID
|
|
389
|
+
*/
|
|
390
|
+
getSessionId(): string;
|
|
391
|
+
/**
|
|
392
|
+
* Get the current session state.
|
|
393
|
+
*
|
|
394
|
+
* @returns Copy of the session state
|
|
395
|
+
*/
|
|
396
|
+
getSessionState(): Omit<SessionState, 'processes'> & {
|
|
397
|
+
processCount: number;
|
|
398
|
+
};
|
|
399
|
+
/**
|
|
400
|
+
* Update the session working directory.
|
|
401
|
+
*
|
|
402
|
+
* @param cwd - New working directory
|
|
403
|
+
*/
|
|
404
|
+
setCwd(cwd: string): void;
|
|
405
|
+
/**
|
|
406
|
+
* Update session environment variables.
|
|
407
|
+
*
|
|
408
|
+
* @param env - Environment variables to set
|
|
409
|
+
*/
|
|
410
|
+
setEnv(env: Record<string, string>): void;
|
|
411
|
+
/**
|
|
412
|
+
* Unset session environment variables.
|
|
413
|
+
*
|
|
414
|
+
* @param keys - Environment variable keys to unset
|
|
415
|
+
*/
|
|
416
|
+
unsetEnv(keys: string[]): void;
|
|
417
|
+
/**
|
|
418
|
+
* Get the number of active processes.
|
|
419
|
+
*
|
|
420
|
+
* @returns Number of active processes
|
|
421
|
+
*/
|
|
422
|
+
getActiveProcessCount(): number;
|
|
423
|
+
/**
|
|
424
|
+
* Kill all active processes.
|
|
425
|
+
*
|
|
426
|
+
* @param signal - Signal to send (default: SIGTERM)
|
|
427
|
+
*/
|
|
428
|
+
killAll(signal?: 'SIGTERM' | 'SIGKILL' | 'SIGINT'): Promise<void>;
|
|
429
|
+
/**
|
|
430
|
+
* Write a file to the container filesystem.
|
|
431
|
+
*
|
|
432
|
+
* @param path - File path
|
|
433
|
+
* @param content - File content
|
|
434
|
+
*/
|
|
435
|
+
writeFile(path: string, content: string | Uint8Array): Promise<void>;
|
|
436
|
+
/**
|
|
437
|
+
* Read a file from the container filesystem.
|
|
438
|
+
*
|
|
439
|
+
* @param path - File path
|
|
440
|
+
* @returns File content
|
|
441
|
+
*/
|
|
442
|
+
readFile(path: string): Promise<string | Uint8Array>;
|
|
443
|
+
}
|
|
444
|
+
/**
|
|
445
|
+
* Create a CloudflareContainerExecutor instance.
|
|
446
|
+
*
|
|
447
|
+
* @param options - Configuration options
|
|
448
|
+
* @returns A new CloudflareContainerExecutor instance
|
|
449
|
+
*
|
|
450
|
+
* @example
|
|
451
|
+
* ```typescript
|
|
452
|
+
* const executor = createContainerExecutor({
|
|
453
|
+
* sandbox: env.Sandbox,
|
|
454
|
+
* sessionId: 'user-123',
|
|
455
|
+
* })
|
|
456
|
+
* ```
|
|
457
|
+
*/
|
|
458
|
+
export declare function createContainerExecutor(options?: ContainerExecutorOptions): CloudflareContainerExecutor;
|
|
459
|
+
/**
|
|
460
|
+
* Create an executor from a Sandbox binding.
|
|
461
|
+
*
|
|
462
|
+
* @param sandbox - Cloudflare Sandbox binding
|
|
463
|
+
* @param sessionId - Optional session ID for isolation
|
|
464
|
+
* @returns A new CloudflareContainerExecutor instance
|
|
465
|
+
*/
|
|
466
|
+
export declare function createSandboxExecutor(sandbox: CloudflareSandbox, sessionId?: string): CloudflareContainerExecutor;
|
|
467
|
+
/**
|
|
468
|
+
* Create an executor from an HTTP exec endpoint.
|
|
469
|
+
*
|
|
470
|
+
* @param endpoint - HTTP exec endpoint URL
|
|
471
|
+
* @param sessionId - Optional session ID for isolation
|
|
472
|
+
* @returns A new CloudflareContainerExecutor instance
|
|
473
|
+
*/
|
|
474
|
+
export declare function createHttpExecutor(endpoint: string, sessionId?: string): CloudflareContainerExecutor;
|
|
475
|
+
/**
|
|
476
|
+
* Create an executor from a WebSocket endpoint.
|
|
477
|
+
*
|
|
478
|
+
* @param endpoint - WebSocket endpoint URL
|
|
479
|
+
* @param sessionId - Optional session ID for isolation
|
|
480
|
+
* @returns A new CloudflareContainerExecutor instance
|
|
481
|
+
*/
|
|
482
|
+
export declare function createWebSocketExecutor(endpoint: string, sessionId?: string): CloudflareContainerExecutor;
|
|
483
|
+
/**
|
|
484
|
+
* Check if a value is a CloudflareContainerExecutor instance.
|
|
485
|
+
*
|
|
486
|
+
* @param value - Value to check
|
|
487
|
+
* @returns True if value is a CloudflareContainerExecutor
|
|
488
|
+
*/
|
|
489
|
+
export declare function isContainerExecutor(value: unknown): value is CloudflareContainerExecutor;
|
|
490
|
+
export {};
|
|
491
|
+
//# sourceMappingURL=container-executor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-executor.d.ts","sourceRoot":"","sources":["../../src/do/container-executor.ts"],"names":[],"mappings":"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"}
|