plutonium 0.23.1 → 0.23.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  /**
2
- * Slim Select with Tailwind CSS
3
- * Converted to use Tailwind design tokens and dark mode support
2
+ * Slim Select with Tailwind CSS - Matched to Form Theme
3
+ * Updated to match the Plutonium form input styling
4
4
  */
5
5
 
6
6
  /* Animation keyframes */
@@ -33,9 +33,9 @@
33
33
  @apply !hidden;
34
34
  }
35
35
 
36
- /* Main container */
36
+ /* Main container - Updated to match form input theme */
37
37
  .ss-main {
38
- @apply flex flex-row relative select-none w-full min-h-8 p-1 cursor-pointer border border-gray-300 rounded bg-white text-gray-700 outline-none transition-colors duration-200 overflow-hidden focus:ring-2 focus:ring-primary-500 focus:border-primary-500 dark:bg-gray-800 dark:border-gray-600 dark:text-gray-200;
38
+ @apply flex flex-row relative select-none w-full min-h-8 p-2 cursor-pointer border border-gray-300 rounded-md shadow-sm font-medium text-sm bg-white text-gray-700 outline-none transition-colors duration-200 overflow-hidden focus:ring-2 focus:ring-primary-500 focus:border-primary-500 dark:bg-gray-700 dark:border-gray-600 dark:text-white dark:placeholder-gray-400;
39
39
  }
40
40
 
41
41
  .ss-main.ss-disabled {
@@ -60,7 +60,7 @@
60
60
  }
61
61
 
62
62
  .ss-main .ss-values .ss-placeholder {
63
- @apply flex px-2 py-1 my-auto leading-none items-center w-full text-gray-500 overflow-hidden text-ellipsis whitespace-nowrap dark:text-gray-400;
63
+ @apply flex px-0 py-0 my-auto leading-none items-center w-full text-gray-400 overflow-hidden text-ellipsis whitespace-nowrap dark:text-gray-400;
64
64
  }
65
65
 
66
66
  .ss-main .ss-values .ss-max {
@@ -68,7 +68,7 @@
68
68
  }
69
69
 
70
70
  .ss-main .ss-values .ss-single {
71
- @apply flex my-auto ml-1;
71
+ @apply flex my-auto;
72
72
  }
73
73
 
74
74
  .ss-main .ss-values .ss-value {
@@ -100,7 +100,7 @@
100
100
  stroke-linejoin: round;
101
101
  }
102
102
 
103
- /* Deselect button */
103
+ /* Deselect button - Updated colors to match theme */
104
104
  .ss-main .ss-deselect {
105
105
  @apply flex-none flex items-center justify-center w-fit h-auto px-2;
106
106
  }
@@ -110,27 +110,27 @@
110
110
  }
111
111
 
112
112
  .ss-main .ss-deselect svg path {
113
- @apply fill-none stroke-gray-700 dark:stroke-gray-300;
113
+ @apply fill-none stroke-gray-700 dark:stroke-white;
114
114
  stroke-width: 20;
115
115
  stroke-linecap: round;
116
116
  stroke-linejoin: round;
117
117
  }
118
118
 
119
- /* Arrow */
119
+ /* Arrow - Updated colors */
120
120
  .ss-main .ss-arrow {
121
121
  @apply flex-none flex items-center justify-end w-3 h-3 mx-2 my-auto;
122
122
  }
123
123
 
124
124
  .ss-main .ss-arrow path {
125
- @apply fill-none stroke-gray-700 transition-transform duration-200 dark:stroke-gray-300;
125
+ @apply fill-none stroke-gray-700 transition-transform duration-200 dark:stroke-white;
126
126
  stroke-width: 18;
127
127
  stroke-linecap: round;
128
128
  stroke-linejoin: round;
129
129
  }
130
130
 
131
- /* Content container */
131
+ /* Content container - Updated to match shadow and borders */
132
132
  .ss-content {
133
- @apply absolute flex h-auto flex-col w-auto max-h-72 border border-gray-300 bg-white shadow-lg transition-all duration-200 opacity-0 z-[10000] overflow-hidden dark:bg-gray-800 dark:border-gray-600;
133
+ @apply absolute flex h-auto flex-col w-auto max-h-72 border border-gray-300 bg-white shadow-sm transition-all duration-200 opacity-0 z-[10000] overflow-hidden dark:bg-gray-700 dark:border-gray-600;
134
134
  transform: scaleY(0);
135
135
  transform-origin: top;
136
136
  }
@@ -144,31 +144,31 @@
144
144
  }
145
145
 
146
146
  .ss-content.ss-open-above {
147
- @apply flex-col-reverse opacity-100 rounded-t;
147
+ @apply flex-col-reverse opacity-100 rounded-t-md;
148
148
  transform: scaleY(1);
149
149
  transform-origin: bottom;
150
150
  }
151
151
 
152
152
  .ss-content.ss-open-below {
153
- @apply opacity-100 rounded-b;
153
+ @apply opacity-100 rounded-b-md;
154
154
  transform: scaleY(1);
155
155
  transform-origin: top;
156
156
  }
157
157
 
158
- /* Search */
158
+ /* Search - Updated to match form input styling */
159
159
  .ss-content .ss-search {
160
160
  @apply flex-none flex flex-row p-2;
161
161
  }
162
162
 
