@cascivo/react 0.7.0 → 0.8.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.
package/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
  [![license](https://img.shields.io/npm/l/%40cascivo%2Freact?style=flat-square&color=0079bf)](https://github.com/cascivo/cascivo/blob/main/LICENSE)
11
11
  ![types](https://img.shields.io/badge/types-included-0079bf?style=flat-square&logo=typescript&logoColor=white)
12
12
 
13
- [npm](https://www.npmjs.com/package/@cascivo/react) · [cascivo.com](https://cascivo.com) · [Docs](https://docs.cascivo.com) · [Storybook](https://storybook.cascivo.com) · [GitHub](https://github.com/cascivo/cascivo)
13
+ [npm](https://www.npmjs.com/package/@cascivo/react) · [cascivo.com](https://cascivo.com) · [Docs](https://cascivo.com/docs) · [Storybook](https://storybook.cascivo.com) · [GitHub](https://github.com/cascivo/cascivo)
14
14
 
15
15
  </div>
16
16
 
@@ -203,7 +203,7 @@ routing break after adding one of these, check that the import resolves to
203
203
 
204
204
  ## Component index
205
205
 
206
- 192 components, exported from `@cascivo/react`. Full props, examples, and live demos at [docs.cascivo.com](https://docs.cascivo.com).
206
+ 192 components, exported from `@cascivo/react`. Full props, examples, and live demos at [cascivo.com/docs](https://cascivo.com/docs).
207
207
 
208
208
  ### Inputs
209
209
 
@@ -428,6 +428,6 @@ pnpm add @cascivo/react
428
428
 
429
429
  ---
430
430
 
431
- [cascivo.com](https://cascivo.com) · [Docs](https://docs.cascivo.com) · [Storybook](https://storybook.cascivo.com) · [GitHub](https://github.com/cascivo/cascivo) · AI agents: use [`@cascivo/mcp`](https://github.com/cascivo/cascivo/tree/main/packages/mcp) and [`registry.json`](https://github.com/cascivo/cascivo/blob/main/registry.json) · MIT
431
+ [cascivo.com](https://cascivo.com) · [Docs](https://cascivo.com/docs) · [Storybook](https://storybook.cascivo.com) · [GitHub](https://github.com/cascivo/cascivo) · AI agents: read [`llms.txt`](https://cascivo.com/llms.txt) (install steps + component index, plain text) or use [`@cascivo/mcp`](https://github.com/cascivo/cascivo/tree/main/packages/mcp) and [`registry.json`](https://github.com/cascivo/cascivo/blob/main/registry.json) · MIT
432
432
 
433
433
  <div align="center"><a href="https://cascivo.com"><img src="https://cascivo.com/favicon.svg" width="28" height="28" alt="cascivo"></a></div>
@@ -15,31 +15,43 @@ var s = n({
15
15
  error: {}
16
16
  }
17
17
  });
18
- function c({ src: n, alt: c = "", fallback: l, size: u = "md", status: d, className: f, ...p }) {
18
+ function c({ src: n, alt: c = "", name: u, fallback: d, size: f = "md", status: p, className: m, ...h }) {
19
19
  i();
20
- let [m, h] = r(s), g = !!n && m.value !== "error", _ = c || l;
20
+ let [g, _] = r(s), v = !!n && g.value !== "error", y = d ?? l(u), b = c || u || d;
21
21
  return /* @__PURE__ */ o("span", {
22
- "data-size": u,
23
- "data-status": d,
24
- className: t(e.avatar, f),
25
- role: g || !_ ? void 0 : "img",
26
- "aria-label": g ? void 0 : _ || void 0,
27
- ...p,
28
- children: [g ? /* @__PURE__ */ a("img", {
22
+ "data-size": f,
23
+ "data-status": p,
24
+ className: t(e.avatar, m),
25
+ role: v || !b ? void 0 : "img",
26
+ "aria-label": v ? void 0 : b || void 0,
27
+ ...h,
28
+ children: [v ? /* @__PURE__ */ a("img", {
29
29
  className: e.image,
30
30
  src: n,
31
- alt: c,
32
- onLoad: () => h("LOADED"),
33
- onError: () => h("ERROR")
31
+ alt: c || u || "",
32
+ onLoad: () => _("LOADED"),
33
+ onError: () => _("ERROR")
34
34
  }) : /* @__PURE__ */ a("span", {
35
35
  className: e.fallback,
36
36
  "aria-hidden": "true",
37
- children: l
38
- }), d && /* @__PURE__ */ a("span", {
37
+ children: y
38
+ }), p && /* @__PURE__ */ a("span", {
39
39
  className: e.status,
40
40
  "aria-hidden": "true"
41
41
  })]
42
42
  });
43
43
  }
44
+ function l(e) {
45
+ if (!e) return;
46
+ let t = e.trim().split(/\s+/).filter(Boolean);
47
+ if (t.length !== 0) return (u(t[0]) + (t.length > 1 ? u(t[t.length - 1]) : "")).toLocaleUpperCase() || void 0;
48
+ }
49
+ function u(e) {
50
+ if (typeof Intl < "u" && "Segmenter" in Intl) {
51
+ let t = new Intl.Segmenter(void 0, { granularity: "grapheme" });
52
+ for (let n of t.segment(e)) return n.segment;
53
+ }
54
+ return [...e][0] ?? "";
55
+ }
44
56
  //#endregion
45
57
  export { c as Avatar };
@@ -1 +1 @@
1
- @layer cascivo.component{._root_cpm34_2{--_row-height:3rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);flex-direction:column;display:flex;overflow:hidden}._root_cpm34_2[data-density=compact]{--_row-height:2.25rem}._root_cpm34_2[data-density=normal]{--_row-height:3rem}._root_cpm34_2[data-density=relaxed]{--_row-height:3.75rem}._toolbar_cpm34_26{justify-content:space-between;align-items:flex-end;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-end:1px solid var(--cascivo-color-border);display:flex}._heading_cpm34_35{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_cpm34_41{font-size:var(--cascivo-text-base);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._description_cpm34_47{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle)}._search_cpm34_52{appearance:none;height:2rem;min-inline-size:14rem;padding-inline:var(--cascivo-space-3);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none}._search_cpm34_52:hover:not(:focus){border-color:var(--cascivo-color-border-strong)}._search_cpm34_52:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._batchBar_cpm34_79{justify-content:space-between;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-2) var(--cascivo-space-4);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);display:flex}._batchCount_cpm34_89{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text)}._batchActions_cpm34_95{gap:var(--cascivo-space-2);display:flex}._scroller_cpm34_101{max-block-size:var(--cascivo-data-table-max-height,none);overflow:auto}._scrollerVirtualized_cpm34_106{block-size:var(--cascivo-data-table-height,400px);max-block-size:none;overflow:auto}._table_cpm34_112{border-collapse:collapse;table-layout:auto;inline-size:100%}._root_cpm34_2[data-paginated=true] ._table_cpm34_112{table-layout:fixed}._table_cpm34_112 thead th{padding-block:var(--cascivo-space-2);padding-inline:var(--cascivo-space-4);text-align:start;font-weight:var(--cascivo-font-semibold);font-size:var(--cascivo-text-xs);text-transform:uppercase;letter-spacing:var(--cascivo-tracking-wide);color:var(--cascivo-color-text-subtle);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);white-space:nowrap}._table_cpm34_112 thead th[data-align=end]{text-align:end}._table_cpm34_112 td{padding-block:0;padding-inline:var(--cascivo-space-4);block-size:var(--_row-height);vertical-align:middle;border-block-end:1px solid var(--cascivo-color-border);color:var(--cascivo-color-text)}._table_cpm34_112 td[data-align=end]{text-align:end}._table_cpm34_112 tbody tr[data-filler-row] td{border-block-end:none}._root_cpm34_2[data-sticky-header=true] ._table_cpm34_112 thead th{z-index:var(--cascivo-z-raised,10);background-color:var(--cascivo-color-surface);position:sticky;inset-block-start:0}._root_cpm34_2[data-zebra=true] ._table_cpm34_112 tbody tr:nth-child(2n of ._row_cpm34_168){background-color:var(--cascivo-color-bg-subtle)}._controlCol_cpm34_174{inline-size:3rem}._controlCell_cpm34_178{text-align:center;padding-inline:var(--cascivo-space-2)}._sortButton_cpm34_184{align-items:center;gap:var(--cascivo-space-1);font-family:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:none;outline:none;padding:0;display:inline-flex}._sortButton_cpm34_184:focus-visible{text-decoration:underline}._sortButton_cpm34_184:after{content:"↕";opacity:.4;font-size:.75em}._sortButton_cpm34_184[data-state=ascending]:after{content:"↑";opacity:.9}._sortButton_cpm34_184[data-state=descending]:after{content:"↓";opacity:.9}._row_cpm34_168{content-visibility:auto;contain-intrinsic-size:auto var(--_row-height,3rem)}._row_cpm34_168[data-state=selected] td{background-color:color-mix(in srgb, var(--cascivo-color-accent) 8%, transparent)}._emptyCell_cpm34_232{padding:var(--cascivo-space-8) var(--cascivo-space-4);text-align:center;color:var(--cascivo-color-text-muted)}._expansionRow_cpm34_239[data-state=closed]{display:none}._expansionGrid_cpm34_245{overflow:hidden}._expansionInner_cpm34_249{padding:var(--cascivo-space-4)}._expandButton_cpm34_254{cursor:pointer;block-size:1.5rem;inline-size:1.5rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex}._expandButton_cpm34_254:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._expandButton_cpm34_254:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._chevron_cpm34_277{block-size:.75rem;inline-size:.75rem;transition:transform var(--cascivo-duration-150) var(--cascivo-ease-out);border-block-end:2px solid;border-inline-end:2px solid;display:block;transform:rotate(45deg)}._expandButton_cpm34_254[data-state=open] ._chevron_cpm34_277{transform:rotate(-135deg)}._shimmer_cpm34_292{background-color:var(--cascivo-color-bg-subtle);border-radius:var(--cascivo-radius-indicator);block-size:.875rem;inline-size:80%;display:block;position:relative;overflow:hidden}._shimmer_cpm34_292:after{content:"";background:linear-gradient(90deg, transparent, var(--cascivo-color-surface), transparent);animation:_shimmer_cpm34_292 var(--cascivo-duration-500,.5s) var(--cascivo-ease-in-out,ease-in-out) infinite;position:absolute;inset:0;translate:-100%}@keyframes _shimmer_cpm34_292{to{translate:100%}}._footer_cpm34_319{justify-content:flex-end;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-start:1px solid var(--cascivo-color-border);font-size:var(--cascivo-text-sm);display:flex}._pageSize_cpm34_329{align-items:center;gap:var(--cascivo-space-2);color:var(--cascivo-color-text-muted);display:flex}._pageSize_cpm34_329 select{appearance:none;height:2rem;padding-inline:var(--cascivo-space-2);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;outline:none}._pageSize_cpm34_329 select:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._range_cpm34_355{color:var(--cascivo-color-text-muted);white-space:nowrap}._pageButtons_cpm34_360{gap:var(--cascivo-space-1);display:flex}._pageButton_cpm34_360{border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text);font-size:var(--cascivo-text-base);transition:background-color var(--cascivo-duration-150) var(--cascivo-ease-out), border-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;outline:none;justify-content:center;align-items:center;display:inline-flex}._pageButton_cpm34_360:hover:not(:disabled){background-color:var(--cascivo-color-bg-subtle);border-color:var(--cascivo-color-border-strong)}._pageButton_cpm34_360:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._pageButton_cpm34_360:disabled{color:var(--cascivo-color-text-muted);cursor:not-allowed}._srOnly_cpm34_401{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}
1
+ @layer cascivo.component{._root_jwjfs_2{--_row-height:3rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);flex-direction:column;display:flex;overflow:hidden}._root_jwjfs_2[data-density=compact]{--_row-height:2.25rem}._root_jwjfs_2[data-density=normal]{--_row-height:3rem}._root_jwjfs_2[data-density=relaxed]{--_row-height:3.75rem}._toolbar_jwjfs_26{justify-content:space-between;align-items:flex-end;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-end:1px solid var(--cascivo-color-border);display:flex}._heading_jwjfs_35{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_jwjfs_41{font-size:var(--cascivo-text-base);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._description_jwjfs_47{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle)}._search_jwjfs_52{appearance:none;height:2rem;min-inline-size:14rem;padding-inline:var(--cascivo-space-3);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none}._search_jwjfs_52:hover:not(:focus){border-color:var(--cascivo-color-border-strong)}._search_jwjfs_52:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._batchBar_jwjfs_79{justify-content:space-between;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-2) var(--cascivo-space-4);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);display:flex}._batchCount_jwjfs_89{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text)}._batchActions_jwjfs_95{gap:var(--cascivo-space-2);display:flex}._scroller_jwjfs_101{max-block-size:var(--cascivo-data-table-max-height,none);overflow:auto}._scrollerVirtualized_jwjfs_106{block-size:var(--cascivo-data-table-height,400px);max-block-size:none;overflow:auto}._table_jwjfs_112{border-collapse:collapse;table-layout:auto;inline-size:100%}._root_jwjfs_2[data-paginated=true] ._table_jwjfs_112{table-layout:fixed}._table_jwjfs_112 thead th{padding-block:var(--cascivo-space-2);padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));text-align:start;font-weight:var(--cascivo-font-semibold);font-size:var(--cascivo-text-xs);text-transform:uppercase;letter-spacing:var(--cascivo-tracking-wide);color:var(--cascivo-color-text-subtle);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);white-space:nowrap}._table_jwjfs_112 thead th[data-align=end]{text-align:end}._table_jwjfs_112 td{padding-block:0;padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));block-size:var(--_row-height);vertical-align:middle;border-block-end:1px solid var(--cascivo-color-border);color:var(--cascivo-color-text);overflow-wrap:anywhere}._table_jwjfs_112 td[data-align=end]{text-align:end}._table_jwjfs_112 tbody tr[data-filler-row] td{border-block-end:none}._root_jwjfs_2[data-sticky-header=true] ._table_jwjfs_112 thead th{z-index:var(--cascivo-z-raised,10);background-color:var(--cascivo-color-surface);position:sticky;inset-block-start:0}._root_jwjfs_2[data-zebra=true] ._table_jwjfs_112 tbody tr:nth-child(2n of ._row_jwjfs_172){background-color:var(--cascivo-color-bg-subtle)}._controlCol_jwjfs_178{inline-size:3rem}._controlCell_jwjfs_182{text-align:center;padding-inline:var(--cascivo-space-2)}._sortButton_jwjfs_188{align-items:center;gap:var(--cascivo-space-1);font-family:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:none;outline:none;padding:0;display:inline-flex}._sortButton_jwjfs_188:focus-visible{text-decoration:underline}._sortButton_jwjfs_188:after{content:"↕";opacity:.4;font-size:.75em}._sortButton_jwjfs_188[data-state=ascending]:after{content:"↑";opacity:.9}._sortButton_jwjfs_188[data-state=descending]:after{content:"↓";opacity:.9}._row_jwjfs_172{content-visibility:auto;contain-intrinsic-size:auto var(--_row-height,3rem)}._row_jwjfs_172[data-state=selected] td{background-color:color-mix(in srgb, var(--cascivo-color-accent) 8%, transparent)}._emptyCell_jwjfs_236{padding:var(--cascivo-space-8) var(--cascivo-space-4);text-align:center;color:var(--cascivo-color-text-muted)}._expansionRow_jwjfs_243[data-state=closed]{display:none}._expansionGrid_jwjfs_249{overflow:hidden}._expansionInner_jwjfs_253{padding:var(--cascivo-space-4)}._expandButton_jwjfs_258{cursor:pointer;block-size:1.5rem;inline-size:1.5rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex}._expandButton_jwjfs_258:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._expandButton_jwjfs_258:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._chevron_jwjfs_281{block-size:.75rem;inline-size:.75rem;transition:transform var(--cascivo-duration-150) var(--cascivo-ease-out);border-block-end:2px solid;border-inline-end:2px solid;display:block;transform:rotate(45deg)}._expandButton_jwjfs_258[data-state=open] ._chevron_jwjfs_281{transform:rotate(-135deg)}._shimmer_jwjfs_296{background-color:var(--cascivo-color-bg-subtle);border-radius:var(--cascivo-radius-indicator);block-size:.875rem;inline-size:80%;display:block;position:relative;overflow:hidden}._shimmer_jwjfs_296:after{content:"";background:linear-gradient(90deg, transparent, var(--cascivo-color-surface), transparent);animation:_shimmer_jwjfs_296 var(--cascivo-duration-500,.5s) var(--cascivo-ease-in-out,ease-in-out) infinite;position:absolute;inset:0;translate:-100%}@keyframes _shimmer_jwjfs_296{to{translate:100%}}._footer_jwjfs_323{justify-content:flex-end;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-start:1px solid var(--cascivo-color-border);font-size:var(--cascivo-text-sm);display:flex}._pageSize_jwjfs_333{align-items:center;gap:var(--cascivo-space-2);color:var(--cascivo-color-text-muted);display:flex}._pageSize_jwjfs_333 select{appearance:none;height:2rem;padding-inline:var(--cascivo-space-2);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;outline:none}._pageSize_jwjfs_333 select:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._range_jwjfs_359{color:var(--cascivo-color-text-muted);white-space:nowrap}._pageButtons_jwjfs_364{gap:var(--cascivo-space-1);display:flex}._pageButton_jwjfs_364{border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text);font-size:var(--cascivo-text-base);transition:background-color var(--cascivo-duration-150) var(--cascivo-ease-out), border-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;outline:none;justify-content:center;align-items:center;display:inline-flex}._pageButton_jwjfs_364:hover:not(:disabled){background-color:var(--cascivo-color-bg-subtle);border-color:var(--cascivo-color-border-strong)}._pageButton_jwjfs_364:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._pageButton_jwjfs_364:disabled{color:var(--cascivo-color-text-muted);cursor:not-allowed}._srOnly_jwjfs_405{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}
@@ -2,35 +2,35 @@
2
2
 
