@dbx-tools/cli 0.9.138 → 0.9.140

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -24,16 +24,23 @@ The command researches the broader web for brand facts and design direction,
24
24
  then visits matching iOS App Store and Google Play pages for supplemental
25
25
  visual references. It uses the downloaded icons and screenshots during
26
26
  multimodal synthesis without treating the mobile designs as the full brand.
27
+ Plain status lines report web searches, store-page reads, image review, source
28
+ fetches, and synthesis as they happen.
27
29
 
28
- The default `branding/` directory contains:
30
+ By default, the command creates a unique operating-system temporary directory
31
+ and prints its paths when generation completes. The directory contains:
29
32
 
30
33
  - `brand.yaml`, compatible with the shared dbx-tools brand context.
31
34
  - `brand-package.json`, with source provenance and visual-reference metadata.
35
+ - `showcase.html`, a self-contained responsive brand presentation with desktop
36
+ and mobile website mockups.
32
37
  - `references/ios/` and `references/android/`, with the mobile images used for
33
38
  visual research.
34
39
 
35
- Use `--name` or `--website` to disambiguate the prompt, `--output` to select a
36
- different package directory, and `--force` to replace an existing package:
40
+ Use `--name` or `--website` to disambiguate the prompt. Pass `--output` to keep
41
+ the package at a stable path, and `--force` to replace an existing package.
42
+ The showcase is enabled by default; pass `--no-showcase` to export only the
43
+ portable package and research files:
37
44
 
