@danxbot/ui 15.5.1 → 15.6.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.
@@ -132,6 +132,25 @@ declare const recordCard: import("tailwind-variants").TVReturnType<{
132
132
  media: string;
133
133
  };
134
134
  };
135
+ /**
136
+ * DX-3621 — `RecordCardTitle`'s own text size, independent of `as` (the
137
+ * heading LEVEL). Before this variant the title carried no explicit
138
+ * `text-*` class at all, so its rendered size was whatever the browser's
139
+ * UA default for the chosen heading level happened to be — a kanban board
140
+ * lane of `h4` titles rendering at UA default size, not a deliberate one.
141
+ * `md` (default) pins that same visual size explicitly rather than
142
+ * changing it out from under existing consumers; `sm` is for a dense
143
+ * listing (a kanban lane, a compact picker row) where several of these
144
+ * stack in view together.
145
+ */
146
+ size: {
147
+ sm: {
148
+ title: string;
149
+ };
150
+ md: {
151
+ title: string;
152
+ };
153
+ };
135
154
  }, {
136
155
  handle: string;
137
156
  eyebrow: string;
@@ -155,6 +174,25 @@ declare const recordCard: import("tailwind-variants").TVReturnType<{
155
174
  media: string;
156
175
  };
157
176
  };
177
+ /**
178
+ * DX-3621 — `RecordCardTitle`'s own text size, independent of `as` (the
179
+ * heading LEVEL). Before this variant the title carried no explicit
180
+ * `text-*` class at all, so its rendered size was whatever the browser's
181
+ * UA default for the chosen heading level happened to be — a kanban board
182
+ * lane of `h4` titles rendering at UA default size, not a deliberate one.
183
+ * `md` (default) pins that same visual size explicitly rather than
184
+ * changing it out from under existing consumers; `sm` is for a dense
185
+ * listing (a kanban lane, a compact picker row) where several of these
186
+ * stack in view together.
187
+ */
188
+ size: {
189
+ sm: {
190
+ title: string;
191
+ };
192
+ md: {
193
+ title: string;
194
+ };
195
+ };
158
196
  }, {
159
197
  handle: string;
160
198
  eyebrow: string;
@@ -178,6 +216,25 @@ declare const recordCard: import("tailwind-variants").TVReturnType<{
178
216
  media: string;
179
217
  };
180
218
  };
219
+ /**
220
+ * DX-3621 — `RecordCardTitle`'s own text size, independent of `as` (the
221
+ * heading LEVEL). Before this variant the title carried no explicit
222
+ * `text-*` class at all, so its rendered size was whatever the browser's
223
+ * UA default for the chosen heading level happened to be — a kanban board
224
+ * lane of `h4` titles rendering at UA default size, not a deliberate one.
225
+ * `md` (default) pins that same visual size explicitly rather than
226
+ * changing it out from under existing consumers; `sm` is for a dense
227
+ * listing (a kanban lane, a compact picker row) where several of these
228
+ * stack in view together.
229
+ */
230
+ size: {
231
+ sm: {
232
+ title: string;
233
+ };
234
+ md: {
235
+ title: string;
236
+ };
237
+ };
181
238
  }, {
182
239
  handle: string;
183
240
  eyebrow: string;
@@ -258,6 +315,15 @@ export interface RecordCardTitleProps {
258
315
  * @default "h3"
259
316
  */
260
317
  as?: "h2" | "h3" | "h4" | "h5" | "h6";
318
+ /**
319
+ * The title's own text size — independent of `as` (the heading LEVEL, an
320
+ * accessibility/outline concern). `sm` is for a dense listing where several
321
+ * record cards stack in view together (a kanban lane, a compact picker
322
+ * row); `md` is the ordinary size for a single card or a short list.
323
+ *
324
+ * @default "md"
325
+ */
326
+ size?: "sm" | "md";
261
327
  className?: string;
262
328
  children: ReactNode;
263
329
  ref?: Ref<HTMLHeadingElement>;
@@ -265,7 +331,7 @@ export interface RecordCardTitleProps {
265
331
  /** Clamped to two lines by default — a collapsed record has a fixed budget of
266
332
  * vertical space, and a title that runs on pushes the meta row an
267
333
  * unpredictable distance down the column instead of wrapping in place. */
268
- export declare function RecordCardTitle({ as: Title, className, children, ref }: RecordCardTitleProps): import("react").JSX.Element;
334
+ export declare function RecordCardTitle({ as: Title, size, className, children, ref }: RecordCardTitleProps): import("react").JSX.Element;
269
335
  export interface RecordCardBadgesProps {
270
336
  className?: string;
271
337
  children: ReactNode;
@@ -27,6 +27,14 @@ export interface Role {
27
27
  * locked role cannot be touched at all. Never derived here — the library
28
28
  * has no opinion on which role, if any, deserves this. */
29
29
  locked?: boolean;
30
+ /** `false` hides the Delete control for this role in `RolesPermissionsPage`'s
31
+ * manage-roles list, while leaving rename/reset available. For a role the
32
+ * consumer's own backend refuses to delete outright (distinct from
33
+ * `locked`, which hides the whole row) — e.g. danxbot's system AGENT
34
+ * roles, which stay editable/resettable but can never be removed.
35
+ * Omitted or `true` means deletable, matching every `Role` from before
36
+ * this field existed. */
37
+ deletable?: boolean;
30
38
  }
31
39
  export interface User {
32
40
  id: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@danxbot/ui",
3
- "version": "15.5.1",
3
+ "version": "15.6.1",
4
4
  "type": "module",
5
5
  "description": "Danxbot — a domain-agnostic React design system with motion as a first-class primitive.",
6
6
  "license": "MIT",