daisyui 1.3.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +41 -0
  3. data/LICENSE-tailwind_merge.txt +21 -0
  4. data/README.md +58 -0
  5. data/lib/daisy_ui/accordion.rb +32 -28
  6. data/lib/daisy_ui/alert.rb +97 -94
  7. data/lib/daisy_ui/aura.rb +37 -37
  8. data/lib/daisy_ui/avatar.rb +16 -14
  9. data/lib/daisy_ui/badge.rb +159 -156
  10. data/lib/daisy_ui/base.rb +38 -4
  11. data/lib/daisy_ui/button.rb +148 -142
  12. data/lib/daisy_ui/card.rb +57 -54
  13. data/lib/daisy_ui/carousel.rb +36 -32
  14. data/lib/daisy_ui/chat.rb +16 -15
  15. data/lib/daisy_ui/checkbox.rb +95 -93
  16. data/lib/daisy_ui/class_merge/cache.rb +40 -0
  17. data/lib/daisy_ui/class_merge/class_group_utils.rb +139 -0
  18. data/lib/daisy_ui/class_merge/configuration.rb +77 -0
  19. data/lib/daisy_ui/class_merge/daisy_groups.rb +83 -0
  20. data/lib/daisy_ui/class_merge/merger.rb +126 -0
  21. data/lib/daisy_ui/class_merge/parse_class_name.rb +110 -0
  22. data/lib/daisy_ui/class_merge/sort_modifiers.rb +36 -0
  23. data/lib/daisy_ui/class_merge/tailwind_config.rb +2505 -0
  24. data/lib/daisy_ui/class_merge/validators.rb +202 -0
  25. data/lib/daisy_ui/class_merge.rb +47 -0
  26. data/lib/daisy_ui/collapse.rb +32 -28
  27. data/lib/daisy_ui/configurable.rb +31 -3
  28. data/lib/daisy_ui/divider.rb +84 -78
  29. data/lib/daisy_ui/dock.rb +37 -35
  30. data/lib/daisy_ui/dropdown.rb +67 -65
  31. data/lib/daisy_ui/file_input.rb +95 -91
  32. data/lib/daisy_ui/footer.rb +16 -14
  33. data/lib/daisy_ui/indicator.rb +40 -36
  34. data/lib/daisy_ui/input.rb +95 -91
  35. data/lib/daisy_ui/join.rb +16 -14
  36. data/lib/daisy_ui/kbd.rb +37 -35
  37. data/lib/daisy_ui/link.rb +58 -58
  38. data/lib/daisy_ui/loading.rb +85 -81
  39. data/lib/daisy_ui/mask.rb +123 -119
  40. data/lib/daisy_ui/megamenu.rb +53 -50
  41. data/lib/daisy_ui/menu.rb +57 -53
  42. data/lib/daisy_ui/modal.rb +49 -47
  43. data/lib/daisy_ui/otp.rb +95 -93
  44. data/lib/daisy_ui/pagination.rb +16 -14
  45. data/lib/daisy_ui/progress.rb +58 -56
  46. data/lib/daisy_ui/radio.rb +95 -91
  47. data/lib/daisy_ui/range.rb +95 -91
  48. data/lib/daisy_ui/rating.rb +37 -35
  49. data/lib/daisy_ui/select.rb +95 -91
  50. data/lib/daisy_ui/stack.rb +24 -22
  51. data/lib/daisy_ui/stat.rb +16 -14
  52. data/lib/daisy_ui/status.rb +95 -91
  53. data/lib/daisy_ui/steps.rb +16 -14
  54. data/lib/daisy_ui/swap.rb +16 -14
  55. data/lib/daisy_ui/table.rb +41 -39
  56. data/lib/daisy_ui/tabs.rb +80 -77
  57. data/lib/daisy_ui/textarea.rb +95 -91
  58. data/lib/daisy_ui/timeline.rb +16 -14
  59. data/lib/daisy_ui/toast.rb +46 -42
  60. data/lib/daisy_ui/toggle.rb +95 -91
  61. data/lib/daisy_ui/tooltip.rb +111 -105
  62. data/lib/daisy_ui/updated_at.rb +1 -1
  63. data/lib/daisy_ui/version.rb +1 -1
  64. metadata +18 -1
