@animus-ui/extract 0.1.11 → 0.1.12
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 +47 -0
- package/crates/extract-v2/animus-extract-v2.darwin-arm64.node +0 -0
- package/crates/extract-v2/animus-extract-v2.linux-arm64-gnu.node +0 -0
- package/crates/extract-v2/animus-extract-v2.linux-x64-gnu.node +0 -0
- package/crates/extract-v2/index.d.ts +17 -98
- package/dist/index.cjs +11 -6
- package/dist/index.mjs +2 -2
- package/dist/pipeline/analyze-project-args.d.ts +0 -12
- package/dist/pipeline/analyze-project-args.d.ts.map +1 -1
- package/dist/pipeline/assemble-stylesheet.d.ts +0 -35
- package/dist/pipeline/assemble-stylesheet.d.ts.map +1 -1
- package/dist/pipeline/asset-placeholders.d.ts +0 -25
- package/dist/pipeline/asset-placeholders.d.ts.map +1 -1
- package/dist/pipeline/content-hash.d.ts +0 -7
- package/dist/pipeline/content-hash.d.ts.map +1 -1
- package/dist/pipeline/core-options.d.ts +27 -93
- package/dist/pipeline/core-options.d.ts.map +1 -1
- package/dist/pipeline/correlate-external-tokens.d.ts +10 -18
- package/dist/pipeline/correlate-external-tokens.d.ts.map +1 -1
- package/dist/pipeline/discover-files.d.ts +1 -9
- package/dist/pipeline/discover-files.d.ts.map +1 -1
- package/dist/pipeline/discover-packages.d.ts +18 -154
- package/dist/pipeline/discover-packages.d.ts.map +1 -1
- package/dist/pipeline/dynamic-prop-config.d.ts +4 -19
- package/dist/pipeline/dynamic-prop-config.d.ts.map +1 -1
- package/dist/pipeline/engine-adapter.d.ts +16 -52
- package/dist/pipeline/engine-adapter.d.ts.map +1 -1
- package/dist/pipeline/engine-retirement.d.ts +0 -19
- package/dist/pipeline/engine-retirement.d.ts.map +1 -1
- package/dist/pipeline/error-diagnostics.d.ts +0 -24
- package/dist/pipeline/error-diagnostics.d.ts.map +1 -1
- package/dist/pipeline/index.d.ts +9 -8
- package/dist/pipeline/index.d.ts.map +1 -1
- package/dist/pipeline/internal-wire.d.ts +2 -0
- package/dist/pipeline/internal-wire.d.ts.map +1 -0
- package/dist/pipeline/manifest-diagnostics.d.ts +32 -37
- package/dist/pipeline/manifest-diagnostics.d.ts.map +1 -1
- package/dist/pipeline/manifest-schema.d.ts +117 -0
- package/dist/pipeline/manifest-schema.d.ts.map +1 -0
- package/dist/pipeline/mdx-preprocessor.d.ts +9 -33
- package/dist/pipeline/mdx-preprocessor.d.ts.map +1 -1
- package/dist/pipeline/path-aliases.d.ts +0 -19
- package/dist/pipeline/path-aliases.d.ts.map +1 -1
- package/dist/pipeline/post-process-css.d.ts +0 -8
- package/dist/pipeline/post-process-css.d.ts.map +1 -1
- package/dist/pipeline/prefix.d.ts +3 -10
- package/dist/pipeline/prefix.d.ts.map +1 -1
- package/dist/pipeline/replacement-plans.d.ts +10 -34
- package/dist/pipeline/replacement-plans.d.ts.map +1 -1
- package/dist/pipeline/resolve-asset.d.ts +4 -7
- package/dist/pipeline/resolve-asset.d.ts.map +1 -1
- package/dist/pipeline/run-analysis.d.ts +15 -27
- package/dist/pipeline/run-analysis.d.ts.map +1 -1
- package/dist/pipeline/source-corpus.d.ts +25 -0
- package/dist/pipeline/source-corpus.d.ts.map +1 -0
- package/dist/pipeline/source-identity.d.ts +23 -53
- package/dist/pipeline/source-identity.d.ts.map +1 -1
- package/dist/pipeline/source-ingestion.d.ts +48 -53
- package/dist/pipeline/source-ingestion.d.ts.map +1 -1
- package/dist/pipeline/static-css.d.ts +4 -13
- package/dist/pipeline/static-css.d.ts.map +1 -1
- package/dist/pipeline/structural-self-check.d.ts +0 -20
- package/dist/pipeline/structural-self-check.d.ts.map +1 -1
- package/dist/pipeline/svelte-source-adapter.d.ts +5 -12
- package/dist/pipeline/svelte-source-adapter.d.ts.map +1 -1
- package/dist/pipeline/system-config.d.ts +15 -32
- package/dist/pipeline/system-config.d.ts.map +1 -1
- package/dist/pipeline/system-props-module.d.ts +0 -15
- package/dist/pipeline/system-props-module.d.ts.map +1 -1
- package/dist/pipeline/timing-waterfall.d.ts +0 -11
- package/dist/pipeline/timing-waterfall.d.ts.map +1 -1
- package/dist/pipeline/tsconfig-paths.d.ts +2 -3
- package/dist/pipeline/tsconfig-paths.d.ts.map +1 -1
- package/dist/pipeline/unit-fallback.d.ts +0 -5
- package/dist/pipeline/unit-fallback.d.ts.map +1 -1
- package/dist/pipeline/utils.d.ts +1 -1
- package/dist/pipeline/utils.d.ts.map +1 -1
- package/dist/pipeline/watch-keys.d.ts +0 -10
- package/dist/pipeline/watch-keys.d.ts.map +1 -1
- package/dist/{pipeline-lkbOoyAr.mjs → pipeline-DeEENy5C.mjs} +1940 -2263
- package/dist/{pipeline-ojNeABi0.cjs → pipeline-x1yBZ2UP.cjs} +1970 -2269
- package/dist/session/extraction-session.d.ts +110 -316
- package/dist/session/extraction-session.d.ts.map +1 -1
- package/dist/session/index.d.ts +6 -20
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/published-set.d.ts +45 -25
- package/dist/session/published-set.d.ts.map +1 -1
- package/dist/session/resolve-packages.d.ts +6 -7
- package/dist/session/resolve-packages.d.ts.map +1 -1
- package/dist/session/session-paths.d.ts +38 -72
- package/dist/session/session-paths.d.ts.map +1 -1
- package/dist/session/singleton.d.ts +32 -71
- package/dist/session/singleton.d.ts.map +1 -1
- package/dist/session/timing.d.ts +0 -5
- package/dist/session/timing.d.ts.map +1 -1
- package/dist/session/turbopack-orchestrator.d.ts +17 -33
- package/dist/session/turbopack-orchestrator.d.ts.map +1 -1
- package/dist/session.cjs +530 -677
- package/dist/session.mjs +517 -672
- package/index-v2.js +0 -9
- package/package.json +9 -8
- package/dist/pipeline/external-keyframes.d.ts +0 -23
- package/dist/pipeline/external-keyframes.d.ts.map +0 -1
|
@@ -1,63 +1,33 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* One option schema, N drivers: the Vite plugin, the Next plugin, and the
|
|
5
|
-
* standalone CLI all resolve their shared option core through this module so
|
|
6
|
-
* key semantics, default exclusions, and the dev/prod mode authority cannot
|
|
7
|
-
* drift per driver. Driver-specific options live in per-driver namespaces
|
|
8
|
-
* (`vite:` / `next:` / `cli:`) or in the driver's own legacy top-level keys,
|
|
9
|
-
* which the owning driver declares via `ownKeys`; any other unknown
|
|
10
|
-
* top-level key is a hard error naming the key.
|
|
2
|
+
* One option schema shared by the Vite, Next, and CLI drivers: key semantics,
|
|
3
|
+
* default exclusions, and mode authority cannot drift per driver.
|
|
11
4
|
*/
|
|
12
5
|
import type { StaticCssConfig } from './static-css';
|
|
13
|
-
/** Closed set of driver namespaces a shared config file may carry. */
|
|
14
6
|
export declare const DRIVER_NAMESPACES: readonly ['vite', 'next', 'cli'];
|
|
15
7
|
export type DriverNamespace = (typeof DRIVER_NAMESPACES)[number];
|
|
16
8
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* collection path (never the source walk), and `.next`/`.animus` are artifact
|
|
20
|
-
* output directories inside the scanned root that must never be re-ingested
|
|
21
|
-
* as source.
|
|
9
|
+
* Applied unconditionally: `node_modules` belongs to external-package
|
|
10
|
+
* collection, and `.next`/`.animus` hold output, never source.
|
|
22
11
|
*/
|
|
23
12
|
export declare const STRUCTURAL_EXCLUDE: string[];
|
|
24
|
-
/**
|
|
25
|
-
* Convenience defaults applied only when the user supplies no `exclude`
|
|
26
|
-
* list — a user list replaces these (but never the structural set).
|
|
27
|
-
*/
|
|
13
|
+
/** Defaults a user `exclude` list replaces; the structural set it cannot. */
|
|
28
14
|
export declare const REPLACEABLE_DEFAULT_EXCLUDE: string[];
|
|
29
|
-
/**
|
|
30
|
-
* Default path patterns excluded from source discovery — the single
|
|
31
|
-
* authoritative set for every driver when no user `exclude` is given.
|
|
32
|
-
* Composed, never hand-listed: a structural addition must not silently
|
|
33
|
-
* miss this union.
|
|
34
|
-
*/
|
|
35
15
|
export declare const DEFAULT_EXCLUDE: string[];
|
|
36
|
-
/** Explicit dev/prod emission mode. When absent
|
|
37
|
-
*
|
|
38
|
-
* production). */
|
|
16
|
+
/** Explicit dev/prod emission mode. When absent each driver defaults on its
|
|
17
|
+
* own signal: Vite `config.command`, Next `NODE_ENV`, CLI production. */
|
|
39
18
|
export type AnimusMode = 'development' | 'production';
|
|
40
|
-
/** The shared option core every driver accepts with identical semantics. */
|
|
41
19
|
export interface AnimusCoreOptions {
|
|
42
20
|
/** Path to a module exporting a SystemInstance from `@animus-ui/system`. */
|
|
43
21
|
system: string;
|
|
44
22
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* (`node_modules`, `.next`, `.animus`) always apply and cannot be
|
|
48
|
-
* re-admitted. Patterns containing `*` or `?` match as globs against the
|
|
49
|
-
* root-relative path (`**` spans directories, `*` and `?` stay within one
|
|
50
|
-
* segment; character classes and brace expansion are not supported); a
|
|
51
|
-
* leading `./` is equivalent to the bare root-relative path; patterns
|
|
52
|
-
* without glob metacharacters match as substrings of the full or
|
|
53
|
-
* root-relative path.
|
|
23
|
+
* Replaces the replaceable defaults, never the structural ones. Patterns
|
|
24
|
+
* with `*`/`?` are globs on the root-relative path; others are substrings.
|
|
54
25
|
*/
|
|
55
26
|
exclude?: string[];
|
|
56
27
|
/** File extensions to scan; replaces the default list entirely. */
|
|
57
28
|
extensions?: string[];
|
|
58
29
|
/** When true, extraction failures throw instead of warning. */
|
|
59
30
|
strict?: boolean;
|
|
60
|
-
/** Enable verbose logging. */
|
|
61
31
|
verbose?: boolean;
|
|
62
32
|
/** Namespace prefix for CSS variables and class names. */
|
|
63
33
|
prefix?: string;
|
|
@@ -69,36 +39,24 @@ export interface AnimusCoreOptions {
|
|
|
69
39
|
staticCss?: StaticCssConfig;
|
|
70
40
|
/** Full `@layer` declaration order. */
|
|
71
41
|
layers?: string[];
|
|
72
|
-
/** Extraction engine selection; `'v2'` is the only engine. */
|
|
73
42
|
engine?: 'v2';
|
|
74
43
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
* environment-derived signal for those decisions. It never drives process
|
|
78
|
-
* lifecycle (watchers, HMR ownership), which stays with each host's own
|
|
79
|
-
* signal. When absent, the driver's documented default applies.
|
|
44
|
+
* Decides emitted bytes (minify, dev diagnostics, engine devMode) and wins
|
|
45
|
+
* over environment signals; never process lifecycle (watchers, HMR).
|
|
80
46
|
*/
|
|
81
47
|
mode?: AnimusMode;
|
|
82
|
-
/** Root every relative input resolves against.
|
|
83
|
-
*
|
|
84
|
-
* (`assertKnownOptionKeys` rejectKeys). */
|
|
48
|
+
/** Root every relative input resolves against. Plugin drivers derive their
|
|
49
|
+
* root from the host bundler and reject this key. */
|
|
85
50
|
root?: string;
|
|
86
51
|
}
|
|
87
|
-
/** Core keys accepted at the top level of any driver's options. */
|
|
88
52
|
export declare const CORE_OPTION_KEYS: ReadonlySet<string>;
|
|
89
|
-
/**
|
|
90
|
-
*
|
|
53
|
+
/** Carries a stable `name` so drivers can map it to their own config-error
|
|
54
|
+
* surface (the CLI's exit code 2). */
|
|
91
55
|
export declare class AnimusConfigError extends Error {
|
|
92
56
|
constructor(message: string);
|
|
93
57
|
}
|
|
94
|
-
/**
|
|
95
|
-
* plugin
|
|
96
|
-
* config load over a previously-inert extra key; new drivers (the CLI,
|
|
97
|
-
* the unplugin host) keep the `'throw'` default. Invalid VALUES (a bad
|
|
98
|
-
* `mode`) always throw — a silently flipped emission polarity is the
|
|
99
|
-
* exact failure this seam exists to kill, and `mode` is new surface with
|
|
100
|
-
* no inert-key history to stay compatible with. Warn mode REQUIRES the
|
|
101
|
-
* sink: a defaulted-away warning would be the silent failure again. */
|
|
58
|
+
/** Applies to unknown and rejected KEYS only: invalid VALUES always throw.
|
|
59
|
+
* Published plugin entries pass `'warn'` so a stale key cannot break them. */
|
|
102
60
|
export type AssertKnownOptionKeysOpts = {
|
|
103
61
|
onUnknownKey?: 'throw';
|
|
104
62
|
} | {
|
|
@@ -106,57 +64,33 @@ export type AssertKnownOptionKeysOpts = {
|
|
|
106
64
|
warn: (message: string) => void;
|
|
107
65
|
};
|
|
108
66
|
/**
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
* Vite's `verify`, Next's `cssImportTarget`); driver namespaces are always
|
|
112
|
-
* legal and inert for non-owning drivers. `rejectKeys` names core keys the
|
|
113
|
-
* calling driver does NOT honor — accepting-and-ignoring a key the
|
|
114
|
-
* validator vouches for is the exact silent failure this seam exists to
|
|
115
|
-
* kill, so the driver must reject it with its reason (or, in `'warn'`
|
|
116
|
-
* mode, name it loudly while the key stays inert as it always was).
|
|
67
|
+
* `ownKeys` is the caller's own top-level surface; `rejectKeys` names core
|
|
68
|
+
* keys it does not honor, which must fail rather than be silently ignored.
|
|
117
69
|
*/
|
|
118
|
-
export declare function assertKnownOptionKeys(raw: Record<string,
|
|
70
|
+
export declare function assertKnownOptionKeys<Value>(raw: Readonly<Record<string, Value>>, ownKeys?: readonly string[], rejectKeys?: ReadonlyArray<{
|
|
119
71
|
key: string;
|
|
120
72
|
reason: string;
|
|
121
73
|
}>, opts?: AssertKnownOptionKeysOpts): void;
|
|
122
|
-
/** Predicate over discovery paths; also consumable by watch filtering. */
|
|
123
74
|
export interface ExcludeMatcher {
|
|
124
|
-
/** Effective
|
|
125
|
-
* for reporting surfaces. */
|
|
75
|
+
/** Effective list: structural ∪ (user ?? replaceable defaults). */
|
|
126
76
|
readonly patterns: readonly string[];
|
|
127
|
-
/** Per-pattern
|
|
128
|
-
*
|
|
129
|
-
* zero hits after discovery matched nothing). */
|
|
77
|
+
/** Per-pattern hit counts over this matcher's lifetime; zero hits after
|
|
78
|
+
* discovery means the pattern matched nothing. */
|
|
130
79
|
stats(): ReadonlyMap<string, number>;
|
|
131
|
-
/** True when the path
|
|
132
|
-
* absolute-substring compatibility is preserved. */
|
|
80
|
+
/** True when the path is excluded; both path forms are tested. */
|
|
133
81
|
matches(fullPath: string, relativePath: string): boolean;
|
|
134
|
-
/** The first pattern excluding the path, or null — for diagnostics that
|
|
135
|
-
* name the responsible pattern. */
|
|
136
82
|
explain(fullPath: string, relativePath: string): string | null;
|
|
137
83
|
}
|
|
138
84
|
/**
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
* contract (`options.exclude ?? DEFAULT_EXCLUDE`) — while the structural
|
|
142
|
-
* exclusions (`node_modules`, `.next`, `.animus`) always apply: those
|
|
143
|
-
* protect pipeline invariants, not preferences, so no user list can
|
|
144
|
-
* re-admit them. `extraStructural` joins that never-replaceable set — the
|
|
145
|
-
* channel for driver-owned invariants (a CLI outDir inside the root),
|
|
146
|
-
* which must NOT ride the user list: appending there would flip the
|
|
147
|
-
* replace semantics and silently drop the replaceable defaults.
|
|
85
|
+
* A user list replaces only the replaceable defaults. Driver-owned
|
|
86
|
+
* invariants belong in `extraStructural`; a user list would replace those.
|
|
148
87
|
*/
|
|
149
88
|
export declare function createExcludeMatcher(userPatterns?: readonly string[], extraStructural?: readonly string[]): ExcludeMatcher;
|
|
150
|
-
/** How
|
|
89
|
+
/** How a resolved value was decided; surfaced by `--print-config`. */
|
|
151
90
|
export type OptionProvenance = 'explicit' | 'driver-default' | 'default';
|
|
152
91
|
export interface ResolvedMode {
|
|
153
92
|
mode: AnimusMode;
|
|
154
93
|
provenance: OptionProvenance;
|
|
155
94
|
}
|
|
156
|
-
/**
|
|
157
|
-
* Resolve the effective mode: the explicit `mode` key wins over every
|
|
158
|
-
* environment-derived signal; otherwise the driver's documented default
|
|
159
|
-
* applies.
|
|
160
|
-
*/
|
|
161
95
|
export declare function resolveMode(explicit: AnimusMode | undefined, driverDefault: () => AnimusMode): ResolvedMode;
|
|
162
96
|
//# sourceMappingURL=core-options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-options.d.ts","sourceRoot":"","sources":["../../pipeline/core-options.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"core-options.d.ts","sourceRoot":"","sources":["../../pipeline/core-options.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,41 +1,33 @@
|
|
|
1
1
|
import type { ManifestDiagnostic } from './manifest-diagnostics';
|
|
2
2
|
/**
|
|
3
|
-
* Index the loader-captured theme manifests by owning specifier.
|
|
4
|
-
*
|
|
5
|
-
* realpath'd before prefix-matching; a module outside every known package dir
|
|
6
|
-
* (typically the consumer's own theme) contributes nothing.
|
|
3
|
+
* Index the loader-captured theme manifests by owning specifier. An
|
|
4
|
+
* unparseable capture throws: an empty index reads as "no source defines it".
|
|
7
5
|
*/
|
|
8
6
|
export declare function buildSourceTokenIndex(opts: {
|
|
9
7
|
sourceThemeManifestsJson: string | null | undefined;
|
|
10
|
-
/** Absolute package dir → owning specifier
|
|
8
|
+
/** Absolute package dir → owning specifier. */
|
|
11
9
|
dirOwners: Record<string, string>;
|
|
12
10
|
}): Map<string, Set<string>>;
|
|
13
11
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* whose token that source's manifest defines. The messages follow the
|
|
17
|
-
* standard severity routing at the CALLER (throw under `strict`, warn
|
|
18
|
-
* otherwise) — this join never reports on its own.
|
|
12
|
+
* One message per distinct (component, token, specifier) whose source
|
|
13
|
+
* defines the token. Severity routing stays at the caller.
|
|
19
14
|
*/
|
|
20
15
|
export declare function correlateExternalTokenDiagnostics(opts: {
|
|
21
16
|
diagnostics: ManifestDiagnostic[] | undefined;
|
|
22
|
-
/** rootDir-relative file path → owning specifier
|
|
17
|
+
/** rootDir-relative file path → owning specifier. */
|
|
23
18
|
fileOwners: Record<string, string>;
|
|
24
19
|
/** specifier → token paths the source itself defines. */
|
|
25
20
|
sourceTokens: Map<string, Set<string>>;
|
|
26
21
|
}): string[];
|
|
27
22
|
/**
|
|
28
|
-
* The
|
|
29
|
-
*
|
|
30
|
-
* join them against the engine's candidates, and route the resulting
|
|
31
|
-
* teaching errors — throw under `strict`, warn otherwise. One entry point
|
|
32
|
-
* so the two hosts cannot drift on wiring or severity semantics.
|
|
23
|
+
* The one cross-source token-contract gate both plugins share, so the hosts
|
|
24
|
+
* cannot drift on wiring or severity.
|
|
33
25
|
*/
|
|
34
26
|
export declare function enforceExternalTokenContracts(opts: {
|
|
35
27
|
diagnostics: ManifestDiagnostic[] | undefined;
|
|
36
|
-
/** rootDir-relative file path → owning specifier
|
|
28
|
+
/** rootDir-relative file path → owning specifier. */
|
|
37
29
|
fileOwners: Record<string, string>;
|
|
38
|
-
/** Absolute package dir → owning specifier
|
|
30
|
+
/** Absolute package dir → owning specifier. */
|
|
39
31
|
dirOwners: Record<string, string>;
|
|
40
32
|
sourceThemeManifestsJson: string | null | undefined;
|
|
41
33
|
strict: boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"correlate-external-tokens.d.ts","sourceRoot":"","sources":["../../pipeline/correlate-external-tokens.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"correlate-external-tokens.d.ts","sourceRoot":"","sources":["../../pipeline/correlate-external-tokens.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAUjE;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,wBAAwB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpD,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAwD3B;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,IAAI,EAAE;IACtD,WAAW,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAC;IAC9C,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,yDAAyD;IACzD,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACxC,GAAG,MAAM,EAAE,CAyBX;AASD;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE;IAClD,WAAW,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAC;IAC9C,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,wBAAwB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpD,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,GAAG,IAAI,CAwBP"}
|
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import type { ExcludeMatcher } from './core-options';
|
|
2
|
-
|
|
3
|
-
* Recursively discover source files under `dir`, skipping excluded paths
|
|
4
|
-
* (an `ExcludeMatcher` — see core-options, the one pattern authority — or
|
|
5
|
-
* undefined for NO exclusion at all: the dist-package walks deliberately
|
|
6
|
-
* run under node_modules, which `createExcludeMatcher`'s structural set
|
|
7
|
-
* would prune) and keeping files whose extension is in `extensionsSet`.
|
|
8
|
-
*
|
|
9
|
-
* Single authoritative copy for both extraction plugins.
|
|
10
|
-
*/
|
|
2
|
+
export declare function compareDiscoveryOrder(a: string, b: string): number;
|
|
11
3
|
export declare function discoverFiles(dir: string, rootDir: string, exclude: ExcludeMatcher | undefined, extensionsSet: ReadonlySet<string>): string[];
|
|
12
4
|
//# sourceMappingURL=discover-files.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discover-files.d.ts","sourceRoot":"","sources":["../../pipeline/discover-files.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"discover-files.d.ts","sourceRoot":"","sources":["../../pipeline/discover-files.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAMrD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQlE;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,GAAG,SAAS,EACnC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,GACjC,MAAM,EAAE,CAIV"}
|
|
@@ -1,191 +1,55 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Walk up from a resolved package entry file to the nearest directory
|
|
3
|
-
* containing a package.json (the package root). Stops at the filesystem
|
|
4
|
-
* root and returns it if no package.json is found on the way up.
|
|
5
|
-
*/
|
|
6
1
|
export declare function findPackageRoot(absEntryPath: string): string;
|
|
7
|
-
/**
|
|
8
|
-
* Exclusion fragments for discovery inside an external package's src/,
|
|
9
|
-
* matched against paths RELATIVE TO the src dir. Per spec
|
|
10
|
-
* external-package-file-discovery, the filters apply "within the package" —
|
|
11
|
-
* an npm-installed package whose own location is under node_modules (or a
|
|
12
|
-
* repo path containing 'dist') must still have its sources discovered.
|
|
13
|
-
*/
|
|
14
2
|
export declare const PACKAGE_SRC_EXCLUDES: string[];
|
|
15
|
-
/** True when a PACKAGE-RELATIVE path matches a package-source exclusion
|
|
16
|
-
* fragment (the "within the package" filter — see PACKAGE_SRC_EXCLUDES). */
|
|
17
3
|
export declare function isExcludedPackageRelativePath(rel: string): boolean;
|
|
18
|
-
/**
|
|
19
|
-
* THE package-source walk (guardrail G1 — one policy): shared discovery with
|
|
20
|
-
* no consumer patterns, then exclusion by package-relative path so fragments
|
|
21
|
-
* in the package's own location can't blank out its sources. Used by the
|
|
22
|
-
* collector, hosts' dirty-root rewalks, and watch-path classification alike.
|
|
23
|
-
*/
|
|
24
4
|
export declare function walkPackageSources(packageDir: string, extensionsSet: ReadonlySet<string>): string[];
|
|
25
|
-
/**
|
|
26
|
-
* What one declared include specifier produced, so callers can tell a package
|
|
27
|
-
* that contributed sources apart from one that silently contributed nothing.
|
|
28
|
-
* Collection itself never warns — reporting is the caller's policy.
|
|
29
|
-
*/
|
|
30
5
|
export interface ExternalPackageOutcome {
|
|
31
|
-
/** The declared specifier, exactly as it appeared in the system file. */
|
|
32
6
|
specifier: string;
|
|
33
|
-
/**
|
|
34
|
-
* - `resolved` — resolved to a package and accounted for at least one source
|
|
35
|
-
* - `unresolvable` — specifier could not be resolved (skipped, per spec)
|
|
36
|
-
* - `empty` — resolved to a package root but accounted for no sources
|
|
37
|
-
* - `stale-dist` — resolved with a walked src/ tree whose newest source file
|
|
38
|
-
* is newer than the resolved dist entry file (first-class-extension D13:
|
|
39
|
-
* a merge would consume registry content the sources no longer match)
|
|
40
|
-
*/
|
|
41
7
|
outcome: 'resolved' | 'unresolvable' | 'empty' | 'stale-dist';
|
|
42
|
-
/**
|
|
43
|
-
* Source files this specifier accounted for in the analysis set: files it
|
|
44
|
-
* contributed, plus files a previous specifier or the caller's own file set
|
|
45
|
-
* already supplied (those are in the set, just not attributable to this
|
|
46
|
-
* collection pass). Unreadable files are NOT counted — they never reach
|
|
47
|
-
* the analysis set.
|
|
48
|
-
*/
|
|
49
8
|
fileCount: number;
|
|
50
9
|
}
|
|
51
|
-
/**
|
|
52
|
-
* Resolve an absolute-path specifier (a relative `includes` entry already
|
|
53
|
-
* resolved against the system file) without a bundler: the path itself when it
|
|
54
|
-
* is a file, otherwise the extension and directory-index candidates built from
|
|
55
|
-
* the caller's extension set. Used only as a fallback — a bundler resolver that
|
|
56
|
-
* answers first still wins, since it also knows aliases and `.js`→`.ts` mapping.
|
|
57
|
-
*/
|
|
58
10
|
export declare function resolveAbsolutePathSpecifier(absSpecifier: string, extensionsSet: ReadonlySet<string>): string | null;
|
|
59
11
|
export interface CollectedExternalPackages {
|
|
60
|
-
/** New file entries
|
|
12
|
+
/** New file entries for the analysis set, at rootDir-relative paths. */
|
|
61
13
|
entries: Array<{
|
|
62
14
|
path: string;
|
|
63
15
|
source: string;
|
|
64
16
|
}>;
|
|
65
|
-
/** specifier → rootDir-relative module-resolution entry
|
|
17
|
+
/** specifier → rootDir-relative module-resolution entry. */
|
|
66
18
|
packageMap: Record<string, string>;
|
|
67
|
-
/** specifier → absolute src/index.ts path, only for packages with one. */
|
|
68
19
|
sourceEntries: Map<string, string>;
|
|
69
|
-
/**
|
|
70
|
-
* one per admitted specifier, whatever the package's shape: the redirected
|
|
71
|
-
* source entry when src/ serves it, the resolved (dist) entry otherwise.
|
|
72
|
-
* Keyed separately from `sourceEntries` because that map doubles as the
|
|
73
|
-
* hosts' module-resolution redirect and stays src-only by contract. */
|
|
74
|
-
keyframesScanEntries: Map<string, string>;
|
|
75
|
-
/** Absolute directories for bundler loader allowlisting (src/ or dist entry dir). */
|
|
20
|
+
/** Absolute directories for bundler loader allowlisting. */
|
|
76
21
|
packageDirs: string[];
|
|
77
|
-
/** Absolute package dir →
|
|
78
|
-
* declaration order
|
|
79
|
-
* external-source-watch-ingestion, design D2). The first-wins
|
|
80
|
-
* single-value view correlation consumers key on derives via
|
|
81
|
-
* `firstOwners`. */
|
|
22
|
+
/** Absolute package dir → every declared specifier that claimed it, in
|
|
23
|
+
* declaration order. `firstOwners` derives the single-value view. */
|
|
82
24
|
dirOwnerSets: Record<string, string[]>;
|
|
83
|
-
/** Absolute package dir → the
|
|
84
|
-
*
|
|
85
|
-
* `.mjs`). Hosts that rewalk or re-classify paths under a dir must use
|
|
86
|
-
* this same list — recomputing from the project default silently drops
|
|
87
|
-
* every file the widened walk admitted. */
|
|
25
|
+
/** Absolute package dir → the exact extension list its walk used. Rewalking
|
|
26
|
+
* with the project default drops files the widened walk admitted. */
|
|
88
27
|
dirExtensions: Record<string, string[]>;
|
|
89
|
-
/** rootDir-relative
|
|
90
|
-
*
|
|
91
|
-
* already supplied stay unattributed — they are consumer-owned). */
|
|
28
|
+
/** rootDir-relative path → the first specifier that contributed it. Files
|
|
29
|
+
* the caller's set already supplied stay unattributed. */
|
|
92
30
|
fileOwners: Record<string, string>;
|
|
93
|
-
/** One record per declared specifier, in declaration order. */
|
|
94
31
|
outcomes: ExternalPackageOutcome[];
|
|
95
32
|
}
|
|
96
|
-
/**
|
|
97
|
-
* Shared external-package source collection (spec:
|
|
98
|
-
* external-package-file-discovery), consumed by both extraction plugins.
|
|
99
|
-
* For each specifier: resolve to an absolute entry (null/throw → silently
|
|
100
|
-
* skip; an absolute-path specifier falls back to a filesystem probe), walk up
|
|
101
|
-
* to the package root, then either discover sources under src/ (redirecting
|
|
102
|
-
* module resolution to src/index.ts when present) or fall back to ingesting
|
|
103
|
-
* the resolved entry file itself.
|
|
104
|
-
*
|
|
105
|
-
* The only bundler-specific seams are callbacks: specifier resolution,
|
|
106
|
-
* dedup against already-ingested files, per-file preprocessing (MDX), and
|
|
107
|
-
* the unreadable-file warning. Hashing and caching stay in the plugins —
|
|
108
|
-
* their cache policies legitimately differ.
|
|
109
|
-
*
|
|
110
|
-
* Alongside the aggregates, one `ExternalPackageOutcome` per declared
|
|
111
|
-
* specifier records what that specifier produced. Collection never reports on
|
|
112
|
-
* them — any warning or gate is the caller's policy.
|
|
113
|
-
*/
|
|
114
33
|
export declare function collectExternalPackageSources(opts: {
|
|
115
34
|
specifiers: string[];
|
|
116
|
-
/** Resolve a specifier to an absolute entry path; null (or a throw) skips it. */
|
|
117
35
|
resolveSpecifier: (specifier: string) => string | null | Promise<string | null>;
|
|
118
36
|
rootDir: string;
|
|
119
37
|
extensionsSet: ReadonlySet<string>;
|
|
120
|
-
/** Does the caller's file set already contain this rootDir-relative path? */
|
|
121
38
|
hasEntry: (relPath: string) => boolean;
|
|
122
|
-
/**
|
|
123
|
-
* Observer called once per readable discovered source, before it joins the
|
|
124
|
-
* analysis set. Hosts use it to record raw-file identity (the session's
|
|
125
|
-
* external watch hashes); adaptation itself happens later in
|
|
126
|
-
* `ingestSourceEntries`, never here.
|
|
127
|
-
*/
|
|
128
39
|
onSourceRead?: (source: string, relPath: string, absPath: string) => void;
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
* Called once per specifier immediately after its package dir is derived
|
|
133
|
-
* and BEFORE that package's sources are walked (openspec:
|
|
134
|
-
* external-source-watch-ingestion, design D4 — a host can open its
|
|
135
|
-
* watcher with no blind gap between scan and watch).
|
|
136
|
-
*/
|
|
40
|
+
onUnreadable: <Thrown>(relPath: string, error: Thrown) => void;
|
|
41
|
+
/** Called once per specifier after its package dir is derived and BEFORE
|
|
42
|
+
* its sources are walked, so a host can watch with no blind gap. */
|
|
137
43
|
onPackageResolved?: (specifier: string, packageDir: string) => void;
|
|
138
44
|
}): Promise<CollectedExternalPackages>;
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
* Excise a set of rejected specifiers from a collection result ATOMICALLY
|
|
144
|
-
* (openspec: external-source-watch-ingestion, design D5): the returned copy
|
|
145
|
-
* carries no entries, package-map targets, source entries, package dirs, or
|
|
146
|
-
* ownership for the rejected packages — a package dir is removed only when
|
|
147
|
-
* EVERY specifier that claimed it is rejected (a dir-level rejection, such
|
|
148
|
-
* as the cross-volume gate, always rejects them together). Outcome records
|
|
149
|
-
* are reporting inputs, not membership, and pass through untouched.
|
|
150
|
-
*/
|
|
45
|
+
export interface PackageDirOwners {
|
|
46
|
+
[packageDir: string]: string;
|
|
47
|
+
}
|
|
48
|
+
export declare function firstOwners(dirOwnerSets: Record<string, string[]>): PackageDirOwners;
|
|
151
49
|
export declare function excludeCollectedPackages(collected: CollectedExternalPackages, rejectedSpecifiers: ReadonlySet<string>, rootDir: string): CollectedExternalPackages;
|
|
152
|
-
/**
|
|
153
|
-
* Extract external DS package names from inheritance declarations in the
|
|
154
|
-
* system file.
|
|
155
|
-
*
|
|
156
|
-
* Supports four forms:
|
|
157
|
-
* - Primary: `createSystem(...).extend(identifier)` chain calls
|
|
158
|
-
* (repeatable, mixable with `.from()` links; each call
|
|
159
|
-
* contributes one source; a library-bundle identifier
|
|
160
|
-
* traces its base import)
|
|
161
|
-
* - Deprecated chain: `createSystem(...).from(identifier)` chain calls
|
|
162
|
-
* - Deprecated alias: `createSystem({ includes: [identifier, ...] })`
|
|
163
|
-
* - Legacy: `.includes([identifier, ...])` chain method (RC
|
|
164
|
-
* migration fallback)
|
|
165
|
-
*
|
|
166
|
-
* For each identifier found, traces back to its import declaration and returns
|
|
167
|
-
* the import specifier: a bare specifier normalized to its package name, a
|
|
168
|
-
* relative specifier resolved against the system file's directory into an
|
|
169
|
-
* absolute path (so a sibling package referenced by path contributes discovery
|
|
170
|
-
* too). Only packages explicitly declared through one of these forms are
|
|
171
|
-
* treated as external DS dependencies.
|
|
172
|
-
*
|
|
173
|
-
* Falls back to empty array if no declaration is found.
|
|
174
|
-
*/
|
|
175
|
-
/**
|
|
176
|
-
* The message for the strict/warn gate over unresolvable includes, or null
|
|
177
|
-
* when every declared specifier resolved (external-package-file-discovery:
|
|
178
|
-
* silence is never an outcome — non-strict consumers warn with this line,
|
|
179
|
-
* strict consumers throw it).
|
|
180
|
-
*/
|
|
181
50
|
export declare function unresolvableIncludesMessage(outcomes: ExternalPackageOutcome[]): string | null;
|
|
182
|
-
/**
|
|
183
|
-
*
|
|
184
|
-
* (first-class-extension D13), or null when no declared specifier is stale.
|
|
185
|
-
* A stale dist silently skews merged registry content while discovery
|
|
186
|
-
* compiles the fresh sources, so it surfaces like an unresolvable specifier:
|
|
187
|
-
* non-strict consumers warn with this line, strict consumers throw it.
|
|
188
|
-
*/
|
|
51
|
+
/** A stale dist silently skews merged registry content while discovery
|
|
52
|
+
* compiles the fresh sources; null when no specifier is stale. */
|
|
189
53
|
export declare function staleDistIncludesMessage(outcomes: ExternalPackageOutcome[]): string | null;
|
|
190
54
|
export declare function extractSystemFilePackages(systemFilePath: string): string[];
|
|
191
55
|
//# sourceMappingURL=discover-packages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discover-packages.d.ts","sourceRoot":"","sources":["../../pipeline/discover-packages.ts"],"names":[],"mappings":"AAMA
|
|
1
|
+
{"version":3,"file":"discover-packages.d.ts","sourceRoot":"","sources":["../../pipeline/discover-packages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,9 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Manifest `dynamic_props` → runtime `dynamicPropConfig` mapping.
|
|
3
|
-
*
|
|
4
|
-
* Single authoritative copy for both extraction plugins: the emitted
|
|
5
|
-
* `dynamicPropConfig` object in each plugin's system-props module is
|
|
6
|
-
* `JSON.stringify(buildDynamicPropConfig(...))`, so field order and the
|
|
7
|
-
* omission rules (no `property` when absent, no `properties` when empty, no
|
|
8
|
-
* `transformName` when absent, no `scaleValues` when empty) are part of the
|
|
9
|
-
* emitted-bundle contract. Field order matches the per-component
|
|
10
|
-
* `customDynamicConfig` the Rust assembler emits.
|
|
11
|
-
*
|
|
12
|
-
* The v2 manifest is the only producer, and it serializes `DynamicPropMeta`
|
|
13
|
-
* with `serde(rename_all = "camelCase")` — so camelCase is the only spelling
|
|
14
|
-
* this reader accepts, and the throw below is what a rename on the Rust side
|
|
15
|
-
* runs into.
|
|
16
|
-
*/
|
|
17
1
|
export interface DynamicPropMeta {
|
|
18
2
|
varName: string;
|
|
19
3
|
slotClass: string;
|
|
20
4
|
property?: string | null;
|
|
21
5
|
properties?: readonly string[] | null;
|
|
22
6
|
transformName?: string | null;
|
|
23
|
-
/** Carried by the manifest for the per-component config; the shared module
|
|
24
|
-
* resolves transforms through the `transforms` registry, so it is dropped. */
|
|
25
7
|
transformFnSource?: string | null;
|
|
26
8
|
scaleValues?: Record<string, string> | null;
|
|
27
9
|
}
|
|
@@ -33,5 +15,8 @@ export interface DynamicPropConfigEntry {
|
|
|
33
15
|
transformName?: string;
|
|
34
16
|
scaleValues?: Record<string, string>;
|
|
35
17
|
}
|
|
36
|
-
export
|
|
18
|
+
export interface DynamicPropConfig {
|
|
19
|
+
[propName: string]: DynamicPropConfigEntry;
|
|
20
|
+
}
|
|
21
|
+
export declare function buildDynamicPropConfig(dynamicProps: Record<string, DynamicPropMeta>): DynamicPropConfig;
|
|
37
22
|
//# sourceMappingURL=dynamic-prop-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-prop-config.d.ts","sourceRoot":"","sources":["../../pipeline/dynamic-prop-config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"dynamic-prop-config.d.ts","sourceRoot":"","sources":["../../pipeline/dynamic-prop-config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,iBAAiB;IAChC,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,CAAC;CAC5C;AAED,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAC5C,iBAAiB,CAwBnB"}
|