38
45
  ```sh
39
46
  dbx brand "Retail analytics for store operators" \
@@ -352,17 +359,19 @@ dbx brand [options] <prompt>
352
359
 
353
360
  #### Options
354
361
 
355
- | Option | Description |
356
- | --------------------------------- | ------------------------------------------------------------------------------------------------------ |
357
- | `-p, --profile <value>` | Databricks CLI profile. (env: DATABRICKS_CONFIG_PROFILE) |
358
- | `-n, --name <value>` | Known canonical brand name. (env: NAME) |
359
- | `-w, --website <value>` | Known official HTTPS website. (env: WEBSITE) |
360
- | `-o, --output <value>` | Output directory for brand.yaml, provenance, and visual references. (default: "branding", env: OUTPUT) |
361
- | `--model <value>` | Optional Databricks model preference for brand synthesis. (env: MODEL) |
362
- | `--max-sources <value>` | Maximum general web sources to read. (default: 4, env: MAX_SOURCES) |
363
- | `-s, --source-max-length <value>` | Maximum characters retained from each source page. (default: 8000, env: SOURCE_MAX_LENGTH) |
364
- | `-f, --force` | Replace files in an existing output directory. (default: false, env: FORCE) |
365
- | `--no-force` | Disable replace files in an existing output directory. |
362
+ | Option | Description |
363
+ | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
364
+ | `-p, --profile <value>` | Databricks CLI profile. (env: DATABRICKS_CONFIG_PROFILE) |
365
+ | `-n, --name <value>` | Known canonical brand name. (env: NAME) |
366
+ | `-w, --website <value>` | Known official HTTPS website. (env: WEBSITE) |
367
+ | `-o, --output <value>` | Persistent output directory for brand.yaml, showcase, provenance, and visual references. Omit for a temporary directory. (env: OUTPUT) |
368
+ | `--model <value>` | Optional Databricks model preference for brand synthesis. (env: MODEL) |
369
+ | `--max-sources <value>` | Maximum general web sources to read. (default: 4, env: MAX_SOURCES) |
370
+ | `--source-max-length <value>` | Maximum characters retained from each source page. (default: 8000, env: SOURCE_MAX_LENGTH) |
371
+ | `--showcase` | Responsive HTML brand presentation and website mockups. (default: true, env: SHOWCASE) |
372
+ | `--no-showcase` | Disable responsive html brand presentation and website mockups. |
373
+ | `-f, --force` | Replace files in an existing output directory. (default: false, env: FORCE) |
374
+ | `--no-force` | Disable replace files in an existing output directory. |
366
375
 
367
376
  ### `dbx tunnel`
368
377
 
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.138";
6
+ export const PACKAGE_VERSION = "0.9.140";
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";
@@ -13,6 +13,7 @@ export * as brandCli from "./src/brand/cli.ts";
13
13
  export * as brandExport from "./src/brand/export.ts";
14
14
  export * as brandOptions from "./src/brand/options.ts";
15
15
  export * as brandRun from "./src/brand/run.ts";
16
+ export * as brandShowcase from "./src/brand/showcase.ts";
16
17
  export * as bun from "./src/bun.ts";
17
18
  export * as cli from "./src/cli.ts";
18
19
  export * as genieCodeCli from "./src/genie-code/cli.ts";
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.138";
2
+ export declare const PACKAGE_VERSION = "0.9.140";
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";
@@ -9,6 +9,7 @@ export * as brandCli from "./src/brand/cli.ts";
9
9
  export * as brandExport from "./src/brand/export.ts";
10
10
  export * as brandOptions from "./src/brand/options.ts";
11
11
  export * as brandRun from "./src/brand/run.ts";
12
+ export * as brandShowcase from "./src/brand/showcase.ts";
12
13
  export * as bun from "./src/bun.ts";
13
14
  export * as cli from "./src/cli.ts";
14
15
  export * as genieCodeCli from "./src/genie-code/cli.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.138";
5
+ export const PACKAGE_VERSION = "0.9.140";
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";
@@ -12,6 +12,7 @@ export * as brandCli from "./src/brand/cli.js";
12
12
  export * as brandExport from "./src/brand/export.js";
13
13
  export * as brandOptions from "./src/brand/options.js";
14
14
  export * as brandRun from "./src/brand/run.js";
15
+ export * as brandShowcase from "./src/brand/showcase.js";
15
16
  export * as bun from "./src/bun.js";
16
17
  export * as cli from "./src/cli.js";
17
18
  export * as genieCodeCli from "./src/genie-code/cli.js";
@@ -47,4 +48,4 @@ export { SSL_REQUEST, CANCEL_REQUEST, PROTOCOL_3, PostgresProtocolError } from "
47
48
  export { LakebaseProxy } from "./src/lakebase-proxy/proxy.js";
48
49
  export { workspaceRoot } from "./src/root.js";
49
50
  export { TunnelOptionsSchema } from "./src/tunnel/options.js";
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUNuRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssT0FBTyxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEtBQUssUUFBUSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFlBQVksTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEtBQUssUUFBUSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxHQUFHLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sS0FBSyxHQUFHLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sS0FBSyxZQUFZLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssZ0JBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLGdCQUFnQixNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxlQUFlLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxLQUFLLGdCQUFnQixNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLGVBQWUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEtBQUsseUJBQXlCLE1BQU0sc0NBQXNDLENBQUM7QUFDbEYsT0FBTyxLQUFLLGdCQUFnQixNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxvQkFBb0IsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEtBQUsscUJBQXFCLE1BQU0sa0NBQWtDLENBQUM7QUFDMUUsT0FBTyxLQUFLLGtCQUFrQixNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxlQUFlLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxLQUFLLGtCQUFrQixNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxJQUFJLE1BQU0sZUFBZSxDQUFDO0FBQ3RDLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLFNBQVMsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEtBQUssYUFBYSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFNUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJeEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUd6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUdoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUscUJBQXFCLEVBQUUsNkJBQTZCLEVBQUUsdUJBQXVCLEVBQUUsMEJBQTBCLEVBQUUsOEJBQThCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUzUCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUc1RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU1RyxPQUFPLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVsSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdFTkVSQVRFRCBieSBwcm9qZW4gd2F0Y2ggLSBETyBOT1QgRURJVC5cbi8vIFJlZ2VuZXJhdGVkIGZyb20gdGhlIGV4cG9ydGluZyBtb2R1bGVzIGluIC4vc3JjLlxuLy8gSGFuZCBlZGl0cyBhcmUgb3ZlcndyaXR0ZW4gb24gdGhlIG5leHQgd2F0Y2g7IHRoaXMgZmlsZSBpcyByZWFkLW9ubHkuXG5cbmV4cG9ydCBjb25zdCBQQUNLQUdFX0lERU5USUZJRVIgPSBcIkBkYngtdG9vbHMvY2xpXCI7XG5leHBvcnQgY29uc3QgUEFDS0FHRV9WRVJTSU9OID0gXCIwLjkuMTM4XCI7XG5leHBvcnQgKiBhcyBhcHBraXRDbGkgZnJvbSBcIi4vc3JjL2FwcGtpdC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGFwcGtpdEVudkV4cG9ydCBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCAqIGFzIGF1dGhDbGkgZnJvbSBcIi4vc3JjL2F1dGgvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBhdXRoT3B0aW9ucyBmcm9tIFwiLi9zcmMvYXV0aC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBib290c3RyYXAgZnJvbSBcIi4vc3JjL2Jvb3RzdHJhcC50c1wiO1xuZXhwb3J0ICogYXMgYnJhbmRDbGkgZnJvbSBcIi4vc3JjL2JyYW5kL2NsaS50c1wiO1xuZXhwb3J0ICogYXMgYnJhbmRFeHBvcnQgZnJvbSBcIi4vc3JjL2JyYW5kL2V4cG9ydC50c1wiO1xuZXhwb3J0ICogYXMgYnJhbmRPcHRpb25zIGZyb20gXCIuL3NyYy9icmFuZC9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBicmFuZFJ1biBmcm9tIFwiLi9zcmMvYnJhbmQvcnVuLnRzXCI7XG5leHBvcnQgKiBhcyBidW4gZnJvbSBcIi4vc3JjL2J1bi50c1wiO1xuZXhwb3J0ICogYXMgY2xpIGZyb20gXCIuL3NyYy9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZUNsaSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZUNvbmZpZyBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jb25maWcudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZUluc3RhbGwgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvaW5zdGFsbC50c1wiO1xuZXhwb3J0ICogYXMgZ2VuaWVDb2RlT3B0aW9ucyBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVSdW5uZXIgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvcnVubmVyLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVSdW50aW1lIGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bnRpbWUudHNcIjtcbmV4cG9ydCAqIGFzIGdyYXBoaXRpQ2xpIGZyb20gXCIuL3NyYy9ncmFwaGl0aS9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGdyYXBoaXRpT3B0aW9ucyBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eUNhbmNlbGxhdGlvbiBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2FuY2VsbGF0aW9uLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5Q2xpIGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGxha2ViYXNlUHJveHlPcHRpb25zIGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5UHJvdG9jb2wgZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3RvY29sLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5UHJveHkgZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3h5LnRzXCI7XG5leHBvcnQgKiBhcyBtb2RlbEdhdGV3YXlDbGkgZnJvbSBcIi4vc3JjL21vZGVsLWdhdGV3YXkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBtb2RlbEdhdGV3YXlTZXJ2ZXIgZnJvbSBcIi4vc3JjL21vZGVsLWdhdGV3YXkvc2VydmVyLnRzXCI7XG5leHBvcnQgKiBhcyByb290IGZyb20gXCIuL3NyYy9yb290LnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxBcHAgZnJvbSBcIi4vc3JjL3R1bm5lbC9hcHAudHNcIjtcbmV4cG9ydCAqIGFzIHR1bm5lbENsaSBmcm9tIFwiLi9zcmMvdHVubmVsL2NsaS50c1wiO1xuZXhwb3J0ICogYXMgdHVubmVsT3B0aW9ucyBmcm9tIFwiLi9zcmMvdHVubmVsL29wdGlvbnMudHNcIjtcbmV4cG9ydCAqIGFzIHR1bm5lbFByb3h5IGZyb20gXCIuL3NyYy90dW5uZWwvcHJveHkudHNcIjtcbmV4cG9ydCB7IEVudkV4cG9ydEZvcm1hdFNjaGVtYSwgRW52Q29tbWFuZE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCB0eXBlIHsgRW52RXhwb3J0Rm9ybWF0LCBFbnZDb21tYW5kT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9hcHBraXQvZW52LWV4cG9ydC50c1wiO1xuZXhwb3J0IHsgQXV0aENsaU9wdGlvbnNTY2hlbWEsIFRva2VuQ29tbWFuZE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvYXV0aC9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IEF1dGhDbGlPcHRpb25zLCBUb2tlbkNvbW1hbmRPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2F1dGgvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBCcmFuZENsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL3NyYy9icmFuZC9jbGkudHNcIjtcbmV4cG9ydCB0eXBlIHsgV3JpdGVCcmFuZFBhY2thZ2VPcHRpb25zLCBXcml0dGVuQnJhbmRQYWNrYWdlIH0gZnJvbSBcIi4vc3JjL2JyYW5kL2V4cG9ydC50c1wiO1xuZXhwb3J0IHsgQnJhbmRFeHBvcnRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2JyYW5kL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgQnJhbmRFeHBvcnRPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2JyYW5kL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgQnJhbmRFeHBvcnRDYWxsYmFja3MgfSBmcm9tIFwiLi9zcmMvYnJhbmQvcnVuLnRzXCI7XG5leHBvcnQgeyByZXNvbHZlQnVuQXJndiB9IGZyb20gXCIuL3NyYy9idW4udHNcIjtcbmV4cG9ydCB0eXBlIHsgR2VuaWVDb2RlQ2xpRGVwZW5kZW5jaWVzIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY2xpLnRzXCI7XG5leHBvcnQgeyBHRU5JRV9DT0RFX0dBVEVXQVlfUFJPVklERVIgfSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jb25maWcudHNcIjtcbmV4cG9ydCB0eXBlIHsgV3JpdGVHZW5pZUNvZGVDb25maWdPcHRpb25zLCBHZW5pZUNvZGVQcm9maWxlSG9tZSwgR2VuaWVDb2RlSG9tZSB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2NvbmZpZy50c1wiO1xuZXhwb3J0IHR5cGUgeyBJbnN0YWxsR2VuaWVDb2RlT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2luc3RhbGwudHNcIjtcbmV4cG9ydCB7IFJVTk5FUl9PUFRJT05TX0VOViB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bm5lci50c1wiO1xuZXhwb3J0IHR5cGUgeyBHZW5pZUNvZGVSdW50aW1lRGVwZW5kZW5jaWVzLCBSdW5HZW5pZUNvZGVPcHRpb25zLCBQcmVwYXJlZEdlbmllQ29kZVJ1bnRpbWUgfSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9ydW50aW1lLnRzXCI7XG5leHBvcnQgdHlwZSB7IEdyYXBoaXRpQ2xpRGVwZW5kZW5jaWVzLCBHcmFwaGl0aVNlcnZpY2VPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2dyYXBoaXRpL2NsaS50c1wiO1xuZXhwb3J0IHsgR1JBUEhJVElfREVGQVVMVFMsIEdyYXBoaXRpQ2xpT3B0aW9uc1NjaGVtYSwgR3JhcGhpdGlPcHRpb25zU2NoZW1hLCBSZXNvbHZlZEdyYXBoaXRpT3B0aW9uc1NjaGVtYSwgZ3JhcGhpdGlPcHRpb25PdmVycmlkZXMsIGdyYXBoaXRpT3B0aW9uc0Vudmlyb25tZW50LCBncmFwaGl0aU9wdGlvbnNGcm9tRW52aXJvbm1lbnQsIHJlc29sdmVHcmFwaGl0aU9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBHcmFwaGl0aU9wdGlvbnMsIFJlc29sdmVkR3JhcGhpdGlPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2dyYXBoaXRpL29wdGlvbnMudHNcIjtcbmV4cG9ydCB7IENhbmNlbGxhdGlvblJlZ2lzdHJ5IH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L2NhbmNlbGxhdGlvbi50c1wiO1xuZXhwb3J0IHR5cGUgeyBDYW5jZWxsYXRpb25UYXJnZXQsIENhbmNlbGxhdGlvbkZvcndhcmRlciB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jYW5jZWxsYXRpb24udHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VQcm94eUNsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jbGkudHNcIjtcbmV4cG9ydCB7IExha2ViYXNlUHJveHlPcHRpb25zU2NoZW1hLCBMYWtlYmFzZVByb3h5VXJsT3B0aW9uc1NjaGVtYSB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IExha2ViYXNlUHJveHlPcHRpb25zLCBSZXNvbHZlZExha2ViYXNlUHJveHlPcHRpb25zLCBMYWtlYmFzZVByb3h5VXJsT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgeyBTU0xfUkVRVUVTVCwgQ0FOQ0VMX1JFUVVFU1QsIFBST1RPQ09MXzMsIFBvc3RncmVzUHJvdG9jb2xFcnJvciB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm90b2NvbC50c1wiO1xuZXhwb3J0IHR5cGUgeyBTdGFydHVwTWVzc2FnZSwgQ2FuY2VsTWVzc2FnZSwgSW5pdGlhbE1lc3NhZ2UgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJvdG9jb2wudHNcIjtcbmV4cG9ydCB7IExha2ViYXNlUHJveHkgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJveHkudHNcIjtcbmV4cG9ydCB0eXBlIHsgTW9kZWxHYXRld2F5Q2xpRGVwZW5kZW5jaWVzIH0gZnJvbSBcIi4vc3JjL21vZGVsLWdhdGV3YXkvY2xpLnRzXCI7XG5leHBvcnQgeyB3b3Jrc3BhY2VSb290IH0gZnJvbSBcIi4vc3JjL3Jvb3QudHNcIjtcbmV4cG9ydCB7IFR1bm5lbE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvdHVubmVsL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgVHVubmVsT3B0aW9ucywgUmVzb2x2ZWRUdW5uZWxPcHRpb25zIH0gZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IFByb3h5T3B0aW9ucyB9IGZyb20gXCIuL3NyYy90dW5uZWwvcHJveHkudHNcIjtcbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUNuRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssT0FBTyxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEtBQUssUUFBUSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFlBQVksTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEtBQUssUUFBUSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxhQUFhLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxLQUFLLEdBQUcsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxLQUFLLEdBQUcsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxLQUFLLFlBQVksTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEtBQUssZUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssZ0JBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssZ0JBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLFdBQVcsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEtBQUssZUFBZSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sS0FBSyx5QkFBeUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUNsRixPQUFPLEtBQUssZ0JBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLG9CQUFvQixNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sS0FBSyxxQkFBcUIsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEtBQUssa0JBQWtCLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxLQUFLLGVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssa0JBQWtCLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxLQUFLLFNBQVMsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEtBQUssU0FBUyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxhQUFhLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxLQUFLLFdBQVcsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU1RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUl4RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTlDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR3pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBRSxxQkFBcUIsRUFBRSw2QkFBNkIsRUFBRSx1QkFBdUIsRUFBRSwwQkFBMEIsRUFBRSw4QkFBOEIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTNQLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRzVFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTVHLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRWxILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR0VORVJBVEVEIGJ5IHByb2plbiB3YXRjaCAtIERPIE5PVCBFRElULlxuLy8gUmVnZW5lcmF0ZWQgZnJvbSB0aGUgZXhwb3J0aW5nIG1vZHVsZXMgaW4gLi9zcmMuXG4vLyBIYW5kIGVkaXRzIGFyZSBvdmVyd3JpdHRlbiBvbiB0aGUgbmV4dCB3YXRjaDsgdGhpcyBmaWxlIGlzIHJlYWQtb25seS5cblxuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfSURFTlRJRklFUiA9IFwiQGRieC10b29scy9jbGlcIjtcbmV4cG9ydCBjb25zdCBQQUNLQUdFX1ZFUlNJT04gPSBcIjAuOS4xNDBcIjtcbmV4cG9ydCAqIGFzIGFwcGtpdENsaSBmcm9tIFwiLi9zcmMvYXBwa2l0L2NsaS50c1wiO1xuZXhwb3J0ICogYXMgYXBwa2l0RW52RXhwb3J0IGZyb20gXCIuL3NyYy9hcHBraXQvZW52LWV4cG9ydC50c1wiO1xuZXhwb3J0ICogYXMgYXV0aENsaSBmcm9tIFwiLi9zcmMvYXV0aC9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGF1dGhPcHRpb25zIGZyb20gXCIuL3NyYy9hdXRoL29wdGlvbnMudHNcIjtcbmV4cG9ydCAqIGFzIGJvb3RzdHJhcCBmcm9tIFwiLi9zcmMvYm9vdHN0cmFwLnRzXCI7XG5leHBvcnQgKiBhcyBicmFuZENsaSBmcm9tIFwiLi9zcmMvYnJhbmQvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBicmFuZEV4cG9ydCBmcm9tIFwiLi9zcmMvYnJhbmQvZXhwb3J0LnRzXCI7XG5leHBvcnQgKiBhcyBicmFuZE9wdGlvbnMgZnJvbSBcIi4vc3JjL2JyYW5kL29wdGlvbnMudHNcIjtcbmV4cG9ydCAqIGFzIGJyYW5kUnVuIGZyb20gXCIuL3NyYy9icmFuZC9ydW4udHNcIjtcbmV4cG9ydCAqIGFzIGJyYW5kU2hvd2Nhc2UgZnJvbSBcIi4vc3JjL2JyYW5kL3Nob3djYXNlLnRzXCI7XG5leHBvcnQgKiBhcyBidW4gZnJvbSBcIi4vc3JjL2J1bi50c1wiO1xuZXhwb3J0ICogYXMgY2xpIGZyb20gXCIuL3NyYy9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZUNsaSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZUNvbmZpZyBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jb25maWcudHNcIjtcbmV4cG9ydCAqIGFzIGdlbmllQ29kZUluc3RhbGwgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvaW5zdGFsbC50c1wiO1xuZXhwb3J0ICogYXMgZ2VuaWVDb2RlT3B0aW9ucyBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVSdW5uZXIgZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvcnVubmVyLnRzXCI7XG5leHBvcnQgKiBhcyBnZW5pZUNvZGVSdW50aW1lIGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bnRpbWUudHNcIjtcbmV4cG9ydCAqIGFzIGdyYXBoaXRpQ2xpIGZyb20gXCIuL3NyYy9ncmFwaGl0aS9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGdyYXBoaXRpT3B0aW9ucyBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2VQcm94eUNhbmNlbGxhdGlvbiBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvY2FuY2VsbGF0aW9uLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5Q2xpIGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jbGkudHNcIjtcbmV4cG9ydCAqIGFzIGxha2ViYXNlUHJveHlPcHRpb25zIGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5UHJvdG9jb2wgZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3RvY29sLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVByb3h5UHJveHkgZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L3Byb3h5LnRzXCI7XG5leHBvcnQgKiBhcyBtb2RlbEdhdGV3YXlDbGkgZnJvbSBcIi4vc3JjL21vZGVsLWdhdGV3YXkvY2xpLnRzXCI7XG5leHBvcnQgKiBhcyBtb2RlbEdhdGV3YXlTZXJ2ZXIgZnJvbSBcIi4vc3JjL21vZGVsLWdhdGV3YXkvc2VydmVyLnRzXCI7XG5leHBvcnQgKiBhcyByb290IGZyb20gXCIuL3NyYy9yb290LnRzXCI7XG5leHBvcnQgKiBhcyB0dW5uZWxBcHAgZnJvbSBcIi4vc3JjL3R1bm5lbC9hcHAudHNcIjtcbmV4cG9ydCAqIGFzIHR1bm5lbENsaSBmcm9tIFwiLi9zcmMvdHVubmVsL2NsaS50c1wiO1xuZXhwb3J0ICogYXMgdHVubmVsT3B0aW9ucyBmcm9tIFwiLi9zcmMvdHVubmVsL29wdGlvbnMudHNcIjtcbmV4cG9ydCAqIGFzIHR1bm5lbFByb3h5IGZyb20gXCIuL3NyYy90dW5uZWwvcHJveHkudHNcIjtcbmV4cG9ydCB7IEVudkV4cG9ydEZvcm1hdFNjaGVtYSwgRW52Q29tbWFuZE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvYXBwa2l0L2Vudi1leHBvcnQudHNcIjtcbmV4cG9ydCB0eXBlIHsgRW52RXhwb3J0Rm9ybWF0LCBFbnZDb21tYW5kT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9hcHBraXQvZW52LWV4cG9ydC50c1wiO1xuZXhwb3J0IHsgQXV0aENsaU9wdGlvbnNTY2hlbWEsIFRva2VuQ29tbWFuZE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvYXV0aC9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IEF1dGhDbGlPcHRpb25zLCBUb2tlbkNvbW1hbmRPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2F1dGgvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBCcmFuZENsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL3NyYy9icmFuZC9jbGkudHNcIjtcbmV4cG9ydCB0eXBlIHsgV3JpdGVCcmFuZFBhY2thZ2VPcHRpb25zLCBXcml0dGVuQnJhbmRQYWNrYWdlIH0gZnJvbSBcIi4vc3JjL2JyYW5kL2V4cG9ydC50c1wiO1xuZXhwb3J0IHsgQnJhbmRFeHBvcnRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vc3JjL2JyYW5kL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgQnJhbmRFeHBvcnRPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2JyYW5kL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgQnJhbmRFeHBvcnRDYWxsYmFja3MgfSBmcm9tIFwiLi9zcmMvYnJhbmQvcnVuLnRzXCI7XG5leHBvcnQgeyByZXNvbHZlQnVuQXJndiB9IGZyb20gXCIuL3NyYy9idW4udHNcIjtcbmV4cG9ydCB0eXBlIHsgR2VuaWVDb2RlQ2xpRGVwZW5kZW5jaWVzIH0gZnJvbSBcIi4vc3JjL2dlbmllLWNvZGUvY2xpLnRzXCI7XG5leHBvcnQgeyBHRU5JRV9DT0RFX0dBVEVXQVlfUFJPVklERVIgfSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9jb25maWcudHNcIjtcbmV4cG9ydCB0eXBlIHsgV3JpdGVHZW5pZUNvZGVDb25maWdPcHRpb25zLCBHZW5pZUNvZGVQcm9maWxlSG9tZSwgR2VuaWVDb2RlSG9tZSB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2NvbmZpZy50c1wiO1xuZXhwb3J0IHR5cGUgeyBJbnN0YWxsR2VuaWVDb2RlT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL2luc3RhbGwudHNcIjtcbmV4cG9ydCB7IFJVTk5FUl9PUFRJT05TX0VOViB9IGZyb20gXCIuL3NyYy9nZW5pZS1jb2RlL3J1bm5lci50c1wiO1xuZXhwb3J0IHR5cGUgeyBHZW5pZUNvZGVSdW50aW1lRGVwZW5kZW5jaWVzLCBSdW5HZW5pZUNvZGVPcHRpb25zLCBQcmVwYXJlZEdlbmllQ29kZVJ1bnRpbWUgfSBmcm9tIFwiLi9zcmMvZ2VuaWUtY29kZS9ydW50aW1lLnRzXCI7XG5leHBvcnQgdHlwZSB7IEdyYXBoaXRpQ2xpRGVwZW5kZW5jaWVzLCBHcmFwaGl0aVNlcnZpY2VPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2dyYXBoaXRpL2NsaS50c1wiO1xuZXhwb3J0IHsgR1JBUEhJVElfREVGQVVMVFMsIEdyYXBoaXRpQ2xpT3B0aW9uc1NjaGVtYSwgR3JhcGhpdGlPcHRpb25zU2NoZW1hLCBSZXNvbHZlZEdyYXBoaXRpT3B0aW9uc1NjaGVtYSwgZ3JhcGhpdGlPcHRpb25PdmVycmlkZXMsIGdyYXBoaXRpT3B0aW9uc0Vudmlyb25tZW50LCBncmFwaGl0aU9wdGlvbnNGcm9tRW52aXJvbm1lbnQsIHJlc29sdmVHcmFwaGl0aU9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvZ3JhcGhpdGkvb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBHcmFwaGl0aU9wdGlvbnMsIFJlc29sdmVkR3JhcGhpdGlPcHRpb25zIH0gZnJvbSBcIi4vc3JjL2dyYXBoaXRpL29wdGlvbnMudHNcIjtcbmV4cG9ydCB7IENhbmNlbGxhdGlvblJlZ2lzdHJ5IH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXByb3h5L2NhbmNlbGxhdGlvbi50c1wiO1xuZXhwb3J0IHR5cGUgeyBDYW5jZWxsYXRpb25UYXJnZXQsIENhbmNlbGxhdGlvbkZvcndhcmRlciB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jYW5jZWxsYXRpb24udHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VQcm94eUNsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9jbGkudHNcIjtcbmV4cG9ydCB7IExha2ViYXNlUHJveHlPcHRpb25zU2NoZW1hLCBMYWtlYmFzZVByb3h5VXJsT3B0aW9uc1NjaGVtYSB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IExha2ViYXNlUHJveHlPcHRpb25zLCBSZXNvbHZlZExha2ViYXNlUHJveHlPcHRpb25zLCBMYWtlYmFzZVByb3h5VXJsT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9vcHRpb25zLnRzXCI7XG5leHBvcnQgeyBTU0xfUkVRVUVTVCwgQ0FOQ0VMX1JFUVVFU1QsIFBST1RPQ09MXzMsIFBvc3RncmVzUHJvdG9jb2xFcnJvciB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wcm94eS9wcm90b2NvbC50c1wiO1xuZXhwb3J0IHR5cGUgeyBTdGFydHVwTWVzc2FnZSwgQ2FuY2VsTWVzc2FnZSwgSW5pdGlhbE1lc3NhZ2UgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJvdG9jb2wudHNcIjtcbmV4cG9ydCB7IExha2ViYXNlUHJveHkgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcHJveHkvcHJveHkudHNcIjtcbmV4cG9ydCB0eXBlIHsgTW9kZWxHYXRld2F5Q2xpRGVwZW5kZW5jaWVzIH0gZnJvbSBcIi4vc3JjL21vZGVsLWdhdGV3YXkvY2xpLnRzXCI7XG5leHBvcnQgeyB3b3Jrc3BhY2VSb290IH0gZnJvbSBcIi4vc3JjL3Jvb3QudHNcIjtcbmV4cG9ydCB7IFR1bm5lbE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9zcmMvdHVubmVsL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgVHVubmVsT3B0aW9ucywgUmVzb2x2ZWRUdW5uZWxPcHRpb25zIH0gZnJvbSBcIi4vc3JjL3R1bm5lbC9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IFByb3h5T3B0aW9ucyB9IGZyb20gXCIuL3NyYy90dW5uZWwvcHJveHkudHNcIjtcbiJdfQ==
@@ -22,15 +22,17 @@ export function buildProgram(name = "dbx brand", dependencies = {}) {
22
22
  const options = parseArgs(program, BrandExportOptionsSchema);
23
23
  const result = await runExport(prompt, options, {
24
24
  onProgress(event) {
25
- writeProgress(`[${event.stage}] ${event.message}`);
25
+ writeProgress(event.message);
26
26
  },
27
27
  });
28
28
  writeResult({
29
+ root: result.outputDirectory,
29
30
  brand: result.brandYamlPath,
30
31
  manifest: result.manifestPath,
32
+ ...(result.showcasePath ? { showcase: result.showcasePath } : {}),
31
33
  references: result.referenceCount,
32
34
  });
33
35
  });
34
36
  return program;
35
37
  }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JyYW5kL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFTakQsbURBQW1EO0FBQ25ELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBSSxHQUFHLFdBQVcsRUFBRSxlQUFxQyxFQUFFO0lBQ3RGLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxxQkFBcUIsSUFBSSxxQkFBcUIsQ0FBQztJQUM5RSxNQUFNLGFBQWEsR0FDakIsWUFBWSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4RixNQUFNLFdBQVcsR0FDZixZQUFZLENBQUMsV0FBVztRQUN4QixDQUFDLENBQUMsS0FBYyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwRixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQ3JCLElBQUksT0FBTyxFQUFFO1NBQ1YsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNWLFdBQVcsQ0FDVixvRkFBb0YsQ0FDckYsRUFDSCx3QkFBd0IsQ0FDekIsQ0FBQztJQUNGLE9BQU87U0FDSixRQUFRLENBQUMsVUFBVSxFQUFFLHNEQUFzRCxDQUFDO1NBQzVFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBYyxFQUFFLEVBQUU7UUFDL0IsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQU8sRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1FBQzdELE1BQU0sTUFBTSxHQUFHLE1BQU0sU0FBUyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUU7WUFDOUMsVUFBVSxDQUFDLEtBQUs7Z0JBQ2QsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUNyRCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsV0FBVyxDQUFDO1lBQ1YsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhO1lBQzNCLFFBQVEsRUFBRSxNQUFNLENBQUMsWUFBWTtZQUM3QixVQUFVLEVBQUUsTUFBTSxDQUFDLGNBQWM7U0FDbEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBgZGJ4IGJyYW5kYCByZXNlYXJjaGVkIGJyYW5kLXBhY2thZ2UgZXhwb3J0LlxuICpcbiAqIEBtb2R1bGVcbiAqL1xuXG5pbXBvcnQgeyBhZGRBcmdzLCBwYXJzZUFyZ3MgfSBmcm9tIFwiQGRieC10b29scy9jbGktYXJnc1wiO1xuaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gXCJjb21tYW5kZXJcIjtcblxuaW1wb3J0IHsgQnJhbmRFeHBvcnRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vb3B0aW9ucy50c1wiO1xuaW1wb3J0IHsgZXhwb3J0QnJhbmRGcm9tUHJvbXB0IH0gZnJvbSBcIi4vcnVuLnRzXCI7XG5cbi8qKiBSZXBsYWNlYWJsZSBjb21tYW5kIGJvdW5kYXJpZXMgdXNlZCBieSB0ZXN0cyBhbmQgZW1iZWRkZXJzLiAqL1xuZXhwb3J0IGludGVyZmFjZSBCcmFuZENsaURlcGVuZGVuY2llcyB7XG4gIHJlYWRvbmx5IGV4cG9ydEJyYW5kRnJvbVByb21wdD86IHR5cGVvZiBleHBvcnRCcmFuZEZyb21Qcm9tcHQ7XG4gIHJlYWRvbmx5IHdyaXRlUHJvZ3Jlc3M/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZDtcbiAgcmVhZG9ubHkgd3JpdGVSZXN1bHQ/OiAodmFsdWU6IHVua25vd24pID0+IHZvaWQ7XG59XG5cbi8qKiBCdWlsZCB0aGUgbGF6aWx5IGxvYWRlZCBgZGJ4IGJyYW5kYCBjb21tYW5kLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUHJvZ3JhbShuYW1lID0gXCJkYnggYnJhbmRcIiwgZGVwZW5kZW5jaWVzOiBCcmFuZENsaURlcGVuZGVuY2llcyA9IHt9KTogQ29tbWFuZCB7XG4gIGNvbnN0IHJ1bkV4cG9ydCA9IGRlcGVuZGVuY2llcy5leHBvcnRCcmFuZEZyb21Qcm9tcHQgPz8gZXhwb3J0QnJhbmRGcm9tUHJvbXB0O1xuICBjb25zdCB3cml0ZVByb2dyZXNzID1cbiAgICBkZXBlbmRlbmNpZXMud3JpdGVQcm9ncmVzcyA/PyAoKHZhbHVlOiBzdHJpbmcpID0+IHByb2Nlc3Muc3RkZXJyLndyaXRlKGAke3ZhbHVlfVxcbmApKTtcbiAgY29uc3Qgd3JpdGVSZXN1bHQgPVxuICAgIGRlcGVuZGVuY2llcy53cml0ZVJlc3VsdCA/P1xuICAgICgodmFsdWU6IHVua25vd24pID0+IHByb2Nlc3Muc3Rkb3V0LndyaXRlKGAke0pTT04uc3RyaW5naWZ5KHZhbHVlLCBudWxsLCAyKX1cXG5gKSk7XG4gIGNvbnN0IHByb2dyYW0gPSBhZGRBcmdzKFxuICAgIG5ldyBDb21tYW5kKClcbiAgICAgIC5uYW1lKG5hbWUpXG4gICAgICAuZGVzY3JpcHRpb24oXG4gICAgICAgIFwiUmVzZWFyY2ggYSBicmFuZCBicmllZiBhbmQgZXhwb3J0IGJyYW5kLnlhbWwgd2l0aCB3ZWIgYW5kIG1vYmlsZSB2aXN1YWwgcmVmZXJlbmNlc1wiLFxuICAgICAgKSxcbiAgICBCcmFuZEV4cG9ydE9wdGlvbnNTY2hlbWEsXG4gICk7XG4gIHByb2dyYW1cbiAgICAuYXJndW1lbnQoXCI8cHJvbXB0PlwiLCBcImJyYW5kLCBjb21wYW55LCBwcm9kdWN0LCBvciBkZXNpZ24gYnJpZWYgdG8gcmVzZWFyY2hcIilcbiAgICAuYWN0aW9uKGFzeW5jIChwcm9tcHQ6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3Qgb3B0aW9ucyA9IHBhcnNlQXJncyhwcm9ncmFtLCBCcmFuZEV4cG9ydE9wdGlvbnNTY2hlbWEpO1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcnVuRXhwb3J0KHByb21wdCwgb3B0aW9ucywge1xuICAgICAgICBvblByb2dyZXNzKGV2ZW50KSB7XG4gICAgICAgICAgd3JpdGVQcm9ncmVzcyhgWyR7ZXZlbnQuc3RhZ2V9XSAke2V2ZW50Lm1lc3NhZ2V9YCk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHdyaXRlUmVzdWx0KHtcbiAgICAgICAgYnJhbmQ6IHJlc3VsdC5icmFuZFlhbWxQYXRoLFxuICAgICAgICBtYW5pZmVzdDogcmVzdWx0Lm1hbmlmZXN0UGF0aCxcbiAgICAgICAgcmVmZXJlbmNlczogcmVzdWx0LnJlZmVyZW5jZUNvdW50LFxuICAgICAgfSk7XG4gICAgfSk7XG4gIHJldHVybiBwcm9ncmFtO1xufVxuIl19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JyYW5kL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFTakQsbURBQW1EO0FBQ25ELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBSSxHQUFHLFdBQVcsRUFBRSxlQUFxQyxFQUFFO0lBQ3RGLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxxQkFBcUIsSUFBSSxxQkFBcUIsQ0FBQztJQUM5RSxNQUFNLGFBQWEsR0FDakIsWUFBWSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4RixNQUFNLFdBQVcsR0FDZixZQUFZLENBQUMsV0FBVztRQUN4QixDQUFDLENBQUMsS0FBYyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwRixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQ3JCLElBQUksT0FBTyxFQUFFO1NBQ1YsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNWLFdBQVcsQ0FDVixvRkFBb0YsQ0FDckYsRUFDSCx3QkFBd0IsQ0FDekIsQ0FBQztJQUNGLE9BQU87U0FDSixRQUFRLENBQUMsVUFBVSxFQUFFLHNEQUFzRCxDQUFDO1NBQzVFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBYyxFQUFFLEVBQUU7UUFDL0IsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQU8sRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1FBQzdELE1BQU0sTUFBTSxHQUFHLE1BQU0sU0FBUyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUU7WUFDOUMsVUFBVSxDQUFDLEtBQUs7Z0JBQ2QsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMvQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQzVCLEtBQUssRUFBRSxNQUFNLENBQUMsYUFBYTtZQUMzQixRQUFRLEVBQUUsTUFBTSxDQUFDLFlBQVk7WUFDN0IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pFLFVBQVUsRUFBRSxNQUFNLENBQUMsY0FBYztTQUNsQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGBkYnggYnJhbmRgIHJlc2VhcmNoZWQgYnJhbmQtcGFja2FnZSBleHBvcnQuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB7IGFkZEFyZ3MsIHBhcnNlQXJncyB9IGZyb20gXCJAZGJ4LXRvb2xzL2NsaS1hcmdzXCI7XG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSBcImNvbW1hbmRlclwiO1xuXG5pbXBvcnQgeyBCcmFuZEV4cG9ydE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiLi9vcHRpb25zLnRzXCI7XG5pbXBvcnQgeyBleHBvcnRCcmFuZEZyb21Qcm9tcHQgfSBmcm9tIFwiLi9ydW4udHNcIjtcblxuLyoqIFJlcGxhY2VhYmxlIGNvbW1hbmQgYm91bmRhcmllcyB1c2VkIGJ5IHRlc3RzIGFuZCBlbWJlZGRlcnMuICovXG5leHBvcnQgaW50ZXJmYWNlIEJyYW5kQ2xpRGVwZW5kZW5jaWVzIHtcbiAgcmVhZG9ubHkgZXhwb3J0QnJhbmRGcm9tUHJvbXB0PzogdHlwZW9mIGV4cG9ydEJyYW5kRnJvbVByb21wdDtcbiAgcmVhZG9ubHkgd3JpdGVQcm9ncmVzcz86ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkO1xuICByZWFkb25seSB3cml0ZVJlc3VsdD86ICh2YWx1ZTogdW5rbm93bikgPT4gdm9pZDtcbn1cblxuLyoqIEJ1aWxkIHRoZSBsYXppbHkgbG9hZGVkIGBkYnggYnJhbmRgIGNvbW1hbmQuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQcm9ncmFtKG5hbWUgPSBcImRieCBicmFuZFwiLCBkZXBlbmRlbmNpZXM6IEJyYW5kQ2xpRGVwZW5kZW5jaWVzID0ge30pOiBDb21tYW5kIHtcbiAgY29uc3QgcnVuRXhwb3J0ID0gZGVwZW5kZW5jaWVzLmV4cG9ydEJyYW5kRnJvbVByb21wdCA/PyBleHBvcnRCcmFuZEZyb21Qcm9tcHQ7XG4gIGNvbnN0IHdyaXRlUHJvZ3Jlc3MgPVxuICAgIGRlcGVuZGVuY2llcy53cml0ZVByb2dyZXNzID8/ICgodmFsdWU6IHN0cmluZykgPT4gcHJvY2Vzcy5zdGRlcnIud3JpdGUoYCR7dmFsdWV9XFxuYCkpO1xuICBjb25zdCB3cml0ZVJlc3VsdCA9XG4gICAgZGVwZW5kZW5jaWVzLndyaXRlUmVzdWx0ID8/XG4gICAgKCh2YWx1ZTogdW5rbm93bikgPT4gcHJvY2Vzcy5zdGRvdXQud3JpdGUoYCR7SlNPTi5zdHJpbmdpZnkodmFsdWUsIG51bGwsIDIpfVxcbmApKTtcbiAgY29uc3QgcHJvZ3JhbSA9IGFkZEFyZ3MoXG4gICAgbmV3IENvbW1hbmQoKVxuICAgICAgLm5hbWUobmFtZSlcbiAgICAgIC5kZXNjcmlwdGlvbihcbiAgICAgICAgXCJSZXNlYXJjaCBhIGJyYW5kIGJyaWVmIGFuZCBleHBvcnQgYnJhbmQueWFtbCB3aXRoIHdlYiBhbmQgbW9iaWxlIHZpc3VhbCByZWZlcmVuY2VzXCIsXG4gICAgICApLFxuICAgIEJyYW5kRXhwb3J0T3B0aW9uc1NjaGVtYSxcbiAgKTtcbiAgcHJvZ3JhbVxuICAgIC5hcmd1bWVudChcIjxwcm9tcHQ+XCIsIFwiYnJhbmQsIGNvbXBhbnksIHByb2R1Y3QsIG9yIGRlc2lnbiBicmllZiB0byByZXNlYXJjaFwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKHByb21wdDogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBvcHRpb25zID0gcGFyc2VBcmdzKHByb2dyYW0sIEJyYW5kRXhwb3J0T3B0aW9uc1NjaGVtYSk7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBydW5FeHBvcnQocHJvbXB0LCBvcHRpb25zLCB7XG4gICAgICAgIG9uUHJvZ3Jlc3MoZXZlbnQpIHtcbiAgICAgICAgICB3cml0ZVByb2dyZXNzKGV2ZW50Lm1lc3NhZ2UpO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICB3cml0ZVJlc3VsdCh7XG4gICAgICAgIHJvb3Q6IHJlc3VsdC5vdXRwdXREaXJlY3RvcnksXG4gICAgICAgIGJyYW5kOiByZXN1bHQuYnJhbmRZYW1sUGF0aCxcbiAgICAgICAgbWFuaWZlc3Q6IHJlc3VsdC5tYW5pZmVzdFBhdGgsXG4gICAgICAgIC4uLihyZXN1bHQuc2hvd2Nhc2VQYXRoID8geyBzaG93Y2FzZTogcmVzdWx0LnNob3djYXNlUGF0aCB9IDoge30pLFxuICAgICAgICByZWZlcmVuY2VzOiByZXN1bHQucmVmZXJlbmNlQ291bnQsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgcmV0dXJuIHByb2dyYW07XG59XG4iXX0=
@@ -11,6 +11,7 @@ export interface WriteBrandPackageOptions {
11
11
  readonly prompt: string;
12
12
  readonly brandPackage: BrandPackage;
13
13
  readonly research: BrandResearch;
14
+ readonly showcase?: boolean;
14
15
  readonly force?: boolean;
15
16
  }
16
17
  /** Files written for a generated brand package. */
@@ -18,6 +19,7 @@ export interface WrittenBrandPackage {
18
19
  readonly outputDirectory: string;
19
20
  readonly brandYamlPath: string;
20
21
  readonly manifestPath: string;
22
+ readonly showcasePath?: string;
21
23
  readonly referenceCount: number;
22
24
  }
23
25
  /**
@@ -7,6 +7,7 @@ import { access, mkdir, rename, rm, writeFile } from "node:fs/promises";
7
7
  import path from "node:path";
8
8
  import { BrandPackageSchema } from "@dbx-tools/shared-generator";
9
9
  import { stringify } from "yaml";
10
+ import { renderBrandShowcase } from "./showcase.js";
10
11
  function imageExtension(contentType) {
11
12
  if (!contentType)
12
13
  return ".img";
@@ -59,12 +60,14 @@ async function fileExists(filePath) {
59
60
  export async function writeBrandPackage(options) {
60
61
  const outputDirectory = path.resolve(options.outputDirectory);
61
62
  const brandYamlPath = path.join(outputDirectory, "brand.yaml");
63
+ const showcasePath = path.join(outputDirectory, "showcase.html");
62
64
  const packageExists = await fileExists(brandYamlPath);
63
65
  if (packageExists && !options.force) {
64
66
  throw new Error(`Brand package already exists at ${brandYamlPath}; pass --force to replace it`);
65
67
  }
66
68
  if (options.force) {
67
69
  await rm(path.join(outputDirectory, "references"), { recursive: true, force: true });
70
+ await rm(showcasePath, { force: true });
68
71
  }
69
72
  const visualReferences = structuredClone(options.brandPackage.visualReferences);
70
73
  let referenceCount = 0;
@@ -96,11 +99,15 @@ export async function writeBrandPackage(options) {
96
99
  generatedAt: new Date().toISOString(),
97
100
  ...brandPackage,
98
101
  }, null, 2)}\n`);