@@ -30,42 +30,43 @@ module DaisyUI
30
30
  attr_reader :modal
31
31
 
32
32
  register_modifiers(
33
- # Styles
34
- # "sm:btn-ghost"
35
- # "@sm:btn-ghost"
36
- # "md:btn-ghost"
37
- # "@md:btn-ghost"
38
- # "lg:btn-ghost"
39
- # "@lg:btn-ghost"
40
- ghost: "btn-ghost",
41
- # "sm:btn-link"
42
- # "@sm:btn-link"
43
- # "md:btn-link"
44
- # "@md:btn-link"
45
- # "lg:btn-link"
46
- # "@lg:btn-link"
47
- link: "btn-link",
48
- # "sm:btn-outline"
49
- # "@sm:btn-outline"
50
- # "md:btn-outline"
51
- # "@md:btn-outline"
52
- # "lg:btn-outline"
53
- # "@lg:btn-outline"
54
- outline: "btn-outline",
55
- # "sm:btn-dash"
56
- # "@sm:btn-dash"
57
- # "md:btn-dash"
58
- # "@md:btn-dash"
59
- # "lg:btn-dash"
60
- # "@lg:btn-dash"
61
- dash: "btn-dash",
62
- # "sm:btn-soft"
63
- # "@sm:btn-soft"
64
- # "md:btn-soft"
65
- # "@md:btn-soft"
66
- # "lg:btn-soft"
67
- # "@lg:btn-soft"
68
- soft: "btn-soft",
33
+ style: {
34
+ # "sm:btn-ghost"
35
+ # "@sm:btn-ghost"
36
+ # "md:btn-ghost"
37
+ # "@md:btn-ghost"
38
+ # "lg:btn-ghost"
39
+ # "@lg:btn-ghost"
40
+ ghost: "btn-ghost",
41
+ # "sm:btn-link"
42
+ # "@sm:btn-link"
43
+ # "md:btn-link"
44
+ # "@md:btn-link"
45
+ # "lg:btn-link"
46
+ # "@lg:btn-link"
47
+ link: "btn-link",
48
+ # "sm:btn-outline"
49
+ # "@sm:btn-outline"
50
+ # "md:btn-outline"
51
+ # "@md:btn-outline"
52
+ # "lg:btn-outline"
53
+ # "@lg:btn-outline"
54
+ outline: "btn-outline",
55
+ # "sm:btn-dash"
56
+ # "@sm:btn-dash"
57
+ # "md:btn-dash"
58
+ # "@md:btn-dash"
59
+ # "lg:btn-dash"
60
+ # "@lg:btn-dash"
61
+ dash: "btn-dash",
62
+ # "sm:btn-soft"
63
+ # "@sm:btn-soft"
64
+ # "md:btn-soft"
65
+ # "@md:btn-soft"
66
+ # "lg:btn-soft"
67
+ # "@lg:btn-soft"
68
+ soft: "btn-soft"
69
+ },
69
70
  # "sm:btn-active"
70
71
  # "@sm:btn-active"
71
72
  # "md:btn-active"
@@ -80,41 +81,43 @@ module DaisyUI
80
81
  # "lg:btn-disabled"
81
82
  # "@lg:btn-disabled"
82
83
  disabled: "btn-disabled",
83
- # "sm:btn-lg"
84
- # "@sm:btn-lg"
85
- # "md:btn-lg"
86
- # "@md:btn-lg"
87
- # "lg:btn-lg"
88
- # "@lg:btn-lg"
89
- lg: "btn-lg",
90
- # "sm:btn-md"
91
- # "@sm:btn-md"
92
- # "md:btn-md"
93
- # "@md:btn-md"
94
- # "lg:btn-md"
95
- # "@lg:btn-md"
96
- md: "btn-md",
97
- # "sm:btn-sm"
98
- # "@sm:btn-sm"
99
- # "md:btn-sm"
100
- # "@md:btn-sm"
101
- # "lg:btn-sm"
102
- # "@lg:btn-sm"
103
- sm: "btn-sm",
104
- # "sm:btn-xs"
105
- # "@sm:btn-xs"
106
- # "md:btn-xs"
107
- # "@md:btn-xs"
108
- # "lg:btn-xs"
109
- # "@lg:btn-xs"
110
- xs: "btn-xs",
111
- # "sm:btn-xl"
112
- # "@sm:btn-xl"
113
- # "md:btn-xl"
114
- # "@md:btn-xl"
115
- # "lg:btn-xl"
116
- # "@lg:btn-xl"
117
- xl: "btn-xl",
84
+ size: {
85
+ # "sm:btn-lg"
86
+ # "@sm:btn-lg"
87
+ # "md:btn-lg"
88
+ # "@md:btn-lg"
89
+ # "lg:btn-lg"
90
+ # "@lg:btn-lg"
91
+ lg: "btn-lg",
92
+ # "sm:btn-md"
93
+ # "@sm:btn-md"
94
+ # "md:btn-md"
95
+ # "@md:btn-md"
96
+ # "lg:btn-md"
97
+ # "@lg:btn-md"
98
+ md: "btn-md",
99
+ # "sm:btn-sm"
100
+ # "@sm:btn-sm"
101
+ # "md:btn-sm"
102
+ # "@md:btn-sm"
103
+ # "lg:btn-sm"
104
+ # "@lg:btn-sm"
105
+ sm: "btn-sm",
106
+ # "sm:btn-xs"
107
+ # "@sm:btn-xs"
108
+ # "md:btn-xs"
109
+ # "@md:btn-xs"
110
+ # "lg:btn-xs"
111
+ # "@lg:btn-xs"
112
+ xs: "btn-xs",
113
+ # "sm:btn-xl"
114
+ # "@sm:btn-xl"
115
+ # "md:btn-xl"
116
+ # "@md:btn-xl"
117
+ # "lg:btn-xl"
118
+ # "@lg:btn-xl"
119
+ xl: "btn-xl"
120
+ },
118
121
  # "sm:btn-wide"
119
122
  # "@sm:btn-wide"
120
123
  # "md:btn-wide"
@@ -129,77 +132,80 @@ module DaisyUI
129
132
  # "lg:btn-block"
130
133
  # "@lg:btn-block"
131
134
  block: "btn-block",
132
- # "sm:btn-circle"
133
- # "@sm:btn-circle"
134
- # "md:btn-circle"
135
- # "@md:btn-circle"
136
- # "lg:btn-circle"
137
- # "@lg:btn-circle"
138
- circle: "btn-circle",
139
- # "sm:btn-square"
140
- # "@sm:btn-square"
141
- # "md:btn-square"
142
- # "@md:btn-square"
143
- # "lg:btn-square"
144
- # "@lg:btn-square"
145
- square: "btn-square",
146
- # Colors
147
- # "sm:btn-neutral"
148
- # "@sm:btn-neutral"
149
- # "md:btn-neutral"
150
- # "@md:btn-neutral"
151
- # "lg:btn-neutral"
152
- # "@lg:btn-neutral"
153
- neutral: "btn-neutral",
154
- # "sm:btn-primary"
155
- # "@sm:btn-primary"
156
- # "md:btn-primary"
157
- # "@md:btn-primary"
158
- # "lg:btn-primary"
159
- # "@lg:btn-primary"
160
- primary: "btn-primary",
161
- # "sm:btn-secondary"
162
- # "@sm:btn-secondary"
163
- # "md:btn-secondary"
164
- # "@md:btn-secondary"
165
- # "lg:btn-secondary"
166
- # "@lg:btn-secondary"
167
- secondary: "btn-secondary",
168
- # "sm:btn-accent"
169
- # "@sm:btn-accent"
170
- # "md:btn-accent"
171
- # "@md:btn-accent"
172
- # "lg:btn-accent"
173
- # "@lg:btn-accent"
174
- accent: "btn-accent",
175
- # "sm:btn-info"
176
- # "@sm:btn-info"
177
- # "md:btn-info"
178
- # "@md:btn-info"
179
- # "lg:btn-info"
180
- # "@lg:btn-info"
181
- info: "btn-info",
182
- # "sm:btn-success"
183
- # "@sm:btn-success"
184
- # "md:btn-success"
185
- # "@md:btn-success"
186
- # "lg:btn-success"
187
- # "@lg:btn-success"
188
- success: "btn-success",
189
- # "sm:btn-warning"
190
- # "@sm:btn-warning"
191
- # "md:btn-warning"
192
- # "@md:btn-warning"
193
- # "lg:btn-warning"
194
- # "@lg:btn-warning"
195
- warning: "btn-warning",
196
- # "sm:btn-error"
197
- # "@sm:btn-error"
198
- # "md:btn-error"
199
- # "@md:btn-error"
200
- # "lg:btn-error"
201
- # "@lg:btn-error"
202
- error: "btn-error"
135
+ shape: {
136
+ # "sm:btn-circle"
137
+ # "@sm:btn-circle"
138
+ # "md:btn-circle"
139
+ # "@md:btn-circle"
140
+ # "lg:btn-circle"
141
+ # "@lg:btn-circle"
142
+ circle: "btn-circle",
143
+ # "sm:btn-square"
144
+ # "@sm:btn-square"
145
+ # "md:btn-square"
146
+ # "@md:btn-square"
147
+ # "lg:btn-square"
148
+ # "@lg:btn-square"
149
+ square: "btn-square"
150
+ },
151
+ color: {
152
+ # "sm:btn-neutral"
153
+ # "@sm:btn-neutral"
154
+ # "md:btn-neutral"
155
+ # "@md:btn-neutral"
156
+ # "lg:btn-neutral"
157
+ # "@lg:btn-neutral"
158
+ neutral: "btn-neutral",
159
+ # "sm:btn-primary"
160
+ # "@sm:btn-primary"
161
+ # "md:btn-primary"
162
+ # "@md:btn-primary"
163
+ # "lg:btn-primary"
164
+ # "@lg:btn-primary"
165
+ primary: "btn-primary",
166
+ # "sm:btn-secondary"
167
+ # "@sm:btn-secondary"
168
+ # "md:btn-secondary"
169
+ # "@md:btn-secondary"
170
+ # "lg:btn-secondary"
171
+ # "@lg:btn-secondary"
172
+ secondary: "btn-secondary",
173
+ # "sm:btn-accent"
174
+ # "@sm:btn-accent"
175
+ # "md:btn-accent"
176
+ # "@md:btn-accent"
177
+ # "lg:btn-accent"
178
+ # "@lg:btn-accent"
179
+ accent: "btn-accent",
180
+ # "sm:btn-info"
181
+ # "@sm:btn-info"
182
+ # "md:btn-info"
183
+ # "@md:btn-info"
184
+ # "lg:btn-info"
185
+ # "@lg:btn-info"
186
+ info: "btn-info",
187
+ # "sm:btn-success"
188
+ # "@sm:btn-success"
189
+ # "md:btn-success"
190
+ # "@md:btn-success"
191
+ # "lg:btn-success"
192
+ # "@lg:btn-success"
193
+ success: "btn-success",
194
+ # "sm:btn-warning"
195
+ # "@sm:btn-warning"
196
+ # "md:btn-warning"
197
+ # "@md:btn-warning"
198
+ # "lg:btn-warning"
199
+ # "@lg:btn-warning"
200
+ warning: "btn-warning",
201
+ # "sm:btn-error"
202
+ # "@sm:btn-error"
203
+ # "md:btn-error"
204
+ # "@md:btn-error"
205
+ # "lg:btn-error"
206
+ # "@lg:btn-error"
207
+ error: "btn-error"
208
+ }
203
209
  ).freeze
