@dorsk/tsumikit 0.60.0 → 0.60.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/components/molecules/InputGroup.svelte +40 -37
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -524,7 +524,8 @@ clipped to the space between the adornments). Once a `Textarea` needs more
|
|
|
524
524
|
than one row (content, `rows`, or a dragged floor) the adornments move into a
|
|
525
525
|
bar under the text: every line then runs the full width with the normal
|
|
526
526
|
padding, the textarea's box (and its scrollbar) ends above the controls, and
|
|
527
|
-
the bar continues the field's border
|
|
527
|
+
the bar continues the field's border, the controls still flush against its
|
|
528
|
+
bottom and side edges. The textarea measures that in the
|
|
528
529
|
single-line layout, so the switch cannot flip back and forth; the single-line
|
|
529
530
|
look is untouched. Tab order is leading → field → trailing; the group shows
|
|
530
531
|
the focus ring around the whole unit.
|
|
@@ -134,82 +134,85 @@
|
|
|
134
134
|
width: 100%;
|
|
135
135
|
min-width: 0;
|
|
136
136
|
}
|
|
137
|
+
/* The adornments fill the field inside its 1px border, their outer corners
|
|
138
|
+
following the field's; inner corners go square. In the bar they hug the
|
|
139
|
+
bottom and side borders, so only the bottom-outer corner is rounded. */
|
|
137
140
|
.ig-adorn {
|
|
141
|
+
--ig-fuse-r: calc(var(--ig-radius) - 1px);
|
|
138
142
|
position: absolute;
|
|
139
|
-
|
|
143
|
+
top: 1px;
|
|
144
|
+
bottom: 1px;
|
|
140
145
|
z-index: 1;
|
|
141
146
|
display: flex;
|
|
142
147
|
align-items: center;
|
|
143
148
|
gap: var(--ig-inset);
|
|
144
|
-
height: var(--ig-h);
|
|
145
|
-
padding-inline: var(--ig-inset);
|
|
146
149
|
pointer-events: none;
|
|
147
150
|
}
|
|
148
|
-
.ig-adorn > :global(*) {
|
|
149
|
-
pointer-events: auto;
|
|
150
|
-
}
|
|
151
151
|
.ig-leading {
|
|
152
|
-
inset-inline-start: 0;
|
|
153
|
-
}
|
|
154
|
-
.ig-trailing {
|
|
155
|
-
inset-inline-end: 0;
|
|
156
|
-
}
|
|
157
|
-
.ig-center .ig-adorn {
|
|
158
|
-
top: 0;
|
|
159
|
-
height: auto;
|
|
160
|
-
}
|
|
161
|
-
/* Until the field grows into a bar, the adornments fill it inside its 1px
|
|
162
|
-
border, their outer corners following the field's; inner corners go square. */
|
|
163
|
-
.ig:not(.ig-bar) .ig-adorn {
|
|
164
|
-
--ig-fuse-r: calc(var(--ig-radius) - 1px);
|
|
165
|
-
top: 1px;
|
|
166
|
-
bottom: 1px;
|
|
167
|
-
height: auto;
|
|
168
|
-
padding-inline: 0;
|
|
169
|
-
}
|
|
170
|
-
.ig:not(.ig-bar) .ig-leading {
|
|
171
152
|
inset-inline-start: 1px;
|
|
172
153
|
}
|
|
173
|
-
.ig
|
|
154
|
+
.ig-trailing {
|
|
174
155
|
inset-inline-end: 1px;
|
|
175
156
|
}
|
|
176
|
-
.ig
|
|
157
|
+
.ig-adorn > :global(*) {
|
|
158
|
+
pointer-events: auto;
|
|
177
159
|
align-self: stretch;
|
|
178
|
-
height: auto;
|
|
179
|
-
min-height: 0;
|
|
180
160
|
--btn-size: 100%;
|
|
181
161
|
--btn-radius: 0;
|
|
182
162
|
--pop-trigger-radius: 0;
|
|
183
163
|
border-radius: 0;
|
|
184
164
|
}
|
|
185
|
-
|
|
165
|
+
/* `.ig` outranks an adornment's own fixed box (e.g. FileButton `box`). */
|
|
166
|
+
.ig .ig-adorn > :global(*) {
|
|
167
|
+
height: auto;
|
|
168
|
+
min-height: 0;
|
|
169
|
+
}
|
|
170
|
+
.ig .ig-adorn > :global(:is(.btn-box, .btn-square, .btn-icon, .icon-only)) {
|
|
186
171
|
width: auto;
|
|
187
172
|
min-width: 0;
|
|
188
173
|
aspect-ratio: 1;
|
|
189
174
|
}
|
|
190
|
-
.ig
|
|
175
|
+
.ig-leading > :global(:first-child) {
|
|
191
176
|
--btn-radius: var(--ig-fuse-r) 0 0 var(--ig-fuse-r);
|
|
192
177
|
border-radius: var(--ig-fuse-r) 0 0 var(--ig-fuse-r);
|
|
193
178
|
}
|
|
194
|
-
.ig
|
|
179
|
+
.ig-trailing > :global(:last-child) {
|
|
195
180
|
--btn-radius: 0 var(--ig-fuse-r) var(--ig-fuse-r) 0;
|
|
196
181
|
border-radius: 0 var(--ig-fuse-r) var(--ig-fuse-r) 0;
|
|
197
182
|
}
|
|
198
|
-
.ig
|
|
183
|
+
.ig-adorn :global(.split-main) {
|
|
199
184
|
--btn-radius: 0;
|
|
200
185
|
}
|
|
201
|
-
.ig
|
|
186
|
+
.ig-adorn :global(.split-caret) {
|
|
202
187
|
--pop-trigger-radius: 0;
|
|
203
188
|
}
|
|
204
|
-
.ig
|
|
189
|
+
.ig-adorn :global(.split-caret .pop-trigger) {
|
|
205
190
|
height: 100%;
|
|
206
191
|
}
|
|
207
|
-
.ig
|
|
192
|
+
.ig-leading > :global(:first-child .split-main) {
|
|
208
193
|
--btn-radius: var(--ig-fuse-r) 0 0 var(--ig-fuse-r);
|
|
209
194
|
}
|
|
210
|
-
.ig
|
|
195
|
+
.ig-trailing > :global(:last-child .split-caret) {
|
|
211
196
|
--pop-trigger-radius: 0 var(--ig-fuse-r) var(--ig-fuse-r) 0;
|
|
212
197
|
}
|
|
198
|
+
.ig-bar .ig-adorn {
|
|
199
|
+
top: auto;
|
|
200
|
+
height: calc(var(--ig-h) - 1px);
|
|
201
|
+
}
|
|
202
|
+
.ig-bar .ig-leading > :global(:first-child) {
|
|
203
|
+
--btn-radius: 0 0 0 var(--ig-fuse-r);
|
|
204
|
+
border-radius: 0 0 0 var(--ig-fuse-r);
|
|
205
|
+
}
|
|
206
|
+
.ig-bar .ig-trailing > :global(:last-child) {
|
|
207
|
+
--btn-radius: 0 0 var(--ig-fuse-r) 0;
|
|
208
|
+
border-radius: 0 0 var(--ig-fuse-r) 0;
|
|
209
|
+
}
|
|
210
|
+
.ig-bar .ig-leading > :global(:first-child .split-main) {
|
|
211
|
+
--btn-radius: 0 0 0 var(--ig-fuse-r);
|
|
212
|
+
}
|
|
213
|
+
.ig-bar .ig-trailing > :global(:last-child .split-caret) {
|
|
214
|
+
--pop-trigger-radius: 0 0 var(--ig-fuse-r) 0;
|
|
215
|
+
}
|
|
213
216
|
.ig-bar .ig-field {
|
|
214
217
|
padding-bottom: var(--ig-h);
|
|
215
218
|
}
|
package/package.json
CHANGED