@csszyx/unplugin 0.14.4 → 0.15.0

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.
Files changed (52) hide show
  1. package/README.md +4 -3
  2. package/dist/index.cjs +8 -7
  3. package/dist/index.d.cts +70 -3
  4. package/dist/index.d.mts +70 -3
  5. package/dist/index.mjs +4 -4
  6. package/dist/next-config.d.cts +1 -2
  7. package/dist/next-config.d.mts +1 -2
  8. package/dist/next-prebuild.cjs +9 -5
  9. package/dist/next-prebuild.d.cts +4 -2
  10. package/dist/next-prebuild.d.mts +4 -2
  11. package/dist/next-prebuild.mjs +8 -4
  12. package/dist/next-turbo-loader.cjs +20 -14
  13. package/dist/next-turbo-loader.d.cts +1 -1
  14. package/dist/next-turbo-loader.d.mts +1 -1
  15. package/dist/next-turbo-loader.mjs +19 -13
  16. package/dist/next-watcher.cjs +2 -2
  17. package/dist/next-watcher.d.cts +2 -2
  18. package/dist/next-watcher.d.mts +2 -2
  19. package/dist/next-watcher.mjs +2 -2
  20. package/dist/postcss.cjs +124 -0
  21. package/dist/postcss.d.cts +42 -0
  22. package/dist/postcss.d.mts +42 -0
  23. package/dist/postcss.mjs +107 -0
  24. package/dist/shared/{unplugin.NlPvn5P4.mjs → unplugin.AGR7mihU.mjs} +2 -6
  25. package/dist/shared/{unplugin.BnRf0Tvd.mjs → unplugin.BGufkSFT.mjs} +297 -173
  26. package/dist/shared/{unplugin.BXYakiXt.d.cts → unplugin.BHfqCocB.d.cts} +53 -55
  27. package/dist/shared/{unplugin.BXYakiXt.d.mts → unplugin.BHfqCocB.d.mts} +53 -55
  28. package/dist/shared/{unplugin.RGzhYt-D.cjs → unplugin.BLbrShMZ.cjs} +344 -221
  29. package/dist/shared/{unplugin.DVbPNK3W.cjs → unplugin.BbBYWFGT.cjs} +6 -6
  30. package/dist/shared/{unplugin.BZPdvVcj.mjs → unplugin.BourSpnZ.mjs} +105 -127
  31. package/dist/shared/{unplugin.CPEWNSA0.d.cts → unplugin.C2ilavL1.d.cts} +2 -0
  32. package/dist/shared/{unplugin.CPEWNSA0.d.mts → unplugin.C2ilavL1.d.mts} +2 -0
  33. package/dist/shared/{unplugin.D8BxOOkA.cjs → unplugin.C7i0agiO.cjs} +121 -142
  34. package/dist/shared/{unplugin.CdZxp0x-.d.mts → unplugin.CXCaQ3-s.d.cts} +1 -1
  35. package/dist/shared/{unplugin.xeED_qwh.d.cts → unplugin.CbNydVwv.d.mts} +1 -1
  36. package/dist/shared/unplugin.CqJS0BbD.mjs +211 -0
  37. package/dist/shared/{unplugin.VtXstzEh.cjs → unplugin.DX3rYT4P.cjs} +6 -11
  38. package/dist/shared/{unplugin.Cji6O5jv.cjs → unplugin.Dai5wlZ3.cjs} +27 -19
  39. package/dist/shared/{unplugin.DN95k991.mjs → unplugin.Dbc26ty6.mjs} +2 -2
  40. package/dist/shared/{unplugin.BU0O4IkX.mjs → unplugin.DmCOQc-b.mjs} +22 -16
  41. package/dist/shared/unplugin.KnDCM-sr.cjs +241 -0
  42. package/dist/vite.cjs +4 -4
  43. package/dist/vite.d.cts +2 -2
  44. package/dist/vite.d.mts +1 -1
  45. package/dist/vite.mjs +4 -4
  46. package/dist/webpack.cjs +4 -4
  47. package/dist/webpack.d.cts +2 -1
  48. package/dist/webpack.d.mts +1 -1
  49. package/dist/webpack.mjs +4 -4
  50. package/package.json +19 -9
  51. package/dist/shared/unplugin.B3XoSRB8.mjs +0 -40
  52. package/dist/shared/unplugin.BkRah5Ot.cjs +0 -48
