@dbx-tools/core 0.9.131 → 0.9.133
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 +35 -40
- package/index.ts +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +2 -2
- package/lib/src/brand-files.d.ts +2 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
# @dbx-tools/core
|
|
2
2
|
|
|
3
|
-
Node
|
|
4
|
-
execution, locking, and project discovery.
|
|
3
|
+
Use shared Node and Bun helpers for layered configuration, binary installation,
|
|
4
|
+
process execution, locking, and project discovery. Browser-safe utilities live in
|
|
5
|
+
[@dbx-tools/shared-core](../../shared/core).
|
|
5
6
|
|
|
6
|
-
|
|
7
|
-
and locking behavior used by the Node packages in this repository. Browser-safe
|
|
8
|
-
utilities live in
|
|
9
|
-
[`@dbx-tools/shared-core`](../../shared/core).
|
|
10
|
-
|
|
11
|
-
## Quick Start
|
|
7
|
+
## Quick start
|
|
12
8
|
|
|
13
9
|
Resolve a scoped setting through the shared environment and project-file rules:
|
|
14
10
|
|
|
@@ -20,7 +16,7 @@ const publicDomain = configUtils.string(undefined, "PUBLIC_DOMAIN", {
|
|
|
20
16
|
});
|
|
21
17
|
```
|
|
22
18
|
|
|
23
|
-
|
|
19
|
+
Use this package for:
|
|
24
20
|
|
|
25
21
|
- Async and sync process execution with consistent stdio handling.
|
|
26
22
|
- AbortSignal support for long-running subprocesses.
|
|
@@ -41,7 +37,7 @@ Key features:
|
|
|
41
37
|
- npm dependency resolution from an in-memory `package.json` against the
|
|
42
38
|
configured registry.
|
|
43
39
|
|
|
44
|
-
## Install
|
|
40
|
+
## Install a binary
|
|
45
41
|
|
|
46
42
|
```ts
|
|
47
43
|
import { join } from "node:path";
|
|
@@ -65,10 +61,10 @@ duplicate downloads across processes and worker threads.
|
|
|
65
61
|
After the lock, a function URL receives `{ tempDir }` so a local installer can
|
|
66
62
|
write under that directory. Direct HTTP downloads are selected by default. A `file://` URL is
|
|
67
63
|
copied without fetching or unpacking. Zip, tar, tar.gz, and tgz archives can
|
|
68
|
-
be unpacked automatically
|
|
64
|
+
be unpacked automatically. A single-file archive needs no selector, while a
|
|
69
65
|
selector can choose a binary from a larger archive. The selected file is
|
|
70
66
|
normalized to mode `0755` and must report an acceptable version before it is
|
|
71
|
-
atomically moved into place
|
|
67
|
+
atomically moved into place. The final renamed path runs the same validation
|
|
72
68
|
again before returning.
|
|
73
69
|
|
|
74
70
|
Every candidate runs with `--version` before it is accepted. Set
|
|
@@ -76,16 +72,16 @@ Every candidate runs with `--version` before it is accepted. Set
|
|
|
76
72
|
or complete numeric floor such as `1`, `1.2`, or `1.3.5`. The default parser
|
|
77
73
|
searches stdout first, then stderr. It accepts one to three numeric components
|
|
78
74
|
with common npm/Python suffixes such as `1.2.3-rc.1`, `1.2.3rc1`, or
|
|
79
|
-
`1.2.3.patchdev
|
|
75
|
+
`1.2.3.patchdev`. Candidates with more components rank first, then the highest
|
|
80
76
|
numeric candidate wins. Supply `versionParser({ stdout, stderr })` for another
|
|
81
77
|
output format.
|
|
82
78
|
|
|
83
|
-
Successful installs log an info event with the source URL and destination path
|
|
84
|
-
|
|
79
|
+
Successful installs log an info event with the source URL and destination path.
|
|
80
|
+
Credentials, query parameters, and fragments are removed from the URL. Set
|
|
85
81
|
`LOG_LEVEL=debug` to trace access checks, version decisions, locking, downloads,
|
|
86
82
|
archive extraction, and selection.
|
|
87
83
|
|
|
88
|
-
## Load
|
|
84
|
+
## Load brand context
|
|
89
85
|
|
|
90
86
|
```ts
|
|
91
87
|
import { brandFiles } from "@dbx-tools/core";
|
|
@@ -95,11 +91,11 @@ const context = await brandFiles.loadBrandContext();
|
|
|
95
91
|
|
|
96
92
|
`loadBrandContext()` searches known npm/git project roots for
|
|
97
93
|
`branding/brand.yaml`, `.yml`, or `.json`, followed by equivalent root-level
|
|
98
|
-
files. Missing files return the
|
|
94
|
+
files. Missing files return the full dbx-tools default context. Malformed
|
|
99
95
|
files fail validation. Use `loadBrandContextFile(path)` for an explicit file and
|
|
100
96
|
`resolveBrandAssetPath(path, asset)` for relative asset references.
|
|
101
97
|
|
|
102
|
-
## Resolve
|
|
98
|
+
## Resolve configuration
|
|
103
99
|
|
|
104
100
|
```ts
|
|
105
101
|
import { configUtils } from "@dbx-tools/core";
|
|
@@ -117,10 +113,10 @@ bundle configuration, then `app.yaml` / `app.yml` env values. The default
|
|
|
117
113
|
`DBX_TOOLS` scope and an optional capability prefix produce names such as
|
|
118
114
|
`DBX_TOOLS_TUNNEL_PUBLIC_DOMAIN`, then
|
|
119
115
|
`TUNNEL_PUBLIC_DOMAIN`, then `PUBLIC_DOMAIN`. `.env.production` and `.env.prod`
|
|
120
|
-
are checked before `.env` when `NODE_ENV=production
|
|
116
|
+
are checked before `.env` when `NODE_ENV=production`. Development uses
|
|
121
117
|
`.env.development` and `.env.dev`.
|
|
122
118
|
|
|
123
|
-
Pass one config map or an array of maps through `data
|
|
119
|
+
Pass one config map or an array of maps through `data`. The first matching value
|
|
124
120
|
wins before environment lookup by default. When a custom `sources` order omits
|
|
125
121
|
`config`, passed data is still read and is appended last. This lets a caller put
|
|
126
122
|
env first without accidentally discarding its fallback config:
|
|
@@ -138,7 +134,7 @@ const endpoint = config.resolveValue("lakebaseEndpoint", {
|
|
|
138
134
|
Bundle lookup runs `databricks bundle validate --output json` only after earlier
|
|
139
135
|
sources miss. It reads literal values from the single App's `config.env`, accepts
|
|
140
136
|
usable partial JSON from a failed validation, and honors the active Databricks
|
|
141
|
-
profile. Parsed dotenv records are cached by file path
|
|
137
|
+
profile. Parsed dotenv records are cached by file path. Parsed bundle output is
|
|
142
138
|
cached by bundle path plus profile. App YAML lookup runs only if the bundle did
|
|
143
139
|
not resolve the key and reads `env[].value` entries. Bundle `value_from` and App
|
|
144
140
|
YAML `valueFrom` references resolve supported fields from their named
|
|
@@ -160,8 +156,8 @@ deterministic path as CLIs and ordinary Node consumers.
|
|
|
160
156
|
Deployed Apps skip dotenv, bundle, and app YAML lookup after
|
|
161
157
|
`environmentUtils.isDatabricksAppEnv()` from `@dbx-tools/shared-core` recognizes
|
|
162
158
|
the required App name, HTTP(S) host, and valid port, or the Apps container source
|
|
163
|
-
tree. Set `DBX_TOOLS_DATABRICKS_APP_ENV=true` or `false` to force that result
|
|
164
|
-
|
|
159
|
+
tree. Set `DBX_TOOLS_DATABRICKS_APP_ENV=true` or `false` to force that result.
|
|
160
|
+
Unrecognized values leave automatic detection in place.
|
|
165
161
|
|
|
166
162
|
`DBX_TOOLS_CONFIG_DOTENV`, `DBX_TOOLS_CONFIG_BUNDLE`, and
|
|
167
163
|
`DBX_TOOLS_CONFIG_APP` independently force those file sources on or off. A
|
|
@@ -169,17 +165,17 @@ recognized boolean takes precedence over App
|
|
|
169
165
|
runtime detection, so `true` can enable a local source inside an App and `false`
|
|
170
166
|
can suppress it during local development. Absent or unrecognized values keep
|
|
171
167
|
the default: read files outside an App and skip them inside one. Bundle reads
|
|
172
|
-
also default off when `NODE_ENV=production
|
|
168
|
+
also default off when `NODE_ENV=production`. Set
|
|
173
169
|
`DBX_TOOLS_CONFIG_BUNDLE=true` to opt into bundle validation there.
|
|
174
170
|
|
|
175
171
|
Use `config.string()`, `boolean()`, `positiveNumber()`, `positiveInt()`,
|
|
176
172
|
`port()`, and `list()` to normalize typed options and text-based configuration
|
|
177
|
-
through one rule. `config.port()` accepts only TCP ports from 1 through 65535
|
|
173
|
+
through one rule. `config.port()` accepts only TCP ports from 1 through 65535.
|
|
178
174
|
`config.ENV_ONLY` disables file fallbacks for exact environment reads.
|
|
179
175
|
`config.flattenBundleEnv()`, `flattenAppEnv()`, and `getBundlePath()` expose the
|
|
180
176
|
same parsing logic for callers that already have parsed configuration data.
|
|
181
177
|
|
|
182
|
-
## Discover
|
|
178
|
+
## Discover bundle App resources
|
|
183
179
|
|
|
184
180
|
```ts
|
|
185
181
|
import { bundle } from "@dbx-tools/core";
|
|
@@ -202,7 +198,7 @@ A failed validation that still returns partial App resources attaches
|
|
|
202
198
|
nothing. Missing, invalid, or out-of-bound project paths also yield nothing.
|
|
203
199
|
Malformed successful CLI output throws while the generator is consumed.
|
|
204
200
|
|
|
205
|
-
## Run
|
|
201
|
+
## Run commands
|
|
206
202
|
|
|
207
203
|
```ts
|
|
208
204
|
import { exec } from "@dbx-tools/core";
|
|
@@ -225,8 +221,8 @@ tree, waits 8 seconds, then force-kills survivors and polls for 4 more seconds.
|
|
|
225
221
|
Callers may override those timeouts but not the platform signal policy. Parent
|
|
226
222
|
termination signals are forwarded through one process-global trap unless
|
|
227
223
|
`forwardTerminationSignals: false` is set. Subscribe with
|
|
228
|
-
`exec.onParentTerminationSignal` instead of adding another `process` listener
|
|
229
|
-
|
|
224
|
+
`exec.onParentTerminationSignal` instead of adding another `process` listener.
|
|
225
|
+
Extra listeners change whether that trap re-raises the signal after children
|
|
230
226
|
exit.
|
|
231
227
|
|
|
232
228
|
When an executable is missing, `spawn()` and `spawnSync()` return
|
|
@@ -237,7 +233,7 @@ Prefer `spawn()` over ad hoc `child_process` calls when command output needs to
|
|
|
237
233
|
be captured, streamed line-by-line, or aborted consistently from higher-level
|
|
238
234
|
tooling.
|
|
239
235
|
|
|
240
|
-
## Run
|
|
236
|
+
## Run synchronously
|
|
241
237
|
|
|
242
238
|
```ts
|
|
243
239
|
const rev = exec
|
|
@@ -252,7 +248,7 @@ control flow is not available. Synchronous children remain in the parent's
|
|
|
252
248
|
process group so terminal signals reach both processes. JavaScript signal traps
|
|
253
249
|
cannot run while the parent is blocked in `spawnSync()`.
|
|
254
250
|
|
|
255
|
-
## Split
|
|
251
|
+
## Split shell-like commands
|
|
256
252
|
|
|
257
253
|
```ts
|
|
258
254
|
const argv = exec.shlex('pnpm exec prettier --write "README.md"');
|
|
@@ -261,7 +257,7 @@ const argv = exec.shlex('pnpm exec prettier --write "README.md"');
|
|
|
261
257
|
`shlex()` is a small parser for command strings that need to become argv arrays.
|
|
262
258
|
Prefer explicit argv arrays when possible.
|
|
263
259
|
|
|
264
|
-
## Serialize
|
|
260
|
+
## Serialize work across threads
|
|
265
261
|
|
|
266
262
|
```ts
|
|
267
263
|
import { processLock } from "@dbx-tools/core";
|
|
@@ -272,14 +268,14 @@ await processLock.withProcessLock(["cache", name], async () => {
|
|
|
272
268
|
```
|
|
273
269
|
|
|
274
270
|
`withProcessLock()` runs the callback while holding the named lock, releasing it
|
|
275
|
-
when the callback settles. Callers sharing a key are serialized
|
|
271
|
+
when the callback settles. Callers sharing a key are serialized. Distinct keys
|
|
276
272
|
run concurrently. The key is any value with a stable identity - a string, a
|
|
277
273
|
`["invoice", id]` tuple, a config object - canonicalized by `object.toStableKey`,
|
|
278
274
|
so structure counts: `["invoice", 7]` and `"invoice_7"` are different locks.
|
|
279
275
|
|
|
280
276
|
Use it instead of a module-level promise chain when worker threads are involved.
|
|
281
277
|
A promise chain only serializes the thread it lives on, so a worker pool runs one
|
|
282
|
-
callback per thread
|
|
278
|
+
callback per thread. The coordinator here is shared, so the key admits one
|
|
283
279
|
callback for the whole process.
|
|
284
280
|
|
|
285
281
|
Workers opt in when they are constructed:
|
|
@@ -302,10 +298,10 @@ never keeps the process from exiting.
|
|
|
302
298
|
The scope is the THREADS of one process - `withProcessLock` shares nothing with a
|
|
303
299
|
second `node` invocation or another replica. When the critical section spans a
|
|
304
300
|
deployment, use
|
|
305
|
-
[
|
|
301
|
+
[@dbx-tools/postgres](../postgres)'s `withAdvisoryLock`, which puts the arbiter
|
|
306
302
|
in PostgreSQL where every replica can see it.
|
|
307
303
|
|
|
308
|
-
## Serialize
|
|
304
|
+
## Serialize work across processes
|
|
309
305
|
|
|
310
306
|
```ts
|
|
311
307
|
import { fileLock } from "@dbx-tools/core";
|
|
@@ -330,7 +326,7 @@ Use `processLock.withProcessLock()` when only threads in one process compete,
|
|
|
330
326
|
`fileLock.withFileLock()` when local processes compete, and Postgres advisory
|
|
331
327
|
locks when multiple app replicas need one arbiter.
|
|
332
328
|
|
|
333
|
-
## Discover
|
|
329
|
+
## Discover project roots
|
|
334
330
|
|
|
335
331
|
```ts
|
|
336
332
|
import { projectUtils } from "@dbx-tools/core";
|
|
@@ -346,10 +342,10 @@ const cwd = projectUtils.resolveWorkingDirectory("");
|
|
|
346
342
|
basename. `projectUtils.resolveWorkingDirectory()` normalizes blank, null, omitted,
|
|
347
343
|
relative, and absolute cwd values for cache decisions. Project subprocess probes
|
|
348
344
|
share a command/argument result cache only when that resolved path is the live
|
|
349
|
-
process cwd
|
|
345
|
+
process cwd. Another directory runs directly. Empty command results are
|
|
350
346
|
cached too.
|
|
351
347
|
|
|
352
|
-
## Resolve npm
|
|
348
|
+
## Resolve npm dependencies
|
|
353
349
|
|
|
354
350
|
```ts
|
|
355
351
|
import { readFile } from "node:fs/promises";
|
|
@@ -401,7 +397,6 @@ this when a mirror or delayed proxy 404s versions that public npm already has.
|
|
|
401
397
|
- `brand` - YAML/JSON discovery, parsing, validation, and asset path resolution.
|
|
402
398
|
- `config` - scoped environment, dotenv, and validated Databricks bundle lookup,
|
|
403
399
|
including runtime detection and typed coercion helpers.
|
|
404
|
-
- `file` - best-effort filesystem stat.
|
|
405
400
|
- `fileLock` - portable cross-process lock directories shared by Bun and Node,
|
|
406
401
|
with an explicit `flock` option.
|
|
407
402
|
- `processLock` - keyed mutual exclusion across the main thread and its workers,
|
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/core";
|
|
6
|
-
export const PACKAGE_VERSION = "0.9.
|
|
6
|
+
export const PACKAGE_VERSION = "0.9.133";
|
|
7
7
|
export * as bin from "./src/bin.ts";
|
|
8
8
|
export * as brandFiles from "./src/brand-files.ts";
|
|
9
9
|
export * as bundle from "./src/bundle.ts";
|
package/lib/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const PACKAGE_IDENTIFIER = "@dbx-tools/core";
|
|
2
|
-
export declare const PACKAGE_VERSION = "0.9.
|
|
2
|
+
export declare const PACKAGE_VERSION = "0.9.133";
|
|
3
3
|
export * as bin from "./src/bin.ts";
|
|
4
4
|
export * as brandFiles from "./src/brand-files.ts";
|
|
5
5
|
export * as bundle from "./src/bundle.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/core";
|
|
5
|
-
export const PACKAGE_VERSION = "0.9.
|
|
5
|
+
export const PACKAGE_VERSION = "0.9.133";
|
|
6
6
|
export * as bin from "./src/bin.js";
|
|
7
7
|
export * as brandFiles from "./src/brand-files.js";
|
|
8
8
|
export * as bundle from "./src/bundle.js";
|
|
@@ -16,4 +16,4 @@ export * as projectUtils from "./src/project-utils.js";
|
|
|
16
16
|
export { BrandContextSchema, defaultBrandContext, parseBrandContext, brandContextJsonSchema, brandContextPrompt } from "./src/brand-files.js";
|
|
17
17
|
export { MAX_TCP_PORT, ENV_ONLY, valueSchema, bundleResourceSchema, bundleEnvEntrySchema, bundleAppSchema, appEnvEntrySchema, appSchema, toNumber } from "./src/config-utils.js";
|
|
18
18
|
export { COMMAND_NOT_FOUND_EXIT_CODE } from "./src/exec.js";
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxpQkFBaUIsQ0FBQztBQUNwRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxHQUFHLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sS0FBSyxVQUFVLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxLQUFLLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEtBQUssV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxrQkFBa0IsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEtBQUssSUFBSSxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEtBQUssSUFBSSxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEtBQUssUUFBUSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxLQUFLLFlBQVksTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5SSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdqTCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHRU5FUkFURUQgYnkgcHJvamVuIHdhdGNoIC0gRE8gTk9UIEVESVQuXG4vLyBSZWdlbmVyYXRlZCBmcm9tIHRoZSBleHBvcnRpbmcgbW9kdWxlcyBpbiAuL3NyYy5cbi8vIEhhbmQgZWRpdHMgYXJlIG92ZXJ3cml0dGVuIG9uIHRoZSBuZXh0IHdhdGNoOyB0aGlzIGZpbGUgaXMgcmVhZC1vbmx5LlxuXG5leHBvcnQgY29uc3QgUEFDS0FHRV9JREVOVElGSUVSID0gXCJAZGJ4LXRvb2xzL2NvcmVcIjtcbmV4cG9ydCBjb25zdCBQQUNLQUdFX1ZFUlNJT04gPSBcIjAuOS4xMzNcIjtcbmV4cG9ydCAqIGFzIGJpbiBmcm9tIFwiLi9zcmMvYmluLnRzXCI7XG5leHBvcnQgKiBhcyBicmFuZEZpbGVzIGZyb20gXCIuL3NyYy9icmFuZC1maWxlcy50c1wiO1xuZXhwb3J0ICogYXMgYnVuZGxlIGZyb20gXCIuL3NyYy9idW5kbGUudHNcIjtcbmV4cG9ydCAqIGFzIGNvbmZpZ1V0aWxzIGZyb20gXCIuL3NyYy9jb25maWctdXRpbHMudHNcIjtcbmV4cG9ydCAqIGFzIGRlcGVuZGVuY3lSZXNvbHZlciBmcm9tIFwiLi9zcmMvZGVwZW5kZW5jeS1yZXNvbHZlci50c1wiO1xuZXhwb3J0ICogYXMgZXhlYyBmcm9tIFwiLi9zcmMvZXhlYy50c1wiO1xuZXhwb3J0ICogYXMgZmlsZSBmcm9tIFwiLi9zcmMvZmlsZS50c1wiO1xuZXhwb3J0ICogYXMgZmlsZUxvY2sgZnJvbSBcIi4vc3JjL2ZpbGUtbG9jay50c1wiO1xuZXhwb3J0ICogYXMgcHJvY2Vzc0xvY2sgZnJvbSBcIi4vc3JjL3Byb2Nlc3MtbG9jay50c1wiO1xuZXhwb3J0ICogYXMgcHJvamVjdFV0aWxzIGZyb20gXCIuL3NyYy9wcm9qZWN0LXV0aWxzLnRzXCI7XG5leHBvcnQgdHlwZSB7IEJpbkNvbnRleHQsIEJpblNlbGVjdGlvbkNvbnRleHQsIEJpblNlbGVjdG9yLCBCaW5WZXJzaW9uT3V0cHV0LCBCaW5WZXJzaW9uUGFyc2VyLCBCaW5PcHRpb25zLCBCaW5QYWNrYWdlT3B0aW9ucywgQmluVXJsUmVzb2x2ZUNvbnRleHQsIEJpblNvdXJjZSwgQmluVXJsIH0gZnJvbSBcIi4vc3JjL2Jpbi50c1wiO1xuZXhwb3J0IHsgQnJhbmRDb250ZXh0U2NoZW1hLCBkZWZhdWx0QnJhbmRDb250ZXh0LCBwYXJzZUJyYW5kQ29udGV4dCwgYnJhbmRDb250ZXh0SnNvblNjaGVtYSwgYnJhbmRDb250ZXh0UHJvbXB0IH0gZnJvbSBcIi4vc3JjL2JyYW5kLWZpbGVzLnRzXCI7XG5leHBvcnQgdHlwZSB7IEJyYW5kQ29udGV4dCwgQnJhbmRDb250ZXh0SW5wdXQgfSBmcm9tIFwiLi9zcmMvYnJhbmQtZmlsZXMudHNcIjtcbmV4cG9ydCB7IE1BWF9UQ1BfUE9SVCwgRU5WX09OTFksIHZhbHVlU2NoZW1hLCBidW5kbGVSZXNvdXJjZVNjaGVtYSwgYnVuZGxlRW52RW50cnlTY2hlbWEsIGJ1bmRsZUFwcFNjaGVtYSwgYXBwRW52RW50cnlTY2hlbWEsIGFwcFNjaGVtYSwgdG9OdW1iZXIgfSBmcm9tIFwiLi9zcmMvY29uZmlnLXV0aWxzLnRzXCI7XG5leHBvcnQgdHlwZSB7IENvbmZpZ01hcFZhbHVlLCBDb25maWdEYXRhLCBDb25maWdTb3VyY2UsIENvbmZpZ09wdGlvbnMsIENvbmZpZ0ZpbGUgfSBmcm9tIFwiLi9zcmMvY29uZmlnLXV0aWxzLnRzXCI7XG5leHBvcnQgdHlwZSB7IERlcGVuZGVuY3lSZXNvbHZlck9wdGlvbnMsIERlcGVuZGVuY3lJbmZvLCBSZXNvbHZlZE5wbVZlcnNpb24sIE5wbVNwZWNpZmllcklucHV0LCBSZXNvbHZlZE5wbURlcGVuZGVuY2llcywgTWlzc2luZ0RlcGVuZGVuY3lJbmZvIH0gZnJvbSBcIi4vc3JjL2RlcGVuZGVuY3ktcmVzb2x2ZXIudHNcIjtcbmV4cG9ydCB7IENPTU1BTkRfTk9UX0ZPVU5EX0VYSVRfQ09ERSB9IGZyb20gXCIuL3NyYy9leGVjLnRzXCI7XG5leHBvcnQgdHlwZSB7IEV4ZWNTdGRpbywgTGluZUhhbmRsZXIsIExpbmVPdXRwdXRPcHRpb25zLCBTdGRpb09wdGlvbiwgRXhlY1Jlc3VsdCwgQ2hpbGRQcm9jZXNzUmVzdWx0LCBDaGlsZFByb2Nlc3NUZXJtaW5hdGlvbk9wdGlvbnMsIEV4ZWNPcHRpb25zLCBTeW5jRXhlY1N0ZGlvLCBTeW5jRXhlY09wdGlvbnMsIFNwYXduQXJncyB9IGZyb20gXCIuL3NyYy9leGVjLnRzXCI7XG5leHBvcnQgdHlwZSB7IEZpbGVMb2NrQmFja2VuZCwgRmlsZUxvY2tBY3F1aXNpdGlvbiwgRmlsZUxvY2tPcHRpb25zLCBGaWxlTG9ja0xlYXNlIH0gZnJvbSBcIi4vc3JjL2ZpbGUtbG9jay50c1wiO1xuZXhwb3J0IHR5cGUgeyBQcm9qZWN0Q29udGV4dCwgUHJvamVjdEdoUmVtb3RlLCBQcm9qZWN0R2hBY2NvdW50LCBSZXNvbHZlUHJvamVjdEdoQWNjb3VudE9wdGlvbnMsIE5wbVJlZ2lzdHJ5T3B0aW9ucyB9IGZyb20gXCIuL3NyYy9wcm9qZWN0LXV0aWxzLnRzXCI7XG4iXX0=
|
package/lib/src/brand-files.d.ts
CHANGED
|
@@ -44,7 +44,7 @@ export declare const BrandContextSchema: import("zod").ZodObject<{
|
|
|
44
44
|
links: import("zod").ZodPrefault<import("zod").ZodObject<{
|
|
45
45
|
website: import("zod").ZodDefault<import("zod").ZodString>;
|
|
46
46
|
repository: import("zod").ZodOptional<import("zod").ZodString>;
|
|
47
|
-
documentation: import("zod").
|
|
47
|
+
documentation: import("zod").ZodDefault<import("zod").ZodString>;
|
|
48
48
|
}, import("zod/v4/core").$strict>>;
|
|
49
49
|
extensions: import("zod").ZodDefault<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
|
|
50
50
|
}, import("zod/v4/core").$strict>;
|
|
@@ -88,8 +88,8 @@ export declare const defaultBrandContext: {
|
|
|
88
88
|
};
|
|
89
89
|
links: {
|
|
90
90
|
website: string;
|
|
91
|
+
documentation: string;
|
|
91
92
|
repository?: string | undefined;
|
|
92
|
-
documentation?: string | undefined;
|
|
93
93
|
};
|
|
94
94
|
extensions: Record<string, unknown>;
|
|
95
95
|
};
|
package/package.json
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"typescript": "^5.9.3"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@dbx-tools/shared-core": "^0.9.
|
|
28
|
+
"@dbx-tools/shared-core": "^0.9.133",
|
|
29
29
|
"extract-zip": "^2.0.1",
|
|
30
30
|
"proper-lockfile": "^4.1.2",
|
|
31
31
|
"semver": "^7.7.3",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"./package.json": "./package.json"
|
|
92
92
|
}
|
|
93
93
|
},
|
|
94
|
-
"version": "0.9.
|
|
94
|
+
"version": "0.9.133",
|
|
95
95
|
"types": "./lib/index.d.ts",
|
|
96
96
|
"dbxToolsConfig": {
|
|
97
97
|
"tags": [
|