@luminescent/ui 0.6.1 → 0.7.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.
@@ -58,28 +58,6 @@ const ButtonAnchor = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inli
58
58
  children: /* @__PURE__ */ qwik._jsxC(qwik.Slot, null, 3, "7H_2")
59
59
  }, null, 0, "7H_3");
60
60
  }, "ButtonAnchor_component_vQT9xS0lqew"));
61
- const LoadingIcon = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
62
- const props1 = qwik._restProps(props, [
63
- "width",
64
- "speed"
65
- ]);
66
- return /* @__PURE__ */ qwik._jsxS("div", {
67
- ...props1,
68
- class: {
69
- "animate-spin rounded-full border-transparent border-l-current border-t-current": true,
70
- ...props1.class
71
- }
72
- }, {
73
- style: qwik._fnSignal((p0) => ({
74
- borderWidth: p0.width / 8,
75
- width: p0.width,
76
- height: p0.width,
77
- animation: `spin ${p0.speed ?? "0.6s"} ease-in-out infinite`
78
- }), [
79
- props
80
- ], '{borderWidth:p0.width/8,width:p0.width,height:p0.width,animation:`spin ${p0.speed??"0.6s"} ease-in-out infinite`}')
81
- }, 0, "1A_0");
82
- }, "LoadingIcon_component_QMsA9D0RcAM"));
83
61
  const cardColorClasses = {
84
62
  pink: {
85
63
  card: {
@@ -187,28 +165,28 @@ const cardColorClasses = {
187
165
  },
188
166
  darkgray: {
189
167
  card: {
190
- bg_blobs: "bg-gray-800/10 border-gray-800/20",
168
+ bg_blobs: "bg-gray-800/10 border-gray-800/40",
191
169
  bg: "bg-gray-800/60 border-gray-800",
192
- hover: "hover:bg-gray-800/20",
193
- click: "active:bg-gray-700/20"
170
+ hover: "hover:bg-gray-800/40",
171
+ click: "active:bg-gray-700/40"
194
172
  },
195
173
  blobs: [
196
- "bg-gray-400",
197
174
  "bg-gray-500",
198
- "bg-gray-600"
175
+ "bg-gray-600",
176
+ "bg-gray-700"
199
177
  ]
200
178
  },
201
179
  darkergray: {
202
180
  card: {
203
- bg_blobs: "bg-gray-900/10 border-gray-900/20",
181
+ bg_blobs: "bg-gray-900/10 border-gray-900/50",
204
182
  bg: "bg-gray-900/60 border-gray-900",
205
- hover: "hover:bg-gray-900/20",
206
- click: "active:bg-gray-800/20"
183
+ hover: "hover:bg-gray-900/50",
184
+ click: "active:bg-gray-800/50"
207
185
  },
208
186
  blobs: [
209
- "bg-gray-400",
210
- "bg-gray-500",
211
- "bg-gray-600"
187
+ "bg-gray-600",
188
+ "bg-gray-700",
189
+ "bg-gray-800"
212
190
  ]
213
191
  }
214
192
  };
@@ -225,36 +203,30 @@ const Card = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((
225
203
  const props1 = qwik._restProps(props, [
226
204
  "color",
227
205
  "hover",
228
- "href",
229
206
  "row",
230
207
  "blobs"
231
208
  ]);
232
209
  const blob = Math.round(Math.random() * 6);
233
- return /* @__PURE__ */ qwik._jsxS("div", {
210
+ let Component = /* @__PURE__ */ qwik._jsxS("div", {
234
211
  ...props1,
235
- children: /* @__PURE__ */ qwik._jsxQ("div", null, {
236
- class: {
237
- "p-8": true
238
- }
212
+ children: /* @__PURE__ */ qwik._jsxC(qwik.Slot, null, 3, "OW_0"),
213
+ class: {
214
+ "flex gap-4 p-8 border rounded-lg transition-all": true,
215
+ [cardColorClasses[props.color ?? "darkgray"].card.bg]: !props.blobs,
216
+ [cardColorClasses[props.color ?? "darkgray"].card.bg_blobs]: props.blobs,
217
+ [cardColorClasses[props.color ?? "darkgray"].card.hover + " hover:shadow-lg"]: props.hover,
218
+ [cardColorClasses[props.color ?? "darkgray"].card.click + " active:scale-[99%] cursor-pointer select-none"]: props.hover == "clickable",
219
+ "flex-col": !props.row,
220
+ "flex-row items-center": props.row,
221
+ ...props1.class
222
+ }
223
+ }, null, 0, "OW_1");
224
+ if (props.blobs)
225
+ Component = /* @__PURE__ */ qwik._jsxQ("div", null, {
226
+ class: "relative"
239
227
  }, [
240
- props.href && /* @__PURE__ */ qwik._jsxQ("a", null, {
241
- class: "absolute inset-0 z-20",
242
- href: qwik._fnSignal((p0) => p0.href, [
243
- props
244
- ], "p0.href")
245
- }, null, 3, "OW_0"),
228
+ Component,
246
229
  /* @__PURE__ */ qwik._jsxQ("div", null, {
247
- class: "relative"
248
- }, /* @__PURE__ */ qwik._jsxQ("div", null, {
249
- class: qwik._fnSignal((p0) => ({
250
- "flex gap-4": true,
251
- "flex-col": !p0.row,
252
- "flex-row items-center": p0.row
253
- }), [
254
- props
255
- ], '{"flex gap-4":true,"flex-col":!p0.row,"flex-row items-center":p0.row}')
256
- }, /* @__PURE__ */ qwik._jsxC(qwik.Slot, null, 3, "OW_1"), 1, null), 1, null),
257
- props.blobs && /* @__PURE__ */ qwik._jsxQ("div", null, {
258
230
  class: "absolute -z-10 inset-0 w-full h-full transition-all overflow-clip animate-in fade-in anim-duration-[2s]",
259
231
  style: {
260
232
  containerType: "size"
@@ -283,64 +255,14 @@ const Card = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((
283
255
  [cardColorClasses[props.color ?? "darkgray"].blobs[2]]: true
284
256
  }
285
257
  }, null, null, 3, null)
286
- ], 1, "OW_2")
287
- ], 1, null),
288
- class: {
289
- "flex-1 relative border rounded-lg group transition-all": true,
290
- [cardColorClasses[props.color ?? "darkgray"].card.bg]: !props.blobs,
291
- [cardColorClasses[props.color ?? "darkgray"].card.bg_blobs]: props.blobs,
292
- [cardColorClasses[props.color ?? "darkgray"].card.hover + " hover:shadow-lg"]: props.hover,
293
- [cardColorClasses[props.color ?? "darkgray"].card.click + " active:scale-[99%] cursor-pointer"]: props.hover == "clickable",
294
- ...props1.class
295
- }
296
- }, null, 0, "OW_3");
258
+ ], 1, null)
259
+ ], 1, "OW_2");
260
+ if (props1.href)
261
+ Component = /* @__PURE__ */ qwik._jsxQ("a", {
262
+ href: qwik._wrapSignal(props1, "href")
263
+ }, null, Component, 1, "OW_3");
264
+ return Component;
297
265
  }, "Card_component_DlkkcTEVka4"));
