UNPKG

weapp-tailwindcss

Version:

把 tailwindcss 原子化样式思想,带给小程序开发者们! bring tailwindcss to miniprogram developers!

115 lines (111 loc) 2.88 kB
import { logger, resolveTailwindcssBasedir } from "./chunk-SZOXLSNK.mjs"; import { defuOverrideArray } from "./chunk-RR5HCKVQ.mjs"; import "./chunk-SM5V25IN.mjs"; // src/presets/shared.ts function normalizeCssEntries(entries) { if (!entries) { return void 0; } const normalized = Array.isArray(entries) ? entries : [entries]; return normalized.length > 0 ? normalized : void 0; } function createBasePreset(options = {}) { const { base, cssEntries, resolve, rawOptions, ...userOptions } = options; const baseDir = resolveTailwindcssBasedir(base); const normalizedCssEntries = normalizeCssEntries(cssEntries); const tailwindConfig = { v2: { cwd: baseDir }, v3: { cwd: baseDir }, v4: { base: baseDir, cssEntries: normalizedCssEntries } }; if (normalizedCssEntries && normalizedCssEntries.length > 0) { tailwindConfig.version = 4; } const patchTailwindConfig = resolve ? { ...tailwindConfig, resolve } : tailwindConfig; const preset = { tailwindcssBasedir: baseDir, tailwindcss: tailwindConfig, tailwindcssPatcherOptions: { cwd: baseDir, tailwind: patchTailwindConfig } }; const mergedUserOptions = defuOverrideArray(userOptions, rawOptions ?? {}); return defuOverrideArray( mergedUserOptions, preset ); } // src/presets/uni-app.ts import process from "process"; function uniApp(options = {}) { const uniPlatform = process.env.UNI_PLATFORM; const disableInH5OrApp = uniPlatform === "h5" || uniPlatform === "app" || uniPlatform === "app-plus"; return createBasePreset({ disabled: disableInH5OrApp ? true : void 0, ...options }); } // src/presets/uni-app-x.ts import process2 from "process"; function uniAppX(options) { logger.info(`UNI_PLATFORM: ${process2.env.UNI_PLATFORM}`); const isApp = process2.env.UNI_PLATFORM === "app" || process2.env.UNI_PLATFORM === "app-plus" || process2.env.UNI_PLATFORM === "app-harmony"; const cssEntries = normalizeCssEntries(options.cssEntries); return defuOverrideArray( options.rawOptions ?? {}, { uniAppX: isApp, rem2rpx: options.rem2rpx, tailwindcssBasedir: options.base, tailwindcssPatcherOptions: { cwd: options.base, tailwind: { cwd: options.base, resolve: options.resolve, v3: { cwd: options.base }, v4: { base: options.base, cssEntries } } }, cssPreflight: { "border-style": false }, cssPresetEnv: { features: { "custom-properties": { preserve: false } } }, ...options.customAttributes ? { customAttributes: options.customAttributes } : {} } ); } export { createBasePreset, normalizeCssEntries, uniApp, uniAppX };