204
210
  end
205
211
  end
data/lib/daisy_ui/card.rb CHANGED
@@ -32,24 +32,26 @@ module DaisyUI
32
32
  # "lg:image-full"
33
33
  # "@lg:image-full"
34
34
  image_full: "image-full",
35
- # "sm:card-border"
36
- # "@sm:card-border"
37
- # "md:card-border"
38
- # "@md:card-border"
39
- # "lg:card-border"
40
- # "@lg:card-border"
41
- border: "card-border",
42
- # "sm:card-border" "@sm:card-border"
43
- # "md:card-border" "@md:card-border"
44
- # "lg:card-border" "@lg:card-border"
45
- bordered: "card-border",
46
- # "sm:card-dash"
47
- # "@sm:card-dash"
48
- # "md:card-dash"
49
- # "@md:card-dash"
50
- # "lg:card-dash"
51
- # "@lg:card-dash"
52
- dash: "card-dash",
35
+ style: {
36
+ # "sm:card-border"
37
+ # "@sm:card-border"
38
+ # "md:card-border"
39
+ # "@md:card-border"
40
+ # "lg:card-border"
41
+ # "@lg:card-border"
42
+ border: "card-border",
43
+ # "sm:card-border" "@sm:card-border"
44
+ # "md:card-border" "@md:card-border"
45
+ # "lg:card-border" "@lg:card-border"
46
+ bordered: "card-border",
47
+ # "sm:card-dash"
48
+ # "@sm:card-dash"
49
+ # "md:card-dash"
50
+ # "@md:card-dash"
51
+ # "lg:card-dash"
52
+ # "@lg:card-dash"
53
+ dash: "card-dash"
54
+ },
53
55
  # "sm:card-side"