298
- const CardHeader = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
299
- qwik._jsxBranch();
300
- return /* @__PURE__ */ qwik._jsxQ("h1", null, {
301
- class: "flex font-bold text-gray-100 text-2xl"
302
- }, [
303
- props.id && /* @__PURE__ */ qwik._jsxC(Anchor, {
304
- get id() {
305
- return props.id;
306
- },
307
- [qwik._IMMUTABLE]: {
308
- id: qwik._fnSignal((p0) => p0.id, [
309
- props
310
- ], "p0.id")
311
- }
312
- }, 3, "OW_4"),
313
- /* @__PURE__ */ qwik._jsxQ("div", null, {
314
- class: "flex flex-1"
315
- }, /* @__PURE__ */ qwik._jsxQ("div", null, {
316
- class: "flex flex-col"
317
- }, [
318
- /* @__PURE__ */ qwik._jsxQ("div", null, {
319
- class: "flex items-center gap-3"
320
- }, /* @__PURE__ */ qwik._jsxC(qwik.Slot, null, 3, "OW_5"), 1, null),
321
- /* @__PURE__ */ qwik._jsxC(qwik.Slot, {
322
- name: "subheader",
323
- [qwik._IMMUTABLE]: {
324
- name: qwik._IMMUTABLE
325
- }
326
- }, 3, "OW_6")
327
- ], 1, null), 1, null),
328
- (props.loading ?? false) && /* @__PURE__ */ qwik._jsxQ("div", null, {
329
- class: qwik._fnSignal((p0) => ({
330
- "transition-all": true,
331
- "opacity-0": !(p0.loading ?? false),
332
- "opacity-100": p0.loading ?? false
333
- }), [
334
- props
335
- ], '{"transition-all":true,"opacity-0":!(p0.loading??false),"opacity-100":p0.loading??false}')
336
- }, /* @__PURE__ */ qwik._jsxC(LoadingIcon, {
337
- width: 24,
338
- [qwik._IMMUTABLE]: {
339
- width: qwik._IMMUTABLE
340
- }
341
- }, 3, "OW_7"), 1, "OW_8")
342
- ], 1, "OW_9");
343
- }, "CardHeader_component_2xQZ6Uv7R4A"));
344
266
  const InputClasses = "transition ease-in-out text-lg border border-gray-700 bg-gray-800 text-gray-50 hover:bg-gray-700 hover:shadow-lg focus:bg-gray-700 focus:outline-none focus:border-gray-400 rounded-md px-3 py-2";
