weapp-tailwindcss 5.0.0-next.3 → 5.0.0-next.31

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 (244) hide show
  1. package/README.md +6 -7
  2. package/bin/weapp-tailwindcss.js +1 -21
  3. package/dist/auto-TH1jG2UW.js +115 -0
  4. package/dist/auto-XyKTOP7B.mjs +78 -0
  5. package/dist/bundle-state-Bi-cQua6.mjs +413 -0
  6. package/dist/bundle-state-Ct_8GcSR.js +529 -0
  7. package/dist/bundlers/shared/cache.d.ts +6 -6
  8. package/dist/bundlers/shared/css-cleanup/at-rules.d.ts +1 -0
  9. package/dist/bundlers/shared/css-cleanup.d.ts +1 -4
  10. package/dist/bundlers/shared/css-imports.d.ts +3 -3
  11. package/dist/bundlers/shared/generated-css-marker.d.ts +3 -0
  12. package/dist/bundlers/shared/generator-css/config-directive.d.ts +2 -0
  13. package/dist/bundlers/shared/generator-css/directives.d.ts +21 -0
  14. package/dist/bundlers/shared/generator-css/legacy-compat.d.ts +7 -0
  15. package/dist/bundlers/shared/generator-css/legacy-selectors.d.ts +5 -0
  16. package/dist/bundlers/shared/generator-css/legacy-units.d.ts +1 -0
  17. package/dist/bundlers/shared/generator-css/markers.d.ts +28 -0
  18. package/dist/bundlers/shared/generator-css/source-files.d.ts +14 -0
  19. package/dist/bundlers/shared/generator-css/source-resolver.d.ts +24 -0
  20. package/dist/bundlers/shared/generator-css/user-layer-order.d.ts +10 -0
  21. package/dist/bundlers/shared/generator-css.d.ts +16 -22
  22. package/dist/bundlers/shared/hmr-timing.d.ts +22 -0
  23. package/dist/bundlers/shared/style-requests.d.ts +2 -0
  24. package/dist/bundlers/vite/bundle-state.d.ts +1 -0
  25. package/dist/bundlers/vite/css-finalizer.d.ts +7 -1
  26. package/dist/bundlers/vite/generate-bundle/candidates.d.ts +2 -0
  27. package/dist/bundlers/vite/generate-bundle/css-handler-options.d.ts +24 -0
  28. package/dist/bundlers/vite/generate-bundle/css-share-scope.d.ts +4 -0
  29. package/dist/bundlers/vite/generate-bundle/dirty-state.d.ts +1 -0
  30. package/dist/bundlers/vite/generate-bundle/js-entries.d.ts +2 -0
  31. package/dist/bundlers/vite/generate-bundle/js-handler-options.d.ts +8 -0
  32. package/dist/bundlers/vite/generate-bundle/js-linking.d.ts +13 -0
  33. package/dist/bundlers/vite/generate-bundle/metrics.d.ts +17 -0
  34. package/dist/bundlers/vite/generate-bundle/process-plan.d.ts +9 -0
  35. package/dist/bundlers/vite/generate-bundle/rollup-assets.d.ts +7 -0
  36. package/dist/bundlers/vite/generate-bundle/signatures.d.ts +8 -0
  37. package/dist/bundlers/vite/generate-bundle.d.ts +14 -2
  38. package/dist/bundlers/vite/incremental-runtime-class-set.d.ts +5 -1
  39. package/dist/bundlers/vite/index.d.ts +5 -2
  40. package/dist/bundlers/vite/official-tailwind-plugins.d.ts +5 -0
  41. package/dist/bundlers/vite/postcss-config.d.ts +6 -0
  42. package/dist/bundlers/vite/processed-css-assets.d.ts +32 -0
  43. package/dist/bundlers/vite/rewrite-css-imports.d.ts +8 -3
  44. package/dist/bundlers/vite/runtime-class-set.d.ts +25 -0
  45. package/dist/bundlers/vite/serve-css-generation.d.ts +11 -0
  46. package/dist/bundlers/vite/source-candidates.d.ts +19 -1
  47. package/dist/bundlers/vite/source-scan.d.ts +26 -0
  48. package/dist/bundlers/vite/static-config-content.d.ts +5 -0
  49. package/dist/bundlers/vite/tailwind-basedir.d.ts +1 -0
  50. package/dist/bundlers/webpack/BaseUnifiedPlugin/shared.d.ts +6 -0
  51. package/dist/bundlers/webpack/BaseUnifiedPlugin/v5-assets.d.ts +6 -2
  52. package/dist/bundlers/webpack/BaseUnifiedPlugin/v5-loaders.d.ts +9 -3
  53. package/dist/bundlers/webpack/BaseUnifiedPlugin/v5.d.ts +2 -1
  54. package/dist/bundlers/webpack/loaders/runtime-registry.d.ts +31 -0
  55. package/dist/bundlers/webpack/loaders/weapp-tw-css-import-rewrite-loader.d.ts +2 -6
  56. package/dist/bundlers/webpack/loaders/weapp-tw-runtime-classset-loader.d.ts +3 -7
  57. package/dist/cache/index.d.ts +6 -6
  58. package/dist/{chunk-8l464Juk.js → chunk-C5U5_Hdc.js} +14 -0
  59. package/dist/cli/context.d.ts +1 -14
  60. package/dist/cli/doctor/types.d.ts +11 -11
  61. package/dist/cli/helpers.d.ts +1 -2
  62. package/dist/cli/mount-options.d.ts +2 -0
  63. package/dist/cli/types.d.ts +0 -2
  64. package/dist/cli/vscode-entry.d.ts +3 -3
  65. package/dist/cli.js +758 -604
  66. package/dist/cli.mjs +766 -612
  67. package/dist/constants.d.ts +1 -2
  68. package/dist/context/runtime-package-replacements.d.ts +2 -0
  69. package/dist/context/style-options.d.ts +3 -0
  70. package/dist/core.js +12 -20
  71. package/dist/core.mjs +8 -14
  72. package/dist/css-macro/auto.d.ts +10 -0
  73. package/dist/css-macro/constants.d.ts +5 -2
  74. package/dist/css-macro/postcss.d.ts +1 -0
  75. package/dist/css-macro/postcss.js +7 -46
  76. package/dist/css-macro/postcss.mjs +2 -46
  77. package/dist/css-macro.d.ts +1 -0
  78. package/dist/css-macro.js +16 -7
  79. package/dist/css-macro.mjs +15 -6
  80. package/dist/defaults-8xrgzxFY.mjs +151 -0
  81. package/dist/defaults-zKUH2mDe.js +193 -0
  82. package/dist/defaults.d.ts +15 -1
  83. package/dist/defaults.js +6 -131
  84. package/dist/defaults.mjs +2 -129
  85. package/dist/escape.js +10 -2
  86. package/dist/escape.mjs +10 -2
  87. package/dist/generator/index.d.ts +1 -1
  88. package/dist/generator/options.d.ts +9 -8
  89. package/dist/generator/types.d.ts +3 -3
  90. package/dist/generator-CrU-Ghc1.js +90 -0
  91. package/dist/generator-Qw-tZ0Z2.mjs +65 -0
  92. package/dist/generator.js +12 -12
  93. package/dist/generator.mjs +2 -1
  94. package/dist/gulp.js +187 -48
  95. package/dist/gulp.mjs +180 -41
  96. package/dist/incremental-runtime-class-set-Boqi1QlB.mjs +2224 -0
  97. package/dist/incremental-runtime-class-set-FAOHZmzh.js +2293 -0
  98. package/dist/index.d.ts +3 -2
  99. package/dist/index.js +19 -7
  100. package/dist/index.mjs +6 -5
  101. package/dist/js/babel/cache-options.d.ts +3 -0
  102. package/dist/js/babel/parse.d.ts +7 -4
  103. package/dist/js/index.d.ts +1 -0
  104. package/dist/js/literal-transform.d.ts +2 -0
  105. package/dist/js/precheck.d.ts +2 -2
  106. package/dist/logger-BNzxZbZj.mjs +2 -0
  107. package/dist/logger-TlKT3xmR.js +1 -0
  108. package/dist/postcss/config-directive.d.ts +1 -0
  109. package/dist/postcss/context.d.ts +9 -0
  110. package/dist/postcss/source-files.d.ts +8 -0
  111. package/dist/postcss/tailwind-version.d.ts +3 -0
  112. package/dist/postcss-C6zOQqlL.mjs +228 -0
  113. package/dist/postcss-C7BMYpEF.mjs +169 -0
  114. package/dist/postcss-CiYLsqZn.js +192 -0
  115. package/dist/postcss-DAWf9D3C.js +237 -0
  116. package/dist/postcss-html-transform.js +1 -1
  117. package/dist/postcss.d.ts +2 -2
  118. package/dist/postcss.js +3 -276
  119. package/dist/postcss.mjs +1 -269
  120. package/dist/precheck-D7K12zeX.mjs +4716 -0
  121. package/dist/precheck-D7gJSmJz.js +4842 -0
  122. package/dist/presets/index.d.ts +1 -0
  123. package/dist/presets/uni-app-x.d.ts +1 -0
  124. package/dist/presets.js +29 -13
  125. package/dist/presets.mjs +25 -11
  126. package/dist/reset.d.ts +1 -0
  127. package/dist/reset.js +1 -1
  128. package/dist/runtime-registry-DpcR3IHI.js +5496 -0
  129. package/dist/shared/mpx.d.ts +1 -0
  130. package/dist/source-candidates-CX2ozpKM.mjs +322 -0
  131. package/dist/source-candidates-DNM8iwXW.js +335 -0
  132. package/dist/tailwindcss/miniprogram.d.ts +1 -1
  133. package/dist/tailwindcss/patcher-options.d.ts +3 -51
  134. package/dist/tailwindcss/patcher.d.ts +1 -2
  135. package/dist/tailwindcss/remove-unsupported-css.d.ts +1 -2
  136. package/dist/tailwindcss/runtime/cache.d.ts +4 -3
  137. package/dist/tailwindcss/runtime-patch.d.ts +5 -0
  138. package/dist/tailwindcss/runtime.d.ts +11 -12
  139. package/dist/tailwindcss/source-scan.d.ts +35 -0
  140. package/dist/tailwindcss/targets.d.ts +1 -5
  141. package/dist/tailwindcss/v3-engine/types.d.ts +17 -14
  142. package/dist/tailwindcss/v4/css-entries.d.ts +2 -2
  143. package/dist/tailwindcss/v4/css-sources.d.ts +5 -0
  144. package/dist/tailwindcss/v4/patcher-options.d.ts +1 -23
  145. package/dist/tailwindcss/v4/patcher.d.ts +1 -0
  146. package/dist/tailwindcss/v4-engine/source.d.ts +2 -2
  147. package/dist/tailwindcss/v4-engine/types.d.ts +17 -5
  148. package/dist/tailwindcss/version.d.ts +4 -0
  149. package/dist/tailwindcss-B-e2RiXr.js +642 -0
  150. package/dist/tailwindcss-C7dJHZ0G.mjs +591 -0
  151. package/dist/typedoc.export.d.ts +0 -2
  152. package/dist/types/index.d.ts +52 -49
  153. package/dist/types/shared.d.ts +6 -0
  154. package/dist/types/user-defined-options/general.d.ts +25 -24
  155. package/dist/types/user-defined-options/important.d.ts +33 -28
  156. package/dist/types/user-defined-options/lifecycle.d.ts +4 -4
  157. package/dist/types/user-defined-options/matcher.d.ts +6 -6
  158. package/dist/uni-app-x/vite.d.ts +1 -1
  159. package/dist/unocss/index.d.ts +2 -0
  160. package/dist/utils/disabled.d.ts +2 -3
  161. package/dist/utils/object.d.ts +9 -0
  162. package/dist/utils/options.d.ts +2 -0
  163. package/dist/utils/regex.d.ts +1 -0
  164. package/dist/{utils-DmC9_In3.js → utils-D7Ygohep.js} +2 -2
  165. package/dist/{utils-7DUGTFED.mjs → utils-DsaS975I.mjs} +1 -1
  166. package/dist/v3-engine-CHItlVq5.js +3616 -0
  167. package/dist/v3-engine-DcvCCHfs.mjs +3321 -0
  168. package/dist/vite-BgTPSkQS.js +24446 -0
  169. package/dist/vite-fFRpSvyz.mjs +24432 -0
  170. package/dist/vite.d.ts +1 -2
  171. package/dist/vite.js +3 -4
  172. package/dist/vite.mjs +2 -2
  173. package/dist/weapp-tw-css-import-rewrite-loader.js +5227 -18
  174. package/dist/weapp-tw-runtime-classset-loader.js +32 -9
  175. package/dist/webpack-BXSWVdXh.js +851 -0
  176. package/dist/webpack-Dx2AZpGU.mjs +841 -0
  177. package/dist/webpack.d.ts +1 -3
  178. package/dist/webpack.js +3 -4
  179. package/dist/webpack.mjs +2 -2
  180. package/package.json +38 -48
  181. package/dist/bundlers/shared/generator-candidates.d.ts +0 -5
  182. package/dist/bundlers/webpack/BaseUnifiedPlugin/v4-assets.d.ts +0 -14
  183. package/dist/bundlers/webpack/BaseUnifiedPlugin/v4-loaders.d.ts +0 -15
  184. package/dist/bundlers/webpack/BaseUnifiedPlugin/v4.d.ts +0 -9
  185. package/dist/bundlers/webpack/shared/css-imports.d.ts +0 -6
  186. package/dist/cli/config.d.ts +0 -5
  187. package/dist/cli/helpers/patch-cwd.d.ts +0 -1
  188. package/dist/cli/mount-options/patch-status.d.ts +0 -2
  189. package/dist/cli/patch-options.d.ts +0 -6
  190. package/dist/cli/tokens.d.ts +0 -4
  191. package/dist/cli/workspace/package-dirs.d.ts +0 -3
  192. package/dist/cli/workspace/patch-package.d.ts +0 -3
  193. package/dist/cli/workspace/patch-utils.d.ts +0 -3
  194. package/dist/cli/workspace/types.d.ts +0 -11
  195. package/dist/cli/workspace/workspace-globs.d.ts +0 -2
  196. package/dist/cli/workspace/workspace-io.d.ts +0 -1
  197. package/dist/cli/workspace/workspace-lock.d.ts +0 -1
  198. package/dist/cli/workspace.d.ts +0 -2
  199. package/dist/constants-B-_T5UnW.mjs +0 -44
  200. package/dist/constants-p1dyh1x1.js +0 -73
  201. package/dist/css-imports-BbrbluP9.js +0 -177
  202. package/dist/css-imports-CSdPq_Sc.mjs +0 -128
  203. package/dist/experimental/index.d.ts +0 -2
  204. package/dist/experimental/oxc/ast-utils.d.ts +0 -30
  205. package/dist/experimental/oxc/index.d.ts +0 -2
  206. package/dist/experimental/oxc/module-specifiers.d.ts +0 -2
  207. package/dist/experimental/shared/cache.d.ts +0 -3
  208. package/dist/experimental/shared/transform.d.ts +0 -3
  209. package/dist/experimental/shared.d.ts +0 -8
  210. package/dist/experimental/swc/ast-utils.d.ts +0 -30
  211. package/dist/experimental/swc/index.d.ts +0 -2
  212. package/dist/experimental/swc/module-specifiers.d.ts +0 -2
  213. package/dist/generator-Y-Ikv4Fu.mjs +0 -1177
  214. package/dist/generator-css-Bwy_Uz89.mjs +0 -1097
  215. package/dist/generator-css-CRLrHW4F.js +0 -1124
  216. package/dist/generator-mmhXzZnv.js +0 -1276
  217. package/dist/js/syntax.d.ts +0 -10
  218. package/dist/lightningcss/index.d.ts +0 -8
  219. package/dist/lightningcss/style-handler/options.d.ts +0 -3
  220. package/dist/lightningcss/style-handler/selector-transform.d.ts +0 -10
  221. package/dist/lightningcss/style-handler/selector-utils.d.ts +0 -10
  222. package/dist/lightningcss/style-handler.d.ts +0 -17
  223. package/dist/loader-anchors-1MumTAtA.mjs +0 -205
  224. package/dist/loader-anchors-TrFvT6g1.js +0 -273
  225. package/dist/logger-BZ45DZJT.js +0 -1003
  226. package/dist/logger-BoVx1Dbt.mjs +0 -935
  227. package/dist/patcher-options-6gJN2EXy.js +0 -115
  228. package/dist/patcher-options-DQfR5xxT.mjs +0 -92
  229. package/dist/recorder-GdTJ3QqX.js +0 -2878
  230. package/dist/recorder-XdFvVASS.mjs +0 -2763
  231. package/dist/tailwindcss/recorder.d.ts +0 -13
  232. package/dist/tailwindcss/targets/paths.d.ts +0 -13
  233. package/dist/tailwindcss/targets/record-io.d.ts +0 -5
  234. package/dist/tailwindcss/targets/recorder.d.ts +0 -3
  235. package/dist/tailwindcss/targets/types.d.ts +0 -35
  236. package/dist/types/disabled-options.d.ts +0 -4
  237. package/dist/vite-BDywuCjn.mjs +0 -2186
  238. package/dist/vite-DgRh_GXn.js +0 -2199
  239. package/dist/webpack-CAJR4hhP.js +0 -456
  240. package/dist/webpack-CiHqVZTg.mjs +0 -441
  241. package/dist/webpack4.d.ts +0 -4
  242. package/dist/webpack4.js +0 -387
  243. package/dist/webpack4.mjs +0 -379
  244. package/scripts/postinstall.mjs +0 -59
