@epicbagel/saas-kit 1.25.0 → 1.25.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.
@@ -118,75 +118,82 @@ var WorkflowAssistant = _react.forwardRef.call(void 0, function WorkflowAssistan
118
118
  ]
119
119
  }
120
120
  );
121
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
122
- "aside",
123
- {
124
- ref,
125
- "data-slot": "workflow-assistant",
126
- "aria-labelledby": titleId,
127
- className: _chunkKWLSBTB2cjs.cn.call(void 0,
128
- "fixed inset-x-2 bottom-[calc(1rem+env(safe-area-inset-bottom))] z-40 flex min-h-0 flex-col overflow-y-auto overscroll-contain rounded-2xl border bg-background shadow-xl sm:inset-x-auto sm:right-6 sm:w-[28rem] md:right-8",
129
- expanded && showingSummaries ? "h-[calc(100dvh-6rem)]" : "max-h-[min(36rem,70dvh)]",
130
- className
131
- ),
132
- children: [
133
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "sticky top-0 z-10 flex shrink-0 items-start gap-2 border-b bg-background p-3", children: [
134
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
135
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { ref: heading, tabIndex: -1, id: titleId, className: "text-sm font-semibold", children: title }),
136
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { title: context, className: "mt-1 truncate text-xs text-muted-foreground", children: context })
121
+ return (
122
+ // On a phone the panel is a sheet docked to the bottom edge, like Drawer:
123
+ // its background runs under the home indicator (and a browser's floating
124
+ // toolbar) with its content kept above them. A floating card there left
125
+ // the page showing beneath it. From sm it is a card in the corner.
126
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
127
+ "aside",
128
+ {
129
+ ref,
130
+ "data-slot": "workflow-assistant",
131
+ "aria-labelledby": titleId,
132
+ className: _chunkKWLSBTB2cjs.cn.call(void 0,
133
+ "fixed inset-x-0 bottom-0 z-40 flex min-h-0 flex-col overflow-y-auto overscroll-contain rounded-t-[10px] border-t bg-background pb-[env(safe-area-inset-bottom)] shadow-[0_-8px_30px_rgb(0_0_0/0.12)]",
134
+ "sm:inset-x-auto sm:bottom-[calc(1rem+env(safe-area-inset-bottom))] sm:right-6 sm:w-[28rem] sm:rounded-2xl sm:border sm:pb-0 sm:shadow-xl md:right-8",
135
+ expanded && showingSummaries ? "h-[calc(100dvh-6rem)]" : "max-h-[min(36rem,70dvh)]",
136
+ className
137
+ ),
138
+ children: [
139
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "sticky top-0 z-10 flex shrink-0 items-start gap-2 border-b bg-background p-3", children: [
140
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
141
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { ref: heading, tabIndex: -1, id: titleId, className: "text-sm font-semibold outline-none", children: title }),
142
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { title: context, className: "mt-1 truncate text-xs text-muted-foreground", children: context })
143
+ ] }),
144
+ onExpandedChange && showingSummaries && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
145
+ _chunkJDEXZGIYcjs.Button,
146
+ {
147
+ type: "button",
148
+ variant: "ghost",
149
+ size: "icon",
150
+ "aria-label": expanded ? _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _15 => _15.collapse]), () => ( "Reduce panel")) : _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _16 => _16.expand]), () => ( "Expand panel")),
151
+ onClick: () => onExpandedChange(!expanded),
152
+ children: expanded ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Minimize2, { "aria-hidden": "true" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Maximize2, { "aria-hidden": "true" })
153
+ }
154
+ ),
155
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJDEXZGIYcjs.Button, { type: "button", variant: "ghost", size: "icon", "aria-label": _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _17 => _17.minimize]), () => ( "Minimize voice review")), onClick: () => toggle(false), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronDown, { "aria-hidden": "true" }) })
137
156
  ] }),