3
3
  import './data-table.css';
4
4
  var e = {
5
- root: "_root_cpm34_2",
6
- toolbar: "_toolbar_cpm34_26",
7
- heading: "_heading_cpm34_35",
8
- title: "_title_cpm34_41",
9
- description: "_description_cpm34_47",
10
- search: "_search_cpm34_52",
11
- batchBar: "_batchBar_cpm34_79",
12
- batchCount: "_batchCount_cpm34_89",
13
- batchActions: "_batchActions_cpm34_95",
14
- scroller: "_scroller_cpm34_101",
15
- scrollerVirtualized: "_scrollerVirtualized_cpm34_106",
16
- table: "_table_cpm34_112",
17
- row: "_row_cpm34_168",
18
- controlCol: "_controlCol_cpm34_174",
19
- controlCell: "_controlCell_cpm34_178",
20
- sortButton: "_sortButton_cpm34_184",
21
- emptyCell: "_emptyCell_cpm34_232",
22
- expansionRow: "_expansionRow_cpm34_239",
23
- expansionGrid: "_expansionGrid_cpm34_245",
24
- expansionInner: "_expansionInner_cpm34_249",
25
- expandButton: "_expandButton_cpm34_254",
26
- chevron: "_chevron_cpm34_277",
27
- shimmer: "_shimmer_cpm34_292",
28
- footer: "_footer_cpm34_319",
29
- pageSize: "_pageSize_cpm34_329",
30
- range: "_range_cpm34_355",
31
- pageButtons: "_pageButtons_cpm34_360",
32
- pageButton: "_pageButton_cpm34_360",
33
- srOnly: "_srOnly_cpm34_401"
5
+ root: "_root_jwjfs_2",
6
+ toolbar: "_toolbar_jwjfs_26",
7
+ heading: "_heading_jwjfs_35",
8
+ title: "_title_jwjfs_41",
9
+ description: "_description_jwjfs_47",
10
+ search: "_search_jwjfs_52",
11
+ batchBar: "_batchBar_jwjfs_79",
12
+ batchCount: "_batchCount_jwjfs_89",
13
+ batchActions: "_batchActions_jwjfs_95",
14
+ scroller: "_scroller_jwjfs_101",
15
+ scrollerVirtualized: "_scrollerVirtualized_jwjfs_106",
16
+ table: "_table_jwjfs_112",
17
+ row: "_row_jwjfs_172",
18
+ controlCol: "_controlCol_jwjfs_178",
19
+ controlCell: "_controlCell_jwjfs_182",
20
+ sortButton: "_sortButton_jwjfs_188",
21
+ emptyCell: "_emptyCell_jwjfs_236",
22
+ expansionRow: "_expansionRow_jwjfs_243",
23
+ expansionGrid: "_expansionGrid_jwjfs_249",
24
+ expansionInner: "_expansionInner_jwjfs_253",
25
+ expandButton: "_expandButton_jwjfs_258",
26
+ chevron: "_chevron_jwjfs_281",
27
+ shimmer: "_shimmer_jwjfs_296",
28
+ footer: "_footer_jwjfs_323",
29
+ pageSize: "_pageSize_jwjfs_333",
30
+ range: "_range_jwjfs_359",
31
+ pageButtons: "_pageButtons_jwjfs_364",
32
+ pageButton: "_pageButton_jwjfs_364",
33
+ srOnly: "_srOnly_jwjfs_405"
34
34
  };
