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.mjs CHANGED
@@ -16231,21 +16231,23 @@ try {
16231
16231
  var __toCommonJS = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
16232
16232
  var require_compiler22 = __commonJS222({
16233
16233
  "dist/compiler.js"(exports$122, module2) {
16234
- var crypto = __require222("crypto");
16235
- var fs322 = __require222("fs");
16236
16234
  var module$122 = __require222("module");
16237
16235
  var path7 = __require222("path");
16238
16236
  var url222 = __require222("url");
16239
16237
  var tailwindMerge = __require222("tailwind-merge");
16238
+ var fs22 = __require222("fs");
16239
+ var crypto = __require222("crypto");
16240
16240
  var _documentCurrentScript22 = typeof document !== "undefined" ? document.currentScript : null;
16241
16241
  function _interopDefault222(e) {
16242
16242
  return e && e.__esModule ? e : { default: e };
16243
16243
  }
16244
- var fs3__default = /* @__PURE__ */ _interopDefault222(fs322);
16245
16244
  var path7__default = /* @__PURE__ */ _interopDefault222(path7);
16245
+ var fs2__default2 = /* @__PURE__ */ _interopDefault222(fs22);
16246
+ var __create222 = Object.create;
16246
16247
  var __defProp222 = Object.defineProperty;
16247
16248
  var __getOwnPropDesc222 = Object.getOwnPropertyDescriptor;
16248
16249
  var __getOwnPropNames2222 = Object.getOwnPropertyNames;
16250
+ var __getProtoOf222 = Object.getPrototypeOf;
16249
16251
  var __hasOwnProp222 = Object.prototype.hasOwnProperty;
16250
16252
  var __require2222 = /* @__PURE__ */ ((x) => typeof __require222 !== "undefined" ? __require222 : typeof Proxy !== "undefined" ? new Proxy(x, {
16251
16253
  get: (a, b) => (typeof __require222 !== "undefined" ? __require222 : a)[b]
@@ -16256,6 +16258,9 @@ try {
16256
16258
  var __esm2 = (fn, res) => function __init() {
16257
16259
  return fn && (res = (0, fn[__getOwnPropNames2222(fn)[0]])(fn = 0)), res;
16258
16260
  };
16261
+ var __commonJS2222 = (cb, mod) => function __require22222() {
16262
+ return mod || (0, cb[__getOwnPropNames2222(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
16263
+ };
16259
16264
  var __export2 = (target, all) => {
16260
16265
  for (var name in all)
16261
16266
  __defProp222(target, name, { get: all[name], enumerable: true });
@@ -16268,48 +16273,438 @@ try {
16268
16273
  }
16269
16274
  return to;
16270
16275
  };
16276
+ var __toESM222 = (mod, isNodeMode, target) => (target = mod != null ? __create222(__getProtoOf222(mod)) : {}, __copyProps222(
16277
+ // If the importer is in node compatibility mode or this is not an ESM
16278
+ // file that has been converted to a CommonJS file using a Babel-
16279
+ // compatible transform (i.e. "__esModule" has not been set), then set
16280
+ // "default" to the CommonJS "module.exports" for node compatibility.
16281
+ __defProp222(target, "default", { value: mod, enumerable: true }),
16282
+ mod
16283
+ ));
16271
16284
  var __toCommonJS2 = (mod) => __copyProps222(__defProp222({}, "__esModule", { value: true }), mod);
16272
- function getEnvLevel() {
16273
- const env = process.env.TWS_LOG_LEVEL?.toLowerCase();
16274
- if (env && env in LEVELS) return env;
16275
- return process.env.TWS_DEBUG_SCANNER === "1" ? "debug" : "info";
16276
- }
16277
- function createLogger22(prefix, level) {
16278
- let currentLevel = getEnvLevel();
16279
- const log222 = (msgLevel, stream, args) => {
16280
- if (LEVELS[msgLevel] > LEVELS[currentLevel]) return;
16281
- const line = `[${prefix}] ${args.map(String).join(" ")}
16282
- `;
16283
- process[stream].write(line);
16284
- };
16285
- return {
16286
- error: (...a) => log222("error", "stderr", a),
16287
- warn: (...a) => log222("warn", "stderr", a),
16288
- info: (...a) => log222("info", "stdout", a),
16289
- debug: (...a) => log222("debug", "stderr", a),
16290
- setLevel: (l) => {
16291
- currentLevel = l;
16285
+ var require_plugin2 = __commonJS2222({
16286
+ "dist/plugin.js"(exports$1222) {
16287
+ var TOKEN_ENGINE_KEY = "__TW_TOKEN_ENGINE__";
16288
+ function resolveTokenEngine() {
16289
+ if (typeof globalThis !== "undefined") {
16290
+ return globalThis[TOKEN_ENGINE_KEY];
16291
+ }
16292
+ return null;
16292
16293
  }
16293
- };
16294
- }
16295
- var LEVELS;
16296
- var init_logger = __esm2({
16297
- "packages/shared/src/logger.ts"() {
16298
- LEVELS = { silent: 0, error: 1, warn: 2, info: 3, debug: 4 };
16299
- createLogger22("tailwind-styled");
16300
- }
16301
- });
16302
- function hashContent(content, algorithm = "md5", length = 8) {
16303
- return crypto.createHash(algorithm).update(content).digest("hex").slice(0, length);
16304
- }
16305
- var init_hash = __esm2({
16306
- "packages/shared/src/hash.ts"() {
16294
+ function readToken(engine, name) {
16295
+ if (!engine) return void 0;
16296
+ if (typeof engine.getToken === "function") return engine.getToken(name);
16297
+ if (typeof engine.getTokens === "function") {
16298
+ const tokens = engine.getTokens();
16299
+ return tokens?.[name];
16300
+ }
16301
+ return void 0;
16302
+ }
16303
+ function createTwPlugin(options = {}) {
16304
+ return {
16305
+ async resolveId(source, importer) {
16306
+ if (!source.startsWith("tw.") && !source.startsWith("tw:")) return null;
16307
+ const importPath = source.replace(/^tw[.:]/, "");
16308
+ const resolved = await this.resolve(importPath, importer, { skipSelf: true });
16309
+ if (resolved) return { id: resolved.id };
16310
+ return null;
16311
+ },
16312
+ async load(id) {
16313
+ return null;
16314
+ },
16315
+ async transform(code, id) {
16316
+ return null;
16317
+ },
16318
+ getToken(name) {
16319
+ const engine = resolveTokenEngine();
16320
+ return readToken(engine, name);
16321
+ },
16322
+ subscribeTokens(callback) {
16323
+ const engine = resolveTokenEngine();
16324
+ if (!engine) return () => {
16325
+ };
16326
+ if (typeof engine.subscribeTokens === "function") return engine.subscribeTokens(callback);
16327
+ if (typeof engine.subscribe === "function") return engine.subscribe(callback);
16328
+ return () => {
16329
+ };
16330
+ }
16331
+ };
16332
+ }
16333
+ var globalRegistry = {
16334
+ transforms: [],
16335
+ tokens: {}
16336
+ };
16337
+ function getGlobalRegistry2() {
16338
+ return globalRegistry;
16339
+ }
16340
+ function registerTransform(transform) {
16341
+ globalRegistry.transforms.push(transform);
16342
+ }
16343
+ function registerToken(name, value) {
16344
+ globalRegistry.tokens[name] = value;
16345
+ }
16346
+ function createRegistry() {
16347
+ return {
16348
+ variants: /* @__PURE__ */ new Map(),
16349
+ utilities: /* @__PURE__ */ new Map(),
16350
+ tokens: /* @__PURE__ */ new Map(),
16351
+ transforms: [],
16352
+ cssHooks: [],
16353
+ buildHooks: [],
16354
+ plugins: /* @__PURE__ */ new Set()
16355
+ };
16356
+ }
16357
+ var _globalRegistry = createRegistry();
16358
+ function resetGlobalRegistry() {
16359
+ _globalRegistry = createRegistry();
16360
+ }
16361
+ function createContext(registry, config = {}) {
16362
+ return {
16363
+ config,
16364
+ addVariant(name, resolver) {
16365
+ registry.variants.set(name, resolver);
16366
+ },
16367
+ addUtility(name, styles) {
16368
+ registry.utilities.set(name, styles);
16369
+ },
16370
+ addToken(name, value) {
16371
+ const normalized = name.replace(/[^a-zA-Z0-9-]/g, "-").toLowerCase();
16372
+ registry.tokens.set(normalized, value);
16373
+ },
16374
+ addTransform(fn) {
16375
+ registry.transforms.push(fn);
16376
+ },
16377
+ onGenerateCSS(hook) {
16378
+ registry.cssHooks.push(hook);
16379
+ },
16380
+ onBuildEnd(hook) {
16381
+ registry.buildHooks.push(hook);
16382
+ },
16383
+ getToken(name) {
16384
+ return readToken(resolveTokenEngine(), name);
16385
+ },
16386
+ subscribeTokens(callback) {
16387
+ const engine = resolveTokenEngine();
16388
+ if (!engine) return () => {
16389
+ };
16390
+ if (typeof engine.subscribeTokens === "function") return engine.subscribeTokens(callback);
16391
+ if (typeof engine.subscribe === "function") return engine.subscribe(callback);
16392
+ return () => {
16393
+ };
16394
+ }
16395
+ };
16396
+ }
16397
+ function createTw(config = {}) {
16398
+ const registry = createRegistry();
16399
+ const ctx = createContext(registry, config);
16400
+ const result = ctx;
16401
+ result.registry = {
16402
+ plugins: registry.plugins,
16403
+ variants: registry.variants,
16404
+ utilities: registry.utilities,
16405
+ tokens: registry.tokens
16406
+ };
16407
+ result.use = (plugin) => {
16408
+ plugin.setup(ctx);
16409
+ registry.plugins.add(plugin.name);
16410
+ };
16411
+ if (config.plugins && Array.isArray(config.plugins)) {
16412
+ for (const plugin of config.plugins) {
16413
+ if (plugin && plugin.name) {
16414
+ result.use(plugin);
16415
+ }
16416
+ }
16417
+ }
16418
+ return result;
16419
+ }
16420
+ function use(plugin) {
16421
+ const ctx = createContext(_globalRegistry);
16422
+ plugin.setup(ctx);
16423
+ }
16424
+ function presetTokens(tokens) {
16425
+ return {
16426
+ name: "preset-tokens",
16427
+ setup(ctx) {
16428
+ for (const [name, value] of Object.entries(tokens)) {
16429
+ ctx.addToken(name, value);
16430
+ }
16431
+ }
16432
+ };
16433
+ }
16434
+ function presetVariants(variants) {
16435
+ return {
16436
+ name: "preset-variants",
16437
+ setup(ctx) {
16438
+ for (const [name, resolver] of Object.entries(variants)) {
16439
+ ctx.addVariant(name, resolver);
16440
+ }
16441
+ }
16442
+ };
16443
+ }
16444
+ function presetScrollbar() {
16445
+ return {
16446
+ name: "preset-scrollbar",
16447
+ setup(ctx) {
16448
+ ctx.addVariant("scrollbar-thin", () => "::-webkit-scrollbar{width:8px;height:8px}");
16449
+ ctx.addVariant("scrollbar-none", () => "::-webkit-scrollbar{display:none}");
16450
+ ctx.addUtility("scrollbar-hide", { "-ms-overflow-style": "none", "scrollbar-width": "none" });
16451
+ }
16452
+ };
16453
+ }
16454
+ exports$1222.createTw = createTw;
16455
+ exports$1222.createTwPlugin = createTwPlugin;
16456
+ exports$1222.getGlobalRegistry = getGlobalRegistry2;
16457
+ exports$1222.presetScrollbar = presetScrollbar;
16458
+ exports$1222.presetTokens = presetTokens;
16459
+ exports$1222.presetVariants = presetVariants;
16460
+ exports$1222.registerToken = registerToken;
16461
+ exports$1222.registerTransform = registerTransform;
16462
+ exports$1222.resetGlobalRegistry = resetGlobalRegistry;
16463
+ exports$1222.use = use;
16307
16464
  }
16308
16465
  });
16309
- var init_src = __esm2({
16310
- "packages/shared/src/index.ts"() {
16311
- init_logger();
16312
- init_hash();
16466
+ var require_shared222 = __commonJS2222({
16467
+ "dist/shared.js"(exports$1222) {
16468
+ var fs5 = __require2222("fs");
16469
+ var module$1222 = __require2222("module");
16470
+ var os = __require2222("os");
16471
+ var path9 = __require2222("path");
16472
+ var url2222 = __require2222("url");
16473
+ var crypto2 = __require2222("crypto");
16474
+ function _interopDefault2222(e) {
16475
+ return e && e.__esModule ? e : { default: e };
16476
+ }
16477
+ var fs__default22 = /* @__PURE__ */ _interopDefault2222(fs5);
16478
+ var os__default = /* @__PURE__ */ _interopDefault2222(os);
16479
+ var path__default2 = /* @__PURE__ */ _interopDefault2222(path9);
16480
+ var LRUCache = class {
16481
+ constructor(max = 256, ttlMs = null) {
16482
+ this.map = /* @__PURE__ */ new Map();
16483
+ this.max = max;
16484
+ this.ttlMs = ttlMs;
16485
+ }
16486
+ get(key) {
16487
+ const entry = this.map.get(key);
16488
+ if (!entry) return void 0;
16489
+ if (this.ttlMs !== null && Date.now() - entry.ts > this.ttlMs) {
16490
+ this.map.delete(key);
16491
+ return void 0;
16492
+ }
16493
+ this.map.delete(key);
16494
+ this.map.set(key, entry);
16495
+ return entry.value;
16496
+ }
16497
+ set(key, value) {
16498
+ if (this.map.has(key)) this.map.delete(key);
16499
+ else if (this.map.size >= this.max) {
16500
+ this.map.delete(this.map.keys().next().value);
16501
+ }
16502
+ this.map.set(key, { value, ts: Date.now() });
16503
+ }
16504
+ has(key) {
16505
+ return this.get(key) !== void 0;
16506
+ }
16507
+ delete(key) {
16508
+ this.map.delete(key);
16509
+ }
16510
+ clear() {
16511
+ this.map.clear();
16512
+ }
16513
+ get size() {
16514
+ return this.map.size;
16515
+ }
16516
+ keys() {
16517
+ return this.map.keys();
16518
+ }
16519
+ *values() {
16520
+ for (const entry of this.map.values()) {
16521
+ yield entry.value;
16522
+ }
16523
+ }
16524
+ *entries() {
16525
+ for (const [key, entry] of this.map.entries()) {
16526
+ yield [key, entry.value];
16527
+ }
16528
+ }
16529
+ };
16530
+ function getPlatformExtension() {
16531
+ const platform = os__default.default.platform();
16532
+ switch (platform) {
16533
+ case "win32":
16534
+ return ".node";
16535
+ case "darwin":
16536
+ return ".dylib";
16537
+ case "linux":
16538
+ return ".so";
16539
+ default:
16540
+ return ".node";
16541
+ }
16542
+ }
16543
+ function formatErrorMessage2(error) {
16544
+ return error instanceof Error ? error.message : String(error);
16545
+ }
16546
+ function resolveRuntimeDir2(dirnameValue, moduleImportUrl) {
16547
+ if (typeof dirnameValue === "string" && dirnameValue.length > 0) return dirnameValue;
16548
+ return path__default2.default.dirname(url2222.fileURLToPath(moduleImportUrl));
16549
+ }
16550
+ function resolveNativeBindingCandidates2(options) {
16551
+ const out = [];
16552
+ const envVarNames = options.envVarNames ?? ["TWS_NATIVE_PATH"];
16553
+ for (const envVarName of envVarNames) {
16554
+ const raw = process.env[envVarName]?.trim();
16555
+ if (!raw) continue;
16556
+ const resolved = path__default2.default.resolve(raw);
16557
+ if (options.enforceNodeExtensionForEnvPath) {
16558
+ if (path__default2.default.extname(resolved).toLowerCase() !== ".node") {
16559
+ throw new Error(
16560
+ `Invalid native binding path from ${envVarName}="${raw}". Expected a .node file.`
16561
+ );
16562
+ }
16563
+ }
16564
+ out.push(resolved);
16565
+ }
16566
+ if (options.includeDefaultCandidates !== false) {
16567
+ const ext = options.platformExtension ?? getPlatformExtension();
16568
+ const defaultBindingName = `tailwind_styled_parser${ext}`;
16569
+ out.push(path__default2.default.resolve(process.cwd(), "native", defaultBindingName));
16570
+ out.push(path__default2.default.resolve(options.runtimeDir, "..", "..", "..", "native", defaultBindingName));
16571
+ }
16572
+ return Array.from(new Set(out));
16573
+ }
16574
+ function parseDebugToken(namespace, token) {
16575
+ if (token === "*" || token === namespace || token === "tailwind-styled:*") return true;
16576
+ return token.endsWith("*") && namespace.startsWith(token.slice(0, -1));
16577
+ }
16578
+ function isDebugNamespaceEnabled(namespace) {
16579
+ if (process.env.TWS_DEBUG === "1" || process.env.TAILWIND_STYLED_DEBUG === "1") return true;
16580
+ const raw = process.env.DEBUG;
16581
+ if (!raw) return false;
16582
+ return raw.split(",").map((token) => token.trim()).some((token) => parseDebugToken(namespace, token));
16583
+ }
16584
+ function createDebugLogger2(namespace, label = namespace) {
16585
+ const debugEnabled = isDebugNamespaceEnabled(namespace);
16586
+ return (message) => {
16587
+ if (!debugEnabled) return;
16588
+ console.debug(`[${label}] ${message}`);
16589
+ };
16590
+ }
16591
+ function loadNativeBinding2(options) {
16592
+ const req = module$1222.createRequire(path__default2.default.join(options.runtimeDir, "noop.cjs"));
16593
+ const loadErrors2 = [];
16594
+ for (const candidate of options.candidates) {
16595
+ if (!fs__default22.default.existsSync(candidate)) continue;
16596
+ try {
16597
+ const mod = req(candidate);
16598
+ if (options.isValid(mod)) {
16599
+ return {
16600
+ binding: mod,
16601
+ loadedPath: candidate,
16602
+ loadErrors: loadErrors2
16603
+ };
16604
+ }
16605
+ loadErrors2.push({
16606
+ path: candidate,
16607
+ message: options.invalidExportMessage
16608
+ });
16609
+ } catch (error) {
16610
+ loadErrors2.push({
16611
+ path: candidate,
16612
+ message: formatErrorMessage2(error)
16613
+ });
16614
+ }
16615
+ }
16616
+ return {
16617
+ binding: null,
16618
+ loadedPath: null,
16619
+ loadErrors: loadErrors2
16620
+ };
16621
+ }
16622
+ var LEVELS = { silent: 0, error: 1, warn: 2, info: 3, debug: 4 };
16623
+ function getEnvLevel() {
16624
+ const env = process.env.TWS_LOG_LEVEL?.toLowerCase();
16625
+ if (env && env in LEVELS) return env;
16626
+ return process.env.TWS_DEBUG_SCANNER === "1" ? "debug" : "info";
16627
+ }
16628
+ function createLogger22(prefix, level) {
16629
+ let currentLevel = level ?? getEnvLevel();
16630
+ const log222 = (msgLevel, stream, args) => {
16631
+ if (LEVELS[msgLevel] > LEVELS[currentLevel]) return;
16632
+ const line = `[${prefix}] ${args.map(String).join(" ")}
16633
+ `;
16634
+ process[stream].write(line);
16635
+ };
16636
+ return {
16637
+ error: (...a) => log222("error", "stderr", a),
16638
+ warn: (...a) => log222("warn", "stderr", a),
16639
+ info: (...a) => log222("info", "stdout", a),
16640
+ debug: (...a) => log222("debug", "stderr", a),
16641
+ setLevel: (l) => {
16642
+ currentLevel = l;
16643
+ }
16644
+ };
16645
+ }
16646
+ var logger = createLogger22("tailwind-styled");
16647
+ function hashContent2(content, algorithm = "md5", length = 8) {
16648
+ return crypto2.createHash(algorithm).update(content).digest("hex").slice(0, length);
16649
+ }
16650
+ function hashFile(filePath, algorithm = "md5", length = 8) {
16651
+ try {
16652
+ const content = fs__default22.default.readFileSync(filePath, "utf8");
16653
+ return hashContent2(content, algorithm, length);
16654
+ } catch {
16655
+ return "00000000";
16656
+ }
16657
+ }
16658
+ function debounce(fn, ms) {
16659
+ let timer = null;
16660
+ return ((...args) => {
16661
+ if (timer) clearTimeout(timer);
16662
+ timer = setTimeout(() => {
16663
+ timer = null;
16664
+ fn(...args);
16665
+ }, ms);
16666
+ });
16667
+ }
16668
+ function throttle(fn, ms) {
16669
+ let last = 0;
16670
+ return ((...args) => {
16671
+ const now = Date.now();
16672
+ if (now - last >= ms) {
16673
+ last = now;
16674
+ fn(...args);
16675
+ }
16676
+ });
16677
+ }
16678
+ function parseVersion(v) {
16679
+ const parts = v.replace(/^v/, "").split(".").map((p) => {
16680
+ const n = Number(p);
16681
+ return Number.isNaN(n) ? 0 : n;
16682
+ });
16683
+ const [major = 0, minor = 0, patch = 0] = parts;
16684
+ return { major, minor, patch };
16685
+ }
16686
+ function satisfiesMinVersion(version, minVersion) {
16687
+ const v = parseVersion(version);
16688
+ const min = parseVersion(minVersion);
16689
+ if (v.major !== min.major) return v.major > min.major;
16690
+ if (v.minor !== min.minor) return v.minor > min.minor;
16691
+ return v.patch >= min.patch;
16692
+ }
16693
+ exports$1222.LRUCache = LRUCache;
16694
+ exports$1222.createDebugLogger = createDebugLogger2;
16695
+ exports$1222.createLogger = createLogger22;
16696
+ exports$1222.debounce = debounce;
16697
+ exports$1222.formatErrorMessage = formatErrorMessage2;
16698
+ exports$1222.hashContent = hashContent2;
16699
+ exports$1222.hashFile = hashFile;
16700
+ exports$1222.isDebugNamespaceEnabled = isDebugNamespaceEnabled;
16701
+ exports$1222.loadNativeBinding = loadNativeBinding2;
16702
+ exports$1222.logger = logger;
16703
+ exports$1222.parseVersion = parseVersion;
16704
+ exports$1222.resolveNativeBindingCandidates = resolveNativeBindingCandidates2;
16705
+ exports$1222.resolveRuntimeDir = resolveRuntimeDir2;
16706
+ exports$1222.satisfiesMinVersion = satisfiesMinVersion;
16707
+ exports$1222.throttle = throttle;
16313
16708
  }
16314
16709
  });
16315
16710
  var nativeBridge_exports = {};
@@ -16412,6 +16807,7 @@ Or install a prebuilt binary for your platform.`
16412
16807
  metadata
16413
16808
  };
16414
16809
  }
16810
+ var import_shared222;
16415
16811
  var getDirname22;
16416
16812
  var runtimeDir;
16417
16813
  var requireFromRuntime;
@@ -16419,7 +16815,7 @@ Or install a prebuilt binary for your platform.`
16419
16815
  var log22;
16420
16816
  var init_nativeBridge = __esm2({
16421
16817
  "packages/compiler/src/nativeBridge.ts"() {
16422
- init_src();
16818
+ import_shared222 = __toESM222(require_shared222());
16423
16819
  getDirname22 = () => {
16424
16820
  if (typeof __dirname !== "undefined") {
16425
16821
  return __dirname;
@@ -16431,7 +16827,7 @@ Or install a prebuilt binary for your platform.`
16431
16827
  };
16432
16828
  runtimeDir = getDirname22();
16433
16829
  requireFromRuntime = typeof module2 !== "undefined" && typeof module2.require === "function" ? module2.require.bind(module2) : module$122.createRequire(path7__default.default.join(runtimeDir, "noop.cjs"));
16434
- log22 = createLogger22("compiler:native");
16830
+ log22 = (0, import_shared222.createLogger)("compiler:native");
16435
16831
  }
16436
16832
  });
16437
16833
  function requireNative() {
@@ -18156,13 +18552,7 @@ body {
18156
18552
  `;
18157
18553
  }
18158
18554
  });
18159
- var globalRegistry = {
18160
- transforms: [],
18161
- tokens: {}
18162
- };
18163
- function getGlobalRegistry() {
18164
- return globalRegistry;
18165
- }
18555
+ var import_plugin = __toESM222(require_plugin2());
18166
18556
  function mergeClassesStatic2(classes) {
18167
18557
  return tailwindMerge.twMerge(classes);
18168
18558
  }
@@ -18901,7 +19291,7 @@ ${subAssignments}
18901
19291
  compoundVariants: compounds,
18902
19292
  defaultVariants: defaults
18903
19293
  };
18904
- const registry = getGlobalRegistry();
19294
+ const registry = (0, import_plugin.getGlobalRegistry)();
18905
19295
  if (registry.transforms.length > 0) {
18906
19296
  const componentName = `Tw${tag}`;
18907
19297
  for (const transform of registry.transforms) {
@@ -19081,8 +19471,8 @@ Please ensure the native module is properly built.`
19081
19471
  function scanFiles(dir) {
19082
19472
  const files = [];
19083
19473
  function walk(current) {
19084
- if (!fs3__default.default.existsSync(current)) return;
19085
- const entries = fs3__default.default.readdirSync(current, { withFileTypes: true });
19474
+ if (!fs2__default2.default.existsSync(current)) return;
19475
+ const entries = fs2__default2.default.readdirSync(current, { withFileTypes: true });
19086
19476
  for (const entry of entries) {
19087
19477
  if (SKIP_DIRS.has(entry.name)) continue;
19088
19478
  const fullPath = path7__default.default.join(current, entry.name);
@@ -19103,7 +19493,7 @@ Please ensure the native module is properly built.`
19103
19493
  const files = scanFiles(absDir);
19104
19494
  for (const file of files) {
19105
19495
  try {
19106
- const source = fs3__default.default.readFileSync(file, "utf-8");
19496
+ const source = fs2__default2.default.readFileSync(file, "utf-8");
19107
19497
  const usage = extractComponentUsage(source);
19108
19498
  for (const [comp, props] of Object.entries(usage)) {
19109
19499
  if (!combined[comp]) combined[comp] = {};
@@ -19242,19 +19632,19 @@ Please ensure the native module is properly built.`
19242
19632
  }
19243
19633
  return { css, report };
19244
19634
  }
19245
- init_src();
19635
+ var import_shared2222 = __toESM222(require_shared222());
19246
19636
  var CACHE_DIR = ".tw-cache";
19247
19637
  var HASH_CACHE_FILE = path7__default.default.join(CACHE_DIR, "file-hashes.json");
19248
19638
  var GRAPH_CACHE_FILE = path7__default.default.join(CACHE_DIR, "dep-graph.json");
19249
19639
  function ensureCacheDir() {
19250
- if (!fs3__default.default.existsSync(CACHE_DIR)) {
19251
- fs3__default.default.mkdirSync(CACHE_DIR, { recursive: true });
19640
+ if (!fs2__default2.default.existsSync(CACHE_DIR)) {
19641
+ fs2__default2.default.mkdirSync(CACHE_DIR, { recursive: true });
19252
19642
  }
19253
19643
  }
19254
19644
  function loadHashCache() {
19255
19645
  try {
19256
- if (fs3__default.default.existsSync(HASH_CACHE_FILE)) {
19257
- const raw = fs3__default.default.readFileSync(HASH_CACHE_FILE, "utf-8");
19646
+ if (fs2__default2.default.existsSync(HASH_CACHE_FILE)) {
19647
+ const raw = fs2__default2.default.readFileSync(HASH_CACHE_FILE, "utf-8");
19258
19648
  return new Map(Object.entries(JSON.parse(raw)));
19259
19649
  }
19260
19650
  } catch {
@@ -19265,14 +19655,14 @@ Please ensure the native module is properly built.`
19265
19655
  try {
19266
19656
  ensureCacheDir();
19267
19657
  const obj = Object.fromEntries(cache);
19268
- fs3__default.default.writeFileSync(HASH_CACHE_FILE, JSON.stringify(obj, null, 2));
19658
+ fs2__default2.default.writeFileSync(HASH_CACHE_FILE, JSON.stringify(obj, null, 2));
19269
19659
  } catch {
19270
19660
  }
19271
19661
  }
19272
19662
  function loadGraphCache() {
19273
19663
  try {
19274
- if (fs3__default.default.existsSync(GRAPH_CACHE_FILE)) {
19275
- const raw = fs3__default.default.readFileSync(GRAPH_CACHE_FILE, "utf-8");
19664
+ if (fs2__default2.default.existsSync(GRAPH_CACHE_FILE)) {
19665
+ const raw = fs2__default2.default.readFileSync(GRAPH_CACHE_FILE, "utf-8");
19276
19666
  const data = JSON.parse(raw);
19277
19667
  return new Map(Object.entries(data));
19278
19668
  }
@@ -19284,7 +19674,7 @@ Please ensure the native module is properly built.`
19284
19674
  try {
19285
19675
  ensureCacheDir();
19286
19676
  const obj = Object.fromEntries(graph);
19287
- fs3__default.default.writeFileSync(GRAPH_CACHE_FILE, JSON.stringify(obj, null, 2));
19677
+ fs2__default2.default.writeFileSync(GRAPH_CACHE_FILE, JSON.stringify(obj, null, 2));
19288
19678
  } catch {
19289
19679
  }
19290
19680
  }
@@ -19307,7 +19697,7 @@ Please ensure the native module is properly built.`
19307
19697
  return result;
19308
19698
  }
19309
19699
  function hashFileContent(content) {
19310
- return hashContent(content, "md5", 8);
19700
+ return (0, import_shared2222.hashContent)(content, "md5", 8);
19311
19701
  }
19312
19702
  function makeAtomicClass(declaration, modifier) {
19313
19703
  const key = modifier ? `${declaration}::${modifier}` : declaration;
@@ -19389,8 +19779,8 @@ Please ensure the native module is properly built.`
19389
19779
  }
19390
19780
  loadFromDisk() {
19391
19781
  try {
19392
- if (fs3__default.default.existsSync(this.outputPath)) {
19393
- const css = fs3__default.default.readFileSync(this.outputPath, "utf-8");
19782
+ if (fs2__default2.default.existsSync(this.outputPath)) {
19783
+ const css = fs2__default2.default.readFileSync(this.outputPath, "utf-8");
19394
19784
  const ruleRe = /(\.tw-[a-z0-9]+(?::[\w-]+)?)\{([^}]+)\}|(@[^{]+)\{(\.tw-[a-z0-9]+)\{([^}]+)\}\}/g;
19395
19785
  let m;
19396
19786
  while ((m = ruleRe.exec(css)) !== null) {
@@ -19420,7 +19810,7 @@ Please ensure the native module is properly built.`
19420
19810
  try {
19421
19811
  ensureCacheDir();
19422
19812
  const css = Array.from(this.ruleMap.values()).join("\n");
19423
- await fs3__default.default.promises.writeFile(this.outputPath, css, "utf-8");
19813
+ await fs2__default2.default.promises.writeFile(this.outputPath, css, "utf-8");
19424
19814
  this.dirty = false;
19425
19815
  } catch {
19426
19816
  }
@@ -19431,7 +19821,7 @@ Please ensure the native module is properly built.`
19431
19821
  try {
19432
19822
  ensureCacheDir();
19433
19823
  const css = Array.from(this.ruleMap.values()).join("\n");
19434
- fs3__default.default.writeFileSync(this.outputPath, css, "utf-8");
19824
+ fs2__default2.default.writeFileSync(this.outputPath, css, "utf-8");
19435
19825
  this.dirty = false;
19436
19826
  } catch {
19437
19827
  }
@@ -20388,7 +20778,7 @@ The native binding is required for all transformations.`
20388
20778
  _cachedCwd = cwd;
20389
20779
  for (const file of CONFIG_FILES) {
20390
20780
  const fullPath = path7__default.default.join(cwd, file);
20391
- if (fs3__default.default.existsSync(fullPath)) {
20781
+ if (fs2__default2.default.existsSync(fullPath)) {
20392
20782
  try {
20393
20783
  const mod = __require2222(fullPath);
20394
20784
  const config = mod.default ?? mod;
@@ -20416,14 +20806,14 @@ The native binding is required for all transformations.`
20416
20806
  if (config.content?.files) {
20417
20807
  return config.content.files.filter((f) => typeof f === "string");
20418
20808
  }
20419
- return ["src", "app", "pages", "components"].filter((d) => fs3__default.default.existsSync(path7__default.default.join(cwd, d))).map((d) => `./${d}/**/*.{tsx,ts,jsx,js}`);
20809
+ return ["src", "app", "pages", "components"].filter((d) => fs2__default2.default.existsSync(path7__default.default.join(cwd, d))).map((d) => `./${d}/**/*.{tsx,ts,jsx,js}`);
20420
20810
  }
20421
20811
  function invalidateConfigCache() {
20422
20812
  _cachedConfig = null;
20423
20813
  _cachedCwd = "";
20424
20814
  }
20425
20815
  function isZeroConfig(cwd = process.cwd()) {
20426
- return !CONFIG_FILES.some((f) => fs3__default.default.existsSync(path7__default.default.join(cwd, f)));
20816
+ return !CONFIG_FILES.some((f) => fs2__default2.default.existsSync(path7__default.default.join(cwd, f)));
20427
20817
  }
20428
20818
  function bootstrapZeroConfig(cwd = process.cwd()) {
20429
20819
  let generatedConfig = false;
@@ -20435,13 +20825,13 @@ The native binding is required for all transformations.`
20435
20825
  "src/index.css",
20436
20826
  "src/styles/globals.css"
20437
20827
  ];
20438
- const hasGlobalCss = cssPaths.some((p) => fs3__default.default.existsSync(path7__default.default.join(cwd, p)));
20828
+ const hasGlobalCss = cssPaths.some((p) => fs2__default2.default.existsSync(path7__default.default.join(cwd, p)));
20439
20829
  if (!hasGlobalCss) {
20440
20830
  const { defaultGlobalCss: defaultGlobalCss2 } = (init_defaultPreset(), __toCommonJS2(defaultPreset_exports));
20441
- 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";
20831
+ 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";
20442
20832
  const cssPath = path7__default.default.join(cwd, appDir, "globals.css");
20443
- if (fs3__default.default.existsSync(path7__default.default.dirname(cssPath))) {
20444
- fs3__default.default.writeFileSync(cssPath, defaultGlobalCss2);
20833
+ if (fs2__default2.default.existsSync(path7__default.default.dirname(cssPath))) {
20834
+ fs2__default2.default.writeFileSync(cssPath, defaultGlobalCss2);
20445
20835
  generatedCss = true;
20446
20836
  console.log(`[tailwind-styled-v4] Generated ${cssPath}`);
20447
20837
  }
@@ -20514,8 +20904,8 @@ Please build the native module.`
20514
20904
  }
20515
20905
  var SCAN_EXTENSIONS2 = [".tsx", ".ts", ".jsx", ".js"];
20516
20906
  function scanDir(dir, files = []) {
20517
- if (!fs3__default.default.existsSync(dir)) return files;
20518
- const entries = fs3__default.default.readdirSync(dir, { withFileTypes: true });
20907
+ if (!fs2__default2.default.existsSync(dir)) return files;
20908
+ const entries = fs2__default2.default.readdirSync(dir, { withFileTypes: true });
20519
20909
  for (const entry of entries) {
20520
20910
  if (entry.name === "node_modules" || entry.name === ".next" || entry.name === "dist") continue;
20521
20911
  const fullPath = path7__default.default.join(dir, entry.name);
@@ -20534,7 +20924,7 @@ Please build the native module.`
20534
20924
  const files = scanDir(absDir);
20535
20925
  for (const file of files) {
20536
20926
  try {
20537
- const source = fs3__default.default.readFileSync(file, "utf-8");
20927
+ const source = fs2__default2.default.readFileSync(file, "utf-8");
20538
20928
  const classes = extractAllClasses2(source);
20539
20929
  classes.forEach((c) => allClasses.add(c));
20540
20930
  } catch {
@@ -20543,13 +20933,13 @@ Please build the native module.`
20543
20933
  }
20544
20934
  const sorted = Array.from(allClasses).sort();
20545
20935
  const absOutput = path7__default.default.isAbsolute(outputPath) ? outputPath : path7__default.default.resolve(cwd, outputPath);
20546
- fs3__default.default.writeFileSync(absOutput, JSON.stringify(sorted, null, 2));
20936
+ fs2__default2.default.writeFileSync(absOutput, JSON.stringify(sorted, null, 2));
20547
20937
  console.log(`[tailwind-styled-v4] Safelist: ${sorted.length} classes \u2192 ${absOutput}`);
20548
20938
  return sorted;
20549
20939
  }
20550
20940
  function loadSafelist(safelistPath) {
20551
20941
  try {
20552
- const content = fs3__default.default.readFileSync(safelistPath, "utf-8");
20942
+ const content = fs2__default2.default.readFileSync(safelistPath, "utf-8");
20553
20943
  return JSON.parse(content);
20554
20944
  } catch {
20555
20945
  return [];
@@ -20562,7 +20952,7 @@ Please build the native module.`
20562
20952
  const files = scanDir(absDir);
20563
20953
  for (const file of files) {
20564
20954
  try {
20565
- const source = fs3__default.default.readFileSync(file, "utf-8");
20955
+ const source = fs2__default2.default.readFileSync(file, "utf-8");
20566
20956
  const classes = extractAllClasses2(source);
20567
20957
  classes.forEach((c) => allClasses.add(c));
20568
20958
  } catch {
@@ -20571,13 +20961,13 @@ Please build the native module.`
20571
20961
  }
20572
20962
  const sorted = Array.from(allClasses).sort();
20573
20963
  const absOutput = path7__default.default.isAbsolute(outputPath) ? outputPath : path7__default.default.resolve(cwd, outputPath);
20574
- fs3__default.default.mkdirSync(path7__default.default.dirname(absOutput), { recursive: true });
20964
+ fs2__default2.default.mkdirSync(path7__default.default.dirname(absOutput), { recursive: true });
20575
20965
  const css = sorted.length > 0 ? `/* Auto-generated by tailwind-styled-v4 \u2014 DO NOT EDIT */
20576
20966
  @source inline("${sorted.join(" ")}");
20577
20967
  ` : `/* Auto-generated by tailwind-styled-v4 \u2014 DO NOT EDIT */
20578
20968
  /* No safelist classes found */
20579
20969
  `;
20580
- fs3__default.default.writeFileSync(absOutput, css);
20970
+ fs2__default2.default.writeFileSync(absOutput, css);
20581
20971
  console.log(`[tailwind-styled-v4] Safelist: ${sorted.length} classes \u2192 ${absOutput}`);
20582
20972
  return sorted;
20583
20973
  }
@@ -20685,13 +21075,13 @@ Please build the native module.`
20685
21075
  }
20686
21076
  }
20687
21077
  if (outputDir) {
20688
- const fs6 = __require2222("fs");
20689
- fs6.mkdirSync(outputDir, { recursive: true });
21078
+ const fs5 = __require2222("fs");
21079
+ fs5.mkdirSync(outputDir, { recursive: true });
20690
21080
  for (const result of results) {
20691
21081
  const filename = routeToFilename(result.route);
20692
21082
  const filepath = path7__default.default.join(outputDir, filename);
20693
- fs6.mkdirSync(path7__default.default.dirname(filepath), { recursive: true });
20694
- fs6.writeFileSync(filepath, result.css);
21083
+ fs5.mkdirSync(path7__default.default.dirname(filepath), { recursive: true });
21084
+ fs5.writeFileSync(filepath, result.css);
20695
21085
  }
20696
21086
  const totalSize = results.reduce((sum, r) => sum + r.sizeBytes, 0);
20697
21087
  console.log(