102
+ if (options.showcase) {
103
+ await writeAtomic(showcasePath, renderBrandShowcase(brandPackage));
104
+ }
99
105
  return {
100
106
  outputDirectory,
101
107
  brandYamlPath,
102
108
  manifestPath,
109
+ ...(options.showcase ? { showcasePath } : {}),
103
110
  referenceCount,
104
111
  };
105
112
  }
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JyYW5kL2V4cG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RSxPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFHN0IsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQW1CakMsU0FBUyxjQUFjLENBQUMsV0FBb0I7SUFDMUMsSUFBSSxDQUFDLFdBQVc7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNoQyxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyRSxRQUFRLFVBQVUsRUFBRSxDQUFDO1FBQ25CLEtBQUssWUFBWTtZQUNmLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLEtBQUssV0FBVztZQUNkLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLEtBQUssWUFBWTtZQUNmLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLEtBQUssV0FBVztZQUNkLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLEtBQUssZUFBZTtZQUNsQixPQUFPLE1BQU0sQ0FBQztRQUNoQixLQUFLLFlBQVk7WUFDZixPQUFPLE9BQU8sQ0FBQztRQUNqQjtZQUNFLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxRQUFRLENBQUMsS0FBYTtJQUM3QixPQUFPLENBQ0wsS0FBSztTQUNGLFNBQVMsQ0FBQyxNQUFNLENBQUM7U0FDakIsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUs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UUFDZixhQUFhO1FBQ2IsWUFBWTtRQUNaLGNBQWM7S0FDZixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQnJhbmQgcGFja2FnZSBmaWxlc3lzdGVtIGV4cG9ydC5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHsgYWNjZXNzLCBta2RpciwgcmVuYW1lLCBybSwgd3JpdGVGaWxlIH0gZnJvbSBcIm5vZGU6ZnMvcHJvbWlzZXNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB0eXBlIHsgQnJhbmRSZXNlYXJjaCB9IGZyb20gXCJAZGJ4LXRvb2xzL2FwcGtpdC1nZW5lcmF0b3JcIjtcbmltcG9ydCB0eXBlIHsgQnJhbmRQYWNrYWdlIH0gZnJvbSBcIkBkYngtdG9vbHMvc2hhcmVkLWdlbmVyYXRvclwiO1xuaW1wb3J0IHsgQnJhbmRQYWNrYWdlU2NoZW1hIH0gZnJvbSBcIkBkYngtdG9vbHMvc2hhcmVkLWdlbmVyYXRvclwiO1xuaW1wb3J0IHsgc3RyaW5naWZ5IH0gZnJvbSBcInlhbWxcIjtcblxuLyoqIElucHV0cyByZXF1aXJlZCB0byB3cml0ZSBhIGdlbmVyYXRlZCBicmFuZCBwYWNrYWdlLiAqL1xuZXhwb3J0IGludGVyZmFjZSBXcml0ZUJyYW5kUGFja2FnZU9wdGlvbnMge1xuICByZWFkb25seSBvdXRwdXREaXJlY3Rvcnk6IHN0cmluZztcbiAgcmVhZG9ubHkgcHJvbXB0OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGJyYW5kUGFja2FnZTogQnJhbmRQYWNrYWdlO1xuICByZWFkb25seSByZXNlYXJjaDogQnJhbmRSZXNlYXJjaDtcbiAgcmVhZG9ubHkgZm9yY2U/OiBib29sZWFuO1xufVxuXG4vKiogRmlsZXMgd3JpdHRlbiBmb3IgYSBnZW5lcmF0ZWQgYnJhbmQgcGFja2FnZS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV3JpdHRlbkJyYW5kUGFja2FnZSB7XG4gIHJlYWRvbmx5IG91dHB1dERpcmVjdG9yeTogc3RyaW5nO1xuICByZWFkb25seSBicmFuZFlhbWxQYXRoOiBzdHJpbmc7XG4gIHJlYWRvbmx5IG1hbmlmZXN0UGF0aDogc3RyaW5nO1xuICByZWFkb25seSByZWZlcmVuY2VDb3VudDogbnVtYmVyO1xufVxuXG5mdW5jdGlvbiBpbWFnZUV4dGVuc2lvbihjb250ZW50VHlwZT86IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmICghY29udGVudFR5cGUpIHJldHVybiBcIi5pbWdcIjtcbiAgY29uc3Qgbm9ybWFsaXplZCA9IGNvbnRlbnRUeXBlLnNwbGl0KFwiO1wiLCAxKVswXS50cmltKCkudG9Mb3dlckNhc2UoKTtcbiAgc3dpdGNoIChub3JtYWxpemVkKSB7XG4gICAgY2FzZSBcImltYWdlL2F2aWZcIjpcbiAgICAgIHJldHVybiBcIi5hdmlmXCI7XG4gICAgY2FzZSBcImltYWdlL2dpZlwiOlxuICAgICAgcmV0dXJuIFwiLmdpZlwiO1xuICAgIGNhc2UgXCJpbWFnZS9qcGVnXCI6XG4gICAgICByZXR1cm4gXCIuanBnXCI7XG4gICAgY2FzZSBcImltYWdlL3BuZ1wiOlxuICAgICAgcmV0dXJuIFwiLnBuZ1wiO1xuICAgIGNhc2UgXCJpbWFnZS9zdmcreG1sXCI6XG4gICAgICByZXR1cm4gXCIuc3ZnXCI7XG4gICAgY2FzZSBcImltYWdlL3dlYnBcIjpcbiAgICAgIHJldHVybiBcIi53ZWJwXCI7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBcIi5pbWdcIjtcbiAgfVxufVxuXG5mdW5jdGlvbiBmaWxlU2x1Zyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIChcbiAgICB2YWx1ZVxuICAgICAgLm5vcm1hbGl6ZShcIk5GS0RcIilcbiAgICAgIC5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCBcIlwiKVxuICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgIC5yZXBsYWNlKC9bXmEtejAtOV0rL2csIFwiLVwiKVxuICAgICAgLnJlcGxhY2UoL14tK3wtKyQvZywgXCJcIilcbiAgICAgIC5zbGljZSgwLCA2MCkgfHwgXCJyZWZlcmVuY2VcIlxuICApO1xufVxuXG5hc3luYyBmdW5jdGlvbiB3cml0ZUF0b21pYyhmaWxlUGF0aDogc3RyaW5nLCBjb250ZW50OiBzdHJpbmcgfCBVaW50OEFycmF5KTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IG1rZGlyKHBhdGguZGlybmFtZShmaWxlUGF0aCksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICBjb25zdCB0ZW1wb3JhcnlQYXRoID0gYCR7ZmlsZVBhdGh9LiR7cHJvY2Vzcy5waWR9LiR7Y3J5cHRvLnJhbmRvbVVVSUQoKX0udG1wYDtcbiAgYXdhaXQgd3JpdGVGaWxlKHRlbXBvcmFyeVBhdGgsIGNvbnRlbnQpO1xuICBhd2FpdCByZW5hbWUodGVtcG9yYXJ5UGF0aCwgZmlsZVBhdGgpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBmaWxlRXhpc3RzKGZpbGVQYXRoOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgdHJ5IHtcbiAgICBhd2FpdCBhY2Nlc3MoZmlsZVBhdGgpO1xuICAgIHJldHVybiB0cnVlO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXcml0ZSBhIG5vcm1hbCBgYnJhbmQueWFtbGAgcGx1cyByZXNlYXJjaCBwcm92ZW5hbmNlIGFuZCBkb3dubG9hZGVkIHZpc3VhbFxuICogcmVmZXJlbmNlcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdyaXRlQnJhbmRQYWNrYWdlKFxuICBvcHRpb25zOiBXcml0ZUJyYW5kUGFja2FnZU9wdGlvbnMsXG4pOiBQcm9taXNlPFdyaXR0ZW5CcmFuZFBhY2thZ2U+IHtcbiAgY29uc3Qgb3V0cHV0RGlyZWN0b3J5ID0gcGF0aC5yZXNvbHZlKG9wdGlvbnMub3V0cHV0RGlyZWN0b3J5KTtcbiAgY29uc3QgYnJhbmRZYW1sUGF0aCA9IHBhdGguam9pbihvdXRwdXREaXJlY3RvcnksIFwiYnJhbmQueWFtbFwiKTtcbiAgY29uc3QgcGFja2FnZUV4aXN0cyA9IGF3YWl0IGZpbGVFeGlzdHMoYnJhbmRZYW1sUGF0aCk7XG4gIGlmIChwYWNrYWdlRXhpc3RzICYmICFvcHRpb25zLmZvcmNlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBCcmFuZCBwYWNrYWdlIGFscmVhZHkgZXhpc3RzIGF0ICR7YnJhbmRZYW1sUGF0aH07IHBhc3MgLS1mb3JjZSB0byByZXBsYWNlIGl0YCk7XG4gIH1cbiAgaWYgKG9wdGlvbnMuZm9yY2UpIHtcbiAgICBhd2FpdCBybShwYXRoLmpvaW4ob3V0cHV0RGlyZWN0b3J5LCBcInJlZmVyZW5jZXNcIiksIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIGNvbnN0IHZpc3VhbFJlZmVyZW5jZXMgPSBzdHJ1Y3R1cmVkQ2xvbmUob3B0aW9ucy5icmFuZFBhY2thZ2UudmlzdWFsUmVmZXJlbmNlcyk7XG4gIGxldCByZWZlcmVuY2VDb3VudCA9IDA7XG4gIGZvciAoXG4gICAgbGV0IHJlZmVyZW5jZUluZGV4ID0gMDtcbiAgICByZWZlcmVuY2VJbmRleCA8IG9wdGlvbnMucmVzZWFyY2gudmlzdWFsUmVmZXJlbmNlcy5sZW5ndGg7XG4gICAgcmVmZXJlbmNlSW5kZXggKz0gMVxuICApIHtcbiAgICBjb25zdCByZXNlYXJjaFJlZmVyZW5jZSA9IG9wdGlvbnMucmVzZWFyY2gudmlzdWFsUmVmZXJlbmNlc1tyZWZlcmVuY2VJbmRleF07XG4gICAgY29uc3QgZXhwb3J0ZWRSZWZlcmVuY2UgPSB2aXN1YWxSZWZlcmVuY2VzW3JlZmVyZW5jZUluZGV4XTtcbiAgICBpZiAoIWV4cG9ydGVkUmVmZXJlbmNlKSBjb250aW51ZTtcbiAgICBmb3IgKGxldCBpbWFnZUluZGV4ID0gMDsgaW1hZ2VJbmRleCA8IHJlc2VhcmNoUmVmZXJlbmNlLmltYWdlcy5sZW5ndGg7IGltYWdlSW5kZXggKz0gMSkge1xuICAgICAgY29uc3QgcmVzZWFyY2hJbWFnZSA9IHJlc2VhcmNoUmVmZXJlbmNlLmltYWdlc1tpbWFnZUluZGV4XTtcbiAgICAgIGNvbnN0IGV4cG9ydGVkSW1hZ2UgPSBleHBvcnRlZFJlZmVyZW5jZS5pbWFnZXNbaW1hZ2VJbmRleF07XG4gICAgICBpZiAoIWV4cG9ydGVkSW1hZ2UgfHwgIXJlc2VhcmNoSW1hZ2UuZGF0YSkgY29udGludWU7XG4gICAgICBjb25zdCBmaWxlTmFtZSA9IGAke2ZpbGVTbHVnKHJlc2VhcmNoUmVmZXJlbmNlLmFwcE5hbWUpfS0ke2ltYWdlSW5kZXggKyAxfSR7aW1hZ2VFeHRlbnNpb24ocmVzZWFyY2hJbWFnZS5jb250ZW50VHlwZSl9YDtcbiAgICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9IHBhdGgucG9zaXguam9pbihcInJlZmVyZW5jZXNcIiwgcmVzZWFyY2hSZWZlcmVuY2UucGxhdGZvcm0sIGZpbGVOYW1lKTtcbiAgICAgIGF3YWl0IHdyaXRlQXRvbWljKHBhdGguam9pbihvdXRwdXREaXJlY3RvcnksIHJlbGF0aXZlUGF0aCksIHJlc2VhcmNoSW1hZ2UuZGF0YSk7XG4gICAgICBleHBvcnRlZEltYWdlLmxvY2FsUGF0aCA9IGAuLyR7cmVsYXRpdmVQYXRofWA7XG4gICAgICByZWZlcmVuY2VDb3VudCArPSAxO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGJyYW5kUGFja2FnZSA9IEJyYW5kUGFja2FnZVNjaGVtYS5wYXJzZSh7XG4gICAgLi4ub3B0aW9ucy5icmFuZFBhY2thZ2UsXG4gICAgdmlzdWFsUmVmZXJlbmNlcyxcbiAgfSk7XG4gIGNvbnN0IG1hbmlmZXN0UGF0aCA9IHBhdGguam9pbihvdXRwdXREaXJlY3RvcnksIFwiYnJhbmQtcGFja2FnZS5qc29uXCIpO1xuICBhd2FpdCB3cml0ZUF0b21pYyhicmFuZFlhbWxQYXRoLCBzdHJpbmdpZnkoYnJhbmRQYWNrYWdlLmJyYW5kLCB7IGluZGVudDogMiB9KSk7XG4gIGF3YWl0IHdyaXRlQXRvbWljKFxuICAgIG1hbmlmZXN0UGF0aCxcbiAgICBgJHtKU09OLnN0cmluZ2lmeShcbiAgICAgIHtcbiAgICAgICAgcHJvbXB0OiBvcHRpb25zLnByb21wdCxcbiAgICAgICAgZ2VuZXJhdGVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgLi4uYnJhbmRQYWNrYWdlLFxuICAgICAgfSxcbiAgICAgIG51bGwsXG4gICAgICAyLFxuICAgICl9XFxuYCxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIG91dHB1dERpcmVjdG9yeSxcbiAgICBicmFuZFlhbWxQYXRoLFxuICAgIG1hbmlmZXN0UGF0aCxcbiAgICByZWZlcmVuY2VDb3VudCxcbiAgfTtcbn1cbiJdfQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JyYW5kL2V4cG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RSxPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFHN0IsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFxQnBELFNBQVMsY0FBYyxDQUFDLFdBQW9CO0lBQzFDLElBQUksQ0FBQyxXQUFXO1FBQUUsT0FBTyxNQUFNLENBQUM7SUFDaEMsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckUsUUFBUSxVQUFVLEVBQUUsQ0FBQztRQUNuQixLQUFLLFlBQVk7WUFDZixPQUFPLE9BQU8sQ0FBQztRQUNqQixLQUFLLFdBQVc7WUFDZCxPQUFPLE1BQU0sQ0FBQztRQUNoQixLQUFLLFlBQVk7WUFDZixPQUFPLE1BQU0sQ0FBQztRQUNoQixLQUFLLFdBQVc7WUFDZCxPQUFPLE1BQU0sQ0FBQztRQUNoQixLQUFLLGVBQWU7WUFDbEIsT0FBTyxNQUFNLENBQUM7UUFDaEIsS0FBSyxZQUFZO1lBQ2YsT0FBTyxPQUFPLENBQUM7UUFDakI7WUFDRSxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQVMsUUFBUSxDQUFDLEtBQWE7SUFDN0IsT0FBTyxDQUNMLEtBQUs7U0FDRixTQUFTLENBQUMs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SSxDQUFDLFNBQVMsQ0FDZjtRQUNFLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtRQUN0QixXQUFXLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUU7UUFDckMsR0FBRyxZQUFZO0tBQ2hCLEVBQ0QsSUFBSSxFQUNKLENBQUMsQ0FDRixJQUFJLENBQ04sQ0FBQztJQUNGLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3JCLE1BQU0sV0FBVyxDQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxPQUFPO1FBQ0wsZUFBZTtRQUNmLGFBQWE7UUFDYixZQUFZO1FBQ1osR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM3QyxjQUFjO0tBQ2YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEJyYW5kIHBhY2thZ2UgZmlsZXN5c3RlbSBleHBvcnQuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB7IGFjY2VzcywgbWtkaXIsIHJlbmFtZSwgcm0sIHdyaXRlRmlsZSB9IGZyb20gXCJub2RlOmZzL3Byb21pc2VzXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgdHlwZSB7IEJyYW5kUmVzZWFyY2ggfSBmcm9tIFwiQGRieC10b29scy9hcHBraXQtZ2VuZXJhdG9yXCI7XG5pbXBvcnQgdHlwZSB7IEJyYW5kUGFja2FnZSB9IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IEJyYW5kUGFja2FnZVNjaGVtYSB9IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IHN0cmluZ2lmeSB9IGZyb20gXCJ5YW1sXCI7XG5pbXBvcnQgeyByZW5kZXJCcmFuZFNob3djYXNlIH0gZnJvbSBcIi4vc2hvd2Nhc2UudHNcIjtcblxuLyoqIElucHV0cyByZXF1aXJlZCB0byB3cml0ZSBhIGdlbmVyYXRlZCBicmFuZCBwYWNrYWdlLiAqL1xuZXhwb3J0IGludGVyZmFjZSBXcml0ZUJyYW5kUGFja2FnZU9wdGlvbnMge1xuICByZWFkb25seSBvdXRwdXREaXJlY3Rvcnk6IHN0cmluZztcbiAgcmVhZG9ubHkgcHJvbXB0OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGJyYW5kUGFja2FnZTogQnJhbmRQYWNrYWdlO1xuICByZWFkb25seSByZXNlYXJjaDogQnJhbmRSZXNlYXJjaDtcbiAgcmVhZG9ubHkgc2hvd2Nhc2U/OiBib29sZWFuO1xuICByZWFkb25seSBmb3JjZT86IGJvb2xlYW47XG59XG5cbi8qKiBGaWxlcyB3cml0dGVuIGZvciBhIGdlbmVyYXRlZCBicmFuZCBwYWNrYWdlLiAqL1xuZXhwb3J0IGludGVyZmFjZSBXcml0dGVuQnJhbmRQYWNrYWdlIHtcbiAgcmVhZG9ubHkgb3V0cHV0RGlyZWN0b3J5OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGJyYW5kWWFtbFBhdGg6IHN0cmluZztcbiAgcmVhZG9ubHkgbWFuaWZlc3RQYXRoOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHNob3djYXNlUGF0aD86IHN0cmluZztcbiAgcmVhZG9ubHkgcmVmZXJlbmNlQ291bnQ6IG51bWJlcjtcbn1cblxuZnVuY3Rpb24gaW1hZ2VFeHRlbnNpb24oY29udGVudFR5cGU/OiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoIWNvbnRlbnRUeXBlKSByZXR1cm4gXCIuaW1nXCI7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSBjb250ZW50VHlwZS5zcGxpdChcIjtcIiwgMSlbMF0udHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gIHN3aXRjaCAobm9ybWFsaXplZCkge1xuICAgIGNhc2UgXCJpbWFnZS9hdmlmXCI6XG4gICAgICByZXR1cm4gXCIuYXZpZlwiO1xuICAgIGNhc2UgXCJpbWFnZS9naWZcIjpcbiAgICAgIHJldHVybiBcIi5naWZcIjtcbiAgICBjYXNlIFwiaW1hZ2UvanBlZ1wiOlxuICAgICAgcmV0dXJuIFwiLmpwZ1wiO1xuICAgIGNhc2UgXCJpbWFnZS9wbmdcIjpcbiAgICAgIHJldHVybiBcIi5wbmdcIjtcbiAgICBjYXNlIFwiaW1hZ2Uvc3ZnK3htbFwiOlxuICAgICAgcmV0dXJuIFwiLnN2Z1wiO1xuICAgIGNhc2UgXCJpbWFnZS93ZWJwXCI6XG4gICAgICByZXR1cm4gXCIud2VicFwiO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gXCIuaW1nXCI7XG4gIH1cbn1cblxuZnVuY3Rpb24gZmlsZVNsdWcodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiAoXG4gICAgdmFsdWVcbiAgICAgIC5ub3JtYWxpemUoXCJORktEXCIpXG4gICAgICAucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgXCJcIilcbiAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAucmVwbGFjZSgvW15hLXowLTldKy9nLCBcIi1cIilcbiAgICAgIC5yZXBsYWNlKC9eLSt8LSskL2csIFwiXCIpXG4gICAgICAuc2xpY2UoMCwgNjApIHx8IFwicmVmZXJlbmNlXCJcbiAgKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gd3JpdGVBdG9taWMoZmlsZVBhdGg6IHN0cmluZywgY29udGVudDogc3RyaW5nIHwgVWludDhBcnJheSk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBta2RpcihwYXRoLmRpcm5hbWUoZmlsZVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgY29uc3QgdGVtcG9yYXJ5UGF0aCA9IGAke2ZpbGVQYXRofS4ke3Byb2Nlc3MucGlkfS4ke2NyeXB0by5yYW5kb21VVUlEKCl9LnRtcGA7XG4gIGF3YWl0IHdyaXRlRmlsZSh0ZW1wb3JhcnlQYXRoLCBjb250ZW50KTtcbiAgYXdhaXQgcmVuYW1lKHRlbXBvcmFyeVBhdGgsIGZpbGVQYXRoKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZmlsZUV4aXN0cyhmaWxlUGF0aDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIHRyeSB7XG4gICAgYXdhaXQgYWNjZXNzKGZpbGVQYXRoKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogV3JpdGUgYSBub3JtYWwgYGJyYW5kLnlhbWxgIHBsdXMgcmVzZWFyY2ggcHJvdmVuYW5jZSBhbmQgZG93bmxvYWRlZCB2aXN1YWxcbiAqIHJlZmVyZW5jZXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3cml0ZUJyYW5kUGFja2FnZShcbiAgb3B0aW9uczogV3JpdGVCcmFuZFBhY2thZ2VPcHRpb25zLFxuKTogUHJvbWlzZTxXcml0dGVuQnJhbmRQYWNrYWdlPiB7XG4gIGNvbnN0IG91dHB1dERpcmVjdG9yeSA9IHBhdGgucmVzb2x2ZShvcHRpb25zLm91dHB1dERpcmVjdG9yeSk7XG4gIGNvbnN0IGJyYW5kWWFtbFBhdGggPSBwYXRoLmpvaW4ob3V0cHV0RGlyZWN0b3J5LCBcImJyYW5kLnlhbWxcIik7XG4gIGNvbnN0IHNob3djYXNlUGF0aCA9IHBhdGguam9pbihvdXRwdXREaXJlY3RvcnksIFwic2hvd2Nhc2UuaHRtbFwiKTtcbiAgY29uc3QgcGFja2FnZUV4aXN0cyA9IGF3YWl0IGZpbGVFeGlzdHMoYnJhbmRZYW1sUGF0aCk7XG4gIGlmIChwYWNrYWdlRXhpc3RzICYmICFvcHRpb25zLmZvcmNlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBCcmFuZCBwYWNrYWdlIGFscmVhZHkgZXhpc3RzIGF0ICR7YnJhbmRZYW1sUGF0aH07IHBhc3MgLS1mb3JjZSB0byByZXBsYWNlIGl0YCk7XG4gIH1cbiAgaWYgKG9wdGlvbnMuZm9yY2UpIHtcbiAgICBhd2FpdCBybShwYXRoLmpvaW4ob3V0cHV0RGlyZWN0b3J5LCBcInJlZmVyZW5jZXNcIiksIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcbiAgICBhd2FpdCBybShzaG93Y2FzZVBhdGgsIHsgZm9yY2U6IHRydWUgfSk7XG4gIH1cblxuICBjb25zdCB2aXN1YWxSZWZlcmVuY2VzID0gc3RydWN0dXJlZENsb25lKG9wdGlvbnMuYnJhbmRQYWNrYWdlLnZpc3VhbFJlZmVyZW5jZXMpO1xuICBsZXQgcmVmZXJlbmNlQ291bnQgPSAwO1xuICBmb3IgKFxuICAgIGxldCByZWZlcmVuY2VJbmRleCA9IDA7XG4gICAgcmVmZXJlbmNlSW5kZXggPCBvcHRpb25zLnJlc2VhcmNoLnZpc3VhbFJlZmVyZW5jZXMubGVuZ3RoO1xuICAgIHJlZmVyZW5jZUluZGV4ICs9IDFcbiAgKSB7XG4gICAgY29uc3QgcmVzZWFyY2hSZWZlcmVuY2UgPSBvcHRpb25zLnJlc2VhcmNoLnZpc3VhbFJlZmVyZW5jZXNbcmVmZXJlbmNlSW5kZXhdO1xuICAgIGNvbnN0IGV4cG9ydGVkUmVmZXJlbmNlID0gdmlzdWFsUmVmZXJlbmNlc1tyZWZlcmVuY2VJbmRleF07XG4gICAgaWYgKCFleHBvcnRlZFJlZmVyZW5jZSkgY29udGludWU7XG4gICAgZm9yIChsZXQgaW1hZ2VJbmRleCA9IDA7IGltYWdlSW5kZXggPCByZXNlYXJjaFJlZmVyZW5jZS5pbWFnZXMubGVuZ3RoOyBpbWFnZUluZGV4ICs9IDEpIHtcbiAgICAgIGNvbnN0IHJlc2VhcmNoSW1hZ2UgPSByZXNlYXJjaFJlZmVyZW5jZS5pbWFnZXNbaW1hZ2VJbmRleF07XG4gICAgICBjb25zdCBleHBvcnRlZEltYWdlID0gZXhwb3J0ZWRSZWZlcmVuY2UuaW1hZ2VzW2ltYWdlSW5kZXhdO1xuICAgICAgaWYgKCFleHBvcnRlZEltYWdlIHx8ICFyZXNlYXJjaEltYWdlLmRhdGEpIGNvbnRpbnVlO1xuICAgICAgY29uc3QgZmlsZU5hbWUgPSBgJHtmaWxlU2x1ZyhyZXNlYXJjaFJlZmVyZW5jZS5hcHBOYW1lKX0tJHtpbWFnZUluZGV4ICsgMX0ke2ltYWdlRXh0ZW5zaW9uKHJlc2VhcmNoSW1hZ2UuY29udGVudFR5cGUpfWA7XG4gICAgICBjb25zdCByZWxhdGl2ZVBhdGggPSBwYXRoLnBvc2l4LmpvaW4oXCJyZWZlcmVuY2VzXCIsIHJlc2VhcmNoUmVmZXJlbmNlLnBsYXRmb3JtLCBmaWxlTmFtZSk7XG4gICAgICBhd2FpdCB3cml0ZUF0b21pYyhwYXRoLmpvaW4ob3V0cHV0RGlyZWN0b3J5LCByZWxhdGl2ZVBhdGgpLCByZXNlYXJjaEltYWdlLmRhdGEpO1xuICAgICAgZXhwb3J0ZWRJbWFnZS5sb2NhbFBhdGggPSBgLi8ke3JlbGF0aXZlUGF0aH1gO1xuICAgICAgcmVmZXJlbmNlQ291bnQgKz0gMTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBicmFuZFBhY2thZ2UgPSBCcmFuZFBhY2thZ2VTY2hlbWEucGFyc2Uoe1xuICAgIC4uLm9wdGlvbnMuYnJhbmRQYWNrYWdlLFxuICAgIHZpc3VhbFJlZmVyZW5jZXMsXG4gIH0pO1xuICBjb25zdCBtYW5pZmVzdFBhdGggPSBwYXRoLmpvaW4ob3V0cHV0RGlyZWN0b3J5LCBcImJyYW5kLXBhY2thZ2UuanNvblwiKTtcbiAgYXdhaXQgd3JpdGVBdG9taWMoYnJhbmRZYW1sUGF0aCwgc3RyaW5naWZ5KGJyYW5kUGFja2FnZS5icmFuZCwgeyBpbmRlbnQ6IDIgfSkpO1xuICBhd2FpdCB3cml0ZUF0b21pYyhcbiAgICBtYW5pZmVzdFBhdGgsXG4gICAgYCR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICB7XG4gICAgICAgIHByb21wdDogb3B0aW9ucy5wcm9tcHQsXG4gICAgICAgIGdlbmVyYXRlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgIC4uLmJyYW5kUGFja2FnZSxcbiAgICAgIH0sXG4gICAgICBudWxsLFxuICAgICAgMixcbiAgICApfVxcbmAsXG4gICk7XG4gIGlmIChvcHRpb25zLnNob3djYXNlKSB7XG4gICAgYXdhaXQgd3JpdGVBdG9taWMoc2hvd2Nhc2VQYXRoLCByZW5kZXJCcmFuZFNob3djYXNlKGJyYW5kUGFja2FnZSkpO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBvdXRwdXREaXJlY3RvcnksXG4gICAgYnJhbmRZYW1sUGF0aCxcbiAgICBtYW5pZmVzdFBhdGgsXG4gICAgLi4uKG9wdGlvbnMuc2hvd2Nhc2UgPyB7IHNob3djYXNlUGF0aCB9IDoge30pLFxuICAgIHJlZmVyZW5jZUNvdW50LFxuICB9O1xufVxuIl19
@@ -2,6 +2,7 @@ export * as cli from "./cli.ts";
2
2
  export * as exportModule from "./export.ts";