345
267
  const TextInput = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
346
268
  return /* @__PURE__ */ qwik._jsxQ("div", null, {
@@ -1050,6 +972,80 @@ const ColorInput = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inline
1050
972
  }, null, 3, null)
1051
973
  ], 1, "0s_2");
1052
974
  }, "ColorInput_component_jilGo0Bn3Ps"));
975
+ const LoadingIcon = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
976
+ const props1 = qwik._restProps(props, [
977
+ "width",
978
+ "speed"
979
+ ]);
980
+ return /* @__PURE__ */ qwik._jsxS("div", {
981
+ ...props1,
982
+ class: {
983
+ "animate-spin rounded-full border-transparent border-l-current border-t-current": true,
984
+ ...props1.class
985
+ }
986
+ }, {
987
+ style: qwik._fnSignal((p0) => ({
988
+ borderWidth: p0.width / 8,
989
+ width: p0.width,
990
+ height: p0.width,
991
+ animation: `spin ${p0.speed ?? "0.6s"} ease-in-out infinite`
992
+ }), [
993
+ props
994
+ ], '{borderWidth:p0.width/8,width:p0.width,height:p0.width,animation:`spin ${p0.speed??"0.6s"} ease-in-out infinite`}')
995
+ }, 0, "1A_0");
996
+ }, "LoadingIcon_component_QMsA9D0RcAM"));
997
+ const Header = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
998
+ qwik._jsxBranch();
999
+ let Component = /* @__PURE__ */ qwik._jsxC(jsxRuntime.Fragment, {
1000
+ children: /* @__PURE__ */ qwik._jsxQ("h2", null, {
1001
+ class: "flex items-center font-bold text-2xl"
1002
+ }, [
1003
+ props.id && /* @__PURE__ */ qwik._jsxC(Anchor, {
1004
+ get id() {
1005
+ return props.id;
1006
+ },
1007
+ [qwik._IMMUTABLE]: {
1008
+ id: qwik._fnSignal((p0) => p0.id, [
1009
+ props
1010
+ ], "p0.id")
1011
+ }
1012
+ }, 3, "dL_0"),
1013
+ /* @__PURE__ */ qwik._jsxC(qwik.Slot, null, 3, "dL_1")
1014
+ ], 1, null)
1015
+ }, 1, "dL_2");
1016
+ if (props.subheader)
1017
+ Component = /* @__PURE__ */ qwik._jsxQ("div", null, {
1018
+ class: "flex flex-1 flex-col gap-1"
1019
+ }, [
1020
+ Component,
1021
+ /* @__PURE__ */ qwik._jsxQ("h3", null, {
1022
+ class: "flex items-center text-gray-400"
1023
+ }, qwik._fnSignal((p0) => p0.subheader, [
1024
+ props
1025
+ ], "p0.subheader"), 3, null)
1026
+ ], 1, "dL_3");
1027
+ if (props.loading !== void 0)
1028
+ Component = /* @__PURE__ */ qwik._jsxQ("div", null, {
1029
+ class: "flex"
1030
+ }, [
1031
+ Component,
1032
+ /* @__PURE__ */ qwik._jsxQ("div", null, {
1033
+ class: qwik._fnSignal((p0) => ({
1034
+ "transition-all duration-200": true,
1035
+ "opacity-0": !p0.loading,
1036
+ "opacity-100": p0.loading
1037
+ }), [
1038
+ props
1039
+ ], '{"transition-all duration-200":true,"opacity-0":!p0.loading,"opacity-100":p0.loading}')
1040
+ }, /* @__PURE__ */ qwik._jsxC(LoadingIcon, {
1041
+ width: 24,
1042
+ [qwik._IMMUTABLE]: {
1043
+ width: qwik._IMMUTABLE
1044
+ }
1045
+ }, 3, "dL_4"), 1, null)
1046
+ ], 1, "dL_5");
1047
+ return Component;
1048
+ }, "Header_component_FfGOhhBNG5k"));
1053
1049
  const Plus = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