54
56
  # "@sm:card-side"
55
57
  # "md:card-side"
@@ -57,42 +59,43 @@ module DaisyUI
57
59
  # "lg:card-side"
58
60
  # "@lg:card-side"
59
61
  side: "card-side",
60
- # Sizes
61
- # "sm:card-xs"
62
- # "@sm:card-xs"
63
- # "md:card-xs"
64
- # "@md:card-xs"
65
- # "lg:card-xs"
66
- # "@lg:card-xs"
67
- xs: "card-xs",
68
- # "sm:card-sm"
69
- # "@sm:card-sm"
70
- # "md:card-sm"
71
- # "@md:card-sm"
72
- # "lg:card-sm"
73
- # "@lg:card-sm"
74
- sm: "card-sm",
75
- # "sm:card-md"
76
- # "@sm:card-md"
77
- # "md:card-md"
78
- # "@md:card-md"
79
- # "lg:card-md"
80
- # "@lg:card-md"
81
- md: "card-md",
82
- # "sm:card-lg"
83
- # "@sm:card-lg"
84
- # "md:card-lg"
85
- # "@md:card-lg"
86
- # "lg:card-lg"
87
- # "@lg:card-lg"
88
- lg: "card-lg",
89
- # "sm:card-xl"
90
- # "@sm:card-xl"
91
- # "md:card-xl"
92
- # "@md:card-xl"
93
- # "lg:card-xl"
94
- # "@lg:card-xl"
95
- xl: "card-xl",
62
+ size: {
63
+ # "sm:card-xs"
64
+ # "@sm:card-xs"
65
+ # "md:card-xs"
66
+ # "@md:card-xs"
67
+ # "lg:card-xs"
68
+ # "@lg:card-xs"
69
+ xs: "card-xs",
70
+ # "sm:card-sm"
71
+ # "@sm:card-sm"
72
+ # "md:card-sm"
73
+ # "@md:card-sm"
74
+ # "lg:card-sm"
75
+ # "@lg:card-sm"
76
+ sm: "card-sm",
77
+ # "sm:card-md"
78
+ # "@sm:card-md"
79
+ # "md:card-md"
80
+ # "@md:card-md"
81
+ # "lg:card-md"
82
+ # "@lg:card-md"
83
+ md: "card-md",
84
+ # "sm:card-lg"
85
+ # "@sm:card-lg"
86
+ # "md:card-lg"
87
+ # "@md:card-lg"
88
+ # "lg:card-lg"
89
+ # "@lg:card-lg"
90
+ lg: "card-lg",
91
+ # "sm:card-xl"
92
+ # "@sm:card-xl"
93
+ # "md:card-xl"
94
+ # "@md:card-xl"
95
+ # "lg:card-xl"
96
+ # "@lg:card-xl"
97
+ xl: "card-xl"
98
+ },
96
99
  **COLOR_MODIFIERS