3
3
  export * as options from "./options.ts";
4
4
  export * as run from "./run.ts";
5
+ export * as showcase from "./showcase.ts";
5
6
  export type { BrandCliDependencies } from "./cli.ts";
6
7
  export type { WriteBrandPackageOptions, WrittenBrandPackage } from "./export.ts";
7
8
  export { BrandExportOptionsSchema } from "./options.ts";
@@ -5,5 +5,6 @@ export * as cli from "./cli.js";
5
5
  export * as exportModule from "./export.js";
6
6
  export * as options from "./options.js";
7
7
  export * as run from "./run.js";
8
+ export * as showcase from "./showcase.js";
8
9
  export { BrandExportOptionsSchema } from "./options.js";
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnJhbmQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMkNBQTJDO0FBQzNDLG1EQUFtRDtBQUNuRCx3RUFBd0U7QUFFeEUsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFDaEMsT0FBTyxLQUFLLFlBQVksTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFHaEMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR0VORVJBVEVEIGJ5IHByb2plbiB3YXRjaCAtIERPIE5PVCBFRElULlxuLy8gUmVnZW5lcmF0ZWQgZnJvbSB0aGUgZXhwb3J0aW5nIG1vZHVsZXMgaW4gLi9zcmMuXG4vLyBIYW5kIGVkaXRzIGFyZSBvdmVyd3JpdHRlbiBvbiB0aGUgbmV4dCB3YXRjaDsgdGhpcyBmaWxlIGlzIHJlYWQtb25seS5cblxuZXhwb3J0ICogYXMgY2xpIGZyb20gXCIuL2NsaS50c1wiO1xuZXhwb3J0ICogYXMgZXhwb3J0TW9kdWxlIGZyb20gXCIuL2V4cG9ydC50c1wiO1xuZXhwb3J0ICogYXMgb3B0aW9ucyBmcm9tIFwiLi9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBydW4gZnJvbSBcIi4vcnVuLnRzXCI7XG5leHBvcnQgdHlwZSB7IEJyYW5kQ2xpRGVwZW5kZW5jaWVzIH0gZnJvbSBcIi4vY2xpLnRzXCI7XG5leHBvcnQgdHlwZSB7IFdyaXRlQnJhbmRQYWNrYWdlT3B0aW9ucywgV3JpdHRlbkJyYW5kUGFja2FnZSB9IGZyb20gXCIuL2V4cG9ydC50c1wiO1xuZXhwb3J0IHsgQnJhbmRFeHBvcnRPcHRpb25zU2NoZW1hIH0gZnJvbSBcIi4vb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBCcmFuZEV4cG9ydE9wdGlvbnMgfSBmcm9tIFwiLi9vcHRpb25zLnRzXCI7XG5leHBvcnQgdHlwZSB7IEJyYW5kRXhwb3J0Q2FsbGJhY2tzIH0gZnJvbSBcIi4vcnVuLnRzXCI7XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnJhbmQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMkNBQTJDO0FBQzNDLG1EQUFtRDtBQUNuRCx3RUFBd0U7QUFFeEUsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFDaEMsT0FBTyxLQUFLLFlBQVksTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFDaEMsT0FBTyxLQUFLLFFBQVEsTUFBTSxlQUFlLENBQUM7QUFHMUMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR0VORVJBVEVEIGJ5IHByb2plbiB3YXRjaCAtIERPIE5PVCBFRElULlxuLy8gUmVnZW5lcmF0ZWQgZnJvbSB0aGUgZXhwb3J0aW5nIG1vZHVsZXMgaW4gLi9zcmMuXG4vLyBIYW5kIGVkaXRzIGFyZSBvdmVyd3JpdHRlbiBvbiB0aGUgbmV4dCB3YXRjaDsgdGhpcyBmaWxlIGlzIHJlYWQtb25seS5cblxuZXhwb3J0ICogYXMgY2xpIGZyb20gXCIuL2NsaS50c1wiO1xuZXhwb3J0ICogYXMgZXhwb3J0TW9kdWxlIGZyb20gXCIuL2V4cG9ydC50c1wiO1xuZXhwb3J0ICogYXMgb3B0aW9ucyBmcm9tIFwiLi9vcHRpb25zLnRzXCI7XG5leHBvcnQgKiBhcyBydW4gZnJvbSBcIi4vcnVuLnRzXCI7XG5leHBvcnQgKiBhcyBzaG93Y2FzZSBmcm9tIFwiLi9zaG93Y2FzZS50c1wiO1xuZXhwb3J0IHR5cGUgeyBCcmFuZENsaURlcGVuZGVuY2llcyB9IGZyb20gXCIuL2NsaS50c1wiO1xuZXhwb3J0IHR5cGUgeyBXcml0ZUJyYW5kUGFja2FnZU9wdGlvbnMsIFdyaXR0ZW5CcmFuZFBhY2thZ2UgfSBmcm9tIFwiLi9leHBvcnQudHNcIjtcbmV4cG9ydCB7IEJyYW5kRXhwb3J0T3B0aW9uc1NjaGVtYSB9IGZyb20gXCIuL29wdGlvbnMudHNcIjtcbmV4cG9ydCB0eXBlIHsgQnJhbmRFeHBvcnRPcHRpb25zIH0gZnJvbSBcIi4vb3B0aW9ucy50c1wiO1xuZXhwb3J0IHR5cGUgeyBCcmFuZEV4cG9ydENhbGxiYWNrcyB9IGZyb20gXCIuL3J1bi50c1wiO1xuIl19
@@ -9,10 +9,11 @@ export declare const BrandExportOptionsSchema: z.ZodObject<{
9
9
  profile: z.ZodOptional<z.ZodString>;
10
10
  name: z.ZodOptional<z.ZodString>;
11
11
  website: z.ZodOptional<z.ZodString>;
12
- output: z.ZodDefault<z.ZodString>;
12
+ output: z.ZodOptional<z.ZodString>;
13
13
  model: z.ZodOptional<z.ZodString>;
14
14
  maxSources: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
15
15
  sourceMaxLength: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
16
+ showcase: z.ZodDefault<z.ZodBoolean>;
16
17
  force: z.ZodDefault<z.ZodBoolean>;
17
18
  }, z.core.$strict>;