35
35
  //#endregion
36
36
  export { e as default };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ErrorBoundary, FocusScope, Portal, RovingOrientation, Signal, SuspenseBoundary } from "@cascivo/core";
1
+ import { ErrorBoundary, FocusScope, LinkComponent, Portal, RovingOrientation, Signal, SuspenseBoundary, getLinkComponent, setLinkComponent } from "@cascivo/core";
2
2
  import { AnchorHTMLAttributes, ButtonHTMLAttributes, FormHTMLAttributes, HTMLAttributes, ImgHTMLAttributes, InputHTMLAttributes, LabelHTMLAttributes, LiHTMLAttributes, MouseEvent, ReactElement, ReactNode, RefObject, SelectHTMLAttributes, TextareaHTMLAttributes, TimeHTMLAttributes } from "react";
3
3
 
4
4
  interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
@@ -151,6 +151,9 @@ declare function Alert({
151
151
  interface AvatarProps extends HTMLAttributes<HTMLSpanElement> {
152
152
  src?: string;
153
153
  alt?: string;
154
+ /** Full name — used to derive initials for the fallback and as the accessible label. */
155
+ name?: string;
156
+ /** Explicit fallback text (initials/glyph). Overrides initials derived from `name`. */
154
157
  fallback?: string;
155
158
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
156
159
  status?: 'online' | 'offline' | 'busy';
@@ -158,6 +161,7 @@ interface AvatarProps extends HTMLAttributes<HTMLSpanElement> {
158
161
  declare function Avatar({
159
162
  src,
160
163
  alt,
164
+ name,
161
165
  fallback,
162
166
  size,
163
167
  status,
@@ -693,7 +697,8 @@ interface SideNavItem {
693
697
  * the default layout), and `linkProps` is the anchor prop bag cascivo would spread
694
698
  * onto the `<a>` (including active-state and a11y attributes) — spread it onto your
695
699
  * router `<Link>` to preserve them. For a global router integration prefer
696
- * `setLinkComponent` from `@cascivo/core` over a per-item hatch.
700
+ * `setLinkComponent` (from `@cascivo/react`, or `@cascivo/core` for copied source)
701
+ * over a per-item hatch.
697
702
  */
698
703
  render?: (ctx: {
699
704
  collapsed: boolean;
@@ -3420,4 +3425,4 @@ declare function themePreloadScript(options?: {
3420
3425
  attribute?: string;
3421
3426
  defaultTheme?: string;
3422
3427
  }): string;
3423
- export { Accordion, AccordionContent, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, ActionSheet, ActionSheetAction, ActionSheetProps, Alert, AlertDialog, AlertDialogLabels, AlertDialogProps, AlertProps, AppShell, AppShellProps, AspectRatio, AspectRatioProps, AutoGrid, AutoGridProps, Avatar, AvatarGroup, AvatarGroupLabels, AvatarGroupProps, AvatarProps, Badge, BadgeProps, Blockquote, BlockquoteProps, BottomSheet, BottomSheetProps, Breadcrumb, BreadcrumbItem, BreadcrumbProps, Button, ButtonGroup, ButtonGroupProps, ButtonProps, Calendar, CalendarLabels, CalendarProps, Card, CardContent, CardContentProps, CardFooter, CardFooterProps, CardHeader, CardHeaderProps, CardProps, CardTitle, CardTitleProps, Carousel, CarouselLabels, CarouselProps, Center, CenterProps, ChatBubble, ChatBubbleProps, ChatBubbleSide, Checkbox, CheckboxCard, CheckboxCardProps, CheckboxProps, Code, type CodeLang, CodeProps, CodeSnippet, CodeSnippetProps, Collapsible, CollapsibleProps, ColorPicker, ColorPickerLabels, ColorPickerProps, Column, Columns, ColumnsProps, Combobox, ComboboxLabels, ComboboxOption, ComboboxProps, CommandAction, CommandGroup, CommandItem, CommandMenu, CommandMenuProps, CommandPage, CommandScope, CommandStatus, Comparison, ComparisonProps, ContainedList, ContainedListItem, ContainedListItemProps, ContainedListProps, ContextMenu, ContextMenuItem, ContextMenuItemProps, ContextMenuProps, CopyButton, CopyButtonProps, DataList, DataListItem, DataListProps, DataTable, DataTableLabels, DataTableProps, DatePicker, DatePickerLabels, DatePickerProps, DateRange, DateRangePicker, DateRangePickerLabels, DateRangePickerProps, DateRangePreset, Dock, DockItem, DockProps, Drawer, DrawerProps, Dropdown, DropdownItem, DropdownProps, Editable, EditableProps, EmptyState, EmptyStateProps, ErrorBoundary, Fab, FabAction, FabProps, Field, FieldProps, FileUploader, FileUploaderLabels, FileUploaderProps, Filter, FilterOption, FilterProps, FilterVariant, Flex, FlexProps, FocusScope, Form, FormConfig, FormProps, FormStore, FuzzyMatch, Grid, GridAlign, GridItem, GridItemProps, GridProps, Header, HeaderLabels, HeaderLink, HeaderPanel, HeaderPanelLabels, HeaderPanelProps, HeaderProps, Heading, HeadingLevel, HeadingProps, HeadingSize, HoverCard, HoverCardContent, HoverCardContentProps, HoverCardProps, HoverCardTrigger, HoverCardTriggerProps, IconButton, IconButtonProps, Image, ImageProps, Indicator, IndicatorPlacement, IndicatorProps, InlineLoading, InlineLoadingProps, InlineLoadingStatus, Input, InputGroup, InputGroupAddon, type InputGroupAddonProps, type InputGroupProps, InputProps, Item, ItemActions, ItemActionsProps, ItemContent, ItemContentProps, ItemDescription, ItemDescriptionProps, ItemMedia, ItemMediaProps, ItemProps, ItemTitle, ItemTitleProps, Join, JoinOrientation, JoinProps, Kbd, KbdProps, Label, LabelProps, Link, LinkProps, List, ListItem, ListItemProps, ListProps, LogLevel, LogLine, LogViewer, LogViewerLabels, LogViewerProps, Menu, MenuButton, MenuButtonItem, MenuButtonProps, MenuItem, MenuItemProps, MenuProps, MenuSeparator, MenuTrigger, MenuTriggerProps, Menubar, MenubarItem, MenubarMenu, MenubarProps, Modal, ModalProps, MultiSelect, MultiSelectLabels, MultiSelectOption, MultiSelectProps, NativeSelect, NativeSelectOption, NativeSelectProps, NavigationMenu, NavigationMenuItem, NavigationMenuProps, Notification, NotificationProps, NotificationVariant, NumberInput, NumberInputProps, OtpInput, OtpInputProps, OverflowMenu, OverflowMenuItem, OverflowMenuProps, Pagination, PaginationLabels, PaginationProps, PasswordInput, PasswordInputLabels, PasswordInputProps, Popover, PopoverContent, PopoverContentProps, PopoverProps, PopoverTrigger, PopoverTriggerProps, Portal, Progress, ProgressBar, ProgressBarProps, ProgressCircle, ProgressCircleProps, ProgressIndicator, ProgressIndicatorProps, ProgressProps, ProgressSize, ProgressStep, ProgressVariant, Prose, ProseProps, PullToRefresh, PullToRefreshProps, QrCode, QrCodeProps, RadialProgress, RadialProgressProps, RadialProgressSize, RadialProgressVariant, Radio, RadioCard, RadioCardGroup, RadioCardGroupProps, RadioCardProps, RadioGroup, RadioGroupProps, RadioProps, RatingGroup, RatingGroupLabels, RatingGroupProps, RelativeTime, RelativeTimeProps, Resizable, ResizableProps, Responsive, ScrollArea, ScrollAreaProps, Search, SearchProps, SegmentedControl, SegmentedControlOption, SegmentedControlProps, Select, SelectOption, SelectProps, Separator, SeparatorProps, Sheet, SheetProps, ShellHeader, ShellHeaderAction, ShellHeaderBrand, ShellHeaderLabels, ShellHeaderNavItem, ShellHeaderNavLink, ShellHeaderNavMenu, ShellHeaderNavMenuItem, ShellHeaderProps, SideNav, SideNavGroup, SideNavItem, SideNavLinkProps, SideNavLinkSubItem, SideNavProps, SideNavSubItem, SideNavTone, Skeleton, SkeletonProps, SkipNavLink, SkipNavLinkProps, SkipNavTarget, SkipNavTargetProps, Slider, SliderProps, SortDirection, SortState, Spacer, SpacerProps, Spinner, SpinnerProps, Stack, StackProps, type StandardSchemaV1, Stat, StatProps, Status, StatusProps, Step, StepState, Steps, StepsProps, StructuredList, StructuredListItem, StructuredListProps, SuspenseBoundary, Swap, SwapMode, SwapProps, SwipeAction, SwipeItem, SwipeItemProps, Switcher, SwitcherEntry, SwitcherLink, SwitcherProps, Tabs, TabsContent, TabsContentProps, TabsList, TabsProps, TabsTrigger, TabsTriggerProps, Tag$1 as Tag, TagProps, TagsInput, TagsInputProps, Text, TextProps, Textarea, TextareaProps, ThemeProvider, type ThemeProviderProps, Tile, TileProps, TimePicker, TimePickerProps, Timeline, TimelineItem, TimelineProps, ToastOptions, ToastProvider, ToastVariant, Toc, TocItem, TocProps, Toggle, ToggleGroup, ToggleGroupItem, ToggleGroupProps, ToggleProps, Toggletip, ToggletipPlacement, ToggletipProps, Tooltip, TooltipProps, TreeNode, TreeView, TreeViewProps, UploaderFile, type UsePopoverOptions, type UsePopoverReturn, type UseTocFromRegionOptions, User, UserProps, VisuallyHidden, VisuallyHiddenProps, createForm, dismissAllToasts, fuzzyMatch, fuzzyScore, setTheme, themePreloadScript, treeViewMessages, useForm, usePopover, useTheme, useToast, useTocFromRegion };
3428
+ export { Accordion, AccordionContent, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, ActionSheet, ActionSheetAction, ActionSheetProps, Alert, AlertDialog, AlertDialogLabels, AlertDialogProps, AlertProps, AppShell, AppShellProps, AspectRatio, AspectRatioProps, AutoGrid, AutoGridProps, Avatar, AvatarGroup, AvatarGroupLabels, AvatarGroupProps, AvatarProps, Badge, BadgeProps, Blockquote, BlockquoteProps, BottomSheet, BottomSheetProps, Breadcrumb, BreadcrumbItem, BreadcrumbProps, Button, ButtonGroup, ButtonGroupProps, ButtonProps, Calendar, CalendarLabels, CalendarProps, Card, CardContent, CardContentProps, CardFooter, CardFooterProps, CardHeader, CardHeaderProps, CardProps, CardTitle, CardTitleProps, Carousel, CarouselLabels, CarouselProps, Center, CenterProps, ChatBubble, ChatBubbleProps, ChatBubbleSide, Checkbox, CheckboxCard, CheckboxCardProps, CheckboxProps, Code, type CodeLang, CodeProps, CodeSnippet, CodeSnippetProps, Collapsible, CollapsibleProps, ColorPicker, ColorPickerLabels, ColorPickerProps, Column, Columns, ColumnsProps, Combobox, ComboboxLabels, ComboboxOption, ComboboxProps, CommandAction, CommandGroup, CommandItem, CommandMenu, CommandMenuProps, CommandPage, CommandScope, CommandStatus, Comparison, ComparisonProps, ContainedList, ContainedListItem, ContainedListItemProps, ContainedListProps, ContextMenu, ContextMenuItem, ContextMenuItemProps, ContextMenuProps, CopyButton, CopyButtonProps, DataList, DataListItem, DataListProps, DataTable, DataTableLabels, DataTableProps, DatePicker, DatePickerLabels, DatePickerProps, DateRange, DateRangePicker, DateRangePickerLabels, DateRangePickerProps, DateRangePreset, Dock, DockItem, DockProps, Drawer, DrawerProps, Dropdown, DropdownItem, DropdownProps, Editable, EditableProps, EmptyState, EmptyStateProps, ErrorBoundary, Fab, FabAction, FabProps, Field, FieldProps, FileUploader, FileUploaderLabels, FileUploaderProps, Filter, FilterOption, FilterProps, FilterVariant, Flex, FlexProps, FocusScope, Form, FormConfig, FormProps, FormStore, FuzzyMatch, Grid, GridAlign, GridItem, GridItemProps, GridProps, Header, HeaderLabels, HeaderLink, HeaderPanel, HeaderPanelLabels, HeaderPanelProps, HeaderProps, Heading, HeadingLevel, HeadingProps, HeadingSize, HoverCard, HoverCardContent, HoverCardContentProps, HoverCardProps, HoverCardTrigger, HoverCardTriggerProps, IconButton, IconButtonProps, Image, ImageProps, Indicator, IndicatorPlacement, IndicatorProps, InlineLoading, InlineLoadingProps, InlineLoadingStatus, Input, InputGroup, InputGroupAddon, type InputGroupAddonProps, type InputGroupProps, InputProps, Item, ItemActions, ItemActionsProps, ItemContent, ItemContentProps, ItemDescription, ItemDescriptionProps, ItemMedia, ItemMediaProps, ItemProps, ItemTitle, ItemTitleProps, Join, JoinOrientation, JoinProps, Kbd, KbdProps, Label, LabelProps, Link, type LinkComponent, LinkProps, List, ListItem, ListItemProps, ListProps, LogLevel, LogLine, LogViewer, LogViewerLabels, LogViewerProps, Menu, MenuButton, MenuButtonItem, MenuButtonProps, MenuItem, MenuItemProps, MenuProps, MenuSeparator, MenuTrigger, MenuTriggerProps, Menubar, MenubarItem, MenubarMenu, MenubarProps, Modal, ModalProps, MultiSelect, MultiSelectLabels, MultiSelectOption, MultiSelectProps, NativeSelect, NativeSelectOption, NativeSelectProps, NavigationMenu, NavigationMenuItem, NavigationMenuProps, Notification, NotificationProps, NotificationVariant, NumberInput, NumberInputProps, OtpInput, OtpInputProps, OverflowMenu, OverflowMenuItem, OverflowMenuProps, Pagination, PaginationLabels, PaginationProps, PasswordInput, PasswordInputLabels, PasswordInputProps, Popover, PopoverContent, PopoverContentProps, PopoverProps, PopoverTrigger, PopoverTriggerProps, Portal, Progress, ProgressBar, ProgressBarProps, ProgressCircle, ProgressCircleProps, ProgressIndicator, ProgressIndicatorProps, ProgressProps, ProgressSize, ProgressStep, ProgressVariant, Prose, ProseProps, PullToRefresh, PullToRefreshProps, QrCode, QrCodeProps, RadialProgress, RadialProgressProps, RadialProgressSize, RadialProgressVariant, Radio, RadioCard, RadioCardGroup, RadioCardGroupProps, RadioCardProps, RadioGroup, RadioGroupProps, RadioProps, RatingGroup, RatingGroupLabels, RatingGroupProps, RelativeTime, RelativeTimeProps, Resizable, ResizableProps, Responsive, ScrollArea, ScrollAreaProps, Search, SearchProps, SegmentedControl, SegmentedControlOption, SegmentedControlProps, Select, SelectOption, SelectProps, Separator, SeparatorProps, Sheet, SheetProps, ShellHeader, ShellHeaderAction, ShellHeaderBrand, ShellHeaderLabels, ShellHeaderNavItem, ShellHeaderNavLink, ShellHeaderNavMenu, ShellHeaderNavMenuItem, ShellHeaderProps, SideNav, SideNavGroup, SideNavItem, SideNavLinkProps, SideNavLinkSubItem, SideNavProps, SideNavSubItem, SideNavTone, Skeleton, SkeletonProps, SkipNavLink, SkipNavLinkProps, SkipNavTarget, SkipNavTargetProps, Slider, SliderProps, SortDirection, SortState, Spacer, SpacerProps, Spinner, SpinnerProps, Stack, StackProps, type StandardSchemaV1, Stat, StatProps, Status, StatusProps, Step, StepState, Steps, StepsProps, StructuredList, StructuredListItem, StructuredListProps, SuspenseBoundary, Swap, SwapMode, SwapProps, SwipeAction, SwipeItem, SwipeItemProps, Switcher, SwitcherEntry, SwitcherLink, SwitcherProps, Tabs, TabsContent, TabsContentProps, TabsList, TabsProps, TabsTrigger, TabsTriggerProps, Tag$1 as Tag, TagProps, TagsInput, TagsInputProps, Text, TextProps, Textarea, TextareaProps, ThemeProvider, type ThemeProviderProps, Tile, TileProps, TimePicker, TimePickerProps, Timeline, TimelineItem, TimelineProps, ToastOptions, ToastProvider, ToastVariant, Toc, TocItem, TocProps, Toggle, ToggleGroup, ToggleGroupItem, ToggleGroupProps, ToggleProps, Toggletip, ToggletipPlacement, ToggletipProps, Tooltip, TooltipProps, TreeNode, TreeView, TreeViewProps, UploaderFile, type UsePopoverOptions, type UsePopoverReturn, type UseTocFromRegionOptions, User, UserProps, VisuallyHidden, VisuallyHiddenProps, createForm, dismissAllToasts, fuzzyMatch, fuzzyScore, getLinkComponent, setLinkComponent, setTheme, themePreloadScript, treeViewMessages, useForm, usePopover, useTheme, useToast, useTocFromRegion };
@@ -134,5 +134,5 @@ import { Center as on } from "../../layouts/src/center/center.js";
134
134
  import { Spacer as sn } from "../../layouts/src/spacer/spacer.js";
135
135
  import { AutoGrid as cn } from "../../layouts/src/auto-grid/auto-grid.js";
136
136
  import { ThemeProvider as ln, setTheme as un, themePreloadScript as dn, useTheme as fn } from "./theme.js";
137
- import { ErrorBoundary as pn, FocusScope as mn, Portal as hn, SuspenseBoundary as gn } from "@cascivo/core";
138
- export { M as Accordion, N as AccordionContent, P as AccordionItem, F as AccordionTrigger, I as ActionSheet, d as Alert, ye as AlertDialog, Xt as AppShell, vt as AspectRatio, cn as AutoGrid, f as Avatar, p as AvatarGroup, c as Badge, et as Blockquote, xe as BottomSheet, z as Breadcrumb, t as Button, ft as ButtonGroup, It as Calendar, r as Card, i as CardContent, a as CardFooter, o as CardHeader, s as CardTitle, zt as Carousel, on as Center, Zt as ChatBubble, v as Checkbox, He as CheckboxCard, $e as Code, Wt as CodeSnippet, _t as Collapsible, Rt as ColorPicker, an as Columns, ce as Combobox, ne as CommandMenu, we as Comparison, Et as ContainedList, Dt as ContainedListItem, Se as ContextMenu, Ce as ContextMenuItem, Ue as CopyButton, Ot as DataList, te as DataTable, le as DatePicker, Lt as DateRangePicker, Vt as Dock, Ht as Drawer, w as Dropdown, Ie as Editable, X as EmptyState, pn as ErrorBoundary, Z as Fab, lt as Field, ue as FileUploader, ut as Filter, rn as Flex, mn as FocusScope, ae as Form, tn as Grid, nn as GridItem, H as Header, Be as HeaderPanel, Ze as Heading, Te as HoverCard, Ee as HoverCardContent, De as HoverCardTrigger, dt as IconButton, h as Image, qt as Indicator, mt as InlineLoading, n as Input, Ne as InputGroup, Pe as InputGroupAddon, At as Item, jt as ItemActions, Mt as ItemContent, Nt as ItemDescription, Pt as ItemMedia, Ft as ItemTitle, Jt as Join, L as Kbd, ct as Label, R as Link, tt as List, nt as ListItem, rt as LogViewer, he as Menu, yt as MenuButton, ge as MenuItem, _e as MenuSeparator, ve as MenuTrigger, xt as Menubar, l as Modal, ke as MultiSelect, Ut as NativeSelect, St as NavigationMenu, ht as Notification, ee as NumberInput, je as OtpInput, Q as OverflowMenu, G as Pagination, Oe as PasswordInput, fe as Popover, pe as PopoverContent, me as PopoverTrigger, hn as Portal, Ye as Progress, Y as ProgressBar, Xe as ProgressCircle, K as ProgressIndicator, it as Prose, at as PullToRefresh, ot as QrCode, Qt as RadialProgress, y as Radio, Le as RadioCard, Re as RadioCardGroup, b as RadioGroup, Fe as RatingGroup, st as RelativeTime, Bt as Resizable, gt as ScrollArea, $ as Search, Me as SegmentedControl, _ as Select, u as Separator, be as Sheet, ze as ShellHeader, W as SideNav, J as Skeleton, qe as SkipNavLink, Je as SkipNavTarget, S as Slider, sn as Spacer, e as Spinner, Yt as Stack, We as Stat, Ge as Status, Gt as Steps, Tt as StructuredList, gn as SuspenseBoundary, $t as Swap, en as SwipeItem, Ve as Switcher, O as Tabs, k as TabsContent, A as TabsList, j as TabsTrigger, q as Tag, Ae as TagsInput, Qe as Text, g as Textarea, ln as ThemeProvider, Kt as Tile, de as TimePicker, kt as Timeline, T as ToastProvider, B as Toc, x as Toggle, pt as ToggleGroup, bt as Toggletip, C as Tooltip, Ct as TreeView, m as User, Ke as VisuallyHidden, oe as createForm, E as dismissAllToasts, re as fuzzyMatch, ie as fuzzyScore, un as setTheme, dn as themePreloadScript, wt as treeViewMessages, se as useForm, U as usePopover, fn as useTheme, D as useToast, V as useTocFromRegion };
137
+ import { ErrorBoundary as pn, FocusScope as mn, Portal as hn, SuspenseBoundary as gn, getLinkComponent as _n, setLinkComponent as vn } from "@cascivo/core";
138
+ export { M as Accordion, N as AccordionContent, P as AccordionItem, F as AccordionTrigger, I as ActionSheet, d as Alert, ye as AlertDialog, Xt as AppShell, vt as AspectRatio, cn as AutoGrid, f as Avatar, p as AvatarGroup, c as Badge, et as Blockquote, xe as BottomSheet, z as Breadcrumb, t as Button, ft as ButtonGroup, It as Calendar, r as Card, i as CardContent, a as CardFooter, o as CardHeader, s as CardTitle, zt as Carousel, on as Center, Zt as ChatBubble, v as Checkbox, He as CheckboxCard, $e as Code, Wt as CodeSnippet, _t as Collapsible, Rt as ColorPicker, an as Columns, ce as Combobox, ne as CommandMenu, we as Comparison, Et as ContainedList, Dt as ContainedListItem, Se as ContextMenu, Ce as ContextMenuItem, Ue as CopyButton, Ot as DataList, te as DataTable, le as DatePicker, Lt as DateRangePicker, Vt as Dock, Ht as Drawer, w as Dropdown, Ie as Editable, X as EmptyState, pn as ErrorBoundary, Z as Fab, lt as Field, ue as FileUploader, ut as Filter, rn as Flex, mn as FocusScope, ae as Form, tn as Grid, nn as GridItem, H as Header, Be as HeaderPanel, Ze as Heading, Te as HoverCard, Ee as HoverCardContent, De as HoverCardTrigger, dt as IconButton, h as Image, qt as Indicator, mt as InlineLoading, n as Input, Ne as InputGroup, Pe as InputGroupAddon, At as Item, jt as ItemActions, Mt as ItemContent, Nt as ItemDescription, Pt as ItemMedia, Ft as ItemTitle, Jt as Join, L as Kbd, ct as Label, R as Link, tt as List, nt as ListItem, rt as LogViewer, he as Menu, yt as MenuButton, ge as MenuItem, _e as MenuSeparator, ve as MenuTrigger, xt as Menubar, l as Modal, ke as MultiSelect, Ut as NativeSelect, St as NavigationMenu, ht as Notification, ee as NumberInput, je as OtpInput, Q as OverflowMenu, G as Pagination, Oe as PasswordInput, fe as Popover, pe as PopoverContent, me as PopoverTrigger, hn as Portal, Ye as Progress, Y as ProgressBar, Xe as ProgressCircle, K as ProgressIndicator, it as Prose, at as PullToRefresh, ot as QrCode, Qt as RadialProgress, y as Radio, Le as RadioCard, Re as RadioCardGroup, b as RadioGroup, Fe as RatingGroup, st as RelativeTime, Bt as Resizable, gt as ScrollArea, $ as Search, Me as SegmentedControl, _ as Select, u as Separator, be as Sheet, ze as ShellHeader, W as SideNav, J as Skeleton, qe as SkipNavLink, Je as SkipNavTarget, S as Slider, sn as Spacer, e as Spinner, Yt as Stack, We as Stat, Ge as Status, Gt as Steps, Tt as StructuredList, gn as SuspenseBoundary, $t as Swap, en as SwipeItem, Ve as Switcher, O as Tabs, k as TabsContent, A as TabsList, j as TabsTrigger, q as Tag, Ae as TagsInput, Qe as Text, g as Textarea, ln as ThemeProvider, Kt as Tile, de as TimePicker, kt as Timeline, T as ToastProvider, B as Toc, x as Toggle, pt as ToggleGroup, bt as Toggletip, C as Tooltip, Ct as TreeView, m as User, Ke as VisuallyHidden, oe as createForm, E as dismissAllToasts, re as fuzzyMatch, ie as fuzzyScore, _n as getLinkComponent, vn as setLinkComponent, un as setTheme, dn as themePreloadScript, wt as treeViewMessages, se as useForm, U as usePopover, fn as useTheme, D as useToast, V as useTocFromRegion };
package/dist/styles.css CHANGED
@@ -98,7 +98,7 @@
98
98
  /*$vite$:1*/
99
99
  @layer cascivo.component{._list_prsqy_2{font-family:var(--cascivo-font-sans);color:var(--cascivo-color-text);line-height:var(--cascivo-leading-normal);margin:0}._list_prsqy_2[data-size=sm]{font-size:var(--cascivo-text-xs);--_row-gap:var(--cascivo-space-2);--_pair-gap:var(--cascivo-space-2)}._list_prsqy_2[data-size=md]{font-size:var(--cascivo-text-sm);--_row-gap:var(--cascivo-space-3);--_pair-gap:var(--cascivo-space-4)}._row_prsqy_21{gap:var(--_pair-gap);padding-block:var(--_row-gap);display:grid}._list_prsqy_2[data-orientation=horizontal] ._row_prsqy_21{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:baseline}._list_prsqy_2[data-orientation=vertical] ._row_prsqy_21{gap:var(--cascivo-space-1);grid-template-columns:1fr}._list_prsqy_2[data-dividers] ._row_prsqy_21{border-block-end:1px solid var(--cascivo-color-border)}._list_prsqy_2[data-dividers] ._row_prsqy_21:last-child{border-block-end:none}._term_prsqy_45{color:var(--cascivo-color-text-subtle);font-weight:var(--cascivo-font-medium);margin:0}._detail_prsqy_51{margin:0;color:var(--cascivo-color-text);margin-inline-start:0}}@media (forced-colors:active){._list_prsqy_2[data-dividers] ._row_prsqy_21{border-block-end:1px solid canvastext}}
100
100
  /*$vite$:1*/
101
- @layer cascivo.component{._root_cpm34_2{--_row-height:3rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);flex-direction:column;display:flex;overflow:hidden}._root_cpm34_2[data-density=compact]{--_row-height:2.25rem}._root_cpm34_2[data-density=normal]{--_row-height:3rem}._root_cpm34_2[data-density=relaxed]{--_row-height:3.75rem}._toolbar_cpm34_26{justify-content:space-between;align-items:flex-end;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-end:1px solid var(--cascivo-color-border);display:flex}._heading_cpm34_35{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_cpm34_41{font-size:var(--cascivo-text-base);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._description_cpm34_47{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle)}._search_cpm34_52{appearance:none;height:2rem;min-inline-size:14rem;padding-inline:var(--cascivo-space-3);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none}._search_cpm34_52:hover:not(:focus){border-color:var(--cascivo-color-border-strong)}._search_cpm34_52:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._batchBar_cpm34_79{justify-content:space-between;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-2) var(--cascivo-space-4);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);display:flex}._batchCount_cpm34_89{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text)}._batchActions_cpm34_95{gap:var(--cascivo-space-2);display:flex}._scroller_cpm34_101{max-block-size:var(--cascivo-data-table-max-height,none);overflow:auto}._scrollerVirtualized_cpm34_106{block-size:var(--cascivo-data-table-height,400px);max-block-size:none;overflow:auto}._table_cpm34_112{border-collapse:collapse;table-layout:auto;inline-size:100%}._root_cpm34_2[data-paginated=true] ._table_cpm34_112{table-layout:fixed}._table_cpm34_112 thead th{padding-block:var(--cascivo-space-2);padding-inline:var(--cascivo-space-4);text-align:start;font-weight:var(--cascivo-font-semibold);font-size:var(--cascivo-text-xs);text-transform:uppercase;letter-spacing:var(--cascivo-tracking-wide);color:var(--cascivo-color-text-subtle);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);white-space:nowrap}._table_cpm34_112 thead th[data-align=end]{text-align:end}._table_cpm34_112 td{padding-block:0;padding-inline:var(--cascivo-space-4);block-size:var(--_row-height);vertical-align:middle;border-block-end:1px solid var(--cascivo-color-border);color:var(--cascivo-color-text)}._table_cpm34_112 td[data-align=end]{text-align:end}._table_cpm34_112 tbody tr[data-filler-row] td{border-block-end:none}._root_cpm34_2[data-sticky-header=true] ._table_cpm34_112 thead th{z-index:var(--cascivo-z-raised,10);background-color:var(--cascivo-color-surface);position:sticky;inset-block-start:0}._root_cpm34_2[data-zebra=true] ._table_cpm34_112 tbody tr:nth-child(2n of ._row_cpm34_168){background-color:var(--cascivo-color-bg-subtle)}._controlCol_cpm34_174{inline-size:3rem}._controlCell_cpm34_178{text-align:center;padding-inline:var(--cascivo-space-2)}._sortButton_cpm34_184{align-items:center;gap:var(--cascivo-space-1);font-family:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:none;outline:none;padding:0;display:inline-flex}._sortButton_cpm34_184:focus-visible{text-decoration:underline}._sortButton_cpm34_184:after{content:"↕";opacity:.4;font-size:.75em}._sortButton_cpm34_184[data-state=ascending]:after{content:"↑";opacity:.9}._sortButton_cpm34_184[data-state=descending]:after{content:"↓";opacity:.9}._row_cpm34_168{content-visibility:auto;contain-intrinsic-size:auto var(--_row-height,3rem)}._row_cpm34_168[data-state=selected] td{background-color:color-mix(in srgb, var(--cascivo-color-accent) 8%, transparent)}._emptyCell_cpm34_232{padding:var(--cascivo-space-8) var(--cascivo-space-4);text-align:center;color:var(--cascivo-color-text-muted)}._expansionRow_cpm34_239[data-state=closed]{display:none}._expansionGrid_cpm34_245{overflow:hidden}._expansionInner_cpm34_249{padding:var(--cascivo-space-4)}._expandButton_cpm34_254{cursor:pointer;block-size:1.5rem;inline-size:1.5rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex}._expandButton_cpm34_254:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._expandButton_cpm34_254:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._chevron_cpm34_277{block-size:.75rem;inline-size:.75rem;transition:transform var(--cascivo-duration-150) var(--cascivo-ease-out);border-block-end:2px solid;border-inline-end:2px solid;display:block;transform:rotate(45deg)}._expandButton_cpm34_254[data-state=open] ._chevron_cpm34_277{transform:rotate(-135deg)}._shimmer_cpm34_292{background-color:var(--cascivo-color-bg-subtle);border-radius:var(--cascivo-radius-indicator);block-size:.875rem;inline-size:80%;display:block;position:relative;overflow:hidden}._shimmer_cpm34_292:after{content:"";background:linear-gradient(90deg, transparent, var(--cascivo-color-surface), transparent);animation:_shimmer_cpm34_292 var(--cascivo-duration-500,.5s) var(--cascivo-ease-in-out,ease-in-out) infinite;position:absolute;inset:0;translate:-100%}@keyframes _shimmer_cpm34_292{to{translate:100%}}._footer_cpm34_319{justify-content:flex-end;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-start:1px solid var(--cascivo-color-border);font-size:var(--cascivo-text-sm);display:flex}._pageSize_cpm34_329{align-items:center;gap:var(--cascivo-space-2);color:var(--cascivo-color-text-muted);display:flex}._pageSize_cpm34_329 select{appearance:none;height:2rem;padding-inline:var(--cascivo-space-2);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;outline:none}._pageSize_cpm34_329 select:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._range_cpm34_355{color:var(--cascivo-color-text-muted);white-space:nowrap}._pageButtons_cpm34_360{gap:var(--cascivo-space-1);display:flex}._pageButton_cpm34_360{border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text);font-size:var(--cascivo-text-base);transition:background-color var(--cascivo-duration-150) var(--cascivo-ease-out), border-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;outline:none;justify-content:center;align-items:center;display:inline-flex}._pageButton_cpm34_360:hover:not(:disabled){background-color:var(--cascivo-color-bg-subtle);border-color:var(--cascivo-color-border-strong)}._pageButton_cpm34_360:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._pageButton_cpm34_360:disabled{color:var(--cascivo-color-text-muted);cursor:not-allowed}._srOnly_cpm34_401{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}
101
+ @layer cascivo.component{._root_jwjfs_2{--_row-height:3rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);flex-direction:column;display:flex;overflow:hidden}._root_jwjfs_2[data-density=compact]{--_row-height:2.25rem}._root_jwjfs_2[data-density=normal]{--_row-height:3rem}._root_jwjfs_2[data-density=relaxed]{--_row-height:3.75rem}._toolbar_jwjfs_26{justify-content:space-between;align-items:flex-end;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-end:1px solid var(--cascivo-color-border);display:flex}._heading_jwjfs_35{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_jwjfs_41{font-size:var(--cascivo-text-base);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._description_jwjfs_47{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle)}._search_jwjfs_52{appearance:none;height:2rem;min-inline-size:14rem;padding-inline:var(--cascivo-space-3);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none}._search_jwjfs_52:hover:not(:focus){border-color:var(--cascivo-color-border-strong)}._search_jwjfs_52:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._batchBar_jwjfs_79{justify-content:space-between;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-2) var(--cascivo-space-4);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);display:flex}._batchCount_jwjfs_89{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text)}._batchActions_jwjfs_95{gap:var(--cascivo-space-2);display:flex}._scroller_jwjfs_101{max-block-size:var(--cascivo-data-table-max-height,none);overflow:auto}._scrollerVirtualized_jwjfs_106{block-size:var(--cascivo-data-table-height,400px);max-block-size:none;overflow:auto}._table_jwjfs_112{border-collapse:collapse;table-layout:auto;inline-size:100%}._root_jwjfs_2[data-paginated=true] ._table_jwjfs_112{table-layout:fixed}._table_jwjfs_112 thead th{padding-block:var(--cascivo-space-2);padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));text-align:start;font-weight:var(--cascivo-font-semibold);font-size:var(--cascivo-text-xs);text-transform:uppercase;letter-spacing:var(--cascivo-tracking-wide);color:var(--cascivo-color-text-subtle);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);white-space:nowrap}._table_jwjfs_112 thead th[data-align=end]{text-align:end}._table_jwjfs_112 td{padding-block:0;padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));block-size:var(--_row-height);vertical-align:middle;border-block-end:1px solid var(--cascivo-color-border);color:var(--cascivo-color-text);overflow-wrap:anywhere}._table_jwjfs_112 td[data-align=end]{text-align:end}._table_jwjfs_112 tbody tr[data-filler-row] td{border-block-end:none}._root_jwjfs_2[data-sticky-header=true] ._table_jwjfs_112 thead th{z-index:var(--cascivo-z-raised,10);background-color:var(--cascivo-color-surface);position:sticky;inset-block-start:0}._root_jwjfs_2[data-zebra=true] ._table_jwjfs_112 tbody tr:nth-child(2n of ._row_jwjfs_172){background-color:var(--cascivo-color-bg-subtle)}._controlCol_jwjfs_178{inline-size:3rem}._controlCell_jwjfs_182{text-align:center;padding-inline:var(--cascivo-space-2)}._sortButton_jwjfs_188{align-items:center;gap:var(--cascivo-space-1);font-family:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:none;outline:none;padding:0;display:inline-flex}._sortButton_jwjfs_188:focus-visible{text-decoration:underline}._sortButton_jwjfs_188:after{content:"↕";opacity:.4;font-size:.75em}._sortButton_jwjfs_188[data-state=ascending]:after{content:"↑";opacity:.9}._sortButton_jwjfs_188[data-state=descending]:after{content:"↓";opacity:.9}._row_jwjfs_172{content-visibility:auto;contain-intrinsic-size:auto var(--_row-height,3rem)}._row_jwjfs_172[data-state=selected] td{background-color:color-mix(in srgb, var(--cascivo-color-accent) 8%, transparent)}._emptyCell_jwjfs_236{padding:var(--cascivo-space-8) var(--cascivo-space-4);text-align:center;color:var(--cascivo-color-text-muted)}._expansionRow_jwjfs_243[data-state=closed]{display:none}._expansionGrid_jwjfs_249{overflow:hidden}._expansionInner_jwjfs_253{padding:var(--cascivo-space-4)}._expandButton_jwjfs_258{cursor:pointer;block-size:1.5rem;inline-size:1.5rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex}._expandButton_jwjfs_258:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._expandButton_jwjfs_258:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._chevron_jwjfs_281{block-size:.75rem;inline-size:.75rem;transition:transform var(--cascivo-duration-150) var(--cascivo-ease-out);border-block-end:2px solid;border-inline-end:2px solid;display:block;transform:rotate(45deg)}._expandButton_jwjfs_258[data-state=open] ._chevron_jwjfs_281{transform:rotate(-135deg)}._shimmer_jwjfs_296{background-color:var(--cascivo-color-bg-subtle);border-radius:var(--cascivo-radius-indicator);block-size:.875rem;inline-size:80%;display:block;position:relative;overflow:hidden}._shimmer_jwjfs_296:after{content:"";background:linear-gradient(90deg, transparent, var(--cascivo-color-surface), transparent);animation:_shimmer_jwjfs_296 var(--cascivo-duration-500,.5s) var(--cascivo-ease-in-out,ease-in-out) infinite;position:absolute;inset:0;translate:-100%}@keyframes _shimmer_jwjfs_296{to{translate:100%}}._footer_jwjfs_323{justify-content:flex-end;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-start:1px solid var(--cascivo-color-border);font-size:var(--cascivo-text-sm);display:flex}._pageSize_jwjfs_333{align-items:center;gap:var(--cascivo-space-2);color:var(--cascivo-color-text-muted);display:flex}._pageSize_jwjfs_333 select{appearance:none;height:2rem;padding-inline:var(--cascivo-space-2);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;outline:none}._pageSize_jwjfs_333 select:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._range_jwjfs_359{color:var(--cascivo-color-text-muted);white-space:nowrap}._pageButtons_jwjfs_364{gap:var(--cascivo-space-1);display:flex}._pageButton_jwjfs_364{border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text);font-size:var(--cascivo-text-base);transition:background-color var(--cascivo-duration-150) var(--cascivo-ease-out), border-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;outline:none;justify-content:center;align-items:center;display:inline-flex}._pageButton_jwjfs_364:hover:not(:disabled){background-color:var(--cascivo-color-bg-subtle);border-color:var(--cascivo-color-border-strong)}._pageButton_jwjfs_364:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._pageButton_jwjfs_364:disabled{color:var(--cascivo-color-text-muted);cursor:not-allowed}._srOnly_jwjfs_405{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}
102
102
  /*$vite$:1*/
