@pie-element/cli 0.1.2-next.13 → 0.1.2-next.14

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 CHANGED
@@ -30,14 +30,14 @@ bun run cli upstream:sync --help
30
30
 
31
31
  #### `dev:demo`
32
32
 
33
- Start a demo server for an element using `apps/element-demo`.
33
+ Start `apps/element-demo`, which serves every element; the URL picks the element (`/<element>/deliver`).
34
34
 
35
35
  ```bash
36
- # Start demo for an element
37
- bun run cli dev:demo hotspot
36
+ # Start the demo on port 5222
37
+ bun run cli dev:demo
38
38
 
39
- # Custom port, skip builds, and don't auto-open browser
40
- bun run cli dev:demo multiple-choice --port 5180 --skip-build --no-open
39
+ # Custom port, build all elements first, and don't auto-open browser
40
+ bun run cli dev:demo --port 5180 --build --no-open
41
41
  ```
42
42
 
43
43
  ### Upstream Synchronization
@@ -45,12 +45,6 @@ const ESM_BLOCKERS = [
45
45
  // Known CommonJS-only packages (add more as discovered)
46
46
  { pattern: /^enzyme/, reason: 'Enzyme is not ESM compatible' },
47
47
  ];
48
- // PIE lib packages that should always be included if compatible
49
- // These are packages that may be imported directly in code (e.g., controllers)
50
- // but not declared in package.json dependencies
51
- const ALWAYS_INCLUDE_PIE_LIB = [
52
- 'controller-utils', // Used in controller code via direct imports
53
- ];
54
48
  export default class AnalyzeEsm extends Command {
55
49
  static description = 'Analyze PIE elements for ESM compatibility';
56
50
  static examples = [
@@ -284,34 +278,7 @@ export default class AnalyzeEsm extends Command {
284
278
  };
285
279
  }
286
280
  }
287
- // Add always-include pie-lib packages if they're compatible
288
- for (const pieLibPkg of ALWAYS_INCLUDE_PIE_LIB) {
289
- // Skip if already in the report
290
- if (pieLibUsage.has(pieLibPkg)) {
291
- continue;
292
- }
293
- // Check if this package exists and is compatible
294
- let check = pieLibCache.get(pieLibPkg);
295
- if (!check) {
296
- check = await this.checkPieLibCompatibility(pieLibPkg, pieLibPath, verbose, includeDevDeps, pieLibCache);
297
- pieLibCache.set(pieLibPkg, check);
298
- }
299
- if (check.compatible) {
300
- report.pieLibPackages.push(pieLibPkg);
301
- report.pieLibDetails[pieLibPkg] = {
302
- compatible: true,
303
- usedBy: ['(always included)'], // Mark as always included
304
- blockers: [],
305
- };
306
- if (verbose) {
307
- this.logger.info(` ✅ ${pieLibPkg}: always included (compatible)`);
308
- }
309
- }
310
- else if (verbose) {
311
- this.logger.info(` ⏭️ ${pieLibPkg}: skipped (not compatible)`);
312
- }
313
- }
314
- report.summary.totalPieLibPackages = pieLibUsage.size + ALWAYS_INCLUDE_PIE_LIB.length;
281
+ report.summary.totalPieLibPackages = pieLibUsage.size;
315
282
  report.summary.compatiblePieLibPackages = report.pieLibPackages.length;
316
283
  // Identify student-UI-only elements (blocked overall but student UI is compatible)
317
284
  report.studentUIOnly = [];