1054
1050
  return /* @__PURE__ */ qwik._jsxS("svg", {
1055
1051
  ...props,
@@ -1298,7 +1294,7 @@ const SelectInputRaw = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.in
1298
1294
  /* @__PURE__ */ qwik._jsxC(Button, {
1299
1295
  get class() {
1300
1296
  return {
1301
- "flex": true,
1297
+ "flex focus:bg-gray-700": true,
1302
1298
  ...props.class
1303
1299
  };
1304
1300
  },
@@ -1336,11 +1332,11 @@ const SelectInputRaw = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.in
1336
1332
  ]),
1337
1333
  [qwik._IMMUTABLE]: {
1338
1334
  class: qwik._fnSignal((p0) => ({
1339
- "flex": true,
1335
+ "flex focus:bg-gray-700": true,
1340
1336
  ...p0.class
1341
1337
  }), [
1342
1338
  props
1343
- ], '{"flex":true,...p0.class}'),
1339
+ ], '{"flex focus:bg-gray-700":true,...p0.class}'),
1344
1340
  onClick$: qwik._IMMUTABLE
1345
1341
  }
1346
1342
  }, 1, "cA_4"),
@@ -1434,7 +1430,8 @@ const TextAreaRaw = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlin
1434
1430
  }, "TextAreaRaw_component_PZiPScYxgNk"));
1435
1431
  const Toggle = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
1436
1432
  const props1 = qwik._restProps(props, [
1437
- "center"
1433
+ "center",
1434
+ "label"
1438
1435
  ]);
1439
1436
  return /* @__PURE__ */ qwik._jsxQ("div", null, {
1440
1437
  class: qwik._fnSignal((p0) => ({
@@ -1467,11 +1464,13 @@ const Toggle = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl
1467
1464
  }
1468
1465
  }, null, 3, null)
1469
1466
  ], 1, null),
1470
- /* @__PURE__ */ qwik._jsxQ("label", {
1467
+ props.label && /* @__PURE__ */ qwik._jsxQ("label", {
1471
1468
  for: qwik._wrapSignal(props1, "id")
1472
1469
  }, {
1473
1470
  class: "text-gray-100"
1474
- }, /* @__PURE__ */ qwik._jsxC(qwik.Slot, null, 3, "yu_0"), 1, null)
1471
+ }, qwik._fnSignal((p0) => p0.label, [
1472
+ props
1473
+ ], "p0.label"), 3, "yu_0")
1475
1474
  ], 1, "yu_1");
1476
1475
  }, "Toggle_component_ujuOvR082hY"));
