@pie-element/cli 0.1.1
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/.compatibility/report.json +2491 -0
- package/.turbo/turbo-build.log +1 -0
- package/CHANGELOG.md +8 -0
- package/README.md +240 -0
- package/REFACTORING.md +131 -0
- package/bin/dev.js +5 -0
- package/bin/run.js +5 -0
- package/dist/commands/dev/demo/index.d.ts +33 -0
- package/dist/commands/dev/demo/index.d.ts.map +1 -0
- package/dist/commands/dev/demo/index.js +274 -0
- package/dist/commands/dev/demo/index.js.map +1 -0
- package/dist/commands/dev/test-bundler.d.ts +18 -0
- package/dist/commands/dev/test-bundler.d.ts.map +1 -0
- package/dist/commands/dev/test-bundler.js +284 -0
- package/dist/commands/dev/test-bundler.js.map +1 -0
- package/dist/commands/mathquill/migrate.d.ts +20 -0
- package/dist/commands/mathquill/migrate.d.ts.map +1 -0
- package/dist/commands/mathquill/migrate.js +240 -0
- package/dist/commands/mathquill/migrate.js.map +1 -0
- package/dist/commands/mathquill/status.d.ts +20 -0
- package/dist/commands/mathquill/status.d.ts.map +1 -0
- package/dist/commands/mathquill/status.js +231 -0
- package/dist/commands/mathquill/status.js.map +1 -0
- package/dist/commands/packages/create-controllers.d.ts +13 -0
- package/dist/commands/packages/create-controllers.d.ts.map +1 -0
- package/dist/commands/packages/create-controllers.js +103 -0
- package/dist/commands/packages/create-controllers.js.map +1 -0
- package/dist/commands/packages/create-lib-react.d.ts +17 -0
- package/dist/commands/packages/create-lib-react.d.ts.map +1 -0
- package/dist/commands/packages/create-lib-react.js +228 -0
- package/dist/commands/packages/create-lib-react.js.map +1 -0
- package/dist/commands/packages/create-react-elements.d.ts +16 -0
- package/dist/commands/packages/create-react-elements.d.ts.map +1 -0
- package/dist/commands/packages/create-react-elements.js +259 -0
- package/dist/commands/packages/create-react-elements.js.map +1 -0
- package/dist/commands/packages/enable-publishing.d.ts +11 -0
- package/dist/commands/packages/enable-publishing.d.ts.map +1 -0
- package/dist/commands/packages/enable-publishing.js +117 -0
- package/dist/commands/packages/enable-publishing.js.map +1 -0
- package/dist/commands/packages/init-synced-elements.d.ts +16 -0
- package/dist/commands/packages/init-synced-elements.d.ts.map +1 -0
- package/dist/commands/packages/init-synced-elements.js +204 -0
- package/dist/commands/packages/init-synced-elements.js.map +1 -0
- package/dist/commands/upstream/analyze-esm.d.ts +59 -0
- package/dist/commands/upstream/analyze-esm.d.ts.map +1 -0
- package/dist/commands/upstream/analyze-esm.js +1481 -0
- package/dist/commands/upstream/analyze-esm.js.map +1 -0
- package/dist/commands/upstream/check.d.ts +15 -0
- package/dist/commands/upstream/check.d.ts.map +1 -0
- package/dist/commands/upstream/check.js +165 -0
- package/dist/commands/upstream/check.js.map +1 -0
- package/dist/commands/upstream/deps.d.ts +15 -0
- package/dist/commands/upstream/deps.d.ts.map +1 -0
- package/dist/commands/upstream/deps.js +174 -0
- package/dist/commands/upstream/deps.js.map +1 -0
- package/dist/commands/upstream/sync-mathquill.d.ts +12 -0
- package/dist/commands/upstream/sync-mathquill.d.ts.map +1 -0
- package/dist/commands/upstream/sync-mathquill.js +97 -0
- package/dist/commands/upstream/sync-mathquill.js.map +1 -0
- package/dist/commands/upstream/sync.d.ts +25 -0
- package/dist/commands/upstream/sync.d.ts.map +1 -0
- package/dist/commands/upstream/sync.js +552 -0
- package/dist/commands/upstream/sync.js.map +1 -0
- package/dist/commands/upstream/track.d.ts +15 -0
- package/dist/commands/upstream/track.d.ts.map +1 -0
- package/dist/commands/upstream/track.js +115 -0
- package/dist/commands/upstream/track.js.map +1 -0
- package/dist/commands/upstream/update.d.ts +15 -0
- package/dist/commands/upstream/update.d.ts.map +1 -0
- package/dist/commands/upstream/update.js +98 -0
- package/dist/commands/upstream/update.js.map +1 -0
- package/dist/commands/verify/controllers.d.ts +12 -0
- package/dist/commands/verify/controllers.d.ts.map +1 -0
- package/dist/commands/verify/controllers.js +138 -0
- package/dist/commands/verify/controllers.js.map +1 -0
- package/dist/commands/verify/react-build.d.ts +13 -0
- package/dist/commands/verify/react-build.d.ts.map +1 -0
- package/dist/commands/verify/react-build.js +135 -0
- package/dist/commands/verify/react-build.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/mathquill/extension-generator.d.ts +9 -0
- package/dist/lib/mathquill/extension-generator.d.ts.map +1 -0
- package/dist/lib/mathquill/extension-generator.js +107 -0
- package/dist/lib/mathquill/extension-generator.js.map +1 -0
- package/dist/lib/mathquill/khan-extractor.d.ts +16 -0
- package/dist/lib/mathquill/khan-extractor.d.ts.map +1 -0
- package/dist/lib/mathquill/khan-extractor.js +148 -0
- package/dist/lib/mathquill/khan-extractor.js.map +1 -0
- package/dist/lib/mathquill/learnosity-extractor.d.ts +15 -0
- package/dist/lib/mathquill/learnosity-extractor.d.ts.map +1 -0
- package/dist/lib/mathquill/learnosity-extractor.js +170 -0
- package/dist/lib/mathquill/learnosity-extractor.js.map +1 -0
- package/dist/lib/mathquill/migration-orchestrator.d.ts +77 -0
- package/dist/lib/mathquill/migration-orchestrator.d.ts.map +1 -0
- package/dist/lib/mathquill/migration-orchestrator.js +391 -0
- package/dist/lib/mathquill/migration-orchestrator.js.map +1 -0
- package/dist/lib/mathquill/package-updater.d.ts +9 -0
- package/dist/lib/mathquill/package-updater.d.ts.map +1 -0
- package/dist/lib/mathquill/package-updater.js +103 -0
- package/dist/lib/mathquill/package-updater.js.map +1 -0
- package/dist/lib/mathquill/pie-extractor.d.ts +14 -0
- package/dist/lib/mathquill/pie-extractor.d.ts.map +1 -0
- package/dist/lib/mathquill/pie-extractor.js +167 -0
- package/dist/lib/mathquill/pie-extractor.js.map +1 -0
- package/dist/lib/upstream/repo-utils.d.ts +9 -0
- package/dist/lib/upstream/repo-utils.d.ts.map +1 -0
- package/dist/lib/upstream/repo-utils.js +10 -0
- package/dist/lib/upstream/repo-utils.js.map +1 -0
- package/dist/lib/upstream/sync-compatibility.d.ts +29 -0
- package/dist/lib/upstream/sync-compatibility.d.ts.map +1 -0
- package/dist/lib/upstream/sync-compatibility.js +70 -0
- package/dist/lib/upstream/sync-compatibility.js.map +1 -0
- package/dist/lib/upstream/sync-constants.d.ts +50 -0
- package/dist/lib/upstream/sync-constants.d.ts.map +1 -0
- package/dist/lib/upstream/sync-constants.js +66 -0
- package/dist/lib/upstream/sync-constants.js.map +1 -0
- package/dist/lib/upstream/sync-controllers-strategy.d.ts +18 -0
- package/dist/lib/upstream/sync-controllers-strategy.d.ts.map +1 -0
- package/dist/lib/upstream/sync-controllers-strategy.js +243 -0
- package/dist/lib/upstream/sync-controllers-strategy.js.map +1 -0
- package/dist/lib/upstream/sync-demo-metadata.d.ts +15 -0
- package/dist/lib/upstream/sync-demo-metadata.d.ts.map +1 -0
- package/dist/lib/upstream/sync-demo-metadata.js +165 -0
- package/dist/lib/upstream/sync-demo-metadata.js.map +1 -0
- package/dist/lib/upstream/sync-dev-exports.d.ts +13 -0
- package/dist/lib/upstream/sync-dev-exports.d.ts.map +1 -0
- package/dist/lib/upstream/sync-dev-exports.js +115 -0
- package/dist/lib/upstream/sync-dev-exports.js.map +1 -0
- package/dist/lib/upstream/sync-externals.d.ts +29 -0
- package/dist/lib/upstream/sync-externals.d.ts.map +1 -0
- package/dist/lib/upstream/sync-externals.js +164 -0
- package/dist/lib/upstream/sync-externals.js.map +1 -0
- package/dist/lib/upstream/sync-filesystem.d.ts +21 -0
- package/dist/lib/upstream/sync-filesystem.d.ts.map +1 -0
- package/dist/lib/upstream/sync-filesystem.js +64 -0
- package/dist/lib/upstream/sync-filesystem.js.map +1 -0
- package/dist/lib/upstream/sync-imports.d.ts +284 -0
- package/dist/lib/upstream/sync-imports.d.ts.map +1 -0
- package/dist/lib/upstream/sync-imports.js +816 -0
- package/dist/lib/upstream/sync-imports.js.map +1 -0
- package/dist/lib/upstream/sync-mathquill.d.ts +19 -0
- package/dist/lib/upstream/sync-mathquill.d.ts.map +1 -0
- package/dist/lib/upstream/sync-mathquill.js +160 -0
- package/dist/lib/upstream/sync-mathquill.js.map +1 -0
- package/dist/lib/upstream/sync-package-json.d.ts +28 -0
- package/dist/lib/upstream/sync-package-json.d.ts.map +1 -0
- package/dist/lib/upstream/sync-package-json.js +66 -0
- package/dist/lib/upstream/sync-package-json.js.map +1 -0
- package/dist/lib/upstream/sync-package-manager.d.ts +50 -0
- package/dist/lib/upstream/sync-package-manager.d.ts.map +1 -0
- package/dist/lib/upstream/sync-package-manager.js +570 -0
- package/dist/lib/upstream/sync-package-manager.js.map +1 -0
- package/dist/lib/upstream/sync-pielib-strategy.d.ts +26 -0
- package/dist/lib/upstream/sync-pielib-strategy.d.ts.map +1 -0
- package/dist/lib/upstream/sync-pielib-strategy.js +345 -0
- package/dist/lib/upstream/sync-pielib-strategy.js.map +1 -0
- package/dist/lib/upstream/sync-react-strategy.d.ts +54 -0
- package/dist/lib/upstream/sync-react-strategy.d.ts.map +1 -0
- package/dist/lib/upstream/sync-react-strategy.js +733 -0
- package/dist/lib/upstream/sync-react-strategy.js.map +1 -0
- package/dist/lib/upstream/sync-strategy.d.ts +49 -0
- package/dist/lib/upstream/sync-strategy.d.ts.map +1 -0
- package/dist/lib/upstream/sync-strategy.js +2 -0
- package/dist/lib/upstream/sync-strategy.js.map +1 -0
- package/dist/lib/upstream/sync-summary.d.ts +20 -0
- package/dist/lib/upstream/sync-summary.d.ts.map +1 -0
- package/dist/lib/upstream/sync-summary.js +157 -0
- package/dist/lib/upstream/sync-summary.js.map +1 -0
- package/dist/lib/upstream/sync-transforms.d.ts +60 -0
- package/dist/lib/upstream/sync-transforms.d.ts.map +1 -0
- package/dist/lib/upstream/sync-transforms.js +97 -0
- package/dist/lib/upstream/sync-transforms.js.map +1 -0
- package/dist/lib/upstream/sync-vite-config.d.ts +13 -0
- package/dist/lib/upstream/sync-vite-config.d.ts.map +1 -0
- package/dist/lib/upstream/sync-vite-config.js +231 -0
- package/dist/lib/upstream/sync-vite-config.js.map +1 -0
- package/dist/utils/compatibility.d.ts +129 -0
- package/dist/utils/compatibility.d.ts.map +1 -0
- package/dist/utils/compatibility.js +44 -0
- package/dist/utils/compatibility.js.map +1 -0
- package/dist/utils/conversion.d.ts +25 -0
- package/dist/utils/conversion.d.ts.map +1 -0
- package/dist/utils/conversion.js +123 -0
- package/dist/utils/conversion.js.map +1 -0
- package/dist/utils/git.d.ts +7 -0
- package/dist/utils/git.d.ts.map +1 -0
- package/dist/utils/git.js +63 -0
- package/dist/utils/git.js.map +1 -0
- package/dist/utils/logger.d.ts +29 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +63 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/package-json.d.ts +12 -0
- package/dist/utils/package-json.d.ts.map +1 -0
- package/dist/utils/package-json.js +29 -0
- package/dist/utils/package-json.js.map +1 -0
- package/package.json +59 -0
- package/packages/cli/bin/dev.js +5 -0
- package/packages/cli/bin/run.js +5 -0
- package/src/commands/dev/demo/index.ts +313 -0
- package/src/commands/dev/test-bundler.ts +345 -0
- package/src/commands/mathquill/migrate.ts +269 -0
- package/src/commands/mathquill/status.ts +267 -0
- package/src/commands/packages/create-controllers.ts +127 -0
- package/src/commands/packages/create-lib-react.ts +279 -0
- package/src/commands/packages/create-react-elements.ts +306 -0
- package/src/commands/packages/enable-publishing.ts +161 -0
- package/src/commands/packages/init-synced-elements.ts +259 -0
- package/src/commands/upstream/README.md +444 -0
- package/src/commands/upstream/analyze-esm.ts +1973 -0
- package/src/commands/upstream/check.ts +228 -0
- package/src/commands/upstream/deps.ts +222 -0
- package/src/commands/upstream/sync-mathquill.ts +108 -0
- package/src/commands/upstream/sync.ts +687 -0
- package/src/commands/upstream/track.ts +145 -0
- package/src/commands/upstream/update.ts +110 -0
- package/src/commands/verify/controllers.ts +166 -0
- package/src/commands/verify/react-build.ts +171 -0
- package/src/index.ts +1 -0
- package/src/lib/mathquill/extension-generator.ts +111 -0
- package/src/lib/mathquill/khan-extractor.ts +175 -0
- package/src/lib/mathquill/learnosity-extractor.ts +198 -0
- package/src/lib/mathquill/migration-orchestrator.ts +513 -0
- package/src/lib/mathquill/package-updater.ts +120 -0
- package/src/lib/mathquill/pie-extractor.ts +194 -0
- package/src/lib/upstream/repo-utils.ts +18 -0
- package/src/lib/upstream/sync-compatibility.ts +89 -0
- package/src/lib/upstream/sync-constants.ts +77 -0
- package/src/lib/upstream/sync-controllers-strategy.ts +291 -0
- package/src/lib/upstream/sync-demo-metadata.ts +199 -0
- package/src/lib/upstream/sync-dev-exports.ts +151 -0
- package/src/lib/upstream/sync-externals.ts +159 -0
- package/src/lib/upstream/sync-filesystem.ts +87 -0
- package/src/lib/upstream/sync-imports.ts +992 -0
- package/src/lib/upstream/sync-mathquill.ts +194 -0
- package/src/lib/upstream/sync-package-json.ts +86 -0
- package/src/lib/upstream/sync-package-manager.ts +694 -0
- package/src/lib/upstream/sync-pielib-strategy.ts +441 -0
- package/src/lib/upstream/sync-react-strategy.ts +945 -0
- package/src/lib/upstream/sync-strategy.ts +61 -0
- package/src/lib/upstream/sync-summary.ts +194 -0
- package/src/lib/upstream/sync-transforms.ts +154 -0
- package/src/lib/upstream/sync-vite-config.ts +243 -0
- package/src/types/es-module-lexer.d.ts +4 -0
- package/src/utils/compatibility.ts +182 -0
- package/src/utils/conversion.ts +153 -0
- package/src/utils/git.ts +63 -0
- package/src/utils/logger.ts +69 -0
- package/src/utils/package-json.ts +43 -0
- package/tests/sync-package-manager.test.ts +112 -0
- package/tests/transform-assign-props.test.ts +101 -0
- package/tsconfig.json +15 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import { Logger } from '../../utils/logger.js';
|
|
3
|
+
import { loadPackageJson, writePackageJson } from '../../utils/package-json.js';
|
|
4
|
+
import { glob } from 'glob';
|
|
5
|
+
import { readFile } from 'node:fs/promises';
|
|
6
|
+
const REACT_PACKAGE_PATTERNS = [
|
|
7
|
+
'packages/elements-react/*/package.json',
|
|
8
|
+
'packages/lib-react/*/package.json',
|
|
9
|
+
];
|
|
10
|
+
const CHANGESET_CONFIG_PATH = '.changeset/config.json';
|
|
11
|
+
export default class EnablePublishing extends Command {
|
|
12
|
+
static description = 'Enable React package publishing by removing private flags';
|
|
13
|
+
static examples = [
|
|
14
|
+
'<%= config.bin %> <%= command.id %> --dry-run',
|
|
15
|
+
'<%= config.bin %> <%= command.id %>',
|
|
16
|
+
];
|
|
17
|
+
static flags = {
|
|
18
|
+
'dry-run': Flags.boolean({
|
|
19
|
+
description: 'Show what would be changed without making any changes',
|
|
20
|
+
default: false,
|
|
21
|
+
}),
|
|
22
|
+
};
|
|
23
|
+
logger = new Logger();
|
|
24
|
+
async run() {
|
|
25
|
+
const { flags } = await this.parse(EnablePublishing);
|
|
26
|
+
this.logger.section('🔄 React Package Publishing Migration');
|
|
27
|
+
if (flags['dry-run']) {
|
|
28
|
+
this.logger.info('🔍 DRY RUN MODE - No changes will be made\n');
|
|
29
|
+
}
|
|
30
|
+
const changes = [];
|
|
31
|
+
let totalPackages = 0;
|
|
32
|
+
// Step 1: Find all React packages
|
|
33
|
+
this.logger.info('📦 Finding React packages...');
|
|
34
|
+
const packagePaths = [];
|
|
35
|
+
for (const pattern of REACT_PACKAGE_PATTERNS) {
|
|
36
|
+
const matches = await glob(pattern);
|
|
37
|
+
packagePaths.push(...matches);
|
|
38
|
+
}
|
|
39
|
+
this.logger.info(` Found ${packagePaths.length} React packages\n`);
|
|
40
|
+
// Step 2: Remove "private": true from package.json files
|
|
41
|
+
this.logger.info('🔓 Removing private flag from React packages...');
|
|
42
|
+
const packageNames = [];
|
|
43
|
+
for (const pkgPath of packagePaths) {
|
|
44
|
+
const pkg = await loadPackageJson(pkgPath);
|
|
45
|
+
packageNames.push(pkg.name);
|
|
46
|
+
if (pkg.private === true) {
|
|
47
|
+
totalPackages++;
|
|
48
|
+
this.logger.info(` ✓ ${pkg.name}`);
|
|
49
|
+
changes.push(`Remove private flag from ${pkg.name}`);
|
|
50
|
+
if (!flags['dry-run']) {
|
|
51
|
+
// Remove the private field
|
|
52
|
+
delete pkg.private;
|
|
53
|
+
// Write back with proper formatting
|
|
54
|
+
await writePackageJson(pkgPath, pkg);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
this.logger.info(` Modified ${totalPackages} package.json files\n`);
|
|
59
|
+
// Step 3: Update .changeset/config.json
|
|
60
|
+
this.logger.info('⚙️ Updating changeset configuration...');
|
|
61
|
+
const changesetContent = await readFile(CHANGESET_CONFIG_PATH, 'utf-8');
|
|
62
|
+
const changesetConfig = JSON.parse(changesetContent);
|
|
63
|
+
// Filter out React packages from ignore list
|
|
64
|
+
const reactPackageSet = new Set(packageNames);
|
|
65
|
+
const originalIgnoreCount = changesetConfig.ignore.length;
|
|
66
|
+
const newIgnore = changesetConfig.ignore.filter((name) => !reactPackageSet.has(name));
|
|
67
|
+
const removedCount = originalIgnoreCount - newIgnore.length;
|
|
68
|
+
this.logger.info(` Removing ${removedCount} packages from ignore list`);
|
|
69
|
+
changes.push(`Remove ${removedCount} React packages from changeset ignore list`);
|
|
70
|
+
if (!flags['dry-run']) {
|
|
71
|
+
changesetConfig.ignore = newIgnore;
|
|
72
|
+
await writePackageJson(CHANGESET_CONFIG_PATH, changesetConfig);
|
|
73
|
+
}
|
|
74
|
+
this.logger.info(` Updated ${CHANGESET_CONFIG_PATH}\n`);
|
|
75
|
+
// Summary
|
|
76
|
+
this.logger.section('📋 Summary of Changes');
|
|
77
|
+
for (const change of changes) {
|
|
78
|
+
this.logger.info(` • ${change}`);
|
|
79
|
+
}
|
|
80
|
+
this.logger.info(`\n Total packages enabled for publishing: ${totalPackages}`);
|
|
81
|
+
if (flags['dry-run']) {
|
|
82
|
+
this.logger.warn('\n⚠️ This was a dry run. No files were modified.');
|
|
83
|
+
this.logger.info(' Run without --dry-run to apply these changes:\n bun run cli packages:enable-publishing\n');
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
this.logger.success('\n✅ Migration complete!');
|
|
87
|
+
this.logger.info('\nNext steps:');
|
|
88
|
+
this.logger.info('1. Review the changes with: git diff');
|
|
89
|
+
this.logger.info('2. Create changesets for the React packages you want to publish:');
|
|
90
|
+
this.logger.info(' bun run changeset');
|
|
91
|
+
this.logger.info('3. Commit and push the changes:');
|
|
92
|
+
this.logger.info(' git add .');
|
|
93
|
+
this.logger.info(' git commit -m "chore: enable React package publishing"');
|
|
94
|
+
this.logger.info(' git push');
|
|
95
|
+
this.logger.info('4. Wait for the automated Version Packages PR and merge it to publish\n');
|
|
96
|
+
}
|
|
97
|
+
// Provide package list
|
|
98
|
+
this.logger.section('\n📦 Packages that will now be published');
|
|
99
|
+
const elementPackages = packageNames.filter((name) => name.startsWith('@pie-element/'));
|
|
100
|
+
const libPackages = packageNames.filter((name) => name.startsWith('@pie-lib/'));
|
|
101
|
+
if (elementPackages.length > 0) {
|
|
102
|
+
this.logger.info('React Elements:');
|
|
103
|
+
for (const name of elementPackages.sort()) {
|
|
104
|
+
this.logger.info(` • ${name}`);
|
|
105
|
+
}
|
|
106
|
+
this.log();
|
|
107
|
+
}
|
|
108
|
+
if (libPackages.length > 0) {
|
|
109
|
+
this.logger.info('React Libraries:');
|
|
110
|
+
for (const name of libPackages.sort()) {
|
|
111
|
+
this.logger.info(` • ${name}`);
|
|
112
|
+
}
|
|
113
|
+
this.log();
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=enable-publishing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enable-publishing.js","sourceRoot":"","sources":["../../../src/commands/packages/enable-publishing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class InitSyncedElements extends Command {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
element: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
|
+
'dry-run': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
8
|
+
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
|
+
};
|
|
10
|
+
private logger;
|
|
11
|
+
run(): Promise<void>;
|
|
12
|
+
private readUpstreamPackageJson;
|
|
13
|
+
private generatePackageJson;
|
|
14
|
+
private generateViteConfig;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=init-synced-elements.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-synced-elements.d.ts","sourceRoot":"","sources":["../../../src/commands/packages/init-synced-elements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAgC7C,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,OAAO;IACrD,OAAgB,WAAW,SACoD;IAE/E,OAAgB,QAAQ,WAItB;IAEF,OAAgB,KAAK;;;;MAanB;IAEF,OAAO,CAAC,MAAM,CAAgB;IAEjB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAiFnB,uBAAuB;IAiBrC,OAAO,CAAC,mBAAmB;IA+D3B,OAAO,CAAC,kBAAkB;CAsC3B"}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import { Logger } from '../../utils/logger.js';
|
|
3
|
+
import { existsSync } from 'node:fs';
|
|
4
|
+
import { readdir, readFile, writeFile, stat as fsStat } from 'node:fs/promises';
|
|
5
|
+
import { join } from 'node:path';
|
|
6
|
+
const ELEMENTS_REACT_DIR = 'packages/elements-react';
|
|
7
|
+
const PIE_ELEMENTS_DIR = '../pie-elements/packages';
|
|
8
|
+
export default class InitSyncedElements extends Command {
|
|
9
|
+
static description = 'Initialize package.json and vite.config.ts files for synced React elements';
|
|
10
|
+
static examples = [
|
|
11
|
+
'<%= config.bin %> <%= command.id %>',
|
|
12
|
+
'<%= config.bin %> <%= command.id %> --element=categorize',
|
|
13
|
+
'<%= config.bin %> <%= command.id %> --dry-run',
|
|
14
|
+
];
|
|
15
|
+
static flags = {
|
|
16
|
+
element: Flags.string({
|
|
17
|
+
description: 'Initialize only specified element',
|
|
18
|
+
}),
|
|
19
|
+
'dry-run': Flags.boolean({
|
|
20
|
+
description: 'Show what would be created without making changes',
|
|
21
|
+
default: false,
|
|
22
|
+
}),
|
|
23
|
+
verbose: Flags.boolean({
|
|
24
|
+
char: 'v',
|
|
25
|
+
description: 'Show detailed output',
|
|
26
|
+
default: false,
|
|
27
|
+
}),
|
|
28
|
+
};
|
|
29
|
+
logger = new Logger();
|
|
30
|
+
async run() {
|
|
31
|
+
const { flags } = await this.parse(InitSyncedElements);
|
|
32
|
+
this.logger = new Logger(flags.verbose);
|
|
33
|
+
this.logger.section('🔧 Initializing synced React elements');
|
|
34
|
+
if (flags['dry-run']) {
|
|
35
|
+
this.logger.info(' Mode: DRY RUN\n');
|
|
36
|
+
}
|
|
37
|
+
const elements = await readdir(ELEMENTS_REACT_DIR);
|
|
38
|
+
let created = 0;
|
|
39
|
+
let skipped = 0;
|
|
40
|
+
for (const element of elements) {
|
|
41
|
+
// Skip if filtering by element and this isn't it
|
|
42
|
+
if (flags.element && element !== flags.element) {
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
const elementDir = join(ELEMENTS_REACT_DIR, element);
|
|
46
|
+
// Skip if not a directory
|
|
47
|
+
const statResult = await fsStat(elementDir).catch(() => null);
|
|
48
|
+
if (!statResult?.isDirectory()) {
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
// Skip if src directory doesn't exist
|
|
52
|
+
if (!existsSync(join(elementDir, 'src'))) {
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
const packageJsonPath = join(elementDir, 'package.json');
|
|
56
|
+
// Skip if package.json already exists
|
|
57
|
+
if (existsSync(packageJsonPath)) {
|
|
58
|
+
if (flags.verbose) {
|
|
59
|
+
this.logger.info(` ⏭️ ${element}: package.json already exists`);
|
|
60
|
+
}
|
|
61
|
+
skipped++;
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
// Read upstream package.json
|
|
65
|
+
const upstreamPkg = await this.readUpstreamPackageJson(element);
|
|
66
|
+
if (!upstreamPkg) {
|
|
67
|
+
this.logger.warn(` ⚠️ ${element}: Could not read upstream package.json`);
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
// Generate package.json
|
|
71
|
+
const pkg = this.generatePackageJson(element, upstreamPkg);
|
|
72
|
+
if (!flags['dry-run']) {
|
|
73
|
+
await writeFile(packageJsonPath, `${JSON.stringify(pkg, null, 2)}\n`, 'utf-8');
|
|
74
|
+
this.logger.success(` ✨ ${element}: Created package.json`);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
this.logger.info(` 🔍 ${element}: Would create package.json`);
|
|
78
|
+
}
|
|
79
|
+
// Generate vite.config.ts
|
|
80
|
+
const viteConfigPath = join(elementDir, 'vite.config.ts');
|
|
81
|
+
if (!existsSync(viteConfigPath)) {
|
|
82
|
+
if (!flags['dry-run']) {
|
|
83
|
+
await writeFile(viteConfigPath, this.generateViteConfig(), 'utf-8');
|
|
84
|
+
this.logger.success(` ✨ ${element}: Created vite.config.ts`);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
this.logger.info(` 🔍 ${element}: Would create vite.config.ts`);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
created++;
|
|
91
|
+
}
|
|
92
|
+
this.logger.section(`\n📊 Summary: ${created} ${flags['dry-run'] ? 'would be created' : 'created'}, ${skipped} skipped`);
|
|
93
|
+
}
|
|
94
|
+
async readUpstreamPackageJson(elementName) {
|
|
95
|
+
const upstreamPath = join(PIE_ELEMENTS_DIR, elementName, 'package.json');
|
|
96
|
+
if (!existsSync(upstreamPath)) {
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
try {
|
|
100
|
+
const content = await readFile(upstreamPath, 'utf-8');
|
|
101
|
+
return JSON.parse(content);
|
|
102
|
+
}
|
|
103
|
+
catch {
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
generatePackageJson(elementName, upstreamPkg) {
|
|
108
|
+
const deps = {};
|
|
109
|
+
// Map upstream dependencies to workspace:* for @pie-lib packages
|
|
110
|
+
const upstreamDeps = upstreamPkg.dependencies;
|
|
111
|
+
if (upstreamDeps) {
|
|
112
|
+
for (const [name] of Object.entries(upstreamDeps)) {
|
|
113
|
+
if (name.startsWith('@pie-lib/')) {
|
|
114
|
+
deps[name] = 'workspace:*';
|
|
115
|
+
}
|
|
116
|
+
else if (!name.startsWith('react') && name !== 'react-dom') {
|
|
117
|
+
deps[name] = '*';
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return {
|
|
122
|
+
name: `@pie-element/${elementName}`,
|
|
123
|
+
private: true,
|
|
124
|
+
version: '0.1.0',
|
|
125
|
+
description: `React implementation of ${elementName} element synced from pie-elements`,
|
|
126
|
+
type: 'module',
|
|
127
|
+
main: './dist/index.js',
|
|
128
|
+
types: './dist/index.d.ts',
|
|
129
|
+
exports: {
|
|
130
|
+
'.': {
|
|
131
|
+
types: './dist/index.d.ts',
|
|
132
|
+
default: './dist/index.js',
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
files: ['dist', 'src'],
|
|
136
|
+
scripts: {
|
|
137
|
+
dev: 'vite',
|
|
138
|
+
build: 'vite build && tsc --emitDeclarationOnly',
|
|
139
|
+
test: 'vitest run',
|
|
140
|
+
lint: 'biome check .',
|
|
141
|
+
'lint:fix': 'biome check --write .',
|
|
142
|
+
},
|
|
143
|
+
dependencies: deps,
|
|
144
|
+
peerDependencies: {
|
|
145
|
+
react: '^18.0.0',
|
|
146
|
+
'react-dom': '^18.0.0',
|
|
147
|
+
},
|
|
148
|
+
devDependencies: {
|
|
149
|
+
'@types/react': '^18.2.0',
|
|
150
|
+
'@types/react-dom': '^18.2.0',
|
|
151
|
+
'@vitejs/plugin-react': '^4.2.0',
|
|
152
|
+
typescript: '^5.9.3',
|
|
153
|
+
vite: '^6.0.0',
|
|
154
|
+
vitest: '^2.1.0',
|
|
155
|
+
},
|
|
156
|
+
keywords: ['pie', 'pie-element', 'react', 'assessment', elementName],
|
|
157
|
+
license: 'ISC',
|
|
158
|
+
repository: {
|
|
159
|
+
type: 'git',
|
|
160
|
+
url: 'https://github.com/pie-framework/pie-elements-ng.git',
|
|
161
|
+
directory: `packages/elements-react/${elementName}`,
|
|
162
|
+
},
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
generateViteConfig() {
|
|
166
|
+
return `import { resolve } from 'node:path';
|
|
167
|
+
import react from '@vitejs/plugin-react';
|
|
168
|
+
import { defineConfig } from 'vite';
|
|
169
|
+
|
|
170
|
+
export default defineConfig({
|
|
171
|
+
plugins: [react()],
|
|
172
|
+
build: {
|
|
173
|
+
lib: {
|
|
174
|
+
entry: {
|
|
175
|
+
index: resolve(__dirname, 'src/index.ts'),
|
|
176
|
+
},
|
|
177
|
+
formats: ['es'],
|
|
178
|
+
},
|
|
179
|
+
rollupOptions: {
|
|
180
|
+
external: (id) => {
|
|
181
|
+
return (
|
|
182
|
+
/^react($|\\/)/.test(id) ||
|
|
183
|
+
/^react-dom($|\\/)/.test(id) ||
|
|
184
|
+
/^@pie-lib\\//.test(id) ||
|
|
185
|
+
/^@pie-element\\//.test(id) ||
|
|
186
|
+
/^@pie-framework\\//.test(id) ||
|
|
187
|
+
/^@mui\\//.test(id) ||
|
|
188
|
+
/^d3-/.test(id) ||
|
|
189
|
+
id === 'lodash' ||
|
|
190
|
+
/^lodash\\//.test(id) ||
|
|
191
|
+
['prop-types', 'classnames', 'debug'].includes(id)
|
|
192
|
+
);
|
|
193
|
+
},
|
|
194
|
+
output: {
|
|
195
|
+
preserveModules: true,
|
|
196
|
+
preserveModulesRoot: 'src',
|
|
197
|
+
},
|
|
198
|
+
},
|
|
199
|
+
},
|
|
200
|
+
});
|
|
201
|
+
`;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
//# sourceMappingURL=init-synced-elements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-synced-elements.js","sourceRoot":"","sources":["../../../src/commands/packages/init-synced-elements.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class AnalyzeEsm extends Command {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
'pie-elements': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
+
'pie-lib': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
output: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
'include-dev-deps': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
'validate-esm-player': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
|
+
'runtime-cdn-base-url': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
'runtime-local-pie-elements-path': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
'runtime-local-pie-lib-path': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
'runtime-timeout-ms': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
'runtime-concurrency': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
'runtime-max-depth': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
'runtime-max-modules': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
'runtime-cache-file': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
};
|
|
21
|
+
private logger;
|
|
22
|
+
run(): Promise<void>;
|
|
23
|
+
private analyzeCompatibility;
|
|
24
|
+
private loadRuntimeCache;
|
|
25
|
+
private saveRuntimeCache;
|
|
26
|
+
private parseAsEsm;
|
|
27
|
+
private getImportSpecifiers;
|
|
28
|
+
private resolveImportUrl;
|
|
29
|
+
private isPiePackageSpecifier;
|
|
30
|
+
private tryResolvePieToLocalFile;
|
|
31
|
+
private resolveLocalEntrypoint;
|
|
32
|
+
private resolveLocalImport;
|
|
33
|
+
private getTsImportSpecifiers;
|
|
34
|
+
private deepProbeFromUrl;
|
|
35
|
+
private fetchTextWithTimeout;
|
|
36
|
+
private probeElementsRuntime;
|
|
37
|
+
private checkElementCompatibility;
|
|
38
|
+
/**
|
|
39
|
+
* Check subdirectory compatibility (src/, configure/, controller/)
|
|
40
|
+
* Returns compatibility status for each subdirectory that has its own package.json
|
|
41
|
+
*/
|
|
42
|
+
private checkSubdirectoryCompatibility;
|
|
43
|
+
private checkDependencyDeep;
|
|
44
|
+
private checkPieLibCompatibility;
|
|
45
|
+
/**
|
|
46
|
+
* Collect all transitive pie-lib dependencies recursively.
|
|
47
|
+
* For example, if text-select depends on style-utils, we need style-utils too.
|
|
48
|
+
*/
|
|
49
|
+
private collectAllTransitivePieLibDeps;
|
|
50
|
+
private getAllDeps;
|
|
51
|
+
private extractPieLibDeps;
|
|
52
|
+
private extractPieElementDeps;
|
|
53
|
+
private checkEsmBlocker;
|
|
54
|
+
private validateEsmPlayerCompatibility;
|
|
55
|
+
private printReport;
|
|
56
|
+
private printNotReadyActionReport;
|
|
57
|
+
private suggestionsFromRuntimeError;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=analyze-esm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyze-esm.d.ts","sourceRoot":"","sources":["../../../src/commands/upstream/analyze-esm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAgE7C,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,OAAO;IAC7C,OAAgB,WAAW,SAAgD;IAE3E,OAAgB,QAAQ,WAItB;IAEF,OAAgB,KAAK;;;;;;;;;;;;;;;MA6DnB;IAEF,OAAO,CAAC,MAAM,CAAgB;IAEjB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YA8CnB,oBAAoB;YAqXpB,gBAAgB;YAYhB,gBAAgB;YAehB,UAAU;YAeV,mBAAmB;IAmBjC,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,wBAAwB;IAqChC,OAAO,CAAC,sBAAsB;IA2B9B,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,qBAAqB;YAgBf,gBAAgB;YA6GhB,oBAAoB;YAiBpB,oBAAoB;YA2KpB,yBAAyB;IA2FvC;;;OAGG;YACW,8BAA8B;YA0F9B,mBAAmB;YA4FnB,wBAAwB;IAoFtC;;;OAGG;YACW,8BAA8B;IA2C5C,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,eAAe;YAYT,8BAA8B;IAyH5C,OAAO,CAAC,WAAW;IAiJnB,OAAO,CAAC,yBAAyB;IAwKjC,OAAO,CAAC,2BAA2B;CAiDpC"}
|