@dbx-tools/cli 0.9.60 → 0.9.64
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 +175 -81
- package/bin/dbx-genie.ts +10 -0
- package/index.ts +13 -1
- package/lib/bin/dbx-genie.d.ts +2 -0
- package/lib/bin/dbx-genie.js +10 -0
- package/lib/index.d.ts +13 -1
- package/lib/index.js +10 -2
- package/lib/src/auth/cli.js +13 -2
- package/lib/src/auth/options.d.ts +4 -0
- package/lib/src/auth/options.js +5 -1
- package/lib/src/cli.js +19 -4
- package/lib/src/genie-code/cli.d.ts +19 -0
- package/lib/src/genie-code/cli.js +36 -0
- package/lib/src/genie-code/config.d.ts +38 -0
- package/lib/src/genie-code/config.js +108 -0
- package/lib/src/genie-code/install.d.ts +21 -0
- package/lib/src/genie-code/install.js +69 -0
- package/lib/src/genie-code/options.d.ts +7 -0
- package/lib/src/genie-code/options.js +7 -0
- package/lib/src/genie-code/runner.d.ts +21 -0
- package/lib/src/genie-code/runner.js +90 -0
- package/lib/src/genie-code/runtime.d.ts +49 -0
- package/lib/src/genie-code/runtime.js +169 -0
- package/lib/src/graphiti/cli.js +2 -2
- package/lib/src/lakebase-proxy/cli.js +2 -2
- package/lib/src/model-gateway/cli.js +3 -3
- package/lib/src/model-gateway/server.d.ts +3 -0
- package/lib/src/model-gateway/server.js +39 -6
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +40 -18
- package/src/auth/cli.ts +11 -1
- package/src/auth/options.ts +4 -0
- package/src/cli.ts +17 -6
- package/src/genie-code/cli.ts +58 -0
- package/src/genie-code/config.ts +157 -0
- package/src/genie-code/install.ts +103 -0
- package/src/genie-code/options.ts +14 -0
- package/src/genie-code/runner.ts +106 -0
- package/src/genie-code/runtime.ts +231 -0
- package/src/graphiti/cli.ts +1 -1
- package/src/lakebase-proxy/cli.ts +1 -1
- package/src/model-gateway/cli.ts +6 -2
- package/src/model-gateway/server.ts +40 -5
package/lib/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Regenerated from the exporting modules in ./src.
|
|
3
3
|
// Hand edits are overwritten on the next watch; this file is read-only.
|
|
4
4
|
export const PACKAGE_IDENTIFIER = "@dbx-tools/cli";
|
|
5
|
-
export const PACKAGE_VERSION = "0.9.
|
|
5
|
+
export const PACKAGE_VERSION = "0.9.64";
|
|
6
6
|
export * as appkitCli from "./src/appkit/cli.js";
|
|
7
7
|
export * as appkitEnvExport from "./src/appkit/env-export.js";
|
|
8
8
|
export * as authCli from "./src/auth/cli.js";
|
|
@@ -10,6 +10,12 @@ export * as authOptions from "./src/auth/options.js";
|
|
|
10
10
|
export * as bootstrap from "./src/bootstrap.js";
|
|
11
11
|
export * as bun from "./src/bun.js";
|
|
12
12
|
export * as cli from "./src/cli.js";
|
|
13
|
+
export * as genieCodeCli from "./src/genie-code/cli.js";
|
|
14
|
+
export * as genieCodeConfig from "./src/genie-code/config.js";
|
|
15
|
+
export * as genieCodeInstall from "./src/genie-code/install.js";
|
|
16
|
+
export * as genieCodeOptions from "./src/genie-code/options.js";
|
|
17
|
+
export * as genieCodeRunner from "./src/genie-code/runner.js";
|
|
18
|
+
export * as genieCodeRuntime from "./src/genie-code/runtime.js";
|
|
13
19
|
export * as graphitiCli from "./src/graphiti/cli.js";
|
|
14
20
|
export * as graphitiOptions from "./src/graphiti/options.js";
|
|
15
21
|
export * as lakebaseProxyCancellation from "./src/lakebase-proxy/cancellation.js";
|
|
@@ -27,10 +33,12 @@ export * as tunnelProxy from "./src/tunnel/proxy.js";
|
|
|
27
33
|
export { EnvExportFormatSchema, EnvCommandOptionsSchema } from "./src/appkit/env-export.js";
|
|
28
34
|
export { AuthCliOptionsSchema, TokenCommandOptionsSchema } from "./src/auth/options.js";
|
|
29
35
|
export { resolveBunArgv } from "./src/bun.js";
|
|
36
|
+
export { GENIE_CODE_GATEWAY_PROVIDER } from "./src/genie-code/config.js";
|
|
37
|
+
export { RUNNER_OPTIONS_ENV } from "./src/genie-code/runner.js";
|
|
30
38
|
export { CancellationRegistry } from "./src/lakebase-proxy/cancellation.js";
|
|
31
39
|
export { LakebaseProxyOptionsSchema, LakebaseProxyUrlOptionsSchema } from "./src/lakebase-proxy/options.js";
|
|
32
40
|
export { SSL_REQUEST, CANCEL_REQUEST, PROTOCOL_3, PostgresProtocolError } from "./src/lakebase-proxy/protocol.js";
|
|
33
41
|
export { LakebaseProxy } from "./src/lakebase-proxy/proxy.js";
|
|
34
42
|
export { workspaceRoot } from "./src/root.js";
|
|
35
43
|
export { TunnelOptionsSchema } from "./src/tunnel/options.js";
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUNuRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsUUFBUSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssT0FBTyxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEtBQUssWUFBWSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sS0FBSyxlQUFlLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxLQUFLLGdCQUFnQixNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssZUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxlQUFlLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxLQUFLLHlCQUF5QixNQUFNLHNDQUFzQyxDQUFDO0FBQ2xGLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssb0JBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxLQUFLLHFCQUFxQixNQUFNLGtDQUFrQyxDQUFDO0FBQzFFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssZUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sS0FBSyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssSUFBSSxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEtBQUssU0FBUyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGFBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEtBQUssV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFOUMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHNUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLDZCQUE2QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHRU5FUkFURUQgYnkgcHJvamVuIHdhdGNoIC0gRE8gTk9UIEVESVQuXG4vLyBSZWdlbmVyYXRlZCBmcm9tIHRoZSBleHBvcnRpbmcgbW9kdWxlcyBpbiAuL3NyYy5cbi8vIEhhbmQgZWRpdHMgYXJlIG92ZXJ3cml0dGVuIG9uIHRoZSBuZXh0IHdhdGNoOyB0aGlzIGZpbGUgaXMgcmVhZC1vbmx5LlxuXG5leHBvcnQgY29uc3QgUEFDS0FHRV9JREVOVElGSUVSID0gXCJAZGJ4LXRvb2xzL2NsaVwiO1xuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfVkVSU0lPTiA9IFwiMC45LjY0XCI7XG5leHBvcnQgKiBhcyBhcHBraXRDbGkgZnJvbSBcIi4vc3JjL2FwcGtpdC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGFwcGtpdEVudkV4cG9ydCBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCAqIGFzIGF1dGhDbGkgZnJvbSBcIi4vc3JjL2F1dGgvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBhdXRoT3B0aW9ucyBmcm9tIFwiLi9zcmMvYXV0aC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBib290c3RyYXAgZnJvbSBcIi4vc3JjL2Jvb3RzdHJhcC50c1wiO1xuZXhwb3J0ICogYXMgYnVuIGZyb20gXCIuL3NyYy9idW4udHNcIjtcbmV4cG9ydCAqIGFzIGNsaSBmcm9tIFwiLi9zcmMvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVDbGkgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVDb25maWcgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY29uZmlnLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVJbnN0YWxsIGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2luc3RhbGwudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZU9wdGlvbnMgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgZ2VuaWVDb2RlUnVubmVyIGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bm5lci50c1wiO1xuZXhwb3J0ICogYXMgZ2VuaWVDb2RlUnVudGltZSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9ydW50aW1lLnRzXCI7XG5leHBvcnQgKiBhcyBncmFwaGl0aUNsaSBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBncmFwaGl0aU9wdGlvbnMgZnJvbSBcIi4vc3JjL2dyYXBoaXRpL29wdGlvbnMudHNcIjtcbmV4cG9ydCAqIGFzIGxha2ViYXNlUHJveHlDYW5jZWxsYXRpb24gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L2NhbmNlbGxhdGlvbi50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eUNsaSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5T3B0aW9ucyBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eVByb3RvY29sIGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm90b2NvbC50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eVByb3h5IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm94eS50c1wiO1xuZXhwb3J0ICogYXMgbW9kZWxHYXRld2F5Q2xpIGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L2NsaS50c1wiO1xuZXhwb3J0ICogYXMgbW9kZWxHYXRld2F5U2VydmVyIGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L3NlcnZlci50c1wiO1xuZXhwb3J0ICogYXMgcm9vdCBmcm9tIFwiLi9zcmMvcm9vdC50c1wiO1xuZXhwb3J0ICogYXMgdHVubmVsQXBwIGZyb20gXCIuL3NyYy90dW5uZWwvYXBwLnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxDbGkgZnJvbSBcIi4vc3JjL3R1bm5lbC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIHR1bm5lbE9wdGlvbnMgZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxQcm94eSBmcm9tIFwiLi9zcmMvdHVubmVsL3Byb3h5LnRzXCI7XG5leHBvcnQgeyBFbnZFeHBvcnRGb3JtYXRTY2hlbWEsIEVudkNvbW1hbmRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2FwcGtpdC9lbnYtZXhwb3J0LnRzXCI7XG5leHBvcnQgdHlwZSB7IEVudkV4cG9ydEZvcm1hdCwgRW52Q29tbWFuZE9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCB7IEF1dGhDbGlPcHRpb25zU2NoZW1hLCBUb2tlbkNvbW1hbmRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2F1dGgvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBBdXRoQ2xpT3B0aW9ucywgVG9rZW5Db21tYW5kT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9hdXRoL29wdGlvbnMudHNcIjtcbmV4cG9ydCB7IHJlc29sdmVCdW5Bcmd2IH0gZnJvbSBcIi4vc3JjL2J1bi50c1wiO1xuZXhwb3J0IHR5cGUgeyBHZW5pZUNvZGVDbGlEZXBlbmRlbmNpZXMgfSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jbGkudHNcIjtcbmV4cG9ydCB7IEdFTklFX0NPREVfR0FURVdBWV9QUk9WSURFUiB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2NvbmZpZy50c1wiO1xuZXhwb3J0IHR5cGUgeyBXcml0ZUdlbmllQ29kZUNvbmZpZ09wdGlvbnMsIEdlbmllQ29kZVByb2ZpbGVIb21lLCBHZW5pZUNvZGVIb21lIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY29uZmlnLnRzXCI7XG5leHBvcnQgdHlwZSB7IEluc3RhbGxHZW5pZUNvZGVPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvaW5zdGFsbC50c1wiO1xuZXhwb3J0IHsgUlVOTkVSX09QVElPTlNfRU5WIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvcnVubmVyLnRzXCI7XG5leHBvcnQgdHlwZSB7IEdlbmllQ29kZVJ1bnRpbWVEZXBlbmRlbmNpZXMsIFJ1bkdlbmllQ29kZU9wdGlvbnMsIFByZXBhcmVkR2VuaWVDb2RlUnVudGltZSB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bnRpbWUudHNcIjtcbmV4cG9ydCB0eXBlIHsgR3JhcGhpdGlDbGlEZXBlbmRlbmNpZXMsIEdyYXBoaXRpU2VydmljZU9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvY2xpLnRzXCI7XG5leHBvcnQgeyBDYW5jZWxsYXRpb25SZWdpc3RyeSB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jYW5jZWxsYXRpb24udHNcIjtcbmV4cG9ydCB0eXBlIHsgQ2FuY2VsbGF0aW9uVGFyZ2V0LCBDYW5jZWxsYXRpb25Gb3J3YXJkZXIgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2FuY2VsbGF0aW9uLnRzXCI7XG5leHBvcnQgdHlwZSB7IExha2ViYXNlUHJveHlDbGlEZXBlbmRlbmNpZXMgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2xpLnRzXCI7XG5leHBvcnQgeyBMYWtlYmFzZVByb3h5T3B0aW9uc1NjaGVtYSwgTGFrZWJhc2VQcm94eVVybE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBMYWtlYmFzZVByb3h5T3B0aW9ucywgUmVzb2x2ZWRMYWtlYmFzZVByb3h5T3B0aW9ucywgTGFrZWJhc2VQcm94eVVybE9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHsgU1NMX1JFUVVFU1QsIENBTkNFTF9SRVFVRVNULCBQUk9UT0NPTF8zLCBQb3N0Z3Jlc1Byb3RvY29sRXJyb3IgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJvdG9jb2wudHNcIjtcbmV4cG9ydCB0eXBlIHsgU3RhcnR1cE1lc3NhZ2UsIENhbmNlbE1lc3NhZ2UsIEluaXRpYWxNZXNzYWdlIH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3RvY29sLnRzXCI7XG5leHBvcnQgeyBMYWtlYmFzZVByb3h5IH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3h5LnRzXCI7XG5leHBvcnQgdHlwZSB7IE1vZGVsR2F0ZXdheUNsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L2NsaS50c1wiO1xuZXhwb3J0IHsgd29ya3NwYWNlUm9vdCB9IGZyb20gXCIuL3NyYy9yb290LnRzXCI7XG5leHBvcnQgeyBUdW5uZWxPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IFR1bm5lbE9wdGlvbnMsIFJlc29sdmVkVHVubmVsT3B0aW9ucyB9IGZyb20gXCIuL3NyYy90dW5uZWwvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBQcm94eU9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvdHVubmVsL3Byb3h5LnRzXCI7XG4iXX0=
|
package/lib/src/auth/cli.js
CHANGED
|
@@ -81,7 +81,18 @@ export function buildProgram(name = "dbx auth", overrides = {}) {
|
|
|
81
81
|
...(tokenOptions.login ? {} : { login: false }),
|
|
82
82
|
...(tokenOptions.forceRefresh ? { refresh: true } : {}),
|
|
83
83
|
});
|
|
84
|
-
|
|
84
|
+
if (tokenOptions.format === "text")
|
|
85
|
+
dependencies.writeText(token.accessToken);
|
|
86
|
+
else
|
|
87
|
+
dependencies.writeJson(tokenJson(token));
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
program
|
|
91
|
+
.command("headers")
|
|
92
|
+
.description("Return current Databricks authentication headers")
|
|
93
|
+
.action(async () => {
|
|
94
|
+
await withAuth(options(), dependencies, async ({ auth }) => {
|
|
95
|
+
dependencies.writeJson(await auth.headers());
|
|
85
96
|
});
|
|
86
97
|
});
|
|
87
98
|
program
|
|
@@ -115,4 +126,4 @@ export async function runCli(argv) {
|
|
|
115
126
|
await buildProgram().parseAsync(argv);
|
|
116
127
|
}
|
|
117
128
|
export { CommanderError };
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F1dGgvY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFFSCxPQUFPLEtBQUssVUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEQsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIseUJBQXlCLEdBRTFCLE1BQU0sY0FBYyxDQUFDO0FBYXRCLE1BQU0sb0JBQW9CLEdBQXdCO0lBQ2hELGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCO0lBQ3BELFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ25CLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBQ0QsU0FBUyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDbkIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDRixDQUFDO0FBRUYsK0NBQStDO0FBQy9DLEtBQUssVUFBVSxRQUFRLENBQ3JCLE9BQXVCLEVBQ3ZCLFlBQWlDO0lBRWpDLE9BQU87UUFDTCxJQUFJLEVBQUUsTUFBTSxZQUFZLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekUsS0FBSyxFQUFFLEtBQUssSUFBSSxFQUFFLEdBQUUsQ0FBQztLQUN0QixDQUFDO0FBQ0osQ0FBQztBQUVELHVFQUF1RTtBQUN2RSxLQUFLLFVBQVUs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LE9BQU8sQ0FBQyxRQUFRLENBQUM7U0FDakIsV0FBVyxDQUFDLHVEQUF1RCxDQUFDO1NBQ3BFLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNqQixNQUFNLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRTtZQUN6RCxNQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUwsT0FBTztTQUNKLE9BQU8sQ0FBQyxRQUFRLENBQUM7U0FDakIsV0FBVyxDQUFDLHVEQUF1RCxDQUFDO1NBQ3BFLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNqQixNQUFNLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRTtZQUN6RCxZQUFZLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFTCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQsd0RBQXdEO0FBQ3hELE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUFDLElBQWM7SUFDekMsTUFBTSxZQUFZLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDeEMsQ0FBQztBQUVELE9BQU8sRUFBRSxjQUFjLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogYGRieCBhdXRoYCBDb21tYW5kZXIgcHJvZ3JhbSBmb3IgRGF0YWJyaWNrcyBPQXV0aC5cbiAqXG4gKiBUaGUgY29tbWFuZCBkZWxlZ2F0ZXMgcHJvZmlsZSByZXNvbHV0aW9uIGFuZCB0b2tlbiBsaWZlY3ljbGUgdG9cbiAqIGBAZGJ4LXRvb2xzL2F1dGhgLlxuICpcbiAqIEBtb2R1bGVcbiAqL1xuXG5pbXBvcnQgKiBhcyBkYXRhYnJpY2tzIGZyb20gXCJAZGJ4LXRvb2xzL2F1dGhcIjtcbmltcG9ydCB7IGFkZEFyZ3MsIHBhcnNlQXJncyB9IGZyb20gXCJAZGJ4LXRvb2xzL2NsaS1hcmdzXCI7XG5pbXBvcnQgdHlwZSB7IERhdGFicmlja3NBdXRoQ2xpZW50SW5mbyB9IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1hdXRoL2NsaWVudFwiO1xuaW1wb3J0IHsgQ29tbWFuZCwgQ29tbWFuZGVyRXJyb3IgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5cbmltcG9ydCB7XG4gIEF1dGhDbGlPcHRpb25zU2NoZW1hLFxuICBkYXRhYnJpY2tzQXV0aE9wdGlvbnMsXG4gIFRva2VuQ29tbWFuZE9wdGlvbnNTY2hlbWEsXG4gIHR5cGUgQXV0aENsaU9wdGlvbnMsXG59IGZyb20gXCIuL29wdGlvbnMudHNcIjtcblxuaW50ZXJmYWNlIEF1dGhDb250ZXh0IHtcbiAgYXV0aDogZGF0YWJyaWNrcy5BdXRoQ2xpZW50O1xuICBjbG9zZSgpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG5pbnRlcmZhY2UgQXV0aENsaURlcGVuZGVuY2llcyB7XG4gIGNyZWF0ZUF1dGhDbGllbnQ6IHR5cGVvZiBkYXRhYnJpY2tzLmNsaWVudC5jcmVhdGVBdXRoQ2xpZW50O1xuICB3cml0ZUpzb24odmFsdWU6IHVua25vd24pOiB2b2lkO1xuICB3cml0ZVRleHQodmFsdWU6IHN0cmluZyk6IHZvaWQ7XG59XG5cbmNvbnN0IERFRkFVTFRfREVQRU5ERU5DSUVTOiBBdXRoQ2xpRGVwZW5kZW5jaWVzID0ge1xuICBjcmVhdGVBdXRoQ2xpZW50OiBkYXRhYnJpY2tzLmNsaWVudC5jcmVhdGVBdXRoQ2xpZW50LFxuICB3cml0ZUpzb246ICh2YWx1ZSkgPT4ge1xuICAgIHByb2Nlc3Muc3Rkb3V0LndyaXRlKGAke0pTT04uc3RyaW5naWZ5KHZhbHVlLCBudWxsLCAyKX1cXG5gKTtcbiAgfSxcbiAgd3JpdGVUZXh0OiAodmFsdWUpID0+IHtcbiAgICBwcm9jZXNzLnN0ZG91dC53cml0ZShgJHt2YWx1ZX1cXG5gKTtcbiAgfSxcbn07XG5cbi8qKiBPcGVuIHRoZSBzZWxlY3RlZCBhdXRoZW50aWNhdGlvbiBjbGllbnQuICovXG5hc3luYyBmdW5jdGlvbiBvcGVuQXV0aChcbiAgb3B0aW9uczogQXV0aENsaU9wdGlvbnMsXG4gIGRlcGVuZGVuY2llczogQXV0aENsaURlcGVuZGVuY2llcyxcbik6IFByb21pc2U8QXV0aENvbnRleHQ+IHtcbiAgcmV0dXJuIHtcbiAgICBhdXRoOiBhd2FpdCBkZXBlbmRlbmNpZXMuY3JlYXRlQXV0aENsaWVudChkYXRhYnJpY2tzQXV0aE9wdGlvbnMob3B0aW9ucykpLFxuICAgIGNsb3NlOiBhc3luYyAoKSA9PiB7fSxcbiAgfTtcbn1cblxuLyoqIEV4ZWN1dGUgYW4gYXV0aCBhY3Rpb24gYW5kIGNsb3NlIHJlc291cmNlcyBvd25lZCBieSB0aGUgY29tbWFuZC4gKi9cbmFzeW5jIGZ1bmN0aW9uIHdpdGhBdXRoKFxuICBvcHRpb25zOiBBdXRoQ2xpT3B0aW9ucyxcbiAgZGVwZW5kZW5jaWVzOiBBdXRoQ2xpRGVwZW5kZW5jaWVzLFxuICBhY3Rpb246IChjb250ZXh0OiBBdXRoQ29udGV4dCkgPT4gUHJvbWlzZTx2b2lkPixcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBjb250ZXh0ID0gYXdhaXQgb3BlbkF1dGgob3B0aW9ucywgZGVwZW5kZW5jaWVzKTtcbiAgdHJ5IHtcbiAgICBhd2FpdCBhY3Rpb24oY29udGV4dCk7XG4gIH0gZmluYWxseSB7XG4gICAgYXdhaXQgY29udGV4dC5jbG9zZSgpO1xuICB9XG59XG5cbi8qKiBTaGFwZSBhIGdlbmVyYXRlZCB0b2tlbiByZWNvcmQgZm9yIHN0YWJsZSBDTEkgSlNPTiBvdXRwdXQuICovXG5mdW5jdGlvbiB0b2tlbkpzb24odG9rZW46IGRhdGFicmlja3MuQWNjZXNzVG9rZW4pOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gIHJldHVybiB7XG4gICAgYWNjZXNzX3Rva2VuOiB0b2tlbi5hY2Nlc3NUb2tlbixcbiAgICB0b2tlbl90eXBlOiB0b2tlbi50b2tlblR5cGUsXG4gICAgLi4uKHRva2VuLmV4cGlyeSA/IHsgZXhwaXJ5OiB0b2tlbi5leHBpcnkgfSA6IHt9KSxcbiAgICAuLi4odG9rZW4uc2NvcGVzLmxlbmd0aCA/IHsgc2NvcGVzOiB0b2tlbi5zY29wZXMgfSA6IHt9KSxcbiAgfTtcbn1cblxuLyoqIFNlbGVjdCB0aGUgc2VyaWFsaXphYmxlIGlkZW50aXR5IGZpZWxkcyBmcm9tIGFuIGF1dGhlbnRpY2F0aW9uIGNsaWVudC4gKi9cbmZ1bmN0aW9uIGNsaWVudEluZm8oYXV0aDogZGF0YWJyaWNrcy5BdXRoQ2xpZW50KTogRGF0YWJyaWNrc0F1dGhDbGllbnRJbmZvIHtcbiAgcmV0dXJuIHtcbiAgICAuLi4oYXV0aC5wcm9maWxlID8geyBwcm9maWxlOiBhdXRoLnByb2ZpbGUgfSA6IHt9KSxcbiAgICBob3N0OiBhdXRoLmhvc3QsXG4gICAgLi4uKGF1dGguYWNjb3VudElkID8geyBhY2NvdW50SWQ6IGF1dGguYWNjb3VudElkIH0gOiB7fSksXG4gICAgLi4uKGF1dGgud29ya3NwYWNlSWQgPyB7IHdvcmtzcGFjZUlkOiBhdXRoLndvcmtzcGFjZUlkIH0gOiB7fSksXG4gICAgdGFyZ2V0OiBhdXRoLnRhcmdldCxcbiAgICBhdXRoVHlwZTogYXV0aC5hdXRoVHlwZSxcbiAgICBwcmluY2lwYWw6IGF1dGgucHJpbmNpcGFsLFxuICB9O1xufVxuXG4vKiogQnVpbGQgdGhlIGBkYnggYXV0aGAgQ29tbWFuZGVyIHByb2dyYW0gd2l0aG91dCBwYXJzaW5nIGFyZ3VtZW50cy4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFByb2dyYW0oXG4gIG5hbWUgPSBcImRieCBhdXRoXCIsXG4gIG92ZXJyaWRlczogUGFydGlhbDxBdXRoQ2xpRGVwZW5kZW5jaWVzPiA9IHt9LFxuKTogQ29tbWFuZCB7XG4gIGNvbnN0IGRlcGVuZGVuY2llcyA9IHsgLi4uREVGQVVMVF9ERVBFTkRFTkNJRVMsIC4uLm92ZXJyaWRlcyB9O1xuICBjb25zdCBwcm9ncmFtID0gYWRkQXJncyhcbiAgICBuZXcgQ29tbWFuZCgpXG4gICAgICAubmFtZShuYW1lKVxuICAgICAgLmRlc2NyaXB0aW9uKFwiQXV0aGVudGljYXRlIHRvIERhdGFicmlja3Mgd2l0aCB1c2VyIG9yIG1hY2hpbmUgT0F1dGhcIilcbiAgICAgIC5zaG93SGVscEFmdGVyRXJyb3IoKSxcbiAgICBBdXRoQ2xpT3B0aW9uc1NjaGVtYSxcbiAgKTtcbiAgY29uc3Qgb3B0aW9ucyA9ICgpOiBBdXRoQ2xpT3B0aW9ucyA9PiBwYXJzZUFyZ3MocHJvZ3JhbSwgQXV0aENsaU9wdGlvbnNTY2hlbWEpO1xuXG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChcImxvZ2luXCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiRm9yY2UgYnJvd3NlciBsb2dpbiBhbmQgcmV0dXJuIGFuIGFjY2VzcyB0b2tlblwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgd2l0aEF1dGgob3B0aW9ucygpLCBkZXBlbmRlbmNpZXMsIGFzeW5jICh7IGF1dGggfSkgPT4ge1xuICAgICAgICBkZXBlbmRlbmNpZXMud3JpdGVKc29uKHRva2VuSnNvbihhd2FpdCBhdXRoLnRva2VuKHsgbG9naW46IHRydWUgfSkpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gIGNvbnN0IHRva2VuQ29tbWFuZCA9IGFkZEFyZ3MoXG4gICAgcHJvZ3JhbS5jb21tYW5kKFwidG9rZW5cIikuZGVzY3JpcHRpb24oXCJSZXR1cm4gYSB2YWxpZCBhY2Nlc3MgdG9rZW4sIGxvZ2dpbmcgaW4gd2hlbiBuZWVkZWRcIiksXG4gICAgVG9rZW5Db21tYW5kT3B0aW9uc1NjaGVtYSxcbiAgKTtcbiAgdG9rZW5Db21tYW5kLmFjdGlvbihhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgdG9rZW5PcHRpb25zID0gcGFyc2VBcmdzKHRva2VuQ29tbWFuZCwgVG9rZW5Db21tYW5kT3B0aW9uc1NjaGVtYSk7XG4gICAgYXdhaXQgd2l0aEF1dGgob3B0aW9ucygpLCBkZXBlbmRlbmNpZXMsIGFzeW5jICh7IGF1dGggfSkgPT4ge1xuICAgICAgY29uc3QgdG9rZW4gPSBhd2FpdCBhdXRoLnRva2VuKHtcbiAgICAgICAgLi4uKHRva2VuT3B0aW9ucy5sb2dpbiA/IHt9IDogeyBsb2dpbjogZmFsc2UgfSksXG4gICAgICAgIC4uLih0b2tlbk9wdGlvbnMuZm9yY2VSZWZyZXNoID8geyByZWZyZXNoOiB0cnVlIH0gOiB7fSksXG4gICAgICB9KTtcbiAgICAgIGRlcGVuZGVuY2llcy53cml0ZUpzb24odG9rZW5Kc29uKHRva2VuKSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChcInByb2ZpbGVcIilcbiAgICAuZGVzY3JpcHRpb24oXCJQcmludCB0aGUgY29uZmlndXJlZCBvciBhdXRvbWF0aWNhbGx5IGRldGVjdGVkIHByb2ZpbGVcIilcbiAgICAuYWN0aW9uKGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IHdpdGhBdXRoKG9wdGlvbnMoKSwgZGVwZW5kZW5jaWVzLCBhc3luYyAoeyBhdXRoIH0pID0+IHtcbiAgICAgICAgZGVwZW5kZW5jaWVzLndyaXRlVGV4dChhdXRoLnByb2ZpbGUgPz8gXCJhbWJpZW50XCIpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgcHJvZ3JhbVxuICAgIC5jb21tYW5kKFwibG9nb3V0XCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiRGVsZXRlIHRoZSBzdG9yZWQgY3JlZGVudGlhbCBmb3IgdGhlIHNlbGVjdGVkIHByb2ZpbGVcIilcbiAgICAuYWN0aW9uKGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IHdpdGhBdXRoKG9wdGlvbnMoKSwgZGVwZW5kZW5jaWVzLCBhc3luYyAoeyBhdXRoIH0pID0+IHtcbiAgICAgICAgYXdhaXQgYXV0aC5sb2dvdXQoKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChcInN0YXR1c1wiKVxuICAgIC5kZXNjcmlwdGlvbihcIlNob3cgdGhlIHJlc29sdmVkIGF1dGhlbnRpY2F0aW9uIGNsaWVudCBjb25maWd1cmF0aW9uXCIpXG4gICAgLmFjdGlvbihhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCB3aXRoQXV0aChvcHRpb25zKCksIGRlcGVuZGVuY2llcywgYXN5bmMgKHsgYXV0aCB9KSA9PiB7XG4gICAgICAgIGRlcGVuZGVuY2llcy53cml0ZUpzb24oY2xpZW50SW5mbyhhdXRoKSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICByZXR1cm4gcHJvZ3JhbTtcbn1cblxuLyoqIFBhcnNlIGBhcmd2YCBhbmQgcnVuIHRoZSBzZWxlY3RlZCBhdXRoIG9wZXJhdGlvbi4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5DbGkoYXJndjogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYnVpbGRQcm9ncmFtKCkucGFyc2VBc3luYyhhcmd2KTtcbn1cblxuZXhwb3J0IHsgQ29tbWFuZGVyRXJyb3IgfTtcbiJdfQ==
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F1dGgvY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFFSCxPQUFPLEtBQUssVUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEQsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIseUJBQXlCLEdBRTFCLE1BQU0sY0FBYyxDQUFDO0FBYXRCLE1BQU0sb0JBQW9CLEdBQXdCO0lBQ2hELGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCO0lBQ3BELFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ25CLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBQ0QsU0FBUyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDbkIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDRixDQUFDO0FBRUYsK0NBQStDO0FBQy9DLEtBQUssVUFBVSxRQUFRLENBQ3JCLE9BQXVCLEVBQ3ZCLFlBQWlDO0lBRWpDLE9BQU87UUFDTCxJQUFJLEVBQUUsTUFBTSxZQUFZLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekUsS0FBSyxFQUFFLEtBQUssSUFBSSxFQUFFLEdBQUUsQ0FBQztLQUN0QixDQUFDO0FBQ0osQ0FBQztBQUVELHVFQUF1RTtBQUN2RSxLQUFLLFVBQVUs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QixDQUFDO0FBRUQsd0RBQXdEO0FBQ3hELE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUFDLElBQWM7SUFDekMsTUFBTSxZQUFZLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDeEMsQ0FBQztBQUVELE9BQU8sRUFBRSxjQUFjLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogYGRieCBhdXRoYCBDb21tYW5kZXIgcHJvZ3JhbSBmb3IgRGF0YWJyaWNrcyBPQXV0aC5cbiAqXG4gKiBUaGUgY29tbWFuZCBkZWxlZ2F0ZXMgcHJvZmlsZSByZXNvbHV0aW9uIGFuZCB0b2tlbiBsaWZlY3ljbGUgdG9cbiAqIGBAZGJ4LXRvb2xzL2F1dGhgLlxuICpcbiAqIEBtb2R1bGVcbiAqL1xuXG5pbXBvcnQgKiBhcyBkYXRhYnJpY2tzIGZyb20gXCJAZGJ4LXRvb2xzL2F1dGhcIjtcbmltcG9ydCB7IGFkZEFyZ3MsIHBhcnNlQXJncyB9IGZyb20gXCJAZGJ4LXRvb2xzL2NsaS1hcmdzXCI7XG5pbXBvcnQgdHlwZSB7IERhdGFicmlja3NBdXRoQ2xpZW50SW5mbyB9IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1hdXRoL2NsaWVudFwiO1xuaW1wb3J0IHsgQ29tbWFuZCwgQ29tbWFuZGVyRXJyb3IgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5cbmltcG9ydCB7XG4gIEF1dGhDbGlPcHRpb25zU2NoZW1hLFxuICBkYXRhYnJpY2tzQXV0aE9wdGlvbnMsXG4gIFRva2VuQ29tbWFuZE9wdGlvbnNTY2hlbWEsXG4gIHR5cGUgQXV0aENsaU9wdGlvbnMsXG59IGZyb20gXCIuL29wdGlvbnMudHNcIjtcblxuaW50ZXJmYWNlIEF1dGhDb250ZXh0IHtcbiAgYXV0aDogZGF0YWJyaWNrcy5BdXRoQ2xpZW50O1xuICBjbG9zZSgpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG5pbnRlcmZhY2UgQXV0aENsaURlcGVuZGVuY2llcyB7XG4gIGNyZWF0ZUF1dGhDbGllbnQ6IHR5cGVvZiBkYXRhYnJpY2tzLmNsaWVudC5jcmVhdGVBdXRoQ2xpZW50O1xuICB3cml0ZUpzb24odmFsdWU6IHVua25vd24pOiB2b2lkO1xuICB3cml0ZVRleHQodmFsdWU6IHN0cmluZyk6IHZvaWQ7XG59XG5cbmNvbnN0IERFRkFVTFRfREVQRU5ERU5DSUVTOiBBdXRoQ2xpRGVwZW5kZW5jaWVzID0ge1xuICBjcmVhdGVBdXRoQ2xpZW50OiBkYXRhYnJpY2tzLmNsaWVudC5jcmVhdGVBdXRoQ2xpZW50LFxuICB3cml0ZUpzb246ICh2YWx1ZSkgPT4ge1xuICAgIHByb2Nlc3Muc3Rkb3V0LndyaXRlKGAke0pTT04uc3RyaW5naWZ5KHZhbHVlLCBudWxsLCAyKX1cXG5gKTtcbiAgfSxcbiAgd3JpdGVUZXh0OiAodmFsdWUpID0+IHtcbiAgICBwcm9jZXNzLnN0ZG91dC53cml0ZShgJHt2YWx1ZX1cXG5gKTtcbiAgfSxcbn07XG5cbi8qKiBPcGVuIHRoZSBzZWxlY3RlZCBhdXRoZW50aWNhdGlvbiBjbGllbnQuICovXG5hc3luYyBmdW5jdGlvbiBvcGVuQXV0aChcbiAgb3B0aW9uczogQXV0aENsaU9wdGlvbnMsXG4gIGRlcGVuZGVuY2llczogQXV0aENsaURlcGVuZGVuY2llcyxcbik6IFByb21pc2U8QXV0aENvbnRleHQ+IHtcbiAgcmV0dXJuIHtcbiAgICBhdXRoOiBhd2FpdCBkZXBlbmRlbmNpZXMuY3JlYXRlQXV0aENsaWVudChkYXRhYnJpY2tzQXV0aE9wdGlvbnMob3B0aW9ucykpLFxuICAgIGNsb3NlOiBhc3luYyAoKSA9PiB7fSxcbiAgfTtcbn1cblxuLyoqIEV4ZWN1dGUgYW4gYXV0aCBhY3Rpb24gYW5kIGNsb3NlIHJlc291cmNlcyBvd25lZCBieSB0aGUgY29tbWFuZC4gKi9cbmFzeW5jIGZ1bmN0aW9uIHdpdGhBdXRoKFxuICBvcHRpb25zOiBBdXRoQ2xpT3B0aW9ucyxcbiAgZGVwZW5kZW5jaWVzOiBBdXRoQ2xpRGVwZW5kZW5jaWVzLFxuICBhY3Rpb246IChjb250ZXh0OiBBdXRoQ29udGV4dCkgPT4gUHJvbWlzZTx2b2lkPixcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBjb250ZXh0ID0gYXdhaXQgb3BlbkF1dGgob3B0aW9ucywgZGVwZW5kZW5jaWVzKTtcbiAgdHJ5IHtcbiAgICBhd2FpdCBhY3Rpb24oY29udGV4dCk7XG4gIH0gZmluYWxseSB7XG4gICAgYXdhaXQgY29udGV4dC5jbG9zZSgpO1xuICB9XG59XG5cbi8qKiBTaGFwZSBhIGdlbmVyYXRlZCB0b2tlbiByZWNvcmQgZm9yIHN0YWJsZSBDTEkgSlNPTiBvdXRwdXQuICovXG5mdW5jdGlvbiB0b2tlbkpzb24odG9rZW46IGRhdGFicmlja3MuQWNjZXNzVG9rZW4pOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gIHJldHVybiB7XG4gICAgYWNjZXNzX3Rva2VuOiB0b2tlbi5hY2Nlc3NUb2tlbixcbiAgICB0b2tlbl90eXBlOiB0b2tlbi50b2tlblR5cGUsXG4gICAgLi4uKHRva2VuLmV4cGlyeSA/IHsgZXhwaXJ5OiB0b2tlbi5leHBpcnkgfSA6IHt9KSxcbiAgICAuLi4odG9rZW4uc2NvcGVzLmxlbmd0aCA/IHsgc2NvcGVzOiB0b2tlbi5zY29wZXMgfSA6IHt9KSxcbiAgfTtcbn1cblxuLyoqIFNlbGVjdCB0aGUgc2VyaWFsaXphYmxlIGlkZW50aXR5IGZpZWxkcyBmcm9tIGFuIGF1dGhlbnRpY2F0aW9uIGNsaWVudC4gKi9cbmZ1bmN0aW9uIGNsaWVudEluZm8oYXV0aDogZGF0YWJyaWNrcy5BdXRoQ2xpZW50KTogRGF0YWJyaWNrc0F1dGhDbGllbnRJbmZvIHtcbiAgcmV0dXJuIHtcbiAgICAuLi4oYXV0aC5wcm9maWxlID8geyBwcm9maWxlOiBhdXRoLnByb2ZpbGUgfSA6IHt9KSxcbiAgICBob3N0OiBhdXRoLmhvc3QsXG4gICAgLi4uKGF1dGguYWNjb3VudElkID8geyBhY2NvdW50SWQ6IGF1dGguYWNjb3VudElkIH0gOiB7fSksXG4gICAgLi4uKGF1dGgud29ya3NwYWNlSWQgPyB7IHdvcmtzcGFjZUlkOiBhdXRoLndvcmtzcGFjZUlkIH0gOiB7fSksXG4gICAgdGFyZ2V0OiBhdXRoLnRhcmdldCxcbiAgICBhdXRoVHlwZTogYXV0aC5hdXRoVHlwZSxcbiAgICBwcmluY2lwYWw6IGF1dGgucHJpbmNpcGFsLFxuICB9O1xufVxuXG4vKiogQnVpbGQgdGhlIGBkYnggYXV0aGAgQ29tbWFuZGVyIHByb2dyYW0gd2l0aG91dCBwYXJzaW5nIGFyZ3VtZW50cy4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFByb2dyYW0oXG4gIG5hbWUgPSBcImRieCBhdXRoXCIsXG4gIG92ZXJyaWRlczogUGFydGlhbDxBdXRoQ2xpRGVwZW5kZW5jaWVzPiA9IHt9LFxuKTogQ29tbWFuZCB7XG4gIGNvbnN0IGRlcGVuZGVuY2llcyA9IHsgLi4uREVGQVVMVF9ERVBFTkRFTkNJRVMsIC4uLm92ZXJyaWRlcyB9O1xuICBjb25zdCBwcm9ncmFtID0gYWRkQXJncyhcbiAgICBuZXcgQ29tbWFuZCgpXG4gICAgICAubmFtZShuYW1lKVxuICAgICAgLmRlc2NyaXB0aW9uKFwiQXV0aGVudGljYXRlIHRvIERhdGFicmlja3Mgd2l0aCB1c2VyIG9yIG1hY2hpbmUgT0F1dGhcIilcbiAgICAgIC5zaG93SGVscEFmdGVyRXJyb3IoKSxcbiAgICBBdXRoQ2xpT3B0aW9uc1NjaGVtYSxcbiAgKTtcbiAgY29uc3Qgb3B0aW9ucyA9ICgpOiBBdXRoQ2xpT3B0aW9ucyA9PiBwYXJzZUFyZ3MocHJvZ3JhbSwgQXV0aENsaU9wdGlvbnNTY2hlbWEpO1xuXG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChcImxvZ2luXCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiRm9yY2UgYnJvd3NlciBsb2dpbiBhbmQgcmV0dXJuIGFuIGFjY2VzcyB0b2tlblwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgd2l0aEF1dGgob3B0aW9ucygpLCBkZXBlbmRlbmNpZXMsIGFzeW5jICh7IGF1dGggfSkgPT4ge1xuICAgICAgICBkZXBlbmRlbmNpZXMud3JpdGVKc29uKHRva2VuSnNvbihhd2FpdCBhdXRoLnRva2VuKHsgbG9naW46IHRydWUgfSkpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gIGNvbnN0IHRva2VuQ29tbWFuZCA9IGFkZEFyZ3MoXG4gICAgcHJvZ3JhbS5jb21tYW5kKFwidG9rZW5cIikuZGVzY3JpcHRpb24oXCJSZXR1cm4gYSB2YWxpZCBhY2Nlc3MgdG9rZW4sIGxvZ2dpbmcgaW4gd2hlbiBuZWVkZWRcIiksXG4gICAgVG9rZW5Db21tYW5kT3B0aW9uc1NjaGVtYSxcbiAgKTtcbiAgdG9rZW5Db21tYW5kLmFjdGlvbihhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgdG9rZW5PcHRpb25zID0gcGFyc2VBcmdzKHRva2VuQ29tbWFuZCwgVG9rZW5Db21tYW5kT3B0aW9uc1NjaGVtYSk7XG4gICAgYXdhaXQgd2l0aEF1dGgob3B0aW9ucygpLCBkZXBlbmRlbmNpZXMsIGFzeW5jICh7IGF1dGggfSkgPT4ge1xuICAgICAgY29uc3QgdG9rZW4gPSBhd2FpdCBhdXRoLnRva2VuKHtcbiAgICAgICAgLi4uKHRva2VuT3B0aW9ucy5sb2dpbiA/IHt9IDogeyBsb2dpbjogZmFsc2UgfSksXG4gICAgICAgIC4uLih0b2tlbk9wdGlvbnMuZm9yY2VSZWZyZXNoID8geyByZWZyZXNoOiB0cnVlIH0gOiB7fSksXG4gICAgICB9KTtcbiAgICAgIGlmICh0b2tlbk9wdGlvbnMuZm9ybWF0ID09PSBcInRleHRcIikgZGVwZW5kZW5jaWVzLndyaXRlVGV4dCh0b2tlbi5hY2Nlc3NUb2tlbik7XG4gICAgICBlbHNlIGRlcGVuZGVuY2llcy53cml0ZUpzb24odG9rZW5Kc29uKHRva2VuKSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChcImhlYWRlcnNcIilcbiAgICAuZGVzY3JpcHRpb24oXCJSZXR1cm4gY3VycmVudCBEYXRhYnJpY2tzIGF1dGhlbnRpY2F0aW9uIGhlYWRlcnNcIilcbiAgICAuYWN0aW9uKGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IHdpdGhBdXRoKG9wdGlvbnMoKSwgZGVwZW5kZW5jaWVzLCBhc3luYyAoeyBhdXRoIH0pID0+IHtcbiAgICAgICAgZGVwZW5kZW5jaWVzLndyaXRlSnNvbihhd2FpdCBhdXRoLmhlYWRlcnMoKSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICBwcm9ncmFtXG4gICAgLmNvbW1hbmQoXCJwcm9maWxlXCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiUHJpbnQgdGhlIGNvbmZpZ3VyZWQgb3IgYXV0b21hdGljYWxseSBkZXRlY3RlZCBwcm9maWxlXCIpXG4gICAgLmFjdGlvbihhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCB3aXRoQXV0aChvcHRpb25zKCksIGRlcGVuZGVuY2llcywgYXN5bmMgKHsgYXV0aCB9KSA9PiB7XG4gICAgICAgIGRlcGVuZGVuY2llcy53cml0ZVRleHQoYXV0aC5wcm9maWxlID8/IFwiYW1iaWVudFwiKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChcImxvZ291dFwiKVxuICAgIC5kZXNjcmlwdGlvbihcIkRlbGV0ZSB0aGUgc3RvcmVkIGNyZWRlbnRpYWwgZm9yIHRoZSBzZWxlY3RlZCBwcm9maWxlXCIpXG4gICAgLmFjdGlvbihhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCB3aXRoQXV0aChvcHRpb25zKCksIGRlcGVuZGVuY2llcywgYXN5bmMgKHsgYXV0aCB9KSA9PiB7XG4gICAgICAgIGF3YWl0IGF1dGgubG9nb3V0KCk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICBwcm9ncmFtXG4gICAgLmNvbW1hbmQoXCJzdGF0dXNcIilcbiAgICAuZGVzY3JpcHRpb24oXCJTaG93IHRoZSByZXNvbHZlZCBhdXRoZW50aWNhdGlvbiBjbGllbnQgY29uZmlndXJhdGlvblwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgd2l0aEF1dGgob3B0aW9ucygpLCBkZXBlbmRlbmNpZXMsIGFzeW5jICh7IGF1dGggfSkgPT4ge1xuICAgICAgICBkZXBlbmRlbmNpZXMud3JpdGVKc29uKGNsaWVudEluZm8oYXV0aCkpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgcmV0dXJuIHByb2dyYW07XG59XG5cbi8qKiBQYXJzZSBgYXJndmAgYW5kIHJ1biB0aGUgc2VsZWN0ZWQgYXV0aCBvcGVyYXRpb24uICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcnVuQ2xpKGFyZ3Y6IHN0cmluZ1tdKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGJ1aWxkUHJvZ3JhbSgpLnBhcnNlQXN5bmMoYXJndik7XG59XG5cbmV4cG9ydCB7IENvbW1hbmRlckVycm9yIH07XG4iXX0=
|
|
@@ -34,6 +34,10 @@ export declare const AuthCliOptionsSchema: z.ZodObject<{
|
|
|
34
34
|
export declare const TokenCommandOptionsSchema: z.ZodObject<{
|
|
35
35
|
forceRefresh: z.ZodDefault<z.ZodBoolean>;
|
|
36
36
|
login: z.ZodDefault<z.ZodBoolean>;
|
|
37
|
+
format: z.ZodDefault<z.ZodEnum<{
|
|
38
|
+
json: "json";
|
|
39
|
+
text: "text";
|
|
40
|
+
}>>;
|
|
37
41
|
}, z.core.$strict>;
|
|
38
42
|
export type AuthCliOptions = z.output<typeof AuthCliOptionsSchema>;
|
|
39
43
|
export type TokenCommandOptions = z.output<typeof TokenCommandOptionsSchema>;
|
package/lib/src/auth/options.js
CHANGED
|
@@ -37,6 +37,10 @@ export const TokenCommandOptionsSchema = z
|
|
|
37
37
|
.object({
|
|
38
38
|
forceRefresh: z.boolean().default(false).describe("Refresh the token before returning it."),
|
|
39
39
|
login: z.boolean().default(true).describe("Log in when credentials are missing or invalid."),
|
|
40
|
+
format: z
|
|
41
|
+
.enum(["json", "text"])
|
|
42
|
+
.default("json")
|
|
43
|
+
.describe("Output structured token metadata or only the access token."),
|
|
40
44
|
})
|
|
41
45
|
.strict()
|
|
42
46
|
.describe("Options for returning a Databricks access token.");
|
|
@@ -61,4 +65,4 @@ export function databricksAuthOptions(options) {
|
|
|
61
65
|
preferUserToMachine: options.preferUserToMachine,
|
|
62
66
|
};
|
|
63
67
|
}
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL29wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsMkJBQTJCLEdBRTVCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQztLQUNsQyxNQUFNLENBQUM7SUFDTixPQUFPLEVBQUUsMkJBQTJCLENBQUMsS0FBSyxDQUFDLE9BQU87SUFDbEQsSUFBSSxFQUFFLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxJQUFJO0lBQzVDLFNBQVMsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsU0FBUztJQUN0RCxXQUFXLEVBQUUsMkJBQTJCLENBQUMsS0FBSyxDQUFDLFdBQVc7SUFDMUQsVUFBVSxFQUFFLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxVQUFVO0lBQ3hELFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsUUFBUTtJQUNwRCxPQUFPLEVBQUUsMkJBQTJCLENBQUMsS0FBSyxDQUFDLE9BQU87SUFDbEQsUUFBUSxFQUFFLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxRQUFRO0lBQ3BELE1BQU0sRUFBRSxDQUFDO1NBQ04sVUFBVSxDQUNULENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDUixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUNsQixDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUMsS0FBSyxFQUNYLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNsQztTQUNBLE9BQU8sQ0FBQyxFQUFFLENBQUM7U0FDWCxRQUFRLENBQUMsZUFBZSxDQUFDO0lBQzVCLE1BQU0sRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsTUFBTTtJQUNoRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGFBQWE7SUFDcEQsY0FBYyxFQUFFLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxjQUFjO0lBQ3RELGVBQWUsRUFBRSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsZUFBZTtJQUN4RCxtQkFBbUIsRUFBRSxDQUFDO1NBQ25CLE9BQU8sRUFBRTtTQUNULE9BQU8sQ0FBQyxJQUFJLENBQUM7U0FDYixRQUFRLENBQUMsbUVBQW1FLENBQUM7Q0FDakYsQ0FBQztLQUNELE1BQU0sRUFBRTtLQUNSLFFBQVEsQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO0FBRWhFLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLENBQUM7S0FDdkMsTUFBTSxDQUFDO0lBQ04sWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLHdDQUF3QyxDQUFDO0lBQzNGLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxpREFBaUQsQ0FBQztJQUM1RixNQUFNLEVBQUUsQ0FBQztTQUNOLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztTQUN0QixPQUFPLENBQUMsTUFBTSxDQUFDO1NBQ2YsUUFBUSxDQUFDLDREQUE0RCxDQUFDO0NBQzFFLENBQUM7S0FDRCxNQUFNLEVBQUU7S0FDUixRQUFRLENBQUMsa0RBQWtELENBQUMsQ0FBQztBQU1oRSwyRUFBMkU7QUFDM0UsTUFBTSxVQUFVLHFCQUFxQixDQUFDLE9BQXVCO0lBQzNELE9BQU87UUFDTCxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87UUFDeEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1FBQ2xCLFNBQVMsRUFBRSxPQUFPLENBQUMsU0FBUztRQUM1QixXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVc7UUFDaEMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVO1FBQzlCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtRQUMxQixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87UUFDeEIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1FBQzFCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDOUQsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1FBQ3RCLElBQUksRUFBRTtZQUNKLGFBQWEsRUFBRSxPQUFPLENBQUMsYUFBYTtZQUNwQyxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7WUFDdEMsZUFBZSxFQUFFLE9BQU8sQ0FBQyxlQUFlO1NBQ3pDO1FBQ0QsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLG1CQUFtQjtLQUNqRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRGF0YWJyaWNrcyBhdXRoIGNvbW1hbmQtbGluZSBvcHRpb24gc2NoZW1hcyBhbmQgcnVudGltZSBwcm9qZWN0aW9uLlxuICpcbiAqIEBtb2R1bGVcbiAqL1xuXG5pbXBvcnQge1xuICBBdXRoT3B0aW9uc1NjaGVtYSxcbiAgRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLFxuICB0eXBlIERhdGFicmlja3NBdXRoT3B0aW9ucyxcbn0gZnJvbSBcIkBkYngtdG9vbHMvYXV0aC9jb25maWdcIjtcbmltcG9ydCB7IHN0cmluZ1V0aWxzIH0gZnJvbSBcIkBkYngtdG9vbHMvc2hhcmVkLWNvcmVcIjtcbmltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbmV4cG9ydCBjb25zdCBBdXRoQ2xpT3B0aW9uc1NjaGVtYSA9IHpcbiAgLm9iamVjdCh7XG4gICAgcHJvZmlsZTogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLnByb2ZpbGUsXG4gICAgaG9zdDogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLmhvc3QsXG4gICAgYWNjb3VudElkOiBEYXRhYnJpY2tzQXV0aE9wdGlvbnNTY2hlbWEuc2hhcGUuYWNjb3VudElkLFxuICAgIHdvcmtzcGFjZUlkOiBEYXRhYnJpY2tzQXV0aE9wdGlvbnNTY2hlbWEuc2hhcGUud29ya3NwYWNlSWQsXG4gICAgY29uZmlnRmlsZTogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLmNvbmZpZ0ZpbGUsXG4gICAgY2xpZW50SWQ6IERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5jbGllbnRJZCxcbiAgICBncm91cElkOiBEYXRhYnJpY2tzQXV0aE9wdGlvbnNTY2hlbWEuc2hhcGUuZ3JvdXBJZCxcbiAgICBhdXRoVHlwZTogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLmF1dGhUeXBlLFxuICAgIHNjb3BlczogelxuICAgICAgLnByZXByb2Nlc3MoXG4gICAgICAgICh2YWx1ZSkgPT5cbiAgICAgICAgICBBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgICAgICAgPyB2YWx1ZS5mbGF0TWFwKChlbnRyeSkgPT4gc3RyaW5nVXRpbHMucGFyc2VMaXN0KFN0cmluZyhlbnRyeSkpKVxuICAgICAgICAgICAgOiB2YWx1ZSxcbiAgICAgICAgei5hcnJheSh6LnN0cmluZygpLnRyaW0oKS5taW4oMSkpLFxuICAgICAgKVxuICAgICAgLmRlZmF1bHQoW10pXG4gICAgICAuZGVzY3JpYmUoXCJPQXV0aCBzY29wZXMuXCIpLFxuICAgIHRhcmdldDogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLnRhcmdldCxcbiAgICBsb2NrVGltZW91dE1zOiBBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5sb2NrVGltZW91dE1zLFxuICAgIGxvZ2luVGltZW91dE1zOiBBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5sb2dpblRpbWVvdXRNcyxcbiAgICByZWZyZXNoQnVmZmVyTXM6IEF1dGhPcHRpb25zU2NoZW1hLnNoYXBlLnJlZnJlc2hCdWZmZXJNcyxcbiAgICBwcmVmZXJVc2VyVG9NYWNoaW5lOiB6XG4gICAgICAuYm9vbGVhbigpXG4gICAgICAuZGVmYXVsdCh0cnVlKVxuICAgICAgLmRlc2NyaWJlKFwiUHJlZmVyIGEgbWF0Y2hpbmcgdXNlciBwcm9maWxlIG92ZXIgc2VsZWN0ZWQgbWFjaGluZSBjcmVkZW50aWFscy5cIiksXG4gIH0pXG4gIC5zdHJpY3QoKVxuICAuZGVzY3JpYmUoXCJPcHRpb25zIHNoYXJlZCBieSBldmVyeSBEYXRhYnJpY2tzIGF1dGggY29tbWFuZC5cIik7XG5cbmV4cG9ydCBjb25zdCBUb2tlbkNvbW1hbmRPcHRpb25zU2NoZW1hID0gelxuICAub2JqZWN0KHtcbiAgICBmb3JjZVJlZnJlc2g6IHouYm9vbGVhbigpLmRlZmF1bHQoZmFsc2UpLmRlc2NyaWJlKFwiUmVmcmVzaCB0aGUgdG9rZW4gYmVmb3JlIHJldHVybmluZyBpdC5cIiksXG4gICAgbG9naW46IHouYm9vbGVhbigpLmRlZmF1bHQodHJ1ZSkuZGVzY3JpYmUoXCJMb2cgaW4gd2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZyBvciBpbnZhbGlkLlwiKSxcbiAgICBmb3JtYXQ6IHpcbiAgICAgIC5lbnVtKFtcImpzb25cIiwgXCJ0ZXh0XCJdKVxuICAgICAgLmRlZmF1bHQoXCJqc29uXCIpXG4gICAgICAuZGVzY3JpYmUoXCJPdXRwdXQgc3RydWN0dXJlZCB0b2tlbiBtZXRhZGF0YSBvciBvbmx5IHRoZSBhY2Nlc3MgdG9rZW4uXCIpLFxuICB9KVxuICAuc3RyaWN0KClcbiAgLmRlc2NyaWJlKFwiT3B0aW9ucyBmb3IgcmV0dXJuaW5nIGEgRGF0YWJyaWNrcyBhY2Nlc3MgdG9rZW4uXCIpO1xuXG5leHBvcnQgdHlwZSBBdXRoQ2xpT3B0aW9ucyA9IHoub3V0cHV0PHR5cGVvZiBBdXRoQ2xpT3B0aW9uc1NjaGVtYT47XG5cbmV4cG9ydCB0eXBlIFRva2VuQ29tbWFuZE9wdGlvbnMgPSB6Lm91dHB1dDx0eXBlb2YgVG9rZW5Db21tYW5kT3B0aW9uc1NjaGVtYT47XG5cbi8qKiBDb252ZXJ0IGZsYXQgQ0xJIGZpZWxkcyBpbnRvIHRoZSBOb2RlIGF1dGggcGFja2FnZSdzIG5lc3RlZCBvcHRpb25zLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRhdGFicmlja3NBdXRoT3B0aW9ucyhvcHRpb25zOiBBdXRoQ2xpT3B0aW9ucyk6IERhdGFicmlja3NBdXRoT3B0aW9ucyB7XG4gIHJldHVybiB7XG4gICAgcHJvZmlsZTogb3B0aW9ucy5wcm9maWxlLFxuICAgIGhvc3Q6IG9wdGlvbnMuaG9zdCxcbiAgICBhY2NvdW50SWQ6IG9wdGlvbnMuYWNjb3VudElkLFxuICAgIHdvcmtzcGFjZUlkOiBvcHRpb25zLndvcmtzcGFjZUlkLFxuICAgIGNvbmZpZ0ZpbGU6IG9wdGlvbnMuY29uZmlnRmlsZSxcbiAgICBjbGllbnRJZDogb3B0aW9ucy5jbGllbnRJZCxcbiAgICBncm91cElkOiBvcHRpb25zLmdyb3VwSWQsXG4gICAgYXV0aFR5cGU6IG9wdGlvbnMuYXV0aFR5cGUsXG4gICAgc2NvcGVzOiBvcHRpb25zLnNjb3Blcy5sZW5ndGggPiAwID8gb3B0aW9ucy5zY29wZXMgOiB1bmRlZmluZWQsXG4gICAgdGFyZ2V0OiBvcHRpb25zLnRhcmdldCxcbiAgICBhdXRoOiB7XG4gICAgICBsb2NrVGltZW91dE1zOiBvcHRpb25zLmxvY2tUaW1lb3V0TXMsXG4gICAgICBsb2dpblRpbWVvdXRNczogb3B0aW9ucy5sb2dpblRpbWVvdXRNcyxcbiAgICAgIHJlZnJlc2hCdWZmZXJNczogb3B0aW9ucy5yZWZyZXNoQnVmZmVyTXMsXG4gICAgfSxcbiAgICBwcmVmZXJVc2VyVG9NYWNoaW5lOiBvcHRpb25zLnByZWZlclVzZXJUb01hY2hpbmUsXG4gIH07XG59XG4iXX0=
|
package/lib/src/cli.js
CHANGED
|
@@ -51,8 +51,9 @@ export async function prepareAndRunProjen(projenArgs, startDir) {
|
|
|
51
51
|
/**
|
|
52
52
|
* Mount `name` as a command that captures every following token verbatim and
|
|
53
53
|
* hands it to the program `load()` resolves. `helpOption(false)` is what lets
|
|
54
|
-
* `--help` through to the child instead of being answered here, and
|
|
55
|
-
*
|
|
54
|
+
* `--help` through to the child instead of being answered here, and
|
|
55
|
+
* `passThroughOptions()` keeps unknown flags in that token list so the child
|
|
56
|
+
* program owns them.
|
|
56
57
|
*/
|
|
57
58
|
function addForwardedCommand(program, name, description, load) {
|
|
58
59
|
program
|
|
@@ -60,6 +61,7 @@ function addForwardedCommand(program, name, description, load) {
|
|
|
60
61
|
.description(description)
|
|
61
62
|
.argument("[args...]", `arguments forwarded to ${name}`)
|
|
62
63
|
.allowUnknownOption()
|
|
64
|
+
.passThroughOptions()
|
|
63
65
|
.allowExcessArguments()
|
|
64
66
|
.helpOption(false)
|
|
65
67
|
.action(async (args) => {
|
|
@@ -72,6 +74,7 @@ export function buildProgram(name = PROGRAM_NAMES[0]) {
|
|
|
72
74
|
const program = new Command()
|
|
73
75
|
.name(name)
|
|
74
76
|
.description("Databricks developer tools: workspace lifecycle, AppKit env, auth, tunnels, and local proxies")
|
|
77
|
+
.enablePositionalOptions()
|
|
75
78
|
.showHelpAfterError()
|
|
76
79
|
.helpOption("-h, --help", `Show ${name} help`);
|
|
77
80
|
program
|
|
@@ -89,13 +92,25 @@ export function buildProgram(name = PROGRAM_NAMES[0]) {
|
|
|
89
92
|
addForwardedCommand(program, "tunnel", "Run a public portr tunnel with an email-OTP gate", async () => (await import("./tunnel/cli.js")).buildProgram);
|
|
90
93
|
addForwardedCommand(program, "lakebase-proxy", "Run the Node Databricks Lakebase PostgreSQL proxy", async () => (await import("./lakebase-proxy/cli.js")).buildProgram);
|
|
91
94
|
addForwardedCommand(program, "model-gateway", "Run the foreground AppKit Databricks model gateway", async () => (await import("./model-gateway/cli.js")).buildProgram);
|
|
95
|
+
addForwardedCommand(program, "genie", "Run managed Genie Code through a local Databricks model gateway", async () => (await import("./genie-code/cli.js")).buildProgram);
|
|
92
96
|
addForwardedCommand(program, "graphiti", "Run Graphiti or manage its current-user desktop service", async () => (await import("./graphiti/cli.js")).buildProgram);
|
|
93
97
|
return program;
|
|
94
98
|
}
|
|
95
99
|
/** Build the complete command tree used for generated documentation. */
|
|
96
100
|
export async function buildDocumentationProgram(name = PROGRAM_NAMES[0]) {
|
|
97
101
|
const program = buildProgram(name);
|
|
98
|
-
|
|
102
|
+
const children = [
|
|
103
|
+
(await import("./appkit/cli.js")).buildProgram("appkit"),
|
|
104
|
+
(await import("./auth/cli.js")).buildProgram("auth"),
|
|
105
|
+
(await import("./tunnel/cli.js")).buildProgram("tunnel"),
|
|
106
|
+
(await import("./lakebase-proxy/cli.js")).buildProgram("lakebase-proxy"),
|
|
107
|
+
(await import("./model-gateway/cli.js")).buildProgram("model-gateway"),
|
|
108
|
+
(await import("./genie-code/cli.js")).buildProgram("genie"),
|
|
109
|
+
(await import("./graphiti/cli.js")).buildProgram("graphiti"),
|
|
110
|
+
];
|
|
111
|
+
program.commands.splice(1, program.commands.length - 1);
|
|
112
|
+
for (const child of children)
|
|
113
|
+
program.addCommand(child);
|
|
99
114
|
return program;
|
|
100
115
|
}
|
|
101
116
|
/**
|
|
@@ -110,4 +125,4 @@ function programName(argv) {
|
|
|
110
125
|
export async function runCli(argv) {
|
|
111
126
|
await buildProgram(programName(argv)).parseAsync(argv);
|
|
112
127
|
}
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGFBQWEsR0FDZCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTlFLHNFQUFzRTtBQUN0RSxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQVUsQ0FBQztBQUVwRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxtQkFBbUIsQ0FBQyxVQUFvQixFQUFFLFFBQWlCO0lBQy9FLE1BQU0sSUFBSSxHQUFHLE1BQU0saUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0MsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN6QixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixPQUFPO0lBQ1QsQ0FBQztJQUNELElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDekIsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BCLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMxQixPQUFPO0lBQ1QsQ0FBQztJQUNELG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFD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U0FBUyxDQUFDO0lBQ3pGLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxLQUFLLE9BQU8sQ0FBQyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN0RixDQUFDO0FBRUQsb0VBQW9FO0FBQ3BFLE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUFDLElBQWM7SUFDekMsTUFBTSxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbW1hbmRlciBlbnRyeSBmb3IgYGRieGAgYW5kIGl0cyBgZGJ4LXRvb2xzYCBhbGlhcy5cbiAqXG4gKiBgZGV2YCBib290c3RyYXBzIG9yIHJlcGFpcnMgYSB3b3Jrc3BhY2UgYW5kIGZvcndhcmRzIHRvIHByb2plbi5cbiAqIGBhcHBraXRgIHByb3ZpZGVzIEFwcEtpdCBlbnZpcm9ubWVudCBoZWxwZXJzLlxuICogYGF1dGhgIG1hbmFnZXMgRGF0YWJyaWNrcyBPQXV0aCBhbmQgYWNjZXNzIHRva2Vucy5cbiAqIGB0dW5uZWxgIHJ1bnMgYSBwdWJsaWMgcG9ydHIgdHVubmVsIHdpdGggcGFzc3dvcmRsZXNzIGFjY2VzcyBnYXRpbmcuXG4gKlxuICogRmVhdHVyZSBjb21tYW5kcyBsb2FkIHRoZWlyIHNpYmxpbmcgcGFja2FnZXMgb25seSB3aGVuIHNlbGVjdGVkIGFuZCBmb3J3YXJkXG4gKiB0aGVpciBjb21wbGV0ZSBhcmd1bWVudCBsaXN0LCBpbmNsdWRpbmcgYC0taGVscGAuXG4gKlxuICogQG1vZHVsZVxuICovXG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5pbXBvcnQge1xuICBib290c3RyYXBXb3Jrc3BhY2UsXG4gIGVuc3VyZUVuZ2luZUN1cnJlbnQsXG4gIHJ1bkluaXRpYWxTeW50aCxcbiAgc2VlZFRvb2xjaGFpbixcbn0gZnJvbSBcIi4vYm9vdHN0cmFwLnRzXCI7XG5pbXBvcnQgeyBlbnN1cmVXb3Jrc3BhY2VSZWFkeSwgcnVuQnVuLCBydW5Qcm9qZW4gfSBmcm9tIFwiLi9idW4udHNcIjtcbmltcG9ydCB7IGZpbmRXb3Jrc3BhY2VSb290LCBuZWVkc0Jvb3RzdHJhcCwgbmVlZHNUb29sY2hhaW4gfSBmcm9tIFwiLi9yb290LnRzXCI7XG5cbi8qKiBDb21tYW5kcyB0aGUgYmluIGV4cG9zZXMsIGFuZCB0aGUgbmFtZXMgaGVscCBpcyByZW5kZXJlZCB1bmRlci4gKi9cbmNvbnN0IFBST0dSQU1fTkFNRVMgPSBbXCJkYnhcIiwgXCJkYngtdG9vbHNcIl0gYXMgY29uc3Q7XG5cbi8qKlxuICogUHJlcGFyZSB0aGUgd29ya3NwYWNlIGF0IGByb290YCwgdGhlbiBydW4gcHJvamVuICh2aWEgYnVuKSB3aXRoIGBwcm9qZW5BcmdzYC5cbiAqXG4gKiBUaHJlZSBjYXNlcywgaW4gb3JkZXI6XG4gKiAgIC0gbm8gYC5wcm9qZW5yYy50c2AgYXQgYWxsIC0+IGZ1bGwgYm9vdHN0cmFwIChzY2FmZm9sZCArIGluc3RhbGwgKyBzeW50aCksXG4gKiAgICAgd2hpY2ggYWxyZWFkeSBydW5zIHRoZSBpbml0aWFsIHN5bnRoOyBub3RoaW5nIG1vcmUgdG8gZm9yd2FyZC5cbiAqICAgLSBhIGAucHJvamVucmMudHNgIGJ1dCB0aGUgZW5naW5lL3Rvb2xjaGFpbiBpc24ndCBpbnN0YWxsZWQgKGUuZy4gYSBmcmVzaGx5XG4gKiAgICAgY29waWVkIHByb2plY3Qgd2hvc2UgZ2VuZXJhdGVkIGZpbGVzICsgbWFuaWZlc3RzIGFyZSBnaXRpZ25vcmVkKSAtPiBzZWVkXG4gKiAgICAgdGhlIHRvb2xjaGFpbiwgdGhlbiBydW4gdGhlIElOSVRJQUwgc3ludGggZGlyZWN0bHkgKHRoZSBwcm9qZW4gdGFza3MgdGhlXG4gKiAgICAgYXJncyB3b3VsZCBuYW1lLCBsaWtlIGBzeW5jYCwgZG9uJ3QgZXhpc3QgdW50aWwgYC5wcm9qZW5yYy50c2AgaGFzIHJ1blxuICogICAgIG9uY2UpLCBhbmQgaW5zdGFsbC4gRG9uJ3QgZm9yd2FyZCBgcHJvamVuQXJnc2AgLSB0aGUgc3ludGggaXMgdGhlIHdvcmsuXG4gKiAgIC0gb3RoZXJ3aXNlIChlc3RhYmxpc2hlZCB3b3Jrc3BhY2UpIC0+IGVuc3VyZSBkZXBzLCBicmluZyB0aGUgZW5naW5lIHVwIHRvXG4gKiAgICAgdGhpcyBDTEkncyB2ZXJzaW9uLCB0aGVuIGZvcndhcmQgdG8gcHJvamVuLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlcGFyZUFuZFJ1blByb2plbihwcm9qZW5BcmdzOiBzdHJpbmdbXSwgc3RhcnREaXI/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3Qgcm9vdCA9IGF3YWl0IGZpbmRXb3Jrc3BhY2VSb290KHN0YXJ0RGlyKTtcbiAgaWYgKG5lZWRzQm9vdHN0cmFwKHJvb3QpKSB7XG4gICAgYm9vdHN0cmFwV29ya3NwYWNlKHJvb3QpO1xuICAgIHJldHVybjtcbiAgfVxuICBpZiAobmVlZHNUb29sY2hhaW4ocm9vdCkpIHtcbiAgICBzZWVkVG9vbGNoYWluKHJvb3QpO1xuICAgIHJ1bkluaXRpYWxTeW50aChyb290KTtcbiAgICBydW5CdW4oW1wiaW5zdGFsbFwiXSwgcm9vdCk7XG4gICAgcmV0dXJuO1xuICB9XG4gIGVuc3VyZVdvcmtzcGFjZVJlYWR5KHJvb3QpO1xuICBlbnN1cmVFbmdpbmVDdXJyZW50KHJvb3QpO1xuICBydW5Qcm9qZW4ocHJvamVuQXJncywgcm9vdCk7XG59XG5cbi8qKlxuICogTW91bnQgYG5hbWVgIGFzIGEgY29tbWFuZCB0aGF0IGNhcHR1cmVzIGV2ZXJ5IGZvbGxvd2luZyB0b2tlbiB2ZXJiYXRpbSBhbmRcbiAqIGhhbmRzIGl0IHRvIHRoZSBwcm9ncmFtIGBsb2FkKClgIHJlc29sdmVzLiBgaGVscE9wdGlvbihmYWxzZSlgIGlzIHdoYXQgbGV0c1xuICogYC0taGVscGAgdGhyb3VnaCB0byB0aGUgY2hpbGQgaW5zdGVhZCBvZiBiZWluZyBhbnN3ZXJlZCBoZXJlLCBhbmQgdGhlIGNoaWxkXG4gKiBwcm9ncmFtIG93bnMgaXRzIG93biBmbGFncywgc28gdGhpcyB3cmFwcGVyIG5ldmVyIGhhcyB0byByZXN0YXRlIHRoZW0uXG4gKi9cbmZ1bmN0aW9uIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gIHByb2dyYW06IENvbW1hbmQsXG4gIG5hbWU6IHN0cmluZyxcbiAgZGVzY3JpcHRpb246IHN0cmluZyxcbiAgbG9hZDogKCkgPT4gUHJvbWlzZTwobmFtZTogc3RyaW5nKSA9PiBDb21tYW5kPixcbik6IHZvaWQge1xuICBwcm9ncmFtXG4gICAgLmNvbW1hbmQobmFtZSlcbiAgICAuZGVzY3JpcHRpb24oZGVzY3JpcHRpb24pXG4gICAgLmFyZ3VtZW50KFwiW2FyZ3MuLi5dXCIsIGBhcmd1bWVudHMgZm9yd2FyZGVkIHRvICR7bmFtZX1gKVxuICAgIC5hbGxvd1Vua25vd25PcHRpb24oKVxuICAgIC5hbGxvd0V4Y2Vzc0FyZ3VtZW50cygpXG4gICAgLmhlbHBPcHRpb24oZmFsc2UpXG4gICAgLmFjdGlvbihhc3luYyAoYXJnczogc3RyaW5nW10pID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkUHJvZ3JhbSA9IGF3YWl0IGxvYWQoKTtcbiAgICAgIGF3YWl0IGJ1aWxkUHJvZ3JhbShgJHtwcm9ncmFtLm5hbWUoKX0gJHtuYW1lfWApLnBhcnNlQXN5bmMoYXJncywgeyBmcm9tOiBcInVzZXJcIiB9KTtcbiAgICB9KTtcbn1cblxuLyoqIEJ1aWxkIHRoZSBgZGJ4YCBjb21tYW5kZXIgcHJvZ3JhbSAobm8gc2lkZSBlZmZlY3RzIHVudGlsIHBhcnNlZCkuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQcm9ncmFtKG5hbWU6IHN0cmluZyA9IFBST0dSQU1fTkFNRVNbMF0pOiBDb21tYW5kIHtcbiAgY29uc3QgcHJvZ3JhbSA9IG5ldyBDb21tYW5kKClcbiAgICAubmFtZShuYW1lKVxuICAgIC5kZXNjcmlwdGlvbihcbiAgICAgIFwiRGF0YWJyaWNrcyBkZXZlbG9wZXIgdG9vbHM6IHdvcmtzcGFjZSBsaWZlY3ljbGUsIEFwcEtpdCBlbnYsIGF1dGgsIHR1bm5lbHMsIGFuZCBsb2NhbCBwcm94aWVzXCIsXG4gICAgKVxuICAgIC5zaG93SGVscEFmdGVyRXJyb3IoKVxuICAgIC5oZWxwT3B0aW9uKFwiLWgsIC0taGVscFwiLCBgU2hvdyAke25hbWV9IGhlbHBgKTtcblxuICBwcm9ncmFtXG4gICAgLmNvbW1hbmQoXCJkZXZcIilcbiAgICAuZGVzY3JpcHRpb24oXCJCb290c3RyYXAgb3IgcmVwYWlyIGEgZGJ4LXRvb2xzIHdvcmtzcGFjZSwgdGhlbiBmb3J3YXJkIHRvIHByb2plblwiKVxuICAgIC5hcmd1bWVudChcIltwcm9qZW5BcmdzLi4uXVwiLCBcInByb2plbiB0YXNrIGFuZCBhcmd1bWVudHMgKGUuZy4gc3luYyAtLXdhdGNoKVwiKVxuICAgIC5hbGxvd1Vua25vd25PcHRpb24oKVxuICAgIC5hbGxvd0V4Y2Vzc0FyZ3VtZW50cygpXG4gICAgLmhlbHBPcHRpb24oZmFsc2UpXG4gICAgLmFjdGlvbihhc3luYyAocHJvamVuQXJnczogc3RyaW5nW10pID0+IHtcbiAgICAgIGF3YWl0IHByZXBhcmVBbmRSdW5Qcm9qZW4ocHJvamVuQXJncyk7XG4gICAgfSk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwiYXBwa2l0XCIsXG4gICAgXCJBcHBLaXQgaGVscGVycyAoZW52OiBwcmludCB0aGUgZW52aXJvbm1lbnQgYW4gQXBwS2l0IGFwcCByZXNvbHZlcylcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9hcHBraXQvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwiYXV0aFwiLFxuICAgIFwiQXV0aGVudGljYXRlIHRvIERhdGFicmlja3MgYW5kIG1hbmFnZSBPQXV0aCB0b2tlbnNcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9hdXRoL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcInR1bm5lbFwiLFxuICAgIFwiUnVuIGEgcHVibGljIHBvcnRyIHR1bm5lbCB3aXRoIGFuIGVtYWlsLU9UUCBnYXRlXCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vdHVubmVsL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcImxha2ViYXNlLXByb3h5XCIsXG4gICAgXCJSdW4gdGhlIE5vZGUgRGF0YWJyaWNrcyBMYWtlYmFzZSBQb3N0Z3JlU1FMIHByb3h5XCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vbGFrZWJhc2UtcHJveHkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwibW9kZWwtZ2F0ZXdheVwiLFxuICAgIFwiUnVuIHRoZSBmb3JlZ3JvdW5kIEFwcEtpdCBEYXRhYnJpY2tzIG1vZGVsIGdhdGV3YXlcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9tb2RlbC1nYXRld2F5L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcImdyYXBoaXRpXCIsXG4gICAgXCJSdW4gR3JhcGhpdGkgb3IgbWFuYWdlIGl0cyBjdXJyZW50LXVzZXIgZGVza3RvcCBzZXJ2aWNlXCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vZ3JhcGhpdGkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgcmV0dXJuIHByb2dyYW07XG59XG5cbi8qKiBCdWlsZCB0aGUgY29tcGxldGUgY29tbWFuZCB0cmVlIHVzZWQgZm9yIGdlbmVyYXRlZCBkb2N1bWVudGF0aW9uLiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1aWxkRG9jdW1lbnRhdGlvblByb2dyYW0obmFtZTogc3RyaW5nID0gUFJPR1JBTV9OQU1FU1swXSk6IFByb21pc2U8Q29tbWFuZD4ge1xuICBjb25zdCBwcm9ncmFtID0gYnVpbGRQcm9ncmFtKG5hbWUpO1xuICAocHJvZ3JhbS5jb21tYW5kcyBhcyBDb21tYW5kW10pLnNwbGljZShcbiAgICAxLFxuICAgIHByb2dyYW0uY29tbWFuZHMubGVuZ3RoIC0gMSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi9hcHBraXQvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJhcHBraXRcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vYXV0aC9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcImF1dGhcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vdHVubmVsL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwidHVubmVsXCIpLFxuICAgIChhd2FpdCBpbXBvcnQoXCIuL2xha2ViYXNlLXByb3h5L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwibGFrZWJhc2UtcHJveHlcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vbW9kZWwtZ2F0ZXdheS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcIm1vZGVsLWdhdGV3YXlcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vZ3JhcGhpdGkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJncmFwaGl0aVwiKSxcbiAgKTtcbiAgcmV0dXJuIHByb2dyYW07XG59XG5cbi8qKlxuICogUHJvZ3JhbSBuYW1lIGZvciBoZWxwIG91dHB1dDogd2hpY2hldmVyIGJpbiB0aGUgdXNlciBhY3R1YWxseSB0eXBlZCwgc29cbiAqIGBkYngtdG9vbHMgLS1oZWxwYCBkb2Vzbid0IGRvY3VtZW50IGl0c2VsZiBhcyBgZGJ4YC4gRmFsbHMgYmFjayB0byBgZGJ4YC5cbiAqL1xuZnVuY3Rpb24gcHJvZ3JhbU5hbWUoYXJndjogc3RyaW5nW10pOiBzdHJpbmcge1xuICBjb25zdCBpbnZva2VkID0gYXJndlsxXSA/IGJhc2VuYW1lKGFyZ3ZbMV0pLnJlcGxhY2UoL1xcLig/OltjbV0/W2p0XXMpJC8sIFwiXCIpIDogdW5kZWZpbmVkO1xuICByZXR1cm4gUFJPR1JBTV9OQU1FUy5maW5kKChjYW5kaWRhdGUpID0+IGNhbmRpZGF0ZSA9PT0gaW52b2tlZCkgPz8gUFJPR1JBTV9OQU1FU1swXTtcbn1cblxuLyoqIFBhcnNlIGBhcmd2YCAoYSBgcHJvY2Vzcy5hcmd2YCkgYW5kIHJ1biB0aGUgbWF0Y2hpbmcgY29tbWFuZC4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5DbGkoYXJndjogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYnVpbGRQcm9ncmFtKHByb2dyYW1OYW1lKGFyZ3YpKS5wYXJzZUFzeW5jKGFyZ3YpO1xufVxuIl19
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGFBQWEsR0FDZCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTlFLHNFQUFzRTtBQUN0RSxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQVUsQ0FBQztBQUVwRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxtQkFBbUIsQ0FBQyxVQUFvQixFQUFFLFFBQWlCO0lBQy9FLE1BQU0sSUFBSSxHQUFHLE1BQU0saUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0MsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN6QixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixPQUFPO0lBQ1QsQ0FBQztJQUNELElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDekIsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BCLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMxQixPQUFPO0lBQ1QsQ0FBQztJQUNELG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFD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LEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdkUsS0FBSyxNQUFNLEtBQUssSUFBSSxRQUFRO1FBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4RCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxXQUFXLENBQUMsSUFBYztJQUNqQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN6RixPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLFNBQVMsS0FBSyxPQUFPLENBQUMsSUFBSSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdEYsQ0FBQztBQUVELG9FQUFvRTtBQUNwRSxNQUFNLENBQUMsS0FBSyxVQUFVLE1BQU0sQ0FBQyxJQUFjO0lBQ3pDLE1BQU0sWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN6RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb21tYW5kZXIgZW50cnkgZm9yIGBkYnhgIGFuZCBpdHMgYGRieC10b29sc2AgYWxpYXMuXG4gKlxuICogYGRldmAgYm9vdHN0cmFwcyBvciByZXBhaXJzIGEgd29ya3NwYWNlIGFuZCBmb3J3YXJkcyB0byBwcm9qZW4uXG4gKiBgYXBwa2l0YCBwcm92aWRlcyBBcHBLaXQgZW52aXJvbm1lbnQgaGVscGVycy5cbiAqIGBhdXRoYCBtYW5hZ2VzIERhdGFicmlja3MgT0F1dGggYW5kIGFjY2VzcyB0b2tlbnMuXG4gKiBgdHVubmVsYCBydW5zIGEgcHVibGljIHBvcnRyIHR1bm5lbCB3aXRoIHBhc3N3b3JkbGVzcyBhY2Nlc3MgZ2F0aW5nLlxuICpcbiAqIEZlYXR1cmUgY29tbWFuZHMgbG9hZCB0aGVpciBzaWJsaW5nIHBhY2thZ2VzIG9ubHkgd2hlbiBzZWxlY3RlZCBhbmQgZm9yd2FyZFxuICogdGhlaXIgY29tcGxldGUgYXJndW1lbnQgbGlzdCwgaW5jbHVkaW5nIGAtLWhlbHBgLlxuICpcbiAqIEBtb2R1bGVcbiAqL1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSBcImNvbW1hbmRlclwiO1xuaW1wb3J0IHtcbiAgYm9vdHN0cmFwV29ya3NwYWNlLFxuICBlbnN1cmVFbmdpbmVDdXJyZW50LFxuICBydW5Jbml0aWFsU3ludGgsXG4gIHNlZWRUb29sY2hhaW4sXG59IGZyb20gXCIuL2Jvb3RzdHJhcC50c1wiO1xuaW1wb3J0IHsgZW5zdXJlV29ya3NwYWNlUmVhZHksIHJ1bkJ1biwgcnVuUHJvamVuIH0gZnJvbSBcIi4vYnVuLnRzXCI7XG5pbXBvcnQgeyBmaW5kV29ya3NwYWNlUm9vdCwgbmVlZHNCb290c3RyYXAsIG5lZWRzVG9vbGNoYWluIH0gZnJvbSBcIi4vcm9vdC50c1wiO1xuXG4vKiogQ29tbWFuZHMgdGhlIGJpbiBleHBvc2VzLCBhbmQgdGhlIG5hbWVzIGhlbHAgaXMgcmVuZGVyZWQgdW5kZXIuICovXG5jb25zdCBQUk9HUkFNX05BTUVTID0gW1wiZGJ4XCIsIFwiZGJ4LXRvb2xzXCJdIGFzIGNvbnN0O1xuXG4vKipcbiAqIFByZXBhcmUgdGhlIHdvcmtzcGFjZSBhdCBgcm9vdGAsIHRoZW4gcnVuIHByb2plbiAodmlhIGJ1bikgd2l0aCBgcHJvamVuQXJnc2AuXG4gKlxuICogVGhyZWUgY2FzZXMsIGluIG9yZGVyOlxuICogICAtIG5vIGAucHJvamVucmMudHNgIGF0IGFsbCAtPiBmdWxsIGJvb3RzdHJhcCAoc2NhZmZvbGQgKyBpbnN0YWxsICsgc3ludGgpLFxuICogICAgIHdoaWNoIGFscmVhZHkgcnVucyB0aGUgaW5pdGlhbCBzeW50aDsgbm90aGluZyBtb3JlIHRvIGZvcndhcmQuXG4gKiAgIC0gYSBgLnByb2plbnJjLnRzYCBidXQgdGhlIGVuZ2luZS90b29sY2hhaW4gaXNuJ3QgaW5zdGFsbGVkIChlLmcuIGEgZnJlc2hseVxuICogICAgIGNvcGllZCBwcm9qZWN0IHdob3NlIGdlbmVyYXRlZCBmaWxlcyArIG1hbmlmZXN0cyBhcmUgZ2l0aWdub3JlZCkgLT4gc2VlZFxuICogICAgIHRoZSB0b29sY2hhaW4sIHRoZW4gcnVuIHRoZSBJTklUSUFMIHN5bnRoIGRpcmVjdGx5ICh0aGUgcHJvamVuIHRhc2tzIHRoZVxuICogICAgIGFyZ3Mgd291bGQgbmFtZSwgbGlrZSBgc3luY2AsIGRvbid0IGV4aXN0IHVudGlsIGAucHJvamVucmMudHNgIGhhcyBydW5cbiAqICAgICBvbmNlKSwgYW5kIGluc3RhbGwuIERvbid0IGZvcndhcmQgYHByb2plbkFyZ3NgIC0gdGhlIHN5bnRoIGlzIHRoZSB3b3JrLlxuICogICAtIG90aGVyd2lzZSAoZXN0YWJsaXNoZWQgd29ya3NwYWNlKSAtPiBlbnN1cmUgZGVwcywgYnJpbmcgdGhlIGVuZ2luZSB1cCB0b1xuICogICAgIHRoaXMgQ0xJJ3MgdmVyc2lvbiwgdGhlbiBmb3J3YXJkIHRvIHByb2plbi5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZXBhcmVBbmRSdW5Qcm9qZW4ocHJvamVuQXJnczogc3RyaW5nW10sIHN0YXJ0RGlyPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJvb3QgPSBhd2FpdCBmaW5kV29ya3NwYWNlUm9vdChzdGFydERpcik7XG4gIGlmIChuZWVkc0Jvb3RzdHJhcChyb290KSkge1xuICAgIGJvb3RzdHJhcFdvcmtzcGFjZShyb290KTtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKG5lZWRzVG9vbGNoYWluKHJvb3QpKSB7XG4gICAgc2VlZFRvb2xjaGFpbihyb290KTtcbiAgICBydW5Jbml0aWFsU3ludGgocm9vdCk7XG4gICAgcnVuQnVuKFtcImluc3RhbGxcIl0sIHJvb3QpO1xuICAgIHJldHVybjtcbiAgfVxuICBlbnN1cmVXb3Jrc3BhY2VSZWFkeShyb290KTtcbiAgZW5zdXJlRW5naW5lQ3VycmVudChyb290KTtcbiAgcnVuUHJvamVuKHByb2plbkFyZ3MsIHJvb3QpO1xufVxuXG4vKipcbiAqIE1vdW50IGBuYW1lYCBhcyBhIGNvbW1hbmQgdGhhdCBjYXB0dXJlcyBldmVyeSBmb2xsb3dpbmcgdG9rZW4gdmVyYmF0aW0gYW5kXG4gKiBoYW5kcyBpdCB0byB0aGUgcHJvZ3JhbSBgbG9hZCgpYCByZXNvbHZlcy4gYGhlbHBPcHRpb24oZmFsc2UpYCBpcyB3aGF0IGxldHNcbiAqIGAtLWhlbHBgIHRocm91Z2ggdG8gdGhlIGNoaWxkIGluc3RlYWQgb2YgYmVpbmcgYW5zd2VyZWQgaGVyZSwgYW5kXG4gKiBgcGFzc1Rocm91Z2hPcHRpb25zKClgIGtlZXBzIHVua25vd24gZmxhZ3MgaW4gdGhhdCB0b2tlbiBsaXN0IHNvIHRoZSBjaGlsZFxuICogcHJvZ3JhbSBvd25zIHRoZW0uXG4gKi9cbmZ1bmN0aW9uIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gIHByb2dyYW06IENvbW1hbmQsXG4gIG5hbWU6IHN0cmluZyxcbiAgZGVzY3JpcHRpb246IHN0cmluZyxcbiAgbG9hZDogKCkgPT4gUHJvbWlzZTwobmFtZTogc3RyaW5nKSA9PiBDb21tYW5kPixcbik6IHZvaWQge1xuICBwcm9ncmFtXG4gICAgLmNvbW1hbmQobmFtZSlcbiAgICAuZGVzY3JpcHRpb24oZGVzY3JpcHRpb24pXG4gICAgLmFyZ3VtZW50KFwiW2FyZ3MuLi5dXCIsIGBhcmd1bWVudHMgZm9yd2FyZGVkIHRvICR7bmFtZX1gKVxuICAgIC5hbGxvd1Vua25vd25PcHRpb24oKVxuICAgIC5wYXNzVGhyb3VnaE9wdGlvbnMoKVxuICAgIC5hbGxvd0V4Y2Vzc0FyZ3VtZW50cygpXG4gICAgLmhlbHBPcHRpb24oZmFsc2UpXG4gICAgLmFjdGlvbihhc3luYyAoYXJnczogc3RyaW5nW10pID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkUHJvZ3JhbSA9IGF3YWl0IGxvYWQoKTtcbiAgICAgIGF3YWl0IGJ1aWxkUHJvZ3JhbShgJHtwcm9ncmFtLm5hbWUoKX0gJHtuYW1lfWApLnBhcnNlQXN5bmMoYXJncywgeyBmcm9tOiBcInVzZXJcIiB9KTtcbiAgICB9KTtcbn1cblxuLyoqIEJ1aWxkIHRoZSBgZGJ4YCBjb21tYW5kZXIgcHJvZ3JhbSAobm8gc2lkZSBlZmZlY3RzIHVudGlsIHBhcnNlZCkuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQcm9ncmFtKG5hbWU6IHN0cmluZyA9IFBST0dSQU1fTkFNRVNbMF0pOiBDb21tYW5kIHtcbiAgY29uc3QgcHJvZ3JhbSA9IG5ldyBDb21tYW5kKClcbiAgICAubmFtZShuYW1lKVxuICAgIC5kZXNjcmlwdGlvbihcbiAgICAgIFwiRGF0YWJyaWNrcyBkZXZlbG9wZXIgdG9vbHM6IHdvcmtzcGFjZSBsaWZlY3ljbGUsIEFwcEtpdCBlbnYsIGF1dGgsIHR1bm5lbHMsIGFuZCBsb2NhbCBwcm94aWVzXCIsXG4gICAgKVxuICAgIC5lbmFibGVQb3NpdGlvbmFsT3B0aW9ucygpXG4gICAgLnNob3dIZWxwQWZ0ZXJFcnJvcigpXG4gICAgLmhlbHBPcHRpb24oXCItaCwgLS1oZWxwXCIsIGBTaG93ICR7bmFtZX0gaGVscGApO1xuXG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChcImRldlwiKVxuICAgIC5kZXNjcmlwdGlvbihcIkJvb3RzdHJhcCBvciByZXBhaXIgYSBkYngtdG9vbHMgd29ya3NwYWNlLCB0aGVuIGZvcndhcmQgdG8gcHJvamVuXCIpXG4gICAgLmFyZ3VtZW50KFwiW3Byb2plbkFyZ3MuLi5dXCIsIFwicHJvamVuIHRhc2sgYW5kIGFyZ3VtZW50cyAoZS5nLiBzeW5jIC0td2F0Y2gpXCIpXG4gICAgLmFsbG93VW5rbm93bk9wdGlvbigpXG4gICAgLmFsbG93RXhjZXNzQXJndW1lbnRzKClcbiAgICAuaGVscE9wdGlvbihmYWxzZSlcbiAgICAuYWN0aW9uKGFzeW5jIChwcm9qZW5BcmdzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgYXdhaXQgcHJlcGFyZUFuZFJ1blByb2plbihwcm9qZW5BcmdzKTtcbiAgICB9KTtcblxuICBhZGRGb3J3YXJkZWRDb21tYW5kKFxuICAgIHByb2dyYW0sXG4gICAgXCJhcHBraXRcIixcbiAgICBcIkFwcEtpdCBoZWxwZXJzIChlbnY6IHByaW50IHRoZSBlbnZpcm9ubWVudCBhbiBBcHBLaXQgYXBwIHJlc29sdmVzKVwiLFxuICAgIGFzeW5jICgpID0+IChhd2FpdCBpbXBvcnQoXCIuL2FwcGtpdC9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbSxcbiAgKTtcblxuICBhZGRGb3J3YXJkZWRDb21tYW5kKFxuICAgIHByb2dyYW0sXG4gICAgXCJhdXRoXCIsXG4gICAgXCJBdXRoZW50aWNhdGUgdG8gRGF0YWJyaWNrcyBhbmQgbWFuYWdlIE9BdXRoIHRva2Vuc1wiLFxuICAgIGFzeW5jICgpID0+IChhd2FpdCBpbXBvcnQoXCIuL2F1dGgvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwidHVubmVsXCIsXG4gICAgXCJSdW4gYSBwdWJsaWMgcG9ydHIgdHVubmVsIHdpdGggYW4gZW1haWwtT1RQIGdhdGVcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi90dW5uZWwvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwibGFrZWJhc2UtcHJveHlcIixcbiAgICBcIlJ1biB0aGUgTm9kZSBEYXRhYnJpY2tzIExha2ViYXNlIFBvc3RncmVTUUwgcHJveHlcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9sYWtlYmFzZS1wcm94eS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbSxcbiAgKTtcblxuICBhZGRGb3J3YXJkZWRDb21tYW5kKFxuICAgIHByb2dyYW0sXG4gICAgXCJtb2RlbC1nYXRld2F5XCIsXG4gICAgXCJSdW4gdGhlIGZvcmVncm91bmQgQXBwS2l0IERhdGFicmlja3MgbW9kZWwgZ2F0ZXdheVwiLFxuICAgIGFzeW5jICgpID0+IChhd2FpdCBpbXBvcnQoXCIuL21vZGVsLWdhdGV3YXkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwiZ2VuaWVcIixcbiAgICBcIlJ1biBtYW5hZ2VkIEdlbmllIENvZGUgdGhyb3VnaCBhIGxvY2FsIERhdGFicmlja3MgbW9kZWwgZ2F0ZXdheVwiLFxuICAgIGFzeW5jICgpID0+IChhd2FpdCBpbXBvcnQoXCIuL2dlbmllLWNvZGUvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwiZ3JhcGhpdGlcIixcbiAgICBcIlJ1biBHcmFwaGl0aSBvciBtYW5hZ2UgaXRzIGN1cnJlbnQtdXNlciBkZXNrdG9wIHNlcnZpY2VcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9ncmFwaGl0aS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbSxcbiAgKTtcblxuICByZXR1cm4gcHJvZ3JhbTtcbn1cblxuLyoqIEJ1aWxkIHRoZSBjb21wbGV0ZSBjb21tYW5kIHRyZWUgdXNlZCBmb3IgZ2VuZXJhdGVkIGRvY3VtZW50YXRpb24uICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVpbGREb2N1bWVudGF0aW9uUHJvZ3JhbShuYW1lOiBzdHJpbmcgPSBQUk9HUkFNX05BTUVTWzBdKTogUHJvbWlzZTxDb21tYW5kPiB7XG4gIGNvbnN0IHByb2dyYW0gPSBidWlsZFByb2dyYW0obmFtZSk7XG4gIGNvbnN0IGNoaWxkcmVuID0gW1xuICAgIChhd2FpdCBpbXBvcnQoXCIuL2FwcGtpdC9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcImFwcGtpdFwiKSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi9hdXRoL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwiYXV0aFwiKSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi90dW5uZWwvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJ0dW5uZWxcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vbGFrZWJhc2UtcHJveHkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJsYWtlYmFzZS1wcm94eVwiKSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi9tb2RlbC1nYXRld2F5L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwibW9kZWwtZ2F0ZXdheVwiKSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi9nZW5pZS1jb2RlL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwiZ2VuaWVcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vZ3JhcGhpdGkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJncmFwaGl0aVwiKSxcbiAgXTtcbiAgKHByb2dyYW0uY29tbWFuZHMgYXMgQ29tbWFuZFtdKS5zcGxpY2UoMSwgcHJvZ3JhbS5jb21tYW5kcy5sZW5ndGggLSAxKTtcbiAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikgcHJvZ3JhbS5hZGRDb21tYW5kKGNoaWxkKTtcbiAgcmV0dXJuIHByb2dyYW07XG59XG5cbi8qKlxuICogUHJvZ3JhbSBuYW1lIGZvciBoZWxwIG91dHB1dDogd2hpY2hldmVyIGJpbiB0aGUgdXNlciBhY3R1YWxseSB0eXBlZCwgc29cbiAqIGBkYngtdG9vbHMgLS1oZWxwYCBkb2Vzbid0IGRvY3VtZW50IGl0c2VsZiBhcyBgZGJ4YC4gRmFsbHMgYmFjayB0byBgZGJ4YC5cbiAqL1xuZnVuY3Rpb24gcHJvZ3JhbU5hbWUoYXJndjogc3RyaW5nW10pOiBzdHJpbmcge1xuICBjb25zdCBpbnZva2VkID0gYXJndlsxXSA/IGJhc2VuYW1lKGFyZ3ZbMV0pLnJlcGxhY2UoL1xcLig/OltjbV0/W2p0XXMpJC8sIFwiXCIpIDogdW5kZWZpbmVkO1xuICByZXR1cm4gUFJPR1JBTV9OQU1FUy5maW5kKChjYW5kaWRhdGUpID0+IGNhbmRpZGF0ZSA9PT0gaW52b2tlZCkgPz8gUFJPR1JBTV9OQU1FU1swXTtcbn1cblxuLyoqIFBhcnNlIGBhcmd2YCAoYSBgcHJvY2Vzcy5hcmd2YCkgYW5kIHJ1biB0aGUgbWF0Y2hpbmcgY29tbWFuZC4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5DbGkoYXJndjogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYnVpbGRQcm9ncmFtKHByb2dyYW1OYW1lKGFyZ3YpKS5wYXJzZUFzeW5jKGFyZ3YpO1xufVxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Managed `dbx genie` command.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import { Command } from "commander";
|
|
7
|
+
import { type GenieCodeCliOptions } from "./options.ts";
|
|
8
|
+
/** Injectable managed Genie execution boundary for parser tests and embedding. */
|
|
9
|
+
export interface GenieCodeCliDependencies {
|
|
10
|
+
run(input: {
|
|
11
|
+
cwd: string;
|
|
12
|
+
genieArgs: readonly string[];
|
|
13
|
+
options: GenieCodeCliOptions;
|
|
14
|
+
}): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
/** Build the managed Genie Code command without executing it. */
|
|
17
|
+
export declare function buildProgram(name?: string, dependencies?: GenieCodeCliDependencies): Command;
|
|
18
|
+
/** Parse argv and run managed Genie Code. */
|
|
19
|
+
export declare function runCli(argv: string[]): Promise<void>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Managed `dbx genie` command.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import { addArgs, parseArgs } from "@dbx-tools/cli-args";
|
|
7
|
+
import { Command } from "commander";
|
|
8
|
+
import { GenieCodeCliOptionsSchema } from "./options.js";
|
|
9
|
+
import { runGenieCode } from "./runtime.js";
|
|
10
|
+
const DEFAULT_DEPENDENCIES = {
|
|
11
|
+
run: runGenieCode,
|
|
12
|
+
};
|
|
13
|
+
/** Build the managed Genie Code command without executing it. */
|
|
14
|
+
export function buildProgram(name = "dbx genie", dependencies = DEFAULT_DEPENDENCIES) {
|
|
15
|
+
const program = addArgs(new Command()
|
|
16
|
+
.name(name)
|
|
17
|
+
.description("Run Genie Code through an authenticated local Databricks model gateway")
|
|
18
|
+
.argument("[genieArgs...]", "arguments and unknown flags forwarded to Genie Code; wrapper options may be separated with --")
|
|
19
|
+
.allowUnknownOption()
|
|
20
|
+
.passThroughOptions()
|
|
21
|
+
.allowExcessArguments()
|
|
22
|
+
.showHelpAfterError(), GenieCodeCliOptionsSchema);
|
|
23
|
+
program.action(async (genieArgs) => {
|
|
24
|
+
await dependencies.run({
|
|
25
|
+
cwd: process.cwd(),
|
|
26
|
+
genieArgs,
|
|
27
|
+
options: parseArgs(program, GenieCodeCliOptionsSchema),
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
return program;
|
|
31
|
+
}
|
|
32
|
+
/** Parse argv and run managed Genie Code. */
|
|
33
|
+
export async function runCli(argv) {
|
|
34
|
+
await buildProgram().parseAsync(argv);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dlbmllLWNvZGUvY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsT0FBTyxFQUFFLHlCQUF5QixFQUE0QixNQUFNLGNBQWMsQ0FBQztBQUNuRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBVzVDLE1BQU0sb0JBQW9CLEdBQTZCO0lBQ3JELEdBQUcsRUFBRSxZQUFZO0NBQ2xCLENBQUM7QUFFRixpRUFBaUU7QUFDakUsTUFBTSxVQUFVLFlBQVksQ0FDMUIsSUFBSSxHQUFHLFdBQVcsRUFDbEIsZUFBeUMsb0JBQW9CO0lBRTdELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FDckIsSUFBSSxPQUFPLEVBQUU7U0FDVixJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ1YsV0FBVyxDQUFDLHdFQUF3RSxDQUFDO1NBQ3JGLFFBQVEsQ0FDUCxnQkFBZ0IsRUFDaEIsK0ZBQStGLENBQ2hHO1NBQ0Esa0JBQWtCLEVBQUU7U0FDcEIsa0JBQWtCLEVBQUU7U0FDcEIsb0JBQW9CLEVBQUU7U0FDdEIsa0JBQWtCLEVBQUUsRUFDdkIseUJBQXlCLENBQzFCLENBQUM7SUFDRixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxTQUFtQixFQUFFLEVBQUU7UUFDM0MsTUFBTSxZQUFZLENBQUMsR0FBRyxDQUFDO1lBQ3JCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ2xCLFNBQVM7WUFDVCxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sRUFBRSx5QkFBeUIsQ0FBQztTQUN2RCxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFFRCw2Q0FBNkM7QUFDN0MsTUFBTSxDQUFDLEtBQUssVUFBVSxNQUFNLENBQUMsSUFBYztJQUN6QyxNQUFNLFlBQVksRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBNYW5hZ2VkIGBkYnggZ2VuaWVgIGNvbW1hbmQuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB7IGFkZEFyZ3MsIHBhcnNlQXJncyB9IGZyb20gXCJAZGJ4LXRvb2xzL2NsaS1hcmdzXCI7XG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSBcImNvbW1hbmRlclwiO1xuXG5pbXBvcnQgeyBHZW5pZUNvZGVDbGlPcHRpb25zU2NoZW1hLCB0eXBlIEdlbmllQ29kZUNsaU9wdGlvbnMgfSBmcm9tIFwiLi9vcHRpb25zLnRzXCI7XG5pbXBvcnQgeyBydW5HZW5pZUNvZGUgfSBmcm9tIFwiLi9ydW50aW1lLnRzXCI7XG5cbi8qKiBJbmplY3RhYmxlIG1hbmFnZWQgR2VuaWUgZXhlY3V0aW9uIGJvdW5kYXJ5IGZvciBwYXJzZXIgdGVzdHMgYW5kIGVtYmVkZGluZy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2VuaWVDb2RlQ2xpRGVwZW5kZW5jaWVzIHtcbiAgcnVuKGlucHV0OiB7XG4gICAgY3dkOiBzdHJpbmc7XG4gICAgZ2VuaWVBcmdzOiByZWFkb25seSBzdHJpbmdbXTtcbiAgICBvcHRpb25zOiBHZW5pZUNvZGVDbGlPcHRpb25zO1xuICB9KTogUHJvbWlzZTx2b2lkPjtcbn1cblxuY29uc3QgREVGQVVMVF9ERVBFTkRFTkNJRVM6IEdlbmllQ29kZUNsaURlcGVuZGVuY2llcyA9IHtcbiAgcnVuOiBydW5HZW5pZUNvZGUsXG59O1xuXG4vKiogQnVpbGQgdGhlIG1hbmFnZWQgR2VuaWUgQ29kZSBjb21tYW5kIHdpdGhvdXQgZXhlY3V0aW5nIGl0LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUHJvZ3JhbShcbiAgbmFtZSA9IFwiZGJ4IGdlbmllXCIsXG4gIGRlcGVuZGVuY2llczogR2VuaWVDb2RlQ2xpRGVwZW5kZW5jaWVzID0gREVGQVVMVF9ERVBFTkRFTkNJRVMsXG4pOiBDb21tYW5kIHtcbiAgY29uc3QgcHJvZ3JhbSA9IGFkZEFyZ3MoXG4gICAgbmV3IENvbW1hbmQoKVxuICAgICAgLm5hbWUobmFtZSlcbiAgICAgIC5kZXNjcmlwdGlvbihcIlJ1biBHZW5pZSBDb2RlIHRocm91Z2ggYW4gYXV0aGVudGljYXRlZCBsb2NhbCBEYXRhYnJpY2tzIG1vZGVsIGdhdGV3YXlcIilcbiAgICAgIC5hcmd1bWVudChcbiAgICAgICAgXCJbZ2VuaWVBcmdzLi4uXVwiLFxuICAgICAgICBcImFyZ3VtZW50cyBhbmQgdW5rbm93biBmbGFncyBmb3J3YXJkZWQgdG8gR2VuaWUgQ29kZTsgd3JhcHBlciBvcHRpb25zIG1heSBiZSBzZXBhcmF0ZWQgd2l0aCAtLVwiLFxuICAgICAgKVxuICAgICAgLmFsbG93VW5rbm93bk9wdGlvbigpXG4gICAgICAucGFzc1Rocm91Z2hPcHRpb25zKClcbiAgICAgIC5hbGxvd0V4Y2Vzc0FyZ3VtZW50cygpXG4gICAgICAuc2hvd0hlbHBBZnRlckVycm9yKCksXG4gICAgR2VuaWVDb2RlQ2xpT3B0aW9uc1NjaGVtYSxcbiAgKTtcbiAgcHJvZ3JhbS5hY3Rpb24oYXN5bmMgKGdlbmllQXJnczogc3RyaW5nW10pID0+IHtcbiAgICBhd2FpdCBkZXBlbmRlbmNpZXMucnVuKHtcbiAgICAgIGN3ZDogcHJvY2Vzcy5jd2QoKSxcbiAgICAgIGdlbmllQXJncyxcbiAgICAgIG9wdGlvbnM6IHBhcnNlQXJncyhwcm9ncmFtLCBHZW5pZUNvZGVDbGlPcHRpb25zU2NoZW1hKSxcbiAgICB9KTtcbiAgfSk7XG4gIHJldHVybiBwcm9ncmFtO1xufVxuXG4vKiogUGFyc2UgYXJndiBhbmQgcnVuIG1hbmFnZWQgR2VuaWUgQ29kZS4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5DbGkoYXJndjogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYnVpbGRQcm9ncmFtKCkucGFyc2VBc3luYyhhcmd2KTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generate one persistent Genie Code home per exact profile-model pairing.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import { type GenieCodeBaseConfig, type GenieCodeConfig, type GenieCodeProviderOverlay } from "@dbx-tools/shared-genie-code/config";
|
|
7
|
+
/** Provider identifier written to the base and invocation overlay configurations. */
|
|
8
|
+
export declare const GENIE_CODE_GATEWAY_PROVIDER = "dbx_tools_model_gateway";
|
|
9
|
+
/** Inputs used to update a persistent home and create one invocation overlay. */
|
|
10
|
+
export interface WriteGenieCodeConfigOptions {
|
|
11
|
+
bearerToken: string;
|
|
12
|
+
gatewayBaseUrl: string;
|
|
13
|
+
homeDirectory?: string;
|
|
14
|
+
model: string;
|
|
15
|
+
profile: string;
|
|
16
|
+
projectDirectory: string;
|
|
17
|
+
}
|
|
18
|
+
/** Stable persistent home for one exact Databricks profile. */
|
|
19
|
+
export interface GenieCodeProfileHome {
|
|
20
|
+
configPath: string;
|
|
21
|
+
home: string;
|
|
22
|
+
name: string;
|
|
23
|
+
}
|
|
24
|
+
/** Persistent profile home and invocation-specific model-provider overlay. */
|
|
25
|
+
export interface GenieCodeHome extends GenieCodeProfileHome {
|
|
26
|
+
overlayName: string;
|
|
27
|
+
overlayPath: string;
|
|
28
|
+
}
|
|
29
|
+
/** Derive the stable home for one exact Databricks profile. */
|
|
30
|
+
export declare function genieCodeHome(profile: string, homeDirectory?: string): GenieCodeProfileHome;
|
|
31
|
+
/** Render the persistent profile-model configuration. */
|
|
32
|
+
export declare function genieCodeBaseConfig(options: WriteGenieCodeConfigOptions, existingProjects?: Readonly<Record<string, unknown>>): GenieCodeBaseConfig;
|
|
33
|
+
/** Render the invocation-specific guarded provider configuration. */
|
|
34
|
+
export declare function genieCodeProviderOverlay(options: WriteGenieCodeConfigOptions): GenieCodeProviderOverlay;
|
|
35
|
+
/** Render the merged configuration used by validation and tests. */
|
|
36
|
+
export declare function genieCodeConfig(options: WriteGenieCodeConfigOptions): GenieCodeConfig;
|
|
37
|
+
/** Update the persistent base config and write one private invocation overlay. */
|
|
38
|
+
export declare function writeGenieCodeConfig(options: WriteGenieCodeConfigOptions): Promise<GenieCodeHome>;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generate one persistent Genie Code home per exact profile-model pairing.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
7
|
+
import { chmod, mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
|
|
8
|
+
import { homedir } from "node:os";
|
|
9
|
+
import { dirname, join, resolve } from "node:path";
|
|
10
|
+
import { withFileLock } from "@dbx-tools/core/file-lock";
|
|
11
|
+
import { object } from "@dbx-tools/shared-core";
|
|
12
|
+
import { GenieCodeBaseConfigSchema, GenieCodeConfigSchema, GenieCodeProviderOverlaySchema, } from "@dbx-tools/shared-genie-code/config";
|
|
13
|
+
import { genieCodeHomeName } from "@dbx-tools/shared-genie-code/options";
|
|
14
|
+
import { parse, stringify } from "smol-toml";
|
|
15
|
+
/** Provider identifier written to the base and invocation overlay configurations. */
|
|
16
|
+
export const GENIE_CODE_GATEWAY_PROVIDER = "dbx_tools_model_gateway";
|
|
17
|
+
/** Derive the stable home for one exact Databricks profile. */
|
|
18
|
+
export function genieCodeHome(profile, homeDirectory = homedir()) {
|
|
19
|
+
const digest = createHash("sha256").update(profile).digest("hex").slice(0, 12);
|
|
20
|
+
const name = genieCodeHomeName({ profile, digest });
|
|
21
|
+
const home = join(homeDirectory, ".dbx-tools", "genie", "profiles", name);
|
|
22
|
+
return { name, home, configPath: join(home, "config.toml") };
|
|
23
|
+
}
|
|
24
|
+
/** Render the persistent profile-model configuration. */
|
|
25
|
+
export function genieCodeBaseConfig(options, existingProjects = {}) {
|
|
26
|
+
const projects = Object.fromEntries(Object.entries(existingProjects).filter(([, value]) => object.isRecord(value) && value.trust_level === "trusted"));
|
|
27
|
+
return GenieCodeBaseConfigSchema.parse({
|
|
28
|
+
databricks_profile: options.profile,
|
|
29
|
+
projects: {
|
|
30
|
+
...projects,
|
|
31
|
+
[resolve(options.projectDirectory)]: {
|
|
32
|
+
trust_level: "trusted",
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/** Render the invocation-specific guarded provider configuration. */
|
|
38
|
+
export function genieCodeProviderOverlay(options) {
|
|
39
|
+
return GenieCodeProviderOverlaySchema.parse({
|
|
40
|
+
model_provider: GENIE_CODE_GATEWAY_PROVIDER,
|
|
41
|
+
model: options.model,
|
|
42
|
+
model_providers: {
|
|
43
|
+
[GENIE_CODE_GATEWAY_PROVIDER]: {
|
|
44
|
+
name: "dbx-tools model gateway",
|
|
45
|
+
base_url: options.gatewayBaseUrl,
|
|
46
|
+
wire_api: "responses",
|
|
47
|
+
requires_openai_auth: false,
|
|
48
|
+
supports_websockets: false,
|
|
49
|
+
http_headers: {
|
|
50
|
+
Authorization: `Bearer ${options.bearerToken}`,
|
|
51
|
+
Originator: "codex",
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
tui: {
|
|
56
|
+
model_availability_nux: {
|
|
57
|
+
[options.model]: 1,
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/** Render the merged configuration used by validation and tests. */
|
|
63
|
+
export function genieCodeConfig(options) {
|
|
64
|
+
return GenieCodeConfigSchema.parse({
|
|
65
|
+
...genieCodeBaseConfig(options),
|
|
66
|
+
...genieCodeProviderOverlay(options),
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
async function existingProjects(path) {
|
|
70
|
+
try {
|
|
71
|
+
const value = parse(await readFile(path, "utf8"));
|
|
72
|
+
return object.isRecord(value.projects) ? value.projects : {};
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
if (error instanceof Error && "code" in error && error.code === "ENOENT")
|
|
76
|
+
return {};
|
|
77
|
+
throw error;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
async function writePrivateToml(path, value) {
|
|
81
|
+
const staged = join(dirname(path), `.${randomUUID()}.toml`);
|
|
82
|
+
try {
|
|
83
|
+
await writeFile(staged, stringify(value), { mode: 0o600 });
|
|
84
|
+
await chmod(staged, 0o600);
|
|
85
|
+
await rename(staged, path);
|
|
86
|
+
}
|
|
87
|
+
finally {
|
|
88
|
+
await rm(staged, { force: true });
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/** Update the persistent base config and write one private invocation overlay. */
|
|
92
|
+
export async function writeGenieCodeConfig(options) {
|
|
93
|
+
const base = genieCodeHome(options.profile, options.homeDirectory);
|
|
94
|
+
const overlayName = `dbx-${randomUUID().replaceAll("-", "")}`;
|
|
95
|
+
const destination = {
|
|
96
|
+
...base,
|
|
97
|
+
overlayName,
|
|
98
|
+
overlayPath: join(base.home, `${overlayName}.config.toml`),
|
|
99
|
+
};
|
|
100
|
+
await mkdir(destination.home, { recursive: true });
|
|
101
|
+
await withFileLock(["genie-code-config", destination.configPath], async () => {
|
|
102
|
+
const projects = await existingProjects(destination.configPath);
|
|
103
|
+
await writePrivateToml(destination.configPath, genieCodeBaseConfig(options, projects));
|
|
104
|
+
});
|
|
105
|
+
await writePrivateToml(destination.overlayPath, genieCodeProviderOverlay(options));
|
|
106
|
+
return destination;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dlbmllLWNvZGUvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hELE9BQU8sRUFDTCx5QkFBeUIsRUFDekIscUJBQXFCLEVBQ3JCLDhCQUE4QixHQUkvQixNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTdDLHFGQUFxRjtBQUNyRixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyx5QkFBeUIsQ0FBQztBQXlCckUsK0RBQStEO0FBQy9ELE1BQU0sVUFBVSxhQUFhLENBQzNCLE9BQWUsRUFDZixnQkFBd0IsT0FBTyxFQUFFO0lBRWpDLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDL0UsTUFBTSxJ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QUFFLEtBQUssSUFBSSxFQUFFO1FBQzNFLE1BQU0sUUFBUSxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sZ0JBQWdCLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUN6RixDQUFDLENBQUMsQ0FBQztJQUNILE1BQU0sZ0JBQWdCLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ25GLE9BQU8sV0FBVyxDQUFDO0FBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlIG9uZSBwZXJzaXN0ZW50IEdlbmllIENvZGUgaG9tZSBwZXIgZXhhY3QgcHJvZmlsZS1tb2RlbCBwYWlyaW5nLlxuICpcbiAqIEBtb2R1bGVcbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVIYXNoLCByYW5kb21VVUlEIH0gZnJvbSBcIm5vZGU6Y3J5cHRvXCI7XG5pbXBvcnQgeyBjaG1vZCwgbWtkaXIsIHJlYWRGaWxlLCByZW5hbWUsIHJtLCB3cml0ZUZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgaG9tZWRpciB9IGZyb20gXCJub2RlOm9zXCI7XG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luLCByZXNvbHZlIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgd2l0aEZpbGVMb2NrIH0gZnJvbSBcIkBkYngtdG9vbHMvY29yZS9maWxlLWxvY2tcIjtcbmltcG9ydCB7IG9iamVjdCB9IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1jb3JlXCI7XG5pbXBvcnQge1xuICBHZW5pZUNvZGVCYXNlQ29uZmlnU2NoZW1hLFxuICBHZW5pZUNvZGVDb25maWdTY2hlbWEsXG4gIEdlbmllQ29kZVByb3ZpZGVyT3ZlcmxheVNjaGVtYSxcbiAgdHlwZSBHZW5pZUNvZGVCYXNlQ29uZmlnLFxuICB0eXBlIEdlbmllQ29kZUNvbmZpZyxcbiAgdHlwZSBHZW5pZUNvZGVQcm92aWRlck92ZXJsYXksXG59IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1nZW5pZS1jb2RlL2NvbmZpZ1wiO1xuaW1wb3J0IHsgZ2VuaWVDb2RlSG9tZU5hbWUgfSBmcm9tIFwiQGRieC10b29scy9zaGFyZWQtZ2VuaWUtY29kZS9vcHRpb25zXCI7XG5pbXBvcnQgeyBwYXJzZSwgc3RyaW5naWZ5IH0gZnJvbSBcInNtb2wtdG9tbFwiO1xuXG4vKiogUHJvdmlkZXIgaWRlbnRpZmllciB3cml0dGVuIHRvIHRoZSBiYXNlIGFuZCBpbnZvY2F0aW9uIG92ZXJsYXkgY29uZmlndXJhdGlvbnMuICovXG5leHBvcnQgY29uc3QgR0VOSUVfQ09ERV9HQVRFV0FZX1BST1ZJREVSID0gXCJkYnhfdG9vbHNfbW9kZWxfZ2F0ZXdheVwiO1xuXG4vKiogSW5wdXRzIHVzZWQgdG8gdXBkYXRlIGEgcGVyc2lzdGVudCBob21lIGFuZCBjcmVhdGUgb25lIGludm9jYXRpb24gb3ZlcmxheS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV3JpdGVHZW5pZUNvZGVDb25maWdPcHRpb25zIHtcbiAgYmVhcmVyVG9rZW46IHN0cmluZztcbiAgZ2F0ZXdheUJhc2VVcmw6IHN0cmluZztcbiAgaG9tZURpcmVjdG9yeT86IHN0cmluZztcbiAgbW9kZWw6IHN0cmluZztcbiAgcHJvZmlsZTogc3RyaW5nO1xuICBwcm9qZWN0RGlyZWN0b3J5OiBzdHJpbmc7XG59XG5cbi8qKiBTdGFibGUgcGVyc2lzdGVudCBob21lIGZvciBvbmUgZXhhY3QgRGF0YWJyaWNrcyBwcm9maWxlLiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW5pZUNvZGVQcm9maWxlSG9tZSB7XG4gIGNvbmZpZ1BhdGg6IHN0cmluZztcbiAgaG9tZTogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKiBQZXJzaXN0ZW50IHByb2ZpbGUgaG9tZSBhbmQgaW52b2NhdGlvbi1zcGVjaWZpYyBtb2RlbC1wcm92aWRlciBvdmVybGF5LiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW5pZUNvZGVIb21lIGV4dGVuZHMgR2VuaWVDb2RlUHJvZmlsZUhvbWUge1xuICBvdmVybGF5TmFtZTogc3RyaW5nO1xuICBvdmVybGF5UGF0aDogc3RyaW5nO1xufVxuXG4vKiogRGVyaXZlIHRoZSBzdGFibGUgaG9tZSBmb3Igb25lIGV4YWN0IERhdGFicmlja3MgcHJvZmlsZS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5pZUNvZGVIb21lKFxuICBwcm9maWxlOiBzdHJpbmcsXG4gIGhvbWVEaXJlY3Rvcnk6IHN0cmluZyA9IGhvbWVkaXIoKSxcbik6IEdlbmllQ29kZVByb2ZpbGVIb21lIHtcbiAgY29uc3QgZGlnZXN0ID0gY3JlYXRlSGFzaChcInNoYTI1NlwiKS51cGRhdGUocHJvZmlsZSkuZGlnZXN0KFwiaGV4XCIpLnNsaWNlKDAsIDEyKTtcbiAgY29uc3QgbmFtZSA9IGdlbmllQ29kZUhvbWVOYW1lKHsgcHJvZmlsZSwgZGlnZXN0IH0pO1xuICBjb25zdCBob21lID0gam9pbihob21lRGlyZWN0b3J5LCBcIi5kYngtdG9vbHNcIiwgXCJnZW5pZVwiLCBcInByb2ZpbGVzXCIsIG5hbWUpO1xuICByZXR1cm4geyBuYW1lLCBob21lLCBjb25maWdQYXRoOiBqb2luKGhvbWUsIFwiY29uZmlnLnRvbWxcIikgfTtcbn1cblxuLyoqIFJlbmRlciB0aGUgcGVyc2lzdGVudCBwcm9maWxlLW1vZGVsIGNvbmZpZ3VyYXRpb24uICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuaWVDb2RlQmFzZUNvbmZpZyhcbiAgb3B0aW9uczogV3JpdGVHZW5pZUNvZGVDb25maWdPcHRpb25zLFxuICBleGlzdGluZ1Byb2plY3RzOiBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4gPSB7fSxcbik6IEdlbmllQ29kZUJhc2VDb25maWcge1xuICBjb25zdCBwcm9qZWN0cyA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICBPYmplY3QuZW50cmllcyhleGlzdGluZ1Byb2plY3RzKS5maWx0ZXIoXG4gICAgICAoWywgdmFsdWVdKSA9PiBvYmplY3QuaXNSZWNvcmQodmFsdWUpICYmIHZhbHVlLnRydXN0X2xldmVsID09PSBcInRydXN0ZWRcIixcbiAgICApLFxuICApO1xuICByZXR1cm4gR2VuaWVDb2RlQmFzZUNvbmZpZ1NjaGVtYS5wYXJzZSh7XG4gICAgZGF0YWJyaWNrc19wcm9maWxlOiBvcHRpb25zLnByb2ZpbGUsXG4gICAgcHJvamVjdHM6IHtcbiAgICAgIC4uLnByb2plY3RzLFxuICAgICAgW3Jlc29sdmUob3B0aW9ucy5wcm9qZWN0RGlyZWN0b3J5KV06IHtcbiAgICAgICAgdHJ1c3RfbGV2ZWw6IFwidHJ1c3RlZFwiLFxuICAgICAgfSxcbiAgICB9LFxuICB9KTtcbn1cblxuLyoqIFJlbmRlciB0aGUgaW52b2NhdGlvbi1zcGVjaWZpYyBndWFyZGVkIHByb3ZpZGVyIGNvbmZpZ3VyYXRpb24uICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuaWVDb2RlUHJvdmlkZXJPdmVybGF5KFxuICBvcHRpb25zOiBXcml0ZUdlbmllQ29kZUNvbmZpZ09wdGlvbnMsXG4pOiBHZW5pZUNvZGVQcm92aWRlck92ZXJsYXkge1xuICByZXR1cm4gR2VuaWVDb2RlUHJvdmlkZXJPdmVybGF5U2NoZW1hLnBhcnNlKHtcbiAgICBtb2RlbF9wcm92aWRlcjogR0VOSUVfQ09ERV9HQVRFV0FZX1BST1ZJREVSLFxuICAgIG1vZGVsOiBvcHRpb25zLm1vZGVsLFxuICAgIG1vZGVsX3Byb3ZpZGVyczoge1xuICAgICAgW0dFTklFX0NPREVfR0FURVdBWV9QUk9WSURFUl06IHtcbiAgICAgICAgbmFtZTogXCJkYngtdG9vbHMgbW9kZWwgZ2F0ZXdheVwiLFxuICAgICAgICBiYXNlX3VybDogb3B0aW9ucy5nYXRld2F5QmFzZVVybCxcbiAgICAgICAgd2lyZV9hcGk6IFwicmVzcG9uc2VzXCIsXG4gICAgICAgIHJlcXVpcmVzX29wZW5haV9hdXRoOiBmYWxzZSxcbiAgICAgICAgc3VwcG9ydHNfd2Vic29ja2V0czogZmFsc2UsXG4gICAgICAgIGh0dHBfaGVhZGVyczoge1xuICAgICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHtvcHRpb25zLmJlYXJlclRva2VufWAsXG4gICAgICAgICAgT3JpZ2luYXRvcjogXCJjb2RleFwiLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHR1aToge1xuICAgICAgbW9kZWxfYXZhaWxhYmlsaXR5X251eDoge1xuICAgICAgICBbb3B0aW9ucy5tb2RlbF06IDEsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xufVxuXG4vKiogUmVuZGVyIHRoZSBtZXJnZWQgY29uZmlndXJhdGlvbiB1c2VkIGJ5IHZhbGlkYXRpb24gYW5kIHRlc3RzLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlbmllQ29kZUNvbmZpZyhvcHRpb25zOiBXcml0ZUdlbmllQ29kZUNvbmZpZ09wdGlvbnMpOiBHZW5pZUNvZGVDb25maWcge1xuICByZXR1cm4gR2VuaWVDb2RlQ29uZmlnU2NoZW1hLnBhcnNlKHtcbiAgICAuLi5nZW5pZUNvZGVCYXNlQ29uZmlnKG9wdGlvbnMpLFxuICAgIC4uLmdlbmllQ29kZVByb3ZpZGVyT3ZlcmxheShvcHRpb25zKSxcbiAgfSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGV4aXN0aW5nUHJvamVjdHMocGF0aDogc3RyaW5nKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4ge1xuICB0cnkge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyc2UoYXdhaXQgcmVhZEZpbGUocGF0aCwgXCJ1dGY4XCIpKTtcbiAgICByZXR1cm4gb2JqZWN0LmlzUmVjb3JkKHZhbHVlLnByb2plY3RzKSA/IHZhbHVlLnByb2plY3RzIDoge307XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IgJiYgXCJjb2RlXCIgaW4gZXJyb3IgJiYgZXJyb3IuY29kZSA9PT0gXCJFTk9FTlRcIikgcmV0dXJuIHt9O1xuICAgIHRocm93IGVycm9yO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdyaXRlUHJpdmF0ZVRvbWwocGF0aDogc3RyaW5nLCB2YWx1ZTogdW5rbm93bik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBzdGFnZWQgPSBqb2luKGRpcm5hbWUocGF0aCksIGAuJHtyYW5kb21VVUlEKCl9LnRvbWxgKTtcbiAgdHJ5IHtcbiAgICBhd2FpdCB3cml0ZUZpbGUoc3RhZ2VkLCBzdHJpbmdpZnkodmFsdWUpLCB7IG1vZGU6IDBvNjAwIH0pO1xuICAgIGF3YWl0IGNobW9kKHN0YWdlZCwgMG82MDApO1xuICAgIGF3YWl0IHJlbmFtZShzdGFnZWQsIHBhdGgpO1xuICB9IGZpbmFsbHkge1xuICAgIGF3YWl0IHJtKHN0YWdlZCwgeyBmb3JjZTogdHJ1ZSB9KTtcbiAgfVxufVxuXG4vKiogVXBkYXRlIHRoZSBwZXJzaXN0ZW50IGJhc2UgY29uZmlnIGFuZCB3cml0ZSBvbmUgcHJpdmF0ZSBpbnZvY2F0aW9uIG92ZXJsYXkuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gd3JpdGVHZW5pZUNvZGVDb25maWcoXG4gIG9wdGlvbnM6IFdyaXRlR2VuaWVDb2RlQ29uZmlnT3B0aW9ucyxcbik6IFByb21pc2U8R2VuaWVDb2RlSG9tZT4ge1xuICBjb25zdCBiYXNlID0gZ2VuaWVDb2RlSG9tZShvcHRpb25zLnByb2ZpbGUsIG9wdGlvbnMuaG9tZURpcmVjdG9yeSk7XG4gIGNvbnN0IG92ZXJsYXlOYW1lID0gYGRieC0ke3JhbmRvbVVVSUQoKS5yZXBsYWNlQWxsKFwiLVwiLCBcIlwiKX1gO1xuICBjb25zdCBkZXN0aW5hdGlvbiA9IHtcbiAgICAuLi5iYXNlLFxuICAgIG92ZXJsYXlOYW1lLFxuICAgIG92ZXJsYXlQYXRoOiBqb2luKGJhc2UuaG9tZSwgYCR7b3ZlcmxheU5hbWV9LmNvbmZpZy50b21sYCksXG4gIH07XG4gIGF3YWl0IG1rZGlyKGRlc3RpbmF0aW9uLmhvbWUsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICBhd2FpdCB3aXRoRmlsZUxvY2soW1wiZ2VuaWUtY29kZS1jb25maWdcIiwgZGVzdGluYXRpb24uY29uZmlnUGF0aF0sIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwcm9qZWN0cyA9IGF3YWl0IGV4aXN0aW5nUHJvamVjdHMoZGVzdGluYXRpb24uY29uZmlnUGF0aCk7XG4gICAgYXdhaXQgd3JpdGVQcml2YXRlVG9tbChkZXN0aW5hdGlvbi5jb25maWdQYXRoLCBnZW5pZUNvZGVCYXNlQ29uZmlnKG9wdGlvbnMsIHByb2plY3RzKSk7XG4gIH0pO1xuICBhd2FpdCB3cml0ZVByaXZhdGVUb21sKGRlc3RpbmF0aW9uLm92ZXJsYXlQYXRoLCBnZW5pZUNvZGVQcm92aWRlck92ZXJsYXkob3B0aW9ucykpO1xuICByZXR1cm4gZGVzdGluYXRpb247XG59XG4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Install the pinned multi-file Genie Code runtime under dbx-tools ownership.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import { bin } from "@dbx-tools/core";
|
|
7
|
+
interface GenieCodeAsset {
|
|
8
|
+
target: string;
|
|
9
|
+
sha256: string;
|
|
10
|
+
}
|
|
11
|
+
/** Host overrides used by installation tests and embedded callers. */
|
|
12
|
+
export interface InstallGenieCodeOptions {
|
|
13
|
+
homeDirectory?: string;
|
|
14
|
+
platform?: NodeJS.Platform;
|
|
15
|
+
architecture?: NodeJS.Architecture;
|
|
16
|
+
}
|
|
17
|
+
/** Resolve the pinned release asset for one supported host. */
|
|
18
|
+
export declare function genieCodeAsset(platform?: NodeJS.Platform, architecture?: NodeJS.Architecture): GenieCodeAsset;
|
|
19
|
+
/** Install and return the shared Genie Code package entrypoint. */
|
|
20
|
+
export declare function installGenieCode(options?: InstallGenieCodeOptions): Promise<bin.BinContext>;
|
|
21
|
+
export {};
|