impact-nova 1.7.6 → 1.7.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,104 +1,112 @@
1
- import { jsxs as e, jsx as d, Fragment as w } from "react/jsx-runtime";
1
+ import { jsxs as e, jsx as a, Fragment as N } from "react/jsx-runtime";
2
2
  import * as m from "react";
3
- import { cva as N } from "class-variance-authority";
4
- import { Info as f } from "../../icons/index.js";
5
- import { cn as t } from "../../lib/utils.js";
6
- const y = N(
7
- "flex min-h-20 w-full rounded-md border border-field bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-content-empty focus-visible:outline-none focus-visible:border-brand hover:border-brand disabled:cursor-not-allowed disabled:bg-disabled-surface disabled:text-disabled-foreground disabled:border-stroke md:text-sm",
3
+ import { cva as y } from "class-variance-authority";
4
+ import { Info as x } from "../../icons/index.js";
5
+ import { cn as d } from "../../lib/utils.js";
6
+ const z = y(
7
+ "flex w-full rounded-md border border-field bg-transparent px-3 py-2 text-sm font-medium shadow-sm transition-colors placeholder:font-medium placeholder:text-content-empty focus-visible:outline-none focus-visible:border-brand hover:border-brand disabled:cursor-not-allowed disabled:bg-disabled-surface disabled:text-disabled-foreground disabled:border-stroke",
8
8
  {
9
9
  variants: {
10
10
  isError: {
11
11
  true: "border-destructive hover:border-destructive",
12
12
  false: ""
13
13
  },
14
+ size: {
15
+ default: "min-h-20",
16
+ sm: "min-h-14",
17
+ md: "min-h-[72px]",
18
+ lg: "min-h-32"
19
+ },
14
20
  disabled: {
15
- true: "cursor-not-allowed opacity-100 bg-disabled-surface border-stroke text-disabled-foreground hover:border-stroke",
21
+ true: "cursor-not-allowed opacity-100 bg-disabled-surface border-stroke text-disabled-foreground placeholder:text-disabled-foreground hover:border-stroke",
16
22
  false: ""
17
23
  }
18
24
  },
19
25
  defaultVariants: {
26
+ size: "default",
20
27
  isError: !1
21
28
  }
22
29
  }
23
- ), k = m.forwardRef(
30
+ ), C = m.forwardRef(
24
31
  ({
25
32
  className: b,
26
33
  label: u,
27
- helperText: s,
28
- helperTextPosition: l = "absolute",
29
- characterLimit: c,
30
- isError: a,
31
- disabled: r,
32
- value: i,
33
- onChange: g,
34
+ helperText: l,
35
+ helperTextPosition: s = "absolute",
36
+ characterLimit: o,
37
+ isError: t,
38
+ size: g,
39
+ disabled: i,
40
+ value: r,
41
+ onChange: v,
34
42
  ...n
35
- }, v) => {
36
- const [p, o] = m.useState(0);
43
+ }, p) => {
44
+ const [h, c] = m.useState(0);
37
45
  m.useEffect(() => {
38
- i ? o(String(i).length) : n.defaultValue && o(String(n.defaultValue).length);
39
- }, [i, n.defaultValue]);
40
- const h = (x) => {
41
- o(x.target.value.length), g?.(x);
46
+ r ? c(String(r).length) : n.defaultValue && c(String(n.defaultValue).length);
47
+ }, [r, n.defaultValue]);
48
+ const w = (f) => {
49
+ c(f.target.value.length), v?.(f);
42
50
  };
43
51
  return /* @__PURE__ */ e("div", { className: "flex w-full min-w-[240px] flex-col gap-[6px]", children: [
44
52
  /* @__PURE__ */ e("div", { className: "flex flex-col gap-[6px]", children: [
45
53
  u && /* @__PURE__ */ e(
46
54
  "label",
47
55
  {
48
- className: t(
56
+ className: d(
49
57
  "text-xs font-medium leading-[18px] text-content-tertiary",
50
- r && "opacity-70",
51
- a && "text-destructive"
58
+ i && "opacity-70",
59
+ t && "text-destructive"
52
60
  ),
53
61
  children: [
54
62
  u,
55
63
  " ",
56
- n.required && /* @__PURE__ */ d("span", { className: "text-destructive", children: "*" })
64
+ n.required && /* @__PURE__ */ a("span", { className: "text-destructive", children: "*" })
57
65
  ]
58
66
  }
59
67
  ),
60
68
  /* @__PURE__ */ e(
61
69
  "div",
62
70
  {
63
- className: t(
64
- s && l === "absolute" && "relative"
71
+ className: d(
72
+ l && s === "absolute" && "relative"
65
73
  ),
66
74
  children: [
67
- /* @__PURE__ */ d(
75
+ /* @__PURE__ */ a(
68
76
  "textarea",
69
77
  {
70
- className: t(
71
- y({ isError: a, disabled: r, className: b }),
78
+ className: d(
79
+ z({ isError: t, size: g, disabled: i, className: b }),
72
80
  "bg-canvas",
73
- r && "bg-disabled-surface"
81
+ i && "bg-disabled-surface"
74
82
  ),
75
- ref: v,
76
- disabled: !!r,
77
- value: i,
78
- onChange: h,
83
+ ref: p,
84
+ disabled: !!i,
85
+ value: r,
86
+ onChange: w,
79
87
  "data-component": "textarea",
80
88
  ...n
81
89
  }
82
90
  ),
83
- s && l === "absolute" && /* @__PURE__ */ e(
91
+ l && s === "absolute" && /* @__PURE__ */ e(
84
92
  "div",
85
93
  {
86
- className: t(
94
+ className: d(
87
95
  "absolute left-0 top-full z-10 mt-1 flex min-w-0 max-w-full items-center gap-[6px] text-[12px] font-medium leading-[18px] text-navigation-muted",
88
- a && "text-destructive"
96
+ t && "text-destructive"
89
97
  ),
90
98
  children: [
91
- /* @__PURE__ */ d(
92
- f,
99
+ /* @__PURE__ */ a(
100
+ x,
93
101
  {
94
102
  size: "xs",
95
- className: t(
103
+ className: d(
96
104
  "shrink-0",
97
- a ? "text-destructive" : "text-content-muted"
105
+ t ? "text-destructive" : "text-content-muted"
98
106
  )
99
107
  }
100
108
  ),
101
- /* @__PURE__ */ d("p", { className: "min-w-0", children: s })
109
+ /* @__PURE__ */ a("p", { className: "min-w-0", children: l })
102
110
  ]
103
111
  }
104
112
  )
@@ -106,47 +114,44 @@ const y = N(
106
114
  }
107
115
  )
108
116
  ] }),
109
- (s && l === "flow" || c) && /* @__PURE__ */ e("div", { className: "flex items-center justify-between gap-[6px]", children: [
110
- /* @__PURE__ */ d(
117
+ (l && s === "flow" || o) && /* @__PURE__ */ e("div", { className: "flex items-center justify-between gap-[6px]", children: [
118
+ /* @__PURE__ */ a(
111
119
  "div",
112
120
  {
113
- className: t(
121
+ className: d(
114
122
  "flex min-w-0 flex-1 items-center gap-[6px]",
115
- a && "text-destructive"
123
+ t && "text-destructive"
116
124
  ),
117
- children: s && l === "flow" && /* @__PURE__ */ e(w, { children: [
118
- /* @__PURE__ */ d(
119
- f,
125
+ children: l && s === "flow" && /* @__PURE__ */ e(N, { children: [
126
+ /* @__PURE__ */ a(
127
+ x,
120
128
  {
121
129
  size: "xs",
122
- className: t(
123
- "shrink-0",
124
- a ? "text-destructive" : "text-content-muted"
125
- )
130
+ color: t ? "destructive" : "muted"
126
131
  }
127
132
  ),
128
- /* @__PURE__ */ d(
133
+ /* @__PURE__ */ a(
129
134
  "p",
130
135
  {
131
- className: t(
136
+ className: d(
132
137
  "min-w-0 text-[12px] font-medium leading-[18px] text-navigation-muted",
133
- a && "text-destructive"
138
+ t && "text-destructive"
134
139
  ),
135
- children: s
140
+ children: l
136
141
  }
137
142
  )
138
143
  ] })
139
144
  }
140
145
  ),
141
- c && /* @__PURE__ */ e(
146
+ o && /* @__PURE__ */ e(
142
147
  "div",
143
148
  {
144
149
  className: "text-[12px] font-medium leading-[18px] text-navigation-muted text-right",
145
150
  "data-component": "character-count-indicator",
146
151
  children: [
147
- p,
152
+ h,
148
153
  "/",
149
- c
154
+ o
150
155
  ]
151
156
  }
152
157
  )
@@ -154,7 +159,7 @@ const y = N(
154
159
  ] });
155
160
  }
156
161
  );
157
- k.displayName = "Textarea";
162
+ C.displayName = "Textarea";
158
163
  export {
159
- k as Textarea
164
+ C as Textarea
160
165
  };
@@ -28,6 +28,8 @@ export interface FilterSidebarItem {
28
28
  hasInfo?: boolean;
29
29
  separator?: boolean;
30
30
  tooltipKeybinding?: import('../command-palette/utils').KeyBinding;
31
+ /** Shortcut ID for the shortcut overlay to anchor a badge to this tab. */
32
+ shortcutId?: string;
31
33
  }
32
34
  export interface FilterPanelSidebarProps {
33
35
  items: FilterSidebarItem[];
@@ -101,4 +101,9 @@ export interface FilterStripProps {
101
101
  * Keybinding to show in the "All Filters" button tooltip
102
102
  */
103
103
  allFiltersKeybinding?: import('./filter-panel.types').FilterSidebarItem["tooltipKeybinding"];
104
+ /**
105
+ * Shortcut ID for the "All Filters" button, used by the shortcut overlay
106
+ * to anchor a badge to this button.
107
+ */
108
+ allFiltersShortcutId?: string;
104
109
  }