@10up/build 1.0.0-alpha.11 → 1.0.0-alpha.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wp-dependency-extraction.d.ts","sourceRoot":"","sources":["../../src/plugins/wp-dependency-extraction.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EAAE,MAAM,EAA+C,MAAM,SAAS,CAAC;AAGnF,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAwF/D;;GAEG;AACH,UAAU,aAAa;IACtB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"wp-dependency-extraction.d.ts","sourceRoot":"","sources":["../../src/plugins/wp-dependency-extraction.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EAAE,MAAM,EAA+C,MAAM,SAAS,CAAC;AAGnF,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAwF/D;;GAEG;AACH,UAAU,aAAa;IACtB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,CA2PrG;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAE7D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
|
|
@@ -92,64 +92,24 @@ function normalizePath(p) {
|
|
|
92
92
|
*/
|
|
93
93
|
export function wpDependencyExtractionPlugin(config, options = {}) {
|
|
94
94
|
const { isModule = false } = options;
|
|
95
|
-
//
|
|
96
|
-
|
|
97
|
-
const
|
|
95
|
+
// Track dependencies per importer file (not per entry)
|
|
96
|
+
// This allows us to collect transitive dependencies from bundled packages
|
|
97
|
+
const fileDependencies = new Map();
|
|
98
98
|
/**
|
|
99
|
-
*
|
|
100
|
-
*/
|
|
101
|
-
function getEntryForImporter(importer) {
|
|
102
|
-
const normalizedImporter = normalizePath(importer);
|
|
103
|
-
// If importer is itself an entry, return it
|
|
104
|
-
if (entryDependencies.has(normalizedImporter)) {
|
|
105
|
-
return normalizedImporter;
|
|
106
|
-
}
|
|
107
|
-
// Otherwise, look up the entry point
|
|
108
|
-
return importerToEntry.get(normalizedImporter);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Track a dependency for an entry point
|
|
99
|
+
* Track a dependency for a specific file
|
|
112
100
|
*/
|
|
113
101
|
function trackDependency(importer, handle) {
|
|
114
|
-
const entry = getEntryForImporter(importer);
|
|
115
|
-
if (entry) {
|
|
116
|
-
const deps = entryDependencies.get(entry);
|
|
117
|
-
if (deps) {
|
|
118
|
-
deps.add(handle);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Register an importer-to-entry mapping
|
|
124
|
-
*/
|
|
125
|
-
function registerImporter(importer, entry) {
|
|
126
102
|
const normalizedImporter = normalizePath(importer);
|
|
127
|
-
|
|
128
|
-
if (
|
|
129
|
-
|
|
103
|
+
let deps = fileDependencies.get(normalizedImporter);
|
|
104
|
+
if (!deps) {
|
|
105
|
+
deps = new Set();
|
|
106
|
+
fileDependencies.set(normalizedImporter, deps);
|
|
130
107
|
}
|
|
108
|
+
deps.add(handle);
|
|
131
109
|
}
|
|
132
110
|
return {
|
|
133
111
|
name: 'wp-dependency-extraction',
|
|
134
112
|
setup(build) {
|
|
135
|
-
// Get entry points to initialize tracking
|
|
136
|
-
const entryPoints = build.initialOptions.entryPoints;
|
|
137
|
-
if (entryPoints) {
|
|
138
|
-
if (Array.isArray(entryPoints)) {
|
|
139
|
-
for (const entry of entryPoints) {
|
|
140
|
-
if (typeof entry === 'string') {
|
|
141
|
-
// Resolve to absolute path for consistent matching later
|
|
142
|
-
entryDependencies.set(normalizePath(resolve(entry)), new Set());
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
else if (typeof entryPoints === 'object') {
|
|
147
|
-
for (const entry of Object.values(entryPoints)) {
|
|
148
|
-
// Resolve to absolute path for consistent matching later
|
|
149
|
-
entryDependencies.set(normalizePath(resolve(entry)), new Set());
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
113
|
// Handle @wordpress/* imports
|
|
154
114
|
build.onResolve({ filter: /^@wordpress\// }, (args) => {
|
|
155
115
|
const external = resolveExternal(args.path, config);
|
|
@@ -158,14 +118,9 @@ export function wpDependencyExtractionPlugin(config, options = {}) {
|
|
|
158
118
|
if (external._isInstalled === false) {
|
|
159
119
|
warnUninstalledPackage(args.path);
|
|
160
120
|
}
|
|
161
|
-
// Track the dependency
|
|
121
|
+
// Track the dependency for this importer file
|
|
162
122
|
if (args.importer) {
|
|
163
123
|
trackDependency(args.importer, external.handle);
|
|
164
|
-
// Map this importer to its entry
|
|
165
|
-
const entry = getEntryForImporter(args.importer);
|
|
166
|
-
if (entry) {
|
|
167
|
-
registerImporter(args.importer, entry);
|
|
168
|
-
}
|
|
169
124
|
}
|
|
170
125
|
// For ES modules, use native external (import statements work)
|
|
171
126
|
// For IIFE, use virtual module to access global (avoid require())
|
|
@@ -264,21 +219,9 @@ export function wpDependencyExtractionPlugin(config, options = {}) {
|
|
|
264
219
|
});
|
|
265
220
|
}
|
|
266
221
|
}
|
|
267
|
-
// Track imports between modules to propagate entry point info
|
|
268
|
-
build.onResolve({ filter: /.*/ }, (args) => {
|
|
269
|
-
if (args.importer && args.kind !== 'entry-point') {
|
|
270
|
-
const entry = getEntryForImporter(args.importer);
|
|
271
|
-
if (entry) {
|
|
272
|
-
// Try to resolve the imported path
|
|
273
|
-
const resolvedPath = args.resolveDir
|
|
274
|
-
? resolve(args.resolveDir, args.path)
|
|
275
|
-
: args.path;
|
|
276
|
-
registerImporter(resolvedPath, entry);
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
return undefined;
|
|
280
|
-
});
|
|
281
222
|
// Generate .asset.php files at the end of build
|
|
223
|
+
// Uses metafile to collect ALL dependencies from ALL input files in each bundle
|
|
224
|
+
// This properly handles transitive dependencies from bundled packages
|
|
282
225
|
build.onEnd(async (result) => {
|
|
283
226
|
if (result.errors.length > 0) {
|
|
284
227
|
return undefined;
|
|
@@ -287,27 +230,28 @@ export function wpDependencyExtractionPlugin(config, options = {}) {
|
|
|
287
230
|
if (!metafile) {
|
|
288
231
|
return undefined;
|
|
289
232
|
}
|
|
290
|
-
//
|
|
291
|
-
const entryToOutput = new Map();
|
|
233
|
+
// Process each output that has an entry point
|
|
292
234
|
for (const [outputPath, outputMeta] of Object.entries(metafile.outputs)) {
|
|
293
235
|
if (!outputMeta.entryPoint) {
|
|
294
236
|
continue;
|
|
295
237
|
}
|
|
296
|
-
// Normalize the entry point path for matching
|
|
297
|
-
const entryPath = normalizePath(resolve(outputMeta.entryPoint));
|
|
298
238
|
// Skip chunks
|
|
299
239
|
if (outputPath.includes('/chunks/')) {
|
|
300
240
|
continue;
|
|
301
241
|
}
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
242
|
+
// Collect ALL dependencies from ALL input files in this bundle
|
|
243
|
+
// This catches transitive deps from bundled packages like @10up/block-components
|
|
244
|
+
const allDeps = new Set();
|
|
245
|
+
for (const inputPath of Object.keys(outputMeta.inputs)) {
|
|
246
|
+
// Normalize input path to match our tracking
|
|
247
|
+
const normalizedInput = normalizePath(resolve(inputPath));
|
|
248
|
+
const deps = fileDependencies.get(normalizedInput);
|
|
249
|
+
if (deps) {
|
|
250
|
+
for (const dep of deps) {
|
|
251
|
+
allDeps.add(dep);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
309
254
|
}
|
|
310
|
-
const { path: outputPath } = outputInfo;
|
|
311
255
|
// Read output file content for version hash
|
|
312
256
|
let content = '';
|
|
313
257
|
try {
|
|
@@ -319,7 +263,7 @@ export function wpDependencyExtractionPlugin(config, options = {}) {
|
|
|
319
263
|
const version = getContentHash(content);
|
|
320
264
|
// Generate .asset.php with appropriate format
|
|
321
265
|
const assetPhpPath = outputPath.replace(/\.(m?js)$/, '.asset.php');
|
|
322
|
-
const sortedDeps = Array.from(
|
|
266
|
+
const sortedDeps = Array.from(allDeps).sort();
|
|
323
267
|
let assetPhpContent;
|
|
324
268
|
if (isModule) {
|
|
325
269
|
// For ES modules, convert handles back to package names
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wp-dependency-extraction.js","sourceRoot":"","sources":["../../src/plugins/wp-dependency-extraction.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD;;GAEG;AACH,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;AAEzC;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAAC,WAAmB;IAClD,IAAI,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QACrC,OAAO;IACR,CAAC;IACD,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAEhC,2BAA2B;IAC3B,IAAI,cAAc,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CACV,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;YACpB,EAAE,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAC9D,CAAC;QACF,OAAO,CAAC,GAAG,CACV,EAAE,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAC1F,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC,CAAC;IAC5F,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,IAAc;IACvC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,SAAS,KAAK,GAAG,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,YAAsB,EAAE,OAAe;IAChE,OAAO,wCAAwC,gBAAgB,CAAC,YAAY,CAAC,mBAAmB,OAAO;CACvG,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,YAAsB,EAAE,OAAe;IACtE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,+DAA+D,OAAO;CAC9E,CAAC;IACD,CAAC;IACD,yDAAyD;IACzD,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,OAAO,8CAA8C,KAAK,oBAAoB,OAAO;CACrF,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,MAAc;IAC1C,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,cAAc,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACxC,CAAC;IACD,0DAA0D;IAC1D,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,CAAS;IAC/B,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACvC,CAAC;AAUD;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAmB,EAAE,UAAyB,EAAE;IAC5F,MAAM,EAAE,QAAQ,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"wp-dependency-extraction.js","sourceRoot":"","sources":["../../src/plugins/wp-dependency-extraction.ts"],"names":[],"mappings":"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"}
|