@wavehouse/chtypes 1.1.0 → 2.0.0-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -2
- package/dist/{abi1 → abi2}/buildinfo.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/buildinfo.js.map +1 -1
- package/dist/{abi1 → abi2}/calls.gen.d.ts +4 -4
- package/dist/{abi1 → abi2}/calls.gen.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/calls.gen.js +1 -1
- package/dist/{abi1 → abi2}/calls.gen.js.map +1 -1
- package/dist/{abi1 → abi2}/decls.gen.d.ts +12 -6
- package/dist/{abi1 → abi2}/decls.gen.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/decls.gen.js +15 -9
- package/dist/{abi1 → abi2}/decls.gen.js.map +1 -1
- package/dist/{abi1 → abi2}/errmap.gen.d.ts +3 -3
- package/dist/{abi1 → abi2}/errmap.gen.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/errmap.gen.js +8 -8
- package/dist/abi2/errmap.gen.js.map +1 -0
- package/dist/{abi1 → abi2}/errors.d.ts +9 -3
- package/dist/{abi1 → abi2}/errors.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/errors.js +20 -4
- package/dist/abi2/errors.js.map +1 -0
- package/dist/{abi1 → abi2}/handles.d.ts +3 -3
- package/dist/{abi1 → abi2}/handles.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/handles.js +5 -5
- package/dist/{abi1 → abi2}/handles.js.map +1 -1
- package/dist/{abi1 → abi2}/index.d.ts +5 -5
- package/dist/abi2/index.d.ts.map +1 -0
- package/dist/{abi1 → abi2}/index.js +5 -5
- package/dist/abi2/index.js.map +1 -0
- package/dist/{abi1 → abi2}/libc.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/libc.gen.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/libc.gen.js +4 -4
- package/dist/{abi1 → abi2}/libc.gen.js.map +1 -1
- package/dist/{abi1 → abi2}/libc.js.map +1 -1
- package/dist/{abi1 → abi2}/loader.d.ts +10 -8
- package/dist/abi2/loader.d.ts.map +1 -0
- package/dist/{abi1 → abi2}/loader.js +15 -13
- package/dist/abi2/loader.js.map +1 -0
- package/dist/{abi1 → abi2}/raw.d.ts +2 -2
- package/dist/{abi1 → abi2}/raw.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/raw.js +14 -14
- package/dist/{abi1 → abi2}/raw.js.map +1 -1
- package/dist/{abi1 → abi2}/strictjson.d.ts.map +1 -1
- package/dist/{abi1 → abi2}/strictjson.js.map +1 -1
- package/dist/abi2/vocab.gen.d.ts +221 -0
- package/dist/abi2/vocab.gen.d.ts.map +1 -0
- package/dist/abi2/vocab.gen.js +371 -0
- package/dist/abi2/vocab.gen.js.map +1 -0
- package/dist/cli.d.ts +6 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +28 -5
- package/dist/cli.js.map +1 -1
- package/dist/documents.d.ts +11 -5
- package/dist/documents.d.ts.map +1 -1
- package/dist/documents.js +28 -35
- package/dist/documents.js.map +1 -1
- package/dist/env.d.ts +6 -0
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +12 -4
- package/dist/env.js.map +1 -1
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/library.d.ts +1 -1
- package/dist/library.js +1 -1
- package/dist/ocifetch/channel.d.ts +114 -0
- package/dist/ocifetch/channel.d.ts.map +1 -0
- package/dist/ocifetch/channel.js +219 -0
- package/dist/ocifetch/channel.js.map +1 -0
- package/dist/ocifetch/dsse.d.ts.map +1 -1
- package/dist/ocifetch/dsse.js +7 -3
- package/dist/ocifetch/dsse.js.map +1 -1
- package/dist/ocifetch/ensure.d.ts +17 -3
- package/dist/ocifetch/ensure.d.ts.map +1 -1
- package/dist/ocifetch/ensure.js +57 -13
- package/dist/ocifetch/ensure.js.map +1 -1
- package/dist/ocifetch/index.d.ts +1 -0
- package/dist/ocifetch/index.d.ts.map +1 -1
- package/dist/ocifetch/index.js +1 -0
- package/dist/ocifetch/index.js.map +1 -1
- package/dist/ocifetch/layout.d.ts +20 -7
- package/dist/ocifetch/layout.d.ts.map +1 -1
- package/dist/ocifetch/layout.js +32 -16
- package/dist/ocifetch/layout.js.map +1 -1
- package/dist/ocifetch/types.d.ts +2 -1
- package/dist/ocifetch/types.d.ts.map +1 -1
- package/dist/ocifetch/types.js.map +1 -1
- package/dist/registry.d.ts +7 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +20 -6
- package/dist/registry.js.map +1 -1
- package/dist/schema.d.ts +2 -2
- package/dist/schema.js +1 -1
- package/dist/settings.js +1 -1
- package/dist/setup.d.ts +1 -1
- package/dist/setup.js +2 -2
- package/package.json +1 -1
- package/dist/abi1/errmap.gen.js.map +0 -1
- package/dist/abi1/errors.js.map +0 -1
- package/dist/abi1/index.d.ts.map +0 -1
- package/dist/abi1/index.js.map +0 -1
- package/dist/abi1/loader.d.ts.map +0 -1
- package/dist/abi1/loader.js.map +0 -1
- package/dist/abi1/vocab.gen.d.ts +0 -169
- package/dist/abi1/vocab.gen.d.ts.map +0 -1
- package/dist/abi1/vocab.gen.js +0 -306
- package/dist/abi1/vocab.gen.js.map +0 -1
- /package/dist/{abi1 → abi2}/buildinfo.d.ts +0 -0
- /package/dist/{abi1 → abi2}/buildinfo.js +0 -0
- /package/dist/{abi1 → abi2}/libc.d.ts +0 -0
- /package/dist/{abi1 → abi2}/libc.gen.d.ts +0 -0
- /package/dist/{abi1 → abi2}/libc.js +0 -0
- /package/dist/{abi1 → abi2}/strictjson.d.ts +0 -0
- /package/dist/{abi1 → abi2}/strictjson.js +0 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The fetch contract this build speaks. A 2.0.0-dev SDK speaks the ABI v2 dev
|
|
3
|
+
* channel (`spec/abi-v2/docs.md`, rules r5 and r6), which is the v1 fetch
|
|
4
|
+
* contract (`docs/guides/fetch-v1.md`) narrowed in five ways:
|
|
5
|
+
*
|
|
6
|
+
* - it fetches ONLY from `DEV_CHANNEL_BASE` and trusts ONLY the staging key
|
|
7
|
+
* (`DEV_KEY_HEX`, id `DEV_KEY_ID`); the release key is not in its trust
|
|
8
|
+
* list;
|
|
9
|
+
* - it has no override: `CHTYPES_ARTIFACTS_URL`, `CHTYPES_TRUSTED_KEYS` and
|
|
10
|
+
* `CHTYPES_ALLOW_UNSIGNED`, and the options that set a base, a trust list
|
|
11
|
+
* or an unsigned fetch (`bases`, `trustedKeys`, `allowUnsigned`, and
|
|
12
|
+
* `fetchSigned`'s repository), are ignored, each with one loud warning per
|
|
13
|
+
* process;
|
|
14
|
+
* - it refuses `frozen`, `lockWrite`, `lockPath` and `update` (`--frozen`,
|
|
15
|
+
* `--lock`, `--update`) before any network call: a dev build is
|
|
16
|
+
* replaceable and a superseded one expires, so nothing may pin one;
|
|
17
|
+
* - its cache is one no released 1.x reader ever reads: `verified.json`
|
|
18
|
+
* records are schema 2, the default root is
|
|
19
|
+
* `${XDG_CACHE_HOME:-~/.cache}/chtypes/v2-dev`, and an explicit cache
|
|
20
|
+
* (`CHTYPES_CACHE`, `--cache`, the `cacheDir` option) is used through its
|
|
21
|
+
* subroot `<cache>/v2-dev`, never as a whole layout;
|
|
22
|
+
* - a signed predicate must say abi 2.
|
|
23
|
+
*
|
|
24
|
+
* The v1 contract itself stays in this module, unchanged, because the
|
|
25
|
+
* fetch-v1 conformance cases (`tests/fixtures/fetch-v1`) are its
|
|
26
|
+
* specification and the dev channel shares every other rule with it. Only a
|
|
27
|
+
* test reaches it: `useFetchV1ForTests` and `allowOverridesForTests` throw
|
|
28
|
+
* anywhere but inside a vitest worker, and neither is exported from the
|
|
29
|
+
* package's entry point, so neither is an override a user can reach.
|
|
30
|
+
*/
|
|
31
|
+
import type { FetchV1Options, TrustedKey } from './types.js';
|
|
32
|
+
/** The only base a 2.0.0-dev SDK fetches from (rule r6). */
|
|
33
|
+
export declare const DEV_CHANNEL_BASE = "https://registry-staging.wavehouse.dev/chtypes/v2-dev";
|
|
34
|
+
/** The staging key's id (`sha256-first16hex` over `DEV_KEY_HEX`). */
|
|
35
|
+
export declare const DEV_KEY_ID = "824345f9bcf8e5bf";
|
|
36
|
+
/** The staging key, the only key a 2.0.0-dev SDK trusts: an ed25519 public key, raw 32 bytes as lowercase hex. */
|
|
37
|
+
export declare const DEV_KEY_HEX = "5cd30c53c65a1ebc2d85836a41deb06661bb0ae7b658adb9eb116ec2db8e9b1c";
|
|
38
|
+
/** The dev channel's cache directory name: the default root's last element and an explicit cache's subroot (rule r5). */
|
|
39
|
+
export declare const DEV_CACHE_DIR = "v2-dev";
|
|
40
|
+
/** The `verified.json` schema the dev channel writes, and the only one it reads (rule r5). */
|
|
41
|
+
export declare const DEV_RECORD_SCHEMA = 2;
|
|
42
|
+
/** The abi a dev predicate must carry. */
|
|
43
|
+
export declare const DEV_ABI_GENERATION = 2;
|
|
44
|
+
/** What every lock, frozen or update request gets from a 2.0.0-dev SDK, before any network call (rule r6). */
|
|
45
|
+
export declare const PINNING_REFUSED: string;
|
|
46
|
+
/** One fetch contract. */
|
|
47
|
+
export interface Channel {
|
|
48
|
+
readonly name: string;
|
|
49
|
+
/** The abi a signed predicate must carry, and `Resolved.abiGeneration`. */
|
|
50
|
+
readonly abi: number;
|
|
51
|
+
/** The `verified.json` schema written, and the only one read. */
|
|
52
|
+
readonly recordSchema: number;
|
|
53
|
+
/** The default root is `${XDG_CACHE_HOME:-~/.cache}/chtypes/<rootLeaf>`. */
|
|
54
|
+
readonly rootLeaf: string;
|
|
55
|
+
/** An explicit cache is used as `<cache>/<subroot>`; `''` uses it whole. */
|
|
56
|
+
readonly subroot: string;
|
|
57
|
+
/** The read-only system cache directories searched after the cache. */
|
|
58
|
+
readonly systemDirs: readonly string[];
|
|
59
|
+
/** The default bases. */
|
|
60
|
+
readonly bases: readonly string[];
|
|
61
|
+
/** The default trust list. */
|
|
62
|
+
readonly keys: readonly TrustedKey[];
|
|
63
|
+
/** Whether the base, trust and unsigned overrides are honored. */
|
|
64
|
+
readonly overridable: boolean;
|
|
65
|
+
/** Whether lock, frozen and update are honored. */
|
|
66
|
+
readonly pinnable: boolean;
|
|
67
|
+
}
|
|
68
|
+
/** The contract this process fetches under: the dev channel, unless a test selected another. */
|
|
69
|
+
export declare function activeChannel(): Channel;
|
|
70
|
+
/** The fetch contract this process speaks: `v2-dev` in every process but a test that selected another. */
|
|
71
|
+
export declare function channelName(): string;
|
|
72
|
+
/**
|
|
73
|
+
* Makes this TEST process speak the v1 fetch contract (`docs/guides/fetch-v1.md`):
|
|
74
|
+
* overrides, locks, schema-1 records and abi-1 predicates. The fetch-v1
|
|
75
|
+
* conformance cases and the v1-protocol tests run under it; every case names
|
|
76
|
+
* its own fixture registry and the test key. Returns the function that
|
|
77
|
+
* restores the previous contract; throws outside a vitest worker.
|
|
78
|
+
*/
|
|
79
|
+
export declare function useFetchV1ForTests(): () => void;
|
|
80
|
+
/**
|
|
81
|
+
* Makes this TEST process's dev channel honor the base, trust and unsigned
|
|
82
|
+
* overrides, so a test can reach a fixture registry signed with the test key;
|
|
83
|
+
* everything else stays the dev channel's (abi 2, schema-2 records, the
|
|
84
|
+
* v2-dev cache, no pinning). Returns the restore function; throws outside a
|
|
85
|
+
* vitest worker.
|
|
86
|
+
*/
|
|
87
|
+
export declare function allowOverridesForTests(): () => void;
|
|
88
|
+
/** Makes this TEST process speak the dev channel exactly as every other process does (undoing either function above). Returns the restore function. */
|
|
89
|
+
export declare function useDevChannelForTests(): () => void;
|
|
90
|
+
/** Prints, once per process per setting, that a dev SDK ignores it (rule r6: "a dev SDK says so, once and loudly"). */
|
|
91
|
+
export declare function warnIgnored(setting: string): void;
|
|
92
|
+
/** The settings warned about so far, sorted. */
|
|
93
|
+
export declare function ignoredSettingsWarned(): readonly string[];
|
|
94
|
+
/** Test-only: sends the warnings to `sink` and forgets which were given, so a test sees exactly its own. Returns the restore function. */
|
|
95
|
+
export declare function captureIgnoredForTests(sink: (text: string) => void): () => void;
|
|
96
|
+
/**
|
|
97
|
+
* Names, once each and loudly, every base, trust and unsigned override
|
|
98
|
+
* `options` or the environment sets, when the active contract has none (rule
|
|
99
|
+
* r6). Every seam entry point calls it first, so an ignored setting is named
|
|
100
|
+
* whatever the command does with the network.
|
|
101
|
+
*/
|
|
102
|
+
export declare function noteIgnoredOverrides(options: FetchV1Options): void;
|
|
103
|
+
/** Whether an unsigned fetch was asked for and the active contract honors it. */
|
|
104
|
+
export declare function allowUnsigned(options: FetchV1Options): boolean;
|
|
105
|
+
/** The pinning requests `options` makes, by name. */
|
|
106
|
+
export declare function pinningRequested(options: FetchV1Options): readonly string[];
|
|
107
|
+
/** A lock, frozen or update request refused by a 2.0.0-dev SDK. It is the caller's misuse, never an artifact failure: the CLI exits with the usage status. */
|
|
108
|
+
export declare class PinningRefusedError extends Error {
|
|
109
|
+
readonly requested: readonly string[];
|
|
110
|
+
constructor(requested: readonly string[]);
|
|
111
|
+
}
|
|
112
|
+
/** Throws `PinningRefusedError` when the active contract refuses the pinning `options` asks for: before anything else, the network above all (rule r6). */
|
|
113
|
+
export declare function refusePinning(options: FetchV1Options): void;
|
|
114
|
+
//# sourceMappingURL=channel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/ocifetch/channel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAYH,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7D,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,0DAA0D,CAAC;AACxF,qEAAqE;AACrE,eAAO,MAAM,UAAU,qBAAqB,CAAC;AAC7C,kHAAkH;AAClH,eAAO,MAAM,WAAW,qEAAqE,CAAC;AAC9F,yHAAyH;AACzH,eAAO,MAAM,aAAa,WAAW,CAAC;AACtC,8FAA8F;AAC9F,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,0CAA0C;AAC1C,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,8GAA8G;AAC9G,eAAO,MAAM,eAAe,QAEyE,CAAC;AAEtG,0BAA0B;AAC1B,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,yBAAyB;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,8BAA8B;IAC9B,QAAQ,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,CAAC;IACrC,kEAAkE;IAClE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAgCD,gGAAgG;AAChG,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED,0GAA0G;AAC1G,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAqBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,IAAI,CAG/C;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,IAAI,CAGnD;AAED,uJAAuJ;AACvJ,wBAAgB,qBAAqB,IAAI,MAAM,IAAI,CAGlD;AASD,uHAAuH;AACvH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAOjD;AAED,gDAAgD;AAChD,wBAAgB,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzD;AAED,0IAA0I;AAC1I,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAW/E;AAOD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAQlE;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAE9D;AAID,qDAAqD;AACrD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,MAAM,EAAE,CAQ3E;AAED,8JAA8J;AAC9J,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAEtC,YAAY,SAAS,EAAE,SAAS,MAAM,EAAE,EAIvC;CACF;AAED,2JAA2J;AAC3J,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAI3D"}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The fetch contract this build speaks. A 2.0.0-dev SDK speaks the ABI v2 dev
|
|
3
|
+
* channel (`spec/abi-v2/docs.md`, rules r5 and r6), which is the v1 fetch
|
|
4
|
+
* contract (`docs/guides/fetch-v1.md`) narrowed in five ways:
|
|
5
|
+
*
|
|
6
|
+
* - it fetches ONLY from `DEV_CHANNEL_BASE` and trusts ONLY the staging key
|
|
7
|
+
* (`DEV_KEY_HEX`, id `DEV_KEY_ID`); the release key is not in its trust
|
|
8
|
+
* list;
|
|
9
|
+
* - it has no override: `CHTYPES_ARTIFACTS_URL`, `CHTYPES_TRUSTED_KEYS` and
|
|
10
|
+
* `CHTYPES_ALLOW_UNSIGNED`, and the options that set a base, a trust list
|
|
11
|
+
* or an unsigned fetch (`bases`, `trustedKeys`, `allowUnsigned`, and
|
|
12
|
+
* `fetchSigned`'s repository), are ignored, each with one loud warning per
|
|
13
|
+
* process;
|
|
14
|
+
* - it refuses `frozen`, `lockWrite`, `lockPath` and `update` (`--frozen`,
|
|
15
|
+
* `--lock`, `--update`) before any network call: a dev build is
|
|
16
|
+
* replaceable and a superseded one expires, so nothing may pin one;
|
|
17
|
+
* - its cache is one no released 1.x reader ever reads: `verified.json`
|
|
18
|
+
* records are schema 2, the default root is
|
|
19
|
+
* `${XDG_CACHE_HOME:-~/.cache}/chtypes/v2-dev`, and an explicit cache
|
|
20
|
+
* (`CHTYPES_CACHE`, `--cache`, the `cacheDir` option) is used through its
|
|
21
|
+
* subroot `<cache>/v2-dev`, never as a whole layout;
|
|
22
|
+
* - a signed predicate must say abi 2.
|
|
23
|
+
*
|
|
24
|
+
* The v1 contract itself stays in this module, unchanged, because the
|
|
25
|
+
* fetch-v1 conformance cases (`tests/fixtures/fetch-v1`) are its
|
|
26
|
+
* specification and the dev channel shares every other rule with it. Only a
|
|
27
|
+
* test reaches it: `useFetchV1ForTests` and `allowOverridesForTests` throw
|
|
28
|
+
* anywhere but inside a vitest worker, and neither is exported from the
|
|
29
|
+
* package's entry point, so neither is an override a user can reach.
|
|
30
|
+
*/
|
|
31
|
+
import { ABI_GENERATION, DEFAULT_BASES, ENV_ALLOW_UNSIGNED_NAME, ENV_BASES_NAME, ENV_TRUSTED_KEYS_NAME, RELEASE_KEYS, SCHEMA_VERSION, SYSTEM_CACHE_DIRS, } from './constants.gen.js';
|
|
32
|
+
/** The only base a 2.0.0-dev SDK fetches from (rule r6). */
|
|
33
|
+
export const DEV_CHANNEL_BASE = 'https://registry-staging.wavehouse.dev/chtypes/v2-dev';
|
|
34
|
+
/** The staging key's id (`sha256-first16hex` over `DEV_KEY_HEX`). */
|
|
35
|
+
export const DEV_KEY_ID = '824345f9bcf8e5bf';
|
|
36
|
+
/** The staging key, the only key a 2.0.0-dev SDK trusts: an ed25519 public key, raw 32 bytes as lowercase hex. */
|
|
37
|
+
export const DEV_KEY_HEX = '5cd30c53c65a1ebc2d85836a41deb06661bb0ae7b658adb9eb116ec2db8e9b1c';
|
|
38
|
+
/** The dev channel's cache directory name: the default root's last element and an explicit cache's subroot (rule r5). */
|
|
39
|
+
export const DEV_CACHE_DIR = 'v2-dev';
|
|
40
|
+
/** The `verified.json` schema the dev channel writes, and the only one it reads (rule r5). */
|
|
41
|
+
export const DEV_RECORD_SCHEMA = 2;
|
|
42
|
+
/** The abi a dev predicate must carry. */
|
|
43
|
+
export const DEV_ABI_GENERATION = 2;
|
|
44
|
+
/** What every lock, frozen or update request gets from a 2.0.0-dev SDK, before any network call (rule r6). */
|
|
45
|
+
export const PINNING_REFUSED = '--lock, --frozen and --update are refused by a 2.0.0-dev SDK: a dev build is replaceable, ' +
|
|
46
|
+
'and a superseded one expires after 14 days, so nothing may pin one (spec/abi-v2/docs.md, rule r6)';
|
|
47
|
+
/** What a 2.0.0-dev SDK speaks, and what every process speaks unless a test selected another contract. */
|
|
48
|
+
const DEV_CHANNEL = {
|
|
49
|
+
name: DEV_CACHE_DIR,
|
|
50
|
+
abi: DEV_ABI_GENERATION,
|
|
51
|
+
recordSchema: DEV_RECORD_SCHEMA,
|
|
52
|
+
rootLeaf: DEV_CACHE_DIR,
|
|
53
|
+
subroot: DEV_CACHE_DIR,
|
|
54
|
+
systemDirs: [`/usr/local/share/chtypes/${DEV_CACHE_DIR}`, `/opt/chtypes/${DEV_CACHE_DIR}`],
|
|
55
|
+
bases: [DEV_CHANNEL_BASE],
|
|
56
|
+
keys: [{ keyid: DEV_KEY_ID, ed25519Hex: DEV_KEY_HEX }],
|
|
57
|
+
overridable: false,
|
|
58
|
+
pinnable: false,
|
|
59
|
+
};
|
|
60
|
+
/** The v1 contract the fetch-v1 conformance cases specify, from the generated constants. Only `useFetchV1ForTests` selects it. */
|
|
61
|
+
const FETCH_V1_CHANNEL = {
|
|
62
|
+
name: 'v1',
|
|
63
|
+
abi: ABI_GENERATION,
|
|
64
|
+
recordSchema: SCHEMA_VERSION,
|
|
65
|
+
rootLeaf: 'v1',
|
|
66
|
+
subroot: '',
|
|
67
|
+
systemDirs: SYSTEM_CACHE_DIRS,
|
|
68
|
+
bases: DEFAULT_BASES,
|
|
69
|
+
keys: RELEASE_KEYS.map((k) => ({ keyid: k.keyid, ed25519Hex: k.ed25519Hex })),
|
|
70
|
+
overridable: true,
|
|
71
|
+
pinnable: true,
|
|
72
|
+
};
|
|
73
|
+
let current;
|
|
74
|
+
/** The contract this process fetches under: the dev channel, unless a test selected another. */
|
|
75
|
+
export function activeChannel() {
|
|
76
|
+
return current ?? DEV_CHANNEL;
|
|
77
|
+
}
|
|
78
|
+
/** The fetch contract this process speaks: `v2-dev` in every process but a test that selected another. */
|
|
79
|
+
export function channelName() {
|
|
80
|
+
return activeChannel().name;
|
|
81
|
+
}
|
|
82
|
+
/** Whether this process is a vitest worker: the only place a test seam may run. */
|
|
83
|
+
function inTestRunner() {
|
|
84
|
+
return process.env['VITEST'] === 'true' && process.env['VITEST_WORKER_ID'] !== undefined;
|
|
85
|
+
}
|
|
86
|
+
function testOnly(what) {
|
|
87
|
+
if (!inTestRunner()) {
|
|
88
|
+
throw new Error(`chtypes: ${what} is test-only; a 2.0.0-dev SDK has no override (spec/abi-v2/docs.md, rule r6)`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
function use(c) {
|
|
92
|
+
const prev = current;
|
|
93
|
+
current = c;
|
|
94
|
+
return () => {
|
|
95
|
+
current = prev;
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Makes this TEST process speak the v1 fetch contract (`docs/guides/fetch-v1.md`):
|
|
100
|
+
* overrides, locks, schema-1 records and abi-1 predicates. The fetch-v1
|
|
101
|
+
* conformance cases and the v1-protocol tests run under it; every case names
|
|
102
|
+
* its own fixture registry and the test key. Returns the function that
|
|
103
|
+
* restores the previous contract; throws outside a vitest worker.
|
|
104
|
+
*/
|
|
105
|
+
export function useFetchV1ForTests() {
|
|
106
|
+
testOnly('useFetchV1ForTests');
|
|
107
|
+
return use(FETCH_V1_CHANNEL);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Makes this TEST process's dev channel honor the base, trust and unsigned
|
|
111
|
+
* overrides, so a test can reach a fixture registry signed with the test key;
|
|
112
|
+
* everything else stays the dev channel's (abi 2, schema-2 records, the
|
|
113
|
+
* v2-dev cache, no pinning). Returns the restore function; throws outside a
|
|
114
|
+
* vitest worker.
|
|
115
|
+
*/
|
|
116
|
+
export function allowOverridesForTests() {
|
|
117
|
+
testOnly('allowOverridesForTests');
|
|
118
|
+
return use({ ...DEV_CHANNEL, overridable: true });
|
|
119
|
+
}
|
|
120
|
+
/** Makes this TEST process speak the dev channel exactly as every other process does (undoing either function above). Returns the restore function. */
|
|
121
|
+
export function useDevChannelForTests() {
|
|
122
|
+
testOnly('useDevChannelForTests');
|
|
123
|
+
return use(DEV_CHANNEL);
|
|
124
|
+
}
|
|
125
|
+
// ------------------------------------------------------------ the warnings
|
|
126
|
+
const warned = new Set();
|
|
127
|
+
let warnSink = (text) => {
|
|
128
|
+
process.stderr.write(text);
|
|
129
|
+
};
|
|
130
|
+
/** Prints, once per process per setting, that a dev SDK ignores it (rule r6: "a dev SDK says so, once and loudly"). */
|
|
131
|
+
export function warnIgnored(setting) {
|
|
132
|
+
if (warned.has(setting))
|
|
133
|
+
return;
|
|
134
|
+
warned.add(setting);
|
|
135
|
+
warnSink(`chtypes: WARNING: ${setting} is set and IGNORED: this is a 2.0.0-dev SDK, which fetches only from ${DEV_CHANNEL_BASE} ` +
|
|
136
|
+
`and trusts only the staging key ${DEV_KEY_ID} (spec/abi-v2/docs.md, rule r6)\n`);
|
|
137
|
+
}
|
|
138
|
+
/** The settings warned about so far, sorted. */
|
|
139
|
+
export function ignoredSettingsWarned() {
|
|
140
|
+
return [...warned].sort();
|
|
141
|
+
}
|
|
142
|
+
/** Test-only: sends the warnings to `sink` and forgets which were given, so a test sees exactly its own. Returns the restore function. */
|
|
143
|
+
export function captureIgnoredForTests(sink) {
|
|
144
|
+
testOnly('captureIgnoredForTests');
|
|
145
|
+
const prevSink = warnSink;
|
|
146
|
+
const prevWarned = [...warned];
|
|
147
|
+
warnSink = sink;
|
|
148
|
+
warned.clear();
|
|
149
|
+
return () => {
|
|
150
|
+
warnSink = prevSink;
|
|
151
|
+
warned.clear();
|
|
152
|
+
for (const s of prevWarned)
|
|
153
|
+
warned.add(s);
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
function envSet(name, trim) {
|
|
157
|
+
const v = process.env[name];
|
|
158
|
+
return v !== undefined && (trim ? v.trim() : v) !== '';
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Names, once each and loudly, every base, trust and unsigned override
|
|
162
|
+
* `options` or the environment sets, when the active contract has none (rule
|
|
163
|
+
* r6). Every seam entry point calls it first, so an ignored setting is named
|
|
164
|
+
* whatever the command does with the network.
|
|
165
|
+
*/
|
|
166
|
+
export function noteIgnoredOverrides(options) {
|
|
167
|
+
if (activeChannel().overridable)
|
|
168
|
+
return;
|
|
169
|
+
if (options.bases !== undefined && options.bases.length > 0)
|
|
170
|
+
warnIgnored('the bases option');
|
|
171
|
+
if (envSet(ENV_BASES_NAME, true))
|
|
172
|
+
warnIgnored(ENV_BASES_NAME);
|
|
173
|
+
if (options.trustedKeys !== undefined)
|
|
174
|
+
warnIgnored('the trustedKeys option');
|
|
175
|
+
if (envSet(ENV_TRUSTED_KEYS_NAME, true))
|
|
176
|
+
warnIgnored(ENV_TRUSTED_KEYS_NAME);
|
|
177
|
+
if (options.allowUnsigned === true)
|
|
178
|
+
warnIgnored('the allowUnsigned option');
|
|
179
|
+
if (envSet(ENV_ALLOW_UNSIGNED_NAME, false))
|
|
180
|
+
warnIgnored(ENV_ALLOW_UNSIGNED_NAME);
|
|
181
|
+
}
|
|
182
|
+
/** Whether an unsigned fetch was asked for and the active contract honors it. */
|
|
183
|
+
export function allowUnsigned(options) {
|
|
184
|
+
return activeChannel().overridable && options.allowUnsigned === true;
|
|
185
|
+
}
|
|
186
|
+
// ------------------------------------------------------------ the pinning
|
|
187
|
+
/** The pinning requests `options` makes, by name. */
|
|
188
|
+
export function pinningRequested(options) {
|
|
189
|
+
const set = [];
|
|
190
|
+
if (options.frozen === true)
|
|
191
|
+
set.push('frozen');
|
|
192
|
+
if (options.lockWrite === true)
|
|
193
|
+
set.push('lock');
|
|
194
|
+
if (options.update === true)
|
|
195
|
+
set.push('update');
|
|
196
|
+
if (options.lockPath !== undefined && options.lockPath !== '')
|
|
197
|
+
set.push('a lock path');
|
|
198
|
+
if (options.lockAllPlatforms === true)
|
|
199
|
+
set.push('lock all platforms');
|
|
200
|
+
return set;
|
|
201
|
+
}
|
|
202
|
+
/** A lock, frozen or update request refused by a 2.0.0-dev SDK. It is the caller's misuse, never an artifact failure: the CLI exits with the usage status. */
|
|
203
|
+
export class PinningRefusedError extends Error {
|
|
204
|
+
requested;
|
|
205
|
+
constructor(requested) {
|
|
206
|
+
super(`chtypes: ${PINNING_REFUSED} (requested: ${requested.join(', ')})`);
|
|
207
|
+
this.name = new.target.name;
|
|
208
|
+
this.requested = requested;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
/** Throws `PinningRefusedError` when the active contract refuses the pinning `options` asks for: before anything else, the network above all (rule r6). */
|
|
212
|
+
export function refusePinning(options) {
|
|
213
|
+
if (activeChannel().pinnable)
|
|
214
|
+
return;
|
|
215
|
+
const set = pinningRequested(options);
|
|
216
|
+
if (set.length > 0)
|
|
217
|
+
throw new PinningRefusedError(set);
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=channel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/ocifetch/channel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dsse.d.ts","sourceRoot":"","sources":["../../src/ocifetch/dsse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;
|
|
1
|
+
{"version":3,"file":"dsse.d.ts","sourceRoot":"","sources":["../../src/ocifetch/dsse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEhD,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK3E;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAI5D;AAkCD,8FAA8F;AAC9F,wKAAwK;AACxK,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAYpE;AAED,mGAAmG;AACnG,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAiB/F;AAqDD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,SAAS,UAAU,EAAE,GACjC;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAarE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAmCzD;AAID,uFAAuF;AACvF,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAQ9F;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,SAAS,EACpB,qBAAqB,EAAE,MAAM,EAC7B,mBAAmB,EAAE,MAAM,EAC3B,KAAK,EAAE,sBAAsB,GAC5B,iBAAiB,CAkCnB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAU5H;AAID,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,+FAA+F;IAC/F,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,0HAA0H;IAC1H,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,mEAAmE;IACnE,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;CACvC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,uBAAuB,CAC3C,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,kBAAkB,EAAE,MAAM,EAC1B,WAAW,EAAE,SAAS,UAAU,EAAE,EAClC,YAAY,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,EAC5C,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAkBlC"}
|
package/dist/ocifetch/dsse.js
CHANGED
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import { createHash, createPublicKey, verify as cryptoVerify } from 'node:crypto';
|
|
19
19
|
import { items, parseJsonValue } from '../json.js';
|
|
20
|
-
import {
|
|
20
|
+
import { activeChannel } from './channel.js';
|
|
21
|
+
import { DSSE_MAX_SIGNATURES, DSSE_PAYLOAD_TYPE, SPELLING_REGEX } from './constants.gen.js';
|
|
21
22
|
import { ArtifactCorruptError } from './errors.js';
|
|
22
23
|
import { fetchBlobBytesByDigest, fetchManifestByDigest } from './oci.js';
|
|
23
24
|
import { discoverSignatureCandidates } from './referrers.js';
|
|
@@ -255,8 +256,11 @@ export function checkArtifactStatement(statement, expectedPredicateType, expecte
|
|
|
255
256
|
throw new ArtifactCorruptError(`chtypes: statement subject digest does not match the manifest's own layer digest`);
|
|
256
257
|
}
|
|
257
258
|
const p = statement.predicate;
|
|
258
|
-
|
|
259
|
-
|
|
259
|
+
// The active contract's generation: 2 on the ABI v2 dev channel (rule r6),
|
|
260
|
+
// so a 1.x build's abi-1 predicate is refused there.
|
|
261
|
+
const abi = activeChannel().abi;
|
|
262
|
+
if (p['abi'] !== abi) {
|
|
263
|
+
throw new ArtifactCorruptError(`chtypes: statement predicate.abi is ${JSON.stringify(p['abi'])}, not ${abi}`);
|
|
260
264
|
}
|
|
261
265
|
if (p['os'] !== check.os || p['arch'] !== check.arch) {
|
|
262
266
|
throw new ArtifactCorruptError(`chtypes: statement predicate is for ${JSON.stringify(p['os'])}-${JSON.stringify(p['arch'])}, not ${check.os}-${check.arch}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dsse.js","sourceRoot":"","sources":["../../src/ocifetch/dsse.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dsse.js","sourceRoot":"","sources":["../../src/ocifetch/dsse.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,18 @@
|
|
|
5
5
|
* cache (`layout.ts`) and the lock (`lock.ts`) together; nothing outside
|
|
6
6
|
* `index.ts` calls into those modules directly.
|
|
7
7
|
*/
|
|
8
|
-
import type { FetchV1Options, PlatformKey, Resolved, VerifyResult } from './types.js';
|
|
8
|
+
import type { FetchV1Options, PlatformKey, Resolved, TrustedKey, VerifyResult } from './types.js';
|
|
9
|
+
/**
|
|
10
|
+
* The bases, the trust list and the unsigned decision a call with `options`
|
|
11
|
+
* reads under the active contract: exactly what `ensure`, `fetchSigned` and
|
|
12
|
+
* `listTags` use. Not part of the package's entry point; the dev channel's
|
|
13
|
+
* rule r6 tests read it, so they test the derivation rather than restate it.
|
|
14
|
+
*/
|
|
15
|
+
export declare function effectiveFetchOptions(options: FetchV1Options): {
|
|
16
|
+
readonly bases: readonly string[];
|
|
17
|
+
readonly trustedKeys: readonly TrustedKey[];
|
|
18
|
+
readonly allowUnsigned: boolean;
|
|
19
|
+
};
|
|
9
20
|
/**
|
|
10
21
|
* Never touches the network (guide §9). The source of truth is the
|
|
11
22
|
* immutable `unpacked/sha256/*\/verified.json` records (guide §6) — never
|
|
@@ -44,7 +55,10 @@ export declare function verifyInstalled(options?: FetchV1Options): Promise<reado
|
|
|
44
55
|
/**
|
|
45
56
|
* `ensure(request, options)`: resolve unless `frozen` or `offline`, verify
|
|
46
57
|
* trust, download and unpack bytes, install into the cache, optionally write
|
|
47
|
-
* a lock entry. See `docs/guides/fetch-v1.md` §9 for the full contract.
|
|
58
|
+
* a lock entry. See `docs/guides/fetch-v1.md` §9 for the full contract. On the
|
|
59
|
+
* dev channel (`./channel.ts`) every pinning option is refused first, before
|
|
60
|
+
* any request, and every base, trust or unsigned override is ignored with one
|
|
61
|
+
* warning (spec/abi-v2/docs.md, rule r6).
|
|
48
62
|
*/
|
|
49
63
|
export declare function ensure(request: string, options?: FetchV1Options): Promise<Resolved>;
|
|
50
64
|
export interface FetchSignedResult {
|
|
@@ -72,7 +86,7 @@ export interface FetchSignedResult {
|
|
|
72
86
|
* goldens set is a second goldens referrer of it, and the result is the
|
|
73
87
|
* highest-`revision` verified one (`goldens.ts`, guide §9).
|
|
74
88
|
*/
|
|
75
|
-
export declare function fetchSigned(
|
|
89
|
+
export declare function fetchSigned(callerRepository: string, ref: string, predicateType: string, options?: FetchV1Options): Promise<FetchSignedResult>;
|
|
76
90
|
/**
|
|
77
91
|
* The version spellings a repository publishes: `GET tags/list` from the first
|
|
78
92
|
* base that has the repository, every tag that is not a version spelling
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure.d.ts","sourceRoot":"","sources":["../../src/ocifetch/ensure.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"ensure.d.ts","sourceRoot":"","sources":["../../src/ocifetch/ensure.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyDH,OAAO,KAAK,EAAqB,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAyBrH;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,cAAc,GAAG;IAC9D,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC,CAEA;AA2DD;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,WAAW,EACrB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CA6B/B;AAkBD;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAO3F;AAED,uLAAuL;AACvL,wBAAsB,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAKzF;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAE3E;AAoCD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAG1E;AA0DD,wBAAsB,aAAa,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC,CAW9F;AAID,mGAAmG;AACnG,wBAAsB,eAAe,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAgBpG;AAID;;;;;;;GAOG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAU7F;AAoaD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACzE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,WAAW,CAC/B,gBAAgB,EAAE,MAAM,EACxB,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAiC5B;AA0ID;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CA4CvF"}
|