weapp-tailwindcss 5.2.9 → 5.2.11

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 (39) hide show
  1. package/dist/bundlers/shared/generator-css/class-selectors.d.ts +1 -0
  2. package/dist/bundlers/vite/generate-bundle/finalize/root-import-shell.d.ts +1 -0
  3. package/dist/bundlers/vite/utils.d.ts +2 -0
  4. package/dist/cli.cjs +4 -30
  5. package/dist/cli.js +4 -30
  6. package/dist/{context-CByXWyhQ.cjs → context-C3TryIjF.cjs} +8 -13
  7. package/dist/{context-BMkbwnH8.js → context-DbL0d-zB.js} +8 -13
  8. package/dist/core.cjs +1 -1
  9. package/dist/core.js +1 -1
  10. package/dist/{gulp-BWhCahA2.js → gulp-BLaGc0MJ.js} +3 -3
  11. package/dist/{gulp-BdoorWb5.cjs → gulp-DSrcDQsA.cjs} +4 -4
  12. package/dist/gulp.cjs +1 -1
  13. package/dist/gulp.js +1 -1
  14. package/dist/{hmr-timing-DiYnyg_W.cjs → hmr-timing-BnGBBJ6S.cjs} +2 -2
  15. package/dist/{hmr-timing-CJocHeZr.js → hmr-timing-DXyGw6jp.js} +18 -8
  16. package/dist/index.cjs +3 -3
  17. package/dist/index.js +3 -3
  18. package/dist/js/literal-transform.d.ts +1 -1
  19. package/dist/{pipeline-helpers-CsNLoEX1.cjs → pipeline-helpers-B5CzvTUJ.cjs} +1 -1
  20. package/dist/rspack.cjs +1 -1
  21. package/dist/rspack.js +1 -1
  22. package/dist/shared/classname-transform.d.ts +2 -3
  23. package/dist/{source-candidate-scan-signature-D9FXTD9a.cjs → source-candidate-scan-signature-GjsLzP8Z.cjs} +1 -1
  24. package/dist/{source-candidate-scan-signature-of-TmeOs.js → source-candidate-scan-signature-xgmxO8_F.js} +1 -1
  25. package/dist/{transform-GzbxfNGA.cjs → transform-9wbmvHcC.cjs} +1 -1
  26. package/dist/{transform-DhDe9eSf.js → transform-BlsDWgjt.js} +1 -1
  27. package/dist/{v4-generation-core-BjHT6qGC.cjs → v4-generation-core-D4zQcQqW.cjs} +22 -6
  28. package/dist/{vite-8l9_S4Qi.js → vite-BWmBFzgf.js} +36 -12
  29. package/dist/{vite-Dcx59GRQ.cjs → vite-DTDbD-95.cjs} +37 -13
  30. package/dist/vite.cjs +1 -1
  31. package/dist/vite.js +1 -1
  32. package/dist/weapp-tw-css-import-rewrite-loader.cjs +2 -2
  33. package/dist/{webpack-CzQrloDg.cjs → webpack-Bpovb6YE.cjs} +6 -6
  34. package/dist/{webpack-CkeFhPY2.js → webpack-CtUyQNqC.js} +4 -4
  35. package/dist/webpack.cjs +1 -1
  36. package/dist/webpack.js +1 -1
  37. package/dist/{wxml-IBzZSaQC.js → wxml-CWJc0yY-.js} +5 -31
  38. package/dist/{wxml-DSMNuUaP.cjs → wxml-DUIdXCVa.cjs} +4 -36
  39. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  import { n as _defineProperty } from "./object-Bvy6-w9r.js";
2
- import { _ as traverse$1, g as babelParse, i as analyzeSource, m as replaceWxml, n as generateCode, o as JsTokenUpdater, r as createAttributeMatcher, u as isClassContextLiteralPath } from "./wxml-IBzZSaQC.js";
2
+ import { g as traverse$1, h as babelParse, i as analyzeSource, n as generateCode, o as JsTokenUpdater, p as replaceWxml, r as createAttributeMatcher, u as isClassContextLiteralPath } from "./wxml-CWJc0yY-.js";
3
3
  import { splitCandidateTokens } from "@tailwindcss-mangle/engine";
4
4
  import MagicString from "magic-string";
5
5
  import { NodeTypes, parse } from "@vue/compiler-dom";
@@ -3,7 +3,7 @@ const require_generator = require("./generator-B0dCFlP1.cjs");
3
3
  require("./auto-DtU6f3X6.cjs");
4
4
  const require_object = require("./object-C_Vr6_S5.cjs");
5
5
  const require_options = require("./options-zpZez7qe.cjs");
6
- const require_wxml = require("./wxml-DSMNuUaP.cjs");
6
+ const require_wxml = require("./wxml-DUIdXCVa.cjs");
7
7
  const require_style_options = require("./style-options-COpQc8fr.cjs");
8
8
  let node_fs = require("node:fs");
9
9
  let node_path = require("node:path");
@@ -4265,6 +4265,11 @@ function collectGeneratedRawSourceCandidates(candidates, rawSource, escapeMap) {
4265
4265
  }
4266
4266
  return matched;
4267
4267
  }
4268
+ function collectGeneratedRawSourceCandidatesFromCss(candidates, cssSources, escapeMap) {
4269
+ const matched = /* @__PURE__ */ new Set();
4270
+ for (const css of cssSources) for (const candidate of collectGeneratedRawSourceCandidates(candidates, css, escapeMap)) matched.add(candidate);
4271
+ return matched;
4272
+ }
4268
4273
  //#endregion
4269
4274
  //#region src/bundlers/shared/generator-css/result-helpers.ts
