@10up/build 1.0.0-alpha.1 → 1.0.0-alpha.10
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 +163 -4
- package/dist/build.js +2 -2
- package/dist/build.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +54 -12
- package/dist/cli.js.map +1 -1
- package/dist/plugins/block-json.d.ts.map +1 -1
- package/dist/plugins/block-json.js +6 -5
- package/dist/plugins/block-json.js.map +1 -1
- package/dist/plugins/wp-dependency-extraction.d.ts +9 -1
- package/dist/plugins/wp-dependency-extraction.d.ts.map +1 -1
- package/dist/plugins/wp-dependency-extraction.js +4 -5
- package/dist/plugins/wp-dependency-extraction.js.map +1 -1
- package/dist/types.d.ts +11 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/externals.d.ts +13 -0
- package/dist/utils/externals.d.ts.map +1 -1
- package/dist/utils/externals.js +77 -8
- package/dist/utils/externals.js.map +1 -1
- package/dist/watch.js +1 -1
- package/dist/watch.js.map +1 -1
- package/dist/wp-deps.d.ts +48 -0
- package/dist/wp-deps.d.ts.map +1 -0
- package/dist/wp-deps.js +481 -0
- package/dist/wp-deps.js.map +1 -0
- package/package.json +2 -2
package/dist/wp-deps.js
ADDED
|
@@ -0,0 +1,481 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependency management utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides commands to sync and update @wordpress/* dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { execSync } from 'child_process';
|
|
7
|
+
import { readFileSync, writeFileSync, existsSync } from 'fs';
|
|
8
|
+
import { join, dirname } from 'path';
|
|
9
|
+
import pc from 'picocolors';
|
|
10
|
+
import fg from 'fast-glob';
|
|
11
|
+
import { WP_SCRIPTS_CACHE_FILE } from './utils/externals.js';
|
|
12
|
+
const WP_VERSION_API = 'https://api.wordpress.org/core/version-check/1.7/';
|
|
13
|
+
/**
|
|
14
|
+
* Fetch the latest WordPress version from the API
|
|
15
|
+
* and convert it to an npm tag (e.g., "6.9.3" -> "wp-6.9")
|
|
16
|
+
*/
|
|
17
|
+
async function getLatestWpTag() {
|
|
18
|
+
try {
|
|
19
|
+
const response = await fetch(WP_VERSION_API);
|
|
20
|
+
if (!response.ok) {
|
|
21
|
+
throw new Error(`HTTP ${response.status}`);
|
|
22
|
+
}
|
|
23
|
+
const data = (await response.json());
|
|
24
|
+
// Get the first offer which is the latest version
|
|
25
|
+
const latestVersion = data.offers?.[0]?.version;
|
|
26
|
+
if (!latestVersion) {
|
|
27
|
+
throw new Error('No version found in API response');
|
|
28
|
+
}
|
|
29
|
+
// Convert version to tag: "6.9.3" -> "wp-6.9" (only major.minor)
|
|
30
|
+
const [major, minor] = latestVersion.split('.');
|
|
31
|
+
return `wp-${major}.${minor}`;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
console.warn(pc.yellow(`\nWarning: Could not fetch latest WordPress version from API.`));
|
|
35
|
+
console.warn(pc.dim(`Using fallback: wp-6.8\n`));
|
|
36
|
+
return 'wp-6.8';
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Known @wordpress packages that are available on npm
|
|
41
|
+
* This list includes packages commonly used in WordPress block development
|
|
42
|
+
*/
|
|
43
|
+
const KNOWN_WP_PACKAGES = new Set([
|
|
44
|
+
'@wordpress/a11y',
|
|
45
|
+
'@wordpress/annotations',
|
|
46
|
+
'@wordpress/api-fetch',
|
|
47
|
+
'@wordpress/autop',
|
|
48
|
+
'@wordpress/blob',
|
|
49
|
+
'@wordpress/block-directory',
|
|
50
|
+
'@wordpress/block-editor',
|
|
51
|
+
'@wordpress/block-library',
|
|
52
|
+
'@wordpress/block-serialization-default-parser',
|
|
53
|
+
'@wordpress/blocks',
|
|
54
|
+
'@wordpress/commands',
|
|
55
|
+
'@wordpress/components',
|
|
56
|
+
'@wordpress/compose',
|
|
57
|
+
'@wordpress/core-commands',
|
|
58
|
+
'@wordpress/core-data',
|
|
59
|
+
'@wordpress/data',
|
|
60
|
+
'@wordpress/data-controls',
|
|
61
|
+
'@wordpress/dataviews',
|
|
62
|
+
'@wordpress/date',
|
|
63
|
+
'@wordpress/deprecated',
|
|
64
|
+
'@wordpress/dom',
|
|
65
|
+
'@wordpress/dom-ready',
|
|
66
|
+
'@wordpress/edit-post',
|
|
67
|
+
'@wordpress/edit-site',
|
|
68
|
+
'@wordpress/edit-widgets',
|
|
69
|
+
'@wordpress/editor',
|
|
70
|
+
'@wordpress/element',
|
|
71
|
+
'@wordpress/escape-html',
|
|
72
|
+
'@wordpress/format-library',
|
|
73
|
+
'@wordpress/hooks',
|
|
74
|
+
'@wordpress/html-entities',
|
|
75
|
+
'@wordpress/i18n',
|
|
76
|
+
'@wordpress/icons',
|
|
77
|
+
'@wordpress/interactivity',
|
|
78
|
+
'@wordpress/interactivity-router',
|
|
79
|
+
'@wordpress/interface',
|
|
80
|
+
'@wordpress/is-shallow-equal',
|
|
81
|
+
'@wordpress/keyboard-shortcuts',
|
|
82
|
+
'@wordpress/keycodes',
|
|
83
|
+
'@wordpress/list-reusable-blocks',
|
|
84
|
+
'@wordpress/media-utils',
|
|
85
|
+
'@wordpress/notices',
|
|
86
|
+
'@wordpress/nux',
|
|
87
|
+
'@wordpress/patterns',
|
|
88
|
+
'@wordpress/plugins',
|
|
89
|
+
'@wordpress/preferences',
|
|
90
|
+
'@wordpress/preferences-persistence',
|
|
91
|
+
'@wordpress/primitives',
|
|
92
|
+
'@wordpress/priority-queue',
|
|
93
|
+
'@wordpress/private-apis',
|
|
94
|
+
'@wordpress/redux-routine',
|
|
95
|
+
'@wordpress/reusable-blocks',
|
|
96
|
+
'@wordpress/rich-text',
|
|
97
|
+
'@wordpress/router',
|
|
98
|
+
'@wordpress/server-side-render',
|
|
99
|
+
'@wordpress/shortcode',
|
|
100
|
+
'@wordpress/style-engine',
|
|
101
|
+
'@wordpress/token-list',
|
|
102
|
+
'@wordpress/url',
|
|
103
|
+
'@wordpress/viewport',
|
|
104
|
+
'@wordpress/warning',
|
|
105
|
+
'@wordpress/widgets',
|
|
106
|
+
'@wordpress/wordcount',
|
|
107
|
+
]);
|
|
108
|
+
/**
|
|
109
|
+
* Scan source files for @wordpress/* imports
|
|
110
|
+
*/
|
|
111
|
+
async function scanForWordPressImports(cwd) {
|
|
112
|
+
const imports = new Set();
|
|
113
|
+
// Find all JS/TS source files, excluding node_modules and dist
|
|
114
|
+
const files = await fg(['**/*.{js,jsx,ts,tsx}'], {
|
|
115
|
+
cwd,
|
|
116
|
+
ignore: ['**/node_modules/**', '**/dist/**', '**/build/**', '**/vendor/**'],
|
|
117
|
+
absolute: true,
|
|
118
|
+
});
|
|
119
|
+
// Regex patterns to match imports
|
|
120
|
+
const importPatterns = [
|
|
121
|
+
/import\s+.*?from\s+['"](@wordpress\/[^'"\/]+)/g,
|
|
122
|
+
/import\s*\(\s*['"](@wordpress\/[^'"\/]+)/g,
|
|
123
|
+
/require\s*\(\s*['"](@wordpress\/[^'"\/]+)/g,
|
|
124
|
+
];
|
|
125
|
+
for (const file of files) {
|
|
126
|
+
try {
|
|
127
|
+
const content = readFileSync(file, 'utf-8');
|
|
128
|
+
for (const pattern of importPatterns) {
|
|
129
|
+
let match;
|
|
130
|
+
while ((match = pattern.exec(content)) !== null) {
|
|
131
|
+
const packageName = match[1];
|
|
132
|
+
if (KNOWN_WP_PACKAGES.has(packageName)) {
|
|
133
|
+
imports.add(packageName);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
// Skip files that can't be read
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
return imports;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Read package.json from the current directory
|
|
146
|
+
*/
|
|
147
|
+
function readPackageJson(cwd) {
|
|
148
|
+
const packageJsonPath = join(cwd, 'package.json');
|
|
149
|
+
try {
|
|
150
|
+
return JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
throw new Error(`Could not read package.json at ${packageJsonPath}`);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Get existing @wordpress packages from optionalDependencies
|
|
158
|
+
*/
|
|
159
|
+
function getExistingWpDeps(packageJson) {
|
|
160
|
+
const deps = new Map();
|
|
161
|
+
const optionalDeps = (packageJson.optionalDependencies || {});
|
|
162
|
+
for (const [name, version] of Object.entries(optionalDeps)) {
|
|
163
|
+
if (name.startsWith('@wordpress/')) {
|
|
164
|
+
deps.set(name, version);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
return deps;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Find the monorepo root by looking for package.json with workspaces field
|
|
171
|
+
*/
|
|
172
|
+
function findMonorepoRoot(startDir) {
|
|
173
|
+
let dir = startDir;
|
|
174
|
+
while (dir !== dirname(dir)) {
|
|
175
|
+
const packageJsonPath = join(dir, 'package.json');
|
|
176
|
+
if (existsSync(packageJsonPath)) {
|
|
177
|
+
try {
|
|
178
|
+
const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
|
|
179
|
+
if (packageJson.workspaces) {
|
|
180
|
+
return dir;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
catch {
|
|
184
|
+
// Continue searching
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
dir = dirname(dir);
|
|
188
|
+
}
|
|
189
|
+
return null;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Get workspace directories from monorepo root
|
|
193
|
+
*/
|
|
194
|
+
async function getWorkspaceDirectories(rootDir) {
|
|
195
|
+
const packageJson = readPackageJson(rootDir);
|
|
196
|
+
const workspaces = packageJson.workspaces;
|
|
197
|
+
if (!workspaces) {
|
|
198
|
+
return [];
|
|
199
|
+
}
|
|
200
|
+
// Handle both array format and object format { packages: [...] }
|
|
201
|
+
const patterns = Array.isArray(workspaces) ? workspaces : workspaces.packages || [];
|
|
202
|
+
// Expand glob patterns to find actual workspace directories
|
|
203
|
+
const directories = [];
|
|
204
|
+
for (const pattern of patterns) {
|
|
205
|
+
// Find directories matching the pattern that contain package.json
|
|
206
|
+
const matches = await fg([`${pattern}/package.json`], {
|
|
207
|
+
cwd: rootDir,
|
|
208
|
+
absolute: true,
|
|
209
|
+
onlyFiles: true,
|
|
210
|
+
});
|
|
211
|
+
for (const match of matches) {
|
|
212
|
+
directories.push(dirname(match));
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return directories;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Scan all workspaces for @wordpress/* imports
|
|
219
|
+
*/
|
|
220
|
+
async function scanWorkspacesForWordPressImports(rootDir, workspaceDirs) {
|
|
221
|
+
const allImports = new Set();
|
|
222
|
+
console.log(`Scanning ${pc.bold(String(workspaceDirs.length))} workspaces for @wordpress/* imports...\n`);
|
|
223
|
+
for (const dir of workspaceDirs) {
|
|
224
|
+
const imports = await scanForWordPressImports(dir);
|
|
225
|
+
if (imports.size > 0) {
|
|
226
|
+
const relativePath = dir.replace(rootDir + '/', '');
|
|
227
|
+
console.log(` ${pc.dim('•')} ${relativePath}: ${imports.size} packages`);
|
|
228
|
+
for (const pkg of imports) {
|
|
229
|
+
allImports.add(pkg);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
return allImports;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Sync @wordpress dependencies
|
|
237
|
+
*
|
|
238
|
+
* Scans source files for @wordpress/* imports and installs them
|
|
239
|
+
* as optional dependencies using the specified WordPress version tag.
|
|
240
|
+
*
|
|
241
|
+
* With --workspace-scan, scans all workspaces in a monorepo and installs
|
|
242
|
+
* dependencies at the root level for better performance.
|
|
243
|
+
*/
|
|
244
|
+
export async function syncWpDeps(options = {}) {
|
|
245
|
+
const cwd = process.cwd();
|
|
246
|
+
const dryRun = options.dryRun || false;
|
|
247
|
+
const workspaceScan = options.workspaceScan || false;
|
|
248
|
+
console.log(pc.cyan('\n10up-build') + ' - Sync WordPress Dependencies\n');
|
|
249
|
+
// Get tag from options or fetch latest from WordPress API
|
|
250
|
+
let tag = options.tag;
|
|
251
|
+
if (!tag) {
|
|
252
|
+
console.log(`Fetching latest WordPress version...`);
|
|
253
|
+
tag = await getLatestWpTag();
|
|
254
|
+
console.log(`Using tag: ${pc.cyan(tag)}\n`);
|
|
255
|
+
}
|
|
256
|
+
let foundImports;
|
|
257
|
+
let installDir;
|
|
258
|
+
if (workspaceScan) {
|
|
259
|
+
// Find monorepo root
|
|
260
|
+
const monorepoRoot = findMonorepoRoot(cwd);
|
|
261
|
+
if (!monorepoRoot) {
|
|
262
|
+
console.error(pc.red('Error: Could not find monorepo root (no package.json with workspaces field).'));
|
|
263
|
+
console.log(pc.dim('Run from within a monorepo or use without --workspace-scan.'));
|
|
264
|
+
process.exit(1);
|
|
265
|
+
}
|
|
266
|
+
console.log(`Monorepo root: ${pc.dim(monorepoRoot)}\n`);
|
|
267
|
+
installDir = monorepoRoot;
|
|
268
|
+
// Get all workspace directories
|
|
269
|
+
const workspaceDirs = await getWorkspaceDirectories(monorepoRoot);
|
|
270
|
+
if (workspaceDirs.length === 0) {
|
|
271
|
+
console.error(pc.red('Error: No workspaces found in monorepo.'));
|
|
272
|
+
process.exit(1);
|
|
273
|
+
}
|
|
274
|
+
// Scan all workspaces
|
|
275
|
+
foundImports = await scanWorkspacesForWordPressImports(monorepoRoot, workspaceDirs);
|
|
276
|
+
}
|
|
277
|
+
else {
|
|
278
|
+
console.log(`Scanning for @wordpress/* imports...`);
|
|
279
|
+
foundImports = await scanForWordPressImports(cwd);
|
|
280
|
+
installDir = cwd;
|
|
281
|
+
}
|
|
282
|
+
if (foundImports.size === 0) {
|
|
283
|
+
console.log(pc.yellow('\nNo @wordpress/* imports found in source files.'));
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
console.log(`\nFound ${pc.bold(String(foundImports.size))} unique @wordpress packages:\n`);
|
|
287
|
+
// Sort for consistent output
|
|
288
|
+
const sortedImports = Array.from(foundImports).sort();
|
|
289
|
+
for (const pkg of sortedImports) {
|
|
290
|
+
console.log(` ${pc.dim('•')} ${pkg}`);
|
|
291
|
+
}
|
|
292
|
+
// Read package.json from install directory
|
|
293
|
+
const packageJson = readPackageJson(installDir);
|
|
294
|
+
const existingDeps = getExistingWpDeps(packageJson);
|
|
295
|
+
// Determine what needs to be installed
|
|
296
|
+
const toInstall = [];
|
|
297
|
+
const alreadyInstalled = [];
|
|
298
|
+
for (const pkg of sortedImports) {
|
|
299
|
+
if (existingDeps.has(pkg)) {
|
|
300
|
+
alreadyInstalled.push(pkg);
|
|
301
|
+
}
|
|
302
|
+
else {
|
|
303
|
+
toInstall.push(pkg);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
if (toInstall.length === 0) {
|
|
307
|
+
console.log(pc.green('\nAll @wordpress packages are already installed as optional dependencies.'));
|
|
308
|
+
return;
|
|
309
|
+
}
|
|
310
|
+
console.log(`\nPackages to install with tag ${pc.cyan(tag)}:`);
|
|
311
|
+
for (const pkg of toInstall) {
|
|
312
|
+
console.log(` ${pc.green('+')} ${pkg}@${tag}`);
|
|
313
|
+
}
|
|
314
|
+
if (alreadyInstalled.length > 0) {
|
|
315
|
+
console.log(`\nAlready installed (${alreadyInstalled.length} packages):`);
|
|
316
|
+
for (const pkg of alreadyInstalled) {
|
|
317
|
+
console.log(` ${pc.dim('•')} ${pkg}@${existingDeps.get(pkg)}`);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
if (workspaceScan) {
|
|
321
|
+
console.log(`\n${pc.dim('Installing at monorepo root:')} ${installDir}`);
|
|
322
|
+
}
|
|
323
|
+
if (dryRun) {
|
|
324
|
+
console.log(pc.yellow('\nDry run - no changes made.'));
|
|
325
|
+
console.log(`Run without --dry-run to install packages.`);
|
|
326
|
+
return;
|
|
327
|
+
}
|
|
328
|
+
// Install packages
|
|
329
|
+
console.log(`\nInstalling ${toInstall.length} packages...`);
|
|
330
|
+
const installCmd = `npm install --save-optional ${toInstall.map(p => `${p}@${tag}`).join(' ')}`;
|
|
331
|
+
try {
|
|
332
|
+
execSync(installCmd, { cwd: installDir, stdio: 'inherit' });
|
|
333
|
+
console.log(pc.green('\n✓ WordPress dependencies synced successfully!'));
|
|
334
|
+
}
|
|
335
|
+
catch (error) {
|
|
336
|
+
throw new Error('Failed to install packages. Check npm output above.');
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
/**
|
|
340
|
+
* Update @wordpress dependencies to a new tag
|
|
341
|
+
*
|
|
342
|
+
* Updates all @wordpress/* packages in optionalDependencies
|
|
343
|
+
* to the specified WordPress version tag.
|
|
344
|
+
*/
|
|
345
|
+
export async function updateWpDeps(options) {
|
|
346
|
+
const cwd = process.cwd();
|
|
347
|
+
const { tag, dryRun = false } = options;
|
|
348
|
+
console.log(pc.cyan('\n10up-build') + ' - Update WordPress Dependencies\n');
|
|
349
|
+
// Read current package.json
|
|
350
|
+
const packageJson = readPackageJson(cwd);
|
|
351
|
+
const existingDeps = getExistingWpDeps(packageJson);
|
|
352
|
+
if (existingDeps.size === 0) {
|
|
353
|
+
console.log(pc.yellow('No @wordpress packages found in optionalDependencies.'));
|
|
354
|
+
console.log(`Run ${pc.cyan('10up-build sync-wp-deps')} first to add WordPress dependencies.`);
|
|
355
|
+
return;
|
|
356
|
+
}
|
|
357
|
+
console.log(`Found ${pc.bold(String(existingDeps.size))} @wordpress packages to update:\n`);
|
|
358
|
+
const sortedDeps = Array.from(existingDeps.entries()).sort((a, b) => a[0].localeCompare(b[0]));
|
|
359
|
+
for (const [pkg, currentVersion] of sortedDeps) {
|
|
360
|
+
console.log(` ${pkg}: ${pc.dim(currentVersion)} → ${pc.green(tag)}`);
|
|
361
|
+
}
|
|
362
|
+
if (dryRun) {
|
|
363
|
+
console.log(pc.yellow('\nDry run - no changes made.'));
|
|
364
|
+
console.log(`Run without --dry-run to update packages.`);
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
// Update packages
|
|
368
|
+
console.log(`\nUpdating to ${pc.cyan(tag)}...`);
|
|
369
|
+
const packages = sortedDeps.map(([pkg]) => `${pkg}@${tag}`);
|
|
370
|
+
const installCmd = `npm install --save-optional ${packages.join(' ')}`;
|
|
371
|
+
try {
|
|
372
|
+
execSync(installCmd, { cwd, stdio: 'inherit' });
|
|
373
|
+
console.log(pc.green('\n✓ WordPress dependencies updated successfully!'));
|
|
374
|
+
}
|
|
375
|
+
catch (error) {
|
|
376
|
+
throw new Error('Failed to update packages. Check npm output above.');
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
/**
|
|
380
|
+
* List current @wordpress dependencies
|
|
381
|
+
*/
|
|
382
|
+
export async function listWpDeps() {
|
|
383
|
+
const cwd = process.cwd();
|
|
384
|
+
console.log(pc.cyan('\n10up-build') + ' - WordPress Dependencies\n');
|
|
385
|
+
// Read current package.json
|
|
386
|
+
const packageJson = readPackageJson(cwd);
|
|
387
|
+
const existingDeps = getExistingWpDeps(packageJson);
|
|
388
|
+
if (existingDeps.size === 0) {
|
|
389
|
+
console.log(pc.yellow('No @wordpress packages found in optionalDependencies.'));
|
|
390
|
+
console.log(`Run ${pc.cyan('10up-build sync-wp-deps')} to add WordPress dependencies.`);
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
393
|
+
console.log(`Installed @wordpress packages (${existingDeps.size}):\n`);
|
|
394
|
+
const sortedDeps = Array.from(existingDeps.entries()).sort((a, b) => a[0].localeCompare(b[0]));
|
|
395
|
+
for (const [pkg, version] of sortedDeps) {
|
|
396
|
+
console.log(` ${pc.dim('•')} ${pkg}@${pc.cyan(version)}`);
|
|
397
|
+
}
|
|
398
|
+
// Also scan for imports and show any missing
|
|
399
|
+
console.log(`\nScanning source files for imports...`);
|
|
400
|
+
const foundImports = await scanForWordPressImports(cwd);
|
|
401
|
+
const missing = Array.from(foundImports).filter(pkg => !existingDeps.has(pkg)).sort();
|
|
402
|
+
if (missing.length > 0) {
|
|
403
|
+
console.log(pc.yellow(`\nMissing packages (${missing.length}):`));
|
|
404
|
+
for (const pkg of missing) {
|
|
405
|
+
console.log(` ${pc.red('!')} ${pkg}`);
|
|
406
|
+
}
|
|
407
|
+
console.log(`\nRun ${pc.cyan('10up-build sync-wp-deps')} to install missing packages.`);
|
|
408
|
+
}
|
|
409
|
+
else {
|
|
410
|
+
console.log(pc.green('\nAll imported @wordpress packages are installed.'));
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* Cache wpScript values from installed @wordpress/* packages
|
|
415
|
+
*
|
|
416
|
+
* Scans all installed @wordpress/* packages in node_modules and caches
|
|
417
|
+
* their wpScript boolean values to a JSON file. This allows CI environments
|
|
418
|
+
* to skip installing optional dependencies while still having accurate
|
|
419
|
+
* wpScript information for the build.
|
|
420
|
+
*
|
|
421
|
+
* The cache file should be committed to the repository so it's available
|
|
422
|
+
* in CI environments that use --omit=optional.
|
|
423
|
+
*/
|
|
424
|
+
export async function cacheWpScripts(options = {}) {
|
|
425
|
+
const cwd = process.cwd();
|
|
426
|
+
const outputPath = options.output || join(cwd, WP_SCRIPTS_CACHE_FILE);
|
|
427
|
+
console.log(pc.cyan('\n10up-build') + ' - Cache WordPress Script Flags\n');
|
|
428
|
+
// Find all installed @wordpress/* packages
|
|
429
|
+
const wpPackagesDir = join(cwd, 'node_modules', '@wordpress');
|
|
430
|
+
if (!existsSync(wpPackagesDir)) {
|
|
431
|
+
console.error(pc.red('Error: No @wordpress packages found in node_modules.'));
|
|
432
|
+
console.log(pc.dim('Install @wordpress/* packages first, then run this command.'));
|
|
433
|
+
process.exit(1);
|
|
434
|
+
}
|
|
435
|
+
// Get all package directories
|
|
436
|
+
const packageDirs = await fg(['*'], {
|
|
437
|
+
cwd: wpPackagesDir,
|
|
438
|
+
onlyDirectories: true,
|
|
439
|
+
absolute: false,
|
|
440
|
+
});
|
|
441
|
+
if (packageDirs.length === 0) {
|
|
442
|
+
console.error(pc.red('Error: No @wordpress packages found in node_modules/@wordpress.'));
|
|
443
|
+
process.exit(1);
|
|
444
|
+
}
|
|
445
|
+
console.log(`Found ${pc.bold(String(packageDirs.length))} @wordpress packages in node_modules.\n`);
|
|
446
|
+
const cache = {};
|
|
447
|
+
let withWpScript = 0;
|
|
448
|
+
let withoutWpScript = 0;
|
|
449
|
+
for (const dir of packageDirs.sort()) {
|
|
450
|
+
const packageName = `@wordpress/${dir}`;
|
|
451
|
+
const pkgJsonPath = join(wpPackagesDir, dir, 'package.json');
|
|
452
|
+
try {
|
|
453
|
+
const pkgJson = JSON.parse(readFileSync(pkgJsonPath, 'utf8'));
|
|
454
|
+
const hasWpScript = pkgJson.wpScript === true;
|
|
455
|
+
cache[packageName] = hasWpScript;
|
|
456
|
+
if (hasWpScript) {
|
|
457
|
+
withWpScript++;
|
|
458
|
+
console.log(` ${pc.green('✓')} ${packageName} ${pc.dim('(wpScript: true)')}`);
|
|
459
|
+
}
|
|
460
|
+
else {
|
|
461
|
+
withoutWpScript++;
|
|
462
|
+
console.log(` ${pc.dim('•')} ${packageName}`);
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
catch {
|
|
466
|
+
console.log(` ${pc.yellow('?')} ${packageName} ${pc.dim('(could not read package.json)')}`);
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
// Write cache file
|
|
470
|
+
const cacheData = {
|
|
471
|
+
_comment: 'Auto-generated by 10up-build cache-wp-scripts. Do not edit manually.',
|
|
472
|
+
packages: cache,
|
|
473
|
+
};
|
|
474
|
+
writeFileSync(outputPath, JSON.stringify(cacheData, null, 2) + '\n');
|
|
475
|
+
console.log(`\n${pc.bold('Summary:')}`);
|
|
476
|
+
console.log(` ${pc.green(String(withWpScript))} packages with wpScript: true`);
|
|
477
|
+
console.log(` ${pc.dim(String(withoutWpScript))} packages without wpScript`);
|
|
478
|
+
console.log(`\n${pc.green('✓')} Cache written to ${pc.cyan(outputPath)}`);
|
|
479
|
+
console.log(pc.dim('\nCommit this file to your repository so CI can use it with --omit=optional.'));
|
|
480
|
+
}
|
|
481
|
+
//# sourceMappingURL=wp-deps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wp-deps.js","sourceRoot":"","sources":["../src/wp-deps.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@10up/build",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.10",
|
|
4
4
|
"description": "esbuild-powered WordPress build tool - fast builds for WordPress block development",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"wordpress",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"main": "./dist/index.js",
|
|
29
29
|
"types": "./dist/index.d.ts",
|
|
30
30
|
"bin": {
|
|
31
|
-
"10up-build": "
|
|
31
|
+
"10up-build": "bin/10up-build.js"
|
|
32
32
|
},
|
|
33
33
|
"files": [
|
|
34
34
|
"bin",
|