163
163
  .ss-content .ss-search input {
164
- @apply inline-flex flex-auto w-full min-w-0 p-2 m-0 border border-gray-300 rounded bg-white outline-none text-left placeholder:text-gray-500 focus:ring-2 focus:ring-primary-500 focus:border-primary-500 dark:bg-gray-700 dark:border-gray-600 dark:text-white dark:placeholder:text-gray-400;
164
+ @apply inline-flex flex-auto w-full min-w-0 p-2 m-0 border border-gray-300 rounded-md shadow-sm font-medium text-sm bg-white outline-none text-left placeholder:text-gray-400 focus:ring-2 focus:ring-primary-500 focus:border-primary-500 dark:bg-gray-700 dark:border-gray-600 dark:text-white dark:placeholder-gray-400;
165
165
  box-sizing: border-box;
166
166
  font-size: inherit;
167
167
  line-height: inherit;
168
168
  }
169
169
 
170
170
  .ss-content .ss-search .ss-addable {
171
- @apply inline-flex justify-center items-center cursor-pointer flex-none h-auto ml-2 border border-gray-300 rounded dark:border-gray-600;
171
+ @apply inline-flex justify-center items-center cursor-pointer flex-none h-auto ml-2 border border-gray-300 rounded-md shadow-sm dark:border-gray-600;
172
172
  }
173
173
 
174
174
  .ss-content .ss-search .ss-addable svg {
@@ -176,7 +176,7 @@
176
176
  }
177
177
 
178
178
  .ss-content .ss-search .ss-addable svg path {
179
- @apply fill-none stroke-gray-700 dark:stroke-gray-300;
179
+ @apply fill-none stroke-gray-700 dark:stroke-white;
180
180
  stroke-width: 18;
181
181
  stroke-linecap: round;
182
182
  stroke-linejoin: round;
@@ -192,20 +192,20 @@
192
192
  }
193
193
 
194
194
  .ss-content .ss-list .ss-searching {
195
- @apply text-gray-700 p-2 dark:text-gray-200;
195
+ @apply text-gray-700 p-2 dark:text-white;
196
196
  }
197
197
 
198
198
  .ss-content .ss-list .ss-optgroup.ss-close .ss-option {
199
199
  @apply !hidden;
200
200
  }
201
201
 
202
- /* Option groups */
202
+ /* Option groups - Updated colors */
203
203
  .ss-content .ss-list .ss-optgroup .ss-optgroup-label {
204
- @apply flex flex-row items-center justify-between p-2 bg-gray-50 dark:bg-gray-700;
204
+ @apply flex flex-row items-center justify-between p-2 bg-gray-50 dark:bg-gray-600;
205
205
  }
206
206
 
207
207
  .ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-label-text {
208
- @apply flex-auto font-bold text-gray-700 dark:text-gray-200;
208
+ @apply flex-auto font-bold text-gray-700 dark:text-white;
209
209
  }
210
210
 
211
211
  .ss-content .ss-list .ss-optgroup .ss-optgroup-label:has(.ss-arrow) {
@@ -255,7 +255,7 @@
255
255
  }
256
256
 
257
257
  .ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow path {
258
- @apply fill-none stroke-gray-700 transition-transform duration-200 dark:stroke-gray-300;
258
+ @apply fill-none stroke-gray-700 transition-transform duration-200 dark:stroke-white;
259
259
  stroke-width: 18;
260
260
  stroke-linecap: round;
261
261
  stroke-linejoin: round;
@@ -265,9 +265,9 @@
265
265
  @apply p-1 pl-6;
266
266
  }
267
267
 
268
- /* Options */
268
+ /* Options - Updated text colors to match theme */
269
269
  .ss-content .ss-list .ss-option {
270
- @apply block p-2 whitespace-normal text-gray-700 cursor-pointer select-none hover:bg-primary-500 hover:text-white dark:text-gray-200 dark:hover:bg-primary-500 dark:hover:text-white;
270
+ @apply block p-2 whitespace-normal text-gray-700 cursor-pointer select-none hover:bg-primary-500 hover:text-white dark:text-white dark:hover:bg-primary-500 dark:hover:text-white;
271
271
  min-height: 0;
272
272
  }
273
273
 
@@ -291,3 +291,20 @@
291
291
  .ss-content .ss-list .ss-option .ss-search-highlight {
292
292
  @apply inline-block bg-yellow-200 dark:bg-yellow-300;
293
293
  }
294
+
295
+ /* Additional state classes to match form validation states */
296
+ .ss-main.ss-invalid {
297
+ @apply bg-red-50 border-red-500 dark:border-red-500 text-red-900 dark:text-red-500 focus:ring-red-500 focus:border-red-500;
298
+ }
299
+
300
+ .ss-main.ss-invalid .ss-values .ss-placeholder {
301
+ @apply text-red-700 dark:text-red-500;
302
+ }
303
+
304
+ .ss-main.ss-valid {
305
+ @apply bg-green-50 border-green-500 dark:border-green-500 text-green-900 dark:text-green-400 focus:ring-green-500 focus:border-green-500;
306
+ }
307
+
308
+ .ss-main.ss-valid .ss-values .ss-placeholder {
309
+ @apply text-green-700 dark:text-green-500;
310
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: plutonium
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.23.1
4
+ version: 0.23.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Froelich