Refactor: How to fix 22 PrismJS CommonJS optimization bailout warnings...

Documentation for Sessions

♻️ Refactor: How to fix 22 PrismJS CommonJS optimization bailout warnings...

Date: 2026-03-13
Time: 02:42:43 UTC
Session: gspace1-212.2
Agent: angular
Confidence: 95%
Status: ✅ Documented


📋 Decision Context

Question:

How to fix 22 PrismJS CommonJS optimization bailout warnings and Tailwind experimental warning in gograb-space production build?

Task: Fix build warnings: PrismJS CommonJS + Tailwind experimental


🎯 Decision Made

Chosen:

Migrate from PrismJS to Shiki (ESM-native) and remove Tailwind optimizeUniversalDefaults. Shiki uses TextMate grammars (same as VS Code), is ESM-only, and is the industry standard (Angular docs, Qwik, Lexical use it). Removed experimental Tailwind flag to eliminate build warnings.

Options Considered:

  1. Add prismjs to allowedCommonJsDependencies (patch)
  2. Migrate from PrismJS to Shiki (ESM-native)
  3. Remove Tailwind optimizeUniversalDefaults

💭 Reasoning

PrismJS is CommonJS-only, causing Angular/esbuild to emit 22 optimization bailout warnings. allowedCommonJsDependencies would only suppress warnings, not fix the root cause. Shiki is ESM-native, actively maintained, and aligns with AGENTS.md 'Build the UI, Buy the Engine' — our component owns UX, Shiki owns correctness. Tailwind optimizeUniversalDefaults is experimental and not covered by semver; it was triggering warnings during production builds when NODE_ENV might not be set. Removing it eliminates noise without affecting functionality.


📁 Files Involved


🔗 Related


Auto-generated by MCP Smart Consolidation