@@ -1,7 +1,6 @@
1
1
  export declare const runtimeAopLoader = "weapp-tw-runtime-aop-loader";
2
- export declare const ManglePluginHooks = "ManglePluginHooks";
3
2
  export declare const WeappTailwindcssWebpackPluginOptimizeChunkAssetsHooks = "WeappTailwindcssWebpackPluginOptimizeChunkAssetsHooks";
4
- export declare const pluginName = "weapp-tailwindcss-webpack-plugin";
3
+ export declare const pluginName = "weapp-tailwindcss";
5
4
  export declare const vitePluginName = "weapp-tailwindcss:adaptor";
6
5
  export declare const WEAPP_TW_REQUIRED_NODE_VERSION = "20.19.0";
7
6
  export declare const WEAPP_TW_REQUIRED_NODE_VERSION_RANGE = "^20.19.0 || >=22.12.0";
@@ -0,0 +1,2 @@
1
+ import type { InternalUserDefinedOptions } from '../types';
2
+ export declare function resolveRuntimePackageReplacements(option: InternalUserDefinedOptions['replaceRuntimePackages']): Record<string, string> | undefined;
@@ -0,0 +1,3 @@
1
+ import type { IStyleHandlerOptions } from '@weapp-tailwindcss/postcss/types';
2
+ import type { InternalUserDefinedOptions } from '../types';
3
+ export declare function resolveStyleOptionsFromContext(ctx: InternalUserDefinedOptions): Partial<IStyleHandlerOptions>;
package/dist/core.js CHANGED
@@ -1,8 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_chunk = require("./chunk-8l464Juk.js");
3
- const require_recorder = require("./recorder-GdTJ3QqX.js");
4
- let node_process = require("node:process");
5
- node_process = require_chunk.__toESM(node_process);
2
+ const require_precheck = require("./precheck-D7gJSmJz.js");
6
3
  let _weapp_tailwindcss_shared = require("@weapp-tailwindcss/shared");