138
- onExpandedChange && showingSummaries && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
139
- _chunkJDEXZGIYcjs.Button,
157
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", "data-slot": "workflow-assistant-voice", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
158
+ _chunkPNI354BYcjs.VoiceSessionControls,
140
159
  {
141
- type: "button",
142
- variant: "ghost",
143
- size: "icon",
144
- "aria-label": expanded ? _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _15 => _15.collapse]), () => ( "Reduce panel")) : _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _16 => _16.expand]), () => ( "Expand panel")),
145
- onClick: () => onExpandedChange(!expanded),
146
- children: expanded ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Minimize2, { "aria-hidden": "true" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Maximize2, { "aria-hidden": "true" })
160
+ ...voiceSession,
161
+ disabled: Boolean(startDisabled),
162
+ size: "hero",
163
+ onEnd: () => {
164
+ _optionalChain([heading, 'access', _18 => _18.current, 'optionalAccess', _19 => _19.focus, 'call', _20 => _20()]);
165
+ voiceSession.onEnd();
166
+ },
167
+ actions: summaries.length > 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
168
+ voiceSession.actions,
169
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
170
+ _chunkPNI354BYcjs.VoiceSessionAction,
171
+ {
172
+ label: showingSummaries ? _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _21 => _21.hideSummaries]), () => ( "Hide actions")) : _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _22 => _22.showSummaries]), () => ( "Show actions")),
173
+ icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ListChecks, { "aria-hidden": "true" }),
174
+ "aria-expanded": showingSummaries,
175
+ "aria-controls": summariesId,
176
+ className: "aria-expanded:bg-muted",
177
+ onClick: () => setSummariesOpen(!showingSummaries)
178
+ }
179
+ )
180
+ ] }) : voiceSession.actions,
181
+ className: _chunkKWLSBTB2cjs.cn.call(void 0, !active && "justify-center px-4 py-6 text-center")
147
182
  }
148
- ),
149
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJDEXZGIYcjs.Button, { type: "button", variant: "ghost", size: "icon", "aria-label": _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _17 => _17.minimize]), () => ( "Minimize voice review")), onClick: () => toggle(false), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronDown, { "aria-hidden": "true" }) })
150
- ] }),
151
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", "data-slot": "workflow-assistant-voice", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
152
- _chunkPNI354BYcjs.VoiceSessionControls,
153
- {
154
- ...voiceSession,
155
- disabled: Boolean(startDisabled),
156
- size: "hero",
157
- onEnd: () => {
158
- _optionalChain([heading, 'access', _18 => _18.current, 'optionalAccess', _19 => _19.focus, 'call', _20 => _20()]);
159
- voiceSession.onEnd();
160
- },
161
- actions: summaries.length > 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
162
- voiceSession.actions,
163
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
164
- _chunkPNI354BYcjs.VoiceSessionAction,
165
- {
166
- label: showingSummaries ? _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _21 => _21.hideSummaries]), () => ( "Hide actions")) : _nullishCoalesce(_optionalChain([labels, 'optionalAccess', _22 => _22.showSummaries]), () => ( "Show actions")),
167
- icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ListChecks, { "aria-hidden": "true" }),
168
- "aria-expanded": showingSummaries,
169
- "aria-controls": summariesId,
170
- className: "aria-expanded:bg-muted",
171
- onClick: () => setSummariesOpen(!showingSummaries)
172
- }
173
- )
174
- ] }) : voiceSession.actions,
175
- className: _chunkKWLSBTB2cjs.cn.call(void 0, !active && "justify-center px-4 py-6 text-center")
176
- }
177
- ) }),
178
- description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 px-4 py-3 text-sm text-muted-foreground", children: description }),
179
- error && (voiceSession.state !== "error" || error !== voiceSession.error) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 px-4 py-2 text-sm text-destructive", children: error }),
180
- pending && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "status", className: "shrink-0 px-4 py-2 text-sm text-muted-foreground", children: "Applying your instructions\u2026" }),
181
- summaries.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { id: summariesId, hidden: !showingSummaries, "aria-label": "Action summaries", className: "min-h-20 flex-1 overflow-y-auto border-t px-4 py-3", children: [
182
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "mb-3 text-xs font-medium text-muted-foreground", children: "Action summaries" }),
183
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ol", { className: "space-y-3", "aria-live": "polite", "aria-relevant": "additions", children: [...summaries].reverse().map((summary) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "li", { className: "space-y-1 border-b pb-3 last:border-0 last:pb-0", children: [
184
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-xs text-muted-foreground", children: summary.context }),
185
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "whitespace-pre-wrap break-words text-sm", children: summary.body })
186
- ] }, summary.id)) })
187
- ] })
188
- ]
189
- }
183
+ ) }),
184
+ description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 px-4 py-3 text-sm text-muted-foreground", children: description }),
185
+ error && (voiceSession.state !== "error" || error !== voiceSession.error) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 px-4 py-2 text-sm text-destructive", children: error }),
186
+ pending && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "status", className: "shrink-0 px-4 py-2 text-sm text-muted-foreground", children: "Applying your instructions\u2026" }),
187
+ summaries.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { id: summariesId, hidden: !showingSummaries, "aria-label": "Action summaries", className: "min-h-20 flex-1 overflow-y-auto border-t px-4 py-3", children: [
188
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "mb-3 text-xs font-medium text-muted-foreground", children: "Action summaries" }),
189
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ol", { className: "space-y-3", "aria-live": "polite", "aria-relevant": "additions", children: [...summaries].reverse().map((summary) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "li", { className: "space-y-1 border-b pb-3 last:border-0 last:pb-0", children: [
190
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-xs text-muted-foreground", children: summary.context }),
191
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "whitespace-pre-wrap break-words text-sm", children: summary.body })
192
+ ] }, summary.id)) })
193
+ ] })
194
+ ]
195
+ }
196
+ )
190
197
  );
