@dbx-tools/cli 0.9.60 → 0.9.61

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.
Files changed (39) hide show
  1. package/README.md +64 -17
  2. package/bin/dbx-genie.ts +13 -0
  3. package/index.ts +13 -1
  4. package/lib/bin/dbx-genie.d.ts +2 -0
  5. package/lib/bin/dbx-genie.js +10 -0
  6. package/lib/index.d.ts +13 -1
  7. package/lib/index.js +10 -2
  8. package/lib/src/auth/cli.js +13 -2
  9. package/lib/src/auth/options.d.ts +4 -0
  10. package/lib/src/auth/options.js +5 -1
  11. package/lib/src/cli.js +8 -4
  12. package/lib/src/genie-code/cli.d.ts +19 -0
  13. package/lib/src/genie-code/cli.js +36 -0
  14. package/lib/src/genie-code/config.d.ts +38 -0
  15. package/lib/src/genie-code/config.js +111 -0
  16. package/lib/src/genie-code/install.d.ts +21 -0
  17. package/lib/src/genie-code/install.js +69 -0
  18. package/lib/src/genie-code/options.d.ts +7 -0
  19. package/lib/src/genie-code/options.js +7 -0
  20. package/lib/src/genie-code/runner.d.ts +21 -0
  21. package/lib/src/genie-code/runner.js +90 -0
  22. package/lib/src/genie-code/runtime.d.ts +48 -0
  23. package/lib/src/genie-code/runtime.js +162 -0
  24. package/lib/src/model-gateway/cli.js +3 -3
  25. package/lib/src/model-gateway/server.d.ts +3 -0
  26. package/lib/src/model-gateway/server.js +36 -6
  27. package/lib/tsconfig.tsbuildinfo +1 -1
  28. package/package.json +40 -18
  29. package/src/auth/cli.ts +11 -1
  30. package/src/auth/options.ts +4 -0
  31. package/src/cli.ts +13 -2
  32. package/src/genie-code/cli.ts +58 -0
  33. package/src/genie-code/config.ts +161 -0
  34. package/src/genie-code/install.ts +103 -0
  35. package/src/genie-code/options.ts +14 -0
  36. package/src/genie-code/runner.ts +106 -0
  37. package/src/genie-code/runtime.ts +212 -0
  38. package/src/model-gateway/cli.ts +6 -2
  39. package/src/model-gateway/server.ts +37 -5
package/README.md CHANGED
@@ -24,6 +24,20 @@ dbx model-gateway --profile MY-PROFILE --port 4000
24
24
  Point an OpenAI-compatible client at `http://127.0.0.1:4000/v1`. The generated
25
25
  command reference includes all gateway and desktop-service options.
26
26
 
27
+ ## Run Genie Code
28
+
29
+ ```sh
30
+ dbx genie --profile MY-PROFILE --model gpt
31
+ # Equivalent installed binary:
32
+ dbx-genie --profile MY-PROFILE --model gpt
33
+ ```
34
+
35
+ The command installs the pinned Genie Code package under `~/.dbx-tools`, writes
36
+ one persistent home per exact profile-model pairing, and supervises an
37
+ authenticated loopback model gateway. Unknown flags and extra arguments are
38
+ forwarded to Genie Code. Use `--` only when a wrapper option such as `--model`
39
+ must be sent to Genie instead.
40
+
27
41
  ## Connect To Lakebase
28
42
 
29
43
  ```sh
@@ -72,8 +86,8 @@ bun run barrels
72
86
 
73
87
  See [`@dbx-tools/projen`](../../../../projen) for workspace configuration and
74
88
  generation. Command implementations are available from `@dbx-tools/cli/appkit`,
75
- `/auth`, `/graphiti`, `/lakebase-proxy`, `/model-gateway`, and `/tunnel` when a
76
- Node caller needs to embed one parser.
89
+ `/auth`, `/genie`, `/graphiti`, `/lakebase-proxy`, `/model-gateway`, and
90
+ `/tunnel` when a Node caller needs to embed one parser.
77
91
 
78
92
  <!-- cli-reference:start -->
79
93
 
@@ -89,15 +103,16 @@ dbx [command]
89
103
 
90
104
  #### Commands
91
105
 
92
- | Command | Description |
93
- | ------------------------------- | ----------------------------------------------------------------------- |
94
- | `dev [projenArgs...]` | Bootstrap or repair a dbx-tools workspace, then forward to projen |
95
- | `appkit` | AppKit helpers: resolve the environment an AppKit app would start with. |
96
- | `auth [options]` | Authenticate to Databricks with user or machine OAuth |
97
- | `tunnel [options] [command...]` | Front a command with a public tunnel and passwordless auth |
98
- | `lakebase-proxy [options]` | Run a loopback PostgreSQL proxy for Databricks Lakebase |
99
- | `model-gateway [options]` | Run or manage the AppKit Databricks model gateway |
100
- | `graphiti [options]` | Run Graphiti or manage its current-user desktop service |
106
+ | Command | Description |
107
+ | -------------------------------- | ----------------------------------------------------------------------- |
108
+ | `dev [projenArgs...]` | Bootstrap or repair a dbx-tools workspace, then forward to projen |
109
+ | `appkit` | AppKit helpers: resolve the environment an AppKit app would start with. |
110
+ | `auth [options]` | Authenticate to Databricks with user or machine OAuth |
111
+ | `tunnel [options] [command...]` | Front a command with a public tunnel and passwordless auth |
112
+ | `lakebase-proxy [options]` | Run a loopback PostgreSQL proxy for Databricks Lakebase |
113
+ | `model-gateway [options]` | Run or manage the AppKit Databricks model gateway |
114
+ | `genie [options] [genieArgs...]` | Run Genie Code through an authenticated local Databricks model gateway |
115
+ | `graphiti [options]` | Run Graphiti or manage its current-user desktop service |
101
116
 
102
117
  ### `dbx dev`
103
118
 
@@ -170,6 +185,7 @@ auth [options] [command]
170
185
  | ----------------- | ------------------------------------------------------ |
171
186
  | `login` | Force browser login and return an access token |
172
187
  | `token [options]` | Return a valid access token, logging in when needed |
188
+ | `headers` | Return current Databricks authentication headers |
173
189
  | `profile` | Print the configured or automatically detected profile |
174
190
  | `logout` | Delete the stored credential for the selected profile |
175
191
  | `status` | Show the resolved authentication client configuration |
@@ -192,12 +208,21 @@ auth token [options]
192
208
 
193
209
  #### Options
194
210
 
195
- | Option | Description |
196
- | -------------------- | --------------------------------------------------------------------------- |
197
- | `--force-refresh` | Refresh the token before returning it. (default: false, env: FORCE_REFRESH) |
198
- | `--no-force-refresh` | Disable refresh the token before returning it. |
199
- | `--login` | Log in when credentials are missing or invalid. (default: true, env: LOGIN) |
200
- | `--no-login` | Disable log in when credentials are missing or invalid. |
211
+ | Option | Description |
212
+ | -------------------- | ------------------------------------------------------------------------------------------------------------------ |
213
+ | `--force-refresh` | Refresh the token before returning it. (default: false, env: FORCE_REFRESH) |
214
+ | `--no-force-refresh` | Disable refresh the token before returning it. |
215
+ | `--login` | Log in when credentials are missing or invalid. (default: true, env: LOGIN) |
216
+ | `--no-login` | Disable log in when credentials are missing or invalid. |
217
+ | `--format <value>` | Output structured token metadata or only the access token. (choices: "json", "text", default: "json", env: FORMAT) |
218
+
219
+ ### `dbx auth headers`
220
+
221
+ Return current Databricks authentication headers
222
+
223
+ ```sh
224
+ auth headers
225
+ ```
201
226
 
202
227
  ### `dbx auth profile`
203
228
 
@@ -586,6 +611,28 @@ Stop and remove the service for the current user
586
611
  model-gateway service uninstall
587
612
  ```
588
613
 