1477
1476
  const LogoBirdflop = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl((props) => {
@@ -1913,8 +1912,8 @@ exports.Anchor = Anchor;
1913
1912
  exports.Button = Button;
1914
1913
  exports.ButtonAnchor = ButtonAnchor;
1915
1914
  exports.Card = Card;
1916
- exports.CardHeader = CardHeader;
1917
1915
  exports.ColorInput = ColorInput;
1916
+ exports.Header = Header;
1918
1917
  exports.InputClasses = InputClasses;
1919
1918
  exports.LoadingIcon = LoadingIcon;
1920
1919
  exports.LogoBirdflop = LogoBirdflop;
@@ -1,4 +1,4 @@
1
- import { componentQrl, inlinedQrl, _jsxQ, _fnSignal, _restProps, _jsxS, _jsxC, Slot, _jsxBranch, _IMMUTABLE, useStylesQrl, _wrapSignal, useLexicalScope, useStore } from "@builder.io/qwik";
1
+ import { componentQrl, inlinedQrl, _jsxQ, _fnSignal, _restProps, _jsxS, _jsxC, Slot, _wrapSignal, useStylesQrl, useLexicalScope, _IMMUTABLE, _jsxBranch, useStore } from "@builder.io/qwik";
2
2
  import { isServer } from "@builder.io/qwik/build";
3
3
  import { Fragment } from "@builder.io/qwik/jsx-runtime";
4
4
  const Anchor = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => /* @__PURE__ */ _jsxQ("span", null, {
@@ -56,28 +56,6 @@ const ButtonAnchor = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((pr
56
56
  children: /* @__PURE__ */ _jsxC(Slot, null, 3, "7H_2")
57
57
  }, null, 0, "7H_3");
58
58
  }, "ButtonAnchor_component_vQT9xS0lqew"));
59
- const LoadingIcon = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
60
- const props1 = _restProps(props, [
61
- "width",
62
- "speed"
63
- ]);
64
- return /* @__PURE__ */ _jsxS("div", {
65
- ...props1,
66
- class: {
67
- "animate-spin rounded-full border-transparent border-l-current border-t-current": true,
68
- ...props1.class
69
- }
70
- }, {
71
- style: _fnSignal((p0) => ({
72
- borderWidth: p0.width / 8,
73
- width: p0.width,
74
- height: p0.width,
75
- animation: `spin ${p0.speed ?? "0.6s"} ease-in-out infinite`
76
- }), [
77
- props
78
- ], '{borderWidth:p0.width/8,width:p0.width,height:p0.width,animation:`spin ${p0.speed??"0.6s"} ease-in-out infinite`}')
79
- }, 0, "1A_0");
80
- }, "LoadingIcon_component_QMsA9D0RcAM"));
81
59
  const cardColorClasses = {
82
60
  pink: {
83
61
  card: {
@@ -185,28 +163,28 @@ const cardColorClasses = {
185
163
  },
186
164
  darkgray: {
187
165
  card: {
188
- bg_blobs: "bg-gray-800/10 border-gray-800/20",
166
+ bg_blobs: "bg-gray-800/10 border-gray-800/40",
189
167
  bg: "bg-gray-800/60 border-gray-800",
190
- hover: "hover:bg-gray-800/20",
191
- click: "active:bg-gray-700/20"
168
+ hover: "hover:bg-gray-800/40",
169
+ click: "active:bg-gray-700/40"
192
170
  },
193
171
  blobs: [
194
- "bg-gray-400",
195
172
  "bg-gray-500",
196
- "bg-gray-600"
173
+ "bg-gray-600",
174
+ "bg-gray-700"
197
175
  ]
198
176
  },
199
177
  darkergray: {
200
178
  card: {
201
- bg_blobs: "bg-gray-900/10 border-gray-900/20",
179
+ bg_blobs: "bg-gray-900/10 border-gray-900/50",
202
180
  bg: "bg-gray-900/60 border-gray-900",
203
- hover: "hover:bg-gray-900/20",
204
- click: "active:bg-gray-800/20"
181
+ hover: "hover:bg-gray-900/50",
182
+ click: "active:bg-gray-800/50"
205
183
  },
206
184
  blobs: [
207
- "bg-gray-400",
208
- "bg-gray-500",
209
- "bg-gray-600"
185
+ "bg-gray-600",
186
+ "bg-gray-700",
187
+ "bg-gray-800"
210
188
  ]
211
189
  }
212
190
  };
@@ -223,36 +201,30 @@ const Card = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
223
201
  const props1 = _restProps(props, [
224
202
  "color",
225
203
  "hover",
226
- "href",
227
204
  "row",
228
205
  "blobs"
229
206
  ]);
230
207
  const blob = Math.round(Math.random() * 6);
231
- return /* @__PURE__ */ _jsxS("div", {
208
+ let Component = /* @__PURE__ */ _jsxS("div", {
232
209
  ...props1,
233
- children: /* @__PURE__ */ _jsxQ("div", null, {
234
- class: {
235
- "p-8": true
236
- }
210
+ children: /* @__PURE__ */ _jsxC(Slot, null, 3, "OW_0"),
211
+ class: {
212
+ "flex gap-4 p-8 border rounded-lg transition-all": true,
213
+ [cardColorClasses[props.color ?? "darkgray"].card.bg]: !props.blobs,
214
+ [cardColorClasses[props.color ?? "darkgray"].card.bg_blobs]: props.blobs,
215
+ [cardColorClasses[props.color ?? "darkgray"].card.hover + " hover:shadow-lg"]: props.hover,
216
+ [cardColorClasses[props.color ?? "darkgray"].card.click + " active:scale-[99%] cursor-pointer select-none"]: props.hover == "clickable",
217
+ "flex-col": !props.row,
218
+ "flex-row items-center": props.row,
219
+ ...props1.class
220
+ }
221
+ }, null, 0, "OW_1");
222
+ if (props.blobs)
223
+ Component = /* @__PURE__ */ _jsxQ("div", null, {
224
+ class: "relative"
237
225
  }, [
238
- props.href && /* @__PURE__ */ _jsxQ("a", null, {
239
- class: "absolute inset-0 z-20",
240
- href: _fnSignal((p0) => p0.href, [
241
- props
242
- ], "p0.href")
243
- }, null, 3, "OW_0"),
226
+ Component,
244
227
  /* @__PURE__ */ _jsxQ("div", null, {
245
- class: "relative"
246
- }, /* @__PURE__ */ _jsxQ("div", null, {
247
- class: _fnSignal((p0) => ({
248
- "flex gap-4": true,
249
- "flex-col": !p0.row,
250
- "flex-row items-center": p0.row
251
- }), [
252
- props
253
- ], '{"flex gap-4":true,"flex-col":!p0.row,"flex-row items-center":p0.row}')
254
- }, /* @__PURE__ */ _jsxC(Slot, null, 3, "OW_1"), 1, null), 1, null),
255
- props.blobs && /* @__PURE__ */ _jsxQ("div", null, {
256
228
  class: "absolute -z-10 inset-0 w-full h-full transition-all overflow-clip animate-in fade-in anim-duration-[2s]",
257
229
  style: {
258
230
  containerType: "size"
@@ -281,64 +253,14 @@ const Card = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
281
253
  [cardColorClasses[props.color ?? "darkgray"].blobs[2]]: true
282
254
  }
283
255
  }, null, null, 3, null)
284
- ], 1, "OW_2")
285
- ], 1, null),
286
- class: {
287
- "flex-1 relative border rounded-lg group transition-all": true,
288
- [cardColorClasses[props.color ?? "darkgray"].card.bg]: !props.blobs,
289
- [cardColorClasses[props.color ?? "darkgray"].card.bg_blobs]: props.blobs,
290
- [cardColorClasses[props.color ?? "darkgray"].card.hover + " hover:shadow-lg"]: props.hover,
291
- [cardColorClasses[props.color ?? "darkgray"].card.click + " active:scale-[99%] cursor-pointer"]: props.hover == "clickable",
292
- ...props1.class
293
- }
294
- }, null, 0, "OW_3");
256
+ ], 1, null)
257
+ ], 1, "OW_2");
258
+ if (props1.href)
259
+ Component = /* @__PURE__ */ _jsxQ("a", {
260
+ href: _wrapSignal(props1, "href")
261
+ }, null, Component, 1, "OW_3");
262
+ return Component;
295
263
  }, "Card_component_DlkkcTEVka4"));
