@jackcrane/ui 0.1.24 → 0.1.26

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.
@@ -8,8 +8,10 @@
8
8
  * @param {string} props.variant
9
9
  * @param {string} props.size
10
10
  * @param {boolean} props.disabled
11
+ * @param {string} props.label
12
+ * @param {string} props.id
11
13
  */
12
- export default function SelectInput({ options, value, onValueChange, variant, size, disabled, chamfer, loading, }: {
14
+ export default function SelectInput({ options, value, onValueChange, variant, size, disabled, chamfer, loading, label, id, }: {
13
15
  options: Array<{
14
16
  value: string;
15
17
  label: string;
@@ -20,4 +22,6 @@ export default function SelectInput({ options, value, onValueChange, variant, si
20
22
  variant: string;
21
23
  size: string;
22
24
  disabled: boolean;
25
+ label: string;
26
+ id: string;
23
27
  }): import("react/jsx-runtime").JSX.Element;
package/dist/jcui.cjs.js CHANGED
@@ -217,7 +217,7 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
217
217
  transform: rotate(360deg);
218
218
  }
219
219
  }
220
- ._card_15n7t_1 {
220
+ ._card_1b88d_1 {
221
221
  border-width: var(--border-thickness);
222
222
  border-style: solid;
223
223
  font-size: 1rem;
@@ -226,30 +226,30 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
226
226
  display: flex;
227
227
  flex-direction: column;
228
228
  }
229
- ._pageBackground_15n7t_11 {
229
+ ._pageBackground_1b88d_11 {
230
230
  --card-bg: var(--body-bg);
231
231
  --button-bg: var(--body-bg);
232
232
  --card-color: var(--body-color);
233
233
  background-color: var(--body-bg);
234
234
  }
235
- ._card_15n7t_1 ._title_15n7t_18 {
235
+ ._card_1b88d_1 ._title_1b88d_18 {
236
236
  font-size: 1.25rem;
237
237
  padding: 0.5rem 1rem;
238
238
  border-bottom: var(--border-thickness) solid var(--border-color);
239
239
  background-color: var(--card-bg);
240
240
  }
241
- ._card_15n7t_1 ._titleCollapsed_15n7t_25 {
241
+ ._card_1b88d_1 ._titleCollapsed_1b88d_25 {
242
242
  border-bottom: 0;
243
243
  }
244
- ._card_15n7t_1 ._titleContent_15n7t_29 {
244
+ ._card_1b88d_1 ._titleContent_1b88d_29 {
245
245
  display: flex;
246
246
  align-items: center;
247
247
  gap: 0.5rem;
248
248
  }
249
- ._card_15n7t_1 ._titleInteractive_15n7t_35 {
249
+ ._card_1b88d_1 ._titleInteractive_1b88d_35 {
250
250
  cursor: pointer;
251
251
  }
252
- ._card_15n7t_1 ._chevron_15n7t_39 {
252
+ ._card_1b88d_1 ._chevron_1b88d_39 {
253
253
  margin-left: auto;
254
254
  width: 0.5rem;
255
255
  height: 0.5rem;
@@ -259,94 +259,95 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
259
259
  flex-shrink: 0;
260
260
  cursor: inherit;
261
261
  }
262
- ._card_15n7t_1 ._chevronExpanded_15n7t_50 {
262
+ ._card_1b88d_1 ._chevronExpanded_1b88d_50 {
263
263
  transform: rotate(45deg);
264
264
  }
265
- ._card_15n7t_1 ._chevronCollapsed_15n7t_54 {
265
+ ._card_1b88d_1 ._chevronCollapsed_1b88d_54 {
266
266
  transform: rotate(-45deg);
267
267
  }
268
- ._card_15n7t_1 ._titleInteractive_15n7t_35:hover ._chevronExpanded_15n7t_50,
269
- ._card_15n7t_1 ._titleInteractive_15n7t_35:focus-visible ._chevronExpanded_15n7t_50 {
268
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:hover ._chevronExpanded_1b88d_50,
269
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:focus-visible ._chevronExpanded_1b88d_50 {
270
270
  transform: rotate(30deg);
271
271
  }
272
- ._card_15n7t_1 ._titleInteractive_15n7t_35:hover ._chevronCollapsed_15n7t_54,
273
- ._card_15n7t_1 ._titleInteractive_15n7t_35:focus-visible ._chevronCollapsed_15n7t_54 {
272
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:hover ._chevronCollapsed_1b88d_54,
273
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:focus-visible ._chevronCollapsed_1b88d_54 {
274
274
  transform: rotate(-30deg);
275
275
  }
276
- ._card_15n7t_1 ._content_15n7t_68 {
276
+ ._card_1b88d_1 ._content_1b88d_68 {
277
277
  display: grid;
278
278
  grid-template-rows: 1fr;
279
279
  transition:
280
280
  grid-template-rows 0.2s ease,
281
281
  opacity 0.2s ease;
282
+ flex: 1;
282
283
  }
283
- ._card_15n7t_1 ._contentInner_15n7t_76 {
284
+ ._card_1b88d_1 ._contentInner_1b88d_77 {
284
285
  overflow: hidden;
285
286
  min-height: 0;
286
287
  display: flex;
287
288
  flex-direction: column;
288
289
  }
289
- ._card_15n7t_1 ._contentCollapsed_15n7t_83 {
290
+ ._card_1b88d_1 ._contentCollapsed_1b88d_84 {
290
291
  grid-template-rows: 0fr;
291
292
  opacity: 0;
292
293
  }
293
- ._card_15n7t_1 ._body_15n7t_88 {
294
+ ._card_1b88d_1 ._body_1b88d_89 {
294
295
  padding: 0.5rem 1rem;
295
296
  width: 100%;
296
297
  }
297
- ._card_15n7t_1 ._body_15n7t_88 > hr {
298
+ ._card_1b88d_1 ._body_1b88d_89 > hr {
298
299
  margin: 1rem 0;
299
300
  transform: translateX(-16px);
300
301
  width: calc(100% + 32px);
301
302
  }
302
- ._card_15n7t_1 ._footer_15n7t_99 {
303
+ ._card_1b88d_1 ._footer_1b88d_100 {
303
304
  border-top: var(--border-thickness) solid var(--border-color);
304
305
  flex: 1;
305
306
  background-color: var(--card-bg);
306
307
  padding: 0.5rem 1rem;
307
308
  }
308
- ._large_15n7t_106 ._body_15n7t_88,
309
- ._large_15n7t_106 ._title_15n7t_18 {
309
+ ._large_1b88d_107 ._body_1b88d_89,
310
+ ._large_1b88d_107 ._title_1b88d_18 {
310
311
  font-size: 1.25rem;
311
312
  padding: 0.75rem 1.25rem;
312
313
  }
313
- ._small_15n7t_112 ._body_15n7t_88,
314
- ._small_15n7t_112 ._title_15n7t_18 {
314
+ ._small_1b88d_113 ._body_1b88d_89,
315
+ ._small_1b88d_113 ._title_1b88d_18 {
315
316
  font-size: 0.75rem;
316
317
  padding: 0.25rem 0.5rem;
317
318
  }
318
319
  /* Variants */
319
- ._primary_15n7t_120 {
320
+ ._primary_1b88d_121 {
320
321
  --card-bg: var(--primary-color-100);
321
322
  --border-color: var(--primary-color-300);
322
323
  --border-accent-color: var(--primary-color-600);
323
324
  --card-color: var(--primary-color-800);
324
325
  }
325
- ._success_15n7t_127 {
326
+ ._success_1b88d_128 {
326
327
  --card-bg: var(--success-color-100);
327
328
  --border-color: var(--success-color-300);
328
329
  --border-accent-color: var(--success-color-600);
329
330
  --card-color: var(--success-color-800);
330
331
  }
331
- ._warning_15n7t_134 {
332
+ ._warning_1b88d_135 {
332
333
  --card-bg: var(--warning-color-100);
333
334
  --border-color: var(--warning-color-300);
334
335
  --border-accent-color: var(--warning-color-600);
335
336
  --card-color: var(--warning-color-800);
336
337
  }
337
- ._danger_15n7t_141 {
338
+ ._danger_1b88d_142 {
338
339
  --card-bg: var(--danger-color-100);
339
340
  --border-color: var(--danger-color-300);
340
341
  --border-accent-color: var(--danger-color-600);
341
342
  --card-color: var(--danger-color-800);
342
343
  }
343
- ._info_15n7t_148 {
344
+ ._info_1b88d_149 {
344
345
  --card-bg: var(--info-color-100);
345
346
  --border-color: var(--info-color-300);
346
347
  --border-accent-color: var(--info-color-600);
347
348
  --card-color: var(--info-color-800);
348
349
  }
349
- ._secondary_15n7t_155 {
350
+ ._secondary_1b88d_156 {
350
351
  --card-bg: var(--secondary-color-100);
351
352
  --border-color: var(--secondary-color-300);
352
353
  --border-accent-color: var(--secondary-color-600);
@@ -1045,7 +1046,7 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
1045
1046
  inherits: true;
1046
1047
  initial-value: transparent;
1047
1048
  }
1048
- ._trigger_dqtrb_7 {
1049
+ ._trigger_1m0ut_7 {
1049
1050
  display: inline-flex;
1050
1051
  align-items: center;
1051
1052
  justify-content: space-between;
@@ -1057,104 +1058,111 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
1057
1058
  border: var(--border-thickness) solid var(--border-color);
1058
1059
  cursor: pointer;
1059
1060
  }
1060
- ._trigger_dqtrb_7:hover {
1061
+ ._trigger_1m0ut_7:hover {
1061
1062
  --select-bg: var(--secondary-color-100);
1062
1063
  }
1063
- ._trigger_dqtrb_7:active {
1064
+ ._trigger_1m0ut_7:active {
1064
1065
  --select-bg: var(--secondary-color-200);
1065
1066
  }
1066
- ._large_dqtrb_31 {
1067
+ ._large_1m0ut_31 {
1067
1068
  font-size: 1.25rem;
1068
1069
  padding: 0.75rem 1.25rem;
1069
1070
  }
1070
- ._small_dqtrb_36 {
1071
+ ._small_1m0ut_36 {
1071
1072
  font-size: 0.75rem;
1072
1073
  padding: 0.25rem 0.5rem;
1073
1074
  }
1074
- ._disabled_dqtrb_41 {
1075
+ ._disabled_1m0ut_41 {
1075
1076
  opacity: 0.5;
1076
1077
  cursor: not-allowed;
1077
1078
  }
1078
- ._icon_dqtrb_46 {
1079
+ ._icon_1m0ut_46 {
1079
1080
  opacity: 0.7;
1080
1081
  }
1081
1082
  /* Dropdown */
1082
- ._content_dqtrb_52 {
1083
+ ._content_1m0ut_52 {
1083
1084
  background-color: var(--body-bg);
1084
1085
  border: var(--border-thickness) solid var(--border-color);
1085
1086
  z-index: 110;
1086
1087
  }
1087
- ._item_dqtrb_58 {
1088
+ ._item_1m0ut_58 {
1088
1089
  padding: 0.4rem 0.6rem;
1089
1090
  font-size: 0.875rem;
1090
1091
  cursor: pointer;
1091
1092
  outline: none;
1092
1093
  }
1093
- ._item_dqtrb_58[data-highlighted] {
1094
+ ._item_1m0ut_58[data-highlighted] {
1094
1095
  background-color: var(--secondary-color-100);
1095
1096
  }
1096
- ._item_dqtrb_58[data-state="checked"] {
1097
+ ._item_1m0ut_58[data-state="checked"] {
1097
1098
  background-color: var(--secondary-color-200);
1098
1099
  }
1099
- ._item_dqtrb_58[data-disabled] {
1100
+ ._item_1m0ut_58[data-disabled] {
1100
1101
  opacity: 0.4;
1101
1102
  pointer-events: none;
1102
1103
  }
1103
1104
  /* Variants (match Button) */
1104
- ._primary_dqtrb_80 {
1105
+ ._primary_1m0ut_80 {
1105
1106
  --select-bg: var(--primary-color-100);
1106
1107
  --border-color: var(--primary-color-300);
1107
1108
  --button-color: var(--primary-color-800);
1108
1109
  --border-accent-color: var(--primary-color-600);
1109
1110
  }
1110
- ._primary_dqtrb_80:hover {
1111
+ ._primary_1m0ut_80:hover {
1111
1112
  --select-bg: var(--primary-color-200);
1112
1113
  }
1113
- ._success_dqtrb_90 {
1114
+ ._success_1m0ut_90 {
1114
1115
  --select-bg: var(--success-color-100);
1115
1116
  --border-color: var(--success-color-300);
1116
1117
  --button-color: var(--success-color-800);
1117
1118
  --border-accent-color: var(--success-color-600);
1118
1119
  }
1119
- ._success_dqtrb_90:hover {
1120
+ ._success_1m0ut_90:hover {
1120
1121
  --select-bg: var(--success-color-200);
1121
1122
  }
1122
- ._warning_dqtrb_100 {
1123
+ ._warning_1m0ut_100 {
1123
1124
  --select-bg: var(--warning-color-100);
1124
1125
  --border-color: var(--warning-color-300);
1125
1126
  --button-color: var(--warning-color-800);
1126
1127
  --border-accent-color: var(--warning-color-600);
1127
1128
  }
1128
- ._warning_dqtrb_100:hover {
1129
+ ._warning_1m0ut_100:hover {
1129
1130
  --select-bg: var(--warning-color-200);
1130
1131
  }
1131
- ._danger_dqtrb_110 {
1132
+ ._danger_1m0ut_110 {
1132
1133
  --select-bg: var(--danger-color-100);
1133
1134
  --border-color: var(--danger-color-300);
1134
1135
  --button-color: var(--danger-color-800);
1135
1136
  --border-accent-color: var(--danger-color-600);
1136
1137
  }
1137
- ._danger_dqtrb_110:hover {
1138
+ ._danger_1m0ut_110:hover {
1138
1139
  --select-bg: var(--danger-color-200);
1139
1140
  }
1140
- ._info_dqtrb_120 {
1141
+ ._info_1m0ut_120 {
1141
1142
  --select-bg: var(--info-color-100);
1142
1143
  --border-color: var(--info-color-300);
1143
1144
  --button-color: var(--info-color-800);
1144
1145
  --border-accent-color: var(--info-color-600);
1145
1146
  }
1146
- ._info_dqtrb_120:hover {
1147
+ ._info_1m0ut_120:hover {
1147
1148
  --select-bg: var(--info-color-200);
1148
1149
  }
1149
- ._secondary_dqtrb_130 {
1150
+ ._secondary_1m0ut_130 {
1150
1151
  --select-bg: var(--secondary-color-100);
1151
1152
  --border-color: var(--secondary-color-300);
1152
1153
  --button-color: var(--secondary-color-800);
1153
1154
  --border-accent-color: var(--secondary-color-600);
1154
1155
  }
1155
- ._secondary_dqtrb_130:hover {
1156
+ ._secondary_1m0ut_130:hover {
1156
1157
  --select-bg: var(--secondary-color-200);
1157
1158
  }
1159
+ ._field_1m0ut_140 {
1160
+ display: flex;
1161
+ flex-direction: column;
1162
+ gap: 0.5rem;
1163
+ }
1164
+ ._label_1m0ut_146 {
1165
+ }
1158
1166
  @property --segment-bg {
1159
1167
  syntax: "<color>";
1160
1168
  inherits: true;
@@ -2677,28 +2685,28 @@ function requireClassnames() {
2677
2685
  }
2678
2686
  var classnamesExports = requireClassnames();
2679
2687
  const classNames = /* @__PURE__ */ getDefaultExportFromCjs(classnamesExports);
2680
- const card = "_card_15n7t_1";
2681
- const pageBackground$3 = "_pageBackground_15n7t_11";
2682
- const title$1 = "_title_15n7t_18";
2683
- const titleCollapsed = "_titleCollapsed_15n7t_25";
2684
- const titleContent = "_titleContent_15n7t_29";
2685
- const titleInteractive = "_titleInteractive_15n7t_35";
2686
- const chevron = "_chevron_15n7t_39";
2687
- const chevronExpanded = "_chevronExpanded_15n7t_50";
2688
- const chevronCollapsed = "_chevronCollapsed_15n7t_54";
2689
- const content$4 = "_content_15n7t_68";
2690
- const contentInner = "_contentInner_15n7t_76";
2691
- const contentCollapsed = "_contentCollapsed_15n7t_83";
2692
- const body$1 = "_body_15n7t_88";
2693
- const footer$1 = "_footer_15n7t_99";
2694
- const large$7 = "_large_15n7t_106";
2695
- const small$7 = "_small_15n7t_112";
2696
- const primary$9 = "_primary_15n7t_120";
2697
- const success$9 = "_success_15n7t_127";
2698
- const warning$9 = "_warning_15n7t_134";
2699
- const danger$9 = "_danger_15n7t_141";
2700
- const info$9 = "_info_15n7t_148";
2701
- const secondary$9 = "_secondary_15n7t_155";
2688
+ const card = "_card_1b88d_1";
2689
+ const pageBackground$3 = "_pageBackground_1b88d_11";
2690
+ const title$1 = "_title_1b88d_18";
2691
+ const titleCollapsed = "_titleCollapsed_1b88d_25";
2692
+ const titleContent = "_titleContent_1b88d_29";
2693
+ const titleInteractive = "_titleInteractive_1b88d_35";
2694
+ const chevron = "_chevron_1b88d_39";
2695
+ const chevronExpanded = "_chevronExpanded_1b88d_50";
2696
+ const chevronCollapsed = "_chevronCollapsed_1b88d_54";
2697
+ const content$4 = "_content_1b88d_68";
2698
+ const contentInner = "_contentInner_1b88d_77";
2699
+ const contentCollapsed = "_contentCollapsed_1b88d_84";
2700
+ const body$1 = "_body_1b88d_89";
2701
+ const footer$1 = "_footer_1b88d_100";
2702
+ const large$7 = "_large_1b88d_107";
2703
+ const small$7 = "_small_1b88d_113";
2704
+ const primary$9 = "_primary_1b88d_121";
2705
+ const success$9 = "_success_1b88d_128";
2706
+ const warning$9 = "_warning_1b88d_135";
2707
+ const danger$9 = "_danger_1b88d_142";
2708
+ const info$9 = "_info_1b88d_149";
2709
+ const secondary$9 = "_secondary_1b88d_156";
2702
2710
  const styles$b = {
2703
2711
  card,
2704
2712
  pageBackground: pageBackground$3,
@@ -3545,7 +3553,7 @@ const indicator$1 = "_indicator_178xv_76";
3545
3553
  const large$6 = "_large_178xv_94";
3546
3554
  const small$6 = "_small_178xv_99";
3547
3555
  const disabledBox = "_disabledBox_178xv_104";
3548
- const label$3 = "_label_178xv_109";
3556
+ const label$4 = "_label_178xv_109";
3549
3557
  const primary$8 = "_primary_178xv_117";
3550
3558
  const secondary$8 = "_secondary_178xv_126";
3551
3559
  const success$8 = "_success_178xv_135";
@@ -3560,7 +3568,7 @@ const styles$a = {
3560
3568
  large: large$6,
3561
3569
  small: small$6,
3562
3570
  disabledBox,
3563
- label: label$3,
3571
+ label: label$4,
3564
3572
  primary: primary$8,
3565
3573
  secondary: secondary$8,
3566
3574
  success: success$8,
@@ -12050,7 +12058,7 @@ function isBigIntType(type) {
12050
12058
  const reindex = /* @__PURE__ */ Symbol("reindex");
12051
12059
  function valueof(data, value, type) {
12052
12060
  const valueType = typeof value;
12053
- return valueType === "string" ? isArrowTable(data) ? maybeTypedArrowify(data.getChild(value), type) : maybeTypedMap(data, field$1(value), type) : valueType === "function" ? maybeTypedMap(data, value, type) : valueType === "number" || value instanceof Date || valueType === "boolean" ? map(data, constant(value), type) : typeof value?.transform === "function" ? maybeTypedArrayify(value.transform(data), type) : maybeTake(maybeTypedArrayify(value, type), data?.[reindex]);
12061
+ return valueType === "string" ? isArrowTable(data) ? maybeTypedArrowify(data.getChild(value), type) : maybeTypedMap(data, field$2(value), type) : valueType === "function" ? maybeTypedMap(data, value, type) : valueType === "number" || value instanceof Date || valueType === "boolean" ? map(data, constant(value), type) : typeof value?.transform === "function" ? maybeTypedArrayify(value.transform(data), type) : maybeTake(maybeTypedArrayify(value, type), data?.[reindex]);
12054
12062
  }
12055
12063
  function maybeTake(values2, index2) {
12056
12064
  return values2 != null && index2 ? take(values2, index2) : values2;
@@ -12068,7 +12076,7 @@ function vectorToArray(vector) {
12068
12076
  return vector.nullCount ? vector.toJSON() : vector.toArray();
12069
12077
  }
12070
12078
  const singleton = [null];
12071
- const field$1 = (name) => (d2) => {
12079
+ const field$2 = (name) => (d2) => {
12072
12080
  const v2 = d2[name];
12073
12081
  return v2 === void 0 && d2.type === "Feature" ? d2.properties?.[name] : v2;
12074
12082
  };
@@ -17037,7 +17045,7 @@ function maybeOrder(order, offset2, ky2) {
17037
17045
  case "inside-out":
17038
17046
  return orderInsideOut(compare);
17039
17047
  }
17040
- return orderAccessor(field$1(order));
17048
+ return orderAccessor(field$2(order));
17041
17049
  }
17042
17050
  if (typeof order === "function") return (order.length === 1 ? orderAccessor : orderComparator)(order);
17043
17051
  if (isArray(order)) return orderGiven(order);
@@ -19867,8 +19875,8 @@ const warning$7 = "_warning_1ymvl_72";
19867
19875
  const danger$7 = "_danger_1ymvl_80";
19868
19876
  const info$7 = "_info_1ymvl_88";
19869
19877
  const secondary$7 = "_secondary_1ymvl_97";
19870
- const field = "_field_1ymvl_106";
19871
- const label$2 = "_label_1ymvl_112";
19878
+ const field$1 = "_field_1ymvl_106";
19879
+ const label$3 = "_label_1ymvl_112";
19872
19880
  const styles$8 = {
19873
19881
  input: input$1,
19874
19882
  pageBackground: pageBackground$2,
@@ -19881,8 +19889,8 @@ const styles$8 = {
19881
19889
  danger: danger$7,
19882
19890
  info: info$7,
19883
19891
  secondary: secondary$7,
19884
- field,
19885
- label: label$2
19892
+ field: field$1,
19893
+ label: label$3
19886
19894
  };
19887
19895
  function Input({
19888
19896
  variant,
@@ -19930,7 +19938,7 @@ function Input({
19930
19938
  ] });
19931
19939
  }
19932
19940
  const root$2 = "_root_i158m_7";
19933
- const label$1 = "_label_i158m_14";
19941
+ const label$2 = "_label_i158m_14";
19934
19942
  const dropzone = "_dropzone_i158m_18";
19935
19943
  const pageBackground$1 = "_pageBackground_i158m_42";
19936
19944
  const input = "_input_i158m_54";
@@ -19966,7 +19974,7 @@ const info$6 = "_info_i158m_333";
19966
19974
  const secondary$6 = "_secondary_i158m_345";
19967
19975
  const styles$7 = {
19968
19976
  root: root$2,
19969
- label: label$1,
19977
+ label: label$2,
19970
19978
  dropzone,
19971
19979
  pageBackground: pageBackground$1,
19972
19980
  input,
@@ -21011,7 +21019,7 @@ const dot = "_dot_hpxu6_81";
21011
21019
  const large$3 = "_large_hpxu6_88";
21012
21020
  const small$3 = "_small_hpxu6_93";
21013
21021
  const disabledDot = "_disabledDot_hpxu6_98";
21014
- const label = "_label_hpxu6_102";
21022
+ const label$1 = "_label_hpxu6_102";
21015
21023
  const chamfer = "_chamfer_hpxu6_107";
21016
21024
  const primary$5 = "_primary_hpxu6_112";
21017
21025
  const secondary$5 = "_secondary_hpxu6_121";
@@ -21029,7 +21037,7 @@ const styles$6 = {
21029
21037
  large: large$3,
21030
21038
  small: small$3,
21031
21039
  disabledDot,
21032
- label,
21040
+ label: label$1,
21033
21041
  chamfer,
21034
21042
  primary: primary$5,
21035
21043
  secondary: secondary$5,
@@ -25629,19 +25637,21 @@ var Content2$2 = SelectContent;
25629
25637
  var Viewport = SelectViewport;
25630
25638
  var Item = SelectItem;
25631
25639
  var ItemText = SelectItemText;
25632
- const trigger$1 = "_trigger_dqtrb_7";
25633
- const large$2 = "_large_dqtrb_31";
25634
- const small$2 = "_small_dqtrb_36";
25635
- const disabled$2 = "_disabled_dqtrb_41";
25636
- const icon$1 = "_icon_dqtrb_46";
25637
- const content$3 = "_content_dqtrb_52";
25638
- const item$2 = "_item_dqtrb_58";
25639
- const primary$4 = "_primary_dqtrb_80";
25640
- const success$4 = "_success_dqtrb_90";
25641
- const warning$4 = "_warning_dqtrb_100";
25642
- const danger$4 = "_danger_dqtrb_110";
25643
- const info$4 = "_info_dqtrb_120";
25644
- const secondary$4 = "_secondary_dqtrb_130";
25640
+ const trigger$1 = "_trigger_1m0ut_7";
25641
+ const large$2 = "_large_1m0ut_31";
25642
+ const small$2 = "_small_1m0ut_36";
25643
+ const disabled$2 = "_disabled_1m0ut_41";
25644
+ const icon$1 = "_icon_1m0ut_46";
25645
+ const content$3 = "_content_1m0ut_52";
25646
+ const item$2 = "_item_1m0ut_58";
25647
+ const primary$4 = "_primary_1m0ut_80";
25648
+ const success$4 = "_success_1m0ut_90";
25649
+ const warning$4 = "_warning_1m0ut_100";
25650
+ const danger$4 = "_danger_1m0ut_110";
25651
+ const info$4 = "_info_1m0ut_120";
25652
+ const secondary$4 = "_secondary_1m0ut_130";
25653
+ const field = "_field_1m0ut_140";
25654
+ const label = "_label_1m0ut_146";
25645
25655
  const styles$5 = {
25646
25656
  trigger: trigger$1,
25647
25657
  large: large$2,
@@ -25655,7 +25665,9 @@ const styles$5 = {
25655
25665
  warning: warning$4,
25656
25666
  danger: danger$4,
25657
25667
  info: info$4,
25658
- secondary: secondary$4
25668
+ secondary: secondary$4,
25669
+ field,
25670
+ label
25659
25671
  };
25660
25672
  function SelectInput({
25661
25673
  options,
@@ -25665,57 +25677,65 @@ function SelectInput({
25665
25677
  size: size2,
25666
25678
  disabled: disabled2,
25667
25679
  chamfer: chamfer2 = true,
25668
- loading = false
25680
+ loading = false,
25681
+ label: label2,
25682
+ id: id2
25669
25683
  }) {
25670
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
25671
- Root2$2,
25672
- {
25673
- value,
25674
- onValueChange,
25675
- disabled: disabled2 || loading,
25676
- children: [
25677
- /* @__PURE__ */ jsxRuntimeExports.jsxs(
25678
- Trigger$2,
25679
- {
25680
- className: clsx(
25681
- styles$5.trigger,
25682
- styles$5[variant],
25683
- chamfer2 && chamferStyles.chamfer,
25684
- size2 === "large" && styles$5.large,
25685
- size2 === "small" && styles$5.small,
25686
- disabled2 && styles$5.disabled,
25687
- disabled2 && hatchStyles.hatch
25688
- // loading && styles.disabled
25689
- ),
25690
- children: [
25691
- /* @__PURE__ */ jsxRuntimeExports.jsx(Value, {}),
25692
- loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$5.icon, children: "▾" })
25693
- ]
25694
- }
25695
- ),
25696
- /* @__PURE__ */ jsxRuntimeExports.jsx(Portal$2, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
25697
- Content2$2,
25698
- {
25699
- className: classNames(
25700
- styles$5.content,
25701
- chamfer2 && chamferStyles.chamfer
25702
- ),
25703
- sideOffset: 6,
25704
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(Viewport, { children: options.map((opt) => /* @__PURE__ */ jsxRuntimeExports.jsx(
25705
- Item,
25706
- {
25707
- value: opt.value,
25708
- disabled: opt.disabled,
25709
- className: styles$5.item,
25710
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(ItemText, { children: opt.label })
25711
- },
25712
- opt.value
25713
- )) })
25714
- }
25715
- ) })
25716
- ]
25717
- }
25718
- );
25684
+ const generatedId = React.useId();
25685
+ const triggerId = id2 ?? generatedId;
25686
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$5.field, children: [
25687
+ label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("label", { className: styles$5.label, htmlFor: triggerId, children: label2 }),
25688
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
25689
+ Root2$2,
25690
+ {
25691
+ value,
25692
+ onValueChange,
25693
+ disabled: disabled2 || loading,
25694
+ children: [
25695
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
25696
+ Trigger$2,
25697
+ {
25698
+ id: triggerId,
25699
+ className: clsx(
25700
+ styles$5.trigger,
25701
+ styles$5[variant],
25702
+ chamfer2 && chamferStyles.chamfer,
25703
+ size2 === "large" && styles$5.large,
25704
+ size2 === "small" && styles$5.small,
25705
+ disabled2 && styles$5.disabled,
25706
+ disabled2 && hatchStyles.hatch
25707
+ // loading && styles.disabled
25708
+ ),
25709
+ children: [
25710
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Value, {}),
25711
+ loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$5.icon, children: "▾" })
25712
+ ]
25713
+ }
25714
+ ),
25715
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Portal$2, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
25716
+ Content2$2,
25717
+ {
25718
+ className: classNames(
25719
+ styles$5.content,
25720
+ chamfer2 && chamferStyles.chamfer
25721
+ ),
25722
+ sideOffset: 6,
25723
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(Viewport, { children: options.map((opt) => /* @__PURE__ */ jsxRuntimeExports.jsx(
25724
+ Item,
25725
+ {
25726
+ value: opt.value,
25727
+ disabled: opt.disabled,
25728
+ className: styles$5.item,
25729
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(ItemText, { children: opt.label })
25730
+ },
25731
+ opt.value
25732
+ )) })
25733
+ }
25734
+ ) })
25735
+ ]
25736
+ }
25737
+ )
25738
+ ] });
25719
25739
  }
25720
25740
  var NAME = "Toggle";
25721
25741
  var Toggle = React__namespace.forwardRef((props, forwardedRef) => {
package/dist/jcui.es.js CHANGED
@@ -217,7 +217,7 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
217
217
  transform: rotate(360deg);
218
218
  }
219
219
  }
220
- ._card_15n7t_1 {
220
+ ._card_1b88d_1 {
221
221
  border-width: var(--border-thickness);
222
222
  border-style: solid;
223
223
  font-size: 1rem;
@@ -226,30 +226,30 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
226
226
  display: flex;
227
227
  flex-direction: column;
228
228
  }
229
- ._pageBackground_15n7t_11 {
229
+ ._pageBackground_1b88d_11 {
230
230
  --card-bg: var(--body-bg);
231
231
  --button-bg: var(--body-bg);
232
232
  --card-color: var(--body-color);
233
233
  background-color: var(--body-bg);
234
234
  }
235
- ._card_15n7t_1 ._title_15n7t_18 {
235
+ ._card_1b88d_1 ._title_1b88d_18 {
236
236
  font-size: 1.25rem;
237
237
  padding: 0.5rem 1rem;
238
238
  border-bottom: var(--border-thickness) solid var(--border-color);
239
239
  background-color: var(--card-bg);
240
240
  }
241
- ._card_15n7t_1 ._titleCollapsed_15n7t_25 {
241
+ ._card_1b88d_1 ._titleCollapsed_1b88d_25 {
242
242
  border-bottom: 0;
243
243
  }
244
- ._card_15n7t_1 ._titleContent_15n7t_29 {
244
+ ._card_1b88d_1 ._titleContent_1b88d_29 {
245
245
  display: flex;
246
246
  align-items: center;
247
247
  gap: 0.5rem;
248
248
  }
249
- ._card_15n7t_1 ._titleInteractive_15n7t_35 {
249
+ ._card_1b88d_1 ._titleInteractive_1b88d_35 {
250
250
  cursor: pointer;
251
251
  }
252
- ._card_15n7t_1 ._chevron_15n7t_39 {
252
+ ._card_1b88d_1 ._chevron_1b88d_39 {
253
253
  margin-left: auto;
254
254
  width: 0.5rem;
255
255
  height: 0.5rem;
@@ -259,94 +259,95 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
259
259
  flex-shrink: 0;
260
260
  cursor: inherit;
261
261
  }
262
- ._card_15n7t_1 ._chevronExpanded_15n7t_50 {
262
+ ._card_1b88d_1 ._chevronExpanded_1b88d_50 {
263
263
  transform: rotate(45deg);
264
264
  }
265
- ._card_15n7t_1 ._chevronCollapsed_15n7t_54 {
265
+ ._card_1b88d_1 ._chevronCollapsed_1b88d_54 {
266
266
  transform: rotate(-45deg);
267
267
  }
268
- ._card_15n7t_1 ._titleInteractive_15n7t_35:hover ._chevronExpanded_15n7t_50,
269
- ._card_15n7t_1 ._titleInteractive_15n7t_35:focus-visible ._chevronExpanded_15n7t_50 {
268
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:hover ._chevronExpanded_1b88d_50,
269
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:focus-visible ._chevronExpanded_1b88d_50 {
270
270
  transform: rotate(30deg);
271
271
  }
272
- ._card_15n7t_1 ._titleInteractive_15n7t_35:hover ._chevronCollapsed_15n7t_54,
273
- ._card_15n7t_1 ._titleInteractive_15n7t_35:focus-visible ._chevronCollapsed_15n7t_54 {
272
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:hover ._chevronCollapsed_1b88d_54,
273
+ ._card_1b88d_1 ._titleInteractive_1b88d_35:focus-visible ._chevronCollapsed_1b88d_54 {
274
274
  transform: rotate(-30deg);
275
275
  }
276
- ._card_15n7t_1 ._content_15n7t_68 {
276
+ ._card_1b88d_1 ._content_1b88d_68 {
277
277
  display: grid;
278
278
  grid-template-rows: 1fr;
279
279
  transition:
280
280
  grid-template-rows 0.2s ease,
281
281
  opacity 0.2s ease;
282
+ flex: 1;
282
283
  }
283
- ._card_15n7t_1 ._contentInner_15n7t_76 {
284
+ ._card_1b88d_1 ._contentInner_1b88d_77 {
284
285
  overflow: hidden;
285
286
  min-height: 0;
286
287
  display: flex;
287
288
  flex-direction: column;
288
289
  }
289
- ._card_15n7t_1 ._contentCollapsed_15n7t_83 {
290
+ ._card_1b88d_1 ._contentCollapsed_1b88d_84 {
290
291
  grid-template-rows: 0fr;
291
292
  opacity: 0;
292
293
  }
293
- ._card_15n7t_1 ._body_15n7t_88 {
294
+ ._card_1b88d_1 ._body_1b88d_89 {
294
295
  padding: 0.5rem 1rem;
295
296
  width: 100%;
296
297
  }
297
- ._card_15n7t_1 ._body_15n7t_88 > hr {
298
+ ._card_1b88d_1 ._body_1b88d_89 > hr {
298
299
  margin: 1rem 0;
299
300
  transform: translateX(-16px);
300
301
  width: calc(100% + 32px);
301
302
  }
302
- ._card_15n7t_1 ._footer_15n7t_99 {
303
+ ._card_1b88d_1 ._footer_1b88d_100 {
303
304
  border-top: var(--border-thickness) solid var(--border-color);
304
305
  flex: 1;
305
306
  background-color: var(--card-bg);
306
307
  padding: 0.5rem 1rem;
307
308
  }
308
- ._large_15n7t_106 ._body_15n7t_88,
309
- ._large_15n7t_106 ._title_15n7t_18 {
309
+ ._large_1b88d_107 ._body_1b88d_89,
310
+ ._large_1b88d_107 ._title_1b88d_18 {
310
311
  font-size: 1.25rem;
311
312
  padding: 0.75rem 1.25rem;
312
313
  }
313
- ._small_15n7t_112 ._body_15n7t_88,
314
- ._small_15n7t_112 ._title_15n7t_18 {
314
+ ._small_1b88d_113 ._body_1b88d_89,
315
+ ._small_1b88d_113 ._title_1b88d_18 {
315
316
  font-size: 0.75rem;
316
317
  padding: 0.25rem 0.5rem;
317
318
  }
318
319
  /* Variants */
319
- ._primary_15n7t_120 {
320
+ ._primary_1b88d_121 {
320
321
  --card-bg: var(--primary-color-100);
321
322
  --border-color: var(--primary-color-300);
322
323
  --border-accent-color: var(--primary-color-600);
323
324
  --card-color: var(--primary-color-800);
324
325
  }
325
- ._success_15n7t_127 {
326
+ ._success_1b88d_128 {
326
327
  --card-bg: var(--success-color-100);
327
328
  --border-color: var(--success-color-300);
328
329
  --border-accent-color: var(--success-color-600);
329
330
  --card-color: var(--success-color-800);
330
331
  }
331
- ._warning_15n7t_134 {
332
+ ._warning_1b88d_135 {
332
333
  --card-bg: var(--warning-color-100);
333
334
  --border-color: var(--warning-color-300);
334
335
  --border-accent-color: var(--warning-color-600);
335
336
  --card-color: var(--warning-color-800);
336
337
  }
337
- ._danger_15n7t_141 {
338
+ ._danger_1b88d_142 {
338
339
  --card-bg: var(--danger-color-100);
339
340
  --border-color: var(--danger-color-300);
340
341
  --border-accent-color: var(--danger-color-600);
341
342
  --card-color: var(--danger-color-800);
342
343
  }
343
- ._info_15n7t_148 {
344
+ ._info_1b88d_149 {
344
345
  --card-bg: var(--info-color-100);
345
346
  --border-color: var(--info-color-300);
346
347
  --border-accent-color: var(--info-color-600);
347
348
  --card-color: var(--info-color-800);
348
349
  }
349
- ._secondary_15n7t_155 {
350
+ ._secondary_1b88d_156 {
350
351
  --card-bg: var(--secondary-color-100);
351
352
  --border-color: var(--secondary-color-300);
352
353
  --border-accent-color: var(--secondary-color-600);
@@ -1045,7 +1046,7 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
1045
1046
  inherits: true;
1046
1047
  initial-value: transparent;
1047
1048
  }
1048
- ._trigger_dqtrb_7 {
1049
+ ._trigger_1m0ut_7 {
1049
1050
  display: inline-flex;
1050
1051
  align-items: center;
1051
1052
  justify-content: space-between;
@@ -1057,104 +1058,111 @@ div.jcui_chamfer:not(.jcui_disabled):focus-within {
1057
1058
  border: var(--border-thickness) solid var(--border-color);
1058
1059
  cursor: pointer;
1059
1060
  }
1060
- ._trigger_dqtrb_7:hover {
1061
+ ._trigger_1m0ut_7:hover {
1061
1062
  --select-bg: var(--secondary-color-100);
1062
1063
  }
1063
- ._trigger_dqtrb_7:active {
1064
+ ._trigger_1m0ut_7:active {
1064
1065
  --select-bg: var(--secondary-color-200);
1065
1066
  }
1066
- ._large_dqtrb_31 {
1067
+ ._large_1m0ut_31 {
1067
1068
  font-size: 1.25rem;
1068
1069
  padding: 0.75rem 1.25rem;
1069
1070
  }
1070
- ._small_dqtrb_36 {
1071
+ ._small_1m0ut_36 {
1071
1072
  font-size: 0.75rem;
1072
1073
  padding: 0.25rem 0.5rem;
1073
1074
  }
1074
- ._disabled_dqtrb_41 {
1075
+ ._disabled_1m0ut_41 {
1075
1076
  opacity: 0.5;
1076
1077
  cursor: not-allowed;
1077
1078
  }
1078
- ._icon_dqtrb_46 {
1079
+ ._icon_1m0ut_46 {
1079
1080
  opacity: 0.7;
1080
1081
  }
1081
1082
  /* Dropdown */
1082
- ._content_dqtrb_52 {
1083
+ ._content_1m0ut_52 {
1083
1084
  background-color: var(--body-bg);
1084
1085
  border: var(--border-thickness) solid var(--border-color);
1085
1086
  z-index: 110;
1086
1087
  }
1087
- ._item_dqtrb_58 {
1088
+ ._item_1m0ut_58 {
1088
1089
  padding: 0.4rem 0.6rem;
1089
1090
  font-size: 0.875rem;
1090
1091
  cursor: pointer;
1091
1092
  outline: none;
1092
1093
  }
1093
- ._item_dqtrb_58[data-highlighted] {
1094
+ ._item_1m0ut_58[data-highlighted] {
1094
1095
  background-color: var(--secondary-color-100);
1095
1096
  }
1096
- ._item_dqtrb_58[data-state="checked"] {
1097
+ ._item_1m0ut_58[data-state="checked"] {
1097
1098
  background-color: var(--secondary-color-200);
1098
1099
  }
1099
- ._item_dqtrb_58[data-disabled] {
1100
+ ._item_1m0ut_58[data-disabled] {
1100
1101
  opacity: 0.4;
1101
1102
  pointer-events: none;
1102
1103
  }
1103
1104
  /* Variants (match Button) */
1104
- ._primary_dqtrb_80 {
1105
+ ._primary_1m0ut_80 {
1105
1106
  --select-bg: var(--primary-color-100);
1106
1107
  --border-color: var(--primary-color-300);
1107
1108
  --button-color: var(--primary-color-800);
1108
1109
  --border-accent-color: var(--primary-color-600);
1109
1110
  }
1110
- ._primary_dqtrb_80:hover {
1111
+ ._primary_1m0ut_80:hover {
1111
1112
  --select-bg: var(--primary-color-200);
1112
1113
  }
1113
- ._success_dqtrb_90 {
1114
+ ._success_1m0ut_90 {
1114
1115
  --select-bg: var(--success-color-100);
1115
1116
  --border-color: var(--success-color-300);
1116
1117
  --button-color: var(--success-color-800);
1117
1118
  --border-accent-color: var(--success-color-600);
1118
1119
  }
1119
- ._success_dqtrb_90:hover {
1120
+ ._success_1m0ut_90:hover {
1120
1121
  --select-bg: var(--success-color-200);
1121
1122
  }
1122
- ._warning_dqtrb_100 {
1123
+ ._warning_1m0ut_100 {
1123
1124
  --select-bg: var(--warning-color-100);
1124
1125
  --border-color: var(--warning-color-300);
1125
1126
  --button-color: var(--warning-color-800);
1126
1127
  --border-accent-color: var(--warning-color-600);
1127
1128
  }
1128
- ._warning_dqtrb_100:hover {
1129
+ ._warning_1m0ut_100:hover {
1129
1130
  --select-bg: var(--warning-color-200);
1130
1131
  }
1131
- ._danger_dqtrb_110 {
1132
+ ._danger_1m0ut_110 {
1132
1133
  --select-bg: var(--danger-color-100);
1133
1134
  --border-color: var(--danger-color-300);
1134
1135
  --button-color: var(--danger-color-800);
1135
1136
  --border-accent-color: var(--danger-color-600);
1136
1137
  }
1137
- ._danger_dqtrb_110:hover {
1138
+ ._danger_1m0ut_110:hover {
1138
1139
  --select-bg: var(--danger-color-200);
1139
1140
  }
1140
- ._info_dqtrb_120 {
1141
+ ._info_1m0ut_120 {
1141
1142
  --select-bg: var(--info-color-100);
1142
1143
  --border-color: var(--info-color-300);
1143
1144
  --button-color: var(--info-color-800);
1144
1145
  --border-accent-color: var(--info-color-600);
1145
1146
  }
1146
- ._info_dqtrb_120:hover {
1147
+ ._info_1m0ut_120:hover {
1147
1148
  --select-bg: var(--info-color-200);
1148
1149
  }
1149
- ._secondary_dqtrb_130 {
1150
+ ._secondary_1m0ut_130 {
1150
1151
  --select-bg: var(--secondary-color-100);
1151
1152
  --border-color: var(--secondary-color-300);
1152
1153
  --button-color: var(--secondary-color-800);
1153
1154
  --border-accent-color: var(--secondary-color-600);
1154
1155
  }
1155
- ._secondary_dqtrb_130:hover {
1156
+ ._secondary_1m0ut_130:hover {
1156
1157
  --select-bg: var(--secondary-color-200);
1157
1158
  }
1159
+ ._field_1m0ut_140 {
1160
+ display: flex;
1161
+ flex-direction: column;
1162
+ gap: 0.5rem;
1163
+ }
1164
+ ._label_1m0ut_146 {
1165
+ }
1158
1166
  @property --segment-bg {
1159
1167
  syntax: "<color>";
1160
1168
  inherits: true;
@@ -2659,28 +2667,28 @@ function requireClassnames() {
2659
2667
  }
2660
2668
  var classnamesExports = requireClassnames();
2661
2669
  const classNames = /* @__PURE__ */ getDefaultExportFromCjs(classnamesExports);
2662
- const card = "_card_15n7t_1";
2663
- const pageBackground$3 = "_pageBackground_15n7t_11";
2664
- const title$1 = "_title_15n7t_18";
2665
- const titleCollapsed = "_titleCollapsed_15n7t_25";
2666
- const titleContent = "_titleContent_15n7t_29";
2667
- const titleInteractive = "_titleInteractive_15n7t_35";
2668
- const chevron = "_chevron_15n7t_39";
2669
- const chevronExpanded = "_chevronExpanded_15n7t_50";
2670
- const chevronCollapsed = "_chevronCollapsed_15n7t_54";
2671
- const content$4 = "_content_15n7t_68";
2672
- const contentInner = "_contentInner_15n7t_76";
2673
- const contentCollapsed = "_contentCollapsed_15n7t_83";
2674
- const body$1 = "_body_15n7t_88";
2675
- const footer$1 = "_footer_15n7t_99";
2676
- const large$7 = "_large_15n7t_106";
2677
- const small$7 = "_small_15n7t_112";
2678
- const primary$9 = "_primary_15n7t_120";
2679
- const success$9 = "_success_15n7t_127";
2680
- const warning$9 = "_warning_15n7t_134";
2681
- const danger$9 = "_danger_15n7t_141";
2682
- const info$9 = "_info_15n7t_148";
2683
- const secondary$9 = "_secondary_15n7t_155";
2670
+ const card = "_card_1b88d_1";
2671
+ const pageBackground$3 = "_pageBackground_1b88d_11";
2672
+ const title$1 = "_title_1b88d_18";
2673
+ const titleCollapsed = "_titleCollapsed_1b88d_25";
2674
+ const titleContent = "_titleContent_1b88d_29";
2675
+ const titleInteractive = "_titleInteractive_1b88d_35";
2676
+ const chevron = "_chevron_1b88d_39";
2677
+ const chevronExpanded = "_chevronExpanded_1b88d_50";
2678
+ const chevronCollapsed = "_chevronCollapsed_1b88d_54";
2679
+ const content$4 = "_content_1b88d_68";
2680
+ const contentInner = "_contentInner_1b88d_77";
2681
+ const contentCollapsed = "_contentCollapsed_1b88d_84";
2682
+ const body$1 = "_body_1b88d_89";
2683
+ const footer$1 = "_footer_1b88d_100";
2684
+ const large$7 = "_large_1b88d_107";
2685
+ const small$7 = "_small_1b88d_113";
2686
+ const primary$9 = "_primary_1b88d_121";
2687
+ const success$9 = "_success_1b88d_128";
2688
+ const warning$9 = "_warning_1b88d_135";
2689
+ const danger$9 = "_danger_1b88d_142";
2690
+ const info$9 = "_info_1b88d_149";
2691
+ const secondary$9 = "_secondary_1b88d_156";
2684
2692
  const styles$b = {
2685
2693
  card,
2686
2694
  pageBackground: pageBackground$3,
@@ -3527,7 +3535,7 @@ const indicator$1 = "_indicator_178xv_76";
3527
3535
  const large$6 = "_large_178xv_94";
3528
3536
  const small$6 = "_small_178xv_99";
3529
3537
  const disabledBox = "_disabledBox_178xv_104";
3530
- const label$3 = "_label_178xv_109";
3538
+ const label$4 = "_label_178xv_109";
3531
3539
  const primary$8 = "_primary_178xv_117";
3532
3540
  const secondary$8 = "_secondary_178xv_126";
3533
3541
  const success$8 = "_success_178xv_135";
@@ -3542,7 +3550,7 @@ const styles$a = {
3542
3550
  large: large$6,
3543
3551
  small: small$6,
3544
3552
  disabledBox,
3545
- label: label$3,
3553
+ label: label$4,
3546
3554
  primary: primary$8,
3547
3555
  secondary: secondary$8,
3548
3556
  success: success$8,
@@ -12032,7 +12040,7 @@ function isBigIntType(type) {
12032
12040
  const reindex = /* @__PURE__ */ Symbol("reindex");
12033
12041
  function valueof(data, value, type) {
12034
12042
  const valueType = typeof value;
12035
- return valueType === "string" ? isArrowTable(data) ? maybeTypedArrowify(data.getChild(value), type) : maybeTypedMap(data, field$1(value), type) : valueType === "function" ? maybeTypedMap(data, value, type) : valueType === "number" || value instanceof Date || valueType === "boolean" ? map(data, constant(value), type) : typeof value?.transform === "function" ? maybeTypedArrayify(value.transform(data), type) : maybeTake(maybeTypedArrayify(value, type), data?.[reindex]);
12043
+ return valueType === "string" ? isArrowTable(data) ? maybeTypedArrowify(data.getChild(value), type) : maybeTypedMap(data, field$2(value), type) : valueType === "function" ? maybeTypedMap(data, value, type) : valueType === "number" || value instanceof Date || valueType === "boolean" ? map(data, constant(value), type) : typeof value?.transform === "function" ? maybeTypedArrayify(value.transform(data), type) : maybeTake(maybeTypedArrayify(value, type), data?.[reindex]);
12036
12044
  }
12037
12045
  function maybeTake(values2, index2) {
12038
12046
  return values2 != null && index2 ? take(values2, index2) : values2;
@@ -12050,7 +12058,7 @@ function vectorToArray(vector) {
12050
12058
  return vector.nullCount ? vector.toJSON() : vector.toArray();
12051
12059
  }
12052
12060
  const singleton = [null];
12053
- const field$1 = (name) => (d2) => {
12061
+ const field$2 = (name) => (d2) => {
12054
12062
  const v2 = d2[name];
12055
12063
  return v2 === void 0 && d2.type === "Feature" ? d2.properties?.[name] : v2;
12056
12064
  };
@@ -17019,7 +17027,7 @@ function maybeOrder(order, offset2, ky2) {
17019
17027
  case "inside-out":
17020
17028
  return orderInsideOut(compare);
17021
17029
  }
17022
- return orderAccessor(field$1(order));
17030
+ return orderAccessor(field$2(order));
17023
17031
  }
17024
17032
  if (typeof order === "function") return (order.length === 1 ? orderAccessor : orderComparator)(order);
17025
17033
  if (isArray(order)) return orderGiven(order);
@@ -19849,8 +19857,8 @@ const warning$7 = "_warning_1ymvl_72";
19849
19857
  const danger$7 = "_danger_1ymvl_80";
19850
19858
  const info$7 = "_info_1ymvl_88";
19851
19859
  const secondary$7 = "_secondary_1ymvl_97";
19852
- const field = "_field_1ymvl_106";
19853
- const label$2 = "_label_1ymvl_112";
19860
+ const field$1 = "_field_1ymvl_106";
19861
+ const label$3 = "_label_1ymvl_112";
19854
19862
  const styles$8 = {
19855
19863
  input: input$1,
19856
19864
  pageBackground: pageBackground$2,
@@ -19863,8 +19871,8 @@ const styles$8 = {
19863
19871
  danger: danger$7,
19864
19872
  info: info$7,
19865
19873
  secondary: secondary$7,
19866
- field,
19867
- label: label$2
19874
+ field: field$1,
19875
+ label: label$3
19868
19876
  };
19869
19877
  function Input({
19870
19878
  variant,
@@ -19912,7 +19920,7 @@ function Input({
19912
19920
  ] });
19913
19921
  }
19914
19922
  const root$2 = "_root_i158m_7";
19915
- const label$1 = "_label_i158m_14";
19923
+ const label$2 = "_label_i158m_14";
19916
19924
  const dropzone = "_dropzone_i158m_18";
19917
19925
  const pageBackground$1 = "_pageBackground_i158m_42";
19918
19926
  const input = "_input_i158m_54";
@@ -19948,7 +19956,7 @@ const info$6 = "_info_i158m_333";
19948
19956
  const secondary$6 = "_secondary_i158m_345";
19949
19957
  const styles$7 = {
19950
19958
  root: root$2,
19951
- label: label$1,
19959
+ label: label$2,
19952
19960
  dropzone,
19953
19961
  pageBackground: pageBackground$1,
19954
19962
  input,
@@ -20993,7 +21001,7 @@ const dot = "_dot_hpxu6_81";
20993
21001
  const large$3 = "_large_hpxu6_88";
20994
21002
  const small$3 = "_small_hpxu6_93";
20995
21003
  const disabledDot = "_disabledDot_hpxu6_98";
20996
- const label = "_label_hpxu6_102";
21004
+ const label$1 = "_label_hpxu6_102";
20997
21005
  const chamfer = "_chamfer_hpxu6_107";
20998
21006
  const primary$5 = "_primary_hpxu6_112";
20999
21007
  const secondary$5 = "_secondary_hpxu6_121";
@@ -21011,7 +21019,7 @@ const styles$6 = {
21011
21019
  large: large$3,
21012
21020
  small: small$3,
21013
21021
  disabledDot,
21014
- label,
21022
+ label: label$1,
21015
21023
  chamfer,
21016
21024
  primary: primary$5,
21017
21025
  secondary: secondary$5,
@@ -25611,19 +25619,21 @@ var Content2$2 = SelectContent;
25611
25619
  var Viewport = SelectViewport;
25612
25620
  var Item = SelectItem;
25613
25621
  var ItemText = SelectItemText;
25614
- const trigger$1 = "_trigger_dqtrb_7";
25615
- const large$2 = "_large_dqtrb_31";
25616
- const small$2 = "_small_dqtrb_36";
25617
- const disabled$2 = "_disabled_dqtrb_41";
25618
- const icon$1 = "_icon_dqtrb_46";
25619
- const content$3 = "_content_dqtrb_52";
25620
- const item$2 = "_item_dqtrb_58";
25621
- const primary$4 = "_primary_dqtrb_80";
25622
- const success$4 = "_success_dqtrb_90";
25623
- const warning$4 = "_warning_dqtrb_100";
25624
- const danger$4 = "_danger_dqtrb_110";
25625
- const info$4 = "_info_dqtrb_120";
25626
- const secondary$4 = "_secondary_dqtrb_130";
25622
+ const trigger$1 = "_trigger_1m0ut_7";
25623
+ const large$2 = "_large_1m0ut_31";
25624
+ const small$2 = "_small_1m0ut_36";
25625
+ const disabled$2 = "_disabled_1m0ut_41";
25626
+ const icon$1 = "_icon_1m0ut_46";
25627
+ const content$3 = "_content_1m0ut_52";
25628
+ const item$2 = "_item_1m0ut_58";
25629
+ const primary$4 = "_primary_1m0ut_80";
25630
+ const success$4 = "_success_1m0ut_90";
25631
+ const warning$4 = "_warning_1m0ut_100";
25632
+ const danger$4 = "_danger_1m0ut_110";
25633
+ const info$4 = "_info_1m0ut_120";
25634
+ const secondary$4 = "_secondary_1m0ut_130";
25635
+ const field = "_field_1m0ut_140";
25636
+ const label = "_label_1m0ut_146";
25627
25637
  const styles$5 = {
25628
25638
  trigger: trigger$1,
25629
25639
  large: large$2,
@@ -25637,7 +25647,9 @@ const styles$5 = {
25637
25647
  warning: warning$4,
25638
25648
  danger: danger$4,
25639
25649
  info: info$4,
25640
- secondary: secondary$4
25650
+ secondary: secondary$4,
25651
+ field,
25652
+ label
25641
25653
  };
25642
25654
  function SelectInput({
25643
25655
  options,
@@ -25647,57 +25659,65 @@ function SelectInput({
25647
25659
  size: size2,
25648
25660
  disabled: disabled2,
25649
25661
  chamfer: chamfer2 = true,
25650
- loading = false
25662
+ loading = false,
25663
+ label: label2,
25664
+ id: id2
25651
25665
  }) {
25652
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
25653
- Root2$2,
25654
- {
25655
- value,
25656
- onValueChange,
25657
- disabled: disabled2 || loading,
25658
- children: [
25659
- /* @__PURE__ */ jsxRuntimeExports.jsxs(
25660
- Trigger$2,
25661
- {
25662
- className: clsx(
25663
- styles$5.trigger,
25664
- styles$5[variant],
25665
- chamfer2 && chamferStyles.chamfer,
25666
- size2 === "large" && styles$5.large,
25667
- size2 === "small" && styles$5.small,
25668
- disabled2 && styles$5.disabled,
25669
- disabled2 && hatchStyles.hatch
25670
- // loading && styles.disabled
25671
- ),
25672
- children: [
25673
- /* @__PURE__ */ jsxRuntimeExports.jsx(Value, {}),
25674
- loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$5.icon, children: "▾" })
25675
- ]
25676
- }
25677
- ),
25678
- /* @__PURE__ */ jsxRuntimeExports.jsx(Portal$2, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
25679
- Content2$2,
25680
- {
25681
- className: classNames(
25682
- styles$5.content,
25683
- chamfer2 && chamferStyles.chamfer
25684
- ),
25685
- sideOffset: 6,
25686
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(Viewport, { children: options.map((opt) => /* @__PURE__ */ jsxRuntimeExports.jsx(
25687
- Item,
25688
- {
25689
- value: opt.value,
25690
- disabled: opt.disabled,
25691
- className: styles$5.item,
25692
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(ItemText, { children: opt.label })
25693
- },
25694
- opt.value
25695
- )) })
25696
- }
25697
- ) })
25698
- ]
25699
- }
25700
- );
25666
+ const generatedId = useId$1();
25667
+ const triggerId = id2 ?? generatedId;
25668
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$5.field, children: [
25669
+ label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("label", { className: styles$5.label, htmlFor: triggerId, children: label2 }),
25670
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
25671
+ Root2$2,
25672
+ {
25673
+ value,
25674
+ onValueChange,
25675
+ disabled: disabled2 || loading,
25676
+ children: [
25677
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
25678
+ Trigger$2,
25679
+ {
25680
+ id: triggerId,
25681
+ className: clsx(
25682
+ styles$5.trigger,
25683
+ styles$5[variant],
25684
+ chamfer2 && chamferStyles.chamfer,
25685
+ size2 === "large" && styles$5.large,
25686
+ size2 === "small" && styles$5.small,
25687
+ disabled2 && styles$5.disabled,
25688
+ disabled2 && hatchStyles.hatch
25689
+ // loading && styles.disabled
25690
+ ),
25691
+ children: [
25692
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Value, {}),
25693
+ loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$5.icon, children: "▾" })
25694
+ ]
25695
+ }
25696
+ ),
25697
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Portal$2, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
25698
+ Content2$2,
25699
+ {
25700
+ className: classNames(
25701
+ styles$5.content,
25702
+ chamfer2 && chamferStyles.chamfer
25703
+ ),
25704
+ sideOffset: 6,
25705
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(Viewport, { children: options.map((opt) => /* @__PURE__ */ jsxRuntimeExports.jsx(
25706
+ Item,
25707
+ {
25708
+ value: opt.value,
25709
+ disabled: opt.disabled,
25710
+ className: styles$5.item,
25711
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(ItemText, { children: opt.label })
25712
+ },
25713
+ opt.value
25714
+ )) })
25715
+ }
25716
+ ) })
25717
+ ]
25718
+ }
25719
+ )
25720
+ ] });
25701
25721
  }
25702
25722
  var NAME = "Toggle";
25703
25723
  var Toggle = React.forwardRef((props, forwardedRef) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jackcrane/ui",
3
- "version": "0.1.24",
3
+ "version": "0.1.26",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "main": "dist/jcui.cjs.js",