@@ -421,6 +421,45 @@ declare function hasTokens(theme: ParsedTheme): boolean;
421
421
  */
422
422
  declare function scanCustomPropertyNames(block: string): string[];
423
423
 
424
+ /**
425
+ * A per-key store whose merged view is built when read, not when written.
426
+ *
427
+ * The plugin keeps two aggregates over "what each file contributed": the CSS
428
+ * variable mangle map and the variable hoisting metrics. Both were rebuilt in
429
+ * full — a sort over every file, then a merge — on EVERY write, and a write
430
+ * happens once per module in the prescan and again in the transform hook. That
431
+ * made recording a module cost as much as every module before it: 18 000
432
+ * files with `mangleVars` on spent 77 s here, a 12× build-time regression that
433
+ * the flag's own benchmarks never showed because their fixtures emitted no
434
+ * variables.
435
+ *
436
+ * Readers (`buildEnd`, the virtual map module, the manifest) run after the
437
+ * writes, so building on read costs one merge per build instead of one per
438
+ * file, and a write followed by a read still sees the write.
439
+ *
440
+ * @module
441
+ */
442
+ /** A per-key store with a lazily rebuilt merged view. */
443
+ interface LazyAggregate<Entry, Aggregate> {
444
+ /** Contributions by key, in insertion order. */
445
+ readonly entries: ReadonlyMap<string, Entry>;
446
+ /**
447
+ * Record one key's contribution, replacing what it held before.
448
+ *
449
+ * @param key Contribution owner (a normalized filename).
450
+ * @param entry What the owner contributes.
451
+ */
452
+ set(key: string, entry: Entry): void;
453
+ /**
454
+ * Drop one key's contribution.
455
+ *
456
+ * @param key Contribution owner.
457
+ */
458
+ delete(key: string): void;
459
+ /** @returns The merged view, rebuilt only if a write happened since the last read. */
460
+ get(): Aggregate;
461
+ }
462
+
424
463
  /**
425
464
  * Plugin state for mangle map management.
426
465
  */