296
- const CardHeader = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
297
- _jsxBranch();
298
- return /* @__PURE__ */ _jsxQ("h1", null, {
299
- class: "flex font-bold text-gray-100 text-2xl"
300
- }, [
301
- props.id && /* @__PURE__ */ _jsxC(Anchor, {
302
- get id() {
303
- return props.id;
304
- },
305
- [_IMMUTABLE]: {
306
- id: _fnSignal((p0) => p0.id, [
307
- props
308
- ], "p0.id")
309
- }
310
- }, 3, "OW_4"),
311
- /* @__PURE__ */ _jsxQ("div", null, {
312
- class: "flex flex-1"
313
- }, /* @__PURE__ */ _jsxQ("div", null, {
314
- class: "flex flex-col"
315
- }, [
316
- /* @__PURE__ */ _jsxQ("div", null, {
317
- class: "flex items-center gap-3"
318
- }, /* @__PURE__ */ _jsxC(Slot, null, 3, "OW_5"), 1, null),
319
- /* @__PURE__ */ _jsxC(Slot, {
320
- name: "subheader",
321
- [_IMMUTABLE]: {
322
- name: _IMMUTABLE
323
- }
324
- }, 3, "OW_6")
325
- ], 1, null), 1, null),
326
- (props.loading ?? false) && /* @__PURE__ */ _jsxQ("div", null, {
327
- class: _fnSignal((p0) => ({
328
- "transition-all": true,
329
- "opacity-0": !(p0.loading ?? false),
330
- "opacity-100": p0.loading ?? false
331
- }), [
332
- props
333
- ], '{"transition-all":true,"opacity-0":!(p0.loading??false),"opacity-100":p0.loading??false}')
334
- }, /* @__PURE__ */ _jsxC(LoadingIcon, {
335
- width: 24,
336
- [_IMMUTABLE]: {
337
- width: _IMMUTABLE
338
- }
339
- }, 3, "OW_7"), 1, "OW_8")
340
- ], 1, "OW_9");
341
- }, "CardHeader_component_2xQZ6Uv7R4A"));
342
264
  const InputClasses = "transition ease-in-out text-lg border border-gray-700 bg-gray-800 text-gray-50 hover:bg-gray-700 hover:shadow-lg focus:bg-gray-700 focus:outline-none focus:border-gray-400 rounded-md px-3 py-2";