103
103
  @layer cascivo.component{._wrapper_6chzy_2{gap:var(--cascivo-space-1);font-family:var(--cascivo-font-sans);flex-direction:column;display:inline-flex;position:relative}._wrapper_6chzy_2[data-size=sm]{--_height:2rem;--_font:var(--cascivo-text-sm);--_px:var(--cascivo-space-3)}._wrapper_6chzy_2[data-size=md]{--_height:2.5rem;--_font:var(--cascivo-text-sm);--_px:var(--cascivo-space-4)}._wrapper_6chzy_2[data-size=lg]{--_height:3rem;--_font:var(--cascivo-text-base);--_px:var(--cascivo-space-4)}._label_6chzy_27{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text);line-height:var(--cascivo-leading-snug)}._field_6chzy_34{align-items:center;display:flex;position:relative}._trigger_6chzy_40{justify-content:space-between;align-items:center;gap:var(--cascivo-space-2);block-size:var(--_height,2.5rem);min-inline-size:12rem;padding-inline:var(--_px,var(--cascivo-space-4));font-family:var(--cascivo-font-sans);font-size:var(--_font,var(--cascivo-text-sm));color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;text-align:start;transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none;display:flex}._trigger_6chzy_40:hover:not(:disabled){border-color:var(--cascivo-color-border-strong)}._trigger_6chzy_40:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._trigger_6chzy_40:disabled{opacity:.5;cursor:not-allowed}._wrapper_6chzy_2[data-state=error] ._trigger_6chzy_40{border-color:var(--cascivo-color-danger)}._value_6chzy_78{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._placeholder_6chzy_84{color:var(--cascivo-color-text-subtle)}._icon_6chzy_87{color:var(--cascivo-color-text-muted);font-style:normal}._clear_6chzy_92{cursor:pointer;min-block-size:1.5rem;min-inline-size:1.5rem;color:var(--cascivo-color-text-muted);font-size:var(--cascivo-text-xs);padding:var(--cascivo-space-1);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;inset-inline-end:var(--cascivo-space-8)}._clear_6chzy_92:hover{color:var(--cascivo-color-text)}._clear_6chzy_92:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._calendar_6chzy_117{z-index:var(--cascivo-z-dropdown);padding:var(--cascivo-space-3);background-color:var(--cascivo-color-surface-overlay);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-overlay);box-shadow:var(--cascivo-shadow-overlay);opacity:0;visibility:hidden;transition:opacity var(--cascivo-motion-enter), translate var(--cascivo-motion-enter), visibility var(--cascivo-motion-enter);position:absolute;inset-block-start:calc(100% + var(--cascivo-space-1));inset-inline-start:0;translate:0 -.25rem}._calendar_6chzy_117[data-state=open]{opacity:1;visibility:visible;translate:0}@starting-style{._calendar_6chzy_117[data-state=open]{opacity:0;translate:0 -.25rem}}._header_6chzy_149{justify-content:space-between;align-items:center;margin-block-end:var(--cascivo-space-2);display:flex}._monthLabel_6chzy_156{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._navButton_6chzy_162{border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text-muted);font-size:var(--cascivo-text-base);background:0 0;border:1px solid #0000;outline:none;justify-content:center;align-items:center;display:inline-flex}._navButton_6chzy_162:hover{background-color:var(--cascivo-color-bg-subtle);color:var(--cascivo-color-text)}._navButton_6chzy_162:focus-visible{border-color:var(--cascivo-color-accent)}._grid_6chzy_184{border-collapse:collapse;inline-size:100%}._weekday_6chzy_189{padding-block:var(--cascivo-space-1);font-size:var(--cascivo-text-xs);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text-muted);text-align:center;inline-size:2.25rem}._cell_6chzy_198{text-align:center;padding:2px}._empty_6chzy_202{inline-size:2.25rem}._day_6chzy_206{block-size:2.25rem;inline-size:2.25rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border-radius:var(--cascivo-radius-control);cursor:pointer;background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:flex}._day_6chzy_206:hover:not([aria-disabled]){background-color:var(--cascivo-color-bg-subtle)}._day_6chzy_206:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._day_6chzy_206[data-today]{font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-accent)}._day_6chzy_206[data-selected]{background-color:var(--cascivo-color-accent);color:var(--cascivo-color-accent-foreground,var(--cascivo-color-text-on-accent))}._day_6chzy_206[aria-disabled]{opacity:.35;cursor:not-allowed}._error_6chzy_241{font-size:var(--cascivo-text-xs);color:var(--cascivo-color-danger)}._hint_6chzy_245{font-size:var(--cascivo-text-xs);color:var(--cascivo-color-text-muted)}}
104
104
  /*$vite$:1*/
package/dist/user/user.js CHANGED
@@ -6,12 +6,16 @@ import { cn as n } from "@cascivo/core";
6
6
  import { jsx as r, jsxs as i } from "react/jsx-runtime";
7
7
  //#region ../components/src/user/user.tsx
8
8
  function a({ name: a, description: o, avatarProps: s, className: c, children: l, ...u }) {
9
+ let d = typeof a == "string" && s?.name === void 0 && s?.fallback === void 0 ? { name: a } : {};
9
10
  return /* @__PURE__ */ i("div", {
10
11
  role: "group",
11
12
  className: n(t.user, c),
12
13
  ...u,
13
14
  children: [
14
- /* @__PURE__ */ r(e, { ...s }),
15
+ /* @__PURE__ */ r(e, {
16
+ ...d,
17
+ ...s
18
+ }),
15
19
  /* @__PURE__ */ i("span", {
16
20
  className: t.text,
17
21
  children: [/* @__PURE__ */ r("span", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cascivo/react",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "private": false,
5
5
  "description": "Prebuilt cascivo design system components — use without copying source",
6
6
  "keywords": [
@@ -44,8 +44,8 @@
44
44
  "provenance": true
45
45
  },
46
46
  "dependencies": {
47
- "@cascivo/core": "^0.4.0",
48
- "@cascivo/i18n": "^0.2.7"
47
+ "@cascivo/core": "^0.4.1",
48
+ "@cascivo/i18n": "^0.2.8"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@testing-library/jest-dom": "^6.9.1",
package/readme.body.md CHANGED
@@ -185,7 +185,7 @@ routing break after adding one of these, check that the import resolves to
185
185
 
186
186
  ## Component index
187
187
 
188
- 192 components, exported from `@cascivo/react`. Full props, examples, and live demos at [docs.cascivo.com](https://docs.cascivo.com).
188
+ 192 components, exported from `@cascivo/react`. Full props, examples, and live demos at [cascivo.com/docs](https://cascivo.com/docs).
189
189
 
190
190
  ### Inputs
191
191