18
19
  /** Resolved brand export options. */
@@ -15,8 +15,8 @@ export const BrandExportOptionsSchema = z
15
15
  .string()
16
16
  .trim()
17
17
  .min(1)
18
- .default("branding")
19
- .describe("Output directory for brand.yaml, provenance, and visual references."),
18
+ .optional()
19
+ .describe("Persistent output directory for brand.yaml, showcase, provenance, and visual references. Omit for a temporary directory."),
20
20
  model: z
21
21
  .string()
22
22
  .trim()
@@ -37,8 +37,12 @@ export const BrandExportOptionsSchema = z
37
37
  .max(20_000)
38
38
  .default(8_000)
39
39
  .describe("Maximum characters retained from each source page."),
40
+ showcase: z
41
+ .boolean()
42
+ .default(true)
43
+ .describe("Responsive HTML brand presentation and website mockups."),
40
44
  force: z.boolean().default(false).describe("Replace files in an existing output directory."),
41
45
  })
42
46
  .strict()
43
47
  .describe("Options for exporting a researched brand package.");
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9icmFuZC9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLDBEQUEwRDtBQUMxRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDO0tBQ3RDLE1BQU0sQ0FBQztJQUNOLE9BQU8sRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsT0FBTztJQUNsRCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLENBQUM7SUFDakYsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsK0JBQStCLENBQUM7SUFDOUUsTUFBTSxFQUFFLENBQUM7U0FDTixNQUFNLEVBQUU7U0FDUixJQUFJLEVBQUU7U0FDTixHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ04sT0FBTyxDQUFDLFVBQVUsQ0FBQztTQUNuQixRQUFRLENBQUMscUVBQXFFLENBQUM7SUFDbEYsS0FBSyxFQUFFLENBQUM7U0FDTCxNQUFNLEVBQUU7U0FDUixJQUFJLEVBQUU7U0FDTixHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ04sUUFBUSxFQUFFO1NBQ1YsUUFBUSxDQUFDLDJEQUEyRCxDQUFDO0lBQ3hFLFVBQVUsRUFBRSxDQUFDLENBQUMsTUFBTTtTQUNqQixNQUFNLEVBQUU7U0FDUixHQUFHLEVBQUU7U0FDTCxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ04sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUNOLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDVixRQUFRLENBQUMsc0NBQXNDLENBQUM7SUFDbkQsZUFBZSxFQUFFLENBQUMsQ0FBQyxNQUFNO1NBQ3RCLE1BQU0sRUFBRTtTQUNSLEdBQUcsRUFBRTtTQUNMLEdBQUcsQ0FBQyxLQUFLLENBQUM7U0FDVixHQUFHLENBQUMsTUFBTSxDQUFDO1NBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQztTQUNkLFFBQVEsQ0FBQyxvREFBb0QsQ0FBQztJQUNqRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsZ0RBQWdELENBQUM7Q0FDN0YsQ0FBQztLQUNELE1BQU0sRUFBRTtLQUNSLFFBQVEsQ0FBQyxtREFBbUQsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBgZGJ4IGJyYW5kYCBvcHRpb24gY29udHJhY3RzLlxuICpcbiAqIEBtb2R1bGVcbiAqL1xuXG5pbXBvcnQgeyBEYXRhYnJpY2tzQXV0aE9wdGlvbnNTY2hlbWEgfSBmcm9tIFwiQGRieC10b29scy9hdXRoL2NvbmZpZ1wiO1xuaW1wb3J0IHsgeiB9IGZyb20gXCJ6b2RcIjtcblxuLyoqIE9wdGlvbnMgZm9yIGV4cG9ydGluZyBvbmUgcmVzZWFyY2hlZCBicmFuZCBwYWNrYWdlLiAqL1xuZXhwb3J0IGNvbnN0IEJyYW5kRXhwb3J0T3B0aW9uc1NjaGVtYSA9IHpcbiAgLm9iamVjdCh7XG4gICAgcHJvZmlsZTogRGF0YWJyaWNrc0F1dGhPcHRpb25zU2NoZW1hLnNoYXBlLnByb2ZpbGUsXG4gICAgbmFtZTogei5zdHJpbmcoKS50cmltKCkubWluKDEpLm9wdGlvbmFsKCkuZGVzY3JpYmUoXCJLbm93biBjYW5vbmljYWwgYnJhbmQgbmFtZS5cIiksXG4gICAgd2Vic2l0ZTogei5zdHJpbmcoKS51cmwoKS5vcHRpb25hbCgpLmRlc2NyaWJlKFwiS25vd24gb2ZmaWNpYWwgSFRUUFMgd2Vic2l0ZS5cIiksXG4gICAgb3V0cHV0OiB6XG4gICAgICAuc3RyaW5nKClcbiAgICAgIC50cmltKClcbiAgICAgIC5taW4oMSlcbiAgICAgIC5kZWZhdWx0KFwiYnJhbmRpbmdcIilcbiAgICAgIC5kZXNjcmliZShcIk91dHB1dCBkaXJlY3RvcnkgZm9yIGJyYW5kLnlhbWwsIHByb3ZlbmFuY2UsIGFuZCB2aXN1YWwgcmVmZXJlbmNlcy5cIiksXG4gICAgbW9kZWw6IHpcbiAgICAgIC5zdHJpbmcoKVxuICAgICAgLnRyaW0oKVxuICAgICAgLm1pbigxKVxuICAgICAgLm9wdGlvbmFsKClcbiAgICAgIC5kZXNjcmliZShcIk9wdGlvbmFsIERhdGFicmlja3MgbW9kZWwgcHJlZmVyZW5jZSBmb3IgYnJhbmQgc3ludGhlc2lzLlwiKSxcbiAgICBtYXhTb3VyY2VzOiB6LmNvZXJjZVxuICAgICAgLm51bWJlcigpXG4gICAgICAuaW50KClcbiAgICAgIC5taW4oMSlcbiAgICAgIC5tYXgoOClcbiAgICAgIC5kZWZhdWx0KDQpXG4gICAgICAuZGVzY3JpYmUoXCJNYXhpbXVtIGdlbmVyYWwgd2ViIHNvdXJjZXMgdG8gcmVhZC5cIiksXG4gICAgc291cmNlTWF4TGVuZ3RoOiB6LmNvZXJjZVxuICAgICAgLm51bWJlcigpXG4gICAgICAuaW50KClcbiAgICAgIC5taW4oMV8wMDApXG4gICAgICAubWF4KDIwXzAwMClcbiAgICAgIC5kZWZhdWx0KDhfMDAwKVxuICAgICAgLmRlc2NyaWJlKFwiTWF4aW11bSBjaGFyYWN0ZXJzIHJldGFpbmVkIGZyb20gZWFjaCBzb3VyY2UgcGFnZS5cIiksXG4gICAgZm9yY2U6IHouYm9vbGVhbigpLmRlZmF1bHQoZmFsc2UpLmRlc2NyaWJlKFwiUmVwbGFjZSBmaWxlcyBpbiBhbiBleGlzdGluZyBvdXRwdXQgZGlyZWN0b3J5LlwiKSxcbiAgfSlcbiAgLnN0cmljdCgpXG4gIC5kZXNjcmliZShcIk9wdGlvbnMgZm9yIGV4cG9ydGluZyBhIHJlc2VhcmNoZWQgYnJhbmQgcGFja2FnZS5cIik7XG5cbi8qKiBSZXNvbHZlZCBicmFuZCBleHBvcnQgb3B0aW9ucy4gKi9cbmV4cG9ydCB0eXBlIEJyYW5kRXhwb3J0T3B0aW9ucyA9IHoub3V0cHV0PHR5cGVvZiBCcmFuZEV4cG9ydE9wdGlvbnNTY2hlbWE+O1xuIl19
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9icmFuZC9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLDBEQUEwRDtBQUMxRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDO0tBQ3RDLE1BQU0sQ0FBQztJQUNOLE9BQU8sRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsT0FBTztJQUNsRCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLENBQUM7SUFDakYsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsK0JBQStCLENBQUM7SUFDOUUsTUFBTSxFQUFFLENBQUM7U0FDTixNQUFNLEVBQUU7U0FDUixJQUFJLEVBQUU7U0FDTixHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ04sUUFBUSxFQUFFO1NBQ1YsUUFBUSxDQUNQLDBIQUEwSCxDQUMzSDtJQUNILEtBQUssRUFBRSxDQUFDO1NBQ0wsTUFBTSxFQUFFO1NBQ1IsSUFBSSxFQUFFO1NBQ04sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUNOLFFBQVEsRUFBRTtTQUNWLFFBQVEsQ0FBQywyREFBMkQsQ0FBQztJQUN4RSxVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU07U0FDakIsTUFBTSxFQUFFO1NBQ1IsR0FBRyxFQUFFO1NBQ0wsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUNOLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDTixPQUFPLENBQUMsQ0FBQyxDQUFDO1NBQ1YsUUFBUSxDQUFDLHNDQUFzQyxDQUFDO0lBQ25ELGVBQWUsRUFBRSxDQUFDLENBQUMsTUFBTTtTQUN0QixNQUFNLEVBQUU7U0FDUixHQUFHLEVBQUU7U0FDTCxHQUFHLENBQUMsS0FBSyxDQUFDO1NBQ1YsR0FBRyxDQUFDLE1BQU0sQ0FBQztTQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUM7U0FDZCxRQUFRLENBQUMsb0RBQW9ELENBQUM7SUFDakUsUUFBUSxFQUFFLENBQUM7U0FDUixPQUFPLEVBQUU7U0FDVCxPQUFPLENBQUMsSUFBSSxDQUFDO1NBQ2IsUUFBUSxDQUFDLHlEQUF5RCxDQUFDO0lBQ3RFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxnREFBZ0QsQ0FBQztDQUM3RixDQUFDO0tBQ0QsTUFBTSxFQUFFO0tBQ1IsUUFBUSxDQUFDLG1EQUFtRCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGBkYnggYnJhbmRgIG9wdGlvbiBjb250cmFjdHMuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB7IERhdGFicmlja3NBdXRoT3B0aW9uc1NjaGVtYSB9IGZyb20gXCJAZGJ4LXRvb2xzL2F1dGgvY29uZmlnXCI7XG5pbXBvcnQgeyB6IH0gZnJvbSBcInpvZFwiO1xuXG4vKiogT3B0aW9ucyBmb3IgZXhwb3J0aW5nIG9uZSByZXNlYXJjaGVkIGJyYW5kIHBhY2thZ2UuICovXG5leHBvcnQgY29uc3QgQnJhbmRFeHBvcnRPcHRpb25zU2NoZW1hID0gelxuICAub2JqZWN0KHtcbiAgICBwcm9maWxlOiBEYXRhYnJpY2tzQXV0aE9wdGlvbnNTY2hlbWEuc2hhcGUucHJvZmlsZSxcbiAgICBuYW1lOiB6LnN0cmluZygpLnRyaW0oKS5taW4oMSkub3B0aW9uYWwoKS5kZXNjcmliZShcIktub3duIGNhbm9uaWNhbCBicmFuZCBuYW1lLlwiKSxcbiAgICB3ZWJzaXRlOiB6LnN0cmluZygpLnVybCgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoXCJLbm93biBvZmZpY2lhbCBIVFRQUyB3ZWJzaXRlLlwiKSxcbiAgICBvdXRwdXQ6IHpcbiAgICAgIC5zdHJpbmcoKVxuICAgICAgLnRyaW0oKVxuICAgICAgLm1pbigxKVxuICAgICAgLm9wdGlvbmFsKClcbiAgICAgIC5kZXNjcmliZShcbiAgICAgICAgXCJQZXJzaXN0ZW50IG91dHB1dCBkaXJlY3RvcnkgZm9yIGJyYW5kLnlhbWwsIHNob3djYXNlLCBwcm92ZW5hbmNlLCBhbmQgdmlzdWFsIHJlZmVyZW5jZXMuIE9taXQgZm9yIGEgdGVtcG9yYXJ5IGRpcmVjdG9yeS5cIixcbiAgICAgICksXG4gICAgbW9kZWw6IHpcbiAgICAgIC5zdHJpbmcoKVxuICAgICAgLnRyaW0oKVxuICAgICAgLm1pbigxKVxuICAgICAgLm9wdGlvbmFsKClcbiAgICAgIC5kZXNjcmliZShcIk9wdGlvbmFsIERhdGFicmlja3MgbW9kZWwgcHJlZmVyZW5jZSBmb3IgYnJhbmQgc3ludGhlc2lzLlwiKSxcbiAgICBtYXhTb3VyY2VzOiB6LmNvZXJjZVxuICAgICAgLm51bWJlcigpXG4gICAgICAuaW50KClcbiAgICAgIC5taW4oMSlcbiAgICAgIC5tYXgoOClcbiAgICAgIC5kZWZhdWx0KDQpXG4gICAgICAuZGVzY3JpYmUoXCJNYXhpbXVtIGdlbmVyYWwgd2ViIHNvdXJjZXMgdG8gcmVhZC5cIiksXG4gICAgc291cmNlTWF4TGVuZ3RoOiB6LmNvZXJjZVxuICAgICAgLm51bWJlcigpXG4gICAgICAuaW50KClcbiAgICAgIC5taW4oMV8wMDApXG4gICAgICAubWF4KDIwXzAwMClcbiAgICAgIC5kZWZhdWx0KDhfMDAwKVxuICAgICAgLmRlc2NyaWJlKFwiTWF4aW11bSBjaGFyYWN0ZXJzIHJldGFpbmVkIGZyb20gZWFjaCBzb3VyY2UgcGFnZS5cIiksXG4gICAgc2hvd2Nhc2U6IHpcbiAgICAgIC5ib29sZWFuKClcbiAgICAgIC5kZWZhdWx0KHRydWUpXG4gICAgICAuZGVzY3JpYmUoXCJSZXNwb25zaXZlIEhUTUwgYnJhbmQgcHJlc2VudGF0aW9uIGFuZCB3ZWJzaXRlIG1vY2t1cHMuXCIpLFxuICAgIGZvcmNlOiB6LmJvb2xlYW4oKS5kZWZhdWx0KGZhbHNlKS5kZXNjcmliZShcIlJlcGxhY2UgZmlsZXMgaW4gYW4gZXhpc3Rpbmcgb3V0cHV0IGRpcmVjdG9yeS5cIiksXG4gIH0pXG4gIC5zdHJpY3QoKVxuICAuZGVzY3JpYmUoXCJPcHRpb25zIGZvciBleHBvcnRpbmcgYSByZXNlYXJjaGVkIGJyYW5kIHBhY2thZ2UuXCIpO1xuXG4vKiogUmVzb2x2ZWQgYnJhbmQgZXhwb3J0IG9wdGlvbnMuICovXG5leHBvcnQgdHlwZSBCcmFuZEV4cG9ydE9wdGlvbnMgPSB6Lm91dHB1dDx0eXBlb2YgQnJhbmRFeHBvcnRPcHRpb25zU2NoZW1hPjtcbiJdfQ==
@@ -3,11 +3,15 @@
3
3
  *