343
265
  const TextInput = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
344
266
  return /* @__PURE__ */ _jsxQ("div", null, {
@@ -1048,6 +970,80 @@ const ColorInput = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((prop
1048
970
  }, null, 3, null)
1049
971
  ], 1, "0s_2");
1050
972
  }, "ColorInput_component_jilGo0Bn3Ps"));
973
+ const LoadingIcon = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
974
+ const props1 = _restProps(props, [
975
+ "width",
976
+ "speed"
977
+ ]);
978
+ return /* @__PURE__ */ _jsxS("div", {
979
+ ...props1,
980
+ class: {
981
+ "animate-spin rounded-full border-transparent border-l-current border-t-current": true,
982
+ ...props1.class
983
+ }
984
+ }, {
985
+ style: _fnSignal((p0) => ({
986
+ borderWidth: p0.width / 8,
987
+ width: p0.width,
988
+ height: p0.width,
989
+ animation: `spin ${p0.speed ?? "0.6s"} ease-in-out infinite`
990
+ }), [
991
+ props
992
+ ], '{borderWidth:p0.width/8,width:p0.width,height:p0.width,animation:`spin ${p0.speed??"0.6s"} ease-in-out infinite`}')
993
+ }, 0, "1A_0");
994
+ }, "LoadingIcon_component_QMsA9D0RcAM"));
995
+ const Header = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
996
+ _jsxBranch();
997
+ let Component = /* @__PURE__ */ _jsxC(Fragment, {
998
+ children: /* @__PURE__ */ _jsxQ("h2", null, {
999
+ class: "flex items-center font-bold text-2xl"
1000
+ }, [
1001
+ props.id && /* @__PURE__ */ _jsxC(Anchor, {
1002
+ get id() {
1003
+ return props.id;
1004
+ },
1005
+ [_IMMUTABLE]: {
1006
+ id: _fnSignal((p0) => p0.id, [
1007
+ props
1008
+ ], "p0.id")
1009
+ }
1010
+ }, 3, "dL_0"),
1011
+ /* @__PURE__ */ _jsxC(Slot, null, 3, "dL_1")
1012
+ ], 1, null)
1013
+ }, 1, "dL_2");
1014
+ if (props.subheader)
1015
+ Component = /* @__PURE__ */ _jsxQ("div", null, {
1016
+ class: "flex flex-1 flex-col gap-1"
1017
+ }, [
1018
+ Component,
1019
+ /* @__PURE__ */ _jsxQ("h3", null, {
1020
+ class: "flex items-center text-gray-400"
1021
+ }, _fnSignal((p0) => p0.subheader, [
1022
+ props
1023
+ ], "p0.subheader"), 3, null)
1024
+ ], 1, "dL_3");
1025
+ if (props.loading !== void 0)
1026
+ Component = /* @__PURE__ */ _jsxQ("div", null, {
1027
+ class: "flex"
1028
+ }, [
1029
+ Component,
1030
+ /* @__PURE__ */ _jsxQ("div", null, {
1031
+ class: _fnSignal((p0) => ({
1032
+ "transition-all duration-200": true,
1033
+ "opacity-0": !p0.loading,
1034
+ "opacity-100": p0.loading
1035
+ }), [
1036
+ props
1037
+ ], '{"transition-all duration-200":true,"opacity-0":!p0.loading,"opacity-100":p0.loading}')
1038
+ }, /* @__PURE__ */ _jsxC(LoadingIcon, {
1039
+ width: 24,
1040
+ [_IMMUTABLE]: {
1041
+ width: _IMMUTABLE
1042
+ }
1043
+ }, 3, "dL_4"), 1, null)
1044
+ ], 1, "dL_5");
1045
+ return Component;
1046
+ }, "Header_component_FfGOhhBNG5k"));
1051
1047
  const Plus = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