@@ -454,6 +493,13 @@ interface PluginState {
454
493
  * emit their CSS (no entry → the classes resolve to no styles, silently).
455
494
  */
456
495
  sawTailwindEntry: boolean;
496
+ /**
497
+ * Absolute paths of every CSS file seen importing `tailwindcss`, without
498
+ * their query. These are the modules whose generated CSS changes when the
499
+ * safelist does, which is what lets a dev server hot-update instead of
500
+ * reloading — see the `handleHotUpdate` safelist branch.
501
+ */
502
+ tailwindEntryFiles: Set<string>;
457
503
  /**
458
504
  * True once ANY CSS file passed through the transform hook. The missing-entry
459
505
  * warning only fires when csszyx actually observed the CSS pipeline but found
@@ -516,10 +562,12 @@ interface PluginState {
516
562
  */
517
563
  classesCapped: boolean;
518
564
  mangleMap: Record<string, string>;
519
- varMangleEntriesByFile: Map<string, Array<[string, string]>>;
520
- varMangleMap: Record<string, CssVariableMangleValue>;
521
- cssVarMetricsByFile: Map<string, CSSVariableMetrics>;
522
- cssVarMetrics: CSSVariableMetrics;
565
+ /** CSS variable mangle entries per file; `varMangleMap` is merged from them on read. */
566
+ varMangleEntriesByFile: LazyAggregate<Array<[string, string]>, Record<string, CssVariableMangleValue>>;
567
+ readonly varMangleMap: Record<string, CssVariableMangleValue>;
568
+ /** CSS variable hoisting metrics per file; `cssVarMetrics` is totalled from them on read. */
569
+ cssVarMetricsByFile: LazyAggregate<CSSVariableMetrics, CSSVariableMetrics>;
570
+ readonly cssVarMetrics: CSSVariableMetrics;
523
571
  checksum: string;
524
572
  finalized: boolean;
525
573
  rootDir: string;
@@ -558,41 +606,6 @@ interface CSSVariableMetrics {
558
606
  * @returns A stable identity string, or a sentinel when unresolvable.
559
607
  */
560
608
  declare function resolveNativeCacheIdentity(): string;
561
- /**
562
- * Appends an `@source "<relPath>";` directive to a CSS module so Tailwind v4
563
- * scans the csszyx-generated safelist file.
564
- *
565
- * `@source` is position-independent in Tailwind v4 — it can appear anywhere in
566
- * the compiled CSS — so the directive is **appended as its own statement**
567
- * rather than spliced next to the `@import "tailwindcss…"` line. Matching the
568
- * import syntax is the source of a real defect: the split / manual Tailwind v4
569
- * setup (`@import "tailwindcss/utilities.css" layer(…)` or `… source(…)`, or an
570
- * import without a trailing `;`) does not match an import-anchored regex, so the
571
- * injection silently no-ops and every csszyx-only class (e.g. the static
572
- * `bg-primary/50` produced by `sz={{ bg: { color, op } }}`) gets no CSS while a
573
- * raw `className` still works. Appending is correct for every import form.
574
- *
575
- * @param code - CSS module source already known to import tailwindcss.
576
- * @param relPath - safelist path relative to this CSS file (posix, `./`-prefixed).
577
- * @returns the code with the directive appended, or `null` if it is already
578
- * present (idempotent — re-running the transform must not stack directives).
579
- */
580
- declare function appendTailwindSourceDirective(code: string, relPath: string): string | null;
581
- /**
582
- * Whether a CSS module actually imports the `tailwindcss` package, so the
583
- * `@source` directive should be appended.
584
- *
585
- * Tighter than a substring check on purpose: block comments are stripped first
586
- * (a commented-out `@import` must not trigger injection), and the package name
587
- * must end at a quote or a `/` subpath so a different package whose name merely
588
- * starts with `tailwindcss` (e.g. `tailwindcss-animate`) does not match. Import
589
- * options after the closing quote (`layer(…)`, `source(…)`) are irrelevant — the
590
- * match ends at the quote — so every real Tailwind v4 import form is covered.
591
- *
592
- * @param code - CSS module source.
593
- * @returns true if the module imports tailwindcss (exact or a subpath).
594
- */
595
- declare function cssImportsTailwind(code: string): boolean;
596
609
  /**
597
610
  * Whether the discovered class set contains at least one real Tailwind
598
611
  * candidate worth injecting an `@source` for — at least two characters and
@@ -929,21 +942,6 @@ declare function watchModeMangleMessage(): string;
929
942
  * @returns the warning text.
930
943
  */
931
944
  declare function realContentHashDisabledMessage(): string;
932
- /**
933
- * Computes the `@source` target path for a CSS module: the location of the
934
- * generated safelist file relative to the CSS file, in posix form and always
935
- * `./`- or `../`-prefixed so Tailwind treats it as a relative path.
936
- *
937
- * This is the real-world failure surface — a wrong relative path makes Tailwind
938
- * silently scan nothing (no error, no CSS), the same symptom as a missing
939
- * directive — so it is extracted and unit-tested rather than left inline.
940
- *
941
- * @param rootDir - project root where the safelist file is written.
942
- * @param safelistFilename - the safelist file name (e.g. `csszyx-classes.html`).
943
- * @param cssId - absolute path of the CSS module receiving the directive.
944
- * @returns the posix relative path from the CSS file to the safelist file.
945
- */
946
- declare function computeSafelistRelPath(rootDir: string, safelistFilename: string, cssId: string): string;
947
945
  /**
948
946
  * Whether transformed source text must be retained for global-var alias
949
947
  * validation. Retention is only consumed when `production.mangleGlobalVars`
@@ -1044,5 +1042,5 @@ declare const rollupPlugin: (options?: PartialCsszyxConfig) => InputPluginOption
1044
1042
  */
1045
1043
  declare const esbuildPlugin: (options?: PartialCsszyxConfig) => Plugin;
1046
1044
 
1047
- export { isMonorepoPackage as $, cssHasContentScope as A, cssImportsTailwind as B, unplugin as D, deleteRSCModuleRecord as E, emitMissingCssFallback as F, esbuildPlugin as H, extractGlobalVarAliasesForManifest as I, fileMayContainSafelistableSz as J, findLocalImportSources as K, findRSCBoundaryViolation as L, findRSCGraphViolation as N, hasInjectableTailwindCandidate as O, hasTokens as T, hasUseClientDirective as U, hasUseServerDirective as W, isAdvisoryDiagnostic as X, isCompileSourceOptedIn as Y, isHardIgnoredPath as Z, isMangleableCssId as _, isPackagesSkippedSource as a0, isRSCServerModule as a1, lateMangleCensusMessage as a2, mangleCodeClassesSync as a3, mangleEligibleClasses as a4, mangleHybridHazardMessage as a5, mergeThemes as a6, missingTailwindEntryMessage as a7, normalizeGlobalVarAliasesForCache as a8, parseThemeBlocks as a9, parseUtilityBlocks as aa, realContentHashDisabledMessage as ab, recordGlobalVarSourceFile as ac, resolveCompileSourceDirs as ad, resolveNativeCacheIdentity as ae, resolveQuietMode as af, rollupPlugin as ag, scanCustomPropertyNames as ah, shouldEmitMissingCssFallback as ai, shouldEmitWarning as aj, shouldTrackGlobalVarSources as ak, shouldWarnMissingTailwindEntry as al, shouldWarnUnscopedMonorepo as am, skippedSzFilesMessage as an, suppressedAdvisoryMessage as ao, unscopedMonorepoMessage as ap, vitePlugin as aq, watchModeMangleMessage as ar, webpackPlugin as as, allocateMangleTokens as s, appendTailwindSourceDirective as t, assertNoRSCBoundaryViolation as u, assertNoRSCGraphViolation as v, collectMangleHybridHazards as w, computeSafelistRelPath as x, createGlobalVarMapAssetSource as y, createRSCModuleRecord as z };
1045
+ export { lateMangleCensusMessage as $, deleteRSCModuleRecord as A, emitMissingCssFallback as B, esbuildPlugin as D, extractGlobalVarAliasesForManifest as E, fileMayContainSafelistableSz as F, findLocalImportSources as H, findRSCBoundaryViolation as I, findRSCGraphViolation as J, hasInjectableTailwindCandidate as K, hasTokens as L, hasUseClientDirective as N, hasUseServerDirective as O, isAdvisoryDiagnostic as T, isCompileSourceOptedIn as U, isHardIgnoredPath as W, isMangleableCssId as X, isMonorepoPackage as Y, isPackagesSkippedSource as Z, isRSCServerModule as _, mangleCodeClassesSync as a0, mangleEligibleClasses as a1, mangleHybridHazardMessage as a2, mergeThemes as a3, missingTailwindEntryMessage as a4, normalizeGlobalVarAliasesForCache as a5, parseThemeBlocks as a6, parseUtilityBlocks as a7, realContentHashDisabledMessage as a8, recordGlobalVarSourceFile as a9, resolveCompileSourceDirs as aa, resolveNativeCacheIdentity as ab, resolveQuietMode as ac, rollupPlugin as ad, scanCustomPropertyNames as ae, shouldEmitMissingCssFallback as af, shouldEmitWarning as ag, shouldTrackGlobalVarSources as ah, shouldWarnMissingTailwindEntry as ai, shouldWarnUnscopedMonorepo as aj, skippedSzFilesMessage as ak, suppressedAdvisoryMessage as al, unscopedMonorepoMessage as am, vitePlugin as an, watchModeMangleMessage as ao, webpackPlugin as ap, allocateMangleTokens as s, assertNoRSCBoundaryViolation as t, assertNoRSCGraphViolation as u, collectMangleHybridHazards as v, createGlobalVarMapAssetSource as w, createRSCModuleRecord as x, cssHasContentScope as y, unplugin as z };
1048
1046
  export type { CssVarScanResult as C, GlobalVarScanCacheKeyInput as G, MangleHybridHazards as M, PlanGlobalVarAliasesInput as P, QuietMode as Q, RewriteGlobalVarCssAliasesOptions as R, ScanGlobalVarCssOptions as S, ValidateGlobalVarAliasInputsOptions as V, GlobalVarAliasPlan as a, GlobalVarCssAliasRewriteResult as b, CreateGlobalVarAliasValidationOptionsInput as c, GlobalVarAliasValidationResult as d, CssVarDefinition as e, CssVarLocation as f, CssVarReference as g, GlobalVarAliasDiagnostic as h, GlobalVarAliasDiagnosticSeverity as i, GlobalVarAliasEntry as j, GlobalVarCodeSource as k, GlobalVarCssAssetSource as l, GlobalVarCssSource as m, GlobalVarScanCacheEntry as n, ParsedTheme as o, ParsedUtilities as p, RSCBoundaryViolation as q, RSCModuleRecord as r };
@@ -421,6 +421,45 @@ declare function hasTokens(theme: ParsedTheme): boolean;
421
421
  */
422
422
  declare function scanCustomPropertyNames(block: string): string[];
423
423
 
424
+ /**
425
+ * A per-key store whose merged view is built when read, not when written.
426
+ *
427
+ * The plugin keeps two aggregates over "what each file contributed": the CSS
428
+ * variable mangle map and the variable hoisting metrics. Both were rebuilt in
429
+ * full — a sort over every file, then a merge — on EVERY write, and a write
430
+ * happens once per module in the prescan and again in the transform hook. That
431
+ * made recording a module cost as much as every module before it: 18 000
432
+ * files with `mangleVars` on spent 77 s here, a 12× build-time regression that
433
+ * the flag's own benchmarks never showed because their fixtures emitted no
434
+ * variables.
435
+ *
436
+ * Readers (`buildEnd`, the virtual map module, the manifest) run after the
437
+ * writes, so building on read costs one merge per build instead of one per
438
+ * file, and a write followed by a read still sees the write.
439
+ *
440
+ * @module
441
+ */
442
+ /** A per-key store with a lazily rebuilt merged view. */
443
+ interface LazyAggregate<Entry, Aggregate> {
444
+ /** Contributions by key, in insertion order. */
445
+ readonly entries: ReadonlyMap<string, Entry>;
446
+ /**
447
+ * Record one key's contribution, replacing what it held before.
448
+ *
449
+ * @param key Contribution owner (a normalized filename).
450
+ * @param entry What the owner contributes.
451
+ */
452
+ set(key: string, entry: Entry): void;
453
+ /**
454
+ * Drop one key's contribution.
455
+ *
456
+ * @param key Contribution owner.
457
+ */
458
+ delete(key: string): void;
459
+ /** @returns The merged view, rebuilt only if a write happened since the last read. */
460
+ get(): Aggregate;
461
+ }
462
+
424
463
  /**
425
464
  * Plugin state for mangle map management.
426
465
  */
@@ -454,6 +493,13 @@ interface PluginState {
454
493
  * emit their CSS (no entry → the classes resolve to no styles, silently).
455
494
  */
456
495
  sawTailwindEntry: boolean;
496
+ /**
497
+ * Absolute paths of every CSS file seen importing `tailwindcss`, without
498
+ * their query. These are the modules whose generated CSS changes when the
499
+ * safelist does, which is what lets a dev server hot-update instead of
500
+ * reloading — see the `handleHotUpdate` safelist branch.
501
+ */
502
+ tailwindEntryFiles: Set<string>;
457
503
  /**
458
504
  * True once ANY CSS file passed through the transform hook. The missing-entry
459
505
  * warning only fires when csszyx actually observed the CSS pipeline but found
@@ -516,10 +562,12 @@ interface PluginState {
516
562
  */
517
563
  classesCapped: boolean;
518
564
  mangleMap: Record<string, string>;
519
- varMangleEntriesByFile: Map<string, Array<[string, string]>>;
520
- varMangleMap: Record<string, CssVariableMangleValue>;
521
- cssVarMetricsByFile: Map<string, CSSVariableMetrics>;
522
- cssVarMetrics: CSSVariableMetrics;
565
+ /** CSS variable mangle entries per file; `varMangleMap` is merged from them on read. */
566
+ varMangleEntriesByFile: LazyAggregate<Array<[string, string]>, Record<string, CssVariableMangleValue>>;
567
+ readonly varMangleMap: Record<string, CssVariableMangleValue>;
568
+ /** CSS variable hoisting metrics per file; `cssVarMetrics` is totalled from them on read. */
569
+ cssVarMetricsByFile: LazyAggregate<CSSVariableMetrics, CSSVariableMetrics>;
570
+ readonly cssVarMetrics: CSSVariableMetrics;
523
571
  checksum: string;
524
572
  finalized: boolean;
525
573
  rootDir: string;
@@ -558,41 +606,6 @@ interface CSSVariableMetrics {
558
606
  * @returns A stable identity string, or a sentinel when unresolvable.
559
607
  */
560
608
  declare function resolveNativeCacheIdentity(): string;
561
- /**
562
- * Appends an `@source "<relPath>";` directive to a CSS module so Tailwind v4
563
- * scans the csszyx-generated safelist file.
564
- *
565
- * `@source` is position-independent in Tailwind v4 — it can appear anywhere in
566
- * the compiled CSS — so the directive is **appended as its own statement**
567
- * rather than spliced next to the `@import "tailwindcss…"` line. Matching the
568
- * import syntax is the source of a real defect: the split / manual Tailwind v4
569
- * setup (`@import "tailwindcss/utilities.css" layer(…)` or `… source(…)`, or an
570
- * import without a trailing `;`) does not match an import-anchored regex, so the
571
- * injection silently no-ops and every csszyx-only class (e.g. the static
572
- * `bg-primary/50` produced by `sz={{ bg: { color, op } }}`) gets no CSS while a
573
- * raw `className` still works. Appending is correct for every import form.
574
- *
575
- * @param code - CSS module source already known to import tailwindcss.
576
- * @param relPath - safelist path relative to this CSS file (posix, `./`-prefixed).
577
- * @returns the code with the directive appended, or `null` if it is already
578
- * present (idempotent — re-running the transform must not stack directives).
579
- */
580
- declare function appendTailwindSourceDirective(code: string, relPath: string): string | null;
581
- /**
582
- * Whether a CSS module actually imports the `tailwindcss` package, so the
583
- * `@source` directive should be appended.
584
- *
585
- * Tighter than a substring check on purpose: block comments are stripped first
586
- * (a commented-out `@import` must not trigger injection), and the package name
587
- * must end at a quote or a `/` subpath so a different package whose name merely
588
- * starts with `tailwindcss` (e.g. `tailwindcss-animate`) does not match. Import
589
- * options after the closing quote (`layer(…)`, `source(…)`) are irrelevant — the
590
- * match ends at the quote — so every real Tailwind v4 import form is covered.
591
- *
592
- * @param code - CSS module source.
593
- * @returns true if the module imports tailwindcss (exact or a subpath).
594
- */
595
- declare function cssImportsTailwind(code: string): boolean;
596
609
  /**
597
610
  * Whether the discovered class set contains at least one real Tailwind
598
611
  * candidate worth injecting an `@source` for — at least two characters and
@@ -929,21 +942,6 @@ declare function watchModeMangleMessage(): string;
929
942
  * @returns the warning text.
930
943
  */
931
944
  declare function realContentHashDisabledMessage(): string;
932
- /**
933
- * Computes the `@source` target path for a CSS module: the location of the
934
- * generated safelist file relative to the CSS file, in posix form and always
935
- * `./`- or `../`-prefixed so Tailwind treats it as a relative path.
936
- *
937
- * This is the real-world failure surface — a wrong relative path makes Tailwind
938
- * silently scan nothing (no error, no CSS), the same symptom as a missing
939
- * directive — so it is extracted and unit-tested rather than left inline.
940
- *
941
- * @param rootDir - project root where the safelist file is written.
942
- * @param safelistFilename - the safelist file name (e.g. `csszyx-classes.html`).
943
- * @param cssId - absolute path of the CSS module receiving the directive.
944
- * @returns the posix relative path from the CSS file to the safelist file.
945
- */
946
- declare function computeSafelistRelPath(rootDir: string, safelistFilename: string, cssId: string): string;
947
945
  /**
948
946
  * Whether transformed source text must be retained for global-var alias
949
947
  * validation. Retention is only consumed when `production.mangleGlobalVars`
@@ -1044,5 +1042,5 @@ declare const rollupPlugin: (options?: PartialCsszyxConfig) => InputPluginOption
1044
1042
  */
1045
1043
  declare const esbuildPlugin: (options?: PartialCsszyxConfig) => Plugin;
1046
1044
 
1047
- export { isMonorepoPackage as $, cssHasContentScope as A, cssImportsTailwind as B, unplugin as D, deleteRSCModuleRecord as E, emitMissingCssFallback as F, esbuildPlugin as H, extractGlobalVarAliasesForManifest as I, fileMayContainSafelistableSz as J, findLocalImportSources as K, findRSCBoundaryViolation as L, findRSCGraphViolation as N, hasInjectableTailwindCandidate as O, hasTokens as T, hasUseClientDirective as U, hasUseServerDirective as W, isAdvisoryDiagnostic as X, isCompileSourceOptedIn as Y, isHardIgnoredPath as Z, isMangleableCssId as _, isPackagesSkippedSource as a0, isRSCServerModule as a1, lateMangleCensusMessage as a2, mangleCodeClassesSync as a3, mangleEligibleClasses as a4, mangleHybridHazardMessage as a5, mergeThemes as a6, missingTailwindEntryMessage as a7, normalizeGlobalVarAliasesForCache as a8, parseThemeBlocks as a9, parseUtilityBlocks as aa, realContentHashDisabledMessage as ab, recordGlobalVarSourceFile as ac, resolveCompileSourceDirs as ad, resolveNativeCacheIdentity as ae, resolveQuietMode as af, rollupPlugin as ag, scanCustomPropertyNames as ah, shouldEmitMissingCssFallback as ai, shouldEmitWarning as aj, shouldTrackGlobalVarSources as ak, shouldWarnMissingTailwindEntry as al, shouldWarnUnscopedMonorepo as am, skippedSzFilesMessage as an, suppressedAdvisoryMessage as ao, unscopedMonorepoMessage as ap, vitePlugin as aq, watchModeMangleMessage as ar, webpackPlugin as as, allocateMangleTokens as s, appendTailwindSourceDirective as t, assertNoRSCBoundaryViolation as u, assertNoRSCGraphViolation as v, collectMangleHybridHazards as w, computeSafelistRelPath as x, createGlobalVarMapAssetSource as y, createRSCModuleRecord as z };
1045
+ export { lateMangleCensusMessage as $, deleteRSCModuleRecord as A, emitMissingCssFallback as B, esbuildPlugin as D, extractGlobalVarAliasesForManifest as E, fileMayContainSafelistableSz as F, findLocalImportSources as H, findRSCBoundaryViolation as I, findRSCGraphViolation as J, hasInjectableTailwindCandidate as K, hasTokens as L, hasUseClientDirective as N, hasUseServerDirective as O, isAdvisoryDiagnostic as T, isCompileSourceOptedIn as U, isHardIgnoredPath as W, isMangleableCssId as X, isMonorepoPackage as Y, isPackagesSkippedSource as Z, isRSCServerModule as _, mangleCodeClassesSync as a0, mangleEligibleClasses as a1, mangleHybridHazardMessage as a2, mergeThemes as a3, missingTailwindEntryMessage as a4, normalizeGlobalVarAliasesForCache as a5, parseThemeBlocks as a6, parseUtilityBlocks as a7, realContentHashDisabledMessage as a8, recordGlobalVarSourceFile as a9, resolveCompileSourceDirs as aa, resolveNativeCacheIdentity as ab, resolveQuietMode as ac, rollupPlugin as ad, scanCustomPropertyNames as ae, shouldEmitMissingCssFallback as af, shouldEmitWarning as ag, shouldTrackGlobalVarSources as ah, shouldWarnMissingTailwindEntry as ai, shouldWarnUnscopedMonorepo as aj, skippedSzFilesMessage as ak, suppressedAdvisoryMessage as al, unscopedMonorepoMessage as am, vitePlugin as an, watchModeMangleMessage as ao, webpackPlugin as ap, allocateMangleTokens as s, assertNoRSCBoundaryViolation as t, assertNoRSCGraphViolation as u, collectMangleHybridHazards as v, createGlobalVarMapAssetSource as w, createRSCModuleRecord as x, cssHasContentScope as y, unplugin as z };
1048
1046
  export type { CssVarScanResult as C, GlobalVarScanCacheKeyInput as G, MangleHybridHazards as M, PlanGlobalVarAliasesInput as P, QuietMode as Q, RewriteGlobalVarCssAliasesOptions as R, ScanGlobalVarCssOptions as S, ValidateGlobalVarAliasInputsOptions as V, GlobalVarAliasPlan as a, GlobalVarCssAliasRewriteResult as b, CreateGlobalVarAliasValidationOptionsInput as c, GlobalVarAliasValidationResult as d, CssVarDefinition as e, CssVarLocation as f, CssVarReference as g, GlobalVarAliasDiagnostic as h, GlobalVarAliasDiagnosticSeverity as i, GlobalVarAliasEntry as j, GlobalVarCodeSource as k, GlobalVarCssAssetSource as l, GlobalVarCssSource as m, GlobalVarScanCacheEntry as n, ParsedTheme as o, ParsedUtilities as p, RSCBoundaryViolation as q, RSCModuleRecord as r };