97
100
  )
98
101
  end
@@ -14,38 +14,42 @@ module DaisyUI
14
14
  end
15
15
 
16
16
  register_modifiers(
17
- # "sm:carousel-start"
18
- # "@sm:carousel-start"
19
- # "md:carousel-start"
20
- # "@md:carousel-start"
21
- # "lg:carousel-start"
22
- # "@lg:carousel-start"
23
- start: "carousel-start",
24
- # "sm:carousel-center"
25
- # "@sm:carousel-center"
26
- # "md:carousel-center"
27
- # "@md:carousel-center"
28
- # "lg:carousel-center"
29
- # "@lg:carousel-center"
30
- center: "carousel-center",
31
- # "sm:carousel-end"
32
- # "@sm:carousel-end"
33
- # "md:carousel-end"
34
- # "@md:carousel-end"
35
- # "lg:carousel-end"
36
- # "@lg:carousel-end"
37
- end: "carousel-end",
38
- # "sm:carousel-vertical"
39
- # "@sm:carousel-vertical"
40
- # "md:carousel-vertical"
41
- # "@md:carousel-vertical"
42
- # "lg:carousel-vertical"
43
- # "@lg:carousel-vertical"
44
- vertical: "carousel-vertical",
45
- # "sm:carousel-horizontal" "@sm:carousel-horizontal"
46
- # "md:carousel-horizontal" "@md:carousel-horizontal"
47
- # "lg:carousel-horizontal" "@lg:carousel-horizontal"
48
- horizontal: "carousel-horizontal"
17
+ snap: {
18
+ # "sm:carousel-start"
19
+ # "@sm:carousel-start"
20
+ # "md:carousel-start"
21
+ # "@md:carousel-start"
22
+ # "lg:carousel-start"
23
+ # "@lg:carousel-start"
24
+ start: "carousel-start",
25
+ # "sm:carousel-center"
26
+ # "@sm:carousel-center"
27
+ # "md:carousel-center"
28
+ # "@md:carousel-center"
29
+ # "lg:carousel-center"
30
+ # "@lg:carousel-center"
31
+ center: "carousel-center",
32
+ # "sm:carousel-end"
33
+ # "@sm:carousel-end"
34
+ # "md:carousel-end"
35
+ # "@md:carousel-end"
36
+ # "lg:carousel-end"
37
+ # "@lg:carousel-end"
38
+ end: "carousel-end"
39
+ },
40
+ direction: {
41
+ # "sm:carousel-vertical"
42
+ # "@sm:carousel-vertical"
43
+ # "md:carousel-vertical"
44
+ # "@md:carousel-vertical"
45
+ # "lg:carousel-vertical"
46
+ # "@lg:carousel-vertical"
47
+ vertical: "carousel-vertical",
48
+ # "sm:carousel-horizontal" "@sm:carousel-horizontal"
49
+ # "md:carousel-horizontal" "@md:carousel-horizontal"
50
+ # "lg:carousel-horizontal" "@lg:carousel-horizontal"
51
+ horizontal: "carousel-horizontal"
52
+ }
49
53
  )
