zyzz 0.0.6 → 0.0.8
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 +26 -1
- package/dist/Style.d.ts +3 -3
- package/dist/Style.d.ts.map +1 -1
- package/dist/Style.js +12 -1
- package/dist/Style.js.map +1 -1
- package/dist/babel/index.d.ts +4 -1
- package/dist/babel/index.d.ts.map +1 -1
- package/dist/babel/index.js +6 -3
- package/dist/babel/index.js.map +1 -1
- package/dist/babel/internal/Compilation.d.ts +12 -0
- package/dist/babel/internal/Compilation.d.ts.map +1 -0
- package/dist/babel/internal/Compilation.js +3 -0
- package/dist/babel/internal/Compilation.js.map +1 -0
- package/dist/compiler/Graph.d.ts +6 -1
- package/dist/compiler/Graph.d.ts.map +1 -1
- package/dist/compiler/Graph.js +160 -36
- package/dist/compiler/Graph.js.map +1 -1
- package/dist/compiler/Transform.d.ts.map +1 -1
- package/dist/compiler/Transform.js +2 -1
- package/dist/compiler/Transform.js.map +1 -1
- package/dist/compiler/internal/Stylesheets.d.ts +8 -0
- package/dist/compiler/internal/Stylesheets.d.ts.map +1 -1
- package/dist/compiler/internal/Stylesheets.js +4 -0
- package/dist/compiler/internal/Stylesheets.js.map +1 -1
- package/dist/internal/Authoring.d.ts.map +1 -1
- package/dist/internal/Authoring.js +14 -0
- package/dist/internal/Authoring.js.map +1 -1
- package/dist/internal/Binding.d.ts +7 -0
- package/dist/internal/Binding.d.ts.map +1 -1
- package/dist/internal/Binding.js.map +1 -1
- package/dist/internal/Configuration.d.ts +1 -1
- package/dist/internal/Configuration.d.ts.map +1 -1
- package/dist/internal/Configuration.js +7 -6
- package/dist/internal/Configuration.js.map +1 -1
- package/dist/internal/Theme.d.ts +1 -1
- package/dist/internal/Theme.d.ts.map +1 -1
- package/dist/internal/Theme.js.map +1 -1
- package/dist/internal/Token.d.ts +3 -1
- package/dist/internal/Token.d.ts.map +1 -1
- package/dist/internal/Token.js +28 -3
- package/dist/internal/Token.js.map +1 -1
- package/dist/internal/Value.d.ts +22 -0
- package/dist/internal/Value.d.ts.map +1 -1
- package/dist/internal/Value.js +76 -9
- package/dist/internal/Value.js.map +1 -1
- package/dist/metro/Graph.d.ts +9 -1
- package/dist/metro/Graph.d.ts.map +1 -1
- package/dist/metro/Graph.js +5 -4
- package/dist/metro/Graph.js.map +1 -1
- package/dist/metro/transformer.d.ts +0 -1
- package/dist/metro/transformer.d.ts.map +1 -1
- package/dist/metro/transformer.js +19 -1
- package/dist/metro/transformer.js.map +1 -1
- package/dist/next/index.d.ts +3 -3
- package/dist/next/index.d.ts.map +1 -1
- package/dist/next/index.js +25 -30
- package/dist/next/index.js.map +1 -1
- package/dist/next/internal/Project.d.ts +28 -0
- package/dist/next/internal/Project.d.ts.map +1 -0
- package/dist/next/internal/Project.js +295 -0
- package/dist/next/internal/Project.js.map +1 -0
- package/dist/next/loader.d.ts +5 -6
- package/dist/next/loader.d.ts.map +1 -1
- package/dist/next/loader.js +161 -247
- package/dist/next/loader.js.map +1 -1
- package/dist/node/Host.d.ts.map +1 -1
- package/dist/node/Host.js +11 -3
- package/dist/node/Host.js.map +1 -1
- package/dist/node/internal/Snapshot.d.ts +12 -0
- package/dist/node/internal/Snapshot.d.ts.map +1 -0
- package/dist/node/internal/Snapshot.js +74 -0
- package/dist/node/internal/Snapshot.js.map +1 -0
- package/dist/unplugin/index.d.ts.map +1 -1
- package/dist/unplugin/index.js +10 -5
- package/dist/unplugin/index.js.map +1 -1
- package/dist/variants.d.ts +1 -1
- package/dist/variants.d.ts.map +1 -1
- package/dist/variants.js.map +1 -1
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +19 -4
- package/dist/vite/index.js.map +1 -1
- package/package.json +1 -1
- package/src/Style.ts +42 -8
- package/src/babel/index.ts +10 -4
- package/src/babel/internal/Compilation.ts +13 -0
- package/src/compiler/Graph.ts +213 -47
- package/src/compiler/Transform.ts +2 -1
- package/src/compiler/internal/Stylesheets.ts +9 -0
- package/src/internal/Authoring.ts +21 -0
- package/src/internal/Binding.ts +30 -0
- package/src/internal/Configuration.ts +19 -13
- package/src/internal/Theme.ts +5 -1
- package/src/internal/Token.ts +34 -3
- package/src/internal/Value.ts +180 -10
- package/src/metro/Graph.ts +5 -3
- package/src/metro/transformer.ts +26 -1
- package/src/next/index.ts +26 -31
- package/src/next/internal/Project.ts +378 -0
- package/src/next/loader.ts +195 -315
- package/src/node/Host.ts +15 -3
- package/src/node/internal/Snapshot.ts +79 -0
- package/src/unplugin/index.ts +10 -5
- package/src/variants.ts +1 -0
- package/src/vite/index.ts +24 -4
package/dist/next/loader.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/** Loads a physical source graph through Next.js resolution and emits cache-owned CSS. @module */
|
|
2
|
+
import * as AtRules from '../compiler/internal/AtRules.js';
|
|
2
3
|
import * as Crypto from 'node:crypto';
|
|
3
4
|
import * as Fs from 'node:fs/promises';
|
|
4
5
|
import * as Path from 'node:path';
|
|
5
|
-
import * as
|
|
6
|
-
import * as
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
import * as Contract from '../compiler/internal/Contract.js';
|
|
6
|
+
import * as Stylesheets from '../compiler/internal/Stylesheets.js';
|
|
7
|
+
import * as Project from './internal/Project.js';
|
|
8
|
+
// Next owns loader worker lifetimes. Each project retains only its latest graph in that worker.
|
|
9
|
+
const projects = new Map();
|
|
10
10
|
/** Loader-runner boundary used by Webpack and Turbopack. */
|
|
11
11
|
export default function loader(source) {
|
|
12
12
|
const callback = this.async();
|
|
@@ -16,11 +16,14 @@ async function compile(context, source) {
|
|
|
16
16
|
const options = context.getOptions();
|
|
17
17
|
const root = options.root;
|
|
18
18
|
const directory = Path.resolve(root, '.zyzz', 'next');
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
if (options.mode) {
|
|
20
|
+
const hash = new URLSearchParams(context.resourceQuery).get('zyzz');
|
|
21
|
+
if (!hash || !/^[a-f0-9]{64}$/.test(hash))
|
|
22
|
+
throw new Error('Invalid generated stylesheet request.');
|
|
23
|
+
const file = Path.join(directory, `${hash}.css`);
|
|
24
|
+
context.addDependency(file);
|
|
25
|
+
return { code: await Fs.readFile(file, 'utf8'), map: undefined };
|
|
26
|
+
}
|
|
24
27
|
const eligible = (file) => /\.[cm]?[jt]sx?$/.test(file) &&
|
|
25
28
|
!/\.(?:d|test|test-d|bench|bench-d)\.[cm]?[jt]sx?$/.test(file) &&
|
|
26
29
|
!Path.relative(root, file)
|
|
@@ -29,185 +32,21 @@ async function compile(context, source) {
|
|
|
29
32
|
// Next.js hoists instrumentation CSS out of route stylesheets without loading it.
|
|
30
33
|
if (/^(?:src\/)?instrumentation-client\.[cm]?[jt]s$/.test(Path.relative(root, context.resourcePath).split(Path.sep).join('/')))
|
|
31
34
|
return { code: source, map: undefined };
|
|
32
|
-
if (
|
|
35
|
+
if (!eligible(context.resourcePath))
|
|
33
36
|
return { code: source, map: undefined };
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
});
|
|
45
|
-
for (const node of parsed.program.body) {
|
|
46
|
-
if ((node.type !== 'ImportDeclaration' &&
|
|
47
|
-
node.type !== 'ExportNamedDeclaration' &&
|
|
48
|
-
node.type !== 'ExportAllDeclaration') ||
|
|
49
|
-
!node.source)
|
|
50
|
-
continue;
|
|
51
|
-
if (node.type === 'ImportDeclaration'
|
|
52
|
-
? node.importKind === 'type'
|
|
53
|
-
: node.exportKind === 'type')
|
|
54
|
-
continue;
|
|
55
|
-
const specifier = node.source.value;
|
|
56
|
-
links[specifier] = null;
|
|
57
|
-
// Next owns this virtual module, which has no physical stylesheet contract.
|
|
58
|
-
if (specifier === 'next/root-params')
|
|
59
|
-
continue;
|
|
60
|
-
if (specifier === 'zyzz' ||
|
|
61
|
-
(specifier.startsWith('zyzz/') && specifier !== 'zyzz/default') ||
|
|
62
|
-
specifier.startsWith('node:'))
|
|
63
|
-
continue;
|
|
64
|
-
const resolved = await new Promise((accept, reject) => {
|
|
65
|
-
resolve(Path.dirname(file), specifier, (error, value) => error ? reject(error) : accept(value));
|
|
66
|
-
});
|
|
67
|
-
if (!resolved || !/\.[cm]?[jt]sx?$/.test(resolved))
|
|
68
|
-
continue;
|
|
69
|
-
if (eligible(resolved)) {
|
|
70
|
-
links[specifier] = id(resolved);
|
|
71
|
-
await visit(resolved);
|
|
72
|
-
continue;
|
|
73
|
-
}
|
|
74
|
-
const sidecar = `${resolved}.zyzz.json`;
|
|
75
|
-
try {
|
|
76
|
-
contracts[resolved] = await Fs.readFile(sidecar, 'utf8');
|
|
77
|
-
context.addDependency(sidecar);
|
|
78
|
-
links[specifier] = resolved;
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
if (error.code !== 'ENOENT')
|
|
82
|
-
throw error;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
async function discover(directory) {
|
|
87
|
-
const items = await Fs.readdir(directory, { withFileTypes: true });
|
|
88
|
-
// Recursive tracking of a package root follows every installed dependency.
|
|
89
|
-
// A dependency symlink back to an ancestor, as a package linked from its
|
|
90
|
-
// own repository, is rejected as a loop, so such a root is tracked through
|
|
91
|
-
// its files and subdirectories instead.
|
|
92
|
-
if (!items.some((item) => item.name === 'node_modules') ||
|
|
93
|
-
!(await loops(directory)))
|
|
94
|
-
context.addContextDependency(directory);
|
|
95
|
-
for (const item of items) {
|
|
96
|
-
if (item.name.startsWith('.') ||
|
|
97
|
-
[
|
|
98
|
-
'node_modules',
|
|
99
|
-
'dist',
|
|
100
|
-
'build',
|
|
101
|
-
'coverage',
|
|
102
|
-
'test',
|
|
103
|
-
'tests',
|
|
104
|
-
'__tests__',
|
|
105
|
-
].includes(item.name))
|
|
106
|
-
continue;
|
|
107
|
-
const file = Path.join(directory, item.name);
|
|
108
|
-
if (item.isDirectory())
|
|
109
|
-
await discover(file);
|
|
110
|
-
else if (item.isFile() && eligible(file))
|
|
111
|
-
await visit(file);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
if (options.mode !== 'shared')
|
|
115
|
-
await visit(context.resourcePath, source);
|
|
116
|
-
await discover(root);
|
|
117
|
-
const loaded = new Set();
|
|
118
|
-
async function dependencies(file) {
|
|
119
|
-
if (loaded.has(file))
|
|
120
|
-
return;
|
|
121
|
-
loaded.add(file);
|
|
122
|
-
const metadata = Contract.read(contracts[file], new Map(), file);
|
|
123
|
-
for (const section of metadata.stylesheets) {
|
|
124
|
-
let owner = file;
|
|
125
|
-
for (const specifier of section.dependency ?? []) {
|
|
126
|
-
const target = await new Promise((accept, reject) => {
|
|
127
|
-
resolve(Path.dirname(owner), specifier, (error, value) => error ? reject(error) : accept(value));
|
|
128
|
-
});
|
|
129
|
-
if (!target || !Path.isAbsolute(target))
|
|
130
|
-
throw new Error('Unable to resolve packed stylesheet dependency.');
|
|
131
|
-
const links = (imports[owner] ??= Object.create(null));
|
|
132
|
-
links[specifier] = target;
|
|
133
|
-
if (!Object.hasOwn(contracts, target)) {
|
|
134
|
-
const sidecar = `${target}.zyzz.json`;
|
|
135
|
-
contracts[target] = await Fs.readFile(sidecar, 'utf8');
|
|
136
|
-
context.addDependency(sidecar);
|
|
137
|
-
}
|
|
138
|
-
await dependencies(target);
|
|
139
|
-
owner = target;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
37
|
+
const key = JSON.stringify([
|
|
38
|
+
root,
|
|
39
|
+
options.bundler,
|
|
40
|
+
options.reset ?? false,
|
|
41
|
+
options.development ?? false,
|
|
42
|
+
]);
|
|
43
|
+
let project = projects.get(key);
|
|
44
|
+
if (!project) {
|
|
45
|
+
project = Project.create(options);
|
|
46
|
+
projects.set(key, project);
|
|
142
47
|
}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
const graph = Graph.compile({
|
|
146
|
-
contracts,
|
|
147
|
-
imports,
|
|
148
|
-
modules,
|
|
149
|
-
reset: options.reset ? Reset.read() : undefined,
|
|
150
|
-
});
|
|
151
|
-
const output = graph.modules[id(context.resourcePath)];
|
|
152
|
-
const assets = new Map();
|
|
153
|
-
for (const [placeholder, target] of Object.entries(graph.sharedAssets ?? {})) {
|
|
154
|
-
const raw = target.split(/[?#]/)[0];
|
|
155
|
-
const file = await Fs.realpath(target.startsWith('app/')
|
|
156
|
-
? Path.join(root, decodeURIComponent(raw.slice(4)))
|
|
157
|
-
: decodeURIComponent(raw));
|
|
158
|
-
const identity = graph.sharedAssetOwners?.[placeholder];
|
|
159
|
-
let owner = root;
|
|
160
|
-
if (identity && Path.isAbsolute(identity)) {
|
|
161
|
-
owner = Path.dirname(identity);
|
|
162
|
-
for (;;) {
|
|
163
|
-
try {
|
|
164
|
-
await Fs.access(Path.join(owner, 'package.json'));
|
|
165
|
-
break;
|
|
166
|
-
}
|
|
167
|
-
catch (error) {
|
|
168
|
-
if (error.code !== 'ENOENT')
|
|
169
|
-
throw error;
|
|
170
|
-
const parent = Path.dirname(owner);
|
|
171
|
-
if (parent === owner)
|
|
172
|
-
throw new Error('Packed assets require an owning package.json.');
|
|
173
|
-
owner = parent;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
const relative = Path.relative(await Fs.realpath(owner), file);
|
|
178
|
-
if (!identity ||
|
|
179
|
-
relative === '..' ||
|
|
180
|
-
relative.startsWith(`..${Path.sep}`) ||
|
|
181
|
-
Path.isAbsolute(relative))
|
|
182
|
-
throw new Error('Asset path escapes its owning package.');
|
|
183
|
-
context.addDependency(file);
|
|
184
|
-
assets.set(placeholder, Path.relative(options.bundler === 'turbopack'
|
|
185
|
-
? Path.dirname(context.resourcePath)
|
|
186
|
-
: directory, file)
|
|
187
|
-
.split(Path.sep)
|
|
188
|
-
.map(encodeURIComponent)
|
|
189
|
-
.join('/') + target.slice(raw.length));
|
|
190
|
-
}
|
|
191
|
-
const shared = graph.sharedCss
|
|
192
|
-
? AtRules.transform({
|
|
193
|
-
code: Buffer.from(graph.sharedCss),
|
|
194
|
-
filename: 'shared.css',
|
|
195
|
-
inputSourceMap: JSON.stringify(graph.sharedCssMap),
|
|
196
|
-
sourceMap: true,
|
|
197
|
-
visitor: {
|
|
198
|
-
Url: (url) => assets.has(url.url)
|
|
199
|
-
? { ...url, url: assets.get(url.url) }
|
|
200
|
-
: undefined,
|
|
201
|
-
},
|
|
202
|
-
})
|
|
203
|
-
: undefined;
|
|
204
|
-
if (options.mode === 'shared')
|
|
205
|
-
return {
|
|
206
|
-
code: shared?.code.toString() ?? '',
|
|
207
|
-
map: shared?.map
|
|
208
|
-
? JSON.parse(shared.map.toString())
|
|
209
|
-
: undefined,
|
|
210
|
-
};
|
|
48
|
+
const graph = await project.compile(context, source);
|
|
49
|
+
const output = graph.modules[`app/${Path.relative(root, context.resourcePath).split(Path.sep).join('/')}`];
|
|
211
50
|
if (!output)
|
|
212
51
|
throw new Error('Missing Next.js source compilation.');
|
|
213
52
|
// Bundlers resolve map sources relative to the loader resource, not graph identities.
|
|
@@ -218,84 +57,159 @@ async function compile(context, source) {
|
|
|
218
57
|
sources: sources(output.map.sources),
|
|
219
58
|
};
|
|
220
59
|
const cssMap = { ...output.cssMap, sources: sources(output.cssMap.sources) };
|
|
221
|
-
if (
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
const
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
60
|
+
if (output.code === source &&
|
|
61
|
+
!output.css &&
|
|
62
|
+
!/(?:^|[/\\])(?:layout|_app)\.[cm]?[jt]sx?$/.test(context.resourcePath) &&
|
|
63
|
+
!graph.sharedCssMap?.sources.some((name) => name !== 'zyzz/reset.css') &&
|
|
64
|
+
!graph[Stylesheets.packed]?.length)
|
|
65
|
+
return { code: source, map };
|
|
66
|
+
const shared = await compileShared({
|
|
67
|
+
css: graph.sharedCss ?? '',
|
|
68
|
+
map: graph.sharedCssMap,
|
|
69
|
+
assets: graph.sharedAssets ?? {},
|
|
70
|
+
owners: graph.sharedAssetOwners ?? {},
|
|
71
|
+
});
|
|
72
|
+
async function compileShared(stylesheet) {
|
|
73
|
+
const assets = new Map();
|
|
74
|
+
for (const [placeholder, target] of Object.entries(stylesheet.assets)) {
|
|
75
|
+
const raw = target.split(/[?#]/)[0];
|
|
76
|
+
const file = await Fs.realpath(target.startsWith('app/')
|
|
77
|
+
? Path.join(root, decodeURIComponent(raw.slice(4)))
|
|
78
|
+
: decodeURIComponent(raw));
|
|
79
|
+
const identity = stylesheet.owners[placeholder];
|
|
80
|
+
let owner = root;
|
|
81
|
+
if (identity && Path.isAbsolute(identity)) {
|
|
82
|
+
owner = Path.dirname(identity);
|
|
83
|
+
for (;;) {
|
|
84
|
+
try {
|
|
85
|
+
await Fs.access(Path.join(owner, 'package.json'));
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
if (error.code !== 'ENOENT')
|
|
90
|
+
throw error;
|
|
91
|
+
const parent = Path.dirname(owner);
|
|
92
|
+
if (parent === owner)
|
|
93
|
+
throw new Error('Packed assets require an owning package.json.');
|
|
94
|
+
owner = parent;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const relative = Path.relative(await Fs.realpath(owner), file);
|
|
99
|
+
if (!identity ||
|
|
100
|
+
relative === '..' ||
|
|
101
|
+
relative.startsWith(`..${Path.sep}`) ||
|
|
102
|
+
Path.isAbsolute(relative))
|
|
103
|
+
throw new Error('Asset path escapes its owning package.');
|
|
104
|
+
context.addDependency(file);
|
|
105
|
+
assets.set(placeholder, Path.relative(directory, file)
|
|
106
|
+
.split(Path.sep)
|
|
107
|
+
.map(encodeURIComponent)
|
|
108
|
+
.join('/') + target.slice(raw.length));
|
|
109
|
+
}
|
|
110
|
+
return stylesheet.css
|
|
111
|
+
? AtRules.transform({
|
|
112
|
+
code: Buffer.from(stylesheet.css),
|
|
113
|
+
filename: 'shared.css',
|
|
114
|
+
inputSourceMap: JSON.stringify({
|
|
115
|
+
...stylesheet.map,
|
|
116
|
+
sources: sources(stylesheet.map.sources),
|
|
117
|
+
}),
|
|
118
|
+
sourceMap: true,
|
|
119
|
+
visitor: {
|
|
120
|
+
Url: (url) => assets.has(url.url)
|
|
121
|
+
? { ...url, url: assets.get(url.url) }
|
|
122
|
+
: undefined,
|
|
123
|
+
},
|
|
124
|
+
})
|
|
125
|
+
: undefined;
|
|
248
126
|
}
|
|
249
127
|
const styles = [
|
|
250
|
-
|
|
251
|
-
|
|
128
|
+
...(await Promise.all((graph[Stylesheets.packed] ?? []).map(async (resource) => {
|
|
129
|
+
const output = await compileShared(resource);
|
|
130
|
+
return {
|
|
131
|
+
css: output?.code.toString(),
|
|
132
|
+
map: output?.map?.toString(),
|
|
133
|
+
id: resource.id,
|
|
134
|
+
};
|
|
135
|
+
}))),
|
|
136
|
+
{
|
|
137
|
+
id: undefined,
|
|
138
|
+
css: shared?.code.toString(),
|
|
139
|
+
map: shared?.map?.toString(),
|
|
140
|
+
},
|
|
141
|
+
{ id: undefined, css: output.css, map: JSON.stringify(cssMap) },
|
|
252
142
|
];
|
|
253
143
|
const requests = [];
|
|
254
144
|
await Fs.mkdir(directory, { recursive: true });
|
|
255
|
-
|
|
145
|
+
try {
|
|
146
|
+
await Fs.writeFile(Path.join(directory, 'package.json'), JSON.stringify({ sideEffects: true, type: 'module' }), { flag: 'wx' });
|
|
147
|
+
}
|
|
148
|
+
catch (error) {
|
|
149
|
+
if (error.code !== 'EEXIST')
|
|
150
|
+
throw error;
|
|
151
|
+
}
|
|
152
|
+
for (const [index, stylesheet] of styles.entries()) {
|
|
256
153
|
if (!stylesheet.css)
|
|
257
154
|
continue;
|
|
258
155
|
const css = stylesheet.css +
|
|
259
156
|
(stylesheet.map
|
|
260
157
|
? `\n/*# sourceMappingURL=data:application/json;base64,${Buffer.from(stylesheet.map).toString('base64')} */`
|
|
261
158
|
: '');
|
|
262
|
-
const hash = Crypto.createHash('sha256')
|
|
159
|
+
const hash = Crypto.createHash('sha256')
|
|
160
|
+
.update(options.development &&
|
|
161
|
+
!(index === (graph[Stylesheets.packed]?.length ?? 0) &&
|
|
162
|
+
graph.sharedCssMap?.sources.every((name) => name === 'zyzz/reset.css'))
|
|
163
|
+
? (stylesheet.id ??
|
|
164
|
+
JSON.stringify([context.resourcePath, index, graph.dependencies]))
|
|
165
|
+
: css)
|
|
166
|
+
.digest('hex');
|
|
263
167
|
const file = Path.join(directory, `${hash}.css`);
|
|
264
|
-
|
|
265
|
-
await Fs.
|
|
168
|
+
if (options.development) {
|
|
169
|
+
const previous = await Fs.readFile(file, 'utf8').catch((error) => {
|
|
170
|
+
if (error.code !== 'ENOENT')
|
|
171
|
+
throw error;
|
|
172
|
+
return undefined;
|
|
173
|
+
});
|
|
174
|
+
if (previous !== css) {
|
|
175
|
+
const temporary = `${file}.${Crypto.randomUUID()}.tmp`;
|
|
176
|
+
await Fs.writeFile(temporary, css);
|
|
177
|
+
await Fs.rename(temporary, file);
|
|
178
|
+
}
|
|
266
179
|
}
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
180
|
+
else {
|
|
181
|
+
try {
|
|
182
|
+
await Fs.writeFile(file, css, { flag: 'wx' });
|
|
183
|
+
}
|
|
184
|
+
catch (error) {
|
|
185
|
+
if (error.code !== 'EEXIST')
|
|
186
|
+
throw error;
|
|
187
|
+
}
|
|
270
188
|
}
|
|
271
|
-
|
|
189
|
+
let request = file;
|
|
190
|
+
if (options.development) {
|
|
191
|
+
// Server-component CSS needs a client graph edge for Next's native CSS HMR.
|
|
192
|
+
request = `${file}.js`;
|
|
193
|
+
const stylesheet = options.bundler === 'turbopack'
|
|
194
|
+
? `./style.css?zyzz=${hash}`
|
|
195
|
+
: `./${hash}.css`;
|
|
196
|
+
const code = `'use client';import ${JSON.stringify(stylesheet)};`;
|
|
197
|
+
const existing = await Fs.readFile(request, 'utf8').catch((error) => {
|
|
198
|
+
if (error.code !== 'ENOENT')
|
|
199
|
+
throw error;
|
|
200
|
+
return undefined;
|
|
201
|
+
});
|
|
202
|
+
if (existing !== code)
|
|
203
|
+
await Fs.writeFile(request, code);
|
|
204
|
+
}
|
|
205
|
+
else if (options.bundler === 'turbopack') {
|
|
206
|
+
request = Path.join(directory, 'style.css') + `?zyzz=${hash}`;
|
|
207
|
+
}
|
|
208
|
+
const relative = Path.relative(Path.dirname(context.resourcePath), request)
|
|
272
209
|
.split(Path.sep)
|
|
273
210
|
.join('/');
|
|
274
211
|
requests.push(`import ${JSON.stringify(relative.startsWith('../') ? relative : `./${relative}`)};`);
|
|
275
212
|
}
|
|
276
213
|
return { code: `${output.code}\n${requests.join('\n')}`, map };
|
|
277
214
|
}
|
|
278
|
-
/** Whether an installed dependency links back to the directory or one of its ancestors. */
|
|
279
|
-
async function loops(directory) {
|
|
280
|
-
const installed = Path.join(directory, 'node_modules');
|
|
281
|
-
const entries = await Fs.readdir(installed, { withFileTypes: true }).catch(() => []);
|
|
282
|
-
const candidates = (await Promise.all(entries.map(async (entry) => {
|
|
283
|
-
if (!entry.name.startsWith('@'))
|
|
284
|
-
return [Path.join(installed, entry.name)];
|
|
285
|
-
const scoped = Path.join(installed, entry.name);
|
|
286
|
-
return (await Fs.readdir(scoped).catch(() => [])).map((name) => Path.join(scoped, name));
|
|
287
|
-
}))).flat();
|
|
288
|
-
for (const candidate of candidates) {
|
|
289
|
-
const stat = await Fs.lstat(candidate).catch(() => undefined);
|
|
290
|
-
if (!stat?.isSymbolicLink())
|
|
291
|
-
continue;
|
|
292
|
-
const target = await Fs.realpath(candidate).catch(() => undefined);
|
|
293
|
-
if (target === undefined)
|
|
294
|
-
continue;
|
|
295
|
-
const relative = Path.relative(target, directory);
|
|
296
|
-
if (!relative.startsWith('..') && !Path.isAbsolute(relative))
|
|
297
|
-
return true;
|
|
298
|
-
}
|
|
299
|
-
return false;
|
|
300
|
-
}
|
|
301
215
|
//# sourceMappingURL=loader.js.map
|
package/dist/next/loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/next/loader.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,MAAM,MAAM,YAAY,CAAA;AACpC,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,iCAAiC,CAAA;AAC1D,OAAO,KAAK,QAAQ,MAAM,kCAAkC,CAAA;AAsB5D,4DAA4D;AAC5D,MAAM,CAAC,OAAO,UAAU,MAAM,CAAgB,MAAc;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;IAC7B,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CACxB,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,EACnD,CAAC,KAAc,EAAE,EAAE,CACjB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CACtE,CAAA;AACH,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,OAAgB,EAAE,MAAc;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAA;IACpC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IACrD,MAAM,OAAO,GAA2B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC3D,MAAM,OAAO,GAAkD,MAAM,CAAC,MAAM,CAC1E,IAAI,CACL,CAAA;IACD,MAAM,SAAS,GAA2B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACtC,MAAM,EAAE,GAAG,CAAC,IAAY,EAAE,EAAE,CAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;IAC9D,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAChC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;QAC5B,CAAC,kDAAkD,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9D,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;aACvB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;aACf,IAAI,CACH,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CACnE,CAAA;IAEL,kFAAkF;IAClF,IACE,gDAAgD,CAAC,IAAI,CACnD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACpE;QAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,CAAA;IAEzC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC;QAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,CAAA;IAEzC,KAAK,UAAU,KAAK,CAAC,IAAY,EAAE,IAAa;QAC9C,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QACrB,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC;YAAE,OAAM;QAExC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;QACzD,MAAM,KAAK,GAAkC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAChE,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAE,EAAE;YACpD,UAAU,EAAE,QAAQ;SACrB,CAAC,CAAA;QAEF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACvC,IACE,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB;gBAChC,IAAI,CAAC,IAAI,KAAK,wBAAwB;gBACtC,IAAI,CAAC,IAAI,KAAK,sBAAsB,CAAC;gBACvC,CAAC,IAAI,CAAC,MAAM;gBAEZ,SAAQ;YACV,IACE,IAAI,CAAC,IAAI,KAAK,mBAAmB;gBAC/B,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,MAAM;gBAC5B,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,MAAM;gBAE9B,SAAQ;YAEV,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAA;YACnC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAA;YACvB,4EAA4E;YAC5E,IAAI,SAAS,KAAK,kBAAkB;gBAAE,SAAQ;YAC9C,IACE,SAAS,KAAK,MAAM;gBACpB,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,SAAS,KAAK,cAAc,CAAC;gBAC/D,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;gBAE7B,SAAQ;YAEV,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAChC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;gBACjB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACtD,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACtC,CAAA;YACH,CAAC,CACF,CAAA;YACD,IAAI,CAAC,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAAE,SAAQ;YAC5D,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAC/B,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAA;gBACrB,SAAQ;YACV,CAAC;YAED,MAAM,OAAO,GAAG,GAAG,QAAQ,YAAY,CAAA;YACvC,IAAI,CAAC;gBACH,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;gBACxD,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;gBAC9B,KAAK,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAA;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;oBAAE,MAAM,KAAK,CAAA;YACrE,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,SAAiB;QACvC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAElE,2EAA2E;QAC3E,yEAAyE;QACzE,2EAA2E;QAC3E,wCAAwC;QACxC,IACE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC;YACnD,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;YAEzB,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;QAEzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IACE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBACzB;oBACE,cAAc;oBACd,MAAM;oBACN,OAAO;oBACP,UAAU;oBACV,MAAM;oBACN,OAAO;oBACP,WAAW;iBACZ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBAErB,SAAQ;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC5C,IAAI,IAAI,CAAC,WAAW,EAAE;gBAAE,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAA;iBACvC,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC;gBAAE,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;QAAE,MAAM,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;IACxE,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAA;IACpB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAA;IAChC,KAAK,UAAU,YAAY,CAAC,IAAY;QACtC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAM;QAC5B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAEhB,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAE,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,CAAA;QACjE,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC3C,IAAI,KAAK,GAAG,IAAI,CAAA;YAChB,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;gBACjD,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAC9B,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;oBACjB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACvD,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACtC,CAAA;gBACH,CAAC,CACF,CAAA;gBACD,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;oBACrC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;gBAEpE,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;gBACtD,KAAK,CAAC,SAAS,CAAC,GAAG,MAAM,CAAA;gBACzB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;oBACtC,MAAM,OAAO,GAAG,GAAG,MAAM,YAAY,CAAA;oBACrC,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;oBACtD,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;gBAChC,CAAC;gBACD,MAAM,YAAY,CAAC,MAAM,CAAC,CAAA;gBAC1B,KAAK,GAAG,MAAM,CAAA;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,MAAM,YAAY,CAAC,IAAI,CAAC,CAAA;IAEnE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;QAC1B,SAAS;QACT,OAAO;QACP,OAAO;QACP,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;KAChD,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;IAEtD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,KAAK,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAChD,KAAK,CAAC,YAAY,IAAI,EAAE,CACzB,EAAE,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,CAAA;QACpC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAC5B,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;YACvB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAC5B,CAAA;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC,WAAW,CAAC,CAAA;QACvD,IAAI,KAAK,GAAG,IAAI,CAAA;QAChB,IAAI,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;YAC9B,SAAS,CAAC;gBACR,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAA;oBACjD,MAAK;gBACP,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;wBAAE,MAAM,KAAK,CAAA;oBACnE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAClC,IAAI,MAAM,KAAK,KAAK;wBAClB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;oBAClE,KAAK,GAAG,MAAM,CAAA;gBAChB,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAA;QAC9D,IACE,CAAC,QAAQ;YACT,QAAQ,KAAK,IAAI;YACjB,QAAQ,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;YACpC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAEzB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAE3D,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QAC3B,MAAM,CAAC,GAAG,CACR,WAAW,EACX,IAAI,CAAC,QAAQ,CACX,OAAO,CAAC,OAAO,KAAK,WAAW;YAC7B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;YACpC,CAAC,CAAC,SAAS,EACb,IAAI,CACL;aACE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;aACf,GAAG,CAAC,kBAAkB,CAAC;aACvB,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CACxC,CAAA;IACH,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS;QAC5B,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAClC,QAAQ,EAAE,YAAY;YACtB,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC;YAClD,SAAS,EAAE,IAAI;YACf,OAAO,EAAE;gBACP,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CACX,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;oBACjB,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE,EAAE;oBACvC,CAAC,CAAC,SAAS;aAChB;SACF,CAAC;QACJ,CAAC,CAAC,SAAS,CAAA;IACb,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;QAC3B,OAAO;YACL,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE;YACnC,GAAG,EAAE,MAAM,EAAE,GAAG;gBACd,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAY;gBAC/C,CAAC,CAAC,SAAS;SACd,CAAA;IACH,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACnE,sFAAsF;IACtF,MAAM,OAAO,GAAG,CAAC,KAAiC,EAAE,EAAE,CACpD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACjB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACpE,CAAA;IACH,MAAM,GAAG,GAAG;QACV,GAAG,MAAM,CAAC,GAAG;QACb,IAAI,EAAE,OAAO,CAAC,YAAY;QAC1B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;KACrC,CAAA;IACD,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAA;IAC5E,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;IAEtE,IAAI,OAAO,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAClC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CACnC;aACE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;aACf,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CACvD,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,EAC1B,KAAK,EAAE,KAA4B,EAAE,EAAE;YACrC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAA;YACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CACzC,CAAC,EACD,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAC3C,CAAA;YACD,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACzB,OAAO,QAAQ,CAAA;QACjB,CAAC,CACF,CAAA;QACD,MAAM,QAAQ,GAAG;YACf,GAAG,CAAC,KAAK,CAAC,SAAS;gBACjB,CAAC,CAAC;oBACE,UAAU,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC,GAAG;iBAC3F;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,GAAG;gBACZ,CAAC,CAAC;oBACE,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG;iBACvE;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAA;QACD,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAA;IAChE,CAAC;IACD,MAAM,MAAM,GAAG;QACb,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;QAC9D,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;KACjD,CAAA;IACD,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,GAAG;YAAE,SAAQ;QAC7B,MAAM,GAAG,GACP,UAAU,CAAC,GAAG;YACd,CAAC,UAAU,CAAC,GAAG;gBACb,CAAC,CAAC,uDAAuD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK;gBAC5G,CAAC,CAAC,EAAE,CAAC,CAAA;QACT,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,MAAM,CAAC,CAAA;QAChD,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAA;QACrE,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;aACrE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;aACf,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,QAAQ,CAAC,IAAI,CACX,UAAU,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC,GAAG,CACrF,CAAA;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAA;AAChE,CAAC;AAED,2FAA2F;AAC3F,KAAK,UAAU,KAAK,CAAC,SAAiB;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CACxE,GAAG,EAAE,CAAC,EAAE,CACT,CAAA;IACD,MAAM,UAAU,GAAG,CACjB,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;QAE3C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAE/C,OAAO,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CACxB,CAAA;IACH,CAAC,CAAC,CACH,CACF,CAAC,IAAI,EAAE,CAAA;IAER,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC7D,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE;YAAE,SAAQ;QAErC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAClE,IAAI,MAAM,KAAK,SAAS;YAAE,SAAQ;QAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QACjD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAA;IAC3E,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/next/loader.ts"],"names":[],"mappings":"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"}
|
package/dist/node/Host.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Host.d.ts","sourceRoot":"","sources":["../../src/node/Host.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,YAAY,MAAM,cAAc,CAAA;AAMjD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"Host.d.ts","sourceRoot":"","sources":["../../src/node/Host.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,YAAY,MAAM,cAAc,CAAA;AAMjD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAA;AAS7C,4EAA4E;AAC5E,MAAM,MAAM,KAAK,GAAG;IAClB,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,qEAAqE;IACrE,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;CAClC,CAAA;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CA63BtE;AAED,oCAAoC;AACpC,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,0DAA0D;IAC1D,KAAK,OAAO,GAAG;QACb,mFAAmF;QACnF,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACvC,8EAA8E;QAC9E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACtC,sFAAsF;QACtF,QAAQ,CAAC,GAAG,CAAC,EACT,KAAK,GACL;YACE,qDAAqD;YACrD,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;YACrC,0GAA0G;YAC1G,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;SAC9D,GACD,SAAS,CAAA;QACb,qGAAqG;QACrG,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACjD,qGAAqG;QACrG,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACpC,uEAAuE;QACvE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,0EAA0E;QAC1E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;QACrB;;;;;WAKG;QACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAAA;KAC7C,CAAA;CACF;AAED,kFAAkF;AAClF,MAAM,MAAM,KAAK,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAA;CAAE,CAAA;AAE5E,wCAAwC;AACxC,MAAM,MAAM,OAAO,GAAG;IACpB,6FAA6F;IAC7F,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACnD,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,CAAA;IACpC,yEAAyE;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACnC,iEAAiE;IACjE,QAAQ,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,IAAI,CAAA;CACjD,CAAA;AAED,oCAAoC;AACpC,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,yDAAyD;IACzD,KAAK,OAAO,GAAG;QACb,+DAA+D;QAC/D,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;KAC1C,CAAA;CACF"}
|
package/dist/node/Host.js
CHANGED
|
@@ -12,6 +12,7 @@ import * as Graph from '../compiler/Graph.js';
|
|
|
12
12
|
import * as AtRules from '../compiler/internal/AtRules.js';
|
|
13
13
|
import * as Catalogs from '../compiler/internal/Catalogs.js';
|
|
14
14
|
import * as Relative from '../compiler/internal/Relative.js';
|
|
15
|
+
import * as Snapshot from './internal/Snapshot.js';
|
|
15
16
|
import * as Syntax from '../compiler/internal/Syntax.js';
|
|
16
17
|
import * as Source from '../compiler/Source.js';
|
|
17
18
|
import * as Transform from '../compiler/Transform.js';
|
|
@@ -90,6 +91,7 @@ export async function create(options) {
|
|
|
90
91
|
})();
|
|
91
92
|
const manifestPath = Path.join(outDir, '.zyzz.json');
|
|
92
93
|
const compiler = Graph.create();
|
|
94
|
+
const snapshot = Snapshot.create();
|
|
93
95
|
const stylesheets = new WeakMap();
|
|
94
96
|
let closed = false;
|
|
95
97
|
let closing;
|
|
@@ -178,7 +180,7 @@ export async function create(options) {
|
|
|
178
180
|
const name = Path.relative(root, input).split(Path.sep).join('/');
|
|
179
181
|
if (['.zyzz-lock', '.zyzz.json'].includes(name.split('/')[0].toLowerCase()))
|
|
180
182
|
throw new Error(`Source path conflicts with host control files: ${name}`);
|
|
181
|
-
sources[name] = await
|
|
183
|
+
sources[name] = await snapshot.read(input);
|
|
182
184
|
}
|
|
183
185
|
const modules = Object.fromEntries(Object.entries(sources).map(([name, source]) => [
|
|
184
186
|
`${options.packageId}/${name}`,
|
|
@@ -223,7 +225,7 @@ export async function create(options) {
|
|
|
223
225
|
return true;
|
|
224
226
|
observe(`${file}.zyzz.json`);
|
|
225
227
|
try {
|
|
226
|
-
contracts[file] = await
|
|
228
|
+
contracts[file] = await snapshot.read(`${file}.zyzz.json`);
|
|
227
229
|
}
|
|
228
230
|
catch (error) {
|
|
229
231
|
if (!required &&
|
|
@@ -269,7 +271,7 @@ export async function create(options) {
|
|
|
269
271
|
const moduleId = `${options.packageId}/${name}`;
|
|
270
272
|
const file = Path.join(root, name);
|
|
271
273
|
const resolutions = (imports[moduleId] = Object.create(null));
|
|
272
|
-
for (const node of
|
|
274
|
+
for (const node of snapshot.parse({ moduleId, source }).program.body) {
|
|
273
275
|
if ((node.type !== 'ImportDeclaration' &&
|
|
274
276
|
node.type !== 'ExportNamedDeclaration' &&
|
|
275
277
|
node.type !== 'ExportAllDeclaration') ||
|
|
@@ -328,12 +330,17 @@ export async function create(options) {
|
|
|
328
330
|
}
|
|
329
331
|
}
|
|
330
332
|
const graph = compiler.compile({
|
|
333
|
+
[Syntax.cache]: snapshot.programs(modules),
|
|
331
334
|
compiler: options.compiler,
|
|
332
335
|
native,
|
|
333
336
|
modules,
|
|
334
337
|
contracts,
|
|
335
338
|
imports,
|
|
336
339
|
});
|
|
340
|
+
snapshot.retain(new Set([
|
|
341
|
+
...inputs,
|
|
342
|
+
...Object.keys(contracts).map((file) => `${file}.zyzz.json`),
|
|
343
|
+
]), modules);
|
|
337
344
|
const artifactNames = [
|
|
338
345
|
'zyzz.css',
|
|
339
346
|
'zyzz.css.map',
|
|
@@ -620,6 +627,7 @@ export async function create(options) {
|
|
|
620
627
|
dependencies.clear();
|
|
621
628
|
closing = (async () => {
|
|
622
629
|
await tail;
|
|
630
|
+
snapshot.clear();
|
|
623
631
|
await lock.close();
|
|
624
632
|
await Fs.rm(lockPath);
|
|
625
633
|
})();
|