614
+ ### `dbx genie`
615
+
616
+ Run Genie Code through an authenticated local Databricks model gateway
617
+
618
+ ```sh
619
+ genie [options] [genieArgs...]
620
+ ```
621
+
622
+ #### Arguments
623
+
624
+ | Argument | Description |
625
+ | ----------- | --------------------------------------------------------------------------------------------- |
626
+ | `genieArgs` | arguments and unknown flags forwarded to Genie Code; wrapper options may be separated with -- |
627
+
628
+ #### Options
629
+
630
+ | Option | Description |
631
+ | -------------------------- | ------------------------------------------------------------------------------------------------------------ |
632
+ | `--profile <value>` | Databricks profile used by the model-gateway sidecar. (env: DATABRICKS_CONFIG_PROFILE) |
633
+ | `--model <value>` | Model name resolved by the model gateway. (default: "gpt", env: MODEL) |
634
+ | `--gateway-listen <value>` | Loopback listener allocated for the model-gateway sidecar. (default: tcp://127.0.0.1:0, env: GATEWAY_LISTEN) |
635
+
589
636
  ### `dbx graphiti`
590
637
 
591
638
  Run Graphiti or manage its current-user desktop service
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env bun
2
+
3
+ import { buildProgram } from "../src/genie-code/cli.ts";
4
+ import {
5
+ RUNNER_OPTIONS_ENV,
6
+ runGenieCodeChild,
7
+ } from "../src/genie-code/runner.ts";
8
+
9
+ if (process.env[RUNNER_OPTIONS_ENV]) {
10
+ await runGenieCodeChild();
11
+ } else {
12
+ await buildProgram("dbx-genie").parseAsync(process.argv);
13
+ }
package/index.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  // Hand edits are overwritten on the next watch; this file is read-only.
4
4
 
5
5
  export const PACKAGE_IDENTIFIER = "@dbx-tools/cli";
6
- export const PACKAGE_VERSION = "0.9.60";
6
+ export const PACKAGE_VERSION = "0.9.61";
7
7
  export * as appkitCli from "./src/appkit/cli.ts";
8
8
  export * as appkitEnvExport from "./src/appkit/env-export.ts";
9
9
  export * as authCli from "./src/auth/cli.ts";
@@ -11,6 +11,12 @@ export * as authOptions from "./src/auth/options.ts";
11
11
  export * as bootstrap from "./src/bootstrap.ts";
12
12
  export * as bun from "./src/bun.ts";
13
13
  export * as cli from "./src/cli.ts";
14
+ export * as genieCodeCli from "./src/genie-code/cli.ts";
15
+ export * as genieCodeConfig from "./src/genie-code/config.ts";
16
+ export * as genieCodeInstall from "./src/genie-code/install.ts";
17
+ export * as genieCodeOptions from "./src/genie-code/options.ts";
18
+ export * as genieCodeRunner from "./src/genie-code/runner.ts";
19
+ export * as genieCodeRuntime from "./src/genie-code/runtime.ts";
14
20
  export * as graphitiCli from "./src/graphiti/cli.ts";
15
21
  export * as graphitiOptions from "./src/graphiti/options.ts";
16
22
  export * as lakebaseProxyCancellation from "./src/lakebase-proxy/cancellation.ts";
@@ -30,6 +36,12 @@ export type { EnvExportFormat, EnvCommandOptions } from "./src/appkit/env-export
30
36
  export { AuthCliOptionsSchema, TokenCommandOptionsSchema } from "./src/auth/options.ts";
31
37
  export type { AuthCliOptions, TokenCommandOptions } from "./src/auth/options.ts";
32
38
  export { resolveBunArgv } from "./src/bun.ts";
39
+ export type { GenieCodeCliDependencies } from "./src/genie-code/cli.ts";
40
+ export { GENIE_CODE_GATEWAY_PROVIDER } from "./src/genie-code/config.ts";
41
+ export type { WriteGenieCodeConfigOptions, GenieCodePairingHome, GenieCodeHome } from "./src/genie-code/config.ts";
42
+ export type { InstallGenieCodeOptions } from "./src/genie-code/install.ts";
43
+ export { RUNNER_OPTIONS_ENV } from "./src/genie-code/runner.ts";
44
+ export type { GenieCodeRuntimeDependencies, RunGenieCodeOptions, PreparedGenieCodeRuntime } from "./src/genie-code/runtime.ts";
33
45
  export type { GraphitiCliDependencies, GraphitiServiceOptions } from "./src/graphiti/cli.ts";
34
46
  export { CancellationRegistry } from "./src/lakebase-proxy/cancellation.ts";
35
47
  export type { CancellationTarget, CancellationForwarder } from "./src/lakebase-proxy/cancellation.ts";
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env bun
2
+ export {};
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env bun
2
+ import { buildProgram } from "../src/genie-code/cli.js";
3
+ import { RUNNER_OPTIONS_ENV, runGenieCodeChild, } from "../src/genie-code/runner.js";
4
+ if (process.env[RUNNER_OPTIONS_ENV]) {
5
+ await runGenieCodeChild();
6
+ }
7
+ else {
8
+ await buildProgram("dbx-genie").parseAsync(process.argv);
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGJ4LWdlbmllLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vYmluL2RieC1nZW5pZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsaUJBQWlCLEdBQ2xCLE1BQU0sNkJBQTZCLENBQUM7QUFFckMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztJQUNwQyxNQUFNLGlCQUFpQixFQUFFLENBQUM7QUFDNUIsQ0FBQztLQUFNLENBQUM7SUFDTixNQUFNLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBidW5cblxuaW1wb3J0IHsgYnVpbGRQcm9ncmFtIH0gZnJvbSBcIi4uL3NyYy9nZW5pZS1jb2RlL2NsaS50c1wiO1xuaW1wb3J0IHtcbiAgUlVOTkVSX09QVElPTlNfRU5WLFxuICBydW5HZW5pZUNvZGVDaGlsZCxcbn0gZnJvbSBcIi4uL3NyYy9nZW5pZS1jb2RlL3J1bm5lci50c1wiO1xuXG5pZiAocHJvY2Vzcy5lbnZbUlVOTkVSX09QVElPTlNfRU5WXSkge1xuICBhd2FpdCBydW5HZW5pZUNvZGVDaGlsZCgpO1xufSBlbHNlIHtcbiAgYXdhaXQgYnVpbGRQcm9ncmFtKFwiZGJ4LWdlbmllXCIpLnBhcnNlQXN5bmMocHJvY2Vzcy5hcmd2KTtcbn1cbiJdfQ==
package/lib/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export declare const PACKAGE_IDENTIFIER = "@dbx-tools/cli";
2
- export declare const PACKAGE_VERSION = "0.9.60";
2
+ export declare const PACKAGE_VERSION = "0.9.61";
3
3
  export * as appkitCli from "./src/appkit/cli.ts";
4
4
  export * as appkitEnvExport from "./src/appkit/env-export.ts";
5
5
  export * as authCli from "./src/auth/cli.ts";
@@ -7,6 +7,12 @@ export * as authOptions from "./src/auth/options.ts";
7
7
  export * as bootstrap from "./src/bootstrap.ts";
8
8
  export * as bun from "./src/bun.ts";
9
9
  export * as cli from "./src/cli.ts";
10
+ export * as genieCodeCli from "./src/genie-code/cli.ts";
11
+ export * as genieCodeConfig from "./src/genie-code/config.ts";
12
+ export * as genieCodeInstall from "./src/genie-code/install.ts";
13
+ export * as genieCodeOptions from "./src/genie-code/options.ts";
14
+ export * as genieCodeRunner from "./src/genie-code/runner.ts";
15
+ export * as genieCodeRuntime from "./src/genie-code/runtime.ts";
10
16
  export * as graphitiCli from "./src/graphiti/cli.ts";
11
17
  export * as graphitiOptions from "./src/graphiti/options.ts";
12
18
  export * as lakebaseProxyCancellation from "./src/lakebase-proxy/cancellation.ts";
@@ -26,6 +32,12 @@ export type { EnvExportFormat, EnvCommandOptions } from "./src/appkit/env-export
26
32
  export { AuthCliOptionsSchema, TokenCommandOptionsSchema } from "./src/auth/options.ts";
27
33
  export type { AuthCliOptions, TokenCommandOptions } from "./src/auth/options.ts";
28
34
  export { resolveBunArgv } from "./src/bun.ts";
35
+ export type { GenieCodeCliDependencies } from "./src/genie-code/cli.ts";
36
+ export { GENIE_CODE_GATEWAY_PROVIDER } from "./src/genie-code/config.ts";
37
+ export type { WriteGenieCodeConfigOptions, GenieCodePairingHome, GenieCodeHome } from "./src/genie-code/config.ts";
38
+ export type { InstallGenieCodeOptions } from "./src/genie-code/install.ts";
39
+ export { RUNNER_OPTIONS_ENV } from "./src/genie-code/runner.ts";
40
+ export type { GenieCodeRuntimeDependencies, RunGenieCodeOptions, PreparedGenieCodeRuntime } from "./src/genie-code/runtime.ts";
29
41
  export type { GraphitiCliDependencies, GraphitiServiceOptions } from "./src/graphiti/cli.ts";
30
42
  export { CancellationRegistry } from "./src/lakebase-proxy/cancellation.ts";
31
43
  export type { CancellationTarget, CancellationForwarder } from "./src/lakebase-proxy/cancellation.ts";
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.60";
5
+ export const PACKAGE_VERSION = "0.9.61";
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUNuRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsUUFBUSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssT0FBTyxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEtBQUssV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxlQUFlLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxLQUFLLHlCQUF5QixNQUFNLHNDQUFzQyxDQUFDO0FBQ2xGLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssb0JBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxLQUFLLHFCQUFxQixNQUFNLGtDQUFrQyxDQUFDO0FBQzFFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssZUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sS0FBSyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssSUFBSSxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEtBQUssU0FBUyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGFBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEtBQUssV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFOUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHNUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLDZCQUE2QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHRU5FUkFURUQgYnkgcHJvamVuIHdhdGNoIC0gRE8gTk9UIEVESVQuXG4vLyBSZWdlbmVyYXRlZCBmcm9tIHRoZSBleHBvcnRpbmcgbW9kdWxlcyBpbiAuL3NyYy5cbi8vIEhhbmQgZWRpdHMgYXJlIG92ZXJ3cml0dGVuIG9uIHRoZSBuZXh0IHdhdGNoOyB0aGlzIGZpbGUgaXMgcmVhZC1vbmx5LlxuXG5leHBvcnQgY29uc3QgUEFDS0FHRV9JREVOVElGSUVSID0gXCJAZGJ4LXRvb2xzL2NsaVwiO1xuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfVkVSU0lPTiA9IFwiMC45LjYwXCI7XG5leHBvcnQgKiBhcyBhcHBraXRDbGkgZnJvbSBcIi4vc3JjL2FwcGtpdC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGFwcGtpdEVudkV4cG9ydCBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCAqIGFzIGF1dGhDbGkgZnJvbSBcIi4vc3JjL2F1dGgvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBhdXRoT3B0aW9ucyBmcm9tIFwiLi9zcmMvYXV0aC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBib290c3RyYXAgZnJvbSBcIi4vc3JjL2Jvb3RzdHJhcC50c1wiO1xuZXhwb3J0ICogYXMgYnVuIGZyb20gXCIuL3NyYy9idW4udHNcIjtcbmV4cG9ydCAqIGFzIGNsaSBmcm9tIFwiLi9zcmMvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBncmFwaGl0aUNsaSBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBncmFwaGl0aU9wdGlvbnMgZnJvbSBcIi4vc3JjL2dyYXBoaXRpL29wdGlvbnMudHNcIjtcbmV4cG9ydCAqIGFzIGxha2ViYXNlUHJveHlDYW5jZWxsYXRpb24gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L2NhbmNlbGxhdGlvbi50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eUNsaSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5T3B0aW9ucyBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eVByb3RvY29sIGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm90b2NvbC50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eVByb3h5IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm94eS50c1wiO1xuZXhwb3J0ICogYXMgbW9kZWxHYXRld2F5Q2xpIGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L2NsaS50c1wiO1xuZXhwb3J0ICogYXMgbW9kZWxHYXRld2F5U2VydmVyIGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L3NlcnZlci50c1wiO1xuZXhwb3J0ICogYXMgcm9vdCBmcm9tIFwiLi9zcmMvcm9vdC50c1wiO1xuZXhwb3J0ICogYXMgdHVubmVsQXBwIGZyb20gXCIuL3NyYy90dW5uZWwvYXBwLnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxDbGkgZnJvbSBcIi4vc3JjL3R1bm5lbC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIHR1bm5lbE9wdGlvbnMgZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxQcm94eSBmcm9tIFwiLi9zcmMvdHVubmVsL3Byb3h5LnRzXCI7XG5leHBvcnQgeyBFbnZFeHBvcnRGb3JtYXRTY2hlbWEsIEVudkNvbW1hbmRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2FwcGtpdC9lbnYtZXhwb3J0LnRzXCI7XG5leHBvcnQgdHlwZSB7IEVudkV4cG9ydEZvcm1hdCwgRW52Q29tbWFuZE9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCB7IEF1dGhDbGlPcHRpb25zU2NoZW1hLCBUb2tlbkNvbW1hbmRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2F1dGgvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBBdXRoQ2xpT3B0aW9ucywgVG9rZW5Db21tYW5kT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9hdXRoL29wdGlvbnMudHNcIjtcbmV4cG9ydCB7IHJlc29sdmVCdW5Bcmd2IH0gZnJvbSBcIi4vc3JjL2J1bi50c1wiO1xuZXhwb3J0IHR5cGUgeyBHcmFwaGl0aUNsaURlcGVuZGVuY2llcywgR3JhcGhpdGlTZXJ2aWNlT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9ncmFwaGl0aS9jbGkudHNcIjtcbmV4cG9ydCB7IENhbmNlbGxhdGlvblJlZ2lzdHJ5IH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L2NhbmNlbGxhdGlvbi50c1wiO1xuZXhwb3J0IHR5cGUgeyBDYW5jZWxsYXRpb25UYXJnZXQsIENhbmNlbGxhdGlvbkZvcndhcmRlciB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jYW5jZWxsYXRpb24udHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VQcm94eUNsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jbGkudHNcIjtcbmV4cG9ydCB7IExha2ViYXNlUHJveHlPcHRpb25zU2NoZW1hLCBMYWtlYmFzZVByb3h5VXJsT3B0aW9uc1NjaGVtYSB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IExha2ViYXNlUHJveHlPcHRpb25zLCBSZXNvbHZlZExha2ViYXNlUHJveHlPcHRpb25zLCBMYWtlYmFzZVByb3h5VXJsT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgeyBTU0xfUkVRVUVTVCwgQ0FOQ0VMX1JFUVVFU1QsIFBST1RPQ09MXzMsIFBvc3RncmVzUHJvdG9jb2xFcnJvciB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm90b2NvbC50c1wiO1xuZXhwb3J0IHR5cGUgeyBTdGFydHVwTWVzc2FnZSwgQ2FuY2VsTWVzc2FnZSwgSW5pdGlhbE1lc3NhZ2UgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJvdG9jb2wudHNcIjtcbmV4cG9ydCB7IExha2ViYXNlUHJveHkgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJveHkudHNcIjtcbmV4cG9ydCB0eXBlIHsgTW9kZWxHYXRld2F5Q2xpRGVwZW5kZW5jaWVzIH0gZnJvbSBcIi4vc3JjL21vZGVsLWdhdGV3YXkvY2xpLnRzXCI7XG5leHBvcnQgeyB3b3Jrc3BhY2VSb290IH0gZnJvbSBcIi4vc3JjL3Jvb3QudHNcIjtcbmV4cG9ydCB7IFR1bm5lbE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvdHVubmVsL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgVHVubmVsT3B0aW9ucywgUmVzb2x2ZWRUdW5uZWxPcHRpb25zIH0gZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IFByb3h5T3B0aW9ucyB9IGZyb20gXCIuL3NyYy90dW5uZWwvcHJveHkudHNcIjtcbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUNuRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsUUFBUSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssT0FBTyxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEtBQUssWUFBWSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sS0FBSyxlQUFlLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxLQUFLLGdCQUFnQixNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssZUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxlQUFlLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxLQUFLLHlCQUF5QixNQUFNLHNDQUFzQyxDQUFDO0FBQ2xGLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssb0JBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxLQUFLLHFCQUFxQixNQUFNLGtDQUFrQyxDQUFDO0FBQzFFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssZUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sS0FBSyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssSUFBSSxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEtBQUssU0FBUyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGFBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEtBQUssV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFOUMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHNUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLDZCQUE2QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHRU5FUkFURUQgYnkgcHJvamVuIHdhdGNoIC0gRE8gTk9UIEVESVQuXG4vLyBSZWdlbmVyYXRlZCBmcm9tIHRoZSBleHBvcnRpbmcgbW9kdWxlcyBpbiAuL3NyYy5cbi8vIEhhbmQgZWRpdHMgYXJlIG92ZXJ3cml0dGVuIG9uIHRoZSBuZXh0IHdhdGNoOyB0aGlzIGZpbGUgaXMgcmVhZC1vbmx5LlxuXG5leHBvcnQgY29uc3QgUEFDS0FHRV9JREVOVElGSUVSID0gXCJAZGJ4LXRvb2xzL2NsaVwiO1xuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfVkVSU0lPTiA9IFwiMC45LjYxXCI7XG5leHBvcnQgKiBhcyBhcHBraXRDbGkgZnJvbSBcIi4vc3JjL2FwcGtpdC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGFwcGtpdEVudkV4cG9ydCBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCAqIGFzIGF1dGhDbGkgZnJvbSBcIi4vc3JjL2F1dGgvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBhdXRoT3B0aW9ucyBmcm9tIFwiLi9zcmMvYXV0aC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBib290c3RyYXAgZnJvbSBcIi4vc3JjL2Jvb3RzdHJhcC50c1wiO1xuZXhwb3J0ICogYXMgYnVuIGZyb20gXCIuL3NyYy9idW4udHNcIjtcbmV4cG9ydCAqIGFzIGNsaSBmcm9tIFwiLi9zcmMvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVDbGkgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVDb25maWcgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY29uZmlnLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVJbnN0YWxsIGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2luc3RhbGwudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZU9wdGlvbnMgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgZ2VuaWVDb2RlUnVubmVyIGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bm5lci50c1wiO1xuZXhwb3J0ICogYXMgZ2VuaWVDb2RlUnVudGltZSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9ydW50aW1lLnRzXCI7XG5leHBvcnQgKiBhcyBncmFwaGl0aUNsaSBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBncmFwaGl0aU9wdGlvbnMgZnJvbSBcIi4vc3JjL2dyYXBoaXRpL29wdGlvbnMudHNcIjtcbmV4cG9ydCAqIGFzIGxha2ViYXNlUHJveHlDYW5jZWxsYXRpb24gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L2NhbmNlbGxhdGlvbi50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eUNsaSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5T3B0aW9ucyBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eVByb3RvY29sIGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm90b2NvbC50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eVByb3h5IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm94eS50c1wiO1xuZXhwb3J0ICogYXMgbW9kZWxHYXRld2F5Q2xpIGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L2NsaS50c1wiO1xuZXhwb3J0ICogYXMgbW9kZWxHYXRld2F5U2VydmVyIGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L3NlcnZlci50c1wiO1xuZXhwb3J0ICogYXMgcm9vdCBmcm9tIFwiLi9zcmMvcm9vdC50c1wiO1xuZXhwb3J0ICogYXMgdHVubmVsQXBwIGZyb20gXCIuL3NyYy90dW5uZWwvYXBwLnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxDbGkgZnJvbSBcIi4vc3JjL3R1bm5lbC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIHR1bm5lbE9wdGlvbnMgZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxQcm94eSBmcm9tIFwiLi9zcmMvdHVubmVsL3Byb3h5LnRzXCI7XG5leHBvcnQgeyBFbnZFeHBvcnRGb3JtYXRTY2hlbWEsIEVudkNvbW1hbmRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2FwcGtpdC9lbnYtZXhwb3J0LnRzXCI7XG5leHBvcnQgdHlwZSB7IEVudkV4cG9ydEZvcm1hdCwgRW52Q29tbWFuZE9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCB7IEF1dGhDbGlPcHRpb25zU2NoZW1hLCBUb2tlbkNvbW1hbmRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2F1dGgvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBBdXRoQ2xpT3B0aW9ucywgVG9rZW5Db21tYW5kT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9hdXRoL29wdGlvbnMudHNcIjtcbmV4cG9ydCB7IHJlc29sdmVCdW5Bcmd2IH0gZnJvbSBcIi4vc3JjL2J1bi50c1wiO1xuZXhwb3J0IHR5cGUgeyBHZW5pZUNvZGVDbGlEZXBlbmRlbmNpZXMgfSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jbGkudHNcIjtcbmV4cG9ydCB7IEdFTklFX0NPREVfR0FURVdBWV9QUk9WSURFUiB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2NvbmZpZy50c1wiO1xuZXhwb3J0IHR5cGUgeyBXcml0ZUdlbmllQ29kZUNvbmZpZ09wdGlvbnMsIEdlbmllQ29kZVBhaXJpbmdIb21lLCBHZW5pZUNvZGVIb21lIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY29uZmlnLnRzXCI7XG5leHBvcnQgdHlwZSB7IEluc3RhbGxHZW5pZUNvZGVPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvaW5zdGFsbC50c1wiO1xuZXhwb3J0IHsgUlVOTkVSX09QVElPTlNfRU5WIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvcnVubmVyLnRzXCI7XG5leHBvcnQgdHlwZSB7IEdlbmllQ29kZVJ1bnRpbWVEZXBlbmRlbmNpZXMsIFJ1bkdlbmllQ29kZU9wdGlvbnMsIFByZXBhcmVkR2VuaWVDb2RlUnVudGltZSB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bnRpbWUudHNcIjtcbmV4cG9ydCB0eXBlIHsgR3JhcGhpdGlDbGlEZXBlbmRlbmNpZXMsIEdyYXBoaXRpU2VydmljZU9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvY2xpLnRzXCI7XG5leHBvcnQgeyBDYW5jZWxsYXRpb25SZWdpc3RyeSB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jYW5jZWxsYXRpb24udHNcIjtcbmV4cG9ydCB0eXBlIHsgQ2FuY2VsbGF0aW9uVGFyZ2V0LCBDYW5jZWxsYXRpb25Gb3J3YXJkZXIgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2FuY2VsbGF0aW9uLnRzXCI7XG5leHBvcnQgdHlwZSB7IExha2ViYXNlUHJveHlDbGlEZXBlbmRlbmNpZXMgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2xpLnRzXCI7XG5leHBvcnQgeyBMYWtlYmFzZVByb3h5T3B0aW9uc1NjaGVtYSwgTGFrZWJhc2VQcm94eVVybE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBMYWtlYmFzZVByb3h5T3B0aW9ucywgUmVzb2x2ZWRMYWtlYmFzZVByb3h5T3B0aW9ucywgTGFrZWJhc2VQcm94eVVybE9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHsgU1NMX1JFUVVFU1QsIENBTkNFTF9SRVFVRVNULCBQUk9UT0NPTF8zLCBQb3N0Z3Jlc1Byb3RvY29sRXJyb3IgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJvdG9jb2wudHNcIjtcbmV4cG9ydCB0eXBlIHsgU3RhcnR1cE1lc3NhZ2UsIENhbmNlbE1lc3NhZ2UsIEluaXRpYWxNZXNzYWdlIH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3RvY29sLnRzXCI7XG5leHBvcnQgeyBMYWtlYmFzZVByb3h5IH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3h5LnRzXCI7XG5leHBvcnQgdHlwZSB7IE1vZGVsR2F0ZXdheUNsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL3NyYy9tb2RlbC1nYXRld2F5L2NsaS50c1wiO1xuZXhwb3J0IHsgd29ya3NwYWNlUm9vdCB9IGZyb20gXCIuL3NyYy9yb290LnRzXCI7XG5leHBvcnQgeyBUdW5uZWxPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IFR1bm5lbE9wdGlvbnMsIFJlc29sdmVkVHVubmVsT3B0aW9ucyB9IGZyb20gXCIuL3NyYy90dW5uZWwvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBQcm94eU9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvdHVubmVsL3Byb3h5LnRzXCI7XG4iXX0=
@@ -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
- dependencies.writeJson(tokenJson(token));
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>;
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL29wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsMkJBQTJCLEdBRTVCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQztLQUNsQyxNQUFNLENBQUM7SUFDTixPQUFPLEVBQUUsMkJBQTJCLENBQUMsS0FBSyxDQUFDLE9BQU87SUFDbEQsSUFBSSxFQUFFLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxJQUFJO0lBQzVDLFNBQVMsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsU0FBUztJQUN0RCxXQUFXLEVBQUUsMkJBQTJCLENBQUMsS0FBSyxDQUFDLFdBQVc7SUFDMUQsVUFBVSxFQUFFLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxVQUFVO0lBQ3hELFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsUUFBUTtJQUNwRCxPQUFPLEVBQUUsMkJBQTJCLENBQUMsS0FBSyxDQUFDLE9BQU87SUFDbEQsUUFBUSxFQUFFLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxRQUFRO0lBQ3BELE1BQU0sRUFBRSxDQUFDO1NBQ04sVUFBVSxDQUNULENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDUixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUNsQixDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUMsS0FBSyxFQUNYLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNsQztTQUNBLE9BQU8sQ0FBQyxFQUFFLENBQUM7U0FDWCxRQUFRLENBQUMsZUFBZSxDQUFDO0lBQzVCLE1BQU0sRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsTUFBTTtJQUNoRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGFBQWE7SUFDcEQsY0FBYyxFQUFFLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxjQUFjO0lBQ3RELGVBQWUsRUFBRSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsZUFBZTtJQUN4RCxtQkFBbUIsRUFBRSxDQUFDO1NBQ25CLE9BQU8sRUFBRTtTQUNULE9BQU8sQ0FBQyxJQUFJLENBQUM7U0FDYixRQUFRLENBQUMsbUVBQW1FLENBQUM7Q0FDakYsQ0FBQztLQUNELE1BQU0sRUFBRTtLQUNSLFFBQVEsQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO0FBRWhFLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLENBQUM7S0FDdkMsTUFBTSxDQUFDO0lBQ04sWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLHdDQUF3QyxDQUFDO0lBQzNGLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxpREFBaUQsQ0FBQztDQUM3RixDQUFDO0tBQ0QsTUFBTSxFQUFFO0tBQ1IsUUFBUSxDQUFDLGtEQUFrRCxDQUFDLENBQUM7QUFNaEUsMkVBQTJFO0FBQzNFLE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxPQUF1QjtJQUMzRCxPQUFPO1FBQ0wsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1FBQ3hCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtRQUNsQixTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVM7UUFDNUIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1FBQ2hDLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtRQUM5QixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7UUFDMUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1FBQ3hCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtRQUMxQixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQzlELE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtRQUN0QixJQUFJLEVBQUU7WUFDSixhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQWE7WUFDcEMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1lBQ3RDLGVBQWUsRUFBRSxPQUFPLENBQUMsZUFBZTtTQUN6QztRQUNELG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxtQkFBbUI7S0FDakQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERhdGFicmlja3MgYXV0aCBjb21tYW5kLWxpbmUgb3B0aW9uIHNjaGVtYXMgYW5kIHJ1bnRpbWUgcHJvamVjdGlvbi5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHtcbiAgQXV0aE9wdGlvbnNTY2hlbWEsXG4gIERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYSxcbiAgdHlwZSBEYXRhYnJpY2tzQXV0aE9wdGlvbnMsXG59IGZyb20gXCJAZGJ4LXRvb2xzL2F1dGgvY29uZmlnXCI7XG5pbXBvcnQgeyBzdHJpbmdVdGlscyB9IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1jb3JlXCI7XG5pbXBvcnQgeyB6IH0gZnJvbSBcInpvZFwiO1xuXG5leHBvcnQgY29uc3QgQXV0aENsaU9wdGlvbnNTY2hlbWEgPSB6XG4gIC5vYmplY3Qoe1xuICAgIHByb2ZpbGU6IERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5wcm9maWxlLFxuICAgIGhvc3Q6IERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5ob3N0LFxuICAgIGFjY291bnRJZDogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLmFjY291bnRJZCxcbiAgICB3b3Jrc3BhY2VJZDogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLndvcmtzcGFjZUlkLFxuICAgIGNvbmZpZ0ZpbGU6IERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5jb25maWdGaWxlLFxuICAgIGNsaWVudElkOiBEYXRhYnJpY2tzQXV0aE9wdGlvbnNTY2hlbWEuc2hhcGUuY2xpZW50SWQsXG4gICAgZ3JvdXBJZDogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLmdyb3VwSWQsXG4gICAgYXV0aFR5cGU6IERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5hdXRoVHlwZSxcbiAgICBzY29wZXM6IHpcbiAgICAgIC5wcmVwcm9jZXNzKFxuICAgICAgICAodmFsdWUpID0+XG4gICAgICAgICAgQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgICAgICAgID8gdmFsdWUuZmxhdE1hcCgoZW50cnkpID0+IHN0cmluZ1V0aWxzLnBhcnNlTGlzdChTdHJpbmcoZW50cnkpKSlcbiAgICAgICAgICAgIDogdmFsdWUsXG4gICAgICAgIHouYXJyYXkoei5zdHJpbmcoKS50cmltKCkubWluKDEpKSxcbiAgICAgIClcbiAgICAgIC5kZWZhdWx0KFtdKVxuICAgICAgLmRlc2NyaWJlKFwiT0F1dGggc2NvcGVzLlwiKSxcbiAgICB0YXJnZXQ6IERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS50YXJnZXQsXG4gICAgbG9ja1RpbWVvdXRNczogQXV0aE9wdGlvbnNTY2hlbWEuc2hhcGUubG9ja1RpbWVvdXRNcyxcbiAgICBsb2dpblRpbWVvdXRNczogQXV0aE9wdGlvbnNTY2hlbWEuc2hhcGUubG9naW5UaW1lb3V0TXMsXG4gICAgcmVmcmVzaEJ1ZmZlck1zOiBBdXRoT3B0aW9uc1NjaGVtYS5zaGFwZS5yZWZyZXNoQnVmZmVyTXMsXG4gICAgcHJlZmVyVXNlclRvTWFjaGluZTogelxuICAgICAgLmJvb2xlYW4oKVxuICAgICAgLmRlZmF1bHQodHJ1ZSlcbiAgICAgIC5kZXNjcmliZShcIlByZWZlciBhIG1hdGNoaW5nIHVzZXIgcHJvZmlsZSBvdmVyIHNlbGVjdGVkIG1hY2hpbmUgY3JlZGVudGlhbHMuXCIpLFxuICB9KVxuICAuc3RyaWN0KClcbiAgLmRlc2NyaWJlKFwiT3B0aW9ucyBzaGFyZWQgYnkgZXZlcnkgRGF0YWJyaWNrcyBhdXRoIGNvbW1hbmQuXCIpO1xuXG5leHBvcnQgY29uc3QgVG9rZW5Db21tYW5kT3B0aW9uc1NjaGVtYSA9IHpcbiAgLm9iamVjdCh7XG4gICAgZm9yY2VSZWZyZXNoOiB6LmJvb2xlYW4oKS5kZWZhdWx0KGZhbHNlKS5kZXNjcmliZShcIlJlZnJlc2ggdGhlIHRva2VuIGJlZm9yZSByZXR1cm5pbmcgaXQuXCIpLFxuICAgIGxvZ2luOiB6LmJvb2xlYW4oKS5kZWZhdWx0KHRydWUpLmRlc2NyaWJlKFwiTG9nIGluIHdoZW4gY3JlZGVudGlhbHMgYXJlIG1pc3Npbmcgb3IgaW52YWxpZC5cIiksXG4gIH0pXG4gIC5zdHJpY3QoKVxuICAuZGVzY3JpYmUoXCJPcHRpb25zIGZvciByZXR1cm5pbmcgYSBEYXRhYnJpY2tzIGFjY2VzcyB0b2tlbi5cIik7XG5cbmV4cG9ydCB0eXBlIEF1dGhDbGlPcHRpb25zID0gei5vdXRwdXQ8dHlwZW9mIEF1dGhDbGlPcHRpb25zU2NoZW1hPjtcblxuZXhwb3J0IHR5cGUgVG9rZW5Db21tYW5kT3B0aW9ucyA9IHoub3V0cHV0PHR5cGVvZiBUb2tlbkNvbW1hbmRPcHRpb25zU2NoZW1hPjtcblxuLyoqIENvbnZlcnQgZmxhdCBDTEkgZmllbGRzIGludG8gdGhlIE5vZGUgYXV0aCBwYWNrYWdlJ3MgbmVzdGVkIG9wdGlvbnMuICovXG5leHBvcnQgZnVuY3Rpb24gZGF0YWJyaWNrc0F1dGhPcHRpb25zKG9wdGlvbnM6IEF1dGhDbGlPcHRpb25zKTogRGF0YWJyaWNrc0F1dGhPcHRpb25zIHtcbiAgcmV0dXJuIHtcbiAgICBwcm9maWxlOiBvcHRpb25zLnByb2ZpbGUsXG4gICAgaG9zdDogb3B0aW9ucy5ob3N0LFxuICAgIGFjY291bnRJZDogb3B0aW9ucy5hY2NvdW50SWQsXG4gICAgd29ya3NwYWNlSWQ6IG9wdGlvbnMud29ya3NwYWNlSWQsXG4gICAgY29uZmlnRmlsZTogb3B0aW9ucy5jb25maWdGaWxlLFxuICAgIGNsaWVudElkOiBvcHRpb25zLmNsaWVudElkLFxuICAgIGdyb3VwSWQ6IG9wdGlvbnMuZ3JvdXBJZCxcbiAgICBhdXRoVHlwZTogb3B0aW9ucy5hdXRoVHlwZSxcbiAgICBzY29wZXM6IG9wdGlvbnMuc2NvcGVzLmxlbmd0aCA+IDAgPyBvcHRpb25zLnNjb3BlcyA6IHVuZGVmaW5lZCxcbiAgICB0YXJnZXQ6IG9wdGlvbnMudGFyZ2V0LFxuICAgIGF1dGg6IHtcbiAgICAgIGxvY2tUaW1lb3V0TXM6IG9wdGlvbnMubG9ja1RpbWVvdXRNcyxcbiAgICAgIGxvZ2luVGltZW91dE1zOiBvcHRpb25zLmxvZ2luVGltZW91dE1zLFxuICAgICAgcmVmcmVzaEJ1ZmZlck1zOiBvcHRpb25zLnJlZnJlc2hCdWZmZXJNcyxcbiAgICB9LFxuICAgIHByZWZlclVzZXJUb01hY2hpbmU6IG9wdGlvbnMucHJlZmVyVXNlclRvTWFjaGluZSxcbiAgfTtcbn1cbiJdfQ==
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 the child
55
- * program owns its own flags, so this wrapper never has to restate them.
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,14 @@ 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
- program.commands.splice(1, program.commands.length - 1, (await import("./appkit/cli.js")).buildProgram("appkit"), (await import("./auth/cli.js")).buildProgram("auth"), (await import("./tunnel/cli.js")).buildProgram("tunnel"), (await import("./lakebase-proxy/cli.js")).buildProgram("lakebase-proxy"), (await import("./model-gateway/cli.js")).buildProgram("model-gateway"), (await import("./graphiti/cli.js")).buildProgram("graphiti"));
102
+ program.commands.splice(1, program.commands.length - 1, (await import("./appkit/cli.js")).buildProgram("appkit"), (await import("./auth/cli.js")).buildProgram("auth"), (await import("./tunnel/cli.js")).buildProgram("tunnel"), (await import("./lakebase-proxy/cli.js")).buildProgram("lakebase-proxy"), (await import("./model-gateway/cli.js")).buildProgram("model-gateway"), (await import("./genie-code/cli.js")).buildProgram("genie"), (await import("./graphiti/cli.js")).buildProgram("graphiti"));
99
103
  return program;
100
104
  }
101
105
  /**
@@ -110,4 +114,4 @@ function programName(argv) {
110
114
  export async function runCli(argv) {
111
115
  await buildProgram(programName(argv)).parseAsync(argv);
112
116
  }
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGFBQWEsR0FDZCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTlFLHNFQUFzRTtBQUN0RSxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQVUsQ0FBQztBQUVwRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxtQkFBbUIsQ0FBQyxVQUFvQixFQUFFLFFBQWlCO0lBQy9FLE1BQU0sSUFBSSxHQUFHLE1BQU0saUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0MsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN6QixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixPQUFPO0lBQ1QsQ0FBQztJQUNELElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDekIsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BCLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMxQixPQUFPO0lBQ1QsQ0FBQztJQUNELG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFD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U0FBUyxDQUFDO0lBQ3pGLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxLQUFLLE9BQU8sQ0FBQyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN0RixDQUFDO0FBRUQsb0VBQW9FO0FBQ3BFLE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUFDLElBQWM7SUFDekMsTUFBTSxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbW1hbmRlciBlbnRyeSBmb3IgYGRieGAgYW5kIGl0cyBgZGJ4LXRvb2xzYCBhbGlhcy5cbiAqXG4gKiBgZGV2YCBib290c3RyYXBzIG9yIHJlcGFpcnMgYSB3b3Jrc3BhY2UgYW5kIGZvcndhcmRzIHRvIHByb2plbi5cbiAqIGBhcHBraXRgIHByb3ZpZGVzIEFwcEtpdCBlbnZpcm9ubWVudCBoZWxwZXJzLlxuICogYGF1dGhgIG1hbmFnZXMgRGF0YWJyaWNrcyBPQXV0aCBhbmQgYWNjZXNzIHRva2Vucy5cbiAqIGB0dW5uZWxgIHJ1bnMgYSBwdWJsaWMgcG9ydHIgdHVubmVsIHdpdGggcGFzc3dvcmRsZXNzIGFjY2VzcyBnYXRpbmcuXG4gKlxuICogRmVhdHVyZSBjb21tYW5kcyBsb2FkIHRoZWlyIHNpYmxpbmcgcGFja2FnZXMgb25seSB3aGVuIHNlbGVjdGVkIGFuZCBmb3J3YXJkXG4gKiB0aGVpciBjb21wbGV0ZSBhcmd1bWVudCBsaXN0LCBpbmNsdWRpbmcgYC0taGVscGAuXG4gKlxuICogQG1vZHVsZVxuICovXG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5pbXBvcnQge1xuICBib290c3RyYXBXb3Jrc3BhY2UsXG4gIGVuc3VyZUVuZ2luZUN1cnJlbnQsXG4gIHJ1bkluaXRpYWxTeW50aCxcbiAgc2VlZFRvb2xjaGFpbixcbn0gZnJvbSBcIi4vYm9vdHN0cmFwLnRzXCI7XG5pbXBvcnQgeyBlbnN1cmVXb3Jrc3BhY2VSZWFkeSwgcnVuQnVuLCBydW5Qcm9qZW4gfSBmcm9tIFwiLi9idW4udHNcIjtcbmltcG9ydCB7IGZpbmRXb3Jrc3BhY2VSb290LCBuZWVkc0Jvb3RzdHJhcCwgbmVlZHNUb29sY2hhaW4gfSBmcm9tIFwiLi9yb290LnRzXCI7XG5cbi8qKiBDb21tYW5kcyB0aGUgYmluIGV4cG9zZXMsIGFuZCB0aGUgbmFtZXMgaGVscCBpcyByZW5kZXJlZCB1bmRlci4gKi9cbmNvbnN0IFBST0dSQU1fTkFNRVMgPSBbXCJkYnhcIiwgXCJkYngtdG9vbHNcIl0gYXMgY29uc3Q7XG5cbi8qKlxuICogUHJlcGFyZSB0aGUgd29ya3NwYWNlIGF0IGByb290YCwgdGhlbiBydW4gcHJvamVuICh2aWEgYnVuKSB3aXRoIGBwcm9qZW5BcmdzYC5cbiAqXG4gKiBUaHJlZSBjYXNlcywgaW4gb3JkZXI6XG4gKiAgIC0gbm8gYC5wcm9qZW5yYy50c2AgYXQgYWxsIC0+IGZ1bGwgYm9vdHN0cmFwIChzY2FmZm9sZCArIGluc3RhbGwgKyBzeW50aCksXG4gKiAgICAgd2hpY2ggYWxyZWFkeSBydW5zIHRoZSBpbml0aWFsIHN5bnRoOyBub3RoaW5nIG1vcmUgdG8gZm9yd2FyZC5cbiAqICAgLSBhIGAucHJvamVucmMudHNgIGJ1dCB0aGUgZW5naW5lL3Rvb2xjaGFpbiBpc24ndCBpbnN0YWxsZWQgKGUuZy4gYSBmcmVzaGx5XG4gKiAgICAgY29waWVkIHByb2plY3Qgd2hvc2UgZ2VuZXJhdGVkIGZpbGVzICsgbWFuaWZlc3RzIGFyZSBnaXRpZ25vcmVkKSAtPiBzZWVkXG4gKiAgICAgdGhlIHRvb2xjaGFpbiwgdGhlbiBydW4gdGhlIElOSVRJQUwgc3ludGggZGlyZWN0bHkgKHRoZSBwcm9qZW4gdGFza3MgdGhlXG4gKiAgICAgYXJncyB3b3VsZCBuYW1lLCBsaWtlIGBzeW5jYCwgZG9uJ3QgZXhpc3QgdW50aWwgYC5wcm9qZW5yYy50c2AgaGFzIHJ1blxuICogICAgIG9uY2UpLCBhbmQgaW5zdGFsbC4gRG9uJ3QgZm9yd2FyZCBgcHJvamVuQXJnc2AgLSB0aGUgc3ludGggaXMgdGhlIHdvcmsuXG4gKiAgIC0gb3RoZXJ3aXNlIChlc3RhYmxpc2hlZCB3b3Jrc3BhY2UpIC0+IGVuc3VyZSBkZXBzLCBicmluZyB0aGUgZW5naW5lIHVwIHRvXG4gKiAgICAgdGhpcyBDTEkncyB2ZXJzaW9uLCB0aGVuIGZvcndhcmQgdG8gcHJvamVuLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlcGFyZUFuZFJ1blByb2plbihwcm9qZW5BcmdzOiBzdHJpbmdbXSwgc3RhcnREaXI/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3Qgcm9vdCA9IGF3YWl0IGZpbmRXb3Jrc3BhY2VSb290KHN0YXJ0RGlyKTtcbiAgaWYgKG5lZWRzQm9vdHN0cmFwKHJvb3QpKSB7XG4gICAgYm9vdHN0cmFwV29ya3NwYWNlKHJvb3QpO1xuICAgIHJldHVybjtcbiAgfVxuICBpZiAobmVlZHNUb29sY2hhaW4ocm9vdCkpIHtcbiAgICBzZWVkVG9vbGNoYWluKHJvb3QpO1xuICAgIHJ1bkluaXRpYWxTeW50aChyb290KTtcbiAgICBydW5CdW4oW1wiaW5zdGFsbFwiXSwgcm9vdCk7XG4gICAgcmV0dXJuO1xuICB9XG4gIGVuc3VyZVdvcmtzcGFjZVJlYWR5KHJvb3QpO1xuICBlbnN1cmVFbmdpbmVDdXJyZW50KHJvb3QpO1xuICBydW5Qcm9qZW4ocHJvamVuQXJncywgcm9vdCk7XG59XG5cbi8qKlxuICogTW91bnQgYG5hbWVgIGFzIGEgY29tbWFuZCB0aGF0IGNhcHR1cmVzIGV2ZXJ5IGZvbGxvd2luZyB0b2tlbiB2ZXJiYXRpbSBhbmRcbiAqIGhhbmRzIGl0IHRvIHRoZSBwcm9ncmFtIGBsb2FkKClgIHJlc29sdmVzLiBgaGVscE9wdGlvbihmYWxzZSlgIGlzIHdoYXQgbGV0c1xuICogYC0taGVscGAgdGhyb3VnaCB0byB0aGUgY2hpbGQgaW5zdGVhZCBvZiBiZWluZyBhbnN3ZXJlZCBoZXJlLCBhbmQgdGhlIGNoaWxkXG4gKiBwcm9ncmFtIG93bnMgaXRzIG93biBmbGFncywgc28gdGhpcyB3cmFwcGVyIG5ldmVyIGhhcyB0byByZXN0YXRlIHRoZW0uXG4gKi9cbmZ1bmN0aW9uIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gIHByb2dyYW06IENvbW1hbmQsXG4gIG5hbWU6IHN0cmluZyxcbiAgZGVzY3JpcHRpb246IHN0cmluZyxcbiAgbG9hZDogKCkgPT4gUHJvbWlzZTwobmFtZTogc3RyaW5nKSA9PiBDb21tYW5kPixcbik6IHZvaWQge1xuICBwcm9ncmFtXG4gICAgLmNvbW1hbmQobmFtZSlcbiAgICAuZGVzY3JpcHRpb24oZGVzY3JpcHRpb24pXG4gICAgLmFyZ3VtZW50KFwiW2FyZ3MuLi5dXCIsIGBhcmd1bWVudHMgZm9yd2FyZGVkIHRvICR7bmFtZX1gKVxuICAgIC5hbGxvd1Vua25vd25PcHRpb24oKVxuICAgIC5hbGxvd0V4Y2Vzc0FyZ3VtZW50cygpXG4gICAgLmhlbHBPcHRpb24oZmFsc2UpXG4gICAgLmFjdGlvbihhc3luYyAoYXJnczogc3RyaW5nW10pID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkUHJvZ3JhbSA9IGF3YWl0IGxvYWQoKTtcbiAgICAgIGF3YWl0IGJ1aWxkUHJvZ3JhbShgJHtwcm9ncmFtLm5hbWUoKX0gJHtuYW1lfWApLnBhcnNlQXN5bmMoYXJncywgeyBmcm9tOiBcInVzZXJcIiB9KTtcbiAgICB9KTtcbn1cblxuLyoqIEJ1aWxkIHRoZSBgZGJ4YCBjb21tYW5kZXIgcHJvZ3JhbSAobm8gc2lkZSBlZmZlY3RzIHVudGlsIHBhcnNlZCkuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQcm9ncmFtKG5hbWU6IHN0cmluZyA9IFBST0dSQU1fTkFNRVNbMF0pOiBDb21tYW5kIHtcbiAgY29uc3QgcHJvZ3JhbSA9IG5ldyBDb21tYW5kKClcbiAgICAubmFtZShuYW1lKVxuICAgIC5kZXNjcmlwdGlvbihcbiAgICAgIFwiRGF0YWJyaWNrcyBkZXZlbG9wZXIgdG9vbHM6IHdvcmtzcGFjZSBsaWZlY3ljbGUsIEFwcEtpdCBlbnYsIGF1dGgsIHR1bm5lbHMsIGFuZCBsb2NhbCBwcm94aWVzXCIsXG4gICAgKVxuICAgIC5zaG93SGVscEFmdGVyRXJyb3IoKVxuICAgIC5oZWxwT3B0aW9uKFwiLWgsIC0taGVscFwiLCBgU2hvdyAke25hbWV9IGhlbHBgKTtcblxuICBwcm9ncmFtXG4gICAgLmNvbW1hbmQoXCJkZXZcIilcbiAgICAuZGVzY3JpcHRpb24oXCJCb290c3RyYXAgb3IgcmVwYWlyIGEgZGJ4LXRvb2xzIHdvcmtzcGFjZSwgdGhlbiBmb3J3YXJkIHRvIHByb2plblwiKVxuICAgIC5hcmd1bWVudChcIltwcm9qZW5BcmdzLi4uXVwiLCBcInByb2plbiB0YXNrIGFuZCBhcmd1bWVudHMgKGUuZy4gc3luYyAtLXdhdGNoKVwiKVxuICAgIC5hbGxvd1Vua25vd25PcHRpb24oKVxuICAgIC5hbGxvd0V4Y2Vzc0FyZ3VtZW50cygpXG4gICAgLmhlbHBPcHRpb24oZmFsc2UpXG4gICAgLmFjdGlvbihhc3luYyAocHJvamVuQXJnczogc3RyaW5nW10pID0+IHtcbiAgICAgIGF3YWl0IHByZXBhcmVBbmRSdW5Qcm9qZW4ocHJvamVuQXJncyk7XG4gICAgfSk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwiYXBwa2l0XCIsXG4gICAgXCJBcHBLaXQgaGVscGVycyAoZW52OiBwcmludCB0aGUgZW52aXJvbm1lbnQgYW4gQXBwS2l0IGFwcCByZXNvbHZlcylcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9hcHBraXQvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwiYXV0aFwiLFxuICAgIFwiQXV0aGVudGljYXRlIHRvIERhdGFicmlja3MgYW5kIG1hbmFnZSBPQXV0aCB0b2tlbnNcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9hdXRoL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcInR1bm5lbFwiLFxuICAgIFwiUnVuIGEgcHVibGljIHBvcnRyIHR1bm5lbCB3aXRoIGFuIGVtYWlsLU9UUCBnYXRlXCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vdHVubmVsL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcImxha2ViYXNlLXByb3h5XCIsXG4gICAgXCJSdW4gdGhlIE5vZGUgRGF0YWJyaWNrcyBMYWtlYmFzZSBQb3N0Z3JlU1FMIHByb3h5XCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vbGFrZWJhc2UtcHJveHkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgICBwcm9ncmFtLFxuICAgIFwibW9kZWwtZ2F0ZXdheVwiLFxuICAgIFwiUnVuIHRoZSBmb3JlZ3JvdW5kIEFwcEtpdCBEYXRhYnJpY2tzIG1vZGVsIGdhdGV3YXlcIixcbiAgICBhc3luYyAoKSA9PiAoYXdhaXQgaW1wb3J0KFwiLi9tb2RlbC1nYXRld2F5L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcImdyYXBoaXRpXCIsXG4gICAgXCJSdW4gR3JhcGhpdGkgb3IgbWFuYWdlIGl0cyBjdXJyZW50LXVzZXIgZGVza3RvcCBzZXJ2aWNlXCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vZ3JhcGhpdGkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0sXG4gICk7XG5cbiAgcmV0dXJuIHByb2dyYW07XG59XG5cbi8qKiBCdWlsZCB0aGUgY29tcGxldGUgY29tbWFuZCB0cmVlIHVzZWQgZm9yIGdlbmVyYXRlZCBkb2N1bWVudGF0aW9uLiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1aWxkRG9jdW1lbnRhdGlvblByb2dyYW0obmFtZTogc3RyaW5nID0gUFJPR1JBTV9OQU1FU1swXSk6IFByb21pc2U8Q29tbWFuZD4ge1xuICBjb25zdCBwcm9ncmFtID0gYnVpbGRQcm9ncmFtKG5hbWUpO1xuICAocHJvZ3JhbS5jb21tYW5kcyBhcyBDb21tYW5kW10pLnNwbGljZShcbiAgICAxLFxuICAgIHByb2dyYW0uY29tbWFuZHMubGVuZ3RoIC0gMSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi9hcHBraXQvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJhcHBraXRcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vYXV0aC9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcImF1dGhcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vdHVubmVsL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwidHVubmVsXCIpLFxuICAgIChhd2FpdCBpbXBvcnQoXCIuL2xha2ViYXNlLXByb3h5L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwibGFrZWJhc2UtcHJveHlcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vbW9kZWwtZ2F0ZXdheS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcIm1vZGVsLWdhdGV3YXlcIiksXG4gICAgKGF3YWl0IGltcG9ydChcIi4vZ3JhcGhpdGkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJncmFwaGl0aVwiKSxcbiAgKTtcbiAgcmV0dXJuIHByb2dyYW07XG59XG5cbi8qKlxuICogUHJvZ3JhbSBuYW1lIGZvciBoZWxwIG91dHB1dDogd2hpY2hldmVyIGJpbiB0aGUgdXNlciBhY3R1YWxseSB0eXBlZCwgc29cbiAqIGBkYngtdG9vbHMgLS1oZWxwYCBkb2Vzbid0IGRvY3VtZW50IGl0c2VsZiBhcyBgZGJ4YC4gRmFsbHMgYmFjayB0byBgZGJ4YC5cbiAqL1xuZnVuY3Rpb24gcHJvZ3JhbU5hbWUoYXJndjogc3RyaW5nW10pOiBzdHJpbmcge1xuICBjb25zdCBpbnZva2VkID0gYXJndlsxXSA/IGJhc2VuYW1lKGFyZ3ZbMV0pLnJlcGxhY2UoL1xcLig/OltjbV0/W2p0XXMpJC8sIFwiXCIpIDogdW5kZWZpbmVkO1xuICByZXR1cm4gUFJPR1JBTV9OQU1FUy5maW5kKChjYW5kaWRhdGUpID0+IGNhbmRpZGF0ZSA9PT0gaW52b2tlZCkgPz8gUFJPR1JBTV9OQU1FU1swXTtcbn1cblxuLyoqIFBhcnNlIGBhcmd2YCAoYSBgcHJvY2Vzcy5hcmd2YCkgYW5kIHJ1biB0aGUgbWF0Y2hpbmcgY29tbWFuZC4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5DbGkoYXJndjogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYnVpbGRQcm9ncmFtKHByb2dyYW1OYW1lKGFyZ3YpKS5wYXJzZUFzeW5jKGFyZ3YpO1xufVxuIl19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGFBQWEsR0FDZCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTlFLHNFQUFzRTtBQUN0RSxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQVUsQ0FBQztBQUVwRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxtQkFBbUIsQ0FBQyxVQUFvQixFQUFFLFFBQWlCO0lBQy9FLE1BQU0sSUFBSSxHQUFHLE1BQU0saUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0MsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN6QixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixPQUFPO0lBQ1QsQ0FBQztJQUNELElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDekIsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BCLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMxQixPQUFPO0lBQ1QsQ0FBQztJQUNELG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFD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QyxVQUFVLENBQUMsQ0FDN0QsQ0FBQztJQUNGLE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLFdBQVcsQ0FBQyxJQUFjO0lBQ2pDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3pGLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxLQUFLLE9BQU8sQ0FBQyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN0RixDQUFDO0FBRUQsb0VBQW9FO0FBQ3BFLE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUFDLElBQWM7SUFDekMsTUFBTSxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbW1hbmRlciBlbnRyeSBmb3IgYGRieGAgYW5kIGl0cyBgZGJ4LXRvb2xzYCBhbGlhcy5cbiAqXG4gKiBgZGV2YCBib290c3RyYXBzIG9yIHJlcGFpcnMgYSB3b3Jrc3BhY2UgYW5kIGZvcndhcmRzIHRvIHByb2plbi5cbiAqIGBhcHBraXRgIHByb3ZpZGVzIEFwcEtpdCBlbnZpcm9ubWVudCBoZWxwZXJzLlxuICogYGF1dGhgIG1hbmFnZXMgRGF0YWJyaWNrcyBPQXV0aCBhbmQgYWNjZXNzIHRva2Vucy5cbiAqIGB0dW5uZWxgIHJ1bnMgYSBwdWJsaWMgcG9ydHIgdHVubmVsIHdpdGggcGFzc3dvcmRsZXNzIGFjY2VzcyBnYXRpbmcuXG4gKlxuICogRmVhdHVyZSBjb21tYW5kcyBsb2FkIHRoZWlyIHNpYmxpbmcgcGFja2FnZXMgb25seSB3aGVuIHNlbGVjdGVkIGFuZCBmb3J3YXJkXG4gKiB0aGVpciBjb21wbGV0ZSBhcmd1bWVudCBsaXN0LCBpbmNsdWRpbmcgYC0taGVscGAuXG4gKlxuICogQG1vZHVsZVxuICovXG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5pbXBvcnQge1xuICBib290c3RyYXBXb3Jrc3BhY2UsXG4gIGVuc3VyZUVuZ2luZUN1cnJlbnQsXG4gIHJ1bkluaXRpYWxTeW50aCxcbiAgc2VlZFRvb2xjaGFpbixcbn0gZnJvbSBcIi4vYm9vdHN0cmFwLnRzXCI7XG5pbXBvcnQgeyBlbnN1cmVXb3Jrc3BhY2VSZWFkeSwgcnVuQnVuLCBydW5Qcm9qZW4gfSBmcm9tIFwiLi9idW4udHNcIjtcbmltcG9ydCB7IGZpbmRXb3Jrc3BhY2VSb290LCBuZWVkc0Jvb3RzdHJhcCwgbmVlZHNUb29sY2hhaW4gfSBmcm9tIFwiLi9yb290LnRzXCI7XG5cbi8qKiBDb21tYW5kcyB0aGUgYmluIGV4cG9zZXMsIGFuZCB0aGUgbmFtZXMgaGVscCBpcyByZW5kZXJlZCB1bmRlci4gKi9cbmNvbnN0IFBST0dSQU1fTkFNRVMgPSBbXCJkYnhcIiwgXCJkYngtdG9vbHNcIl0gYXMgY29uc3Q7XG5cbi8qKlxuICogUHJlcGFyZSB0aGUgd29ya3NwYWNlIGF0IGByb290YCwgdGhlbiBydW4gcHJvamVuICh2aWEgYnVuKSB3aXRoIGBwcm9qZW5BcmdzYC5cbiAqXG4gKiBUaHJlZSBjYXNlcywgaW4gb3JkZXI6XG4gKiAgIC0gbm8gYC5wcm9qZW5yYy50c2AgYXQgYWxsIC0+IGZ1bGwgYm9vdHN0cmFwIChzY2FmZm9sZCArIGluc3RhbGwgKyBzeW50aCksXG4gKiAgICAgd2hpY2ggYWxyZWFkeSBydW5zIHRoZSBpbml0aWFsIHN5bnRoOyBub3RoaW5nIG1vcmUgdG8gZm9yd2FyZC5cbiAqICAgLSBhIGAucHJvamVucmMudHNgIGJ1dCB0aGUgZW5naW5lL3Rvb2xjaGFpbiBpc24ndCBpbnN0YWxsZWQgKGUuZy4gYSBmcmVzaGx5XG4gKiAgICAgY29waWVkIHByb2plY3Qgd2hvc2UgZ2VuZXJhdGVkIGZpbGVzICsgbWFuaWZlc3RzIGFyZSBnaXRpZ25vcmVkKSAtPiBzZWVkXG4gKiAgICAgdGhlIHRvb2xjaGFpbiwgdGhlbiBydW4gdGhlIElOSVRJQUwgc3ludGggZGlyZWN0bHkgKHRoZSBwcm9qZW4gdGFza3MgdGhlXG4gKiAgICAgYXJncyB3b3VsZCBuYW1lLCBsaWtlIGBzeW5jYCwgZG9uJ3QgZXhpc3QgdW50aWwgYC5wcm9qZW5yYy50c2AgaGFzIHJ1blxuICogICAgIG9uY2UpLCBhbmQgaW5zdGFsbC4gRG9uJ3QgZm9yd2FyZCBgcHJvamVuQXJnc2AgLSB0aGUgc3ludGggaXMgdGhlIHdvcmsuXG4gKiAgIC0gb3RoZXJ3aXNlIChlc3RhYmxpc2hlZCB3b3Jrc3BhY2UpIC0+IGVuc3VyZSBkZXBzLCBicmluZyB0aGUgZW5naW5lIHVwIHRvXG4gKiAgICAgdGhpcyBDTEkncyB2ZXJzaW9uLCB0aGVuIGZvcndhcmQgdG8gcHJvamVuLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlcGFyZUFuZFJ1blByb2plbihwcm9qZW5BcmdzOiBzdHJpbmdbXSwgc3RhcnREaXI/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3Qgcm9vdCA9IGF3YWl0IGZpbmRXb3Jrc3BhY2VSb290KHN0YXJ0RGlyKTtcbiAgaWYgKG5lZWRzQm9vdHN0cmFwKHJvb3QpKSB7XG4gICAgYm9vdHN0cmFwV29ya3NwYWNlKHJvb3QpO1xuICAgIHJldHVybjtcbiAgfVxuICBpZiAobmVlZHNUb29sY2hhaW4ocm9vdCkpIHtcbiAgICBzZWVkVG9vbGNoYWluKHJvb3QpO1xuICAgIHJ1bkluaXRpYWxTeW50aChyb290KTtcbiAgICBydW5CdW4oW1wiaW5zdGFsbFwiXSwgcm9vdCk7XG4gICAgcmV0dXJuO1xuICB9XG4gIGVuc3VyZVdvcmtzcGFjZVJlYWR5KHJvb3QpO1xuICBlbnN1cmVFbmdpbmVDdXJyZW50KHJvb3QpO1xuICBydW5Qcm9qZW4ocHJvamVuQXJncywgcm9vdCk7XG59XG5cbi8qKlxuICogTW91bnQgYG5hbWVgIGFzIGEgY29tbWFuZCB0aGF0IGNhcHR1cmVzIGV2ZXJ5IGZvbGxvd2luZyB0b2tlbiB2ZXJiYXRpbSBhbmRcbiAqIGhhbmRzIGl0IHRvIHRoZSBwcm9ncmFtIGBsb2FkKClgIHJlc29sdmVzLiBgaGVscE9wdGlvbihmYWxzZSlgIGlzIHdoYXQgbGV0c1xuICogYC0taGVscGAgdGhyb3VnaCB0byB0aGUgY2hpbGQgaW5zdGVhZCBvZiBiZWluZyBhbnN3ZXJlZCBoZXJlLCBhbmRcbiAqIGBwYXNzVGhyb3VnaE9wdGlvbnMoKWAga2VlcHMgdW5rbm93biBmbGFncyBpbiB0aGF0IHRva2VuIGxpc3Qgc28gdGhlIGNoaWxkXG4gKiBwcm9ncmFtIG93bnMgdGhlbS5cbiAqL1xuZnVuY3Rpb24gYWRkRm9yd2FyZGVkQ29tbWFuZChcbiAgcHJvZ3JhbTogQ29tbWFuZCxcbiAgbmFtZTogc3RyaW5nLFxuICBkZXNjcmlwdGlvbjogc3RyaW5nLFxuICBsb2FkOiAoKSA9PiBQcm9taXNlPChuYW1lOiBzdHJpbmcpID0+IENvbW1hbmQ+LFxuKTogdm9pZCB7XG4gIHByb2dyYW1cbiAgICAuY29tbWFuZChuYW1lKVxuICAgIC5kZXNjcmlwdGlvbihkZXNjcmlwdGlvbilcbiAgICAuYXJndW1lbnQoXCJbYXJncy4uLl1cIiwgYGFyZ3VtZW50cyBmb3J3YXJkZWQgdG8gJHtuYW1lfWApXG4gICAgLmFsbG93VW5rbm93bk9wdGlvbigpXG4gICAgLnBhc3NUaHJvdWdoT3B0aW9ucygpXG4gICAgLmFsbG93RXhjZXNzQXJndW1lbnRzKClcbiAgICAuaGVscE9wdGlvbihmYWxzZSlcbiAgICAuYWN0aW9uKGFzeW5jIChhcmdzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgY29uc3QgYnVpbGRQcm9ncmFtID0gYXdhaXQgbG9hZCgpO1xuICAgICAgYXdhaXQgYnVpbGRQcm9ncmFtKGAke3Byb2dyYW0ubmFtZSgpfSAke25hbWV9YCkucGFyc2VBc3luYyhhcmdzLCB7IGZyb206IFwidXNlclwiIH0pO1xuICAgIH0pO1xufVxuXG4vKiogQnVpbGQgdGhlIGBkYnhgIGNvbW1hbmRlciBwcm9ncmFtIChubyBzaWRlIGVmZmVjdHMgdW50aWwgcGFyc2VkKS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFByb2dyYW0obmFtZTogc3RyaW5nID0gUFJPR1JBTV9OQU1FU1swXSk6IENvbW1hbmQge1xuICBjb25zdCBwcm9ncmFtID0gbmV3IENvbW1hbmQoKVxuICAgIC5uYW1lKG5hbWUpXG4gICAgLmRlc2NyaXB0aW9uKFxuICAgICAgXCJEYXRhYnJpY2tzIGRldmVsb3BlciB0b29sczogd29ya3NwYWNlIGxpZmVjeWNsZSwgQXBwS2l0IGVudiwgYXV0aCwgdHVubmVscywgYW5kIGxvY2FsIHByb3hpZXNcIixcbiAgICApXG4gICAgLmVuYWJsZVBvc2l0aW9uYWxPcHRpb25zKClcbiAgICAuc2hvd0hlbHBBZnRlckVycm9yKClcbiAgICAuaGVscE9wdGlvbihcIi1oLCAtLWhlbHBcIiwgYFNob3cgJHtuYW1lfSBoZWxwYCk7XG5cbiAgcHJvZ3JhbVxuICAgIC5jb21tYW5kKFwiZGV2XCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiQm9vdHN0cmFwIG9yIHJlcGFpciBhIGRieC10b29scyB3b3Jrc3BhY2UsIHRoZW4gZm9yd2FyZCB0byBwcm9qZW5cIilcbiAgICAuYXJndW1lbnQoXCJbcHJvamVuQXJncy4uLl1cIiwgXCJwcm9qZW4gdGFzayBhbmQgYXJndW1lbnRzIChlLmcuIHN5bmMgLS13YXRjaClcIilcbiAgICAuYWxsb3dVbmtub3duT3B0aW9uKClcbiAgICAuYWxsb3dFeGNlc3NBcmd1bWVudHMoKVxuICAgIC5oZWxwT3B0aW9uKGZhbHNlKVxuICAgIC5hY3Rpb24oYXN5bmMgKHByb2plbkFyZ3M6IHN0cmluZ1tdKSA9PiB7XG4gICAgICBhd2FpdCBwcmVwYXJlQW5kUnVuUHJvamVuKHByb2plbkFyZ3MpO1xuICAgIH0pO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcImFwcGtpdFwiLFxuICAgIFwiQXBwS2l0IGhlbHBlcnMgKGVudjogcHJpbnQgdGhlIGVudmlyb25tZW50IGFuIEFwcEtpdCBhcHAgcmVzb2x2ZXMpXCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vYXBwa2l0L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcImF1dGhcIixcbiAgICBcIkF1dGhlbnRpY2F0ZSB0byBEYXRhYnJpY2tzIGFuZCBtYW5hZ2UgT0F1dGggdG9rZW5zXCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vYXV0aC9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbSxcbiAgKTtcblxuICBhZGRGb3J3YXJkZWRDb21tYW5kKFxuICAgIHByb2dyYW0sXG4gICAgXCJ0dW5uZWxcIixcbiAgICBcIlJ1biBhIHB1YmxpYyBwb3J0ciB0dW5uZWwgd2l0aCBhbiBlbWFpbC1PVFAgZ2F0ZVwiLFxuICAgIGFzeW5jICgpID0+IChhd2FpdCBpbXBvcnQoXCIuL3R1bm5lbC9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbSxcbiAgKTtcblxuICBhZGRGb3J3YXJkZWRDb21tYW5kKFxuICAgIHByb2dyYW0sXG4gICAgXCJsYWtlYmFzZS1wcm94eVwiLFxuICAgIFwiUnVuIHRoZSBOb2RlIERhdGFicmlja3MgTGFrZWJhc2UgUG9zdGdyZVNRTCBwcm94eVwiLFxuICAgIGFzeW5jICgpID0+IChhd2FpdCBpbXBvcnQoXCIuL2xha2ViYXNlLXByb3h5L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIGFkZEZvcndhcmRlZENvbW1hbmQoXG4gICAgcHJvZ3JhbSxcbiAgICBcIm1vZGVsLWdhdGV3YXlcIixcbiAgICBcIlJ1biB0aGUgZm9yZWdyb3VuZCBBcHBLaXQgRGF0YWJyaWNrcyBtb2RlbCBnYXRld2F5XCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vbW9kZWwtZ2F0ZXdheS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbSxcbiAgKTtcblxuICBhZGRGb3J3YXJkZWRDb21tYW5kKFxuICAgIHByb2dyYW0sXG4gICAgXCJnZW5pZVwiLFxuICAgIFwiUnVuIG1hbmFnZWQgR2VuaWUgQ29kZSB0aHJvdWdoIGEgbG9jYWwgRGF0YWJyaWNrcyBtb2RlbCBnYXRld2F5XCIsXG4gICAgYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydChcIi4vZ2VuaWUtY29kZS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbSxcbiAgKTtcblxuICBhZGRGb3J3YXJkZWRDb21tYW5kKFxuICAgIHByb2dyYW0sXG4gICAgXCJncmFwaGl0aVwiLFxuICAgIFwiUnVuIEdyYXBoaXRpIG9yIG1hbmFnZSBpdHMgY3VycmVudC11c2VyIGRlc2t0b3Agc2VydmljZVwiLFxuICAgIGFzeW5jICgpID0+IChhd2FpdCBpbXBvcnQoXCIuL2dyYXBoaXRpL2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtLFxuICApO1xuXG4gIHJldHVybiBwcm9ncmFtO1xufVxuXG4vKiogQnVpbGQgdGhlIGNvbXBsZXRlIGNvbW1hbmQgdHJlZSB1c2VkIGZvciBnZW5lcmF0ZWQgZG9jdW1lbnRhdGlvbi4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBidWlsZERvY3VtZW50YXRpb25Qcm9ncmFtKG5hbWU6IHN0cmluZyA9IFBST0dSQU1fTkFNRVNbMF0pOiBQcm9taXNlPENvbW1hbmQ+IHtcbiAgY29uc3QgcHJvZ3JhbSA9IGJ1aWxkUHJvZ3JhbShuYW1lKTtcbiAgKHByb2dyYW0uY29tbWFuZHMgYXMgQ29tbWFuZFtdKS5zcGxpY2UoXG4gICAgMSxcbiAgICBwcm9ncmFtLmNvbW1hbmRzLmxlbmd0aCAtIDEsXG4gICAgKGF3YWl0IGltcG9ydChcIi4vYXBwa2l0L2NsaS50c1wiKSkuYnVpbGRQcm9ncmFtKFwiYXBwa2l0XCIpLFxuICAgIChhd2FpdCBpbXBvcnQoXCIuL2F1dGgvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJhdXRoXCIpLFxuICAgIChhd2FpdCBpbXBvcnQoXCIuL3R1bm5lbC9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcInR1bm5lbFwiKSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi9sYWtlYmFzZS1wcm94eS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcImxha2ViYXNlLXByb3h5XCIpLFxuICAgIChhd2FpdCBpbXBvcnQoXCIuL21vZGVsLWdhdGV3YXkvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJtb2RlbC1nYXRld2F5XCIpLFxuICAgIChhd2FpdCBpbXBvcnQoXCIuL2dlbmllLWNvZGUvY2xpLnRzXCIpKS5idWlsZFByb2dyYW0oXCJnZW5pZVwiKSxcbiAgICAoYXdhaXQgaW1wb3J0KFwiLi9ncmFwaGl0aS9jbGkudHNcIikpLmJ1aWxkUHJvZ3JhbShcImdyYXBoaXRpXCIpLFxuICApO1xuICByZXR1cm4gcHJvZ3JhbTtcbn1cblxuLyoqXG4gKiBQcm9ncmFtIG5hbWUgZm9yIGhlbHAgb3V0cHV0OiB3aGljaGV2ZXIgYmluIHRoZSB1c2VyIGFjdHVhbGx5IHR5cGVkLCBzb1xuICogYGRieC10b29scyAtLWhlbHBgIGRvZXNuJ3QgZG9jdW1lbnQgaXRzZWxmIGFzIGBkYnhgLiBGYWxscyBiYWNrIHRvIGBkYnhgLlxuICovXG5mdW5jdGlvbiBwcm9ncmFtTmFtZShhcmd2OiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gIGNvbnN0IGludm9rZWQgPSBhcmd2WzFdID8gYmFzZW5hbWUoYXJndlsxXSkucmVwbGFjZSgvXFwuKD86W2NtXT9banRdcykkLywgXCJcIikgOiB1bmRlZmluZWQ7XG4gIHJldHVybiBQUk9HUkFNX05BTUVTLmZpbmQoKGNhbmRpZGF0ZSkgPT4gY2FuZGlkYXRlID09PSBpbnZva2VkKSA/PyBQUk9HUkFNX05BTUVTWzBdO1xufVxuXG4vKiogUGFyc2UgYGFyZ3ZgIChhIGBwcm9jZXNzLmFyZ3ZgKSBhbmQgcnVuIHRoZSBtYXRjaGluZyBjb21tYW5kLiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJ1bkNsaShhcmd2OiBzdHJpbmdbXSk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBidWlsZFByb2dyYW0ocHJvZ3JhbU5hbWUoYXJndikpLnBhcnNlQXN5bmMoYXJndik7XG59XG4iXX0=
@@ -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==