50
54
  end
51
55
  end
data/lib/daisy_ui/chat.rb CHANGED
@@ -87,21 +87,22 @@ module DaisyUI
87
87
  end
88
88
 
89
89
  register_modifiers(
90
- # Placement
91
- # "sm:chat-start"
92
- # "@sm:chat-start"
93
- # "md:chat-start"
94
- # "@md:chat-start"
95
- # "lg:chat-start"
96
- # "@lg:chat-start"
97
- start: "chat-start",
98
- # "sm:chat-end"
99
- # "@sm:chat-end"
100
- # "md:chat-end"
101
- # "@md:chat-end"
102
- # "lg:chat-end"
103
- # "@lg:chat-end"
104
- end: "chat-end"
90
+ placement: {
91
+ # "sm:chat-start"
92
+ # "@sm:chat-start"
93
+ # "md:chat-start"
94
+ # "@md:chat-start"
95
+ # "lg:chat-start"
96
+ # "@lg:chat-start"
97
+ start: "chat-start",
98
+ # "sm:chat-end"
99
+ # "@sm:chat-end"
100
+ # "md:chat-end"
101
+ # "@md:chat-end"
102
+ # "lg:chat-end"
103
+ # "@lg:chat-end"
104
+ end: "chat-end"
105
+ }
105
106
  )
106
107
 
107
108
  private