4270
4275
  function collectCssRuleIdentityMarkers(source) {
@@ -5180,12 +5185,17 @@ async function validateCandidatesByGeneratorWithOwner(options) {
5180
5185
  //#endregion
5181
5186
  //#region src/bundlers/shared/v4-generation-core.ts
5182
5187
  function resolveGenerationOptions(options, mode) {
5183
- if (mode === "legacy") return options;
5184
- const scopeId = options.scope?.id ?? options.outputFile ?? options.file;
5185
- const compilationChanges = mergeCompilationDependencyChanges(options.compilationChanges, consumeCompilationScopeChanges(options.runtimeState, scopeId));
5186
- if (compilationChanges.length === 0) return options;
5187
- return {
5188
+ const physicalFile = stripRequestQuery(options.file);
5189
+ const normalizedOptions = physicalFile === options.file ? options : {
5188
5190
  ...options,
5191
+ file: physicalFile
5192
+ };
5193
+ if (mode === "legacy") return normalizedOptions;
5194
+ const scopeId = normalizedOptions.scope?.id ?? normalizedOptions.outputFile ?? normalizedOptions.file;
5195
+ const compilationChanges = mergeCompilationDependencyChanges(normalizedOptions.compilationChanges, consumeCompilationScopeChanges(normalizedOptions.runtimeState, scopeId));
5196
+ if (compilationChanges.length === 0) return normalizedOptions;
5197
+ return {
5198
+ ...normalizedOptions,
5189
5199
  compilationChanges,
5190
5200
  previousClassSet: void 0,
5191
5201
  previousCss: void 0
@@ -5342,6 +5352,12 @@ Object.defineProperty(exports, "collectFrameworkPostcssOptionsFromLoaderEntries"
5342
5352
  return collectFrameworkPostcssOptionsFromLoaderEntries;
5343
5353
  }
5344
5354
  });
5355
+ Object.defineProperty(exports, "collectGeneratedRawSourceCandidatesFromCss", {
5356
+ enumerable: true,
5357
+ get: function() {
5358
+ return collectGeneratedRawSourceCandidatesFromCss;
5359
+ }
5360
+ });
5345
5361
  Object.defineProperty(exports, "collectRawSourceClassSelectors", {
5346
5362
  enumerable: true,
5347
5363
  get: function() {
@@ -3,10 +3,10 @@ import { $ as hasTailwindSourceDirectives, B as stripMiniProgramCssSpecificityPl
3
3
  import { t as omitUndefined } from "./object-Bvy6-w9r.js";
4
4
  import { _ as resolveTailwindV4EntriesFromCssCached, a as findTailwindConfig, f as createSourceScanMatcher, h as resolveTailwindV4CssDependencies, i as resolveUniAppXOptions, l as getRuntimeClassSetSignature, m as discoverTailwindV4CssEntries, p as resolveSourceScanEntries, r as isUniAppXEnabled } from "./tailwindcss-2zdmASlM.js";
5
5
  import "./utils-MVwpU07P.js";
6
- import { A as createCssSourceTraceCacheSignature, B as finalizeCompilerShadowRun, C as createBundlerGeneratedCssMarker, D as finalizeMiniProgramCssStructure, E as stripBundlerGeneratedCssMarkers, J as disposeCompilerOwner, K as updateRuntimeCompilationBuildState, L as isPureLocalCssImportWrapper, N as processCachedTask, O as hasEmptyAtRuleBlockCandidate, P as createRuntimeClassSetManager, S as stripRequestQuery, T as parseBundlerGeneratedCssMarkerBlocks, U as createRuntimeCompilationBuildState, V as buildRuntimeCompilationSnapshot, Y as beginCompilerShadowRun, Z as AssetEmissionPlan, a as extractMarkedUserLayerComponentsCss, at as extractCandidatesFromSource, d as normalizeMiniProgramGeneratorCssSource, et as recordCompilationDependencyChanges, f as normalizeMiniProgramImportShell, h as captureFrameworkPostcssOptions, i as validateCandidatesByGenerator, it as isSourceCandidateRequest, j as createCssTokenSourceMap, k as annotateCssSourceTrace, nt as createSourceCandidateCollector, o as mergeMarkedUserLayerComponentsCss, p as scoreTailwindV4CssSourceFileMatch, q as createRuntimeAffectingSourceSignature, r as generateTailwindV4Css, t as createHmrTimingRecorder, tt as createCompilationDependencyChanges, u as runWithConcurrency, w as hasBundlerGeneratedCssMarker, x as isSourceStyleRequest } from "./hmr-timing-CJocHeZr.js";
7
- import { h as createDebug, m as replaceWxml } from "./wxml-IBzZSaQC.js";
8
- import { a as vitePluginName, c as collectRuntimeClassSet, d as refreshTailwindRuntimeState, f as normalizeFrameworkStylePlatform, l as createTailwindRuntimeReadyPromise, n as normalizeStyleHandlerMajorVersion, o as shouldSkipJsTransform, s as toCustomAttributesEntities, t as getCompilerContext } from "./context-BMkbwnH8.js";
9
- import { _ as createBuiltinViteStyleInjectorPlugins, a as createCandidateSignature, c as getSnapshotHash, d as classifyRuntimeEntry, f as resolvePackageDir, g as toAbsoluteOutputPath, h as resolveOutputSpecifier, i as createScopedGeneratorSourceTraceMap, l as hasRuntimeAffectingSourceChanges, m as normalizeOutputPathKey, n as createScopedGeneratorCandidateSignature, o as createJsHashSalt, p as resolvePluginDisabledState, r as createScopedGeneratorRuntime, s as createLinkedImpactSignature, t as createSourceCandidateScanSignature, u as summarizeStringDiff, x as resolveViteFrameworkProfile, y as viteStyleInjectorDelegates } from "./source-candidate-scan-signature-of-TmeOs.js";
6
+ import { A as annotateCssSourceTrace, C as stripRequestQuery, D as stripBundlerGeneratedCssMarkers, E as parseBundlerGeneratedCssMarkerBlocks, F as createRuntimeClassSetManager, H as buildRuntimeCompilationSnapshot, J as createRuntimeAffectingSourceSignature, M as createCssTokenSourceMap, O as finalizeMiniProgramCssStructure, P as processCachedTask, Q as AssetEmissionPlan, R as isPureLocalCssImportWrapper, S as isSourceStyleRequest, T as hasBundlerGeneratedCssMarker, V as finalizeCompilerShadowRun, W as createRuntimeCompilationBuildState, X as beginCompilerShadowRun, Y as disposeCompilerOwner, a as extractMarkedUserLayerComponentsCss, at as isSourceCandidateRequest, d as runWithConcurrency, f as normalizeMiniProgramGeneratorCssSource, g as captureFrameworkPostcssOptions, i as validateCandidatesByGenerator, j as createCssSourceTraceCacheSignature, k as hasEmptyAtRuleBlockCandidate, m as scoreTailwindV4CssSourceFileMatch, nt as createCompilationDependencyChanges, o as mergeMarkedUserLayerComponentsCss, ot as extractCandidatesFromSource, p as normalizeMiniProgramImportShell, q as updateRuntimeCompilationBuildState, r as generateTailwindV4Css, rt as createSourceCandidateCollector, s as collectGeneratedRawSourceCandidatesFromCss, t as createHmrTimingRecorder, tt as recordCompilationDependencyChanges, w as createBundlerGeneratedCssMarker } from "./hmr-timing-DXyGw6jp.js";
7
+ import { m as createDebug, p as replaceWxml } from "./wxml-CWJc0yY-.js";
8
+ import { a as vitePluginName, c as collectRuntimeClassSet, d as refreshTailwindRuntimeState, f as normalizeFrameworkStylePlatform, l as createTailwindRuntimeReadyPromise, n as normalizeStyleHandlerMajorVersion, o as shouldSkipJsTransform, s as toCustomAttributesEntities, t as getCompilerContext } from "./context-DbL0d-zB.js";
9
+ import { _ as createBuiltinViteStyleInjectorPlugins, a as createCandidateSignature, c as getSnapshotHash, d as classifyRuntimeEntry, f as resolvePackageDir, g as toAbsoluteOutputPath, h as resolveOutputSpecifier, i as createScopedGeneratorSourceTraceMap, l as hasRuntimeAffectingSourceChanges, m as normalizeOutputPathKey, n as createScopedGeneratorCandidateSignature, o as createJsHashSalt, p as resolvePluginDisabledState, r as createScopedGeneratorRuntime, s as createLinkedImpactSignature, t as createSourceCandidateScanSignature, u as summarizeStringDiff, x as resolveViteFrameworkProfile, y as viteStyleInjectorDelegates } from "./source-candidate-scan-signature-xgmxO8_F.js";
10
10
  import { t as logger$1 } from "./logger-BNzxZbZj.js";
11
11
  import fs, { existsSync, readFileSync, realpathSync } from "node:fs";
12
12
  import path from "node:path";
@@ -1737,6 +1737,16 @@ const htmlLangRE = /\.html?(?:$|\?)/;
1737
1737
  function isCSSRequest(request) {
1738
1738
  return cssLangRE.test(request) || isSourceStyleRequest(request);
1739
1739
  }
1740
+ function isWeappViteSidecarRequest(request) {
1741
+ const queryIndex = request.indexOf("?");
1742
+ if (queryIndex < 0) return false;
1743
+ const hashIndex = request.indexOf("#", queryIndex);
1744
+ const query = request.slice(queryIndex + 1, hashIndex < 0 ? void 0 : hashIndex);
1745
+ return new URLSearchParams(query).has("weapp-vite-sidecar");
1746
+ }
1747
+ function resolveViteCssPipelineRequestFile(request) {
1748
+ return isWeappViteSidecarRequest(request) ? cleanUrl(request) : request;
1749
+ }
1740
1750
  function isHTMLRequest(request) {
1741
1751
  return htmlLangRE.test(request);
1742
1752
  }
@@ -5264,13 +5274,14 @@ function normalizeRootMiniProgramImportShellAssets(bundle, options) {
5264
5274
  //#endregion
5265
5275
  //#region src/bundlers/vite/generate-bundle/finalize/bundle.ts
5266
5276
  async function finalizeGenerateBundle(options) {
5267
- const { activeProcessCacheKeys, activeProcessHashKeys, activeViteCssCacheFiles, bundle, bundleFiles, cache, cssTaskFactories, cssPipelineStrategy, createCssPipelineContext, debug, defaultStyleOutputExtension, formatIteration, generatorCandidateSignature, generatorRuntime, getCssHandlerOptions, getSourceCandidateSourcesForEntries, getSourceCandidatesForEntries, getViteCssCacheStats, getViteProcessedCssAssetResults, hmrTimingRecorder, hmrTimingStartedAt, isHarmonyAppStyleTarget, isNativeAppStyleTarget, isViteProcessedCssAsset, isWebGeneratorTarget, jsAfterCss, jsTaskFactories, lastCssResultByFile, lastCssSourceHashByFile, linkedByEntry, markCssAssetProcessed, metrics, onEnd, onUpdate, opts, outDir, pendingLinkedUpdates, pendingRememberedCssReplayUpdates, pruneViteCssCaches, recordCssAssetResult, recordTimingDetail, recordViteProcessedCssAssetResult, rootDir, runtime, runtimeState, shouldPreserveAppCssExtension, snapshot, sourceCandidates, sourceRoot, state, styleHandler, tasks, timingDetails, transformRuntime, transformWebTargetCss, useIncrementalMode } = options;
5277
+ const { activeProcessCacheKeys, activeProcessHashKeys, activeViteCssCacheFiles, bundle, bundleFiles, cache, cssTaskFactories, cssPipelineStrategy, createCssPipelineContext, debug, defaultStyleOutputExtension, formatIteration, generatorCandidateSignature, generatorRuntime, getCssHandlerOptions, getSourceCandidateSourcesForEntries, getSourceCandidatesForEntries, getViteCssCacheStats, getViteProcessedCssAssetResults, hmrTimingRecorder, hmrTimingStartedAt, isHarmonyAppStyleTarget, isNativeAppStyleTarget, isViteProcessedCssAsset, isWebGeneratorTarget, jsAfterCss, jsTaskFactories, lastCssResultByFile, lastCssSourceHashByFile, linkedByEntry, markCssAssetProcessed, metrics, onEnd, onUpdate, opts, outDir, pendingLinkedUpdates, pendingRememberedCssReplayUpdates, prepareJsTransformRuntime, pruneViteCssCaches, recordCssAssetResult, recordTimingDetail, recordViteProcessedCssAssetResult, rootDir, runtime, runtimeState, shouldPreserveAppCssExtension, snapshot, sourceCandidates, sourceRoot, state, styleHandler, tasks, timingDetails, transformRuntime, transformWebTargetCss, useIncrementalMode } = options;
5268
5278
  const tasksStart = performance.now();
5269
5279
  if (cssTaskFactories.length > 0) {
5270
5280
  const cssTask = runWithConcurrency(cssTaskFactories, resolveViteCssTaskConcurrency(useIncrementalMode, runtimeState.tailwindRuntime.majorVersion)).then(() => void 0);
5271
5281
  if (jsAfterCss) await cssTask;
5272
5282
  else tasks.push(cssTask);
5273
5283
  }
5284
+ prepareJsTransformRuntime?.();
5274
5285
  if (jsTaskFactories.length > 0) tasks.push(runWithConcurrency(jsTaskFactories).then(() => void 0));
5275
5286
  await Promise.all(tasks);
5276
5287
  recordTimingDetail("tasks", tasksStart);
@@ -6169,7 +6180,7 @@ function resolvePreprocessorTransform(code, id, lang, options) {
6169
6180
  //#region src/uni-app-x/vite.ts
6170
6181
  let transformUVuePromise;
6171
6182
  function loadTransformUVue() {
6172
- transformUVuePromise ?? (transformUVuePromise = import("./transform-DhDe9eSf.js").then((mod) => mod.transformUVue));
6183
+ transformUVuePromise ?? (transformUVuePromise = import("./transform-BlsDWgjt.js").then((mod) => mod.transformUVue));
6173
6184
  return transformUVuePromise;
6174
6185
  }
6175
6186
  const UVUE_NVUE_QUERY_RE = /\.(?:uvue|nvue)(?:\?.*)?$/;
@@ -7502,7 +7513,8 @@ function createGenerateBundleHook$1(context) {
7502
7513
  const collectedGeneratorCandidates = /* @__PURE__ */ new Set([...runtime, ...sourceCandidates]);
7503
7514
  const filteredGeneratorCandidates = shouldFilterTailwindV4MiniProgramCandidates ? filterUnsupportedMiniProgramTailwindV4Candidates(collectedGeneratorCandidates) : collectedGeneratorCandidates;
7504
7515
  const filteredSourceCandidates = shouldFilterTailwindV4MiniProgramCandidates ? filterUnsupportedMiniProgramTailwindV4Candidates(sourceCandidates) : sourceCandidates;
7505
- const transformRuntime = shouldFilterTailwindV4MiniProgramCandidates ? new Set(runtime) : new Set(filteredGeneratorCandidates);
7516
+ const shouldTransformJsBundle = !isWebGeneratorTarget || context.cssPipelineStrategy?.shouldTransformServeJs?.(cssPipelineContext) === true;
7517
+ const transformRuntime = isWebGeneratorTarget ? /* @__PURE__ */ new Set() : shouldFilterTailwindV4MiniProgramCandidates ? new Set(runtime) : new Set(filteredGeneratorCandidates);
7506
7518
  const generatorRuntime = filteredGeneratorCandidates;
7507
7519
  await validateRuntimeCandidates({
7508
7520
  cssEntries: snapshot.entries.filter((entry) => entry.type === "css" && entry.output.type === "asset"),
@@ -7591,7 +7603,7 @@ function createGenerateBundleHook$1(context) {
7591
7603
  if (forceRuntimeRefreshBySource) debug("runtimeSet forced refresh due to source changes: html=%d js=%d", snapshot.runtimeAffectingChangedByType.html.size, snapshot.runtimeAffectingChangedByType.js.size);
7592
7604
  debug("get runtimeSet, class count: %d, transform class count: %d", runtime.size, transformRuntime.size);
7593
7605
  const runtimeSignature = getRuntimeClassSetSignature(runtimeState.tailwindRuntime) ?? "runtime:missing";
7594
- const transformRuntimeSignature = createCandidateSignature(transformRuntime);
7606
+ const transformRuntimeSignature = isWebGeneratorTarget ? generatorCandidateSignature : createCandidateSignature(transformRuntime);
7595
7607
  const shouldProcessTailwindGeneration = !useIncrementalMode || hasRuntimeAffectingChanges || generatorCandidatesChanged || snapshot.processFiles.css.size > 0;
7596
7608
  const { applyLinkedUpdates, pendingLinkedUpdates } = createLinkedUpdateHelpers({
7597
7609
  jsEntries,
@@ -7614,7 +7626,6 @@ function createGenerateBundleHook$1(context) {
7614
7626
  ...extra
7615
7627
  } : void 0);
7616
7628
  };
7617
- const shouldTransformJsBundle = !isWebGeneratorTarget || context.cssPipelineStrategy?.shouldTransformServeJs?.(cssPipelineContext) === true;
7618
7629
  const linkedByEntry = useIncrementalMode ? /* @__PURE__ */ new Map() : void 0;
7619
7630
  const sharedCssResultCache = /* @__PURE__ */ new Map();
7620
7631
  const activeProcessCacheKeys = /* @__PURE__ */ new Set();
@@ -7883,6 +7894,17 @@ function createGenerateBundleHook$1(context) {
7883
7894
  useIncrementalMode
7884
7895
  });
7885
7896
  recordTimingDetail("rememberedCss.plan", rememberedCssStartedAt);
7897
+ const prepareJsTransformRuntime = isWebGeneratorTarget && shouldTransformJsBundle ? () => {
7898
+ transformRuntime.clear();
7899
+ const cssSources = /* @__PURE__ */ new Set();
7900
+ for (const output of Object.values(bundle)) {
7901
+ if (output.type !== "asset" || !opts.cssMatcher(output.fileName)) continue;
7902
+ cssSources.add(typeof output.source === "string" ? output.source : Buffer.from(output.source).toString());
7903
+ }
7904
+ for (const [, record] of getViteProcessedCssAssetResults?.() ?? []) cssSources.add(typeof record === "string" ? record : record.css);
7905
+ for (const candidate of collectGeneratedRawSourceCandidatesFromCss(generatorRuntime, cssSources, opts.escapeMap)) transformRuntime.add(candidate);
7906
+ debug("rebuild webview JS transform class set from generated CSS: %d", transformRuntime.size);
7907
+ } : void 0;
7886
7908
  await finalizeGenerateBundle({
7887
7909
  activeProcessCacheKeys,
7888
7910
  activeProcessHashKeys,
@@ -7909,7 +7931,7 @@ function createGenerateBundleHook$1(context) {
7909
7931
  isNativeAppStyleTarget,
7910
7932
  isViteProcessedCssAsset,
7911
7933
  isWebGeneratorTarget,
7912
- jsAfterCss: shouldFilterTailwindV4MiniProgramCandidates && cssTaskFactories.length > 0,
7934
+ jsAfterCss: (shouldFilterTailwindV4MiniProgramCandidates || isWebGeneratorTarget && shouldTransformJsBundle) && cssTaskFactories.length > 0,
7913
7935
  jsTaskFactories,
7914
7936
  lastCssResultByFile,
7915
7937
  lastCssSourceHashByFile,
@@ -7922,6 +7944,7 @@ function createGenerateBundleHook$1(context) {
7922
7944
  outDir,
7923
7945
  pendingLinkedUpdates,
7924
7946
  pendingRememberedCssReplayUpdates,
7947
+ prepareJsTransformRuntime,
7925
7948
  pruneViteCssCaches,
7926
7949
  recordCssAssetResult,
7927
7950
  recordTimingDetail,
@@ -8410,6 +8433,7 @@ function normalizeKnownSfcSourceKey(file) {
8410
8433
  return normalizeOutputPathKey(path.resolve(cleanUrl(file)));
8411
8434
  }
8412
8435
  function shouldCollectTransformedSourceCandidates(id) {
8436
+ if (isWeappViteSidecarRequest(id)) return false;
8413
8437
  if (id.search(/[?#]/) < 0) return true;
8414
8438
  const file = cleanUrl(id);
8415
8439
  return !SFC_COMPONENT_FILE_RE.test(file);
@@ -9378,7 +9402,7 @@ function createFrameworkSourceCandidatesPlugin(options) {
9378
9402
  let transformedCode = code;
9379
9403
  if (options.shouldOwnTailwindGeneration && !options.resolveCurrentGeneratorBranch().isWeb && isCSSRequest(id)) transformedCode = options.transformEarlyMiniProgramCss(code);
9380
9404
  const shouldReturnTransformedCode = transformedCode !== code;
9381
- if (options.shouldOwnTailwindGeneration) {
9405
+ if (options.shouldOwnTailwindGeneration && shouldCollectTransformedSourceCandidates(id)) {
9382
9406
  options.cssMemory.rememberKnownSfcSource(id, transformedCode);
9383
9407
  if (isCSSRequest(id) && hasTailwindRootDirectives(transformedCode, { importFallback: options.resolveCurrentGeneratorOptions().importFallback })) options.rememberTailwindRootCssModule(id);
9384
9408
  }
@@ -10100,7 +10124,7 @@ function createViteFrameworkPlugins$1(options = {}, frameworkBranch) {
10100
10124
  await sourceScanSession.waitForPendingSyncs();
10101
10125
  const file = cleanUrl(id);
10102
10126
  const inferredSfcStyleRequest = isSfcStyleSourceFile(file) ? resolveSfcStyleRequestFromKnownSource(file, cssMemory.getKnownSfcSource(file), code) : file;
10103
- const requestFile = isCSSRequest(id) ? inferredSfcStyleRequest === file ? id : inferredSfcStyleRequest : inferredSfcStyleRequest;
10127
+ const requestFile = isCSSRequest(id) ? inferredSfcStyleRequest === file ? resolveViteCssPipelineRequestFile(id) : inferredSfcStyleRequest : inferredSfcStyleRequest;
10104
10128
  if (!isCSSRequest(requestFile) || opts.htmlMatcher(file) || isHTMLRequest(file)) return;
10105
10129
  const generatorCode = normalizeEmptyTailwindCustomVariants(code);
10106
10130
  const rootDir = resolvedConfig?.root ? path.resolve(resolvedConfig.root) : process$1.cwd();
@@ -4,13 +4,13 @@ const require_generator = require("./generator-B0dCFlP1.cjs");
4
4
  const require_object = require("./object-C_Vr6_S5.cjs");
5
5
  const require_options = require("./options-zpZez7qe.cjs");
6
6
  require("./utils-CuKLf1Zv.cjs");
7
- const require_v4_generation_core = require("./v4-generation-core-BjHT6qGC.cjs");
8
- const require_wxml = require("./wxml-DSMNuUaP.cjs");
9
- const require_hmr_timing = require("./hmr-timing-DiYnyg_W.cjs");
10
- const require_context = require("./context-CByXWyhQ.cjs");
7
+ const require_v4_generation_core = require("./v4-generation-core-D4zQcQqW.cjs");
8
+ const require_wxml = require("./wxml-DUIdXCVa.cjs");
9
+ const require_hmr_timing = require("./hmr-timing-BnGBBJ6S.cjs");
10
+ const require_context = require("./context-C3TryIjF.cjs");
11
11
  const require_tailwindcss = require("./tailwindcss-LtnGCxF0.cjs");
12
12
  const require_style_options = require("./style-options-COpQc8fr.cjs");
13
- const require_source_candidate_scan_signature = require("./source-candidate-scan-signature-D9FXTD9a.cjs");
13
+ const require_source_candidate_scan_signature = require("./source-candidate-scan-signature-GjsLzP8Z.cjs");
14
14
  require("./logger-TlKT3xmR.cjs");
15
15
  const require_css_imports = require("./css-imports-DfNC3e6a.cjs");
16
16
  let node_fs = require("node:fs");
@@ -1746,6 +1746,16 @@ const htmlLangRE = /\.html?(?:$|\?)/;
1746
1746
  function isCSSRequest(request) {
1747
1747
  return cssLangRE.test(request) || require_v4_generation_core.isSourceStyleRequest(request);
1748
1748
  }
1749
+ function isWeappViteSidecarRequest(request) {
1750
+ const queryIndex = request.indexOf("?");
1751
+ if (queryIndex < 0) return false;
1752
+ const hashIndex = request.indexOf("#", queryIndex);
1753
+ const query = request.slice(queryIndex + 1, hashIndex < 0 ? void 0 : hashIndex);
1754
+ return new URLSearchParams(query).has("weapp-vite-sidecar");
1755
+ }
1756
+ function resolveViteCssPipelineRequestFile(request) {
1757
+ return isWeappViteSidecarRequest(request) ? (0, _weapp_tailwindcss_shared.cleanUrl)(request) : request;
1758
+ }
1749
1759
  function isHTMLRequest(request) {
1750
1760
  return htmlLangRE.test(request);
1751
1761
  }
@@ -5273,13 +5283,14 @@ function normalizeRootMiniProgramImportShellAssets(bundle, options) {
5273
5283
  //#endregion
5274
5284
  //#region src/bundlers/vite/generate-bundle/finalize/bundle.ts
5275
5285
  async function finalizeGenerateBundle(options) {
5276
- const { activeProcessCacheKeys, activeProcessHashKeys, activeViteCssCacheFiles, bundle, bundleFiles, cache, cssTaskFactories, cssPipelineStrategy, createCssPipelineContext, debug, defaultStyleOutputExtension, formatIteration, generatorCandidateSignature, generatorRuntime, getCssHandlerOptions, getSourceCandidateSourcesForEntries, getSourceCandidatesForEntries, getViteCssCacheStats, getViteProcessedCssAssetResults, hmrTimingRecorder, hmrTimingStartedAt, isHarmonyAppStyleTarget, isNativeAppStyleTarget, isViteProcessedCssAsset, isWebGeneratorTarget, jsAfterCss, jsTaskFactories, lastCssResultByFile, lastCssSourceHashByFile, linkedByEntry, markCssAssetProcessed, metrics, onEnd, onUpdate, opts, outDir, pendingLinkedUpdates, pendingRememberedCssReplayUpdates, pruneViteCssCaches, recordCssAssetResult, recordTimingDetail, recordViteProcessedCssAssetResult, rootDir, runtime, runtimeState, shouldPreserveAppCssExtension, snapshot, sourceCandidates, sourceRoot, state, styleHandler, tasks, timingDetails, transformRuntime, transformWebTargetCss, useIncrementalMode } = options;
5286
+ const { activeProcessCacheKeys, activeProcessHashKeys, activeViteCssCacheFiles, bundle, bundleFiles, cache, cssTaskFactories, cssPipelineStrategy, createCssPipelineContext, debug, defaultStyleOutputExtension, formatIteration, generatorCandidateSignature, generatorRuntime, getCssHandlerOptions, getSourceCandidateSourcesForEntries, getSourceCandidatesForEntries, getViteCssCacheStats, getViteProcessedCssAssetResults, hmrTimingRecorder, hmrTimingStartedAt, isHarmonyAppStyleTarget, isNativeAppStyleTarget, isViteProcessedCssAsset, isWebGeneratorTarget, jsAfterCss, jsTaskFactories, lastCssResultByFile, lastCssSourceHashByFile, linkedByEntry, markCssAssetProcessed, metrics, onEnd, onUpdate, opts, outDir, pendingLinkedUpdates, pendingRememberedCssReplayUpdates, prepareJsTransformRuntime, pruneViteCssCaches, recordCssAssetResult, recordTimingDetail, recordViteProcessedCssAssetResult, rootDir, runtime, runtimeState, shouldPreserveAppCssExtension, snapshot, sourceCandidates, sourceRoot, state, styleHandler, tasks, timingDetails, transformRuntime, transformWebTargetCss, useIncrementalMode } = options;
5277
5287
  const tasksStart = performance.now();
5278
5288
  if (cssTaskFactories.length > 0) {
5279
5289
  const cssTask = require_v4_generation_core.runWithConcurrency(cssTaskFactories, resolveViteCssTaskConcurrency(useIncrementalMode, runtimeState.tailwindRuntime.majorVersion)).then(() => void 0);
5280
5290
  if (jsAfterCss) await cssTask;
5281
5291
  else tasks.push(cssTask);
5282
5292
  }
5293
+ prepareJsTransformRuntime?.();
5283
5294
  if (jsTaskFactories.length > 0) tasks.push(require_v4_generation_core.runWithConcurrency(jsTaskFactories).then(() => void 0));
5284
5295
  await Promise.all(tasks);
5285
5296
  recordTimingDetail("tasks", tasksStart);
@@ -6178,7 +6189,7 @@ function resolvePreprocessorTransform(code, id, lang, options) {
6178
6189
  //#region src/uni-app-x/vite.ts
6179
6190
  let transformUVuePromise;
6180
6191
  function loadTransformUVue() {
6181
- transformUVuePromise ?? (transformUVuePromise = Promise.resolve().then(() => require("./transform-GzbxfNGA.cjs")).then((mod) => mod.transformUVue));
6192
+ transformUVuePromise ?? (transformUVuePromise = Promise.resolve().then(() => require("./transform-9wbmvHcC.cjs")).then((mod) => mod.transformUVue));
6182
6193
  return transformUVuePromise;
6183
6194
  }
6184
6195
  const UVUE_NVUE_QUERY_RE = /\.(?:uvue|nvue)(?:\?.*)?$/;
@@ -7511,7 +7522,8 @@ function createGenerateBundleHook$1(context) {
7511
7522
  const collectedGeneratorCandidates = /* @__PURE__ */ new Set([...runtime, ...sourceCandidates]);
7512
7523
  const filteredGeneratorCandidates = shouldFilterTailwindV4MiniProgramCandidates ? require_generator.filterUnsupportedMiniProgramTailwindV4Candidates(collectedGeneratorCandidates) : collectedGeneratorCandidates;
7513
7524
  const filteredSourceCandidates = shouldFilterTailwindV4MiniProgramCandidates ? require_generator.filterUnsupportedMiniProgramTailwindV4Candidates(sourceCandidates) : sourceCandidates;
7514
- const transformRuntime = shouldFilterTailwindV4MiniProgramCandidates ? new Set(runtime) : new Set(filteredGeneratorCandidates);
7525
+ const shouldTransformJsBundle = !isWebGeneratorTarget || context.cssPipelineStrategy?.shouldTransformServeJs?.(cssPipelineContext) === true;
7526
+ const transformRuntime = isWebGeneratorTarget ? /* @__PURE__ */ new Set() : shouldFilterTailwindV4MiniProgramCandidates ? new Set(runtime) : new Set(filteredGeneratorCandidates);
7515
7527
  const generatorRuntime = filteredGeneratorCandidates;
7516
7528
  await validateRuntimeCandidates({
7517
7529
  cssEntries: snapshot.entries.filter((entry) => entry.type === "css" && entry.output.type === "asset"),
@@ -7600,7 +7612,7 @@ function createGenerateBundleHook$1(context) {
7600
7612
  if (forceRuntimeRefreshBySource) debug("runtimeSet forced refresh due to source changes: html=%d js=%d", snapshot.runtimeAffectingChangedByType.html.size, snapshot.runtimeAffectingChangedByType.js.size);
7601
7613
  debug("get runtimeSet, class count: %d, transform class count: %d", runtime.size, transformRuntime.size);
7602
7614
  const runtimeSignature = require_tailwindcss.getRuntimeClassSetSignature(runtimeState.tailwindRuntime) ?? "runtime:missing";
7603
- const transformRuntimeSignature = require_source_candidate_scan_signature.createCandidateSignature(transformRuntime);
7615
+ const transformRuntimeSignature = isWebGeneratorTarget ? generatorCandidateSignature : require_source_candidate_scan_signature.createCandidateSignature(transformRuntime);
7604
7616
  const shouldProcessTailwindGeneration = !useIncrementalMode || hasRuntimeAffectingChanges || generatorCandidatesChanged || snapshot.processFiles.css.size > 0;
7605
7617
  const { applyLinkedUpdates, pendingLinkedUpdates } = createLinkedUpdateHelpers({
7606
7618
  jsEntries,
@@ -7623,7 +7635,6 @@ function createGenerateBundleHook$1(context) {
7623
7635
  ...extra
7624
7636
  } : void 0);
7625
7637
  };
7626
- const shouldTransformJsBundle = !isWebGeneratorTarget || context.cssPipelineStrategy?.shouldTransformServeJs?.(cssPipelineContext) === true;
7627
7638
  const linkedByEntry = useIncrementalMode ? /* @__PURE__ */ new Map() : void 0;
7628
7639
  const sharedCssResultCache = /* @__PURE__ */ new Map();
7629
7640
  const activeProcessCacheKeys = /* @__PURE__ */ new Set();
@@ -7892,6 +7903,17 @@ function createGenerateBundleHook$1(context) {
7892
7903
  useIncrementalMode
7893
7904
  });
7894
7905
  recordTimingDetail("rememberedCss.plan", rememberedCssStartedAt);
7906
+ const prepareJsTransformRuntime = isWebGeneratorTarget && shouldTransformJsBundle ? () => {
7907
+ transformRuntime.clear();
7908
+ const cssSources = /* @__PURE__ */ new Set();
7909
+ for (const output of Object.values(bundle)) {
7910
+ if (output.type !== "asset" || !opts.cssMatcher(output.fileName)) continue;
7911
+ cssSources.add(typeof output.source === "string" ? output.source : node_buffer.Buffer.from(output.source).toString());
7912
+ }
7913
+ for (const [, record] of getViteProcessedCssAssetResults?.() ?? []) cssSources.add(typeof record === "string" ? record : record.css);
7914
+ for (const candidate of require_v4_generation_core.collectGeneratedRawSourceCandidatesFromCss(generatorRuntime, cssSources, opts.escapeMap)) transformRuntime.add(candidate);
7915
+ debug("rebuild webview JS transform class set from generated CSS: %d", transformRuntime.size);
7916
+ } : void 0;
7895
7917
  await finalizeGenerateBundle({
7896
7918
  activeProcessCacheKeys,
7897
7919
  activeProcessHashKeys,
@@ -7918,7 +7940,7 @@ function createGenerateBundleHook$1(context) {
7918
7940
  isNativeAppStyleTarget,
7919
7941
  isViteProcessedCssAsset,
7920
7942
  isWebGeneratorTarget,
7921
- jsAfterCss: shouldFilterTailwindV4MiniProgramCandidates && cssTaskFactories.length > 0,
7943
+ jsAfterCss: (shouldFilterTailwindV4MiniProgramCandidates || isWebGeneratorTarget && shouldTransformJsBundle) && cssTaskFactories.length > 0,
7922
7944
  jsTaskFactories,
7923
7945
  lastCssResultByFile,
7924
7946
  lastCssSourceHashByFile,
@@ -7931,6 +7953,7 @@ function createGenerateBundleHook$1(context) {
7931
7953
  outDir,
7932
7954
  pendingLinkedUpdates,
7933
7955
  pendingRememberedCssReplayUpdates,
7956
+ prepareJsTransformRuntime,
7934
7957
  pruneViteCssCaches,
7935
7958
  recordCssAssetResult,
7936
7959
  recordTimingDetail,
@@ -8419,6 +8442,7 @@ function normalizeKnownSfcSourceKey(file) {
8419
8442
  return require_source_candidate_scan_signature.normalizeOutputPathKey(node_path.default.resolve((0, _weapp_tailwindcss_shared.cleanUrl)(file)));
8420
8443
  }
8421
8444
  function shouldCollectTransformedSourceCandidates(id) {
8445
+ if (isWeappViteSidecarRequest(id)) return false;
8422
8446
  if (id.search(/[?#]/) < 0) return true;
8423
8447
  const file = (0, _weapp_tailwindcss_shared.cleanUrl)(id);
8424
8448
  return !SFC_COMPONENT_FILE_RE.test(file);
@@ -9359,7 +9383,7 @@ function createFrameworkSourceCandidatesPlugin(options) {
9359
9383
  let transformedCode = code;
9360
9384
  if (options.shouldOwnTailwindGeneration && !options.resolveCurrentGeneratorBranch().isWeb && isCSSRequest(id)) transformedCode = options.transformEarlyMiniProgramCss(code);
9361
9385
  const shouldReturnTransformedCode = transformedCode !== code;
9362
- if (options.shouldOwnTailwindGeneration) {
9386
+ if (options.shouldOwnTailwindGeneration && shouldCollectTransformedSourceCandidates(id)) {
9363
9387
  options.cssMemory.rememberKnownSfcSource(id, transformedCode);
9364
9388
  if (isCSSRequest(id) && require_generator.hasTailwindRootDirectives(transformedCode, { importFallback: options.resolveCurrentGeneratorOptions().importFallback })) options.rememberTailwindRootCssModule(id);
9365
9389
  }
@@ -10081,7 +10105,7 @@ function createViteFrameworkPlugins$1(options = {}, frameworkBranch) {
10081
10105
  await sourceScanSession.waitForPendingSyncs();
10082
10106
  const file = (0, _weapp_tailwindcss_shared.cleanUrl)(id);
10083
10107
  const inferredSfcStyleRequest = isSfcStyleSourceFile(file) ? resolveSfcStyleRequestFromKnownSource(file, cssMemory.getKnownSfcSource(file), code) : file;
10084
- const requestFile = isCSSRequest(id) ? inferredSfcStyleRequest === file ? id : inferredSfcStyleRequest : inferredSfcStyleRequest;
10108
+ const requestFile = isCSSRequest(id) ? inferredSfcStyleRequest === file ? resolveViteCssPipelineRequestFile(id) : inferredSfcStyleRequest : inferredSfcStyleRequest;
10085
10109
  if (!isCSSRequest(requestFile) || opts.htmlMatcher(file) || isHTMLRequest(file)) return;
10086
10110
  const generatorCode = require_generator.normalizeEmptyTailwindCustomVariants(code);
10087
10111
  const rootDir = resolvedConfig?.root ? node_path.default.resolve(resolvedConfig.root) : node_process.default.cwd();
package/dist/vite.cjs CHANGED
@@ -1,4 +1,4 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_vite = require("./vite-Dcx59GRQ.cjs");
2
+ const require_vite = require("./vite-DTDbD-95.cjs");
3
3
  exports.WeappTailwindcss = require_vite.WeappTailwindcss;
4
4
  exports.weappTailwindcss = require_vite.WeappTailwindcss;
package/dist/vite.js CHANGED
@@ -1,2 +1,2 @@
1
- import { t as WeappTailwindcss } from "./vite-8l9_S4Qi.js";
1
+ import { t as WeappTailwindcss } from "./vite-BWmBFzgf.js";
2
2
  export { WeappTailwindcss, WeappTailwindcss as weappTailwindcss };
@@ -5,10 +5,10 @@ Object.defineProperties(exports, {
5
5
  const require_rolldown_runtime = require("./rolldown-runtime-CVvi-lCc.cjs");
6
6
  const require_generator = require("./generator-B0dCFlP1.cjs");
7
7
  const require_options = require("./options-zpZez7qe.cjs");
8
- const require_v4_generation_core = require("./v4-generation-core-BjHT6qGC.cjs");
8
+ const require_v4_generation_core = require("./v4-generation-core-D4zQcQqW.cjs");
9
9
  const require_style_options = require("./style-options-COpQc8fr.cjs");
10
10
  const require_css_imports = require("./css-imports-DfNC3e6a.cjs");
11
- const require_pipeline_helpers = require("./pipeline-helpers-CsNLoEX1.cjs");
11
+ const require_pipeline_helpers = require("./pipeline-helpers-B5CzvTUJ.cjs");
12
12
  const require_runtime_registry = require("./runtime-registry-Y7NrD2WH.cjs");
13
13
  const require_watch_dependencies = require("./watch-dependencies-BZGubvuJ.cjs");
14
14
  let node_path = require("node:path");
@@ -3,14 +3,14 @@ const require_generator = require("./generator-B0dCFlP1.cjs");
3
3
  const require_object = require("./object-C_Vr6_S5.cjs");
4
4
  const require_options = require("./options-zpZez7qe.cjs");
5
5
  const require_utils = require("./utils-CuKLf1Zv.cjs");
6
- const require_v4_generation_core = require("./v4-generation-core-BjHT6qGC.cjs");
7
- const require_wxml = require("./wxml-DSMNuUaP.cjs");
8
- const require_hmr_timing = require("./hmr-timing-DiYnyg_W.cjs");
9
- const require_context = require("./context-CByXWyhQ.cjs");
6
+ const require_v4_generation_core = require("./v4-generation-core-D4zQcQqW.cjs");
7
+ const require_wxml = require("./wxml-DUIdXCVa.cjs");
8
+ const require_hmr_timing = require("./hmr-timing-BnGBBJ6S.cjs");
9
+ const require_context = require("./context-C3TryIjF.cjs");
10
10
  const require_tailwindcss = require("./tailwindcss-LtnGCxF0.cjs");
11
11
  const require_style_options = require("./style-options-COpQc8fr.cjs");
12
- const require_source_candidate_scan_signature = require("./source-candidate-scan-signature-D9FXTD9a.cjs");
13
- const require_pipeline_helpers = require("./pipeline-helpers-CsNLoEX1.cjs");
12
+ const require_source_candidate_scan_signature = require("./source-candidate-scan-signature-GjsLzP8Z.cjs");
13
+ const require_pipeline_helpers = require("./pipeline-helpers-B5CzvTUJ.cjs");
14
14
  const require_css_loader_runtime = require("./css-loader-runtime-CSv0lKqV.cjs");
15
15
  const require_runtime_registry = require("./runtime-registry-Y7NrD2WH.cjs");
16
16
  let node_fs = require("node:fs");
@@ -2,11 +2,11 @@ import { $ as hasTailwindSourceDirectives, B as stripMiniProgramCssSpecificityPl
2
2
  import { n as _defineProperty } from "./object-Bvy6-w9r.js";
3
3
  import { _ as resolveTailwindV4EntriesFromCssCached, l as getRuntimeClassSetSignature, p as resolveSourceScanEntries } from "./tailwindcss-2zdmASlM.js";
4
4
  import { r as getGroupedEntries } from "./utils-MVwpU07P.js";
5
- import { A as createCssSourceTraceCacheSignature, B as finalizeCompilerShadowRun, D as finalizeMiniProgramCssStructure, E as stripBundlerGeneratedCssMarkers, F as collectStrictEscapedRuntimeCandidates, G as resetRuntimeCompilationBuildState, H as createRuntimeCompilationAffectingSignature, I as createEscapeFragments, J as disposeCompilerOwner, K as updateRuntimeCompilationBuildState, L as isPureLocalCssImportWrapper, M as isCssSourceTraceEnabled, N as processCachedTask, P as createRuntimeClassSetManager, Q as getCompilationScopeDependencyRevision, S as stripRequestQuery, U as createRuntimeCompilationBuildState, V as buildRuntimeCompilationSnapshot, Y as beginCompilerShadowRun, Z as AssetEmissionPlan, _ as collectFrameworkPostcssOptionsFromLoaderEntries, b as hasMiniProgramTailwindV4PreflightReset, c as pushConcurrentTaskFactories, et as recordCompilationDependencyChanges, g as captureResolvedFrameworkPostcssOptions, it as isSourceCandidateRequest, j as createCssTokenSourceMap, k as annotateCssSourceTrace, l as resolveTaskConcurrency, m as removeGeneratedSelectorCompatCss, n as emitHmrTiming, ot as resolveSourceCandidateScanFiles, p as scoreTailwindV4CssSourceFileMatch, q as createRuntimeAffectingSourceSignature, r as generateTailwindV4Css, rt as createSourceCandidateStore, s as collectRawSourceClassSelectors, tt as createCompilationDependencyChanges, v as createCssSourceOrderAppend, w as hasBundlerGeneratedCssMarker, x as isSourceStyleRequest } from "./hmr-timing-CJocHeZr.js";
6
- import { h as createDebug, v as md5Hash } from "./wxml-IBzZSaQC.js";
7
- import { d as refreshTailwindRuntimeState, i as pluginName, l as createTailwindRuntimeReadyPromise, n as normalizeStyleHandlerMajorVersion, o as shouldSkipJsTransform, r as resolveStyleOptionsFromContext, t as getCompilerContext, u as ensureRuntimeClassSet } from "./context-BMkbwnH8.js";
5
+ import { $ as getCompilationScopeDependencyRevision, A as annotateCssSourceTrace, C as stripRequestQuery, D as stripBundlerGeneratedCssMarkers, F as createRuntimeClassSetManager, H as buildRuntimeCompilationSnapshot, I as collectStrictEscapedRuntimeCandidates, J as createRuntimeAffectingSourceSignature, K as resetRuntimeCompilationBuildState, L as createEscapeFragments, M as createCssTokenSourceMap, N as isCssSourceTraceEnabled, O as finalizeMiniProgramCssStructure, P as processCachedTask, Q as AssetEmissionPlan, R as isPureLocalCssImportWrapper, S as isSourceStyleRequest, T as hasBundlerGeneratedCssMarker, U as createRuntimeCompilationAffectingSignature, V as finalizeCompilerShadowRun, W as createRuntimeCompilationBuildState, X as beginCompilerShadowRun, Y as disposeCompilerOwner, _ as captureResolvedFrameworkPostcssOptions, at as isSourceCandidateRequest, c as collectRawSourceClassSelectors, h as removeGeneratedSelectorCompatCss, it as createSourceCandidateStore, j as createCssSourceTraceCacheSignature, l as pushConcurrentTaskFactories, m as scoreTailwindV4CssSourceFileMatch, n as emitHmrTiming, nt as createCompilationDependencyChanges, q as updateRuntimeCompilationBuildState, r as generateTailwindV4Css, st as resolveSourceCandidateScanFiles, tt as recordCompilationDependencyChanges, u as resolveTaskConcurrency, v as collectFrameworkPostcssOptionsFromLoaderEntries, x as hasMiniProgramTailwindV4PreflightReset, y as createCssSourceOrderAppend } from "./hmr-timing-DXyGw6jp.js";
6
+ import { _ as md5Hash, m as createDebug } from "./wxml-CWJc0yY-.js";
7
+ import { d as refreshTailwindRuntimeState, i as pluginName, l as createTailwindRuntimeReadyPromise, n as normalizeStyleHandlerMajorVersion, o as shouldSkipJsTransform, r as resolveStyleOptionsFromContext, t as getCompilerContext, u as ensureRuntimeClassSet } from "./context-DbL0d-zB.js";
8
8
  import { getDefaultCssPreflight } from "./defaults.js";
9
- import { S as resolveWebpackFrameworkProfile, a as createCandidateSignature, b as webpackStyleInjectorDelegates, d as classifyRuntimeEntry, f as resolvePackageDir, g as toAbsoluteOutputPath, h as resolveOutputSpecifier, p as resolvePluginDisabledState, r as createScopedGeneratorRuntime, t as createSourceCandidateScanSignature, v as createBuiltinWebpackStyleInjectorPlugin } from "./source-candidate-scan-signature-of-TmeOs.js";
9
+ import { S as resolveWebpackFrameworkProfile, a as createCandidateSignature, b as webpackStyleInjectorDelegates, d as classifyRuntimeEntry, f as resolvePackageDir, g as toAbsoluteOutputPath, h as resolveOutputSpecifier, p as resolvePluginDisabledState, r as createScopedGeneratorRuntime, t as createSourceCandidateScanSignature, v as createBuiltinWebpackStyleInjectorPlugin } from "./source-candidate-scan-signature-xgmxO8_F.js";
10
10
  import Module, { createRequire } from "node:module";
11
11
  import fs from "node:fs";
12
12
  import path from "node:path";
package/dist/webpack.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_webpack = require("./webpack-CzQrloDg.cjs");
2
+ const require_webpack = require("./webpack-Bpovb6YE.cjs");
3
3
  exports.WeappTailwindcss = require_webpack.WeappTailwindcss;
4
4
  exports.weappTailwindcss = require_webpack.WeappTailwindcss;
5
5
  exports.weappTailwindcssPackageDir = require_webpack.weappTailwindcssPackageDir;
package/dist/webpack.js CHANGED
@@ -1,2 +1,2 @@
1
- import { n as weappTailwindcssPackageDir, t as WeappTailwindcss } from "./webpack-CkeFhPY2.js";
1
+ import { n as weappTailwindcssPackageDir, t as WeappTailwindcss } from "./webpack-CtUyQNqC.js";
2
2
  export { WeappTailwindcss, WeappTailwindcss as weappTailwindcss, weappTailwindcssPackageDir };
@@ -168,30 +168,8 @@ function isPlainSlashPathCandidate(candidate) {
168
168
  if (candidate.includes("[") || candidate.includes("]") || candidate.includes(":")) return false;
169
169
  return !candidate.slice(0, slashIndex).includes("-");
170
170
  }
171
- function isArbitraryValueCandidate(candidate) {
172
- let hasOpenBracket = false;
173
- let hasCloseBracket = false;
174
- for (let i = 0; i < candidate.length; i++) {
175
- const char = candidate[i];
176
- if (char === "[") hasOpenBracket = true;
177
- else if (char === "]") hasCloseBracket = true;
178
- if (hasOpenBracket && hasCloseBracket) break;
179
- }
180
- if (!hasOpenBracket || !hasCloseBracket) return false;
181
- if (isUrlLikeCandidate(candidate.trim())) return false;
182
- return true;
183
- }
184
- function shouldEnableArbitraryValueFallbackByInputs(classNameSet, jsArbitraryValueFallback, tailwindcssMajorVersion) {
185
- if (jsArbitraryValueFallback === true) return true;
186
- if (jsArbitraryValueFallback === false) return false;
187
- return tailwindcssMajorVersion === 4 && (!classNameSet || classNameSet.size === 0);
188
- }
189
- function shouldEnableArbitraryValueFallback({ classNameSet, jsArbitraryValueFallback, tailwindcssMajorVersion }) {
190
- return shouldEnableArbitraryValueFallbackByInputs(classNameSet, jsArbitraryValueFallback, tailwindcssMajorVersion);
191
- }
192
171
  const SKIP_RESULT = { decision: "skip" };
193
172
  const DIRECT_RESULT = { decision: "direct" };
194
- const FALLBACK_RESULT = { decision: "fallback" };
195
173
  function getEscapedCandidateCacheStore(escapeMap) {
196
174
  if (!escapeMap) return defaultEscapedCandidateCache;
197
175
  if (escapeMap === lastEscapedCandidateEscapeMap && lastEscapedCandidateCacheStore) return lastEscapedCandidateCacheStore;
@@ -216,11 +194,11 @@ function getEscapedCandidate(candidate, escapeMap, store = getEscapedCandidateCa
216
194
  * JS 转译严格遵循 runtime class set:
217
195
  * 1. 直接命中 classNameSet 原始值;
218
196
  * 2. 兼容命中 classNameSet 中已转义值;
219
- * 3. 仅在受控条件下允许 class 语义兜底。
197
+ * 3. 除显式 alwaysEscape 外,不允许绕过 classNameSet。
220
198
  *
221
199
  * 返回结构化结果,附带已计算的 escapedValue 以避免下游重复 escape。
222
200
  */
223
- function resolveClassNameTransformWithResult(candidate, { alwaysEscape, classNameSet, escapeMap, jsArbitraryValueFallback, jsPreserveClass, tailwindcssMajorVersion, classContext }) {
201
+ function resolveClassNameTransformWithResult(candidate, { alwaysEscape, classNameSet, escapeMap, jsPreserveClass, classContext }) {
224
202
  if (jsPreserveClass?.(candidate)) return SKIP_RESULT;
225
203
  if (alwaysEscape) return DIRECT_RESULT;
226
204
  if (!classContext && isPlainSlashPathCandidate(candidate)) return SKIP_RESULT;
@@ -232,7 +210,6 @@ function resolveClassNameTransformWithResult(candidate, { alwaysEscape, classNam
232
210
  escapedValue: escapedCandidate
233
211
  };
234
212
  }
235
- if (classContext && shouldEnableArbitraryValueFallbackByInputs(classNameSet, jsArbitraryValueFallback, tailwindcssMajorVersion) && isArbitraryValueCandidate(candidate)) return FALLBACK_RESULT;
236
213
  return SKIP_RESULT;
237
214
  }
238
215
  //#endregion
@@ -478,8 +455,7 @@ function createCandidatePlanResolver(options, classContext) {
478
455
  function replaceHandleValue(path, options) {
479
456
  const { needEscaped = false } = options;
480
457
  const { classNameSet, alwaysEscape } = options;
481
- const fallbackEnabled = shouldEnableArbitraryValueFallback(options);
482
- if (!alwaysEscape && !fallbackEnabled && (!classNameSet || classNameSet.size === 0)) return;
458
+ if (!alwaysEscape && (!classNameSet || classNameSet.size === 0)) return;
483
459
  if (hasIgnoreComment(path.node)) return;
484
460
  if (isConditionTestLiteral(path)) return;
485
461
  const { literal, original, offset } = extractLiteralValue(path, options);
@@ -491,7 +467,6 @@ function replaceHandleValue(path, options) {
491
467
  let mutated = false;
492
468
  let matchedCandidateCount = 0;
493
469
  let escapedDecisionCount = 0;
494
- let fallbackDecisionCount = 0;
495
470
  let escapedSamples;
496
471
  let skippedSamples;
497
472
  const resolveCandidatePlan = createCandidatePlanResolver(options, classContext);
@@ -511,7 +486,6 @@ function replaceHandleValue(path, options) {
511
486
  if (!escapedSamples) escapedSamples = [];
512
487
  if (escapedSamples.length < 6) escapedSamples.push(candidate);
513
488
  }
514
- if (plan.result.decision === "fallback") fallbackDecisionCount += 1;
515
489
  }
516
490
  const replaced = transformed.replace(candidate, plan.replacement);
517
491
  if (replaced !== transformed) {
@@ -521,7 +495,7 @@ function replaceHandleValue(path, options) {
521
495
  }
522
496
  const node = path.node;
523
497
  if (!mutated || typeof node.start !== "number" || typeof node.end !== "number") return;
524
- if (debugEnabled) debug("runtimeSet size=%d fallbackTriggered=%s candidates=%d matched=%d escapedHits=%d skipped=%d file=%s escapedSamples=%s skippedSamples=%s", classNameSet?.size ?? 0, fallbackDecisionCount > 0, candidates.length, matchedCandidateCount, escapedDecisionCount, skippedSamples?.length ?? 0, options.filename ?? "unknown", escapedSamples?.join(",") || "-", skippedSamples?.join(",") || "-");
498
+ if (debugEnabled) debug("runtimeSet size=%d candidates=%d matched=%d escapedHits=%d skipped=%d file=%s escapedSamples=%s skippedSamples=%s", classNameSet?.size ?? 0, candidates.length, matchedCandidateCount, escapedDecisionCount, skippedSamples?.length ?? 0, options.filename ?? "unknown", escapedSamples?.join(",") || "-", skippedSamples?.join(",") || "-");
525
499
  const start = node.start + offset;
526
500
  const end = node.end - offset;
527
501
  if (start >= end || transformed === original) return;
@@ -1833,4 +1807,4 @@ function createTemplateHandler(options = {}) {
1833
1807
  };
1834
1808
  }
1835
1809
  //#endregion
1836
- export { traverse as _, jsHandler as a, getReplacementCacheStore as c, decodeUnicode2 as d, resolveClassNameTransformWithResult as f, babelParse as g, createDebug as h, analyzeSource as i, jsStringEscape as l, replaceWxml as m, generateCode as n, JsTokenUpdater as o, shouldEnableArbitraryValueFallback as p, createAttributeMatcher as r, getReplacement as s, createTemplateHandler as t, isClassContextLiteralPath as u, md5Hash as v };
1810
+ export { md5Hash as _, jsHandler as a, getReplacementCacheStore as c, decodeUnicode2 as d, resolveClassNameTransformWithResult as f, traverse as g, babelParse as h, analyzeSource as i, jsStringEscape as l, createDebug as m, generateCode as n, JsTokenUpdater as o, replaceWxml as p, createAttributeMatcher as r, getReplacement as s, createTemplateHandler as t, isClassContextLiteralPath as u };