7
4
  //#region src/core.ts
8
5
  const DEFAULT_MAIN_CHUNK_STYLE_OPTIONS = Object.freeze({ isMainChunk: true });
@@ -17,18 +14,13 @@ function resolveTransformWxssOptions(options) {
17
14
  * @returns 返回一个包含 transformWxss、transformWxml 和 transformJs 方法的对象
18
15
  */
19
16
  function createContext(options = {}) {
20
- const opts = require_recorder.getCompilerContext(options);
21
- const { templateHandler, styleHandler, jsHandler, twPatcher: initialTwPatcher, refreshTailwindcssPatcher } = opts;
22
- const patchRecorderState = require_recorder.setupPatchRecorder(initialTwPatcher, opts.tailwindcssBasedir, {
23
- source: "runtime",
24
- cwd: opts.tailwindcssBasedir ?? node_process.default.cwd()
25
- });
17
+ const { templateHandler, styleHandler, jsHandler, twPatcher: initialTwPatcher, refreshTailwindcssPatcher } = require_precheck.getCompilerContext(options);
18
+ const readyPromise = require_precheck.createTailwindRuntimeReadyPromise(initialTwPatcher);
26
19
  let runtimeSet = /* @__PURE__ */ new Set();
27
20
  const runtimeState = {
28
21
  twPatcher: initialTwPatcher,
29
- patchPromise: patchRecorderState.patchPromise,
30
- refreshTailwindcssPatcher,
31
- onPatchCompleted: patchRecorderState.onPatchCompleted
22
+ readyPromise,
23
+ refreshTailwindcssPatcher
32
24
  };
33
25
  const defaultJsHandlerOptionsCache = /* @__PURE__ */ new Map();
34
26
  function getDefaultJsHandlerOptions(majorVersion = runtimeState.twPatcher.majorVersion) {
@@ -112,25 +104,25 @@ function createContext(options = {}) {
112
104
  });
113
105
  }
114
106
  async function transformWxss(rawCss, options) {
115
- await runtimeState.patchPromise;
107
+ await runtimeState.readyPromise;
116
108
  const result = await styleHandler(rawCss, resolveTransformWxssOptions(options));
117
- runtimeSet = await require_recorder.ensureRuntimeClassSet(runtimeState, {
109
+ runtimeSet = await require_precheck.ensureRuntimeClassSet(runtimeState, {
118
110
  forceRefresh: true,
119
111
  forceCollect: true
120
112
  });
121
113
  return result;
122
114
  }
123
115
  async function transformJs(rawJs, options) {
124
- await runtimeState.patchPromise;
116
+ await runtimeState.readyPromise;
125
117
  if (options?.runtimeSet) runtimeSet = options.runtimeSet;
126
- else if (runtimeSet.size === 0) runtimeSet = await require_recorder.ensureRuntimeClassSet(runtimeState, { forceCollect: true });
118
+ else if (runtimeSet.size === 0) runtimeSet = await require_precheck.ensureRuntimeClassSet(runtimeState, { forceCollect: true });
127
119
  const resolvedOptions = resolveTransformJsOptions(options);
128
- if (require_recorder.shouldSkipJsTransform(rawJs, resolvedOptions)) return { code: rawJs };
120
+ if (require_precheck.shouldSkipJsTransform(rawJs, resolvedOptions)) return { code: rawJs };
129
121
  return await jsHandler(rawJs, runtimeSet, resolvedOptions);
130
122
  }
131
123
  async function transformWxml(rawWxml, options) {
132
- await runtimeState.patchPromise;
133
- if (!options?.runtimeSet && runtimeSet.size === 0) runtimeSet = await require_recorder.ensureRuntimeClassSet(runtimeState, { forceCollect: true });
124
+ await runtimeState.readyPromise;
125
+ if (!options?.runtimeSet && runtimeSet.size === 0) runtimeSet = await require_precheck.ensureRuntimeClassSet(runtimeState, { forceCollect: true });
134
126
  return templateHandler(rawWxml, resolveTransformWxmlOptions(options));
135
127
  }
136
128
  return {
package/dist/core.mjs CHANGED
@@ -1,5 +1,4 @@
1
- import { g as ensureRuntimeClassSet, n as shouldSkipJsTransform, r as getCompilerContext, t as setupPatchRecorder } from "./recorder-XdFvVASS.mjs";
2
- import process from "node:process";
1
+ import { b as ensureRuntimeClassSet, n as getCompilerContext, t as shouldSkipJsTransform, y as createTailwindRuntimeReadyPromise } from "./precheck-D7K12zeX.mjs";
3
2
  import { defuOverrideArray } from "@weapp-tailwindcss/shared";
4
3
  //#region src/core.ts
5
4
  const DEFAULT_MAIN_CHUNK_STYLE_OPTIONS = Object.freeze({ isMainChunk: true });
@@ -14,18 +13,13 @@ function resolveTransformWxssOptions(options) {
14
13
  * @returns 返回一个包含 transformWxss、transformWxml 和 transformJs 方法的对象
15
14
  */
16
15
  function createContext(options = {}) {
17
- const opts = getCompilerContext(options);
18
- const { templateHandler, styleHandler, jsHandler, twPatcher: initialTwPatcher, refreshTailwindcssPatcher } = opts;
19
- const patchRecorderState = setupPatchRecorder(initialTwPatcher, opts.tailwindcssBasedir, {
20
- source: "runtime",
21
- cwd: opts.tailwindcssBasedir ?? process.cwd()
22
- });
16
+ const { templateHandler, styleHandler, jsHandler, twPatcher: initialTwPatcher, refreshTailwindcssPatcher } = getCompilerContext(options);
17
+ const readyPromise = createTailwindRuntimeReadyPromise(initialTwPatcher);
23
18
  let runtimeSet = /* @__PURE__ */ new Set();
24
19
  const runtimeState = {
25
20
  twPatcher: initialTwPatcher,
26
- patchPromise: patchRecorderState.patchPromise,
27
- refreshTailwindcssPatcher,
28
- onPatchCompleted: patchRecorderState.onPatchCompleted
21
+ readyPromise,
22
+ refreshTailwindcssPatcher
29
23
  };
30
24
  const defaultJsHandlerOptionsCache = /* @__PURE__ */ new Map();
31
25
  function getDefaultJsHandlerOptions(majorVersion = runtimeState.twPatcher.majorVersion) {
@@ -109,7 +103,7 @@ function createContext(options = {}) {
109
103
  });
110
104
  }
111
105
  async function transformWxss(rawCss, options) {
112
- await runtimeState.patchPromise;
106
+ await runtimeState.readyPromise;
113
107
  const result = await styleHandler(rawCss, resolveTransformWxssOptions(options));
114
108
  runtimeSet = await ensureRuntimeClassSet(runtimeState, {
115
109
  forceRefresh: true,
@@ -118,7 +112,7 @@ function createContext(options = {}) {
118
112
  return result;
119
113
  }
120
114
  async function transformJs(rawJs, options) {
121
- await runtimeState.patchPromise;
115
+ await runtimeState.readyPromise;
122
116
  if (options?.runtimeSet) runtimeSet = options.runtimeSet;
123
117
  else if (runtimeSet.size === 0) runtimeSet = await ensureRuntimeClassSet(runtimeState, { forceCollect: true });
124
118
  const resolvedOptions = resolveTransformJsOptions(options);
@@ -126,7 +120,7 @@ function createContext(options = {}) {
126
120
  return await jsHandler(rawJs, runtimeSet, resolvedOptions);
127
121
  }
128
122
  async function transformWxml(rawWxml, options) {
129
- await runtimeState.patchPromise;
123
+ await runtimeState.readyPromise;
130
124
  if (!options?.runtimeSet && runtimeSet.size === 0) runtimeSet = await ensureRuntimeClassSet(runtimeState, { forceCollect: true });
131
125
  return templateHandler(rawWxml, resolveTransformWxmlOptions(options));
132
126
  }
@@ -0,0 +1,10 @@
1
+ import type { IStyleHandlerOptions } from '@weapp-tailwindcss/postcss/types';
2
+ export declare const CSS_MACRO_PLUGIN_MARKER = "__weappTailwindcssCssMacro";
3
+ export declare const CSS_MACRO_STYLE_OPTIONS_MARKER = "__weappTailwindcssCssMacroEnabled";
4
+ export declare function markCssMacroPlugin<T extends object>(value: T): T;
5
+ export declare function isCssMacroTailwindPlugin(value: unknown): boolean;
6
+ export declare function hasCssMacroTailwindPlugin(plugins: unknown): boolean;
7
+ export declare function hasCssMacroTailwindV4Directive(css: string | undefined): boolean;
8
+ export declare function withCssMacroStyleOptions(options: Partial<IStyleHandlerOptions> | undefined): Partial<IStyleHandlerOptions>;
9
+ export declare function hasCssMacroStyleOptions(options: Partial<IStyleHandlerOptions> | undefined): boolean;
10
+ export declare function transformCssMacroCss(css: string): Promise<string>;
@@ -1,7 +1,9 @@
1
1
  export declare const uniAppPlatform: string[];
2
2
  export declare const queryKey = "weapp-tw-platform";
3
- export declare function createMediaQuery(value: string): string;
4
- export declare function createNegativeMediaQuery(value: string): string;
3
+ export declare const ifdefAtRule = "weapp-tw-ifdef";
4
+ export declare const ifndefAtRule = "weapp-tw-ifndef";
5
+ export declare function createConditionalAtRule(value: string): string;
6
+ export declare function createNegativeConditionalAtRule(value: string): string;
5
7
  export declare function normalComment(text: string): string;
6
8
  export declare function ifdef(text: string): {
7
9
  start: string;
@@ -12,3 +14,4 @@ export declare function ifndef(text: string): {
12
14
  end: string;
13
15
  };
14
16
  export declare function matchCustomPropertyFromValue(str: string, cb: (arr: RegExpExecArray, index: number) => void): void;
17
+ export declare function parseConditionalAtRuleParam(params: string): string;
@@ -1,4 +1,5 @@
1
1
  import type { PluginCreator } from 'postcss';
2
+ export declare const CSS_MACRO_POSTCSS_PLUGIN_NAME = "postcss-weapp-tw-css-macro-plugin";
2
3
  export interface Options {
3
4
  }
4
5
  declare const creator: PluginCreator<Options>;
@@ -1,46 +1,7 @@
1
- const require_constants = require("../constants-p1dyh1x1.js");
2
- //#region src/css-macro/postcss.ts
3
- const IFDEF_ENDIF_RE = /#(?:ifn?def|endif)/;
4
- const creator = () => {
5
- return {
6
- postcssPlugin: "postcss-weapp-tw-css-macro-plugin",
7
- prepare() {
8
- return {
9
- AtRule(atRule, helper) {
10
- if (atRule.name === "media") {
11
- const values = [];
12
- require_constants.matchCustomPropertyFromValue(atRule.params, (arr) => {
13
- values.push(arr[1]);
14
- });
15
- if (values.length > 0) {
16
- const isNegative = atRule.params.includes("not");
17
- const text = values.join(" ");
18
- const comment = isNegative ? require_constants.ifndef(text) : require_constants.ifdef(text);
19
- const nextNodes = [
20
- helper.comment({
21
- raws: { before: "\n" },
22
- text: comment.start
23
- }),
24
- ...(atRule.nodes ?? []).map((node) => node.clone()),
25
- helper.comment({
26
- raws: { before: "\n" },
27
- text: comment.end
28
- })
29
- ];
30
- atRule.replaceWith(nextNodes);
31
- }
32
- }
33
- },
34
- CommentExit(comment) {
35
- if (IFDEF_ENDIF_RE.test(comment.text)) {
36
- comment.raws.left = " ";
37
- comment.raws.right = " ";
38
- }
39
- }
40
- };
41
- }
42
- };
43
- };
44
- creator.postcss = true;
45
- //#endregion
46
- module.exports = creator;
1
+ Object.defineProperties(exports, {
2
+ __esModule: { value: true },
3
+ [Symbol.toStringTag]: { value: "Module" }
4
+ });
5
+ const require_postcss = require("../postcss-CiYLsqZn.js");
6
+ exports.CSS_MACRO_POSTCSS_PLUGIN_NAME = require_postcss.CSS_MACRO_POSTCSS_PLUGIN_NAME;
7
+ exports.default = require_postcss.creator;
@@ -1,46 +1,2 @@
1
- import { a as matchCustomPropertyFromValue, i as ifndef, r as ifdef } from "../constants-B-_T5UnW.mjs";
2
- //#region src/css-macro/postcss.ts
3
- const IFDEF_ENDIF_RE = /#(?:ifn?def|endif)/;
4
- const creator = () => {
5
- return {
6
- postcssPlugin: "postcss-weapp-tw-css-macro-plugin",
7
- prepare() {
8
- return {
9
- AtRule(atRule, helper) {
10
- if (atRule.name === "media") {
11
- const values = [];
12
- matchCustomPropertyFromValue(atRule.params, (arr) => {
13
- values.push(arr[1]);
14
- });
15
- if (values.length > 0) {
16
- const isNegative = atRule.params.includes("not");
17
- const text = values.join(" ");
18
- const comment = isNegative ? ifndef(text) : ifdef(text);
19
- const nextNodes = [
20
- helper.comment({
21
- raws: { before: "\n" },
22
- text: comment.start
23
- }),
24
- ...(atRule.nodes ?? []).map((node) => node.clone()),
25
- helper.comment({
26
- raws: { before: "\n" },
27
- text: comment.end
28
- })
29
- ];
30
- atRule.replaceWith(nextNodes);
31
- }
32
- }
33
- },
34
- CommentExit(comment) {
35
- if (IFDEF_ENDIF_RE.test(comment.text)) {
36
- comment.raws.left = " ";
37
- comment.raws.right = " ";
38
- }
39
- }
40
- };
41
- }
42
- };
43
- };
44
- creator.postcss = true;
45
- //#endregion
46
- export { creator as default };
1
+ import { n as creator, t as CSS_MACRO_POSTCSS_PLUGIN_NAME } from "../postcss-C7BMYpEF.mjs";
2
+ export { CSS_MACRO_POSTCSS_PLUGIN_NAME, creator as default };
@@ -1 +1,2 @@
1
+ export { default } from './css-macro/index'
1
2
  export * from './css-macro/index'
package/dist/css-macro.js CHANGED
@@ -1,6 +1,7 @@
1
- const require_chunk = require("./chunk-8l464Juk.js");
2
- require("./utils-DmC9_In3.js");
3
- const require_constants = require("./constants-p1dyh1x1.js");
1
+ const require_chunk = require("./chunk-C5U5_Hdc.js");
2
+ const require_postcss = require("./postcss-CiYLsqZn.js");
3
+ const require_auto = require("./auto-TH1jG2UW.js");
4
+ require("./utils-D7Ygohep.js");
4
5
  let tailwindcss_plugin = require("tailwindcss/plugin");
5
6
  tailwindcss_plugin = require_chunk.__toESM(tailwindcss_plugin);
6
7
  let _weapp_tailwindcss_shared = require("@weapp-tailwindcss/shared");
@@ -9,7 +10,7 @@ const defaultOptions = {
9
10
  dynamic: true,
10
11
  variantsMap: {}
11
12
  };
12
- const cssMacro = tailwindcss_plugin.default.withOptions((options) => {
13
+ const cssMacroFactory = tailwindcss_plugin.default.withOptions((options) => {
13
14
  const { dynamic, variantsMap } = (0, _weapp_tailwindcss_shared.defu)(options ?? {}, defaultOptions);
14
15
  const staticVariants = Object.entries(variantsMap).map(([name, config]) => {
15
16
  if (typeof config === "string") return {
@@ -26,14 +27,22 @@ const cssMacro = tailwindcss_plugin.default.withOptions((options) => {
26
27
  return (api) => {
27
28
  const { matchVariant, addVariant } = api;
28
29
  if (dynamic && typeof matchVariant === "function") {
29
- matchVariant("ifdef", (value) => require_constants.createMediaQuery(value));
30
- matchVariant("ifndef", (value) => require_constants.createNegativeMediaQuery(value));
30
+ matchVariant("ifdef", (value) => require_postcss.createConditionalAtRule(value));
31
+ matchVariant("ifndef", (value) => require_postcss.createNegativeConditionalAtRule(value));
31
32
  }
32
33
  if (typeof addVariant === "function") for (const variant of staticVariants) {
33
- const query = variant.negative ? require_constants.createNegativeMediaQuery(variant.value) : require_constants.createMediaQuery(variant.value);
34
+ const query = variant.negative ? require_postcss.createNegativeConditionalAtRule(variant.value) : require_postcss.createConditionalAtRule(variant.value);
34
35
  addVariant(variant.name, query);
35
36
  }
36
37
  };
37
38
  });
39
+ const cssMacro = require_auto.markCssMacroPlugin(((options) => {
40
+ return require_auto.markCssMacroPlugin(cssMacroFactory(options));
41
+ }));
42
+ const cssMacroOptionsFunction = cssMacro;
43
+ const cssMacroFactoryOptionsFunction = cssMacroFactory;
44
+ cssMacroOptionsFunction.__isOptionsFunction = cssMacroFactoryOptionsFunction.__isOptionsFunction;
45
+ cssMacroOptionsFunction.__pluginFunction = cssMacroFactoryOptionsFunction.__pluginFunction;
46
+ cssMacroOptionsFunction.__configFunction = cssMacroFactoryOptionsFunction.__configFunction;
38
47
  //#endregion
39
48
  module.exports = cssMacro;
@@ -1,12 +1,13 @@
1
- import { t as defu } from "./utils-7DUGTFED.mjs";
2
- import { n as createNegativeMediaQuery, t as createMediaQuery } from "./constants-B-_T5UnW.mjs";
1
+ import { i as createNegativeConditionalAtRule, r as createConditionalAtRule } from "./postcss-C7BMYpEF.mjs";
2
+ import { i as markCssMacroPlugin } from "./auto-XyKTOP7B.mjs";
3
+ import { t as defu } from "./utils-DsaS975I.mjs";
3
4
  import plugin from "tailwindcss/plugin";
4
5
  //#region src/css-macro/index.ts
5
6
  const defaultOptions = {
6
7
  dynamic: true,
7
8
  variantsMap: {}
8
9
  };
9
- const cssMacro = plugin.withOptions((options) => {
10
+ const cssMacroFactory = plugin.withOptions((options) => {
10
11
  const { dynamic, variantsMap } = defu(options ?? {}, defaultOptions);
11
12
  const staticVariants = Object.entries(variantsMap).map(([name, config]) => {
12
13
  if (typeof config === "string") return {
@@ -23,14 +24,22 @@ const cssMacro = plugin.withOptions((options) => {
23
24
  return (api) => {
24
25
  const { matchVariant, addVariant } = api;
25
26
  if (dynamic && typeof matchVariant === "function") {
26
- matchVariant("ifdef", (value) => createMediaQuery(value));
27
- matchVariant("ifndef", (value) => createNegativeMediaQuery(value));
27
+ matchVariant("ifdef", (value) => createConditionalAtRule(value));
28
+ matchVariant("ifndef", (value) => createNegativeConditionalAtRule(value));
28
29
  }
29
30
  if (typeof addVariant === "function") for (const variant of staticVariants) {
30
- const query = variant.negative ? createNegativeMediaQuery(variant.value) : createMediaQuery(variant.value);
31
+ const query = variant.negative ? createNegativeConditionalAtRule(variant.value) : createConditionalAtRule(variant.value);
31
32
  addVariant(variant.name, query);
32
33
  }
33
34
  };
34
35
  });
36
+ const cssMacro = markCssMacroPlugin(((options) => {
37
+ return markCssMacroPlugin(cssMacroFactory(options));
38
+ }));
39
+ const cssMacroOptionsFunction = cssMacro;
40
+ const cssMacroFactoryOptionsFunction = cssMacroFactory;
41
+ cssMacroOptionsFunction.__isOptionsFunction = cssMacroFactoryOptionsFunction.__isOptionsFunction;
42
+ cssMacroOptionsFunction.__pluginFunction = cssMacroFactoryOptionsFunction.__pluginFunction;
43
+ cssMacroOptionsFunction.__configFunction = cssMacroFactoryOptionsFunction.__configFunction;
35
44
  //#endregion
36
45
  export { cssMacro as default };
@@ -0,0 +1,151 @@
1
+ import { a as noop } from "./utils-DsaS975I.mjs";
2
+ import { MappingChars2String, isAllowedClassName } from "@weapp-core/escape";
3
+ //#region src/js/babel/cache-options.ts
4
+ const DEFAULT_PARSE_CACHE_MAX_SOURCE_LENGTH = 5e4;
5
+ const HARD_PARSE_CACHE_MAX_ENTRIES = 1024;
6
+ //#endregion
7
+ //#region src/defaults.ts
8
+ const CSS_FILE_PATTERN = /.+\.(?:wx|ac|jx|tt|q|c|ty)ss$/;
9
+ const HTML_FILE_PATTERN = /.+\.(?:(?:wx|ax|jx|ks|tt|q|ty|xhs)ml|swan)$/;
10
+ const JS_FILE_PATTERN = /.+\.[cm]?js?$/;
11
+ const BACKSLASH_RE = /\\/g;
12
+ function normalizePath(p) {
13
+ return p.replace(BACKSLASH_RE, "/");
14
+ }
15
+ const MPX_STYLES_DIR_PATTERN = /(?:^|\/)styles\/.*\.(?:wx|ac|jx|tt|q|c|ty)ss$/i;
16
+ const KBONE_MAIN_CSS_RE = /^(?:common\/)?miniprogram-app/;
17
+ const IMPLICIT_MAIN_CSS_RE = /^(?:app|common\/main|bundle)(?:\.|\/|$)/;
18
+ const MAIN_CSS_CHUNK_MATCHERS = {
19
+ "uni-app": (file) => file.startsWith("common/main") || file.startsWith("app"),
20
+ "uni-app-vite": (file) => file.startsWith("app") || file.startsWith("common/main"),
21
+ "uni-app-x": (file) => file.startsWith("app") || file.startsWith("common/main"),
22
+ "mpx": (file) => {
23
+ const normalized = normalizePath(file);
24
+ if (normalized.startsWith("app")) return true;
25
+ return MPX_STYLES_DIR_PATTERN.test(normalized);
26
+ },
27
+ "taro": (file) => file.startsWith("app"),
28
+ "remax": (file) => file.startsWith("app"),
29
+ "rax": (file) => file.startsWith("bundle"),
30
+ "native": (file) => file.startsWith("app"),
31
+ "weapp-vite": (file) => file.startsWith("app"),
32
+ "kbone": (file) => KBONE_MAIN_CSS_RE.test(file)
33
+ };
34
+ const alwaysFalse = () => false;
35
+ const TAILWIND_V3_CSS_PREFLIGHT = {
36
+ "box-sizing": "border-box",
37
+ "border-width": "0",
38
+ "border-style": "solid",
39
+ "border-color": "currentColor"
40
+ };
41
+ const TAILWIND_V4_CSS_PREFLIGHT = {
42
+ "box-sizing": "border-box",
43
+ "margin": "0",
44
+ "padding": "0",
45
+ "border": "0 solid"
46
+ };
47
+ function getDefaultCssPreflight(tailwindcssMajorVersion) {
48
+ return { ...tailwindcssMajorVersion === 4 ? TAILWIND_V4_CSS_PREFLIGHT : TAILWIND_V3_CSS_PREFLIGHT };
49
+ }
50
+ function resolveDefaultCssPreflight(cssPreflight, tailwindcssMajorVersion) {
51
+ if (cssPreflight === false) return false;
52
+ return {
53
+ ...getDefaultCssPreflight(tailwindcssMajorVersion),
54
+ ...cssPreflight ?? {}
55
+ };
56
+ }
57
+ function createMainCssChunkMatcher() {
58
+ return (file, appType) => {
59
+ if (!appType) {
60
+ const normalized = normalizePath(file);
61
+ return IMPLICIT_MAIN_CSS_RE.test(normalized) || MPX_STYLES_DIR_PATTERN.test(normalized) || KBONE_MAIN_CSS_RE.test(normalized);
62
+ }
63
+ const matcher = MAIN_CSS_CHUNK_MATCHERS[appType];
64
+ return matcher ? matcher(file) : true;
65
+ };
66
+ }
67
+ function getDefaultOptions() {
68
+ return {
69
+ /**
70
+ * wxss 微信小程序
71
+ * acss 支付宝小程序
72
+ * jxss 京东小程序
73
+ * ttss 头条小程序
74
+ * qss QQ小程序
75
+ * css 最正常的样式文件
76
+ * tyss 涂鸦小程序
77
+ */
78
+ cssMatcher: (file) => CSS_FILE_PATTERN.test(file),
79
+ /**
80
+ * wxml 微信小程序
81
+ * axml 支付宝小程序
82
+ * jxml 京东小程序
83
+ * ksml 快手小程序
84
+ * ttml 头条小程序
85
+ * qml QQ小程序
86
+ * tyml 涂鸦小程序
87
+ * xhsml 小红书小程序
88
+ * swan 百度小程序
89
+ */
90
+ htmlMatcher: (file) => HTML_FILE_PATTERN.test(file),
91
+ jsMatcher: (file) => {
92
+ if (file.includes("node_modules")) return false;
93
+ return JS_FILE_PATTERN.test(file);
94
+ },
95
+ mainCssChunkMatcher: createMainCssChunkMatcher(),
96
+ wxsMatcher: alwaysFalse,
97
+ cssPreflight: getDefaultCssPreflight(3),
98
+ disabled: false,
99
+ onLoad: noop,
100
+ onStart: noop,
101
+ onEnd: noop,
102
+ onUpdate: noop,
103
+ customAttributes: {},
104
+ customReplaceDictionary: MappingChars2String,
105
+ appType: void 0,
106
+ arbitraryValues: {
107
+ allowDoubleQuotes: false,
108
+ bareArbitraryValues: false
109
+ },
110
+ unocss: false,
111
+ cssChildCombinatorReplaceValue: ["view", "text"],
112
+ inlineWxs: false,
113
+ injectAdditionalCssVarScope: false,
114
+ jsPreserveClass: (keyword) => {
115
+ /**
116
+ * 默认保留 keyword
117
+ */
118
+ if (keyword === "*") return true;
119
+ return false;
120
+ },
121
+ disabledDefaultTemplateHandler: false,
122
+ cssSelectorReplacement: {
123
+ root: [
124
+ "page",
125
+ ".tw-root",
126
+ "wx-root-portal-content"
127
+ ],
128
+ universal: ["view", "text"]
129
+ },
130
+ babelParserOptions: {
131
+ sourceType: "unambiguous",
132
+ cache: true,
133
+ cacheKey: "st:unambiguous",
134
+ cacheMaxEntries: 128,
135
+ cacheMaxSourceLength: DEFAULT_PARSE_CACHE_MAX_SOURCE_LENGTH
136
+ },
137
+ postcssOptions: {},
138
+ cssRemoveProperty: true,
139
+ cssRemoveHoverPseudoClass: true,
140
+ ignoreCallExpressionIdentifiers: [],
141
+ ignoreTaggedTemplateExpressionIdentifiers: ["weappTwIgnore"],
142
+ replaceRuntimePackages: false,
143
+ generator: {},
144
+ tailwindcssPatcherOptions: { filter(className) {
145
+ return !isAllowedClassName(className);
146
+ } },
147
+ logLevel: "info"
148
+ };
149
+ }
150
+ //#endregion
151
+ export { resolveDefaultCssPreflight as a, getDefaultOptions as i, TAILWIND_V4_CSS_PREFLIGHT as n, DEFAULT_PARSE_CACHE_MAX_SOURCE_LENGTH as o, getDefaultCssPreflight as r, HARD_PARSE_CACHE_MAX_ENTRIES as s, TAILWIND_V3_CSS_PREFLIGHT as t };