tailwind-to-style 3.2.2 → 4.0.0
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/README.md +221 -666
- package/dist/animations/index.cjs +9391 -0
- package/dist/animations/index.d.ts +58 -0
- package/dist/animations/index.esm.js +9385 -0
- package/dist/animations/index.esm.js.map +1 -0
- package/dist/className/index.cjs +9080 -0
- package/dist/className/index.esm.js +9075 -0
- package/dist/className/index.esm.js.map +1 -0
- package/dist/core/tws.cjs +136 -114
- package/dist/core/tws.cjs.map +1 -0
- package/dist/core/tws.esm.js +136 -114
- package/dist/core/tws.esm.js.map +1 -1
- package/dist/core/twsx.cjs +2442 -4245
- package/dist/core/twsx.esm.js +2442 -4245
- package/dist/core/twsx.esm.js.map +1 -1
- package/dist/core/twsxVariants.cjs +2470 -4262
- package/dist/core/twsxVariants.esm.js +2470 -4262
- package/dist/core/twsxVariants.esm.js.map +1 -1
- package/dist/cx.cjs +2 -2
- package/dist/cx.cjs.map +1 -0
- package/dist/cx.esm.js +2 -2
- package/dist/index.cjs +5128 -6057
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +993 -1
- package/dist/index.esm.js +5124 -6022
- package/dist/index.esm.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/react/index.cjs +10177 -0
- package/dist/react/index.cjs.map +1 -0
- package/dist/react/index.d.ts +69 -0
- package/dist/react/index.esm.js +10173 -0
- package/dist/react/index.esm.js.map +1 -0
- package/dist/styled/index.cjs +9094 -0
- package/dist/styled/index.cjs.map +1 -0
- package/dist/styled/index.d.ts +17 -0
- package/dist/styled/index.esm.js +9087 -0
- package/dist/styled/index.esm.js.map +1 -0
- package/dist/tokens/index.cjs +359 -0
- package/dist/tokens/index.d.ts +33 -0
- package/dist/tokens/index.esm.js +355 -0
- package/dist/tokens/index.esm.js.map +1 -0
- package/dist/utils/index.cjs +313 -297
- package/dist/utils/index.esm.js +313 -297
- package/dist/utils/index.esm.js.map +1 -1
- package/package.json +38 -24
- package/types/animations/index.d.ts +58 -0
- package/types/className/index.d.ts +41 -0
- package/types/index.d.ts +993 -1
- package/types/react/index.d.ts +69 -0
- package/types/tokens/index.d.ts +33 -0
- package/types/v4.d.ts +191 -0
package/dist/cx.cjs
CHANGED
package/dist/cx.cjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cx.cjs","sources":["../src/cx.js"],"sourcesContent":["/**\n * CX - Conditional Class Name Builder\n * \n * A lightweight utility for conditionally joining Tailwind class names.\n * Similar to `clsx`/`classnames` but designed specifically for tailwind-to-style.\n * \n * @module cx\n */\n\n/**\n * Conditionally join class names into a single string.\n * \n * Accepts strings, objects (key=className, value=condition), arrays, and nested combinations.\n * Falsy values (null, undefined, false, 0, '') are ignored.\n * \n * @param {...(string|Object|Array|boolean|null|undefined)} args - Class name inputs\n * @returns {string} Joined class names string\n * \n * @example\n * // Strings\n * cx('bg-blue-500', 'text-white')\n * // → 'bg-blue-500 text-white'\n * \n * @example\n * // Conditionals\n * cx('p-4', isActive && 'bg-blue-500', isDisabled && 'opacity-50')\n * // → 'p-4 bg-blue-500' (if isActive=true, isDisabled=false)\n * \n * @example\n * // Object syntax\n * cx('p-4', { 'bg-blue-500': isActive, 'opacity-50': isDisabled, 'cursor-pointer': true })\n * // → 'p-4 bg-blue-500 cursor-pointer'\n * \n * @example\n * // Arrays (nested)\n * cx(['p-4', 'bg-white'], isActive && ['ring-2', 'ring-blue-500'])\n * // → 'p-4 bg-white ring-2 ring-blue-500'\n * \n * @example\n * // Mixed\n * cx(\n * 'base-class',\n * condition && 'conditional-class',\n * { 'object-class': true, 'ignored-class': false },\n * ['array-class-1', 'array-class-2']\n * )\n */\nexport function cx(...args) {\n const classes = [];\n\n for (let i = 0; i < args.length; i++) {\n const arg = args[i];\n\n // Skip falsy values\n if (!arg) continue;\n\n const type = typeof arg;\n\n if (type === \"string\") {\n classes.push(arg);\n } else if (Array.isArray(arg)) {\n // Recursively process arrays\n const inner = cx(...arg);\n if (inner) classes.push(inner);\n } else if (type === \"object\") {\n // Object: keys are class names, values are conditions\n const keys = Object.keys(arg);\n for (let j = 0; j < keys.length; j++) {\n if (arg[keys[j]]) {\n classes.push(keys[j]);\n }\n }\n }\n }\n\n return classes.join(\" \");\n}\n\nexport default cx;\n"],"names":["cx","classes","i","arguments","length","arg","undefined","type","push","Array","isArray","inner","keys","Object","j","join"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,EAAEA,GAAU;EAC1B,MAAMC,OAAO,GAAG,EAAE;AAElB,EAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGC,SAAA,CAAKC,MAAM,EAAEF,CAAC,EAAE,EAAE;AACpC,IAAA,MAAMG,GAAG,GAAQH,CAAC,GAAA,CAAA,IAAAC,SAAA,CAAAC,MAAA,IAADF,CAAC,GAAAI,SAAA,GAAAH,SAAA,CAADD,CAAC,CAAC;;AAEnB;IACA,IAAI,CAACG,GAAG,EAAE;IAEV,MAAME,IAAI,GAAG,OAAOF,GAAG;IAEvB,IAAIE,IAAI,KAAK,QAAQ,EAAE;AACrBN,MAAAA,OAAO,CAACO,IAAI,CAACH,GAAG,CAAC;IACnB,CAAC,MAAM,IAAII,KAAK,CAACC,OAAO,CAACL,GAAG,CAAC,EAAE;AAC7B;AACA,MAAA,MAAMM,KAAK,GAAGX,EAAE,CAAC,GAAGK,GAAG,CAAC;AACxB,MAAA,IAAIM,KAAK,EAAEV,OAAO,CAACO,IAAI,CAACG,KAAK,CAAC;AAChC,IAAA,CAAC,MAAM,IAAIJ,IAAI,KAAK,QAAQ,EAAE;AAC5B;AACA,MAAA,MAAMK,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACP,GAAG,CAAC;AAC7B,MAAA,KAAK,IAAIS,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,IAAI,CAACR,MAAM,EAAEU,CAAC,EAAE,EAAE;AACpC,QAAA,IAAIT,GAAG,CAACO,IAAI,CAACE,CAAC,CAAC,CAAC,EAAE;AAChBb,UAAAA,OAAO,CAACO,IAAI,CAACI,IAAI,CAACE,CAAC,CAAC,CAAC;AACvB,QAAA;AACF,MAAA;AACF,IAAA;AACF,EAAA;AAEA,EAAA,OAAOb,OAAO,CAACc,IAAI,CAAC,GAAG,CAAC;AAC1B;;;;;"}
|
package/dist/cx.esm.js
CHANGED