4
4
  * @module
5
5
  */
6
+ import { mkdtemp } from "node:fs/promises";
7
+ import { tmpdir } from "node:os";
8
+ import path from "node:path";
6
9
  import { generateBrandPackage } from "@dbx-tools/appkit-generator/generate";
7
10
  import { runWebAssetPageFetch, runWebFetch, runWebImageFetch, } from "@dbx-tools/appkit-web-search/fetch";
8
11
  import { createWebSearchRuntime } from "@dbx-tools/appkit-web-search/runtime";
9
12
  import { runWebSearch } from "@dbx-tools/appkit-web-search/search";
10
13
  import { createWorkspaceClient } from "@dbx-tools/databricks/workspace-client";
14
+ import { object } from "@dbx-tools/shared-core";
11
15
  import { writeBrandPackage } from "./export.js";
12
16
  /**
13
17
  * Research a freeform brand brief, synthesize a portable context, and export
@@ -32,7 +36,20 @@ export async function exportBrandFromPrompt(prompt, options, callbacks = {}) {
32
36
  client: workspaceClient,
33
37
  host,
34
38
  ...(options.profile ? { cacheIdentity: `profile:${options.profile}` } : {}),
35
- }, signal),
39
+ }, signal, async (event) => {
40
+ if (!object.isRecord(event))
41
+ return;
42
+ const status = typeof event.status === "string" ? event.status : undefined;
43
+ const eventMessage = typeof event.message === "string" ? event.message.trim() : undefined;
44
+ const detail = typeof event.detail === "string" ? event.detail.trim() : undefined;
45
+ await callbacks.onProgress?.({
46
+ type: "progress",
47
+ stage: "search",
48
+ message: status === "search" && eventMessage
49
+ ? `Web search: ${eventMessage}`
50
+ : `Web search complete${detail ? `: ${detail}` : ""}`,
51
+ });
52
+ }),
36
53
  fetch: (request, signal) => runWebFetch(request, runtime, signal),
37
54
  fetchAssetPage: (request, signal) => runWebAssetPageFetch(request, runtime, signal),
38
55
  fetchImage: (request, signal) => runWebImageFetch(request, runtime, signal),
@@ -48,12 +65,14 @@ export async function exportBrandFromPrompt(prompt, options, callbacks = {}) {
48
65
  });
49
66
  if (!research)
50
67
  throw new Error("Brand generation completed without research provenance");
68
+ const outputDirectory = options.output ?? (await mkdtemp(path.join(tmpdir(), "dbx-tools-brand-")));
51
69
  return writeBrandPackage({
52
- outputDirectory: options.output,
70
+ outputDirectory,
53
71
  prompt,
54
72
  brandPackage,
55
73
  research,
74
+ showcase: options.showcase,
56
75
  force: options.force,
57
76
  });
58
77
  }
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JyYW5kL3J1bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBR0gsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixXQUFXLEVBQ1gsZ0JBQWdCLEdBQ2pCLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBNEIsTUFBTSxhQUFhLENBQUM7QUFRMUU7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsTUFBYyxFQUNkLE9BQTJCLEVBQzNCLFlBQWtDLEVBQUU7SUFFcEMsTUFBTSxlQUFlLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQztRQUNsRCxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDekQsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxJQUFJLEdBQUcsQ0FBQyxNQUFNLGVBQWUsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNqRSxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQztRQUNyQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDbkQsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxRQUFtQyxDQUFDO0lBQ3hDLE1BQU0sWUFBWSxHQUFHLE1BQU0sb0JBQW9CLENBQzdDO1FBQ0UsTUFBTTtRQUNOLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMvQyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDekQsRUFDRDtRQUNFLE1BQU0sRUFBRTtZQUNOLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUMxQixZQUFZLENBQ1YsT0FBTyxFQUNQLE9BQU8sRUFDUDtnQkFDRSxNQUFNLEVBQUUsZUFBZTtnQkFDdkIsSUFBSTtnQkFDSixHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsV0FBVyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQzVFLEVBQ0QsTUFBTSxDQUNQO1lBQ0gsS0FBSyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDO1lBQ2pFLGNBQWMsRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDO1lBQ25GLFVBQVUsRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDO1NBQzVFO1FBQ0QsZUFBZTtRQUNmLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNsRCxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVU7UUFDOUIsZUFBZSxFQUFFLE9BQU8sQ0FBQyxlQUFlO1FBQ3hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNyRSxVQUFVLENBQUMsS0FBSztZQUNkLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDbkIsQ0FBQztLQUNGLENBQ0YsQ0FBQztJQUNGLElBQUksQ0FBQyxRQUFRO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO0lBQ3pGLE9BQU8saUJBQWlCLENBQUM7UUFDdkIsZUFBZSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1FBQy9CLE1BQU07UUFDTixZQUFZO1FBQ1osUUFBUTtRQUNSLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztLQUNyQixDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTdGFuZGFsb25lIHJlc2VhcmNoZWQgYnJhbmQgZ2VuZXJhdGlvbiBmb3IgdGhlIGNvbnNvbGlkYXRlZCBDTEkuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB0eXBlIHsgQnJhbmRSZXNlYXJjaCB9IGZyb20gXCJAZGJ4LXRvb2xzL2FwcGtpdC1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IGdlbmVyYXRlQnJhbmRQYWNrYWdlIH0gZnJvbSBcIkBkYngtdG9vbHMvYXBwa2l0LWdlbmVyYXRvci9nZW5lcmF0ZVwiO1xuaW1wb3J0IHtcbiAgcnVuV2ViQXNzZXRQYWdlRmV0Y2gsXG4gIHJ1bldlYkZldGNoLFxuICBydW5XZWJJbWFnZUZldGNoLFxufSBmcm9tIFwiQGRieC10b29scy9hcHBraXQtd2ViLXNlYXJjaC9mZXRjaFwiO1xuaW1wb3J0IHsgY3JlYXRlV2ViU2VhcmNoUnVudGltZSB9IGZyb20gXCJAZGJ4LXRvb2xzL2FwcGtpdC13ZWItc2VhcmNoL3J1bnRpbWVcIjtcbmltcG9ydCB7IHJ1bldlYlNlYXJjaCB9IGZyb20gXCJAZGJ4LXRvb2xzL2FwcGtpdC13ZWItc2VhcmNoL3NlYXJjaFwiO1xuaW1wb3J0IHsgY3JlYXRlV29ya3NwYWNlQ2xpZW50IH0gZnJvbSBcIkBkYngtdG9vbHMvZGF0YWJyaWNrcy93b3Jrc3BhY2UtY2xpZW50XCI7XG5pbXBvcnQgdHlwZSB7IEJyYW5kR2VuZXJhdGlvblByb2dyZXNzRXZlbnQgfSBmcm9tIFwiQGRieC10b29scy9zaGFyZWQtZ2VuZXJhdG9yXCI7XG5cbmltcG9ydCB7IHdyaXRlQnJhbmRQYWNrYWdlLCB0eXBlIFdyaXR0ZW5CcmFuZFBhY2thZ2UgfSBmcm9tIFwiLi9leHBvcnQudHNcIjtcbmltcG9ydCB0eXBlIHsgQnJhbmRFeHBvcnRPcHRpb25zIH0gZnJvbSBcIi4vb3B0aW9ucy50c1wiO1xuXG4vKiogT3B0aW9uYWwgb2JzZXJ2ZXJzIGZvciBvbmUgQ0xJIGJyYW5kIGdlbmVyYXRpb24gcnVuLiAqL1xuZXhwb3J0IGludGVyZmFjZSBCcmFuZEV4cG9ydENhbGxiYWNrcyB7XG4gIHJlYWRvbmx5IG9uUHJvZ3Jlc3M/OiAoZXZlbnQ6IEJyYW5kR2VuZXJhdGlvblByb2dyZXNzRXZlbnQpID0+IHZvaWQgfCBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFJlc2VhcmNoIGEgZnJlZWZvcm0gYnJhbmQgYnJpZWYsIHN5bnRoZXNpemUgYSBwb3J0YWJsZSBjb250ZXh0LCBhbmQgZXhwb3J0XG4gKiB0aGUgcGFja2FnZSB0byBkaXNrLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhwb3J0QnJhbmRGcm9tUHJvbXB0KFxuICBwcm9tcHQ6IHN0cmluZyxcbiAgb3B0aW9uczogQnJhbmRFeHBvcnRPcHRpb25zLFxuICBjYWxsYmFja3M6IEJyYW5kRXhwb3J0Q2FsbGJhY2tzID0ge30sXG4pOiBQcm9taXNlPFdyaXR0ZW5CcmFuZFBhY2thZ2U+IHtcbiAgY29uc3Qgd29ya3NwYWNlQ2xpZW50ID0gYXdhaXQgY3JlYXRlV29ya3NwYWNlQ2xpZW50KHtcbiAgICAuLi4ob3B0aW9ucy5wcm9maWxlID8geyBwcm9maWxlOiBvcHRpb25zLnByb2ZpbGUgfSA6IHt9KSxcbiAgfSk7XG4gIGNvbnN0IGhvc3QgPSAoYXdhaXQgd29ya3NwYWNlQ2xpZW50LmNvbmZpZy5nZXRIb3N0KCkpLnRvU3RyaW5nKCk7XG4gIGNvbnN0IHJ1bnRpbWUgPSBjcmVhdGVXZWJTZWFyY2hSdW50aW1lKHtcbiAgICAuLi4ob3B0aW9ucy5tb2RlbCA/IHsgbW9kZWw6IG9wdGlvbnMubW9kZWwgfSA6IHt9KSxcbiAgfSk7XG4gIGxldCByZXNlYXJjaDogQnJhbmRSZXNlYXJjaCB8IHVuZGVmaW5lZDtcbiAgY29uc3QgYnJhbmRQYWNrYWdlID0gYXdhaXQgZ2VuZXJhdGVCcmFuZFBhY2thZ2UoXG4gICAge1xuICAgICAgcHJvbXB0LFxuICAgICAgLi4uKG9wdGlvbnMubmFtZSA/IHsgbmFtZTogb3B0aW9ucy5uYW1lIH0gOiB7fSksXG4gICAgICAuLi4ob3B0aW9ucy53ZWJzaXRlID8geyB3ZWJzaXRlOiBvcHRpb25zLndlYnNpdGUgfSA6IHt9KSxcbiAgICB9LFxuICAgIHtcbiAgICAgIGNsaWVudDoge1xuICAgICAgICBzZWFyY2g6IChyZXF1ZXN0LCBzaWduYWwpID0+XG4gICAgICAgICAgcnVuV2ViU2VhcmNoKFxuICAgICAgICAgICAgcmVxdWVzdCxcbiAgICAgICAgICAgIHJ1bnRpbWUsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGNsaWVudDogd29ya3NwYWNlQ2xpZW50LFxuICAgICAgICAgICAgICBob3N0LFxuICAgICAgICAgICAgICAuLi4ob3B0aW9ucy5wcm9maWxlID8geyBjYWNoZUlkZW50aXR5OiBgcHJvZmlsZToke29wdGlvbnMucHJvZmlsZX1gIH0gOiB7fSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2lnbmFsLFxuICAgICAgICAgICksXG4gICAgICAgIGZldGNoOiAocmVxdWVzdCwgc2lnbmFsKSA9PiBydW5XZWJGZXRjaChyZXF1ZXN0LCBydW50aW1lLCBzaWduYWwpLFxuICAgICAgICBmZXRjaEFzc2V0UGFnZTogKHJlcXVlc3QsIHNpZ25hbCkgPT4gcnVuV2ViQXNzZXRQYWdlRmV0Y2gocmVxdWVzdCwgcnVudGltZSwgc2lnbmFsKSxcbiAgICAgICAgZmV0Y2hJbWFnZTogKHJlcXVlc3QsIHNpZ25hbCkgPT4gcnVuV2ViSW1hZ2VGZXRjaChyZXF1ZXN0LCBydW50aW1lLCBzaWduYWwpLFxuICAgICAgfSxcbiAgICAgIHdvcmtzcGFjZUNsaWVudCxcbiAgICAgIC4uLihvcHRpb25zLm1vZGVsID8geyBtb2RlbDogb3B0aW9ucy5tb2RlbCB9IDoge30pLFxuICAgICAgbWF4U291cmNlczogb3B0aW9ucy5tYXhTb3VyY2VzLFxuICAgICAgc291cmNlTWF4TGVuZ3RoOiBvcHRpb25zLnNvdXJjZU1heExlbmd0aCxcbiAgICAgIC4uLihjYWxsYmFja3Mub25Qcm9ncmVzcyA/IHsgb25Qcm9ncmVzczogY2FsbGJhY2tzLm9uUHJvZ3Jlc3MgfSA6IHt9KSxcbiAgICAgIG9uUmVzZWFyY2godmFsdWUpIHtcbiAgICAgICAgcmVzZWFyY2ggPSB2YWx1ZTtcbiAgICAgIH0sXG4gICAgfSxcbiAgKTtcbiAgaWYgKCFyZXNlYXJjaCkgdGhyb3cgbmV3IEVycm9yKFwiQnJhbmQgZ2VuZXJhdGlvbiBjb21wbGV0ZWQgd2l0aG91dCByZXNlYXJjaCBwcm92ZW5hbmNlXCIpO1xuICByZXR1cm4gd3JpdGVCcmFuZFBhY2thZ2Uoe1xuICAgIG91dHB1dERpcmVjdG9yeTogb3B0aW9ucy5vdXRwdXQsXG4gICAgcHJvbXB0LFxuICAgIGJyYW5kUGFja2FnZSxcbiAgICByZXNlYXJjaCxcbiAgICBmb3JjZTogb3B0aW9ucy5mb3JjZSxcbiAgfSk7XG59XG4iXX0=
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JyYW5kL3J1bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDakMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBRTdCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVFLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHaEQsT0FBTyxFQUFFLGlCQUFpQixFQUE0QixNQUFNLGFBQWEsQ0FBQztBQVExRTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLHFCQUFxQixDQUN6QyxNQUFjLEVBQ2QsT0FBMkIsRUFDM0IsWUFBa0MsRUFBRTtJQUVwQyxNQUFNLGVBQWUsR0FBRyxNQUFNLHFCQUFxQixDQUFDO1FBQ2xELEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUN6RCxDQUFDLENBQUM7SUFDSCxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sZUFBZSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lB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QyxFQUFFLENBQUM7UUFDbEQsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVO1FBQzlCLGVBQWUsRUFBRSxPQUFPLENBQUMsZUFBZTtRQUN4QyxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDckUsVUFBVSxDQUFDLEtBQUs7WUFDZCxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ25CLENBQUM7S0FDRixDQUNGLENBQUM7SUFDRixJQUFJLENBQUMsUUFBUTtRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQztJQUN6RixNQUFNLGVBQWUsR0FDbkIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0UsT0FBTyxpQkFBaUIsQ0FBQztRQUN2QixlQUFlO1FBQ2YsTUFBTTtRQUNOLFlBQVk7UUFDWixRQUFRO1FBQ1IsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1FBQzFCLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztLQUNyQixDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTdGFuZGFsb25lIHJlc2VhcmNoZWQgYnJhbmQgZ2VuZXJhdGlvbiBmb3IgdGhlIGNvbnNvbGlkYXRlZCBDTEkuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB7IG1rZHRlbXAgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgdG1wZGlyIH0gZnJvbSBcIm5vZGU6b3NcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB0eXBlIHsgQnJhbmRSZXNlYXJjaCB9IGZyb20gXCJAZGJ4LXRvb2xzL2FwcGtpdC1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IGdlbmVyYXRlQnJhbmRQYWNrYWdlIH0gZnJvbSBcIkBkYngtdG9vbHMvYXBwa2l0LWdlbmVyYXRvci9nZW5lcmF0ZVwiO1xuaW1wb3J0IHtcbiAgcnVuV2ViQXNzZXRQYWdlRmV0Y2gsXG4gIHJ1bldlYkZldGNoLFxuICBydW5XZWJJbWFnZUZldGNoLFxufSBmcm9tIFwiQGRieC10b29scy9hcHBraXQtd2ViLXNlYXJjaC9mZXRjaFwiO1xuaW1wb3J0IHsgY3JlYXRlV2ViU2VhcmNoUnVudGltZSB9IGZyb20gXCJAZGJ4LXRvb2xzL2FwcGtpdC13ZWItc2VhcmNoL3J1bnRpbWVcIjtcbmltcG9ydCB7IHJ1bldlYlNlYXJjaCB9IGZyb20gXCJAZGJ4LXRvb2xzL2FwcGtpdC13ZWItc2VhcmNoL3NlYXJjaFwiO1xuaW1wb3J0IHsgY3JlYXRlV29ya3NwYWNlQ2xpZW50IH0gZnJvbSBcIkBkYngtdG9vbHMvZGF0YWJyaWNrcy93b3Jrc3BhY2UtY2xpZW50XCI7XG5pbXBvcnQgeyBvYmplY3QgfSBmcm9tIFwiQGRieC10b29scy9zaGFyZWQtY29yZVwiO1xuaW1wb3J0IHR5cGUgeyBCcmFuZEdlbmVyYXRpb25Qcm9ncmVzc0V2ZW50IH0gZnJvbSBcIkBkYngtdG9vbHMvc2hhcmVkLWdlbmVyYXRvclwiO1xuXG5pbXBvcnQgeyB3cml0ZUJyYW5kUGFja2FnZSwgdHlwZSBXcml0dGVuQnJhbmRQYWNrYWdlIH0gZnJvbSBcIi4vZXhwb3J0LnRzXCI7XG5pbXBvcnQgdHlwZSB7IEJyYW5kRXhwb3J0T3B0aW9ucyB9IGZyb20gXCIuL29wdGlvbnMudHNcIjtcblxuLyoqIE9wdGlvbmFsIG9ic2VydmVycyBmb3Igb25lIENMSSBicmFuZCBnZW5lcmF0aW9uIHJ1bi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnJhbmRFeHBvcnRDYWxsYmFja3Mge1xuICByZWFkb25seSBvblByb2dyZXNzPzogKGV2ZW50OiBCcmFuZEdlbmVyYXRpb25Qcm9ncmVzc0V2ZW50KSA9PiB2b2lkIHwgUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBSZXNlYXJjaCBhIGZyZWVmb3JtIGJyYW5kIGJyaWVmLCBzeW50aGVzaXplIGEgcG9ydGFibGUgY29udGV4dCwgYW5kIGV4cG9ydFxuICogdGhlIHBhY2thZ2UgdG8gZGlzay5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4cG9ydEJyYW5kRnJvbVByb21wdChcbiAgcHJvbXB0OiBzdHJpbmcsXG4gIG9wdGlvbnM6IEJyYW5kRXhwb3J0T3B0aW9ucyxcbiAgY2FsbGJhY2tzOiBCcmFuZEV4cG9ydENhbGxiYWNrcyA9IHt9LFxuKTogUHJvbWlzZTxXcml0dGVuQnJhbmRQYWNrYWdlPiB7XG4gIGNvbnN0IHdvcmtzcGFjZUNsaWVudCA9IGF3YWl0IGNyZWF0ZVdvcmtzcGFjZUNsaWVudCh7XG4gICAgLi4uKG9wdGlvbnMucHJvZmlsZSA/IHsgcHJvZmlsZTogb3B0aW9ucy5wcm9maWxlIH0gOiB7fSksXG4gIH0pO1xuICBjb25zdCBob3N0ID0gKGF3YWl0IHdvcmtzcGFjZUNsaWVudC5jb25maWcuZ2V0SG9zdCgpKS50b1N0cmluZygpO1xuICBjb25zdCBydW50aW1lID0gY3JlYXRlV2ViU2VhcmNoUnVudGltZSh7XG4gICAgLi4uKG9wdGlvbnMubW9kZWwgPyB7IG1vZGVsOiBvcHRpb25zLm1vZGVsIH0gOiB7fSksXG4gIH0pO1xuICBsZXQgcmVzZWFyY2g6IEJyYW5kUmVzZWFyY2ggfCB1bmRlZmluZWQ7XG4gIGNvbnN0IGJyYW5kUGFja2FnZSA9IGF3YWl0IGdlbmVyYXRlQnJhbmRQYWNrYWdlKFxuICAgIHtcbiAgICAgIHByb21wdCxcbiAgICAgIC4uLihvcHRpb25zLm5hbWUgPyB7IG5hbWU6IG9wdGlvbnMubmFtZSB9IDoge30pLFxuICAgICAgLi4uKG9wdGlvbnMud2Vic2l0ZSA/IHsgd2Vic2l0ZTogb3B0aW9ucy53ZWJzaXRlIH0gOiB7fSksXG4gICAgfSxcbiAgICB7XG4gICAgICBjbGllbnQ6IHtcbiAgICAgICAgc2VhcmNoOiAocmVxdWVzdCwgc2lnbmFsKSA9PlxuICAgICAgICAgIHJ1bldlYlNlYXJjaChcbiAgICAgICAgICAgIHJlcXVlc3QsXG4gICAgICAgICAgICBydW50aW1lLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBjbGllbnQ6IHdvcmtzcGFjZUNsaWVudCxcbiAgICAgICAgICAgICAgaG9zdCxcbiAgICAgICAgICAgICAgLi4uKG9wdGlvbnMucHJvZmlsZSA/IHsgY2FjaGVJZGVudGl0eTogYHByb2ZpbGU6JHtvcHRpb25zLnByb2ZpbGV9YCB9IDoge30pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNpZ25hbCxcbiAgICAgICAgICAgIGFzeW5jIChldmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIW9iamVjdC5pc1JlY29yZChldmVudCkpIHJldHVybjtcbiAgICAgICAgICAgICAgY29uc3Qgc3RhdHVzID0gdHlwZW9mIGV2ZW50LnN0YXR1cyA9PT0gXCJzdHJpbmdcIiA/IGV2ZW50LnN0YXR1cyA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgY29uc3QgZXZlbnRNZXNzYWdlID1cbiAgICAgICAgICAgICAgICB0eXBlb2YgZXZlbnQubWVzc2FnZSA9PT0gXCJzdHJpbmdcIiA/IGV2ZW50Lm1lc3NhZ2UudHJpbSgpIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICBjb25zdCBkZXRhaWwgPSB0eXBlb2YgZXZlbnQuZGV0YWlsID09PSBcInN0cmluZ1wiID8gZXZlbnQuZGV0YWlsLnRyaW0oKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgYXdhaXQgY2FsbGJhY2tzLm9uUHJvZ3Jlc3M/Lih7XG4gICAgICAgICAgICAgICAgdHlwZTogXCJwcm9ncmVzc1wiLFxuICAgICAgICAgICAgICAgIHN0YWdlOiBcInNlYXJjaFwiLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6XG4gICAgICAgICAgICAgICAgICBzdGF0dXMgPT09IFwic2VhcmNoXCIgJiYgZXZlbnRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgID8gYFdlYiBzZWFyY2g6ICR7ZXZlbnRNZXNzYWdlfWBcbiAgICAgICAgICAgICAgICAgICAgOiBgV2ViIHNlYXJjaCBjb21wbGV0ZSR7ZGV0YWlsID8gYDogJHtkZXRhaWx9YCA6IFwiXCJ9YCxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICksXG4gICAgICAgIGZldGNoOiAocmVxdWVzdCwgc2lnbmFsKSA9PiBydW5XZWJGZXRjaChyZXF1ZXN0LCBydW50aW1lLCBzaWduYWwpLFxuICAgICAgICBmZXRjaEFzc2V0UGFnZTogKHJlcXVlc3QsIHNpZ25hbCkgPT4gcnVuV2ViQXNzZXRQYWdlRmV0Y2gocmVxdWVzdCwgcnVudGltZSwgc2lnbmFsKSxcbiAgICAgICAgZmV0Y2hJbWFnZTogKHJlcXVlc3QsIHNpZ25hbCkgPT4gcnVuV2ViSW1hZ2VGZXRjaChyZXF1ZXN0LCBydW50aW1lLCBzaWduYWwpLFxuICAgICAgfSxcbiAgICAgIHdvcmtzcGFjZUNsaWVudCxcbiAgICAgIC4uLihvcHRpb25zLm1vZGVsID8geyBtb2RlbDogb3B0aW9ucy5tb2RlbCB9IDoge30pLFxuICAgICAgbWF4U291cmNlczogb3B0aW9ucy5tYXhTb3VyY2VzLFxuICAgICAgc291cmNlTWF4TGVuZ3RoOiBvcHRpb25zLnNvdXJjZU1heExlbmd0aCxcbiAgICAgIC4uLihjYWxsYmFja3Mub25Qcm9ncmVzcyA/IHsgb25Qcm9ncmVzczogY2FsbGJhY2tzLm9uUHJvZ3Jlc3MgfSA6IHt9KSxcbiAgICAgIG9uUmVzZWFyY2godmFsdWUpIHtcbiAgICAgICAgcmVzZWFyY2ggPSB2YWx1ZTtcbiAgICAgIH0sXG4gICAgfSxcbiAgKTtcbiAgaWYgKCFyZXNlYXJjaCkgdGhyb3cgbmV3IEVycm9yKFwiQnJhbmQgZ2VuZXJhdGlvbiBjb21wbGV0ZWQgd2l0aG91dCByZXNlYXJjaCBwcm92ZW5hbmNlXCIpO1xuICBjb25zdCBvdXRwdXREaXJlY3RvcnkgPVxuICAgIG9wdGlvbnMub3V0cHV0ID8/IChhd2FpdCBta2R0ZW1wKHBhdGguam9pbih0bXBkaXIoKSwgXCJkYngtdG9vbHMtYnJhbmQtXCIpKSk7XG4gIHJldHVybiB3cml0ZUJyYW5kUGFja2FnZSh7XG4gICAgb3V0cHV0RGlyZWN0b3J5LFxuICAgIHByb21wdCxcbiAgICBicmFuZFBhY2thZ2UsXG4gICAgcmVzZWFyY2gsXG4gICAgc2hvd2Nhc2U6IG9wdGlvbnMuc2hvd2Nhc2UsXG4gICAgZm9yY2U6IG9wdGlvbnMuZm9yY2UsXG4gIH0pO1xufVxuIl19
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Self-contained HTML presentation for an exported brand package.
3
+ *
4
+ * @module
5
+ */
6
+ import type { BrandPackage } from "@dbx-tools/shared-generator";
7
+ /** Render one responsive brand presentation with desktop and mobile mockups. */
8
+ export declare function renderBrandShowcase(brandPackage: BrandPackage): string;