191
198
  });
192
199
 
@@ -118,75 +118,82 @@ var WorkflowAssistant = forwardRef(function WorkflowAssistant2({
118
118
  ]
119
119
  }
120
120
  );
121
- return /* @__PURE__ */ jsxs(
122
- "aside",
123
- {
124
- ref,
125
- "data-slot": "workflow-assistant",
126
- "aria-labelledby": titleId,
127
- className: cn(
128
- "fixed inset-x-2 bottom-[calc(1rem+env(safe-area-inset-bottom))] z-40 flex min-h-0 flex-col overflow-y-auto overscroll-contain rounded-2xl border bg-background shadow-xl sm:inset-x-auto sm:right-6 sm:w-[28rem] md:right-8",
129
- expanded && showingSummaries ? "h-[calc(100dvh-6rem)]" : "max-h-[min(36rem,70dvh)]",
130
- className
131
- ),
132
- children: [
133
- /* @__PURE__ */ jsxs("div", { className: "sticky top-0 z-10 flex shrink-0 items-start gap-2 border-b bg-background p-3", children: [
134
- /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
135
- /* @__PURE__ */ jsx("h2", { ref: heading, tabIndex: -1, id: titleId, className: "text-sm font-semibold", children: title }),
136
- /* @__PURE__ */ jsx("p", { title: context, className: "mt-1 truncate text-xs text-muted-foreground", children: context })
121
+ return (
122
+ // On a phone the panel is a sheet docked to the bottom edge, like Drawer:
123
+ // its background runs under the home indicator (and a browser's floating
124
+ // toolbar) with its content kept above them. A floating card there left
125
+ // the page showing beneath it. From sm it is a card in the corner.
126
+ /* @__PURE__ */ jsxs(
127
+ "aside",
128
+ {
129
+ ref,
130
+ "data-slot": "workflow-assistant",
131
+ "aria-labelledby": titleId,
132
+ className: cn(
133
+ "fixed inset-x-0 bottom-0 z-40 flex min-h-0 flex-col overflow-y-auto overscroll-contain rounded-t-[10px] border-t bg-background pb-[env(safe-area-inset-bottom)] shadow-[0_-8px_30px_rgb(0_0_0/0.12)]",
134
+ "sm:inset-x-auto sm:bottom-[calc(1rem+env(safe-area-inset-bottom))] sm:right-6 sm:w-[28rem] sm:rounded-2xl sm:border sm:pb-0 sm:shadow-xl md:right-8",
135
+ expanded && showingSummaries ? "h-[calc(100dvh-6rem)]" : "max-h-[min(36rem,70dvh)]",
136
+ className
137
+ ),
138
+ children: [
139
+ /* @__PURE__ */ jsxs("div", { className: "sticky top-0 z-10 flex shrink-0 items-start gap-2 border-b bg-background p-3", children: [
140
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
141
+ /* @__PURE__ */ jsx("h2", { ref: heading, tabIndex: -1, id: titleId, className: "text-sm font-semibold outline-none", children: title }),
142
+ /* @__PURE__ */ jsx("p", { title: context, className: "mt-1 truncate text-xs text-muted-foreground", children: context })
143
+ ] }),
144
+ onExpandedChange && showingSummaries && /* @__PURE__ */ jsx(
145
+ Button,
146
+ {
147
+ type: "button",
148
+ variant: "ghost",
149
+ size: "icon",
150
+ "aria-label": expanded ? labels?.collapse ?? "Reduce panel" : labels?.expand ?? "Expand panel",
151
+ onClick: () => onExpandedChange(!expanded),
152
+ children: expanded ? /* @__PURE__ */ jsx(Minimize2, { "aria-hidden": "true" }) : /* @__PURE__ */ jsx(Maximize2, { "aria-hidden": "true" })
153
+ }
154
+ ),
155
+ /* @__PURE__ */ jsx(Button, { type: "button", variant: "ghost", size: "icon", "aria-label": labels?.minimize ?? "Minimize voice review", onClick: () => toggle(false), children: /* @__PURE__ */ jsx(ChevronDown, { "aria-hidden": "true" }) })
137
156
  ] }),
138
- onExpandedChange && showingSummaries && /* @__PURE__ */ jsx(
139
- Button,
157
+ /* @__PURE__ */ jsx("div", { className: "shrink-0", "data-slot": "workflow-assistant-voice", children: /* @__PURE__ */ jsx(
158
+ VoiceSessionControls,
140
159
  {
141
- type: "button",
142
- variant: "ghost",
143
- size: "icon",
144
- "aria-label": expanded ? labels?.collapse ?? "Reduce panel" : labels?.expand ?? "Expand panel",
145
- onClick: () => onExpandedChange(!expanded),
146
- children: expanded ? /* @__PURE__ */ jsx(Minimize2, { "aria-hidden": "true" }) : /* @__PURE__ */ jsx(Maximize2, { "aria-hidden": "true" })
160
+ ...voiceSession,
161
+ disabled: Boolean(startDisabled),
162
+ size: "hero",
163
+ onEnd: () => {
164
+ heading.current?.focus();
165
+ voiceSession.onEnd();
166
+ },
167
+ actions: summaries.length > 0 ? /* @__PURE__ */ jsxs(Fragment, { children: [
168
+ voiceSession.actions,
169
+ /* @__PURE__ */ jsx(
170
+ VoiceSessionAction,
171
+ {
172
+ label: showingSummaries ? labels?.hideSummaries ?? "Hide actions" : labels?.showSummaries ?? "Show actions",
173
+ icon: /* @__PURE__ */ jsx(ListChecks, { "aria-hidden": "true" }),
174
+ "aria-expanded": showingSummaries,
175
+ "aria-controls": summariesId,
176
+ className: "aria-expanded:bg-muted",
177
+ onClick: () => setSummariesOpen(!showingSummaries)
178
+ }
179
+ )
180
+ ] }) : voiceSession.actions,
181
+ className: cn(!active && "justify-center px-4 py-6 text-center")
147
182
  }
148
- ),
149
- /* @__PURE__ */ jsx(Button, { type: "button", variant: "ghost", size: "icon", "aria-label": labels?.minimize ?? "Minimize voice review", onClick: () => toggle(false), children: /* @__PURE__ */ jsx(ChevronDown, { "aria-hidden": "true" }) })
150
- ] }),
151
- /* @__PURE__ */ jsx("div", { className: "shrink-0", "data-slot": "workflow-assistant-voice", children: /* @__PURE__ */ jsx(
152
- VoiceSessionControls,
153
- {
154
- ...voiceSession,
155
- disabled: Boolean(startDisabled),
156
- size: "hero",
157
- onEnd: () => {
158
- heading.current?.focus();
159
- voiceSession.onEnd();
160
- },
161
- actions: summaries.length > 0 ? /* @__PURE__ */ jsxs(Fragment, { children: [
162
- voiceSession.actions,
163
- /* @__PURE__ */ jsx(
164
- VoiceSessionAction,
165
- {
166
- label: showingSummaries ? labels?.hideSummaries ?? "Hide actions" : labels?.showSummaries ?? "Show actions",
167
- icon: /* @__PURE__ */ jsx(ListChecks, { "aria-hidden": "true" }),
168
- "aria-expanded": showingSummaries,
169
- "aria-controls": summariesId,
170
- className: "aria-expanded:bg-muted",
171
- onClick: () => setSummariesOpen(!showingSummaries)
172
- }
173
- )
174
- ] }) : voiceSession.actions,
175
- className: cn(!active && "justify-center px-4 py-6 text-center")
176
- }
177
- ) }),
178
- description && /* @__PURE__ */ jsx("div", { className: "shrink-0 px-4 py-3 text-sm text-muted-foreground", children: description }),
179
- error && (voiceSession.state !== "error" || error !== voiceSession.error) && /* @__PURE__ */ jsx("p", { role: "alert", className: "shrink-0 px-4 py-2 text-sm text-destructive", children: error }),
180
- pending && /* @__PURE__ */ jsx("p", { role: "status", className: "shrink-0 px-4 py-2 text-sm text-muted-foreground", children: "Applying your instructions\u2026" }),
181
- summaries.length > 0 && /* @__PURE__ */ jsxs("section", { id: summariesId, hidden: !showingSummaries, "aria-label": "Action summaries", className: "min-h-20 flex-1 overflow-y-auto border-t px-4 py-3", children: [
182
- /* @__PURE__ */ jsx("h3", { className: "mb-3 text-xs font-medium text-muted-foreground", children: "Action summaries" }),
183
- /* @__PURE__ */ jsx("ol", { className: "space-y-3", "aria-live": "polite", "aria-relevant": "additions", children: [...summaries].reverse().map((summary) => /* @__PURE__ */ jsxs("li", { className: "space-y-1 border-b pb-3 last:border-0 last:pb-0", children: [
184
- /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: summary.context }),
185
- /* @__PURE__ */ jsx("p", { className: "whitespace-pre-wrap break-words text-sm", children: summary.body })
186
- ] }, summary.id)) })
187
- ] })
188
- ]
189
- }
183
+ ) }),
184
+ description && /* @__PURE__ */ jsx("div", { className: "shrink-0 px-4 py-3 text-sm text-muted-foreground", children: description }),
185
+ error && (voiceSession.state !== "error" || error !== voiceSession.error) && /* @__PURE__ */ jsx("p", { role: "alert", className: "shrink-0 px-4 py-2 text-sm text-destructive", children: error }),
186
+ pending && /* @__PURE__ */ jsx("p", { role: "status", className: "shrink-0 px-4 py-2 text-sm text-muted-foreground", children: "Applying your instructions\u2026" }),
187
+ summaries.length > 0 && /* @__PURE__ */ jsxs("section", { id: summariesId, hidden: !showingSummaries, "aria-label": "Action summaries", className: "min-h-20 flex-1 overflow-y-auto border-t px-4 py-3", children: [
188
+ /* @__PURE__ */ jsx("h3", { className: "mb-3 text-xs font-medium text-muted-foreground", children: "Action summaries" }),
189
+ /* @__PURE__ */ jsx("ol", { className: "space-y-3", "aria-live": "polite", "aria-relevant": "additions", children: [...summaries].reverse().map((summary) => /* @__PURE__ */ jsxs("li", { className: "space-y-1 border-b pb-3 last:border-0 last:pb-0", children: [
190
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: summary.context }),
191
+ /* @__PURE__ */ jsx("p", { className: "whitespace-pre-wrap break-words text-sm", children: summary.body })
192
+ ] }, summary.id)) })
193
+ ] })
194
+ ]
195
+ }
196
+ )
190
197
  );
191
198
  });
192
199
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epicbagel/saas-kit",
3
- "version": "1.25.0",
3
+ "version": "1.25.1",
4
4
  "description": "Accessible React primitives, layout components and design tokens for SaaS apps, built on Radix UI and Tailwind CSS v4.",
5
5
  "license": "MIT",
6
6
  "keywords": [