@spear-ai/spectral 1.12.6 → 1.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/.js +41 -38
  2. package/dist/Button.d.ts +1 -1
  3. package/dist/Button.js +46 -45
  4. package/dist/Checkbox.js +6 -5
  5. package/dist/{Combobox-DCCcIDgq.js → Combobox-DRQqx0os.js} +9 -8
  6. package/dist/Combobox.js +1 -1
  7. package/dist/ControlGroup/ControlGroupSelect.d.ts +5 -1
  8. package/dist/ControlGroup/ControlGroupSelect.js +73 -67
  9. package/dist/ControlGroup.js +29 -24
  10. package/dist/DateTimePicker/TimePeriodSelect.js +1 -1
  11. package/dist/DateTimePicker.js +8 -7
  12. package/dist/DropdownMenu-BO_RPCVU.js +870 -0
  13. package/dist/DropdownMenu.d.ts +3 -2
  14. package/dist/DropdownMenu.js +2 -868
  15. package/dist/FormFieldMessage.d.ts +11 -0
  16. package/dist/FormFieldMessage.js +55 -0
  17. package/dist/Input.d.ts +1 -0
  18. package/dist/Input.js +68 -67
  19. package/dist/InputNumeric.js +3 -14
  20. package/dist/{InputOTP-DyhesOLs.js → InputOTP-DLn7ja7J.js} +5 -4
  21. package/dist/InputOTP.js +1 -1
  22. package/dist/MultiSelect/MultiSelectBase.js +105 -104
  23. package/dist/RadioButtonGroup/RadioButtonGroupBase.d.ts +2 -2
  24. package/dist/{RadioGroup-BsBK247l.js → RadioGroup-D-XjCU4Q.js} +33 -28
  25. package/dist/RadioGroup.js +1 -1
  26. package/dist/Select.js +21 -20
  27. package/dist/{Switch-Vep4hsq4.js → Switch-CSmXtkia.js} +26 -25
  28. package/dist/Switch.js +1 -1
  29. package/dist/Textarea/TextareaUtils.js +4 -8
  30. package/dist/Textarea.js +23 -22
  31. package/dist/Toggle.js +1 -1
  32. package/dist/ToggleGroup/ToggleGroup.context.d.ts +9 -0
  33. package/dist/ToggleGroup/ToggleGroup.context.js +11 -0
  34. package/dist/ToggleGroup/ToggleGroupItem.d.ts +15 -0
  35. package/dist/ToggleGroup/ToggleGroupItem.js +35 -0
  36. package/dist/ToggleGroup/ToggleGroupSplitMenuItem.d.ts +22 -0
  37. package/dist/ToggleGroup/ToggleGroupSplitMenuItem.js +114 -0
  38. package/dist/ToggleGroup.d.ts +6 -14
  39. package/dist/ToggleGroup.js +24 -46
  40. package/dist/Tooltip.js +1 -1
  41. package/dist/index.d.ts +2 -1
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/primitives/select.d.ts +1 -1
  44. package/dist/primitives/select.d.ts.map +1 -1
  45. package/dist/primitives/select.js +1 -1
  46. package/dist/primitives/textarea.js +1 -1
  47. package/dist/{select-oAOoVl5g.js → select-DFE8xm1L.js} +230 -259
  48. package/dist/styles/spectral.css +1 -1
  49. package/dist/utils/formFieldUtils.d.ts +1 -13
  50. package/dist/utils/formFieldUtils.d.ts.map +1 -1
  51. package/dist/utils/formFieldUtils.js +48 -69
  52. package/package.json +1 -1
  53. /package/dist/{Tooltip-vEdD4f2U.js → Tooltip-CTjKOfvC.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"formFieldUtils.d.ts","sourceRoot":"","sources":["../../src/utils/formFieldUtils.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formFieldUtils.d.ts","sourceRoot":"","sources":["../../src/utils/formFieldUtils.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  'use client'
2
2
  import { t as e } from "../twUtils-BpqlKSeB.js";
3
- import { useCallback as t, useEffect as n, useId as r, useRef as i, useState as a } from "react";
4
- import { jsx as o } from "react/jsx-runtime";
3
+ import { ErrorMessage as t, WarningMessage as n } from "../FormFieldMessage.js";
4
+ import { useCallback as r, useEffect as i, useId as a, useRef as o, useState as s } from "react";
5
+ import { jsx as c } from "react/jsx-runtime";
5
6
  //#region src/utils/formFieldUtils.tsx
6
- var s = ({ dropdownWidth: e, triggerStyleWidth: t, triggerWidth: n, viewportMaxWidth: r = "calc(100vw - 2rem)" }) => {
7
+ var l = ({ dropdownWidth: e, triggerStyleWidth: t, triggerWidth: n, viewportMaxWidth: r = "calc(100vw - 2rem)" }) => {
7
8
  let i = e === "trigger" ? "trigger" : e === "content" ? "content" : "custom", a = e === "trigger" ? n : e === "content" ? "max-content" : e, o = {
8
9
  maxWidth: r,
9
10
  overflowX: "auto",
@@ -19,107 +20,107 @@ var s = ({ dropdownWidth: e, triggerStyleWidth: t, triggerWidth: n, viewportMaxW
19
20
  },
20
21
  resolvedDropdownWidth: a
21
22
  };
22
- }, c = (e) => ({
23
+ }, u = (e) => ({
23
24
  success: "border-success-400 hover:border-success-500 focus-visible:border-success-400 focus-visible:outline-success-400",
24
25
  error: "border-danger-400 hover:border-danger-500 focus-visible:border-danger-400 focus-visible:outline-danger-400",
25
26
  warning: "border-warning-400 hover:border-warning-400 focus-visible:border-warning-400 focus-visible:outline-warning-400",
26
27
  loading: "cursor-wait border-input-border--disabled pointer-events-none",
27
28
  disabled: "cursor-not-allowed opacity-50 border-input-border--disabled text-input-text--disabled",
28
29
  default: ""
29
- })[e], l = (t = !1, n, r) => e("h-12 rounded-lg px-4 text-base flex w-full items-center justify-between border-2 border-input-border bg-input-bg", "text-input-text transition duration-200 hover:border-input-border--hover focus:border-input-border--focus focus:outline-none", "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-input-border--focus", "disabled:cursor-not-allowed disabled:border-input-border--disabled disabled:bg-input-bg--disabled disabled:opacity-50", t && "border-input-border--focus outline outline-2 outline-offset-2 outline-input-border--focus", c(n), r), u = (t, n = "bottom") => {
30
+ })[e], d = (t = !1, n, r) => e("h-12 rounded-lg px-4 text-base flex w-full items-center justify-between border-2 border-input-border bg-input-bg", "text-input-text transition duration-200 hover:border-input-border--hover focus:border-input-border--focus focus:outline-none", "disabled:cursor-not-allowed disabled:border-input-border--disabled disabled:bg-input-bg--disabled disabled:opacity-50", t && "border-input-border--focus hover:border-input-border--focus", u(n), r), f = (t, n = "bottom") => {
30
31
  let r = n === "bottom" ? "top-full mt-1 origin-top" : "bottom-full mb-1 origin-bottom", i = n === "bottom" ? t ? "scale-100 opacity-100 translate-y-0" : "scale-95 opacity-0 -translate-y-1 pointer-events-none" : t ? "scale-100 opacity-100 translate-y-0" : "scale-95 opacity-0 translate-y-1 pointer-events-none";
31
- return e("left-0 right-0 absolute z-50", d(), "transition-[opacity,transform] duration-150 motion-reduce:transform-none motion-reduce:transition-none", "will-change-[opacity,transform]", r, i);
32
- }, d = () => "rounded-lg border border-input-border bg-input-bg shadow-md", f = (t, n) => e("peer h-12 rounded-md ps-3 pe-12 text-base flex w-full border-2 border-input-border bg-input-bg transition duration-200", "placeholder:text-input-text-placeholder hover:border-input-border--hover focus:border-input-border--focus focus:outline-none", "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-input-border--focus", "disabled:pointer-events-none disabled:border-input-border--disabled disabled:bg-input-bg--disabled disabled:text-input-text--disabled", c(t), n), p = (t, n) => e("peer h-24 rounded-md p-3 text-base flex w-full resize-none border-2 border-input-border bg-input-bg transition duration-200", "placeholder:text-input-text-placeholder hover:border-input-border--hover focus:border-input-border--focus focus:outline-none", "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-input-border--focus", "disabled:pointer-events-none disabled:border-input-border--disabled disabled:bg-input-bg--disabled disabled:text-input-text--disabled", c(t), n), m = (e, t) => {
33
- let n = r();
32
+ return e("left-0 right-0 absolute z-50", p(), "transition-[opacity,transform] duration-150 motion-reduce:transform-none motion-reduce:transition-none", "will-change-[opacity,transform]", r, i);
33
+ }, p = () => "rounded-lg border border-input-border bg-input-bg shadow-md", m = (t, n) => e("peer h-12 rounded-md ps-3 pe-12 text-base flex w-full border-2 border-input-border bg-input-bg transition duration-200", "placeholder:text-input-text-placeholder hover:border-input-border--hover focus:border-input-border--focus focus:outline-none", "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-input-border--focus", "disabled:pointer-events-none disabled:border-input-border--disabled disabled:bg-input-bg--disabled disabled:text-input-text--disabled", u(t), n), h = (t, n) => e("peer h-24 rounded-md p-3 text-base flex w-full resize-none border-2 border-input-border bg-input-bg transition duration-200", "placeholder:text-input-text-placeholder hover:border-input-border--hover focus:border-input-border--focus focus:outline-none", "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-input-border--focus", "disabled:pointer-events-none disabled:border-input-border--disabled disabled:bg-input-bg--disabled disabled:text-input-text--disabled", u(t), n), g = (e, t) => {
34
+ let n = a();
34
35
  if (e) return e;
35
- let i = t?.trim().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9\-_.:]/g, "");
36
- return i ? `${i}-${n}` : n;
37
- }, h = (e) => `${e}-error`, g = (t, n, r, i) => ({
36
+ let r = t?.trim().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9\-_.:]/g, "");
37
+ return r ? `${r}-${n}` : n;
38
+ }, _ = (e) => `${e}-error`, v = (t, n, r, i) => ({
38
39
  "aria-invalid": t === "error",
39
40
  "aria-required": r,
40
41
  "aria-describedby": e((t === "error" || t === "warning") && i, n) || void 0
41
- }), _ = (e = {}) => ({
42
+ }), y = (e = {}) => ({
42
43
  "--field-border-radius": "0.5rem",
43
44
  "--field-height": "3rem",
44
45
  "--field-padding": "1rem",
45
46
  ...e
46
- }), v = (e, t = "default") => ({
47
+ }), b = (e, t = "default") => ({
47
48
  isDisabled: e ?? t === "disabled",
48
49
  isLoading: t === "loading",
49
50
  isInvalid: t === "error"
50
- }), y = (e) => {
51
- let t = i(null);
52
- return n(() => {
51
+ }), x = (e) => {
52
+ let t = o(null);
53
+ return i(() => {
53
54
  let n = (n) => {
54
55
  t.current && !t.current.contains(n.target) && e();
55
56
  };
56
57
  return document.addEventListener("mousedown", n), () => document.removeEventListener("mousedown", n);
57
58
  }, [e]), t;
58
- }, b = (e, r = !1, i, o, s, c) => {
59
- let [l, u] = a(-1);
60
- n(() => {
61
- if (e) if (r) u(0);
59
+ }, S = (e, t = !1, n, a, o, c) => {
60
+ let [l, u] = s(-1);
61
+ i(() => {
62
+ if (e) if (t) u(0);
62
63
  else {
63
- let e = s.findIndex((e) => e.value === c);
64
+ let e = o.findIndex((e) => e.value === c);
64
65
  u(e >= 0 ? e : 0);
65
66
  }
66
67
  else u(-1);
67
68
  }, [
68
69
  e,
69
70
  c,
70
- s,
71
- r
71
+ o,
72
+ t
72
73
  ]);
73
- let d = t((e, t) => {
74
+ let d = r((e, t) => {
74
75
  let n = e + (t === "down" ? 1 : -1);
75
- return n = t === "down" ? Math.min(n, s.length - 1) : Math.max(n, 0), s[n]?.disabled && n !== e ? d(n, t) : n;
76
- }, [s]);
76
+ return n = t === "down" ? Math.min(n, o.length - 1) : Math.max(n, 0), o[n]?.disabled && n !== e ? d(n, t) : n;
77
+ }, [o]);
77
78
  return {
78
79
  focusedIndex: l,
79
80
  setFocusedIndex: u,
80
- handleKeyDown: t((t) => {
81
+ handleKeyDown: r((r) => {
81
82
  if (!e) return [
82
83
  "ArrowDown",
83
84
  "ArrowUp",
84
85
  " ",
85
86
  "Enter"
86
- ].includes(t.key) ? (t.preventDefault(), "open") : void 0;
87
- let n = {
87
+ ].includes(r.key) ? (r.preventDefault(), "open") : void 0;
88
+ let i = {
88
89
  ArrowDown: () => {
89
- t.preventDefault(), u((e) => d(e, "down"));
90
+ r.preventDefault(), u((e) => d(e, "down"));
90
91
  },
91
92
  ArrowUp: () => {
92
- t.preventDefault(), u((e) => d(e, "up"));
93
+ r.preventDefault(), u((e) => d(e, "up"));
93
94
  },
94
95
  Enter: () => {
95
- t.preventDefault(), l >= 0 && s[l] && !s[l].disabled && (o(s[l].value), r || i());
96
+ r.preventDefault(), l >= 0 && o[l] && !o[l].disabled && (a(o[l].value), t || n());
96
97
  },
97
98
  " ": () => {
98
- t.preventDefault(), l >= 0 && s[l] && !s[l].disabled && (o(s[l].value), r || i());
99
+ r.preventDefault(), l >= 0 && o[l] && !o[l].disabled && (a(o[l].value), t || n());
99
100
  },
100
101
  Escape: () => {
101
- t.preventDefault(), i();
102
+ r.preventDefault(), n();
102
103
  },
103
104
  Home: () => {
104
- t.preventDefault(), u(0);
105
+ r.preventDefault(), u(0);
105
106
  },
106
107
  End: () => {
107
- t.preventDefault(), u(s.length - 1);
108
+ r.preventDefault(), u(o.length - 1);
108
109
  }
109
- }[t.key];
110
- n && n();
110
+ }[r.key];
111
+ i && i();
111
112
  }, [
112
- s,
113
- l,
114
113
  o,
115
- i,
114
+ l,
115
+ a,
116
+ n,
116
117
  e,
117
- r,
118
+ t,
118
119
  d
119
120
  ]),
120
121
  isOpen: e
121
122
  };
122
- }, x = (e) => {
123
+ }, C = (e) => {
123
124
  let t = {}, n = [];
124
125
  return e.forEach((e) => {
125
126
  e.group ? (t[e.group] || (t[e.group] = []), t[e.group].push(e)) : n.push(e);
@@ -128,42 +129,20 @@ var s = ({ dropdownWidth: e, triggerStyleWidth: t, triggerWidth: n, viewportMaxW
128
129
  ungrouped: n,
129
130
  hasGroups: Object.keys(t).length > 0
130
131
  };
131
- }, S = ({ className: t, message: n = "Loading…" }) => /* @__PURE__ */ o("div", {
132
+ }, w = ({ className: t, message: n = "Loading…" }) => /* @__PURE__ */ c("div", {
132
133
  "aria-live": "polite",
133
134
  className: e("gap-2 py-6 text-base text-input-text-secondary flex items-center justify-center", t),
134
135
  role: "status",
135
136
  children: n
136
- }), C = ({ className: t, message: n = "No options found" }) => /* @__PURE__ */ o("div", {
137
+ }), T = ({ className: t, message: n = "No options found" }) => /* @__PURE__ */ c("div", {
137
138
  className: e("py-6 text-base text-center text-text-secondary", t),
138
139
  role: "status",
139
140
  children: n
140
- }), w = (e) => e ? typeof e == "string" ? e : Array.isArray(e) ? e.join(", ") : typeof e == "object" ? e.message ? e.message : e.error ? e.error : e.details ? e.details : JSON.stringify(e) : String(e) : null, T = ({ className: t, id: n, dataTestId: r, message: i }) => {
141
- let a = w(i);
142
- return a ? /* @__PURE__ */ o("p", {
143
- "aria-atomic": "true",
144
- "aria-live": "assertive",
145
- className: e("m-0! mt-1.5! text-base text-danger-400!", t),
146
- "data-testid": r ?? "spectral-form-field-error-message",
147
- id: n,
148
- role: "alert",
149
- children: a
150
- }) : null;
151
- }, E = ({ className: t, id: n, dataTestId: r, message: i }) => {
152
- let a = w(i);
153
- return a ? /* @__PURE__ */ o("p", {
154
- "aria-atomic": "true",
155
- "aria-live": "polite",
156
- className: e("m-0! mt-1.5! text-base text-warning-400!", t),
157
- "data-testid": r ?? "spectral-form-field-warning-message",
158
- id: n,
159
- role: "status",
160
- children: a
161
- }) : null;
162
- }, D = (t = !1, n, r) => e("rounded-sm py-1.5 pl-2 pr-8 text-base relative flex w-full cursor-pointer items-center outline-none select-none hover:bg-input-bg--hover", n && "bg-input-bg--hover", r && "bg-input-bg--selected text-input-text", t && "pointer-events-none text-input-text--disabled"), O = (e) => {
141
+ }), E = (t = !1, n, r) => e("my-0.5 first:mt-0 last:mb-0 rounded-sm py-1.5 pl-2 pr-8 text-base relative flex w-full cursor-pointer items-center outline-none select-none hover:bg-input-bg--hover data-[highlighted]:bg-input-bg--hover data-[highlighted]:text-input-text", n && "bg-input-bg--hover", r && "bg-input-bg--selected text-input-text", t && "pointer-events-none text-input-text--disabled"), D = (e) => {
163
142
  e && e.scrollIntoView({
164
143
  block: "nearest",
165
144
  behavior: "smooth"
166
145
  });
167
146
  };
168
147
  //#endregion
169
- export { C as EmptyState, T as ErrorMessage, S as LoadingState, E as WarningMessage, g as getAriaProps, u as getDropdownClasses, d as getDropdownSurfaceClasses, s as getDropdownWidthStyles, h as getErrorMessageId, _ as getFormFieldCSSProperties, f as getInputClasses, D as getOptionClasses, c as getStateClasses, p as getTextareaClasses, l as getTriggerClasses, x as groupOptions, O as scrollIntoView, y as useClickOutside, m as useFormFieldId, v as useFormFieldState, b as useKeyboardNavigation };
148
+ export { T as EmptyState, t as ErrorMessage, w as LoadingState, n as WarningMessage, v as getAriaProps, f as getDropdownClasses, p as getDropdownSurfaceClasses, l as getDropdownWidthStyles, _ as getErrorMessageId, y as getFormFieldCSSProperties, m as getInputClasses, E as getOptionClasses, u as getStateClasses, h as getTextareaClasses, d as getTriggerClasses, C as groupOptions, D as scrollIntoView, x as useClickOutside, g as useFormFieldId, b as useFormFieldState, S as useKeyboardNavigation };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spear-ai/spectral",
3
- "version": "1.12.6",
3
+ "version": "1.13.1",
4
4
  "type": "module",
5
5
  "private": false,
6
6
  "repository": {