1052
1048
  return /* @__PURE__ */ _jsxS("svg", {
1053
1049
  ...props,
@@ -1296,7 +1292,7 @@ const SelectInputRaw = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((
1296
1292
  /* @__PURE__ */ _jsxC(Button, {
1297
1293
  get class() {
1298
1294
  return {
1299
- "flex": true,
1295
+ "flex focus:bg-gray-700": true,
1300
1296
  ...props.class
1301
1297
  };
1302
1298
  },
@@ -1334,11 +1330,11 @@ const SelectInputRaw = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((
1334
1330
  ]),
1335
1331
  [_IMMUTABLE]: {
1336
1332
  class: _fnSignal((p0) => ({
1337
- "flex": true,
1333
+ "flex focus:bg-gray-700": true,
1338
1334
  ...p0.class
1339
1335
  }), [
1340
1336
  props
1341
- ], '{"flex":true,...p0.class}'),
1337
+ ], '{"flex focus:bg-gray-700":true,...p0.class}'),
1342
1338
  onClick$: _IMMUTABLE
1343
1339
  }
1344
1340
  }, 1, "cA_4"),
@@ -1432,7 +1428,8 @@ const TextAreaRaw = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((pro
1432
1428
  }, "TextAreaRaw_component_PZiPScYxgNk"));
1433
1429
  const Toggle = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
1434
1430
  const props1 = _restProps(props, [
1435
- "center"
1431
+ "center",
1432
+ "label"
1436
1433
  ]);
1437
1434
  return /* @__PURE__ */ _jsxQ("div", null, {
1438
1435
  class: _fnSignal((p0) => ({
@@ -1465,11 +1462,13 @@ const Toggle = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =
1465
1462
  }
1466
1463
  }, null, 3, null)
1467
1464
  ], 1, null),
1468
- /* @__PURE__ */ _jsxQ("label", {
1465
+ props.label && /* @__PURE__ */ _jsxQ("label", {
1469
1466
  for: _wrapSignal(props1, "id")
1470
1467
  }, {
1471
1468
  class: "text-gray-100"
1472
- }, /* @__PURE__ */ _jsxC(Slot, null, 3, "yu_0"), 1, null)
1469
+ }, _fnSignal((p0) => p0.label, [
1470
+ props
1471
+ ], "p0.label"), 3, "yu_0")
1473
1472
  ], 1, "yu_1");
1474
1473
  }, "Toggle_component_ujuOvR082hY"));
1475
1474
  const LogoBirdflop = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) => {
@@ -1912,8 +1911,8 @@ export {
1912
1911
  Button,
1913
1912
  ButtonAnchor,
1914
1913
  Card,
1915
- CardHeader,
1916
1914
  ColorInput,
1915
+ Header,
1917
1916
  InputClasses,
1918
1917
  LoadingIcon,
1919
1918
  LogoBirdflop,
@@ -9,10 +9,6 @@ interface CardProps extends Omit<PropsOf<'div'>, 'class'> {
9
9
  [key: string]: boolean;
10
10
  };
11
11
  }
12
- interface CardHeaderProps {
13
- id?: string;
14
- loading?: boolean;
15
- }
16
12
  export declare const cardColorClasses: {
17
13
  pink: {
18
14
  card: {
@@ -106,5 +102,4 @@ export declare const cardColorClasses: {
106
102
  };
107
103
  };
108
104
  export declare const Card: import("@builder.io/qwik").Component<CardProps>;
109
- export declare const CardHeader: import("@builder.io/qwik").Component<CardHeaderProps>;
110
105
  export {};
@@ -0,0 +1,8 @@
1
+ import type { JSXOutput } from '@builder.io/qwik';
2
+ interface HeaderProps {
3
+ id?: string;
4
+ loading?: boolean;
5
+ subheader?: string | JSXOutput;
6
+ }
7
+ export declare const Header: import("@builder.io/qwik").Component<HeaderProps>;
8
+ export {};
@@ -6,6 +6,7 @@ interface ToggleProps extends Omit<(PropsOf<'input'> & {
6
6
  [key: string]: boolean;
7
7
  };
8
8
  center?: boolean;
9
+ label?: string;
9
10
  }
10
11
  export declare const Toggle: import("@builder.io/qwik").Component<ToggleProps>;
11
12
  export {};
@@ -2,6 +2,7 @@ export * from './elements/Anchor';
2
2
  export * from './elements/Button';
3
3
  export * from './elements/Card';
4
4
  export * from './elements/ColorInput';
5
+ export * from './elements/Header';
5
6
  export * from './elements/LoadingIcon';
6
7
  export * from './elements/NumberInput';
7
8
  export * from './elements/SelectInput';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luminescent/ui",
3
- "version": "0.6.1",
3
+ "version": "0.7.0",
4
4
  "description": "Luminescent UI library",
5
5
  "main": "./lib/index.qwik.mjs",
6
6
  "qwik": "./lib/index.qwik.mjs",