tailwind-styled-v4 5.0.2 → 5.0.3

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.
package/dist/next.js CHANGED
@@ -16239,21 +16239,23 @@ try {
16239
16239
  var __toCommonJS = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
16240
16240
  var require_compiler22 = __commonJS222({
16241
16241
  "dist/compiler.js"(exports$122, module2) {
16242
- var crypto = __require222("crypto");
16243
- var fs322 = __require222("fs");
16244
16242
  var module$122 = __require222("module");
16245
16243
  var path7 = __require222("path");
16246
16244
  var url222 = __require222("url");
16247
16245
  var tailwindMerge = __require222("tailwind-merge");
16246
+ var fs22 = __require222("fs");
16247
+ var crypto = __require222("crypto");
16248
16248
  var _documentCurrentScript22 = typeof document !== "undefined" ? document.currentScript : null;
16249
16249
  function _interopDefault222(e) {
16250
16250
  return e && e.__esModule ? e : { default: e };
16251
16251
  }
16252
- var fs3__default = /* @__PURE__ */ _interopDefault222(fs322);
16253
16252
  var path7__default = /* @__PURE__ */ _interopDefault222(path7);
16253
+ var fs2__default2 = /* @__PURE__ */ _interopDefault222(fs22);
16254
+ var __create222 = Object.create;
16254
16255
  var __defProp222 = Object.defineProperty;
16255
16256
  var __getOwnPropDesc222 = Object.getOwnPropertyDescriptor;
16256
16257
  var __getOwnPropNames2222 = Object.getOwnPropertyNames;
16258
+ var __getProtoOf222 = Object.getPrototypeOf;
16257
16259
  var __hasOwnProp222 = Object.prototype.hasOwnProperty;
16258
16260
  var __require2222 = /* @__PURE__ */ ((x) => typeof __require222 !== "undefined" ? __require222 : typeof Proxy !== "undefined" ? new Proxy(x, {
16259
16261
  get: (a, b) => (typeof __require222 !== "undefined" ? __require222 : a)[b]
@@ -16264,6 +16266,9 @@ try {
16264
16266
  var __esm2 = (fn, res) => function __init() {
16265
16267
  return fn && (res = (0, fn[__getOwnPropNames2222(fn)[0]])(fn = 0)), res;
16266
16268
  };
16269
+ var __commonJS2222 = (cb, mod) => function __require22222() {
16270
+ return mod || (0, cb[__getOwnPropNames2222(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
16271
+ };
16267
16272
  var __export2 = (target, all) => {
16268
16273
  for (var name in all)
16269
16274
  __defProp222(target, name, { get: all[name], enumerable: true });
@@ -16276,48 +16281,438 @@ try {
16276
16281
  }
16277
16282
  return to;
16278
16283
  };
16284
+ var __toESM222 = (mod, isNodeMode, target) => (target = mod != null ? __create222(__getProtoOf222(mod)) : {}, __copyProps222(
16285
+ // If the importer is in node compatibility mode or this is not an ESM
16286
+ // file that has been converted to a CommonJS file using a Babel-
16287
+ // compatible transform (i.e. "__esModule" has not been set), then set
16288
+ // "default" to the CommonJS "module.exports" for node compatibility.
16289
+ __defProp222(target, "default", { value: mod, enumerable: true }),
16290
+ mod
16291
+ ));
16279
16292
  var __toCommonJS2 = (mod) => __copyProps222(__defProp222({}, "__esModule", { value: true }), mod);
16280
- function getEnvLevel() {
16281
- const env = process.env.TWS_LOG_LEVEL?.toLowerCase();
16282
- if (env && env in LEVELS) return env;
16283
- return process.env.TWS_DEBUG_SCANNER === "1" ? "debug" : "info";
16284
- }
16285
- function createLogger22(prefix, level) {
16286
- let currentLevel = getEnvLevel();
16287
- const log222 = (msgLevel, stream, args) => {
16288
- if (LEVELS[msgLevel] > LEVELS[currentLevel]) return;
16289
- const line = `[${prefix}] ${args.map(String).join(" ")}
16290
- `;
16291
- process[stream].write(line);
16292
- };
16293
- return {
16294
- error: (...a) => log222("error", "stderr", a),
16295
- warn: (...a) => log222("warn", "stderr", a),
16296
- info: (...a) => log222("info", "stdout", a),
16297
- debug: (...a) => log222("debug", "stderr", a),
16298
- setLevel: (l) => {
16299
- currentLevel = l;
16293
+ var require_plugin2 = __commonJS2222({
16294
+ "dist/plugin.js"(exports$1222) {
16295
+ var TOKEN_ENGINE_KEY = "__TW_TOKEN_ENGINE__";
16296
+ function resolveTokenEngine() {
16297
+ if (typeof globalThis !== "undefined") {
16298
+ return globalThis[TOKEN_ENGINE_KEY];
16299
+ }
16300
+ return null;
16300
16301
  }
16301
- };
16302
- }
16303
- var LEVELS;
16304
- var init_logger = __esm2({
16305
- "packages/shared/src/logger.ts"() {
16306
- LEVELS = { silent: 0, error: 1, warn: 2, info: 3, debug: 4 };
16307
- createLogger22("tailwind-styled");
16308
- }
16309
- });
16310
- function hashContent(content, algorithm = "md5", length = 8) {
16311
- return crypto.createHash(algorithm).update(content).digest("hex").slice(0, length);
16312
- }
16313
- var init_hash = __esm2({
16314
- "packages/shared/src/hash.ts"() {
16302
+ function readToken(engine, name) {
16303
+ if (!engine) return void 0;
16304
+ if (typeof engine.getToken === "function") return engine.getToken(name);
16305
+ if (typeof engine.getTokens === "function") {
16306
+ const tokens = engine.getTokens();
16307
+ return tokens?.[name];
16308
+ }
16309
+ return void 0;
16310
+ }
16311
+ function createTwPlugin(options = {}) {
16312
+ return {
16313
+ async resolveId(source, importer) {
16314
+ if (!source.startsWith("tw.") && !source.startsWith("tw:")) return null;
16315
+ const importPath = source.replace(/^tw[.:]/, "");
16316
+ const resolved = await this.resolve(importPath, importer, { skipSelf: true });
16317
+ if (resolved) return { id: resolved.id };
16318
+ return null;
16319
+ },
16320
+ async load(id) {
16321
+ return null;
16322
+ },
16323
+ async transform(code, id) {
16324
+ return null;
16325
+ },
16326
+ getToken(name) {
16327
+ const engine = resolveTokenEngine();
16328
+ return readToken(engine, name);
16329
+ },
16330
+ subscribeTokens(callback) {
16331
+ const engine = resolveTokenEngine();
16332
+ if (!engine) return () => {
16333
+ };
16334
+ if (typeof engine.subscribeTokens === "function") return engine.subscribeTokens(callback);
16335
+ if (typeof engine.subscribe === "function") return engine.subscribe(callback);
16336
+ return () => {
16337
+ };
16338
+ }
16339
+ };
16340
+ }
16341
+ var globalRegistry = {
16342
+ transforms: [],
16343
+ tokens: {}
16344
+ };
16345
+ function getGlobalRegistry2() {
16346
+ return globalRegistry;
16347
+ }
16348
+ function registerTransform(transform) {
16349
+ globalRegistry.transforms.push(transform);
16350
+ }
16351
+ function registerToken(name, value) {
16352
+ globalRegistry.tokens[name] = value;
16353
+ }
16354
+ function createRegistry() {
16355
+ return {
16356
+ variants: /* @__PURE__ */ new Map(),
16357
+ utilities: /* @__PURE__ */ new Map(),
16358
+ tokens: /* @__PURE__ */ new Map(),
16359
+ transforms: [],
16360
+ cssHooks: [],
16361
+ buildHooks: [],
16362
+ plugins: /* @__PURE__ */ new Set()
16363
+ };
16364
+ }
16365
+ var _globalRegistry = createRegistry();
16366
+ function resetGlobalRegistry() {
16367
+ _globalRegistry = createRegistry();
16368
+ }
16369
+ function createContext(registry, config = {}) {
16370
+ return {
16371
+ config,
16372
+ addVariant(name, resolver) {
16373
+ registry.variants.set(name, resolver);
16374
+ },
16375
+ addUtility(name, styles) {
16376
+ registry.utilities.set(name, styles);
16377
+ },
16378
+ addToken(name, value) {
16379
+ const normalized = name.replace(/[^a-zA-Z0-9-]/g, "-").toLowerCase();
16380
+ registry.tokens.set(normalized, value);
16381
+ },
16382
+ addTransform(fn) {
16383
+ registry.transforms.push(fn);
16384
+ },
16385
+ onGenerateCSS(hook) {
16386
+ registry.cssHooks.push(hook);
16387
+ },
16388
+ onBuildEnd(hook) {
16389
+ registry.buildHooks.push(hook);
16390
+ },
16391
+ getToken(name) {
16392
+ return readToken(resolveTokenEngine(), name);
16393
+ },
16394
+ subscribeTokens(callback) {
16395
+ const engine = resolveTokenEngine();
16396
+ if (!engine) return () => {
16397
+ };
16398
+ if (typeof engine.subscribeTokens === "function") return engine.subscribeTokens(callback);
16399
+ if (typeof engine.subscribe === "function") return engine.subscribe(callback);
16400
+ return () => {
16401
+ };
16402
+ }
16403
+ };
16404
+ }
16405
+ function createTw(config = {}) {
16406
+ const registry = createRegistry();
16407
+ const ctx = createContext(registry, config);
16408
+ const result = ctx;
16409
+ result.registry = {
16410
+ plugins: registry.plugins,
16411
+ variants: registry.variants,
16412
+ utilities: registry.utilities,
16413
+ tokens: registry.tokens
16414
+ };
16415
+ result.use = (plugin) => {
16416
+ plugin.setup(ctx);
16417
+ registry.plugins.add(plugin.name);
16418
+ };
16419
+ if (config.plugins && Array.isArray(config.plugins)) {
16420
+ for (const plugin of config.plugins) {
16421
+ if (plugin && plugin.name) {
16422
+ result.use(plugin);
16423
+ }
16424
+ }
16425
+ }
16426
+ return result;
16427
+ }
16428
+ function use(plugin) {
16429
+ const ctx = createContext(_globalRegistry);
16430
+ plugin.setup(ctx);
16431
+ }
16432
+ function presetTokens(tokens) {
16433
+ return {
16434
+ name: "preset-tokens",
16435
+ setup(ctx) {
16436
+ for (const [name, value] of Object.entries(tokens)) {
16437
+ ctx.addToken(name, value);
16438
+ }
16439
+ }
16440
+ };
16441
+ }
16442
+ function presetVariants(variants) {
16443
+ return {
16444
+ name: "preset-variants",
16445
+ setup(ctx) {
16446
+ for (const [name, resolver] of Object.entries(variants)) {
16447
+ ctx.addVariant(name, resolver);
16448
+ }
16449
+ }
16450
+ };
16451
+ }
16452
+ function presetScrollbar() {
16453
+ return {
16454
+ name: "preset-scrollbar",
16455
+ setup(ctx) {
16456
+ ctx.addVariant("scrollbar-thin", () => "::-webkit-scrollbar{width:8px;height:8px}");
16457
+ ctx.addVariant("scrollbar-none", () => "::-webkit-scrollbar{display:none}");
16458
+ ctx.addUtility("scrollbar-hide", { "-ms-overflow-style": "none", "scrollbar-width": "none" });
16459
+ }
16460
+ };
16461
+ }
16462
+ exports$1222.createTw = createTw;
16463
+ exports$1222.createTwPlugin = createTwPlugin;
16464
+ exports$1222.getGlobalRegistry = getGlobalRegistry2;
16465
+ exports$1222.presetScrollbar = presetScrollbar;
16466
+ exports$1222.presetTokens = presetTokens;
16467
+ exports$1222.presetVariants = presetVariants;
16468
+ exports$1222.registerToken = registerToken;
16469
+ exports$1222.registerTransform = registerTransform;
16470
+ exports$1222.resetGlobalRegistry = resetGlobalRegistry;
16471
+ exports$1222.use = use;
16315
16472
  }
16316
16473
  });
16317
- var init_src = __esm2({
16318
- "packages/shared/src/index.ts"() {
16319
- init_logger();
16320
- init_hash();
16474
+ var require_shared222 = __commonJS2222({
16475
+ "dist/shared.js"(exports$1222) {
16476
+ var fs5 = __require2222("fs");
16477
+ var module$1222 = __require2222("module");
16478
+ var os = __require2222("os");
16479
+ var path9 = __require2222("path");
16480
+ var url2222 = __require2222("url");
16481
+ var crypto2 = __require2222("crypto");
16482
+ function _interopDefault2222(e) {
16483
+ return e && e.__esModule ? e : { default: e };
16484
+ }
16485
+ var fs__default22 = /* @__PURE__ */ _interopDefault2222(fs5);
16486
+ var os__default = /* @__PURE__ */ _interopDefault2222(os);
16487
+ var path__default2 = /* @__PURE__ */ _interopDefault2222(path9);
16488
+ var LRUCache = class {
16489
+ constructor(max = 256, ttlMs = null) {
16490
+ this.map = /* @__PURE__ */ new Map();
16491
+ this.max = max;
16492
+ this.ttlMs = ttlMs;
16493
+ }
16494
+ get(key) {
16495
+ const entry = this.map.get(key);
16496
+ if (!entry) return void 0;
16497
+ if (this.ttlMs !== null && Date.now() - entry.ts > this.ttlMs) {
16498
+ this.map.delete(key);
16499
+ return void 0;
16500
+ }
16501
+ this.map.delete(key);
16502
+ this.map.set(key, entry);
16503
+ return entry.value;
16504
+ }
16505
+ set(key, value) {
16506
+ if (this.map.has(key)) this.map.delete(key);
16507
+ else if (this.map.size >= this.max) {
16508
+ this.map.delete(this.map.keys().next().value);
16509
+ }
16510
+ this.map.set(key, { value, ts: Date.now() });
16511
+ }
16512
+ has(key) {
16513
+ return this.get(key) !== void 0;
16514
+ }
16515
+ delete(key) {
16516
+ this.map.delete(key);
16517
+ }
16518
+ clear() {
16519
+ this.map.clear();
16520
+ }
16521
+ get size() {
16522
+ return this.map.size;
16523
+ }
16524
+ keys() {
16525
+ return this.map.keys();
16526
+ }
16527
+ *values() {
16528
+ for (const entry of this.map.values()) {
16529
+ yield entry.value;
16530
+ }
16531
+ }
16532
+ *entries() {
16533
+ for (const [key, entry] of this.map.entries()) {
16534
+ yield [key, entry.value];
16535
+ }
16536
+ }
16537
+ };
16538
+ function getPlatformExtension() {
16539
+ const platform = os__default.default.platform();
16540
+ switch (platform) {
16541
+ case "win32":
16542
+ return ".node";
16543
+ case "darwin":
16544
+ return ".dylib";
16545
+ case "linux":
16546
+ return ".so";
16547
+ default:
16548
+ return ".node";
16549
+ }
16550
+ }
16551
+ function formatErrorMessage2(error) {
16552
+ return error instanceof Error ? error.message : String(error);
16553
+ }
16554
+ function resolveRuntimeDir2(dirnameValue, moduleImportUrl) {
16555
+ if (typeof dirnameValue === "string" && dirnameValue.length > 0) return dirnameValue;
16556
+ return path__default2.default.dirname(url2222.fileURLToPath(moduleImportUrl));
16557
+ }
16558
+ function resolveNativeBindingCandidates2(options) {
16559
+ const out = [];
16560
+ const envVarNames = options.envVarNames ?? ["TWS_NATIVE_PATH"];
16561
+ for (const envVarName of envVarNames) {
16562
+ const raw = process.env[envVarName]?.trim();
16563
+ if (!raw) continue;
16564
+ const resolved = path__default2.default.resolve(raw);
16565
+ if (options.enforceNodeExtensionForEnvPath) {
16566
+ if (path__default2.default.extname(resolved).toLowerCase() !== ".node") {
16567
+ throw new Error(
16568
+ `Invalid native binding path from ${envVarName}="${raw}". Expected a .node file.`
16569
+ );
16570
+ }
16571
+ }
16572
+ out.push(resolved);
16573
+ }
16574
+ if (options.includeDefaultCandidates !== false) {
16575
+ const ext = options.platformExtension ?? getPlatformExtension();
16576
+ const defaultBindingName = `tailwind_styled_parser${ext}`;
16577
+ out.push(path__default2.default.resolve(process.cwd(), "native", defaultBindingName));
16578
+ out.push(path__default2.default.resolve(options.runtimeDir, "..", "..", "..", "native", defaultBindingName));
16579
+ }
16580
+ return Array.from(new Set(out));
16581
+ }
16582
+ function parseDebugToken(namespace, token) {
16583
+ if (token === "*" || token === namespace || token === "tailwind-styled:*") return true;
16584
+ return token.endsWith("*") && namespace.startsWith(token.slice(0, -1));
16585
+ }
16586
+ function isDebugNamespaceEnabled(namespace) {
16587
+ if (process.env.TWS_DEBUG === "1" || process.env.TAILWIND_STYLED_DEBUG === "1") return true;
16588
+ const raw = process.env.DEBUG;
16589
+ if (!raw) return false;
16590
+ return raw.split(",").map((token) => token.trim()).some((token) => parseDebugToken(namespace, token));
16591
+ }
16592
+ function createDebugLogger2(namespace, label = namespace) {
16593
+ const debugEnabled = isDebugNamespaceEnabled(namespace);
16594
+ return (message) => {
16595
+ if (!debugEnabled) return;
16596
+ console.debug(`[${label}] ${message}`);
16597
+ };
16598
+ }
16599
+ function loadNativeBinding2(options) {
16600
+ const req = module$1222.createRequire(path__default2.default.join(options.runtimeDir, "noop.cjs"));
16601
+ const loadErrors2 = [];
16602
+ for (const candidate of options.candidates) {
16603
+ if (!fs__default22.default.existsSync(candidate)) continue;
16604
+ try {
16605
+ const mod = req(candidate);
16606
+ if (options.isValid(mod)) {
16607
+ return {
16608
+ binding: mod,
16609
+ loadedPath: candidate,
16610
+ loadErrors: loadErrors2
16611
+ };
16612
+ }
16613
+ loadErrors2.push({
16614
+ path: candidate,
16615
+ message: options.invalidExportMessage
16616
+ });
16617
+ } catch (error) {
16618
+ loadErrors2.push({
16619
+ path: candidate,
16620
+ message: formatErrorMessage2(error)
16621
+ });
16622
+ }
16623
+ }
16624
+ return {
16625
+ binding: null,
16626
+ loadedPath: null,
16627
+ loadErrors: loadErrors2
16628
+ };
16629
+ }
16630
+ var LEVELS = { silent: 0, error: 1, warn: 2, info: 3, debug: 4 };
16631
+ function getEnvLevel() {
16632
+ const env = process.env.TWS_LOG_LEVEL?.toLowerCase();
16633
+ if (env && env in LEVELS) return env;
16634
+ return process.env.TWS_DEBUG_SCANNER === "1" ? "debug" : "info";
16635
+ }
16636
+ function createLogger22(prefix, level) {
16637
+ let currentLevel = level ?? getEnvLevel();
16638
+ const log222 = (msgLevel, stream, args) => {
16639
+ if (LEVELS[msgLevel] > LEVELS[currentLevel]) return;
16640
+ const line = `[${prefix}] ${args.map(String).join(" ")}
16641
+ `;
16642
+ process[stream].write(line);
16643
+ };
16644
+ return {
16645
+ error: (...a) => log222("error", "stderr", a),
16646
+ warn: (...a) => log222("warn", "stderr", a),
16647
+ info: (...a) => log222("info", "stdout", a),
16648
+ debug: (...a) => log222("debug", "stderr", a),
16649
+ setLevel: (l) => {
16650
+ currentLevel = l;
16651
+ }
16652
+ };
16653
+ }
16654
+ var logger = createLogger22("tailwind-styled");
16655
+ function hashContent2(content, algorithm = "md5", length = 8) {
16656
+ return crypto2.createHash(algorithm).update(content).digest("hex").slice(0, length);
16657
+ }
16658
+ function hashFile(filePath, algorithm = "md5", length = 8) {
16659
+ try {
16660
+ const content = fs__default22.default.readFileSync(filePath, "utf8");
16661
+ return hashContent2(content, algorithm, length);
16662
+ } catch {
16663
+ return "00000000";
16664
+ }
16665
+ }
16666
+ function debounce(fn, ms) {
16667
+ let timer = null;
16668
+ return ((...args) => {
16669
+ if (timer) clearTimeout(timer);
16670
+ timer = setTimeout(() => {
16671
+ timer = null;
16672
+ fn(...args);
16673
+ }, ms);
16674
+ });
16675
+ }
16676
+ function throttle(fn, ms) {
16677
+ let last = 0;
16678
+ return ((...args) => {
16679
+ const now = Date.now();
16680
+ if (now - last >= ms) {
16681
+ last = now;
16682
+ fn(...args);
16683
+ }
16684
+ });
16685
+ }
16686
+ function parseVersion(v) {
16687
+ const parts = v.replace(/^v/, "").split(".").map((p) => {
16688
+ const n = Number(p);
16689
+ return Number.isNaN(n) ? 0 : n;
16690
+ });
16691
+ const [major = 0, minor = 0, patch = 0] = parts;
16692
+ return { major, minor, patch };
16693
+ }
16694
+ function satisfiesMinVersion(version, minVersion) {
16695
+ const v = parseVersion(version);
16696
+ const min = parseVersion(minVersion);
16697
+ if (v.major !== min.major) return v.major > min.major;
16698
+ if (v.minor !== min.minor) return v.minor > min.minor;
16699
+ return v.patch >= min.patch;
16700
+ }
16701
+ exports$1222.LRUCache = LRUCache;
16702
+ exports$1222.createDebugLogger = createDebugLogger2;
16703
+ exports$1222.createLogger = createLogger22;
16704
+ exports$1222.debounce = debounce;
16705
+ exports$1222.formatErrorMessage = formatErrorMessage2;
16706
+ exports$1222.hashContent = hashContent2;
16707
+ exports$1222.hashFile = hashFile;
16708
+ exports$1222.isDebugNamespaceEnabled = isDebugNamespaceEnabled;
16709
+ exports$1222.loadNativeBinding = loadNativeBinding2;
16710
+ exports$1222.logger = logger;
16711
+ exports$1222.parseVersion = parseVersion;
16712
+ exports$1222.resolveNativeBindingCandidates = resolveNativeBindingCandidates2;
16713
+ exports$1222.resolveRuntimeDir = resolveRuntimeDir2;
16714
+ exports$1222.satisfiesMinVersion = satisfiesMinVersion;
16715
+ exports$1222.throttle = throttle;
16321
16716
  }
16322
16717
  });
16323
16718
  var nativeBridge_exports = {};
@@ -16420,6 +16815,7 @@ Or install a prebuilt binary for your platform.`
16420
16815
  metadata
16421
16816
  };
16422
16817
  }
16818
+ var import_shared222;
16423
16819
  var getDirname22;
16424
16820
  var runtimeDir;
16425
16821
  var requireFromRuntime;
@@ -16427,7 +16823,7 @@ Or install a prebuilt binary for your platform.`
16427
16823
  var log22;
16428
16824
  var init_nativeBridge = __esm2({
16429
16825
  "packages/compiler/src/nativeBridge.ts"() {
16430
- init_src();
16826
+ import_shared222 = __toESM222(require_shared222());
16431
16827
  getDirname22 = () => {
16432
16828
  if (typeof __dirname !== "undefined") {
16433
16829
  return __dirname;
@@ -16439,7 +16835,7 @@ Or install a prebuilt binary for your platform.`
16439
16835
  };
16440
16836
  runtimeDir = getDirname22();
16441
16837
  requireFromRuntime = typeof module2 !== "undefined" && typeof module2.require === "function" ? module2.require.bind(module2) : module$122.createRequire(path7__default.default.join(runtimeDir, "noop.cjs"));
16442
- log22 = createLogger22("compiler:native");
16838
+ log22 = (0, import_shared222.createLogger)("compiler:native");
16443
16839
  }
16444
16840
  });
16445
16841
  function requireNative() {
@@ -18164,13 +18560,7 @@ body {
18164
18560
  `;
18165
18561
  }
18166
18562
  });
18167
- var globalRegistry = {
18168
- transforms: [],
18169
- tokens: {}
18170
- };
18171
- function getGlobalRegistry() {
18172
- return globalRegistry;
18173
- }
18563
+ var import_plugin = __toESM222(require_plugin2());
18174
18564
  function mergeClassesStatic2(classes) {
18175
18565
  return tailwindMerge.twMerge(classes);
18176
18566
  }
@@ -18909,7 +19299,7 @@ ${subAssignments}
18909
19299
  compoundVariants: compounds,
18910
19300
  defaultVariants: defaults
18911
19301
  };
18912
- const registry = getGlobalRegistry();
19302
+ const registry = (0, import_plugin.getGlobalRegistry)();
18913
19303
  if (registry.transforms.length > 0) {
18914
19304
  const componentName = `Tw${tag}`;
18915
19305
  for (const transform of registry.transforms) {
@@ -19089,8 +19479,8 @@ Please ensure the native module is properly built.`
19089
19479
  function scanFiles(dir) {
19090
19480
  const files = [];
19091
19481
  function walk(current) {
19092
- if (!fs3__default.default.existsSync(current)) return;
19093
- const entries = fs3__default.default.readdirSync(current, { withFileTypes: true });
19482
+ if (!fs2__default2.default.existsSync(current)) return;
19483
+ const entries = fs2__default2.default.readdirSync(current, { withFileTypes: true });
19094
19484
  for (const entry of entries) {
19095
19485
  if (SKIP_DIRS.has(entry.name)) continue;
19096
19486
  const fullPath = path7__default.default.join(current, entry.name);
@@ -19111,7 +19501,7 @@ Please ensure the native module is properly built.`
19111
19501
  const files = scanFiles(absDir);
19112
19502
  for (const file of files) {
19113
19503
  try {
19114
- const source = fs3__default.default.readFileSync(file, "utf-8");
19504
+ const source = fs2__default2.default.readFileSync(file, "utf-8");
19115
19505
  const usage = extractComponentUsage(source);
19116
19506
  for (const [comp, props] of Object.entries(usage)) {
19117
19507
  if (!combined[comp]) combined[comp] = {};
@@ -19250,19 +19640,19 @@ Please ensure the native module is properly built.`
19250
19640
  }
19251
19641
  return { css, report };
19252
19642
  }
19253
- init_src();
19643
+ var import_shared2222 = __toESM222(require_shared222());
19254
19644
  var CACHE_DIR = ".tw-cache";
19255
19645
  var HASH_CACHE_FILE = path7__default.default.join(CACHE_DIR, "file-hashes.json");
19256
19646
  var GRAPH_CACHE_FILE = path7__default.default.join(CACHE_DIR, "dep-graph.json");
19257
19647
  function ensureCacheDir() {
19258
- if (!fs3__default.default.existsSync(CACHE_DIR)) {
19259
- fs3__default.default.mkdirSync(CACHE_DIR, { recursive: true });
19648
+ if (!fs2__default2.default.existsSync(CACHE_DIR)) {
19649
+ fs2__default2.default.mkdirSync(CACHE_DIR, { recursive: true });
19260
19650
  }
19261
19651
  }
19262
19652
  function loadHashCache() {
19263
19653
  try {
19264
- if (fs3__default.default.existsSync(HASH_CACHE_FILE)) {
19265
- const raw = fs3__default.default.readFileSync(HASH_CACHE_FILE, "utf-8");
19654
+ if (fs2__default2.default.existsSync(HASH_CACHE_FILE)) {
19655
+ const raw = fs2__default2.default.readFileSync(HASH_CACHE_FILE, "utf-8");
19266
19656
  return new Map(Object.entries(JSON.parse(raw)));
19267
19657
  }
19268
19658
  } catch {
@@ -19273,14 +19663,14 @@ Please ensure the native module is properly built.`
19273
19663
  try {
19274
19664
  ensureCacheDir();
19275
19665
  const obj = Object.fromEntries(cache);
19276
- fs3__default.default.writeFileSync(HASH_CACHE_FILE, JSON.stringify(obj, null, 2));
19666
+ fs2__default2.default.writeFileSync(HASH_CACHE_FILE, JSON.stringify(obj, null, 2));
19277
19667
  } catch {
19278
19668
  }
19279
19669
  }
19280
19670
  function loadGraphCache() {
19281
19671
  try {
19282
- if (fs3__default.default.existsSync(GRAPH_CACHE_FILE)) {
19283
- const raw = fs3__default.default.readFileSync(GRAPH_CACHE_FILE, "utf-8");
19672
+ if (fs2__default2.default.existsSync(GRAPH_CACHE_FILE)) {
19673
+ const raw = fs2__default2.default.readFileSync(GRAPH_CACHE_FILE, "utf-8");
19284
19674
  const data = JSON.parse(raw);
19285
19675
  return new Map(Object.entries(data));
19286
19676
  }
@@ -19292,7 +19682,7 @@ Please ensure the native module is properly built.`
19292
19682
  try {
19293
19683
  ensureCacheDir();
19294
19684
  const obj = Object.fromEntries(graph);
19295
- fs3__default.default.writeFileSync(GRAPH_CACHE_FILE, JSON.stringify(obj, null, 2));
19685
+ fs2__default2.default.writeFileSync(GRAPH_CACHE_FILE, JSON.stringify(obj, null, 2));
19296
19686
  } catch {
19297
19687
  }
19298
19688
  }
@@ -19315,7 +19705,7 @@ Please ensure the native module is properly built.`
19315
19705
  return result;
19316
19706
  }
19317
19707
  function hashFileContent(content) {
19318
- return hashContent(content, "md5", 8);
19708
+ return (0, import_shared2222.hashContent)(content, "md5", 8);
19319
19709
  }
19320
19710
  function makeAtomicClass(declaration, modifier) {
19321
19711
  const key = modifier ? `${declaration}::${modifier}` : declaration;
@@ -19397,8 +19787,8 @@ Please ensure the native module is properly built.`
19397
19787
  }
19398
19788
  loadFromDisk() {
19399
19789
  try {
19400
- if (fs3__default.default.existsSync(this.outputPath)) {
19401
- const css = fs3__default.default.readFileSync(this.outputPath, "utf-8");
19790
+ if (fs2__default2.default.existsSync(this.outputPath)) {
19791
+ const css = fs2__default2.default.readFileSync(this.outputPath, "utf-8");
19402
19792
  const ruleRe = /(\.tw-[a-z0-9]+(?::[\w-]+)?)\{([^}]+)\}|(@[^{]+)\{(\.tw-[a-z0-9]+)\{([^}]+)\}\}/g;
19403
19793
  let m;
19404
19794
  while ((m = ruleRe.exec(css)) !== null) {
@@ -19428,7 +19818,7 @@ Please ensure the native module is properly built.`
19428
19818
  try {
19429
19819
  ensureCacheDir();
19430
19820
  const css = Array.from(this.ruleMap.values()).join("\n");
19431
- await fs3__default.default.promises.writeFile(this.outputPath, css, "utf-8");
19821
+ await fs2__default2.default.promises.writeFile(this.outputPath, css, "utf-8");
19432
19822
  this.dirty = false;
19433
19823
  } catch {
19434
19824
  }
@@ -19439,7 +19829,7 @@ Please ensure the native module is properly built.`
19439
19829
  try {
19440
19830
  ensureCacheDir();
19441
19831
  const css = Array.from(this.ruleMap.values()).join("\n");
19442
- fs3__default.default.writeFileSync(this.outputPath, css, "utf-8");
19832
+ fs2__default2.default.writeFileSync(this.outputPath, css, "utf-8");
19443
19833
  this.dirty = false;
19444
19834
  } catch {
19445
19835
  }
@@ -20396,7 +20786,7 @@ The native binding is required for all transformations.`
20396
20786
  _cachedCwd = cwd;
20397
20787
  for (const file of CONFIG_FILES) {
20398
20788
  const fullPath = path7__default.default.join(cwd, file);
20399
- if (fs3__default.default.existsSync(fullPath)) {
20789
+ if (fs2__default2.default.existsSync(fullPath)) {
20400
20790
  try {
20401
20791
  const mod = __require2222(fullPath);
20402
20792
  const config = mod.default ?? mod;
@@ -20424,14 +20814,14 @@ The native binding is required for all transformations.`
20424
20814
  if (config.content?.files) {
20425
20815
  return config.content.files.filter((f) => typeof f === "string");
20426
20816
  }
20427
- return ["src", "app", "pages", "components"].filter((d) => fs3__default.default.existsSync(path7__default.default.join(cwd, d))).map((d) => `./${d}/**/*.{tsx,ts,jsx,js}`);
20817
+ return ["src", "app", "pages", "components"].filter((d) => fs2__default2.default.existsSync(path7__default.default.join(cwd, d))).map((d) => `./${d}/**/*.{tsx,ts,jsx,js}`);
20428
20818
  }
20429
20819
  function invalidateConfigCache() {
20430
20820
  _cachedConfig = null;
20431
20821
  _cachedCwd = "";
20432
20822
  }
20433
20823
  function isZeroConfig(cwd = process.cwd()) {
20434
- return !CONFIG_FILES.some((f) => fs3__default.default.existsSync(path7__default.default.join(cwd, f)));
20824
+ return !CONFIG_FILES.some((f) => fs2__default2.default.existsSync(path7__default.default.join(cwd, f)));
20435
20825
  }
20436
20826
  function bootstrapZeroConfig(cwd = process.cwd()) {
20437
20827
  let generatedConfig = false;
@@ -20443,13 +20833,13 @@ The native binding is required for all transformations.`
20443
20833
  "src/index.css",
20444
20834
  "src/styles/globals.css"
20445
20835
  ];
20446
- const hasGlobalCss = cssPaths.some((p) => fs3__default.default.existsSync(path7__default.default.join(cwd, p)));
20836
+ const hasGlobalCss = cssPaths.some((p) => fs2__default2.default.existsSync(path7__default.default.join(cwd, p)));
20447
20837
  if (!hasGlobalCss) {
20448
20838
  const { defaultGlobalCss: defaultGlobalCss2 } = (init_defaultPreset(), __toCommonJS2(defaultPreset_exports));
20449
- const appDir = fs3__default.default.existsSync(path7__default.default.join(cwd, "src/app")) ? "src/app" : fs3__default.default.existsSync(path7__default.default.join(cwd, "app")) ? "app" : "src";
20839
+ const appDir = fs2__default2.default.existsSync(path7__default.default.join(cwd, "src/app")) ? "src/app" : fs2__default2.default.existsSync(path7__default.default.join(cwd, "app")) ? "app" : "src";
20450
20840
  const cssPath = path7__default.default.join(cwd, appDir, "globals.css");
20451
- if (fs3__default.default.existsSync(path7__default.default.dirname(cssPath))) {
20452
- fs3__default.default.writeFileSync(cssPath, defaultGlobalCss2);
20841
+ if (fs2__default2.default.existsSync(path7__default.default.dirname(cssPath))) {
20842
+ fs2__default2.default.writeFileSync(cssPath, defaultGlobalCss2);
20453
20843
  generatedCss = true;
20454
20844
  console.log(`[tailwind-styled-v4] Generated ${cssPath}`);
20455
20845
  }
@@ -20522,8 +20912,8 @@ Please build the native module.`
20522
20912
  }
20523
20913
  var SCAN_EXTENSIONS2 = [".tsx", ".ts", ".jsx", ".js"];
20524
20914
  function scanDir(dir, files = []) {
20525
- if (!fs3__default.default.existsSync(dir)) return files;
20526
- const entries = fs3__default.default.readdirSync(dir, { withFileTypes: true });
20915
+ if (!fs2__default2.default.existsSync(dir)) return files;
20916
+ const entries = fs2__default2.default.readdirSync(dir, { withFileTypes: true });
20527
20917
  for (const entry of entries) {
20528
20918
  if (entry.name === "node_modules" || entry.name === ".next" || entry.name === "dist") continue;
20529
20919
  const fullPath = path7__default.default.join(dir, entry.name);
@@ -20542,7 +20932,7 @@ Please build the native module.`
20542
20932
  const files = scanDir(absDir);
20543
20933
  for (const file of files) {
20544
20934
  try {
20545
- const source = fs3__default.default.readFileSync(file, "utf-8");
20935
+ const source = fs2__default2.default.readFileSync(file, "utf-8");
20546
20936
  const classes = extractAllClasses2(source);
20547
20937
  classes.forEach((c) => allClasses.add(c));
20548
20938
  } catch {
@@ -20551,13 +20941,13 @@ Please build the native module.`
20551
20941
  }
20552
20942
  const sorted = Array.from(allClasses).sort();
20553
20943
  const absOutput = path7__default.default.isAbsolute(outputPath) ? outputPath : path7__default.default.resolve(cwd, outputPath);
20554
- fs3__default.default.writeFileSync(absOutput, JSON.stringify(sorted, null, 2));
20944
+ fs2__default2.default.writeFileSync(absOutput, JSON.stringify(sorted, null, 2));
20555
20945
  console.log(`[tailwind-styled-v4] Safelist: ${sorted.length} classes \u2192 ${absOutput}`);
20556
20946
  return sorted;
20557
20947
  }
20558
20948
  function loadSafelist(safelistPath) {
20559
20949
  try {
20560
- const content = fs3__default.default.readFileSync(safelistPath, "utf-8");
20950
+ const content = fs2__default2.default.readFileSync(safelistPath, "utf-8");
20561
20951
  return JSON.parse(content);
20562
20952
  } catch {
20563
20953
  return [];
@@ -20570,7 +20960,7 @@ Please build the native module.`
20570
20960
  const files = scanDir(absDir);
20571
20961
  for (const file of files) {
20572
20962
  try {
20573
- const source = fs3__default.default.readFileSync(file, "utf-8");
20963
+ const source = fs2__default2.default.readFileSync(file, "utf-8");
20574
20964
  const classes = extractAllClasses2(source);
20575
20965
  classes.forEach((c) => allClasses.add(c));
20576
20966
  } catch {
@@ -20579,13 +20969,13 @@ Please build the native module.`
20579
20969
  }
20580
20970
  const sorted = Array.from(allClasses).sort();
20581
20971
  const absOutput = path7__default.default.isAbsolute(outputPath) ? outputPath : path7__default.default.resolve(cwd, outputPath);
20582
- fs3__default.default.mkdirSync(path7__default.default.dirname(absOutput), { recursive: true });
20972
+ fs2__default2.default.mkdirSync(path7__default.default.dirname(absOutput), { recursive: true });
20583
20973
  const css = sorted.length > 0 ? `/* Auto-generated by tailwind-styled-v4 \u2014 DO NOT EDIT */
20584
20974
  @source inline("${sorted.join(" ")}");
20585
20975
  ` : `/* Auto-generated by tailwind-styled-v4 \u2014 DO NOT EDIT */
20586
20976
  /* No safelist classes found */
20587
20977
  `;
20588
- fs3__default.default.writeFileSync(absOutput, css);
20978
+ fs2__default2.default.writeFileSync(absOutput, css);
20589
20979
  console.log(`[tailwind-styled-v4] Safelist: ${sorted.length} classes \u2192 ${absOutput}`);
20590
20980
  return sorted;
20591
20981
  }
@@ -20693,13 +21083,13 @@ Please build the native module.`
20693
21083
  }
20694
21084
  }
20695
21085
  if (outputDir) {
20696
- const fs6 = __require2222("fs");
20697
- fs6.mkdirSync(outputDir, { recursive: true });
21086
+ const fs5 = __require2222("fs");
21087
+ fs5.mkdirSync(outputDir, { recursive: true });
20698
21088
  for (const result of results) {
20699
21089
  const filename = routeToFilename(result.route);
20700
21090
  const filepath = path7__default.default.join(outputDir, filename);
20701
- fs6.mkdirSync(path7__default.default.dirname(filepath), { recursive: true });
20702
- fs6.writeFileSync(filepath, result.css);
21091
+ fs5.mkdirSync(path7__default.default.dirname(filepath), { recursive: true });
21092
+ fs5.writeFileSync(filepath, result.css);
20703
21093
  }
20704
21094
  const totalSize = results.reduce((sum, r) => sum + r.sizeBytes, 0);
20705
21095
  console.log(