tailwind-to-style 2.10.0-beta.1 → 2.10.1

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/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * tailwind-to-style v2.10.0-beta.1
2
+ * tailwind-to-style v2.10.1
3
3
  * Convert tailwind classes to inline style
4
4
  *
5
5
  * @author Bigetion
@@ -1591,9 +1591,9 @@ const configOptions = {
1591
1591
  vars
1592
1592
  };
1593
1593
 
1594
- /**
1595
- * TailwindCache singleton for managing generated Tailwind CSS
1596
- * Replaces global state with proper encapsulation
1594
+ /**
1595
+ * TailwindCache singleton for managing generated Tailwind CSS
1596
+ * Replaces global state with proper encapsulation
1597
1597
  */
1598
1598
  class TailwindCache {
1599
1599
  constructor() {
@@ -1602,44 +1602,44 @@ class TailwindCache {
1602
1602
  this.initialized = false;
1603
1603
  }
1604
1604
 
1605
- /**
1606
- * Get or generate the CSS object
1607
- * @param {Function} generateFn - Function to generate CSS string
1608
- * @param {Function} convertFn - Function to convert CSS string to object
1609
- * @returns {Object} CSS object lookup
1605
+ /**
1606
+ * Get or generate the CSS object
1607
+ * @param {Function} generateFn - Function to generate CSS string
1608
+ * @param {Function} convertFn - Function to convert CSS string to object
1609
+ * @returns {Object} CSS object lookup
1610
1610
  */
1611
1611
  getOrGenerate(generateFn, convertFn) {
1612
1612
  if (!this.initialized) {
1613
- this.twString = generateFn().replace(/\s\s+/g, ' ');
1613
+ this.twString = generateFn().replace(/\s\s+/g, " ");
1614
1614
  this.cssObject = convertFn(this.twString);
1615
1615
  this.initialized = true;
1616
1616
  }
1617
1617
  return this.cssObject;
1618
1618
  }
1619
1619
 
1620
- /**
1621
- * Get the CSS string
1620
+ /**
1621
+ * Get the CSS string
1622
1622
  */
1623
1623
  getCssString() {
1624
1624
  return this.twString;
1625
1625
  }
1626
1626
 
1627
- /**
1628
- * Get the CSS object
1627
+ /**
1628
+ * Get the CSS object
1629
1629
  */
1630
1630
  getCssObject() {
1631
1631
  return this.cssObject;
1632
1632
  }
1633
1633
 
1634
- /**
1635
- * Check if cache is initialized
1634
+ /**
1635
+ * Check if cache is initialized
1636
1636
  */
1637
1637
  isInitialized() {
1638
1638
  return this.initialized;
1639
1639
  }
1640
1640
 
1641
- /**
1642
- * Reset the cache (useful for testing)
1641
+ /**
1642
+ * Reset the cache (useful for testing)
1643
1643
  */
1644
1644
  reset() {
1645
1645
  this.twString = null;
@@ -1651,9 +1651,9 @@ class TailwindCache {
1651
1651
  // Singleton instance
1652
1652
  let instance = null;
1653
1653
 
1654
- /**
1655
- * Get the TailwindCache singleton instance
1656
- * @returns {TailwindCache} The cache instance
1654
+ /**
1655
+ * Get the TailwindCache singleton instance
1656
+ * @returns {TailwindCache} The cache instance
1657
1657
  */
1658
1658
  function getTailwindCache() {
1659
1659
  if (!instance) {
@@ -1662,8 +1662,8 @@ function getTailwindCache() {
1662
1662
  return instance;
1663
1663
  }
1664
1664
 
1665
- /**
1666
- * Reset the TailwindCache singleton (for testing)
1665
+ /**
1666
+ * Reset the TailwindCache singleton (for testing)
1667
1667
  */
1668
1668
  function resetTailwindCache() {
1669
1669
  if (instance) {
@@ -1673,13 +1673,13 @@ function resetTailwindCache() {
1673
1673
  }
1674
1674
 
1675
1675
  var _process$env;
1676
- /**
1677
- * Logger class with configurable log levels
1678
- * Prevents console spam in production
1676
+ /**
1677
+ * Logger class with configurable log levels
1678
+ * Prevents console spam in production
1679
1679
  */
1680
1680
  class Logger {
1681
1681
  constructor() {
1682
- let level = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'warn';
1682
+ let level = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "warn";
1683
1683
  this.level = level;
1684
1684
  this.levels = {
1685
1685
  debug: 0,
@@ -1690,9 +1690,9 @@ class Logger {
1690
1690
  };
1691
1691
  }
1692
1692
 
1693
- /**
1694
- * Set the log level
1695
- * @param {string} level - One of 'debug', 'info', 'warn', 'error', 'silent'
1693
+ /**
1694
+ * Set the log level
1695
+ * @param {string} level - One of 'debug', 'info', 'warn', 'error', 'silent'
1696
1696
  */
1697
1697
  setLevel(level) {
1698
1698
  if (this.levels[level] !== undefined) {
@@ -1700,25 +1700,25 @@ class Logger {
1700
1700
  }
1701
1701
  }
1702
1702
 
1703
- /**
1704
- * Get current log level
1703
+ /**
1704
+ * Get current log level
1705
1705
  */
1706
1706
  getLevel() {
1707
1707
  return this.level;
1708
1708
  }
1709
1709
 
1710
- /**
1711
- * Check if a message should be logged
1710
+ /**
1711
+ * Check if a message should be logged
1712
1712
  */
1713
1713
  shouldLog(level) {
1714
1714
  return this.levels[level] >= this.levels[this.level];
1715
1715
  }
1716
1716
 
1717
- /**
1718
- * Log debug message
1717
+ /**
1718
+ * Log debug message
1719
1719
  */
1720
1720
  debug(message) {
1721
- if (this.shouldLog('debug')) {
1721
+ if (this.shouldLog("debug")) {
1722
1722
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
1723
1723
  args[_key - 1] = arguments[_key];
1724
1724
  }
@@ -1726,11 +1726,11 @@ class Logger {
1726
1726
  }
1727
1727
  }
1728
1728
 
1729
- /**
1730
- * Log info message
1729
+ /**
1730
+ * Log info message
1731
1731
  */
1732
1732
  info(message) {
1733
- if (this.shouldLog('info')) {
1733
+ if (this.shouldLog("info")) {
1734
1734
  for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
1735
1735
  args[_key2 - 1] = arguments[_key2];
1736
1736
  }
@@ -1738,11 +1738,11 @@ class Logger {
1738
1738
  }
1739
1739
  }
1740
1740
 
1741
- /**
1742
- * Log warning message
1741
+ /**
1742
+ * Log warning message
1743
1743
  */
1744
1744
  warn(message) {
1745
- if (this.shouldLog('warn')) {
1745
+ if (this.shouldLog("warn")) {
1746
1746
  for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
1747
1747
  args[_key3 - 1] = arguments[_key3];
1748
1748
  }
@@ -1750,11 +1750,11 @@ class Logger {
1750
1750
  }
1751
1751
  }
1752
1752
 
1753
- /**
1754
- * Log error message
1753
+ /**
1754
+ * Log error message
1755
1755
  */
1756
1756
  error(message) {
1757
- if (this.shouldLog('error')) {
1757
+ if (this.shouldLog("error")) {
1758
1758
  for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
1759
1759
  args[_key4 - 1] = arguments[_key4];
1760
1760
  }
@@ -1764,16 +1764,16 @@ class Logger {
1764
1764
  }
1765
1765
 
1766
1766
  // Create singleton instance with production-safe defaults
1767
- const isProduction = typeof process !== 'undefined' && ((_process$env = process.env) === null || _process$env === void 0 ? void 0 : _process$env.NODE_ENV) === 'production';
1768
- const logger = new Logger(isProduction ? 'error' : 'warn');
1767
+ const isProduction = typeof process !== "undefined" && ((_process$env = process.env) === null || _process$env === void 0 ? void 0 : _process$env.NODE_ENV) === "production";
1768
+ const logger = new Logger(isProduction ? "error" : "warn");
1769
1769
 
1770
- /**
1771
- * User Configuration Management
1772
- * Handles theme extensions and custom plugin registration
1770
+ /**
1771
+ * User Configuration Management
1772
+ * Handles theme extensions and custom plugin registration
1773
1773
  */
1774
1774
 
1775
- /**
1776
- * User configuration state
1775
+ /**
1776
+ * User configuration state
1777
1777
  */
1778
1778
  let userConfig = {
1779
1779
  theme: {
@@ -1784,11 +1784,11 @@ let userConfig = {
1784
1784
  prefix: ""
1785
1785
  };
1786
1786
 
1787
- /**
1788
- * Deep merge two objects
1789
- * @param {Object} target - Target object
1790
- * @param {Object} source - Source object
1791
- * @returns {Object} Merged object
1787
+ /**
1788
+ * Deep merge two objects
1789
+ * @param {Object} target - Target object
1790
+ * @param {Object} source - Source object
1791
+ * @returns {Object} Merged object
1792
1792
  */
1793
1793
  function deepMerge(target, source) {
1794
1794
  const result = {
@@ -1804,31 +1804,31 @@ function deepMerge(target, source) {
1804
1804
  return result;
1805
1805
  }
1806
1806
 
1807
- /**
1808
- * Configure tailwind-to-style with custom theme and plugins
1809
- * @param {Object} config - Configuration object
1810
- * @param {Object} [config.theme] - Theme configuration
1811
- * @param {Object} [config.theme.extend] - Theme extensions
1812
- * @param {Array} [config.plugins] - Array of plugins
1813
- * @param {Object} [config.corePlugins] - Core plugins to enable/disable
1814
- * @param {string} [config.prefix] - Prefix for all classes
1815
- *
1816
- * @example
1817
- * configure({
1818
- * theme: {
1819
- * extend: {
1820
- * colors: {
1821
- * brand: {
1822
- * 500: '#3B82F6',
1823
- * },
1824
- * },
1825
- * spacing: {
1826
- * 128: '32rem',
1827
- * },
1828
- * },
1829
- * },
1830
- * plugins: [myCustomPlugin],
1831
- * });
1807
+ /**
1808
+ * Configure tailwind-to-style with custom theme and plugins
1809
+ * @param {Object} config - Configuration object
1810
+ * @param {Object} [config.theme] - Theme configuration
1811
+ * @param {Object} [config.theme.extend] - Theme extensions
1812
+ * @param {Array} [config.plugins] - Array of plugins
1813
+ * @param {Object} [config.corePlugins] - Core plugins to enable/disable
1814
+ * @param {string} [config.prefix] - Prefix for all classes
1815
+ *
1816
+ * @example
1817
+ * configure({
1818
+ * theme: {
1819
+ * extend: {
1820
+ * colors: {
1821
+ * brand: {
1822
+ * 500: '#3B82F6',
1823
+ * },
1824
+ * },
1825
+ * spacing: {
1826
+ * 128: '32rem',
1827
+ * },
1828
+ * },
1829
+ * },
1830
+ * plugins: [myCustomPlugin],
1831
+ * });
1832
1832
  */
1833
1833
  function configure() {
1834
1834
  let config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -1882,9 +1882,9 @@ function configure() {
1882
1882
  }
1883
1883
  }
1884
1884
 
1885
- /**
1886
- * Get current user configuration
1887
- * @returns {Object} Current configuration
1885
+ /**
1886
+ * Get current user configuration
1887
+ * @returns {Object} Current configuration
1888
1888
  */
1889
1889
  function getConfig() {
1890
1890
  return {
@@ -1892,8 +1892,8 @@ function getConfig() {
1892
1892
  };
1893
1893
  }
1894
1894
 
1895
- /**
1896
- * Reset configuration to defaults
1895
+ /**
1896
+ * Reset configuration to defaults
1897
1897
  */
1898
1898
  function resetConfig() {
1899
1899
  userConfig = {
@@ -1908,26 +1908,26 @@ function resetConfig() {
1908
1908
  logger.info("Configuration reset to defaults");
1909
1909
  }
1910
1910
 
1911
- /**
1912
- * Get extended theme value
1913
- * @param {string} key - Theme key (e.g., 'colors', 'spacing')
1914
- * @returns {Object} Extended theme values
1911
+ /**
1912
+ * Get extended theme value
1913
+ * @param {string} key - Theme key (e.g., 'colors', 'spacing')
1914
+ * @returns {Object} Extended theme values
1915
1915
  */
1916
1916
  function getExtendedTheme(key) {
1917
1917
  return userConfig.theme.extend[key] || {};
1918
1918
  }
1919
1919
 
1920
- /**
1921
- * Get all registered plugins
1922
- * @returns {Array} Array of plugins
1920
+ /**
1921
+ * Get all registered plugins
1922
+ * @returns {Array} Array of plugins
1923
1923
  */
1924
1924
  function getPlugins() {
1925
1925
  return userConfig.plugins;
1926
1926
  }
1927
1927
 
1928
- /**
1929
- * Get configured prefix
1930
- * @returns {string} Prefix string
1928
+ /**
1929
+ * Get configured prefix
1930
+ * @returns {string} Prefix string
1931
1931
  */
1932
1932
  function getPrefix() {
1933
1933
  return userConfig.prefix;
@@ -1975,6 +1975,19 @@ function getConfigOptions() {
1975
1975
  }
1976
1976
  });
1977
1977
 
1978
+ // Re-resolve theme functions after all extensions are applied
1979
+ // This ensures that theme functions like backgroundColor: ({ theme }) => theme("colors")
1980
+ // get the updated colors including custom theme extensions
1981
+ themeKeys.forEach(key => {
1982
+ if (isFunction(configOptions.theme[key])) {
1983
+ newTheme[key] = configOptions.theme[key]({
1984
+ theme: keyRef => {
1985
+ return newTheme[keyRef];
1986
+ }
1987
+ });
1988
+ }
1989
+ });
1990
+
1978
1991
  // Get user prefix
1979
1992
  const userPrefix = getPrefix();
1980
1993
  const finalPrefix = userPrefix || options.prefix || "";
@@ -2045,7 +2058,7 @@ function generateCssString$1() {
2045
2058
  return cssString;
2046
2059
  }
2047
2060
 
2048
- function generator$2w() {
2061
+ function generator$2M() {
2049
2062
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2050
2063
  const {
2051
2064
  prefix: globalPrefix,
@@ -2084,7 +2097,7 @@ function generator$2w() {
2084
2097
  return responsiveCssString;
2085
2098
  }
2086
2099
 
2087
- function generator$2v() {
2100
+ function generator$2L() {
2088
2101
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2089
2102
  const {
2090
2103
  prefix
@@ -2123,7 +2136,7 @@ function generator$2v() {
2123
2136
  return responsiveCssString;
2124
2137
  }
2125
2138
 
2126
- function generator$2u() {
2139
+ function generator$2K() {
2127
2140
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2128
2141
  const {
2129
2142
  prefix: globalPrefix
@@ -2151,7 +2164,7 @@ function generator$2u() {
2151
2164
  return responsiveCssString;
2152
2165
  }
2153
2166
 
2154
- function generator$2t() {
2167
+ function generator$2J() {
2155
2168
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2156
2169
  const {
2157
2170
  prefix: globalPrefix
@@ -2178,7 +2191,7 @@ function generator$2t() {
2178
2191
  return responsiveCssString;
2179
2192
  }
2180
2193
 
2181
- function generator$2s() {
2194
+ function generator$2I() {
2182
2195
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2183
2196
  const {
2184
2197
  prefix: globalPrefix
@@ -2205,14 +2218,224 @@ function generator$2s() {
2205
2218
  return responsiveCssString;
2206
2219
  }
2207
2220
 
2208
- /**
2209
- * Animation Generator
2210
- * Generates animation utility classes
2211
- * Note: Keyframes are defined in theme but not rendered here since inline styles
2212
- * can't use @keyframes. The animation values should reference keyframe names that
2213
- * are already defined in your global CSS.
2221
+ /**
2222
+ * Inline Animation System
2223
+ * Generate animation properties directly without keyframes
2214
2224
  */
2215
- function generator$2r() {
2225
+
2226
+ /* eslint-disable no-undef */
2227
+
2228
+ /**
2229
+ * Convert animation config to inline transition properties
2230
+ */
2231
+ function animationToTransition(animationConfig) {
2232
+ const {
2233
+ property = "all",
2234
+ duration = 300,
2235
+ easing = "ease-out",
2236
+ delay = 0
2237
+ } = animationConfig;
2238
+ return {
2239
+ transitionProperty: property,
2240
+ transitionDuration: `${duration}ms`,
2241
+ transitionTimingFunction: easing,
2242
+ transitionDelay: `${delay}ms`
2243
+ };
2244
+ }
2245
+
2246
+ /**
2247
+ * Built-in animation configs that work with transitions
2248
+ */
2249
+ const INLINE_ANIMATIONS = {
2250
+ "fade-in": {
2251
+ initial: {
2252
+ opacity: 0
2253
+ },
2254
+ final: {
2255
+ opacity: 1
2256
+ },
2257
+ transition: {
2258
+ duration: 500,
2259
+ easing: "ease-out"
2260
+ }
2261
+ },
2262
+ "slide-up": {
2263
+ initial: {
2264
+ transform: "translateY(20px)",
2265
+ opacity: 0
2266
+ },
2267
+ final: {
2268
+ transform: "translateY(0)",
2269
+ opacity: 1
2270
+ },
2271
+ transition: {
2272
+ duration: 500,
2273
+ easing: "ease-out"
2274
+ }
2275
+ },
2276
+ "slide-down": {
2277
+ initial: {
2278
+ transform: "translateY(-20px)",
2279
+ opacity: 0
2280
+ },
2281
+ final: {
2282
+ transform: "translateY(0)",
2283
+ opacity: 1
2284
+ },
2285
+ transition: {
2286
+ duration: 500,
2287
+ easing: "ease-out"
2288
+ }
2289
+ },
2290
+ "zoom-in": {
2291
+ initial: {
2292
+ transform: "scale(0.8)",
2293
+ opacity: 0
2294
+ },
2295
+ final: {
2296
+ transform: "scale(1)",
2297
+ opacity: 1
2298
+ },
2299
+ transition: {
2300
+ duration: 400,
2301
+ easing: "cubic-bezier(0.4, 0, 0.2, 1)"
2302
+ }
2303
+ },
2304
+ "zoom-out": {
2305
+ initial: {
2306
+ transform: "scale(1.2)",
2307
+ opacity: 0
2308
+ },
2309
+ final: {
2310
+ transform: "scale(1)",
2311
+ opacity: 1
2312
+ },
2313
+ transition: {
2314
+ duration: 400,
2315
+ easing: "cubic-bezier(0.4, 0, 0.2, 1)"
2316
+ }
2317
+ }
2318
+ };
2319
+
2320
+ /**
2321
+ * Apply inline animation to element
2322
+ */
2323
+ function applyInlineAnimation(element, animationName) {
2324
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
2325
+ if (!element || !INLINE_ANIMATIONS[animationName]) return null;
2326
+ const animation = INLINE_ANIMATIONS[animationName];
2327
+ const {
2328
+ autoStart = true,
2329
+ onComplete
2330
+ } = options;
2331
+
2332
+ // Apply initial state
2333
+ Object.assign(element.style, animation.initial);
2334
+
2335
+ // Apply transition properties
2336
+ const transitionProps = animationToTransition(animation.transition);
2337
+ Object.assign(element.style, transitionProps);
2338
+ if (autoStart) {
2339
+ // Trigger animation on next frame
2340
+ requestAnimationFrame(() => {
2341
+ Object.assign(element.style, animation.final);
2342
+ if (onComplete) {
2343
+ setTimeout(onComplete, animation.transition.duration);
2344
+ }
2345
+ });
2346
+ }
2347
+ return {
2348
+ start: () => Object.assign(element.style, animation.final),
2349
+ reset: () => Object.assign(element.style, animation.initial),
2350
+ animation
2351
+ };
2352
+ }
2353
+
2354
+ /**
2355
+ * Animate element with custom properties
2356
+ */
2357
+ function animateElement(element, fromProps, toProps) {
2358
+ let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
2359
+ if (!element) return null;
2360
+ const {
2361
+ duration = 300,
2362
+ easing = "ease-out",
2363
+ delay = 0,
2364
+ onComplete
2365
+ } = options;
2366
+
2367
+ // Apply initial state
2368
+ Object.assign(element.style, fromProps);
2369
+
2370
+ // Apply transition
2371
+ element.style.transition = `all ${duration}ms ${easing} ${delay}ms`;
2372
+
2373
+ // Trigger animation
2374
+ requestAnimationFrame(() => {
2375
+ Object.assign(element.style, toProps);
2376
+ if (onComplete) {
2377
+ setTimeout(onComplete, duration + delay);
2378
+ }
2379
+ });
2380
+ return {
2381
+ element,
2382
+ duration: duration + delay
2383
+ };
2384
+ }
2385
+
2386
+ /**
2387
+ * Chain multiple animations
2388
+ */
2389
+ function chainAnimations(element, animations) {
2390
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
2391
+ if (!element || !animations.length) return Promise.resolve();
2392
+ const {
2393
+ onProgress
2394
+ } = options;
2395
+ let currentIndex = 0;
2396
+ return new Promise(resolve => {
2397
+ function runNext() {
2398
+ if (currentIndex >= animations.length) {
2399
+ resolve();
2400
+ return;
2401
+ }
2402
+ const animation = animations[currentIndex];
2403
+ animateElement(element, animation.from, animation.to, {
2404
+ ...animation.options,
2405
+ onComplete: () => {
2406
+ if (onProgress) {
2407
+ onProgress(currentIndex, animations.length);
2408
+ }
2409
+ currentIndex++;
2410
+ runNext();
2411
+ }
2412
+ });
2413
+ }
2414
+ runNext();
2415
+ });
2416
+ }
2417
+
2418
+ /**
2419
+ * Stagger animations for multiple elements
2420
+ */
2421
+ function staggerAnimations(elements, animationName) {
2422
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
2423
+ const {
2424
+ staggerDelay = 100,
2425
+ ...animationOptions
2426
+ } = options;
2427
+ return elements.map((element, index) => {
2428
+ return setTimeout(() => {
2429
+ applyInlineAnimation(element, animationName, animationOptions);
2430
+ }, index * staggerDelay);
2431
+ });
2432
+ }
2433
+
2434
+ /**
2435
+ * Animation Generator
2436
+ * Generates animation utility classes with dynamic inline animations
2437
+ */
2438
+ function generator$2H() {
2216
2439
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2217
2440
  const {
2218
2441
  prefix: globalPrefix,
@@ -2226,7 +2449,51 @@ function generator$2r() {
2226
2449
  let {
2227
2450
  getCssByOptions
2228
2451
  } = _ref;
2229
- const cssString = getCssByOptions(animation, (key, value) => {
2452
+ // Merge theme animations with inline animations
2453
+ const allAnimations = {
2454
+ ...animation,
2455
+ // Add inline animations to the mix
2456
+ ...Object.keys(INLINE_ANIMATIONS).reduce((acc, key) => {
2457
+ acc[key] = `inline-${key}`; // Special marker for inline animations
2458
+ return acc;
2459
+ }, {})
2460
+ };
2461
+ const cssString = getCssByOptions(allAnimations, (key, value) => {
2462
+ // Check if this is an inline animation
2463
+ if (value.startsWith("inline-")) {
2464
+ const animationKey = value.replace("inline-", "");
2465
+ const inlineAnimation = INLINE_ANIMATIONS[animationKey];
2466
+ if (inlineAnimation) {
2467
+ // Generate CSS for inline animation (initial state + transition)
2468
+ const transitionProps = animationToTransition(inlineAnimation.transition);
2469
+ const initialProps = inlineAnimation.initial;
2470
+ let css = `${prefix}-${key} {\n`;
2471
+
2472
+ // Add initial state properties
2473
+ for (const [prop, val] of Object.entries(initialProps)) {
2474
+ const cssProp = prop.replace(/([A-Z])/g, "-$1").toLowerCase();
2475
+ css += ` ${cssProp}: ${val};\n`;
2476
+ }
2477
+
2478
+ // Add transition properties
2479
+ for (const [prop, val] of Object.entries(transitionProps)) {
2480
+ const cssProp = prop.replace(/([A-Z])/g, "-$1").toLowerCase();
2481
+ css += ` ${cssProp}: ${val};\n`;
2482
+ }
2483
+ css += "}\n";
2484
+
2485
+ // Add hover/active state for final animation
2486
+ css += `${prefix}-${key}:hover, ${prefix}-${key}.animate-active {\n`;
2487
+ for (const [prop, val] of Object.entries(inlineAnimation.final)) {
2488
+ const cssProp = prop.replace(/([A-Z])/g, "-$1").toLowerCase();
2489
+ css += ` ${cssProp}: ${val};\n`;
2490
+ }
2491
+ css += "}\n";
2492
+ return css;
2493
+ }
2494
+ }
2495
+
2496
+ // Fallback to traditional animation property
2230
2497
  return `
2231
2498
  ${prefix}-${key} {
2232
2499
  animation: ${value};
@@ -2238,7 +2505,7 @@ function generator$2r() {
2238
2505
  return responsiveCssString;
2239
2506
  }
2240
2507
 
2241
- function generator$2q() {
2508
+ function generator$2G() {
2242
2509
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2243
2510
  const {
2244
2511
  prefix
@@ -2258,7 +2525,7 @@ function generator$2q() {
2258
2525
  return responsiveCssString;
2259
2526
  }
2260
2527
 
2261
- function generator$2p() {
2528
+ function generator$2F() {
2262
2529
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2263
2530
  const {
2264
2531
  prefix: globalPrefix,
@@ -2287,7 +2554,7 @@ function generator$2p() {
2287
2554
  return responsiveCssString;
2288
2555
  }
2289
2556
 
2290
- function generator$2o() {
2557
+ function generator$2E() {
2291
2558
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2292
2559
  const {
2293
2560
  prefix: globalPrefix
@@ -2308,7 +2575,7 @@ function generator$2o() {
2308
2575
  return responsiveCssString;
2309
2576
  }
2310
2577
 
2311
- function generator$2n() {
2578
+ function generator$2D() {
2312
2579
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2313
2580
  const {
2314
2581
  prefix: globalPrefix
@@ -2335,7 +2602,7 @@ function generator$2n() {
2335
2602
  return responsiveCssString;
2336
2603
  }
2337
2604
 
2338
- function generator$2m() {
2605
+ function generator$2C() {
2339
2606
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2340
2607
  const {
2341
2608
  prefix: globalPrefix,
@@ -2375,7 +2642,7 @@ function generator$2m() {
2375
2642
  return responsiveCssString;
2376
2643
  }
2377
2644
 
2378
- function generator$2l() {
2645
+ function generator$2B() {
2379
2646
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2380
2647
  const {
2381
2648
  prefix: globalPrefix,
@@ -2409,7 +2676,7 @@ function generator$2l() {
2409
2676
  return responsiveCssString;
2410
2677
  }
2411
2678
 
2412
- function generator$2k() {
2679
+ function generator$2A() {
2413
2680
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2414
2681
  const {
2415
2682
  prefix: globalPrefix,
@@ -2433,7 +2700,7 @@ function generator$2k() {
2433
2700
  return responsiveCssString;
2434
2701
  }
2435
2702
 
2436
- function generator$2j() {
2703
+ function generator$2z() {
2437
2704
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2438
2705
  const {
2439
2706
  prefix: globalPrefix
@@ -2459,7 +2726,7 @@ function generator$2j() {
2459
2726
  return responsiveCssString;
2460
2727
  }
2461
2728
 
2462
- function generator$2i() {
2729
+ function generator$2y() {
2463
2730
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2464
2731
  const {
2465
2732
  prefix: globalPrefix,
@@ -2493,7 +2760,7 @@ function generator$2i() {
2493
2760
  return responsiveCssString;
2494
2761
  }
2495
2762
 
2496
- function generator$2h() {
2763
+ function generator$2x() {
2497
2764
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2498
2765
  const {
2499
2766
  prefix: globalPrefix
@@ -2521,7 +2788,7 @@ function generator$2h() {
2521
2788
  return responsiveCssString;
2522
2789
  }
2523
2790
 
2524
- function generator$2g() {
2791
+ function generator$2w() {
2525
2792
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2526
2793
  const {
2527
2794
  prefix: globalPrefix,
@@ -2555,7 +2822,288 @@ function generator$2g() {
2555
2822
  return responsiveCssString;
2556
2823
  }
2557
2824
 
2558
- function generator$2f() {
2825
+ function generator$2v() {
2826
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2827
+ const {
2828
+ prefix: globalPrefix,
2829
+ theme = {},
2830
+ vars = {}
2831
+ } = configOptions;
2832
+ const prefix = `${globalPrefix}backdrop-blur`;
2833
+ const {
2834
+ backdropBlur = {}
2835
+ } = theme;
2836
+ const responsiveCssString = generateCssString$1(_ref => {
2837
+ let {
2838
+ getCssByOptions
2839
+ } = _ref;
2840
+ const cssString = getCssByOptions(backdropBlur, (keyTmp, value) => {
2841
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
2842
+ return `
2843
+ ${prefix}${key} {
2844
+ --tw-backdrop-blur: blur(${value});
2845
+ ${vars.backdropFilter}
2846
+ }
2847
+ `;
2848
+ });
2849
+ return cssString;
2850
+ }, configOptions);
2851
+ return responsiveCssString;
2852
+ }
2853
+
2854
+ function generator$2u() {
2855
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2856
+ const {
2857
+ prefix: globalPrefix,
2858
+ theme = {},
2859
+ vars = {}
2860
+ } = configOptions;
2861
+ const prefix = `${globalPrefix}backdrop-brightness`;
2862
+ const {
2863
+ backdropBrightness = {}
2864
+ } = theme;
2865
+ const responsiveCssString = generateCssString$1(_ref => {
2866
+ let {
2867
+ getCssByOptions
2868
+ } = _ref;
2869
+ const cssString = getCssByOptions(backdropBrightness, (keyTmp, value) => {
2870
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
2871
+ return `
2872
+ ${prefix}${key} {
2873
+ --tw-backdrop-brightness: brightness(${value});
2874
+ ${vars.backdropFilter}
2875
+ }
2876
+ `;
2877
+ });
2878
+ return cssString;
2879
+ }, configOptions);
2880
+ return responsiveCssString;
2881
+ }
2882
+
2883
+ function generator$2t() {
2884
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2885
+ const {
2886
+ prefix: globalPrefix,
2887
+ theme = {},
2888
+ vars = {}
2889
+ } = configOptions;
2890
+ const prefix = `${globalPrefix}backdrop-contrast`;
2891
+ const {
2892
+ backdropContrast = {}
2893
+ } = theme;
2894
+ const responsiveCssString = generateCssString$1(_ref => {
2895
+ let {
2896
+ getCssByOptions
2897
+ } = _ref;
2898
+ const cssString = getCssByOptions(backdropContrast, (keyTmp, value) => {
2899
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
2900
+ return `
2901
+ ${prefix}${key} {
2902
+ --tw-backdrop-contrast: contrast(${value});
2903
+ ${vars.backdropFilter}
2904
+ }
2905
+ `;
2906
+ });
2907
+ return cssString;
2908
+ }, configOptions);
2909
+ return responsiveCssString;
2910
+ }
2911
+
2912
+ function generator$2s() {
2913
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2914
+ const {
2915
+ prefix,
2916
+ vars = {}
2917
+ } = configOptions;
2918
+ const responsiveCssString = generateCssString$1(() => {
2919
+ const cssString = `
2920
+ ${prefix}backdrop-filter {
2921
+ ${vars.backdropFilter}
2922
+ }
2923
+ ${prefix}backdrop-filter-none {
2924
+ backdrop-filter: none;
2925
+ }
2926
+ `;
2927
+ return cssString;
2928
+ }, configOptions);
2929
+ return responsiveCssString;
2930
+ }
2931
+
2932
+ function generator$2r() {
2933
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2934
+ const {
2935
+ prefix: globalPrefix,
2936
+ theme = {},
2937
+ vars = {}
2938
+ } = configOptions;
2939
+ const prefix = `${globalPrefix}backdrop-grayscale`;
2940
+ const {
2941
+ backdropGrayscale = {}
2942
+ } = theme;
2943
+ const responsiveCssString = generateCssString$1(_ref => {
2944
+ let {
2945
+ getCssByOptions
2946
+ } = _ref;
2947
+ const cssString = getCssByOptions(backdropGrayscale, (keyTmp, value) => {
2948
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
2949
+ return `
2950
+ ${prefix}${key} {
2951
+ --tw-backdrop-grayscale: grayscale(${value});
2952
+ ${vars.backdropFilter}
2953
+ }
2954
+ `;
2955
+ });
2956
+ return cssString;
2957
+ }, configOptions);
2958
+ return responsiveCssString;
2959
+ }
2960
+
2961
+ function generator$2q() {
2962
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2963
+ const {
2964
+ prefix: globalPrefix,
2965
+ theme = {},
2966
+ vars = {}
2967
+ } = configOptions;
2968
+ const prefix = `${globalPrefix}backdrop-hue-rotate`;
2969
+ const {
2970
+ backdropHueRotate = {}
2971
+ } = theme;
2972
+ const responsiveCssString = generateCssString$1(_ref => {
2973
+ let {
2974
+ getCssByOptions
2975
+ } = _ref;
2976
+ const cssString = getCssByOptions(backdropHueRotate, (keyTmp, value) => {
2977
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
2978
+ return `
2979
+ ${prefix}${key} {
2980
+ --tw-backdrop-hue-rotate: hue-rotate(${value});
2981
+ ${vars.backdropFilter}
2982
+ }
2983
+ `;
2984
+ });
2985
+ return cssString;
2986
+ }, configOptions);
2987
+ return responsiveCssString;
2988
+ }
2989
+
2990
+ function generator$2p() {
2991
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2992
+ const {
2993
+ prefix: globalPrefix,
2994
+ theme = {},
2995
+ vars = {}
2996
+ } = configOptions;
2997
+ const prefix = `${globalPrefix}backdrop-invert`;
2998
+ const {
2999
+ backdropInvert = {}
3000
+ } = theme;
3001
+ const responsiveCssString = generateCssString$1(_ref => {
3002
+ let {
3003
+ getCssByOptions
3004
+ } = _ref;
3005
+ const cssString = getCssByOptions(backdropInvert, (keyTmp, value) => {
3006
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
3007
+ return `
3008
+ ${prefix}${key} {
3009
+ --tw-backdrop-invert: invert(${value});
3010
+ ${vars.backdropFilter}
3011
+ }
3012
+ `;
3013
+ });
3014
+ return cssString;
3015
+ }, configOptions);
3016
+ return responsiveCssString;
3017
+ }
3018
+
3019
+ function generator$2o() {
3020
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3021
+ const {
3022
+ prefix: globalPrefix,
3023
+ theme = {},
3024
+ vars = {}
3025
+ } = configOptions;
3026
+ const prefix = `${globalPrefix}backdrop-opacity`;
3027
+ const {
3028
+ backdropOpacity = {}
3029
+ } = theme;
3030
+ const responsiveCssString = generateCssString$1(_ref => {
3031
+ let {
3032
+ getCssByOptions
3033
+ } = _ref;
3034
+ const cssString = getCssByOptions(backdropOpacity, (keyTmp, value) => {
3035
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
3036
+ return `
3037
+ ${prefix}${key} {
3038
+ --tw-backdrop-opacity: opacity(${value});
3039
+ ${vars.backdropFilter}
3040
+ }
3041
+ `;
3042
+ });
3043
+ return cssString;
3044
+ }, configOptions);
3045
+ return responsiveCssString;
3046
+ }
3047
+
3048
+ function generator$2n() {
3049
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3050
+ const {
3051
+ prefix: globalPrefix,
3052
+ theme = {},
3053
+ vars = {}
3054
+ } = configOptions;
3055
+ const prefix = `${globalPrefix}backdrop-saturate`;
3056
+ const {
3057
+ backdropSaturate = {}
3058
+ } = theme;
3059
+ const responsiveCssString = generateCssString$1(_ref => {
3060
+ let {
3061
+ getCssByOptions
3062
+ } = _ref;
3063
+ const cssString = getCssByOptions(backdropSaturate, (keyTmp, value) => {
3064
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
3065
+ return `
3066
+ ${prefix}${key} {
3067
+ --tw-backdrop-saturate: saturate(${value});
3068
+ ${vars.backdropFilter}
3069
+ }
3070
+ `;
3071
+ });
3072
+ return cssString;
3073
+ }, configOptions);
3074
+ return responsiveCssString;
3075
+ }
3076
+
3077
+ function generator$2m() {
3078
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3079
+ const {
3080
+ prefix: globalPrefix,
3081
+ theme = {},
3082
+ vars = {}
3083
+ } = configOptions;
3084
+ const prefix = `${globalPrefix}backdrop-sepia`;
3085
+ const {
3086
+ backdropSepia = {}
3087
+ } = theme;
3088
+ const responsiveCssString = generateCssString$1(_ref => {
3089
+ let {
3090
+ getCssByOptions
3091
+ } = _ref;
3092
+ const cssString = getCssByOptions(backdropSepia, (keyTmp, value) => {
3093
+ const key = keyTmp.toLowerCase() !== "default" ? `-${keyTmp}` : "";
3094
+ return `
3095
+ ${prefix}${key} {
3096
+ --tw-backdrop-sepia: sepia(${value});
3097
+ ${vars.backdropFilter}
3098
+ }
3099
+ `;
3100
+ });
3101
+ return cssString;
3102
+ }, configOptions);
3103
+ return responsiveCssString;
3104
+ }
3105
+
3106
+ function generator$2l() {
2559
3107
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2560
3108
  const {
2561
3109
  prefix: globalPrefix,
@@ -2589,7 +3137,7 @@ function generator$2f() {
2589
3137
  return responsiveCssString;
2590
3138
  }
2591
3139
 
2592
- function generator$2e() {
3140
+ function generator$2k() {
2593
3141
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2594
3142
  const {
2595
3143
  prefix: globalPrefix
@@ -2610,7 +3158,7 @@ function generator$2e() {
2610
3158
  return responsiveCssString;
2611
3159
  }
2612
3160
 
2613
- function generator$2d() {
3161
+ function generator$2j() {
2614
3162
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2615
3163
  const {
2616
3164
  prefix: globalPrefix,
@@ -2698,7 +3246,7 @@ function generator$2d() {
2698
3246
  return responsiveCssString;
2699
3247
  }
2700
3248
 
2701
- function generator$2c() {
3249
+ function generator$2i() {
2702
3250
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2703
3251
  const {
2704
3252
  prefix: globalPrefix,
@@ -2722,7 +3270,7 @@ function generator$2c() {
2722
3270
  return responsiveCssString;
2723
3271
  }
2724
3272
 
2725
- function generator$2b() {
3273
+ function generator$2h() {
2726
3274
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2727
3275
  const {
2728
3276
  prefix: globalPrefix,
@@ -2797,7 +3345,7 @@ function generator$2b() {
2797
3345
  return responsiveCssString;
2798
3346
  }
2799
3347
 
2800
- function generator$2a() {
3348
+ function generator$2g() {
2801
3349
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2802
3350
  const {
2803
3351
  prefix: globalPrefix,
@@ -2832,7 +3380,7 @@ function generator$2a() {
2832
3380
  return responsiveCssString;
2833
3381
  }
2834
3382
 
2835
- function generator$29() {
3383
+ function generator$2f() {
2836
3384
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2837
3385
  const {
2838
3386
  prefix: globalPrefix
@@ -2853,7 +3401,7 @@ function generator$29() {
2853
3401
  return responsiveCssString;
2854
3402
  }
2855
3403
 
2856
- function generator$28() {
3404
+ function generator$2e() {
2857
3405
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2858
3406
  const {
2859
3407
  prefix: globalPrefix,
@@ -2918,7 +3466,7 @@ function generator$28() {
2918
3466
  return responsiveCssString;
2919
3467
  }
2920
3468
 
2921
- function generator$27() {
3469
+ function generator$2d() {
2922
3470
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2923
3471
  const {
2924
3472
  prefix: globalPrefix
@@ -2940,7 +3488,7 @@ function generator$27() {
2940
3488
  return responsiveCssString;
2941
3489
  }
2942
3490
 
2943
- function generator$26() {
3491
+ function generator$2c() {
2944
3492
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2945
3493
  const {
2946
3494
  prefix: globalPrefix,
@@ -2994,7 +3542,7 @@ function generator$26() {
2994
3542
  return responsiveCssString;
2995
3543
  }
2996
3544
 
2997
- function generator$25() {
3545
+ function generator$2b() {
2998
3546
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2999
3547
  const {
3000
3548
  prefix: globalPrefix
@@ -3018,7 +3566,67 @@ function generator$25() {
3018
3566
  return responsiveCssString;
3019
3567
  }
3020
3568
 
3021
- function generator$24() {
3569
+ function generator$2a() {
3570
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3571
+ const {
3572
+ prefix
3573
+ } = configOptions;
3574
+ const propertyOptions = ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
3575
+ const responsiveCssString = generateCssString$1(_ref => {
3576
+ let {
3577
+ getCssByOptions
3578
+ } = _ref;
3579
+ const cssString = getCssByOptions(propertyOptions, (key, value) => `
3580
+ ${prefix}break-after-${key} {
3581
+ break-after: ${value};
3582
+ }
3583
+ `);
3584
+ return cssString;
3585
+ }, configOptions);
3586
+ return responsiveCssString;
3587
+ }
3588
+
3589
+ function generator$29() {
3590
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3591
+ const {
3592
+ prefix
3593
+ } = configOptions;
3594
+ const propertyOptions = ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
3595
+ const responsiveCssString = generateCssString$1(_ref => {
3596
+ let {
3597
+ getCssByOptions
3598
+ } = _ref;
3599
+ const cssString = getCssByOptions(propertyOptions, (key, value) => `
3600
+ ${prefix}break-before-${key} {
3601
+ break-before: ${value};
3602
+ }
3603
+ `);
3604
+ return cssString;
3605
+ }, configOptions);
3606
+ return responsiveCssString;
3607
+ }
3608
+
3609
+ function generator$28() {
3610
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3611
+ const {
3612
+ prefix
3613
+ } = configOptions;
3614
+ const propertyOptions = ["auto", "avoid", "avoid-page", "avoid-column"];
3615
+ const responsiveCssString = generateCssString$1(_ref => {
3616
+ let {
3617
+ getCssByOptions
3618
+ } = _ref;
3619
+ const cssString = getCssByOptions(propertyOptions, (key, value) => `
3620
+ ${prefix}break-inside-${key} {
3621
+ break-inside: ${value};
3622
+ }
3623
+ `);
3624
+ return cssString;
3625
+ }, configOptions);
3626
+ return responsiveCssString;
3627
+ }
3628
+
3629
+ function generator$27() {
3022
3630
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3023
3631
  const {
3024
3632
  prefix: globalPrefix,
@@ -3052,7 +3660,7 @@ function generator$24() {
3052
3660
  return responsiveCssString;
3053
3661
  }
3054
3662
 
3055
- function generator$23() {
3663
+ function generator$26() {
3056
3664
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3057
3665
  const {
3058
3666
  prefix: globalPrefix
@@ -3073,7 +3681,7 @@ function generator$23() {
3073
3681
  return responsiveCssString;
3074
3682
  }
3075
3683
 
3076
- function generator$22() {
3684
+ function generator$25() {
3077
3685
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3078
3686
  const {
3079
3687
  prefix: globalPrefix,
@@ -3112,7 +3720,7 @@ function generator$22() {
3112
3720
  return responsiveCssString;
3113
3721
  }
3114
3722
 
3115
- function generator$21() {
3723
+ function generator$24() {
3116
3724
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3117
3725
  const {
3118
3726
  prefix: globalPrefix
@@ -3133,7 +3741,46 @@ function generator$21() {
3133
3741
  return responsiveCssString;
3134
3742
  }
3135
3743
 
3136
- function generator$20() {
3744
+ function generator$23() {
3745
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3746
+ const {
3747
+ prefix,
3748
+ theme = {}
3749
+ } = configOptions;
3750
+ const {
3751
+ columns = {}
3752
+ } = theme;
3753
+ const responsiveCssString = generateCssString$1(_ref => {
3754
+ let {
3755
+ getCssByOptions
3756
+ } = _ref;
3757
+ const cssString = getCssByOptions(columns, (key, value) => `
3758
+ ${prefix}columns-${key} {
3759
+ columns: ${value};
3760
+ }
3761
+ `);
3762
+ return cssString;
3763
+ }, configOptions);
3764
+ return responsiveCssString;
3765
+ }
3766
+
3767
+ function generator$22() {
3768
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3769
+ const {
3770
+ prefix
3771
+ } = configOptions;
3772
+ const responsiveCssString = generateCssString$1(() => {
3773
+ const cssString = `
3774
+ ${prefix}container {
3775
+ width: 100%;
3776
+ }
3777
+ `;
3778
+ return cssString;
3779
+ }, configOptions);
3780
+ return responsiveCssString;
3781
+ }
3782
+
3783
+ function generator$21() {
3137
3784
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3138
3785
  const {
3139
3786
  prefix: globalPrefix,
@@ -3157,7 +3804,7 @@ function generator$20() {
3157
3804
  return responsiveCssString;
3158
3805
  }
3159
3806
 
3160
- function generator$1$() {
3807
+ function generator$20() {
3161
3808
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3162
3809
  const {
3163
3810
  prefix: globalPrefix,
@@ -3191,7 +3838,7 @@ function generator$1$() {
3191
3838
  return responsiveCssString;
3192
3839
  }
3193
3840
 
3194
- function generator$1_() {
3841
+ function generator$1$() {
3195
3842
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3196
3843
  const {
3197
3844
  prefix: globalPrefix
@@ -3212,7 +3859,7 @@ function generator$1_() {
3212
3859
  return responsiveCssString;
3213
3860
  }
3214
3861
 
3215
- function generator$1Z() {
3862
+ function generator$1_() {
3216
3863
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3217
3864
  const {
3218
3865
  prefix
@@ -3232,7 +3879,7 @@ function generator$1Z() {
3232
3879
  return responsiveCssString;
3233
3880
  }
3234
3881
 
3235
- function generator$1Y() {
3882
+ function generator$1Z() {
3236
3883
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3237
3884
  const {
3238
3885
  prefix: globalPrefix,
@@ -3263,7 +3910,7 @@ function generator$1Y() {
3263
3910
  return responsiveCssString;
3264
3911
  }
3265
3912
 
3266
- function generator$1X() {
3913
+ function generator$1Y() {
3267
3914
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3268
3915
  const {
3269
3916
  prefix: globalPrefix,
@@ -3287,7 +3934,7 @@ function generator$1X() {
3287
3934
  return responsiveCssString;
3288
3935
  }
3289
3936
 
3290
- function generator$1W() {
3937
+ function generator$1X() {
3291
3938
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3292
3939
  const {
3293
3940
  prefix: globalPrefix
@@ -3308,7 +3955,7 @@ function generator$1W() {
3308
3955
  return responsiveCssString;
3309
3956
  }
3310
3957
 
3311
- function generator$1V() {
3958
+ function generator$1W() {
3312
3959
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3313
3960
  const {
3314
3961
  prefix: globalPrefix,
@@ -3356,7 +4003,7 @@ function generator$1V() {
3356
4003
  return responsiveCssString;
3357
4004
  }
3358
4005
 
3359
- function generator$1U() {
4006
+ function generator$1V() {
3360
4007
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3361
4008
  const {
3362
4009
  prefix: globalPrefix,
@@ -3384,7 +4031,7 @@ function generator$1U() {
3384
4031
  return responsiveCssString;
3385
4032
  }
3386
4033
 
3387
- function generator$1T() {
4034
+ function generator$1U() {
3388
4035
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3389
4036
  const {
3390
4037
  prefix: globalPrefix,
@@ -3410,7 +4057,7 @@ function generator$1T() {
3410
4057
  return responsiveCssString;
3411
4058
  }
3412
4059
 
3413
- function generator$1S(_ref) {
4060
+ function generator$1T(_ref) {
3414
4061
  let {
3415
4062
  prefix
3416
4063
  } = _ref;
@@ -3423,7 +4070,7 @@ function generator$1S(_ref) {
3423
4070
  `;
3424
4071
  }
3425
4072
 
3426
- function generator$1R() {
4073
+ function generator$1S() {
3427
4074
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3428
4075
  const {
3429
4076
  prefix: globalPrefix,
@@ -3447,7 +4094,7 @@ function generator$1R() {
3447
4094
  return responsiveCssString;
3448
4095
  }
3449
4096
 
3450
- function generator$1Q() {
4097
+ function generator$1R() {
3451
4098
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3452
4099
  const {
3453
4100
  prefix: globalPrefix,
@@ -3471,7 +4118,7 @@ function generator$1Q() {
3471
4118
  return responsiveCssString;
3472
4119
  }
3473
4120
 
3474
- function generator$1P() {
4121
+ function generator$1Q() {
3475
4122
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3476
4123
  const {
3477
4124
  prefix: globalPrefix
@@ -3497,7 +4144,7 @@ function generator$1P() {
3497
4144
  return responsiveCssString;
3498
4145
  }
3499
4146
 
3500
- function generator$1O() {
4147
+ function generator$1P() {
3501
4148
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3502
4149
  const {
3503
4150
  prefix: globalPrefix,
@@ -3521,7 +4168,7 @@ function generator$1O() {
3521
4168
  return responsiveCssString;
3522
4169
  }
3523
4170
 
3524
- function generator$1N() {
4171
+ function generator$1O() {
3525
4172
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3526
4173
  const {
3527
4174
  prefix: globalPrefix,
@@ -3545,7 +4192,7 @@ function generator$1N() {
3545
4192
  return responsiveCssString;
3546
4193
  }
3547
4194
 
3548
- function generator$1M() {
4195
+ function generator$1N() {
3549
4196
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3550
4197
  const {
3551
4198
  prefix: globalPrefix
@@ -3571,7 +4218,7 @@ function generator$1M() {
3571
4218
  return responsiveCssString;
3572
4219
  }
3573
4220
 
3574
- function generator$1L() {
4221
+ function generator$1M() {
3575
4222
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3576
4223
  const {
3577
4224
  prefix: globalPrefix
@@ -3592,7 +4239,7 @@ function generator$1L() {
3592
4239
  return responsiveCssString;
3593
4240
  }
3594
4241
 
3595
- function generator$1K() {
4242
+ function generator$1L() {
3596
4243
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3597
4244
  const {
3598
4245
  prefix: globalPrefix,
@@ -3626,7 +4273,7 @@ function generator$1K() {
3626
4273
  return responsiveCssString;
3627
4274
  }
3628
4275
 
3629
- function generator$1J() {
4276
+ function generator$1K() {
3630
4277
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3631
4278
  const {
3632
4279
  prefix
@@ -3646,7 +4293,7 @@ function generator$1J() {
3646
4293
  return responsiveCssString;
3647
4294
  }
3648
4295
 
3649
- function generator$1I() {
4296
+ function generator$1J() {
3650
4297
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3651
4298
  const {
3652
4299
  prefix
@@ -3669,7 +4316,7 @@ function generator$1I() {
3669
4316
  return responsiveCssString;
3670
4317
  }
3671
4318
 
3672
- function generator$1H() {
4319
+ function generator$1I() {
3673
4320
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3674
4321
  const {
3675
4322
  prefix
@@ -3699,7 +4346,7 @@ function generator$1H() {
3699
4346
  return responsiveCssString;
3700
4347
  }
3701
4348
 
3702
- function generator$1G() {
4349
+ function generator$1H() {
3703
4350
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3704
4351
  const {
3705
4352
  prefix: globalPrefix,
@@ -3733,7 +4380,7 @@ function generator$1G() {
3733
4380
  return responsiveCssString;
3734
4381
  }
3735
4382
 
3736
- function generator$1F() {
4383
+ function generator$1G() {
3737
4384
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3738
4385
  const {
3739
4386
  prefix: globalPrefix,
@@ -3763,7 +4410,7 @@ function generator$1F() {
3763
4410
  return responsiveCssString;
3764
4411
  }
3765
4412
 
3766
- function generator$1E() {
4413
+ function generator$1F() {
3767
4414
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3768
4415
  const {
3769
4416
  prefix,
@@ -3802,7 +4449,7 @@ function generator$1E() {
3802
4449
  return responsiveCssString;
3803
4450
  }
3804
4451
 
3805
- function generator$1D() {
4452
+ function generator$1E() {
3806
4453
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3807
4454
  const {
3808
4455
  prefix: globalPrefix,
@@ -3836,7 +4483,7 @@ function generator$1D() {
3836
4483
  return responsiveCssString;
3837
4484
  }
3838
4485
 
3839
- function generator$1C() {
4486
+ function generator$1D() {
3840
4487
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3841
4488
  const {
3842
4489
  prefix: globalPrefix,
@@ -3860,7 +4507,7 @@ function generator$1C() {
3860
4507
  return responsiveCssString;
3861
4508
  }
3862
4509
 
3863
- function generator$1B() {
4510
+ function generator$1C() {
3864
4511
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3865
4512
  const {
3866
4513
  prefix: globalPrefix
@@ -3886,7 +4533,7 @@ function generator$1B() {
3886
4533
  return responsiveCssString;
3887
4534
  }
3888
4535
 
3889
- function generator$1A() {
4536
+ function generator$1B() {
3890
4537
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3891
4538
  const {
3892
4539
  prefix: globalPrefix,
@@ -3910,7 +4557,7 @@ function generator$1A() {
3910
4557
  return responsiveCssString;
3911
4558
  }
3912
4559
 
3913
- function generator$1z() {
4560
+ function generator$1A() {
3914
4561
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3915
4562
  const {
3916
4563
  prefix: globalPrefix,
@@ -3934,7 +4581,7 @@ function generator$1z() {
3934
4581
  return responsiveCssString;
3935
4582
  }
3936
4583
 
3937
- function generator$1y() {
4584
+ function generator$1z() {
3938
4585
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3939
4586
  const {
3940
4587
  prefix: globalPrefix,
@@ -3958,7 +4605,7 @@ function generator$1y() {
3958
4605
  return responsiveCssString;
3959
4606
  }
3960
4607
 
3961
- function generator$1x() {
4608
+ function generator$1y() {
3962
4609
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3963
4610
  const {
3964
4611
  prefix: globalPrefix,
@@ -3982,7 +4629,7 @@ function generator$1x() {
3982
4629
  return responsiveCssString;
3983
4630
  }
3984
4631
 
3985
- function generator$1w() {
4632
+ function generator$1x() {
3986
4633
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3987
4634
  const {
3988
4635
  prefix: globalPrefix,
@@ -4006,7 +4653,7 @@ function generator$1w() {
4006
4653
  return responsiveCssString;
4007
4654
  }
4008
4655
 
4009
- function generator$1v() {
4656
+ function generator$1w() {
4010
4657
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4011
4658
  const {
4012
4659
  prefix: globalPrefix,
@@ -4030,7 +4677,7 @@ function generator$1v() {
4030
4677
  return responsiveCssString;
4031
4678
  }
4032
4679
 
4033
- function generator$1u() {
4680
+ function generator$1v() {
4034
4681
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4035
4682
  const {
4036
4683
  prefix: globalPrefix,
@@ -4054,7 +4701,7 @@ function generator$1u() {
4054
4701
  return responsiveCssString;
4055
4702
  }
4056
4703
 
4057
- function generator$1t() {
4704
+ function generator$1u() {
4058
4705
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4059
4706
  const {
4060
4707
  prefix: globalPrefix,
@@ -4078,7 +4725,7 @@ function generator$1t() {
4078
4725
  return responsiveCssString;
4079
4726
  }
4080
4727
 
4081
- function generator$1s() {
4728
+ function generator$1t() {
4082
4729
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4083
4730
  const {
4084
4731
  prefix: globalPrefix,
@@ -4102,7 +4749,7 @@ function generator$1s() {
4102
4749
  return responsiveCssString;
4103
4750
  }
4104
4751
 
4105
- function generator$1r() {
4752
+ function generator$1s() {
4106
4753
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4107
4754
  const {
4108
4755
  prefix: globalPrefix,
@@ -4126,7 +4773,7 @@ function generator$1r() {
4126
4773
  return responsiveCssString;
4127
4774
  }
4128
4775
 
4129
- function generator$1q() {
4776
+ function generator$1r() {
4130
4777
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4131
4778
  const {
4132
4779
  prefix: globalPrefix,
@@ -4164,7 +4811,7 @@ function generator$1q() {
4164
4811
  return responsiveCssString;
4165
4812
  }
4166
4813
 
4167
- function generator$1p() {
4814
+ function generator$1q() {
4168
4815
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4169
4816
  const {
4170
4817
  prefix: globalPrefix
@@ -4186,7 +4833,7 @@ function generator$1p() {
4186
4833
  return responsiveCssString;
4187
4834
  }
4188
4835
 
4189
- function generator$1o() {
4836
+ function generator$1p() {
4190
4837
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4191
4838
  const {
4192
4839
  prefix: globalPrefix,
@@ -4244,7 +4891,7 @@ function generator$1o() {
4244
4891
  return responsiveCssString;
4245
4892
  }
4246
4893
 
4247
- function generator$1n() {
4894
+ function generator$1o() {
4248
4895
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4249
4896
  const {
4250
4897
  prefix: globalPrefix,
@@ -4278,7 +4925,7 @@ function generator$1n() {
4278
4925
  return responsiveCssString;
4279
4926
  }
4280
4927
 
4281
- function generator$1m() {
4928
+ function generator$1n() {
4282
4929
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4283
4930
  const {
4284
4931
  prefix: globalPrefix
@@ -4302,7 +4949,7 @@ function generator$1m() {
4302
4949
  return responsiveCssString;
4303
4950
  }
4304
4951
 
4305
- function generator$1l() {
4952
+ function generator$1m() {
4306
4953
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4307
4954
  const {
4308
4955
  prefix: globalPrefix
@@ -4330,7 +4977,7 @@ function generator$1l() {
4330
4977
  return responsiveCssString;
4331
4978
  }
4332
4979
 
4333
- function generator$1k() {
4980
+ function generator$1l() {
4334
4981
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4335
4982
  const {
4336
4983
  prefix: globalPrefix
@@ -4351,7 +4998,7 @@ function generator$1k() {
4351
4998
  return responsiveCssString;
4352
4999
  }
4353
5000
 
4354
- function generator$1j() {
5001
+ function generator$1k() {
4355
5002
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4356
5003
  const {
4357
5004
  prefix: globalPrefix
@@ -4372,7 +5019,7 @@ function generator$1j() {
4372
5019
  return responsiveCssString;
4373
5020
  }
4374
5021
 
4375
- function generator$1i() {
5022
+ function generator$1j() {
4376
5023
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4377
5024
  const {
4378
5025
  prefix: globalPrefix,
@@ -4396,7 +5043,7 @@ function generator$1i() {
4396
5043
  return responsiveCssString;
4397
5044
  }
4398
5045
 
4399
- function generator$1h() {
5046
+ function generator$1i() {
4400
5047
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4401
5048
  const {
4402
5049
  prefix: globalPrefix,
@@ -4423,7 +5070,7 @@ function generator$1h() {
4423
5070
  return responsiveCssString;
4424
5071
  }
4425
5072
 
4426
- function generator$1g() {
5073
+ function generator$1h() {
4427
5074
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4428
5075
  const {
4429
5076
  prefix: globalPrefix,
@@ -4447,6 +5094,22 @@ function generator$1g() {
4447
5094
  return responsiveCssString;
4448
5095
  }
4449
5096
 
5097
+ function generator$1g() {
5098
+ let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
5099
+ const {
5100
+ prefix
5101
+ } = configOptions;
5102
+ const responsiveCssString = generateCssString$1(() => {
5103
+ const cssString = `
5104
+ ${prefix}list-image-none {
5105
+ list-style-image: none;
5106
+ }
5107
+ `;
5108
+ return cssString;
5109
+ }, configOptions);
5110
+ return responsiveCssString;
5111
+ }
5112
+
4450
5113
  function generator$1f() {
4451
5114
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4452
5115
  const {
@@ -6403,9 +7066,9 @@ function generator$d() {
6403
7066
  return responsiveCssString;
6404
7067
  }
6405
7068
 
6406
- /**
6407
- * Transition Delay Generator
6408
- * Generates transition-delay utility classes
7069
+ /**
7070
+ * Transition Delay Generator
7071
+ * Generates transition-delay utility classes
6409
7072
  */
6410
7073
  function generator$c() {
6411
7074
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -6433,9 +7096,9 @@ function generator$c() {
6433
7096
  return responsiveCssString;
6434
7097
  }
6435
7098
 
6436
- /**
6437
- * Transition Duration Generator
6438
- * Generates transition-duration utility classes
7099
+ /**
7100
+ * Transition Duration Generator
7101
+ * Generates transition-duration utility classes
6439
7102
  */
6440
7103
  function generator$b() {
6441
7104
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -6463,9 +7126,9 @@ function generator$b() {
6463
7126
  return responsiveCssString;
6464
7127
  }
6465
7128
 
6466
- /**
6467
- * Transition Property Generator
6468
- * Generates transition-property utility classes
7129
+ /**
7130
+ * Transition Property Generator
7131
+ * Generates transition-property utility classes
6469
7132
  */
6470
7133
  function generator$a() {
6471
7134
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -6504,9 +7167,9 @@ function generator$a() {
6504
7167
  return responsiveCssString;
6505
7168
  }
6506
7169
 
6507
- /**
6508
- * Transition Timing Function Generator
6509
- * Generates transition-timing-function utility classes (ease)
7170
+ /**
7171
+ * Transition Timing Function Generator
7172
+ * Generates transition-timing-function utility classes (ease)
6510
7173
  */
6511
7174
  function generator$9() {
6512
7175
  let configOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -6775,9 +7438,9 @@ function generator() {
6775
7438
  return responsiveCssString;
6776
7439
  }
6777
7440
 
6778
- /**
6779
- * Proper LRU (Least Recently Used) Cache implementation
6780
- * Efficiently manages memory by removing least recently used items
7441
+ /**
7442
+ * Proper LRU (Least Recently Used) Cache implementation
7443
+ * Efficiently manages memory by removing least recently used items
6781
7444
  */
6782
7445
  class LRUCache {
6783
7446
  constructor() {
@@ -6786,9 +7449,9 @@ class LRUCache {
6786
7449
  this.cache = new Map();
6787
7450
  }
6788
7451
 
6789
- /**
6790
- * Get value from cache
6791
- * Updates the item as most recently used
7452
+ /**
7453
+ * Get value from cache
7454
+ * Updates the item as most recently used
6792
7455
  */
6793
7456
  get(key) {
6794
7457
  if (!this.cache.has(key)) {
@@ -6801,9 +7464,9 @@ class LRUCache {
6801
7464
  return value;
6802
7465
  }
6803
7466
 
6804
- /**
6805
- * Set value in cache
6806
- * Removes least recently used item if cache is full
7467
+ /**
7468
+ * Set value in cache
7469
+ * Removes least recently used item if cache is full
6807
7470
  */
6808
7471
  set(key, value) {
6809
7472
  // If key exists, delete it first to update position
@@ -6817,61 +7480,61 @@ class LRUCache {
6817
7480
  this.cache.set(key, value);
6818
7481
  }
6819
7482
 
6820
- /**
6821
- * Check if key exists in cache
7483
+ /**
7484
+ * Check if key exists in cache
6822
7485
  */
6823
7486
  has(key) {
6824
7487
  return this.cache.has(key);
6825
7488
  }
6826
7489
 
6827
- /**
6828
- * Clear all cache entries
7490
+ /**
7491
+ * Clear all cache entries
6829
7492
  */
6830
7493
  clear() {
6831
7494
  this.cache.clear();
6832
7495
  }
6833
7496
 
6834
- /**
6835
- * Get current cache size
7497
+ /**
7498
+ * Get current cache size
6836
7499
  */
6837
7500
  get size() {
6838
7501
  return this.cache.size;
6839
7502
  }
6840
7503
 
6841
- /**
6842
- * Delete specific key
7504
+ /**
7505
+ * Delete specific key
6843
7506
  */
6844
7507
  delete(key) {
6845
7508
  return this.cache.delete(key);
6846
7509
  }
6847
7510
  }
6848
7511
 
6849
- /**
6850
- * Custom error class for tailwind-to-style
7512
+ /**
7513
+ * Custom error class for tailwind-to-style
6851
7514
  */
6852
7515
  class TwsError extends Error {
6853
7516
  constructor(message) {
6854
7517
  let context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6855
7518
  super(message);
6856
- this.name = 'TwsError';
7519
+ this.name = "TwsError";
6857
7520
  this.context = context;
6858
7521
  this.timestamp = new Date().toISOString();
6859
7522
  }
6860
7523
  }
6861
7524
 
6862
- /**
6863
- * Error event handlers
7525
+ /**
7526
+ * Error event handlers
6864
7527
  */
6865
7528
  const errorHandlers = new Set();
6866
7529
 
6867
- /**
6868
- * Register an error handler
6869
- * @param {Function} handler - Function to call when errors occur
6870
- * @returns {Function} Unsubscribe function
7530
+ /**
7531
+ * Register an error handler
7532
+ * @param {Function} handler - Function to call when errors occur
7533
+ * @returns {Function} Unsubscribe function
6871
7534
  */
6872
7535
  function onError(handler) {
6873
- if (typeof handler !== 'function') {
6874
- throw new TypeError('Error handler must be a function');
7536
+ if (typeof handler !== "function") {
7537
+ throw new TypeError("Error handler must be a function");
6875
7538
  }
6876
7539
  errorHandlers.add(handler);
6877
7540
 
@@ -6879,10 +7542,10 @@ function onError(handler) {
6879
7542
  return () => errorHandlers.delete(handler);
6880
7543
  }
6881
7544
 
6882
- /**
6883
- * Handle and broadcast errors
6884
- * @param {Error} error - The error that occurred
6885
- * @param {Object} context - Additional context about the error
7545
+ /**
7546
+ * Handle and broadcast errors
7547
+ * @param {Error} error - The error that occurred
7548
+ * @param {Object} context - Additional context about the error
6886
7549
  */
6887
7550
  function handleError(error) {
6888
7551
  let context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -6896,41 +7559,41 @@ function handleError(error) {
6896
7559
  try {
6897
7560
  handler(twsError);
6898
7561
  } catch (handlerError) {
6899
- logger.error('Error in error handler:', handlerError);
7562
+ logger.error("Error in error handler:", handlerError);
6900
7563
  }
6901
7564
  });
6902
7565
  return twsError;
6903
7566
  }
6904
7567
 
6905
- /**
6906
- * Plugin API for tailwind-to-style
6907
- * Allows users to create custom utilities and extend functionality
7568
+ /**
7569
+ * Plugin API for tailwind-to-style
7570
+ * Allows users to create custom utilities and extend functionality
6908
7571
  */
6909
7572
 
6910
- /**
6911
- * Create a plugin for tailwind-to-style
6912
- *
6913
- * @param {string} name - Plugin name
6914
- * @param {Object} definition - Plugin definition
6915
- * @param {Object} [definition.utilities] - Custom utility classes
6916
- * @param {Object} [definition.components] - Custom component classes
6917
- * @param {Function} [definition.handler] - Custom handler function
6918
- * @returns {Object} Plugin object
6919
- *
6920
- * @example
6921
- * const myPlugin = createPlugin('my-plugin', {
6922
- * utilities: {
6923
- * '.text-gradient': {
6924
- * 'background-clip': 'text',
6925
- * '-webkit-background-clip': 'text',
6926
- * '-webkit-text-fill-color': 'transparent',
6927
- * },
6928
- * '.glass': {
6929
- * 'backdrop-filter': 'blur(10px)',
6930
- * 'background-color': 'rgba(255, 255, 255, 0.1)',
6931
- * },
6932
- * },
6933
- * });
7573
+ /**
7574
+ * Create a plugin for tailwind-to-style
7575
+ *
7576
+ * @param {string} name - Plugin name
7577
+ * @param {Object} definition - Plugin definition
7578
+ * @param {Object} [definition.utilities] - Custom utility classes
7579
+ * @param {Object} [definition.components] - Custom component classes
7580
+ * @param {Function} [definition.handler] - Custom handler function
7581
+ * @returns {Object} Plugin object
7582
+ *
7583
+ * @example
7584
+ * const myPlugin = createPlugin('my-plugin', {
7585
+ * utilities: {
7586
+ * '.text-gradient': {
7587
+ * 'background-clip': 'text',
7588
+ * '-webkit-background-clip': 'text',
7589
+ * '-webkit-text-fill-color': 'transparent',
7590
+ * },
7591
+ * '.glass': {
7592
+ * 'backdrop-filter': 'blur(10px)',
7593
+ * 'background-color': 'rgba(255, 255, 255, 0.1)',
7594
+ * },
7595
+ * },
7596
+ * });
6934
7597
  */
6935
7598
  function createPlugin(name, definition) {
6936
7599
  if (!name || typeof name !== "string") {
@@ -6950,28 +7613,28 @@ function createPlugin(name, definition) {
6950
7613
  return plugin;
6951
7614
  }
6952
7615
 
6953
- /**
6954
- * Create a utility plugin with dynamic values
6955
- *
6956
- * @param {string} name - Plugin name
6957
- * @param {Object} config - Configuration
6958
- * @param {string} config.prefix - Class prefix (e.g., 'text', 'bg')
6959
- * @param {Object} config.values - Values object
6960
- * @param {Function} config.formatter - Function to format CSS properties
6961
- * @returns {Object} Plugin object
6962
- *
6963
- * @example
6964
- * const textShadowPlugin = createUtilityPlugin('text-shadow', {
6965
- * prefix: 'text-shadow',
6966
- * values: {
6967
- * sm: '1px 1px 2px rgba(0,0,0,0.1)',
6968
- * md: '2px 2px 4px rgba(0,0,0,0.1)',
6969
- * lg: '4px 4px 8px rgba(0,0,0,0.1)',
6970
- * },
6971
- * formatter: (value) => ({
6972
- * 'text-shadow': value,
6973
- * }),
6974
- * });
7616
+ /**
7617
+ * Create a utility plugin with dynamic values
7618
+ *
7619
+ * @param {string} name - Plugin name
7620
+ * @param {Object} config - Configuration
7621
+ * @param {string} config.prefix - Class prefix (e.g., 'text', 'bg')
7622
+ * @param {Object} config.values - Values object
7623
+ * @param {Function} config.formatter - Function to format CSS properties
7624
+ * @returns {Object} Plugin object
7625
+ *
7626
+ * @example
7627
+ * const textShadowPlugin = createUtilityPlugin('text-shadow', {
7628
+ * prefix: 'text-shadow',
7629
+ * values: {
7630
+ * sm: '1px 1px 2px rgba(0,0,0,0.1)',
7631
+ * md: '2px 2px 4px rgba(0,0,0,0.1)',
7632
+ * lg: '4px 4px 8px rgba(0,0,0,0.1)',
7633
+ * },
7634
+ * formatter: (value) => ({
7635
+ * 'text-shadow': value,
7636
+ * }),
7637
+ * });
6975
7638
  */
6976
7639
  function createUtilityPlugin(name, config) {
6977
7640
  const {
@@ -6993,17 +7656,17 @@ function createUtilityPlugin(name, config) {
6993
7656
  });
6994
7657
  }
6995
7658
 
6996
- /**
6997
- * Create a variant plugin
6998
- *
6999
- * @param {string} name - Plugin name
7000
- * @param {Function} handler - Variant handler function
7001
- * @returns {Object} Plugin object
7002
- *
7003
- * @example
7004
- * const hoverParentPlugin = createVariantPlugin('hover-parent', (selector) => {
7005
- * return `.parent:hover ${selector}`;
7006
- * });
7659
+ /**
7660
+ * Create a variant plugin
7661
+ *
7662
+ * @param {string} name - Plugin name
7663
+ * @param {Function} handler - Variant handler function
7664
+ * @returns {Object} Plugin object
7665
+ *
7666
+ * @example
7667
+ * const hoverParentPlugin = createVariantPlugin('hover-parent', (selector) => {
7668
+ * return `.parent:hover ${selector}`;
7669
+ * });
7007
7670
  */
7008
7671
  function createVariantPlugin(name, handler) {
7009
7672
  if (!handler || typeof handler !== "function") {
@@ -7017,11 +7680,11 @@ function createVariantPlugin(name, handler) {
7017
7680
  });
7018
7681
  }
7019
7682
 
7020
- /**
7021
- * Convert plugin utilities to lookup object
7022
- * @param {Object} plugin - Plugin object
7023
- * @param {string} [prefix] - Optional prefix for all classes
7024
- * @returns {Object} Lookup object
7683
+ /**
7684
+ * Convert plugin utilities to lookup object
7685
+ * @param {Object} plugin - Plugin object
7686
+ * @param {string} [prefix] - Optional prefix for all classes
7687
+ * @returns {Object} Lookup object
7025
7688
  */
7026
7689
  function pluginToLookup(plugin) {
7027
7690
  let prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
@@ -7140,88 +7803,427 @@ const patterns = {
7140
7803
  ...fontFamily
7141
7804
  };
7142
7805
 
7806
+ /**
7807
+ * Web Animations API Integration
7808
+ * Dynamic animations without keyframes injection
7809
+ */
7810
+
7811
+ /* eslint-disable no-undef */
7812
+
7813
+ /**
7814
+ * Built-in animation definitions using Web Animations API
7815
+ */
7816
+ const BUILTIN_ANIMATIONS = {
7817
+ spin: {
7818
+ keyframes: [{
7819
+ transform: "rotate(0deg)"
7820
+ }, {
7821
+ transform: "rotate(360deg)"
7822
+ }],
7823
+ options: {
7824
+ duration: 1000,
7825
+ iterations: Infinity
7826
+ }
7827
+ },
7828
+ ping: {
7829
+ keyframes: [{
7830
+ transform: "scale(1)",
7831
+ opacity: 1
7832
+ }, {
7833
+ transform: "scale(2)",
7834
+ opacity: 0
7835
+ }],
7836
+ options: {
7837
+ duration: 1000,
7838
+ iterations: Infinity
7839
+ }
7840
+ },
7841
+ pulse: {
7842
+ keyframes: [{
7843
+ opacity: 1
7844
+ }, {
7845
+ opacity: 0.5
7846
+ }, {
7847
+ opacity: 1
7848
+ }],
7849
+ options: {
7850
+ duration: 2000,
7851
+ iterations: Infinity
7852
+ }
7853
+ },
7854
+ bounce: {
7855
+ keyframes: [{
7856
+ transform: "translateY(0)",
7857
+ animationTimingFunction: "cubic-bezier(0.8,0,1,1)"
7858
+ }, {
7859
+ transform: "translateY(-25%)",
7860
+ animationTimingFunction: "cubic-bezier(0,0,0.2,1)"
7861
+ }, {
7862
+ transform: "translateY(0)",
7863
+ animationTimingFunction: "cubic-bezier(0.8,0,1,1)"
7864
+ }],
7865
+ options: {
7866
+ duration: 1000,
7867
+ iterations: Infinity
7868
+ }
7869
+ },
7870
+ "fade-in": {
7871
+ keyframes: [{
7872
+ opacity: 0
7873
+ }, {
7874
+ opacity: 1
7875
+ }],
7876
+ options: {
7877
+ duration: 500,
7878
+ fill: "forwards"
7879
+ }
7880
+ },
7881
+ "slide-up": {
7882
+ keyframes: [{
7883
+ transform: "translateY(20px)",
7884
+ opacity: 0
7885
+ }, {
7886
+ transform: "translateY(0)",
7887
+ opacity: 1
7888
+ }],
7889
+ options: {
7890
+ duration: 500,
7891
+ fill: "forwards"
7892
+ }
7893
+ }
7894
+ };
7895
+
7896
+ /**
7897
+ * Apply animation using Web Animations API
7898
+ */
7899
+ function applyWebAnimation(element, animationName) {
7900
+ let customAnimations = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
7901
+ if (!element || typeof element.animate !== "function") return null;
7902
+ const animation = BUILTIN_ANIMATIONS[animationName] || customAnimations[animationName];
7903
+ if (!animation) return null;
7904
+ return element.animate(animation.keyframes, animation.options);
7905
+ }
7906
+
7907
+ /**
7908
+ * Create animation observer for elements with animation classes
7909
+ */
7910
+ function createAnimationObserver() {
7911
+ let customAnimations = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7912
+ if (typeof MutationObserver === "undefined") return null;
7913
+ const observer = new MutationObserver(mutations => {
7914
+ mutations.forEach(mutation => {
7915
+ mutation.addedNodes.forEach(node => {
7916
+ if (node.nodeType === Node.ELEMENT_NODE) {
7917
+ processAnimationElements(node, customAnimations);
7918
+ }
7919
+ });
7920
+ if (mutation.type === "attributes" && mutation.attributeName === "class") {
7921
+ processAnimationElements(mutation.target, customAnimations);
7922
+ }
7923
+ });
7924
+ });
7925
+ observer.observe(document.body, {
7926
+ childList: true,
7927
+ subtree: true,
7928
+ attributes: true,
7929
+ attributeFilter: ["class"]
7930
+ });
7931
+ return observer;
7932
+ }
7933
+
7934
+ /**
7935
+ * Process elements for animation classes
7936
+ */
7937
+ function processAnimationElements(element) {
7938
+ let customAnimations = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7939
+ if (!element.classList) return;
7940
+ const animationClasses = Array.from(element.classList).filter(cls => cls.startsWith("animate-")).map(cls => cls.replace("animate-", ""));
7941
+ animationClasses.forEach(animationName => {
7942
+ applyWebAnimation(element, animationName, customAnimations);
7943
+ });
7944
+ }
7945
+
7946
+ /**
7947
+ * Initialize web animations for existing elements
7948
+ */
7949
+ function initWebAnimations() {
7950
+ let customAnimations = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7951
+ if (typeof document === "undefined") return;
7952
+
7953
+ // Process existing elements
7954
+ const animatedElements = document.querySelectorAll('[class*="animate-"]');
7955
+ animatedElements.forEach(element => {
7956
+ processAnimationElements(element, customAnimations);
7957
+ });
7958
+
7959
+ // Create observer for new elements
7960
+ return createAnimationObserver(customAnimations);
7961
+ }
7962
+
7963
+ /**
7964
+ * Dynamic Animation System
7965
+ * Uses CSS variables for dynamic keyframe generation
7966
+ */
7967
+
7968
+ /* eslint-disable no-undef */
7969
+
7970
+ let animationStyleElement = null;
7971
+ let animationCounter = 0;
7972
+
7973
+ /**
7974
+ * Initialize dynamic animation style element
7975
+ */
7976
+ function initAnimationStyleElement() {
7977
+ if (typeof document === "undefined") return null;
7978
+ if (!animationStyleElement) {
7979
+ animationStyleElement = document.createElement("style");
7980
+ animationStyleElement.id = "twsx-dynamic-animations";
7981
+ animationStyleElement.setAttribute("data-twsx", "dynamic-animations");
7982
+ document.head.appendChild(animationStyleElement);
7983
+ }
7984
+ return animationStyleElement;
7985
+ }
7986
+
7987
+ /**
7988
+ * Generate dynamic keyframe with CSS variables
7989
+ */
7990
+ function generateDynamicKeyframe(name, keyframeObj) {
7991
+ let variables = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
7992
+ let css = `@keyframes ${name} {\n`;
7993
+ for (const [percentage, styles] of Object.entries(keyframeObj)) {
7994
+ css += ` ${percentage} {\n`;
7995
+ if (typeof styles === "object") {
7996
+ for (const [prop, value] of Object.entries(styles)) {
7997
+ const cssProp = prop.replace(/([A-Z])/g, "-$1").toLowerCase();
7998
+
7999
+ // Replace variables in value
8000
+ let finalValue = value;
8001
+ for (const [varName, varValue] of Object.entries(variables)) {
8002
+ finalValue = finalValue.replace(new RegExp(`\\$\\{${varName}\\}`, "g"), varValue);
8003
+ }
8004
+ css += ` ${cssProp}: ${finalValue};\n`;
8005
+ }
8006
+ }
8007
+ css += " }\n";
8008
+ }
8009
+ css += "}\n";
8010
+ return css;
8011
+ }
8012
+
8013
+ /**
8014
+ * Create dynamic animation with parameters
8015
+ */
8016
+ function createDynamicAnimation(baseKeyframes) {
8017
+ let parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8018
+ const animationId = `dynamic-anim-${++animationCounter}`;
8019
+ const styleElement = initAnimationStyleElement();
8020
+ if (!styleElement) return null;
8021
+
8022
+ // Generate keyframes with parameters
8023
+ const keyframeCSS = generateDynamicKeyframe(animationId, baseKeyframes, parameters);
8024
+ styleElement.textContent += keyframeCSS;
8025
+ return animationId;
8026
+ }
8027
+
8028
+ /**
8029
+ * Predefined dynamic animation templates
8030
+ */
8031
+ const DYNAMIC_TEMPLATES = {
8032
+ slideIn: {
8033
+ keyframes: {
8034
+ "0%": {
8035
+ transform: "translate${direction}(${distance})",
8036
+ opacity: "${startOpacity}"
8037
+ },
8038
+ "100%": {
8039
+ transform: "translate${direction}(0)",
8040
+ opacity: "${endOpacity}"
8041
+ }
8042
+ },
8043
+ defaults: {
8044
+ direction: "Y",
8045
+ distance: "20px",
8046
+ startOpacity: "0",
8047
+ endOpacity: "1"
8048
+ }
8049
+ },
8050
+ scale: {
8051
+ keyframes: {
8052
+ "0%": {
8053
+ transform: "scale(${startScale})",
8054
+ opacity: "${startOpacity}"
8055
+ },
8056
+ "100%": {
8057
+ transform: "scale(${endScale})",
8058
+ opacity: "${endOpacity}"
8059
+ }
8060
+ },
8061
+ defaults: {
8062
+ startScale: "0.8",
8063
+ endScale: "1",
8064
+ startOpacity: "0",
8065
+ endOpacity: "1"
8066
+ }
8067
+ },
8068
+ rotate: {
8069
+ keyframes: {
8070
+ "0%": {
8071
+ transform: "rotate(${startAngle})"
8072
+ },
8073
+ "100%": {
8074
+ transform: "rotate(${endAngle})"
8075
+ }
8076
+ },
8077
+ defaults: {
8078
+ startAngle: "0deg",
8079
+ endAngle: "360deg"
8080
+ }
8081
+ },
8082
+ colorShift: {
8083
+ keyframes: {
8084
+ "0%": {
8085
+ backgroundColor: "${startColor}",
8086
+ color: "${startTextColor}"
8087
+ },
8088
+ "100%": {
8089
+ backgroundColor: "${endColor}",
8090
+ color: "${endTextColor}"
8091
+ }
8092
+ },
8093
+ defaults: {
8094
+ startColor: "transparent",
8095
+ endColor: "#3b82f6",
8096
+ startTextColor: "inherit",
8097
+ endTextColor: "white"
8098
+ }
8099
+ }
8100
+ };
8101
+
8102
+ /**
8103
+ * Create animation from template
8104
+ */
8105
+ function createTemplateAnimation(templateName) {
8106
+ let customParams = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8107
+ const template = DYNAMIC_TEMPLATES[templateName];
8108
+ if (!template) return null;
8109
+ const params = {
8110
+ ...template.defaults,
8111
+ ...customParams
8112
+ };
8113
+ return createDynamicAnimation(template.keyframes, params);
8114
+ }
8115
+
8116
+ /**
8117
+ * Apply dynamic animation to element
8118
+ */
8119
+ function applyDynamicAnimation(element, templateName) {
8120
+ let params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
8121
+ let duration = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 500;
8122
+ if (!element) return null;
8123
+ const animationName = createTemplateAnimation(templateName, params);
8124
+ if (!animationName) return null;
8125
+ element.style.animation = `${animationName} ${duration}ms ease-out forwards`;
8126
+ return animationName;
8127
+ }
8128
+
7143
8129
  const plugins = {
7144
- accentColor: generator$2w,
7145
- accessibility: generator$2v,
7146
- alignContent: generator$2u,
7147
- alignItems: generator$2t,
7148
- alignSelf: generator$2s,
7149
- animation: generator$2r,
7150
- appearance: generator$2q,
7151
- aspect: generator$2p,
7152
- backgroundAttachment: generator$2o,
7153
- backgroundClip: generator$2n,
7154
- backgroundColor: generator$2m,
7155
- backgroundImage: generator$2l,
7156
- backgroundOpacity: generator$2k,
7157
- backgroundOrigin: generator$2j,
7158
- backgroundPosition: generator$2i,
7159
- backgroundRepeat: generator$2h,
7160
- backgroundSize: generator$2g,
7161
- blur: generator$2f,
7162
- borderCollapse: generator$2e,
7163
- borderColor: generator$2d,
7164
- borderOpacity: generator$2c,
7165
- borderRadius: generator$2b,
7166
- borderSpacing: generator$2a,
7167
- borderStyle: generator$29,
7168
- borderWidth: generator$28,
7169
- boxDecorationBreak: generator$27,
7170
- boxShadow: generator$26,
7171
- boxSizing: generator$25,
7172
- brightness: generator$24,
7173
- captionSide: generator$23,
7174
- caretColor: generator$22,
7175
- clear: generator$21,
7176
- content: generator$20,
7177
- contrast: generator$1$,
7178
- cursor: generator$1_,
7179
- display: generator$1Z,
7180
- divideColor: generator$1Y,
7181
- divideOpacity: generator$1X,
7182
- divideStyle: generator$1W,
7183
- divideWidth: generator$1V,
7184
- dropShadow: generator$1U,
7185
- fill: generator$1T,
7186
- filter: generator$1S,
7187
- flex: generator$1R,
7188
- flexBasis: generator$1Q,
7189
- flexDirection: generator$1P,
7190
- flexGrow: generator$1O,
7191
- flexShrink: generator$1N,
7192
- flexWrap: generator$1M,
7193
- float: generator$1L,
7194
- fontSize: generator$1K,
7195
- fontSmoothing: generator$1J,
7196
- fontStyle: generator$1I,
7197
- fontVariantNumeric: generator$1H,
7198
- fontWeight: generator$1G,
7199
- gap: generator$1F,
7200
- gradientColorStops: generator$1E,
7201
- grayscale: generator$1D,
7202
- gridAutoColumns: generator$1C,
7203
- gridAutoFlow: generator$1B,
7204
- gridAutoRows: generator$1A,
7205
- gridColumn: generator$1z,
7206
- gridColumnEnd: generator$1y,
7207
- gridColumnStart: generator$1x,
7208
- gridRow: generator$1w,
7209
- gridRowEnd: generator$1v,
7210
- gridRowStart: generator$1u,
7211
- gridTemplateColumns: generator$1t,
7212
- gridTemplateRows: generator$1s,
7213
- height: generator$1r,
7214
- hueRotate: generator$1q,
7215
- hyphens: generator$1p,
7216
- inset: generator$1o,
7217
- invert: generator$1n,
7218
- isolation: generator$1m,
7219
- justifyContent: generator$1l,
7220
- justifyItems: generator$1k,
7221
- justifySelf: generator$1j,
7222
- letterSpacing: generator$1i,
7223
- lineClamp: generator$1h,
7224
- lineHeight: generator$1g,
8130
+ accentColor: generator$2M,
8131
+ accessibility: generator$2L,
8132
+ alignContent: generator$2K,
8133
+ alignItems: generator$2J,
8134
+ alignSelf: generator$2I,
8135
+ animation: generator$2H,
8136
+ appearance: generator$2G,
8137
+ aspect: generator$2F,
8138
+ backgroundAttachment: generator$2E,
8139
+ backgroundClip: generator$2D,
8140
+ backgroundColor: generator$2C,
8141
+ backgroundImage: generator$2B,
8142
+ backgroundOpacity: generator$2A,
8143
+ backgroundOrigin: generator$2z,
8144
+ backgroundPosition: generator$2y,
8145
+ backgroundRepeat: generator$2x,
8146
+ backgroundSize: generator$2w,
8147
+ backdropBlur: generator$2v,
8148
+ backdropBrightness: generator$2u,
8149
+ backdropContrast: generator$2t,
8150
+ backdropFilter: generator$2s,
8151
+ backdropGrayscale: generator$2r,
8152
+ backdropHueRotate: generator$2q,
8153
+ backdropInvert: generator$2p,
8154
+ backdropOpacity: generator$2o,
8155
+ backdropSaturate: generator$2n,
8156
+ backdropSepia: generator$2m,
8157
+ blur: generator$2l,
8158
+ borderCollapse: generator$2k,
8159
+ borderColor: generator$2j,
8160
+ borderOpacity: generator$2i,
8161
+ borderRadius: generator$2h,
8162
+ borderSpacing: generator$2g,
8163
+ borderStyle: generator$2f,
8164
+ borderWidth: generator$2e,
8165
+ boxDecorationBreak: generator$2d,
8166
+ boxShadow: generator$2c,
8167
+ boxSizing: generator$2b,
8168
+ breakAfter: generator$2a,
8169
+ breakBefore: generator$29,
8170
+ breakInside: generator$28,
8171
+ brightness: generator$27,
8172
+ captionSide: generator$26,
8173
+ caretColor: generator$25,
8174
+ clear: generator$24,
8175
+ columns: generator$23,
8176
+ container: generator$22,
8177
+ content: generator$21,
8178
+ contrast: generator$20,
8179
+ cursor: generator$1$,
8180
+ display: generator$1_,
8181
+ divideColor: generator$1Z,
8182
+ divideOpacity: generator$1Y,
8183
+ divideStyle: generator$1X,
8184
+ divideWidth: generator$1W,
8185
+ dropShadow: generator$1V,
8186
+ fill: generator$1U,
8187
+ filter: generator$1T,
8188
+ flex: generator$1S,
8189
+ flexBasis: generator$1R,
8190
+ flexDirection: generator$1Q,
8191
+ flexGrow: generator$1P,
8192
+ flexShrink: generator$1O,
8193
+ flexWrap: generator$1N,
8194
+ float: generator$1M,
8195
+ fontSize: generator$1L,
8196
+ fontSmoothing: generator$1K,
8197
+ fontStyle: generator$1J,
8198
+ fontVariantNumeric: generator$1I,
8199
+ fontWeight: generator$1H,
8200
+ gap: generator$1G,
8201
+ gradientColorStops: generator$1F,
8202
+ grayscale: generator$1E,
8203
+ gridAutoColumns: generator$1D,
8204
+ gridAutoFlow: generator$1C,
8205
+ gridAutoRows: generator$1B,
8206
+ gridColumn: generator$1A,
8207
+ gridColumnEnd: generator$1z,
8208
+ gridColumnStart: generator$1y,
8209
+ gridRow: generator$1x,
8210
+ gridRowEnd: generator$1w,
8211
+ gridRowStart: generator$1v,
8212
+ gridTemplateColumns: generator$1u,
8213
+ gridTemplateRows: generator$1t,
8214
+ height: generator$1s,
8215
+ hueRotate: generator$1r,
8216
+ hyphens: generator$1q,
8217
+ inset: generator$1p,
8218
+ invert: generator$1o,
8219
+ isolation: generator$1n,
8220
+ justifyContent: generator$1m,
8221
+ justifyItems: generator$1l,
8222
+ justifySelf: generator$1k,
8223
+ letterSpacing: generator$1j,
8224
+ lineClamp: generator$1i,
8225
+ lineHeight: generator$1h,
8226
+ listStyleImage: generator$1g,
7225
8227
  listStylePosition: generator$1f,
7226
8228
  listStyleType: generator$1e,
7227
8229
  margin: generator$1d,
@@ -7319,10 +8321,10 @@ function parseCustomClassWithPatterns(className) {
7319
8321
  return null;
7320
8322
  }
7321
8323
 
7322
- /**
7323
- * Resolve all CSS custom properties (var) in a CSS string and output only clear CSS (no custom property)
7324
- * @param {string} cssString
7325
- * @returns {string} e.g. 'color: rgba(255,255,255,1); background: #fff;'
8324
+ /**
8325
+ * Resolve all CSS custom properties (var) in a CSS string and output only clear CSS (no custom property)
8326
+ * @param {string} cssString
8327
+ * @returns {string} e.g. 'color: rgba(255,255,255,1); background: #fff;'
7326
8328
  */
7327
8329
  function resolveCssToClearCss(cssString) {
7328
8330
  const customVars = {};
@@ -7352,19 +8354,40 @@ function resolveCssToClearCss(cssString) {
7352
8354
  // Cache for getConfigOptions - use LRU cache
7353
8355
  const configOptionsCache = new LRUCache(500);
7354
8356
  function generateTailwindCssString() {
8357
+ var _options$theme, _userConfigData$theme;
7355
8358
  let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7356
8359
  const pluginKeys = Object.keys(plugins);
8360
+
8361
+ // Merge user config with options
8362
+ const userConfigData = getConfig();
8363
+ const mergedOptions = {
8364
+ ...options,
8365
+ theme: {
8366
+ ...options.theme,
8367
+ ...userConfigData.theme,
8368
+ extend: {
8369
+ ...((_options$theme = options.theme) === null || _options$theme === void 0 ? void 0 : _options$theme.extend),
8370
+ ...((_userConfigData$theme = userConfigData.theme) === null || _userConfigData$theme === void 0 ? void 0 : _userConfigData$theme.extend)
8371
+ }
8372
+ }
8373
+ };
8374
+
7357
8375
  // Use cache to prevent unnecessary reprocessing
7358
- const key = JSON.stringify(options);
8376
+ // Include user config in cache key to ensure cache invalidation
8377
+ const key = JSON.stringify({
8378
+ options: mergedOptions,
8379
+ userConfigHash: JSON.stringify(userConfigData)
8380
+ });
7359
8381
  if (!configOptionsCache.has(key)) {
7360
- configOptionsCache.set(key, getConfigOptions(options, pluginKeys));
8382
+ const configOptions = getConfigOptions(mergedOptions, pluginKeys);
8383
+ configOptionsCache.set(key, configOptions);
7361
8384
  }
7362
8385
  const configOptions = configOptionsCache.get(key);
7363
8386
  const {
7364
8387
  corePlugins = {}
7365
8388
  } = configOptions;
7366
8389
  const corePluginKeys = Object.keys(corePlugins);
7367
- let cssString = ``;
8390
+ let cssString = "";
7368
8391
  Object.keys(plugins).forEach(key => {
7369
8392
  if (corePluginKeys.indexOf(key) >= 0 && !corePlugins[key]) {
7370
8393
  cssString += "";
@@ -7413,10 +8436,10 @@ const specialVariants = {
7413
8436
  dark: (state, sel) => `.dark ${sel}`
7414
8437
  };
7415
8438
  const selectorVariants = {
7416
- first: () => `> :first-child`,
7417
- last: () => `> :last-child`,
7418
- odd: () => `> :nth-child(odd)`,
7419
- even: () => `> :nth-child(even)`,
8439
+ first: () => "> :first-child",
8440
+ last: () => "> :last-child",
8441
+ odd: () => "> :nth-child(odd)",
8442
+ even: () => "> :nth-child(even)",
7420
8443
  not: arg => `> :not(${arg})`,
7421
8444
  number: arg => `> :nth-child(${arg})`
7422
8445
  };
@@ -7503,7 +8526,10 @@ function debounce(func) {
7503
8526
  }
7504
8527
  const context = this;
7505
8528
  callCount++;
8529
+
8530
+ // eslint-disable-next-line no-undef
7506
8531
  clearTimeout(timeout);
8532
+ // eslint-disable-next-line no-undef
7507
8533
  timeout = setTimeout(() => {
7508
8534
  const marker = performanceMonitor.start(`debounced:${func.name || "anonymous"}`);
7509
8535
  try {
@@ -7592,11 +8618,11 @@ function separateAndResolveCSS(arr) {
7592
8618
  }
7593
8619
  }
7594
8620
 
7595
- /**
7596
- * Process opacity modifier from class name (e.g., text-red-500/50 -> 50% opacity)
7597
- * @param {string} className - Class name with potential opacity modifier
7598
- * @param {string} cssDeclaration - CSS declaration to modify
7599
- * @returns {string} Modified CSS declaration with opacity applied
8621
+ /**
8622
+ * Process opacity modifier from class name (e.g., text-red-500/50 -> 50% opacity)
8623
+ * @param {string} className - Class name with potential opacity modifier
8624
+ * @param {string} cssDeclaration - CSS declaration to modify
8625
+ * @returns {string} Modified CSS declaration with opacity applied
7600
8626
  */
7601
8627
  function processOpacityModifier(className, cssDeclaration) {
7602
8628
  const opacityMatch = className.match(/\/(\d+)$/);
@@ -7657,11 +8683,11 @@ function processOpacityModifier(className, cssDeclaration) {
7657
8683
  return modifiedDeclaration;
7658
8684
  }
7659
8685
 
7660
- /**
7661
- * Convert Tailwind class string to inline CSS styles or JSON object
7662
- * @param {string} classNames - String containing Tailwind classes to convert
7663
- * @param {boolean} convertToJson - If true, result will be JSON object, if false becomes CSS string
7664
- * @returns {string|Object} Inline CSS string or style JSON object
8686
+ /**
8687
+ * Convert Tailwind class string to inline CSS styles or JSON object
8688
+ * @param {string} classNames - String containing Tailwind classes to convert
8689
+ * @param {boolean} convertToJson - If true, result will be JSON object, if false becomes CSS string
8690
+ * @returns {string|Object} Inline CSS string or style JSON object
7665
8691
  */
7666
8692
  function tws(classNames, convertToJson) {
7667
8693
  const totalMarker = performanceMonitor.start("tws:total");
@@ -8100,17 +9126,17 @@ function generateCssString(styles) {
8100
9126
  for (const subSel in content) {
8101
9127
  cssString += `${subSel}{${content[subSel].trim().replace(/\n/g, "")}}`;
8102
9128
  }
8103
- cssString += `}`;
9129
+ cssString += "}";
8104
9130
  }
8105
9131
  return cssString.trim();
8106
9132
  }
8107
9133
 
8108
- /**
8109
- * Generate CSS string from style object with SCSS-like syntax
8110
- * Supports nested selectors, state variants, responsive variants, and @css directives
8111
- * @param {Object} obj - Object with SCSS-like style format
8112
- * @param {Object} [options] - Additional options, e.g. { inject: true/false }
8113
- * @returns {string} Generated CSS string
9134
+ /**
9135
+ * Generate CSS string from style object with SCSS-like syntax
9136
+ * Supports nested selectors, state variants, responsive variants, and @css directives
9137
+ * @param {Object} obj - Object with SCSS-like style format
9138
+ * @param {Object} [options] - Additional options, e.g. { inject: true/false }
9139
+ * @returns {string} Generated CSS string
8114
9140
  */
8115
9141
  function twsx(obj) {
8116
9142
  let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -8164,9 +9190,9 @@ function twsx(obj) {
8164
9190
  // Process each selector
8165
9191
  const processMarker = performanceMonitor.start("twsx:process");
8166
9192
  for (const selector in flattered) {
8167
- let val = flattered[selector];
9193
+ const val = flattered[selector];
8168
9194
  let baseClass = "";
8169
- let nested = {};
9195
+ const nested = {};
8170
9196
  if (typeof val === "string") {
8171
9197
  // Check if this is a @css property value - if so, don't process through expandGroupedClass
8172
9198
  if (selector.includes(" @css ")) {
@@ -8255,19 +9281,19 @@ function autoInjectCss(cssString) {
8255
9281
  }
8256
9282
 
8257
9283
  // Enhanced debounced functions with performance monitoring configuration
8258
- /**
8259
- * Debounced version of tws function with performance monitoring
8260
- * @param {string} classNames - String containing Tailwind classes to convert
8261
- * @param {boolean} convertToJson - If true, result will be JSON object, if false becomes CSS string
8262
- * @returns {string|Object} Inline CSS string or style JSON object
9284
+ /**
9285
+ * Debounced version of tws function with performance monitoring
9286
+ * @param {string} classNames - String containing Tailwind classes to convert
9287
+ * @param {boolean} convertToJson - If true, result will be JSON object, if false becomes CSS string
9288
+ * @returns {string|Object} Inline CSS string or style JSON object
8263
9289
  */
8264
9290
  const debouncedTws = debounce(tws, 50); // Faster debounce for tws
8265
9291
 
8266
- /**
8267
- * Debounced version of twsx function with performance monitoring
8268
- * @param {Object} obj - Object with SCSS-like style format
8269
- * @param {Object} [options] - Additional options
8270
- * @returns {string} Generated CSS string
9292
+ /**
9293
+ * Debounced version of twsx function with performance monitoring
9294
+ * @param {Object} obj - Object with SCSS-like style format
9295
+ * @param {Object} [options] - Additional options
9296
+ * @returns {string} Generated CSS string
8271
9297
  */
8272
9298
  const debouncedTwsx = debounce(twsx, 100); // Standard debounce for twsx
8273
9299
 
@@ -8303,4 +9329,4 @@ const performanceUtils = {
8303
9329
  }
8304
9330
  };
8305
9331
 
8306
- export { LRUCache, Logger, TwsError, configure, createPlugin, createUtilityPlugin, createVariantPlugin, debouncedTws, debouncedTwsx, getConfig, getTailwindCache, handleError, logger, onError, performanceUtils, resetConfig, resetTailwindCache, tws, twsx };
9332
+ export { DYNAMIC_TEMPLATES, INLINE_ANIMATIONS, LRUCache, Logger, TwsError, animateElement, applyDynamicAnimation, applyInlineAnimation, applyWebAnimation, chainAnimations, configure, createDynamicAnimation, createPlugin, createTemplateAnimation, createUtilityPlugin, createVariantPlugin, debouncedTws, debouncedTwsx, getConfig, getTailwindCache, handleError, initWebAnimations, logger, onError, performanceUtils, resetConfig, resetTailwindCache, staggerAnimations, tws, twsx };