daisyui 3.9.2 → 4.0.0-alpha.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/full.css CHANGED
@@ -1206,7 +1206,8 @@ hr {
1206
1206
  Add the correct text decoration in Chrome, Edge, and Safari.
1207
1207
  */
1208
1208
  abbr:where([title]) {
1209
- text-decoration: underline dotted;
1209
+ -webkit-text-decoration: underline dotted;
1210
+ text-decoration: underline dotted;
1210
1211
  }
1211
1212
  /*
1212
1213
  Remove the default font size and weight for headings.
@@ -1539,7 +1540,9 @@ html {
1539
1540
  display: inline-flex;
1540
1541
  align-items: center;
1541
1542
  justify-content: center;
1543
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
1542
1544
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
1545
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
1543
1546
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1544
1547
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
1545
1548
  transition-duration: 200ms;
@@ -1699,14 +1702,17 @@ html {
1699
1702
  display: inline-flex;
1700
1703
  flex-shrink: 0;
1701
1704
  cursor: pointer;
1702
- user-select: none;
1705
+ -webkit-user-select: none;
1706
+ user-select: none;
1703
1707
  flex-wrap: wrap;
1704
1708
  align-items: center;
1705
1709
  justify-content: center;
1706
1710
  border-color: transparent;
1707
1711
  border-color: hsl(var(--b2) / var(--tw-border-opacity));
1708
1712
  text-align: center;
1713
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
1709
1714
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
1715
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
1710
1716
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1711
1717
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
1712
1718
  transition-duration: 200ms;
@@ -2036,7 +2042,9 @@ html {
2036
2042
  grid-column-start: 1;
2037
2043
  grid-row-start: 1}
2038
2044
  .drawer-side > *:not(.drawer-overlay) {
2045
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
2039
2046
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
2047
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
2040
2048
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
2041
2049
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
2042
2050
  transition-duration: 300ms;
@@ -2080,7 +2088,9 @@ html {
2080
2088
  --tw-scale-x: .95;
2081
2089
  --tw-scale-y: .95;
2082
2090
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
2091
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
2083
2092
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
2093
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
2084
2094
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
2085
2095
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
2086
2096
  transition-duration: 200ms}
@@ -2290,7 +2300,8 @@ html {
2290
2300
  height: 100%;
2291
2301
  flex-shrink: 0;
2292
2302
  cursor: pointer;
2293
- user-select: none;
2303
+ -webkit-user-select: none;
2304
+ user-select: none;
2294
2305
  flex-wrap: wrap;
2295
2306
  align-items: center;
2296
2307
  justify-content: center;
@@ -2300,7 +2311,9 @@ html {
2300
2311
  font-size: 0.875rem;
2301
2312
  line-height: 1.25rem;
2302
2313
  line-height: 1em;
2314
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
2303
2315
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
2316
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
2304
2317
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
2305
2318
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
2306
2319
  transition-duration: 200ms;
@@ -2345,7 +2358,8 @@ html {
2345
2358
  flex-direction: column}
2346
2359
  .label {
2347
2360
  display: flex;
2348
- user-select: none;
2361
+ -webkit-user-select: none;
2362
+ user-select: none;
2349
2363
  align-items: center;
2350
2364
  justify-content: space-between;
2351
2365
  padding-left: 0.25rem;
@@ -2548,10 +2562,12 @@ html {
2548
2562
  align-items: center;
2549
2563
  gap: 0.5rem;
2550
2564
  grid-auto-columns: minmax(auto, max-content) auto max-content;
2551
- user-select: none}
2565
+ -webkit-user-select: none;
2566
+ user-select: none}
2552
2567
  .menu li.disabled {
2553
2568
  cursor: not-allowed;
2554
- user-select: none;
2569
+ -webkit-user-select: none;
2570
+ user-select: none;
2555
2571
  color: hsl(var(--bc) / 0.3)}
2556
2572
  .menu :where(li > .menu-dropdown:not(.menu-dropdown-show)) {
2557
2573
  display: none}
@@ -2638,7 +2654,9 @@ html {
2638
2654
  --tw-bg-opacity: 1;
2639
2655
  background-color: hsl(var(--b1) / var(--tw-bg-opacity));
2640
2656
  padding: 1.5rem;
2657
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
2641
2658
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
2659
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
2642
2660
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
2643
2661
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
2644
2662
  transition-duration: 200ms;
@@ -2776,7 +2794,8 @@ html {
2776
2794
  .select {
2777
2795
  display: inline-flex;
2778
2796
  cursor: pointer;
2779
- user-select: none;
2797
+ -webkit-user-select: none;
2798
+ user-select: none;
2780
2799
  appearance: none;
2781
2800
  height: 3rem;
2782
2801
  padding-left: 1rem;
@@ -2885,7 +2904,8 @@ html {
2885
2904
  .swap {
2886
2905
  position: relative;
2887
2906
  display: inline-grid;
2888
- user-select: none;
2907
+ -webkit-user-select: none;
2908
+ user-select: none;
2889
2909
  place-content: center;
2890
2910
  cursor: pointer}
2891
2911
  .swap > * {
@@ -2916,7 +2936,8 @@ html {
2916
2936
  position: relative;
2917
2937
  display: inline-flex;
2918
2938
  cursor: pointer;
2919
- user-select: none;
2939
+ -webkit-user-select: none;
2940
+ user-select: none;
2920
2941
  flex-wrap: wrap;
2921
2942
  align-items: center;
2922
2943
  justify-content: center;
@@ -4181,7 +4202,9 @@ details.collapse summary::-webkit-details-marker {
4181
4202
  padding-top: 0.5rem;
4182
4203
  padding-bottom: 0.5rem;
4183
4204
  text-align: left;
4205
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
4184
4206
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
4207
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
4185
4208
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
4186
4209
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
4187
4210
  transition-duration: 200ms;
@@ -22686,7 +22709,9 @@ details.collapse summary::-webkit-details-marker {
22686
22709
  .ring-offset-warning\/95 {
22687
22710
  --tw-ring-offset-color: hsl(var(--wa) / 0.95)}
22688
22711
  .transition {
22712
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
22689
22713
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
22714
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
22690
22715
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
22691
22716
  transition-duration: 150ms}
22692
22717
  .transition-all {
@@ -22740,7 +22765,8 @@ details.collapse summary::-webkit-details-marker {
22740
22765
  .glass,
22741
22766
  .glass.btn-active {
22742
22767
  border: none;
22743
- backdrop-filter: blur(var(--glass-blur, 40px));
22768
+ -webkit-backdrop-filter: blur(var(--glass-blur, 40px));
22769
+ backdrop-filter: blur(var(--glass-blur, 40px));
22744
22770
  background-color: transparent;
22745
22771
  background-image: linear-gradient(
22746
22772
  135deg,
@@ -22758,7 +22784,8 @@ details.collapse summary::-webkit-details-marker {
22758
22784
  @media (hover: hover) {
22759
22785
  .glass.btn-active {
22760
22786
  border: none;
22761
- backdrop-filter: blur(var(--glass-blur, 40px));
22787
+ -webkit-backdrop-filter: blur(var(--glass-blur, 40px));
22788
+ backdrop-filter: blur(var(--glass-blur, 40px));
22762
22789
  background-color: transparent;
22763
22790
  background-image: linear-gradient(
22764
22791
  135deg,
@@ -23819,7 +23846,9 @@ details.collapse summary::-webkit-details-marker {
23819
23846
  .tooltip:before,
23820
23847
  .tooltip:after {
23821
23848
  opacity: 0;
23849
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
23822
23850
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
23851
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
23823
23852
  transition-delay: 100ms;
23824
23853
  transition-duration: 200ms;
23825
23854
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "daisyui",
3
- "version": "3.9.2",
3
+ "version": "4.0.0-alpha.1",
4
4
  "description": "daisyUI - Tailwind CSS Components",
5
5
  "author": "Pouya Saadeghi",
6
6
  "license": "MIT",
@@ -77,15 +77,14 @@
77
77
  "prejss-cli": "0.3.3",
78
78
  "prettier": "^3.0.3",
79
79
  "prettier-plugin-svelte": "^3.0.3",
80
- "prettier-plugin-tailwindcss": "^0.5.4",
81
- "rtlcss": "4.1.0",
80
+ "prettier-plugin-tailwindcss": "^0.5.6",
81
+ "rtlcss": "4.1.1",
82
82
  "standard-version": "^9.5.0"
83
83
  },
84
84
  "dependencies": {
85
85
  "colord": "^2.9",
86
86
  "css-selector-tokenizer": "^0.8",
87
- "postcss": "^8",
88
- "postcss-js": "^4",
89
- "tailwindcss": "^3.1"
87
+ "picocolors": "^1",
88
+ "postcss-js": "^4"
90
89
  }
91
90
  }
package/src/index.js CHANGED
@@ -1,6 +1,9 @@
1
- const tailwindColors = require("tailwindcss/colors")
1
+ // const tailwindColors = require("tailwindcss/colors")
2
+ // const tailwindPlugin = require("tailwindcss/plugin")
3
+ const tailwindPlugin = require("./lib/createPlugin")
2
4
 
3
5
  const postcssJs = require("postcss-js")
6
+ const pc = require("picocolors")
4
7
  const postcssPrefix = require("./lib/addPrefix")
5
8
 
6
9
  const daisyuiInfo = require("../package.json")
@@ -23,7 +26,7 @@ const mainFunction = ({ addBase, addComponents, config }) => {
23
26
  }
24
27
  if (logs) {
25
28
  console.log()
26
- console.log("╭── 🌼\x1b[35m daisyUI " + daisyuiInfo.version, "\x1b[0m" + daisyuiInfo.homepage)
29
+ console.log(`╭─ 🌼 ${pc.magenta("daisyUI")} ${pc.dim(daisyuiInfo.version)} ${pc.dim(daisyuiInfo.homepage)}`)
27
30
  }
28
31
 
29
32
  // inject @base style
@@ -84,90 +87,49 @@ const mainFunction = ({ addBase, addComponents, config }) => {
84
87
  if (logs) {
85
88
  console.log("│")
86
89
  if (config("daisyui.styled") == false) {
87
- console.log(
88
- "├──",
89
- "daisyui.styled",
90
- "\x1b[0m" + "config is",
91
- "\x1b[2m" + "false" + "\x1b[0m",
92
- "– your components will have no design decisions" + "\n│"
93
- )
90
+ console.log(`├─ ${pc.yellow("ℹ︎")} ${pc.blue("daisyui.styled")} ${pc.reset("config is")} ${pc.blue("false")} ${pc.dim("– components will have no design decisions")}\n│`)
94
91
  }
95
92
  if (config("daisyui.utils") == false) {
96
- console.log(
97
- "├──",
98
- "daisyui.utils",
99
- "\x1b[0m" + "config is",
100
- "\x1b[2m" + "false" + "\x1b[0m",
101
- "– daisyUI modifier utility classes are disabled" + "\n│"
102
- )
93
+ console.log(`├─ ${pc.yellow("ℹ︎")} ${pc.blue("daisyui.utils")} ${pc.reset("config is")} ${pc.blue("false")} ${pc.dim("– daisyUI utility classes are disabled")}\n│`)
103
94
  }
104
95
  if (config("daisyui.prefix") && config("daisyui.prefix") !== "") {
105
- console.log(
106
- "├──",
107
- "\x1b[2m" + "prefix" + "\x1b[0m",
108
- "is enabled, daisyUI classnames must use",
109
- "\x1b[2m" + `${config("daisyui.prefix")}`,
110
- "\x1b[0m" + "prefix. like:",
111
- "\x1b[2m" + `${config("daisyui.prefix")}btn`,
112
- "\x1b[0m" + "\n│ https://daisyui.com/docs/config" + "\n│"
113
- )
96
+ console.log(`├─ ${pc.green('✔︎')} ${pc.blue("prefix")} is enabled – ${pc.dim("daisyUI classnames must use")} ${pc.blue(config("daisyui.prefix"))} ${pc.dim("prefix. like:")} ${pc.blue(`${config("daisyui.prefix")}btn`)}\n│ ${pc.dim("https://daisyui.com/docs/config")}\n│`)
114
97
  }
115
98
  if (config("daisyui.rtl") == true) {
116
- console.log(
117
- "├──",
118
- "Using RTL, make sure you're using",
119
- "\x1b[2m" + "<html dir=rtl>" + "\x1b[0m",
120
- "and you have",
121
- "\x1b[2mtailwindcss-flip\x1b[0m",
122
- "plugin",
123
- "\n│ https://daisyui.com/docs/config" + "\n│"
124
- )
99
+ console.log(`├─ ${pc.green('✔︎')} ${pc.blue("RTL")} is enabled – ${pc.dim("make sure you're using")} ${pc.blue("<html dir=rtl>")} ${pc.dim("and you have")} ${pc.blue("tailwindcss-flip")} ${pc.dim("plugin")}\n│ ${pc.dim("https://daisyui.com/docs/config")}\n│`)
125
100
  }
126
101
  if (themeInjectorHsl.themeOrder.length > 0) {
127
- console.log(
128
- "├──",
129
- "\x1b[2m" +
130
- `${themeInjectorHsl.themeOrder.length}` +
131
- "\x1b[0m" +
132
- ` ${themeInjectorHsl.themeOrder.length > 1 ? "themes are" : "theme is"}` +
133
- ` enabled. How to add more themes:` +
134
- "\n│ https://daisyui.com/docs/themes" +
135
- "\n│"
136
- )
102
+ console.log(`├─ ${pc.green('✔︎')} ${themeInjectorHsl.themeOrder.length} ${themeInjectorHsl.themeOrder.length > 1 ? "themes" : "theme"} added\n│ ${pc.dim('How to add more: https://daisyui.com/docs/themes')}\n│`)
137
103
  }
138
104
  if (themeInjectorHsl.themeOrder.length === 0) {
139
- console.log(
140
- "├──",
141
- `All themes are disabled in config. How to add themes:` +
142
- "\n│ https://daisyui.com/docs/themes" +
143
- "\n│"
144
- )
105
+ console.log(`├─ ${pc.yellow('ℹ︎')} All themes are disabled in config\n│ ${pc.dim('How to add themes: https://daisyui.com/docs/themes')}\n│`)
145
106
  }
146
107
  let messages = [
147
- `\x1b[32m💚 Support daisyUI project\x1b[0m: ${daisyuiInfo.funding.url}`,
148
- `\x1b[32m⭐️ Star daisyUI project on GitHub\x1b[0m: https://github.com/saadeghi/daisyui`,
108
+ `${pc.reset('Support daisyUI project:')} ${pc.dim(daisyuiInfo.funding.url)}`,
109
+ `${pc.reset('Star daisyUI project on GitHub:')} ${pc.dim('https://github.com/saadeghi/daisyui')}`,
149
110
  ]
150
- console.log("╰── " + messages[Math.floor(Math.random() * messages.length)])
111
+ console.log(`╰─ ${pc.green('❤︎')} ${messages[Math.floor(Math.random() * messages.length)]}`)
151
112
  console.log()
152
113
  }
153
114
  }
154
115
 
155
- module.exports = require("tailwindcss/plugin")(mainFunction, {
116
+ module.exports = tailwindPlugin(mainFunction, {
156
117
  theme: {
157
118
  extend: {
158
119
  colors: {
159
120
  ...colors,
160
121
  // adding all Tailwind `neutral` shades here so they don't get overridden by daisyUI `neutral` color
161
- "neutral-50": tailwindColors.neutral[50],
162
- "neutral-100": tailwindColors.neutral[100],
163
- "neutral-200": tailwindColors.neutral[200],
164
- "neutral-300": tailwindColors.neutral[300],
165
- "neutral-400": tailwindColors.neutral[400],
166
- "neutral-500": tailwindColors.neutral[500],
167
- "neutral-600": tailwindColors.neutral[600],
168
- "neutral-700": tailwindColors.neutral[700],
169
- "neutral-800": tailwindColors.neutral[800],
170
- "neutral-900": tailwindColors.neutral[900],
122
+ "neutral-50": "#fafafa",
123
+ "neutral-100": "#f5f5f5",
124
+ "neutral-200": "#e5e5e5",
125
+ "neutral-300": "#d4d4d4",
126
+ "neutral-400": "#a3a3a3",
127
+ "neutral-500": "#737373",
128
+ "neutral-600": "#525252",
129
+ "neutral-700": "#404040",
130
+ "neutral-800": "#262626",
131
+ "neutral-900": "#171717",
132
+ "neutral-950": "#0a0a0a",
171
133
  },
172
134
  },
173
135
  },
@@ -0,0 +1,21 @@
1
+ function createPlugin(plugin, config) {
2
+ return {
3
+ handler: plugin,
4
+ config,
5
+ }
6
+ }
7
+ createPlugin.withOptions = function (pluginFunction, configFunction = () => ({})) {
8
+ const optionsFunction = function (options) {
9
+ return {
10
+ __options: options,
11
+ handler: pluginFunction(options),
12
+ config: configFunction(options),
13
+ }
14
+ }
15
+ optionsFunction.__isOptionsFunction = true
16
+ optionsFunction.__pluginFunction = pluginFunction
17
+ optionsFunction.__configFunction = configFunction
18
+ return optionsFunction
19
+ }
20
+
21
+ module.exports = createPlugin