@almanaclabs/blaze-ui 0.3.2 → 0.5.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.
Files changed (133) hide show
  1. package/README.md +23 -0
  2. package/dist/components/accordion/accordion.js +53 -0
  3. package/dist/components/alert/alert.d.ts +1 -1
  4. package/dist/components/alert/alert.js +43 -0
  5. package/dist/components/alert-dialog/alert-dialog.d.ts.map +1 -1
  6. package/dist/components/alert-dialog/alert-dialog.js +94 -0
  7. package/dist/components/aspect-ratio/aspect-ratio.js +13 -0
  8. package/dist/components/attachment/attachment.d.ts +2 -2
  9. package/dist/components/attachment/attachment.js +104 -0
  10. package/dist/components/avatar/avatar.d.ts +6 -4
  11. package/dist/components/avatar/avatar.d.ts.map +1 -1
  12. package/dist/components/avatar/avatar.js +51 -0
  13. package/dist/components/badge/badge.d.ts +3 -2
  14. package/dist/components/badge/badge.d.ts.map +1 -1
  15. package/dist/components/badge/badge.js +45 -0
  16. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -1
  17. package/dist/components/breadcrumb/breadcrumb.js +72 -0
  18. package/dist/components/bubble/bubble.d.ts +1 -1
  19. package/dist/components/bubble/bubble.js +73 -0
  20. package/dist/components/button/button.d.ts +5 -3
  21. package/dist/components/button/button.d.ts.map +1 -1
  22. package/dist/components/button/button.js +65 -0
  23. package/dist/components/button/index.d.ts +1 -1
  24. package/dist/components/button/index.d.ts.map +1 -1
  25. package/dist/components/button-group/button-group.js +41 -0
  26. package/dist/components/calendar/calendar.d.ts.map +1 -1
  27. package/dist/components/calendar/calendar.js +92 -0
  28. package/dist/components/card/card.js +56 -0
  29. package/dist/components/carousel/carousel.d.ts.map +1 -1
  30. package/dist/components/carousel/carousel.js +110 -0
  31. package/dist/components/chart/chart.js +131 -0
  32. package/dist/components/checkbox/checkbox.js +20 -0
  33. package/dist/components/collapsible/collapsible.js +23 -0
  34. package/dist/components/combobox/combobox.d.ts.map +1 -1
  35. package/dist/components/combobox/combobox.js +165 -0
  36. package/dist/components/data-table/data-table.js +30 -0
  37. package/dist/components/date-picker/date-picker.js +39 -0
  38. package/dist/components/dialog/dialog.js +92 -0
  39. package/dist/components/drawer/drawer.js +121 -0
  40. package/dist/components/dropdown-menu/dropdown-menu.js +136 -0
  41. package/dist/components/empty/empty.d.ts.map +1 -1
  42. package/dist/components/empty/empty.js +59 -0
  43. package/dist/components/field/field.d.ts.map +1 -1
  44. package/dist/components/field/field.js +107 -0
  45. package/dist/components/hover-card/hover-card.js +36 -0
  46. package/dist/components/identity-mark/identity-mark.d.ts +5 -0
  47. package/dist/components/identity-mark/identity-mark.d.ts.map +1 -0
  48. package/dist/components/identity-mark/identity-mark.js +20 -0
  49. package/dist/components/identity-mark/index.d.ts +2 -0
  50. package/dist/components/identity-mark/index.d.ts.map +1 -0
  51. package/dist/components/input/input.d.ts +9 -2
  52. package/dist/components/input/input.d.ts.map +1 -1
  53. package/dist/components/input/input.js +28 -0
  54. package/dist/components/input-group/input-group.d.ts +11 -3
  55. package/dist/components/input-group/input-group.d.ts.map +1 -1
  56. package/dist/components/input-group/input-group.js +95 -0
  57. package/dist/components/item/item.d.ts +2 -2
  58. package/dist/components/item/item.js +121 -0
  59. package/dist/components/label/label.js +13 -0
  60. package/dist/components/marker/marker.d.ts +1 -1
  61. package/dist/components/marker/marker.js +43 -0
  62. package/dist/components/message/message.js +49 -0
  63. package/dist/components/metric-overview/index.d.ts +2 -0
  64. package/dist/components/metric-overview/index.d.ts.map +1 -0
  65. package/dist/components/metric-overview/metric-overview.d.ts +12 -0
  66. package/dist/components/metric-overview/metric-overview.d.ts.map +1 -0
  67. package/dist/components/metric-overview/metric-overview.js +42 -0
  68. package/dist/components/native-select/native-select.d.ts +2 -1
  69. package/dist/components/native-select/native-select.d.ts.map +1 -1
  70. package/dist/components/native-select/native-select.js +40 -0
  71. package/dist/components/navigation-action/index.d.ts +2 -0
  72. package/dist/components/navigation-action/index.d.ts.map +1 -0
  73. package/dist/components/navigation-action/navigation-action.d.ts +6 -0
  74. package/dist/components/navigation-action/navigation-action.d.ts.map +1 -0
  75. package/dist/components/navigation-action/navigation-action.js +18 -0
  76. package/dist/components/pagination/pagination.d.ts.map +1 -1
  77. package/dist/components/pagination/pagination.js +80 -0
  78. package/dist/components/popover/popover.js +54 -0
  79. package/dist/components/progress/progress.js +45 -0
  80. package/dist/components/questionnaire/questionnaire-primitive.js +353 -0
  81. package/dist/components/questionnaire/questionnaire.d.ts.map +1 -1
  82. package/dist/components/questionnaire/questionnaire.js +169 -0
  83. package/dist/components/radio-group/radio-group.js +26 -0
  84. package/dist/components/scroll-area/scroll-area.js +37 -0
  85. package/dist/components/select/select.d.ts +2 -1
  86. package/dist/components/select/select.d.ts.map +1 -1
  87. package/dist/components/select/select.js +99 -0
  88. package/dist/components/separator/separator.js +15 -0
  89. package/dist/components/sheet/sheet.js +89 -0
  90. package/dist/components/sidebar/sidebar.d.ts +13 -2
  91. package/dist/components/sidebar/sidebar.d.ts.map +1 -1
  92. package/dist/components/sidebar/sidebar.js +419 -0
  93. package/dist/components/skeleton/skeleton.js +12 -0
  94. package/dist/components/slider/slider.js +37 -0
  95. package/dist/components/spinner/spinner.js +15 -0
  96. package/dist/components/switch/switch.js +19 -0
  97. package/dist/components/table/table.d.ts +4 -1
  98. package/dist/components/table/table.d.ts.map +1 -1
  99. package/dist/components/table/table.js +68 -0
  100. package/dist/components/tabs/tabs.d.ts +1 -1
  101. package/dist/components/tabs/tabs.js +46 -0
  102. package/dist/components/textarea/textarea.js +13 -0
  103. package/dist/components/toast/toast.d.ts.map +1 -1
  104. package/dist/components/toast/toast.js +116 -0
  105. package/dist/components/toggle/toggle.d.ts +1 -1
  106. package/dist/components/toggle/toggle.js +35 -0
  107. package/dist/components/toggle-group/toggle-group.js +52 -0
  108. package/dist/components/tooltip/tooltip.js +41 -0
  109. package/dist/hooks/use-mobile.js +14 -0
  110. package/dist/index.d.ts +4 -1
  111. package/dist/index.d.ts.map +1 -1
  112. package/dist/index.js +59 -3699
  113. package/dist/lib/control-size.d.ts +9 -0
  114. package/dist/lib/control-size.d.ts.map +1 -0
  115. package/dist/lib/control-size.js +10 -0
  116. package/dist/lib/utils.js +8 -0
  117. package/dist/recipes/recipe-runtime.d.ts +18 -0
  118. package/dist/recipes/recipe-runtime.d.ts.map +1 -0
  119. package/package.json +2 -1
  120. package/recipes/README.md +24 -0
  121. package/recipes/guided-workflow/README.md +51 -0
  122. package/recipes/guided-workflow/guided-workflow.tsx +495 -0
  123. package/recipes/manifest.json +19 -0
  124. package/recipes/workspace-shell/README.md +95 -0
  125. package/recipes/workspace-shell/assets/google-search-ads.svg +6 -0
  126. package/recipes/workspace-shell/assets/home.svg +5 -0
  127. package/recipes/workspace-shell/assets/radiant-health.png +0 -0
  128. package/recipes/workspace-shell/workspace-shell.css +55 -0
  129. package/recipes/workspace-shell/workspace-shell.tsx +636 -0
  130. package/src/styles/fonts/Sohne-Book.woff2 +0 -0
  131. package/src/styles/fonts/Sohne-Medium.woff2 +0 -0
  132. package/src/styles/fonts/Sohne-Semi.woff2 +0 -0
  133. package/src/styles/globals.css +233 -54
@@ -0,0 +1,59 @@
1
+ import { cn as e } from "../../lib/utils.js";
2
+ import { cva as t } from "class-variance-authority";
3
+ import { jsx as n } from "react/jsx-runtime";
4
+ //#region src/components/empty/empty.tsx
5
+ function r({ className: t, ...r }) {
6
+ return /* @__PURE__ */ n("div", {
7
+ "data-slot": "empty",
8
+ className: e("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance", t),
9
+ ...r
10
+ });
11
+ }
12
+ function i({ className: t, ...r }) {
13
+ return /* @__PURE__ */ n("div", {
14
+ "data-slot": "empty-header",
15
+ className: e("flex max-w-sm flex-col items-center gap-2", t),
16
+ ...r
17
+ });
18
+ }
19
+ var a = t("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0", {
20
+ variants: { variant: {
21
+ default: "bg-transparent",
22
+ icon: "flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [--icon-stroke-width:var(--icon-stroke-16)] [&_svg:not([class*='size-'])]:size-4"
23
+ } },
24
+ defaultVariants: { variant: "default" }
25
+ });
26
+ function o({ className: t, variant: r = "default", ...i }) {
27
+ return /* @__PURE__ */ n("div", {
28
+ "data-slot": "empty-icon",
29
+ "data-variant": r,
30
+ className: e(a({
31
+ variant: r,
32
+ className: t
33
+ })),
34
+ ...i
35
+ });
36
+ }
37
+ function s({ className: t, ...r }) {
38
+ return /* @__PURE__ */ n("div", {
39
+ "data-slot": "empty-title",
40
+ className: e("type-label font-heading font-medium", t),
41
+ ...r
42
+ });
43
+ }
44
+ function c({ className: t, ...r }) {
45
+ return /* @__PURE__ */ n("div", {
46
+ "data-slot": "empty-description",
47
+ className: e("type-body text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", t),
48
+ ...r
49
+ });
50
+ }
51
+ function l({ className: t, ...r }) {
52
+ return /* @__PURE__ */ n("div", {
53
+ "data-slot": "empty-content",
54
+ className: e("type-body flex w-full max-w-sm min-w-0 flex-col items-center gap-2.5 text-balance", t),
55
+ ...r
56
+ });
57
+ }
58
+ //#endregion
59
+ export { r as Empty, l as EmptyContent, c as EmptyDescription, i as EmptyHeader, o as EmptyMedia, s as EmptyTitle };
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/components/field/field.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAI1C,wBAAgB,QAAQ,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,+BAWlC;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,OAAkB,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;CAAE,+BAYnE;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BAW7B;AAED,QAAA,MAAM,aAAa;;8EAgBlB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAClD,YAAY,CAAC,OAAO,aAAa,CAAC,CAAA;AAEpC,wBAAgB,KAAK,CAAC,EACpB,SAAS,EACT,WAAwB,EACxB,GAAG,KAAK,EACT,EAAE,UAAU,+BAUZ;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BAW7B;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,+BAYpC;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BAW7B;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,+BAa3B;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,+BAsB9D;AAED,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC1D,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAA;CACjD,CAAA;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACT,EAAE,eAAe,sCAiCjB"}
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/components/field/field.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAI1C,wBAAgB,QAAQ,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,+BAWlC;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,OAAkB,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;CAAE,+BAenE;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BAW7B;AAED,QAAA,MAAM,aAAa;;8EAgBlB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAClD,YAAY,CAAC,OAAO,aAAa,CAAC,CAAA;AAEpC,wBAAgB,KAAK,CAAC,EACpB,SAAS,EACT,WAAwB,EACxB,GAAG,KAAK,EACT,EAAE,UAAU,+BAUZ;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BAW7B;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,+BAYpC;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BAW7B;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,+BAa3B;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,+BAsB9D;AAED,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC1D,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAA;CACjD,CAAA;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACT,EAAE,eAAe,sCAiCjB"}
@@ -0,0 +1,107 @@
1
+ import { cn as e } from "../../lib/utils.js";
2
+ import { Label as t } from "../label/label.js";
3
+ import { Separator as n } from "../separator/separator.js";
4
+ import { useMemo as r } from "react";
5
+ import { cva as i } from "class-variance-authority";
6
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
7
+ //#region src/components/field/field.tsx
8
+ function s({ className: t, ...n }) {
9
+ return /* @__PURE__ */ a("fieldset", {
10
+ "data-slot": "field-set",
11
+ className: e("flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3", t),
12
+ ...n
13
+ });
14
+ }
15
+ function c({ className: t, variant: n = "legend", ...r }) {
16
+ return /* @__PURE__ */ a("legend", {
17
+ "data-slot": "field-legend",
18
+ "data-variant": n,
19
+ className: e("mb-1.5", n === "legend" ? "type-section-title font-normal text-foreground" : "type-label font-medium text-foreground", t),
20
+ ...r
21
+ });
22
+ }
23
+ function l({ className: t, ...n }) {
24
+ return /* @__PURE__ */ a("div", {
25
+ "data-slot": "field-group",
26
+ className: e("group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4", t),
27
+ ...n
28
+ });
29
+ }
30
+ var u = i("group/field flex w-full gap-2 data-[invalid=true]:text-destructive", {
31
+ variants: { orientation: {
32
+ vertical: "flex-col *:w-full [&>.sr-only]:w-auto",
33
+ horizontal: "flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
34
+ responsive: "flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"
35
+ } },
36
+ defaultVariants: { orientation: "vertical" }
37
+ });
38
+ function d({ className: t, orientation: n = "vertical", ...r }) {
39
+ return /* @__PURE__ */ a("div", {
40
+ role: "group",
41
+ "data-slot": "field",
42
+ "data-orientation": n,
43
+ className: e(u({ orientation: n }), t),
44
+ ...r
45
+ });
46
+ }
47
+ function f({ className: t, ...n }) {
48
+ return /* @__PURE__ */ a("div", {
49
+ "data-slot": "field-content",
50
+ className: e("group/field-content flex flex-1 flex-col gap-0.5 leading-snug", t),
51
+ ...n
52
+ });
53
+ }
54
+ function p({ className: n, ...r }) {
55
+ return /* @__PURE__ */ a(t, {
56
+ "data-slot": "field-label",
57
+ className: e("group/field-label peer/field-label flex w-fit gap-2 group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border has-[>[data-slot=field]]:not-has-[:disabled,[data-disabled]]:hover:bg-muted/50 has-[>[data-slot=field]]:has-[:focus-visible]:border-ring has-[>[data-slot=field]]:has-[:focus-visible]:ring-3 has-[>[data-slot=field]]:has-[:focus-visible]:ring-ring/50 *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10", "has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col", n),
58
+ ...r
59
+ });
60
+ }
61
+ function m({ className: t, ...n }) {
62
+ return /* @__PURE__ */ a("div", {
63
+ "data-slot": "field-label",
64
+ className: e("type-label flex w-fit items-center gap-2 font-medium text-foreground group-data-[disabled=true]/field:text-foreground-tertiary", t),
65
+ ...n
66
+ });
67
+ }
68
+ function h({ className: t, ...n }) {
69
+ return /* @__PURE__ */ a("p", {
70
+ "data-slot": "field-description",
71
+ className: e("text-left text-sm leading-normal font-normal text-muted-foreground group-data-[orientation=horizontal]/field:text-balance [[data-variant=legend]+&]:-mt-1.5", "last:mt-0 nth-last-2:-mt-1", "[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", t),
72
+ ...n
73
+ });
74
+ }
75
+ function g({ children: t, className: r, ...i }) {
76
+ return /* @__PURE__ */ o("div", {
77
+ "data-slot": "field-separator",
78
+ "data-content": !!t,
79
+ className: e("relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2", r),
80
+ ...i,
81
+ children: [/* @__PURE__ */ a(n, { className: "absolute inset-0 top-1/2" }), t && /* @__PURE__ */ a("span", {
82
+ className: "relative mx-auto block w-fit bg-background px-2 text-muted-foreground",
83
+ "data-slot": "field-separator-content",
84
+ children: t
85
+ })]
86
+ });
87
+ }
88
+ function _({ className: t, children: n, errors: i, ...o }) {
89
+ let s = r(() => {
90
+ if (n) return n;
91
+ if (!i?.length) return null;
92
+ let e = [...new Map(i.map((e) => [e?.message, e])).values()];
93
+ return e.length === 1 ? e[0]?.message : /* @__PURE__ */ a("ul", {
94
+ className: "ml-4 flex list-disc flex-col gap-1",
95
+ children: e.map((e, t) => e?.message && /* @__PURE__ */ a("li", { children: e.message }, t))
96
+ });
97
+ }, [n, i]);
98
+ return s ? /* @__PURE__ */ a("div", {
99
+ role: "alert",
100
+ "data-slot": "field-error",
101
+ className: e("text-sm font-normal text-destructive", t),
102
+ ...o,
103
+ children: s
104
+ }) : null;
105
+ }
106
+ //#endregion
107
+ export { d as Field, f as FieldContent, h as FieldDescription, _ as FieldError, l as FieldGroup, p as FieldLabel, c as FieldLegend, g as FieldSeparator, s as FieldSet, m as FieldTitle };
@@ -0,0 +1,36 @@
1
+ "use client";
2
+ import { cn as e } from "../../lib/utils.js";
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ import { PreviewCard as n } from "@base-ui/react/preview-card";
5
+ //#region src/components/hover-card/hover-card.tsx
6
+ function r({ ...e }) {
7
+ return /* @__PURE__ */ t(n.Root, {
8
+ "data-slot": "hover-card",
9
+ ...e
10
+ });
11
+ }
12
+ function i({ ...e }) {
13
+ return /* @__PURE__ */ t(n.Trigger, {
14
+ "data-slot": "hover-card-trigger",
15
+ ...e
16
+ });
17
+ }
18
+ function a({ className: r, side: i = "bottom", sideOffset: a = 4, align: o = "center", alignOffset: s = 4, ...c }) {
19
+ return /* @__PURE__ */ t(n.Portal, {
20
+ "data-slot": "hover-card-portal",
21
+ children: /* @__PURE__ */ t(n.Positioner, {
22
+ align: o,
23
+ alignOffset: s,
24
+ side: i,
25
+ sideOffset: a,
26
+ className: "isolate z-50",
27
+ children: /* @__PURE__ */ t(n.Popup, {
28
+ "data-slot": "hover-card-content",
29
+ className: e("z-50 w-64 origin-(--transform-origin) rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", r),
30
+ ...c
31
+ })
32
+ })
33
+ });
34
+ }
35
+ //#endregion
36
+ export { r as HoverCard, a as HoverCardContent, i as HoverCardTrigger };
@@ -0,0 +1,5 @@
1
+ import * as React from 'react';
2
+ declare function IdentityMark({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
3
+ declare function IdentityMarkImage({ className, ...props }: React.ComponentProps<'img'>): React.JSX.Element;
4
+ export { IdentityMark, IdentityMarkImage };
5
+ //# sourceMappingURL=identity-mark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity-mark.d.ts","sourceRoot":"","sources":["../../../src/components/identity-mark/identity-mark.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,qBAW1E;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAQ7B;AAED,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAA"}
@@ -0,0 +1,20 @@
1
+ import { cn as e } from "../../lib/utils.js";
2
+ import "react";
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ //#region src/components/identity-mark/identity-mark.tsx
5
+ function n({ className: n, ...r }) {
6
+ return /* @__PURE__ */ t("span", {
7
+ "data-slot": "identity-mark",
8
+ className: e("inline-flex size-6 shrink-0 items-center justify-center overflow-hidden rounded-[5px] p-0.5 [--icon-stroke-width:var(--icon-stroke-20)] [&>img]:size-5 [&>img]:shrink-0 [&>svg]:size-5 [&>svg]:shrink-0", n),
9
+ ...r
10
+ });
11
+ }
12
+ function r({ className: n, ...r }) {
13
+ return /* @__PURE__ */ t("img", {
14
+ "data-slot": "identity-mark-image",
15
+ className: e("size-5 shrink-0 object-contain", n),
16
+ ...r
17
+ });
18
+ }
19
+ //#endregion
20
+ export { n as IdentityMark, r as IdentityMarkImage };
@@ -0,0 +1,2 @@
1
+ export * from './identity-mark';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/identity-mark/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
@@ -1,4 +1,11 @@
1
1
  import { Input as InputPrimitive } from '@base-ui/react/input';
2
- export type InputProps = InputPrimitive.Props;
3
- export declare function Input({ className, type, ...props }: InputProps): import("react").JSX.Element;
2
+ import { VariantProps } from 'class-variance-authority';
3
+ declare const inputVariants: (props?: ({
4
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ export type InputProps = InputPrimitive.Props & {
7
+ controlSize?: VariantProps<typeof inputVariants>['size'];
8
+ };
9
+ export declare function Input({ className, type, controlSize, ...props }: InputProps): import("react").JSX.Element;
10
+ export {};
4
11
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/input/input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAG9D,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAA;AAK7C,wBAAgB,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,+BAa9D"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/input/input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,aAAa;;8EAgBlB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,GAAG;IAC9C,WAAW,CAAC,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;CACzD,CAAA;AAED,wBAAgB,KAAK,CAAC,EACpB,SAAS,EACT,IAAI,EACJ,WAAkB,EAClB,GAAG,KAAK,EACT,EAAE,UAAU,+BAgBZ"}
@@ -0,0 +1,28 @@
1
+ import { controlSizeClassNames as e } from "../../lib/control-size.js";
2
+ import { cn as t } from "../../lib/utils.js";
3
+ import { cva as n } from "class-variance-authority";
4
+ import { jsx as r } from "react/jsx-runtime";
5
+ import { Input as i } from "@base-ui/react/input";
6
+ //#region src/components/input/input.tsx
7
+ var a = n("w-full min-w-0 rounded-md border border-input bg-background text-foreground transition-colors outline-none file:inline-flex file:border-0 file:bg-transparent file:font-normal file:text-foreground placeholder:text-foreground-tertiary hover:border-foreground/15 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-border-subtle disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-surface-subtle disabled:text-foreground-tertiary aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/10 dark:aria-invalid:border-destructive/60 dark:aria-invalid:ring-destructive/20", {
8
+ variants: { size: {
9
+ xs: `${e.xs} pb-px file:h-5 file:text-[13px]`,
10
+ sm: `${e.sm} pb-px file:h-6 file:text-sm`,
11
+ md: `${e.md} pb-px file:h-6 file:text-sm`,
12
+ lg: `${e.lg} pb-px file:h-7 file:text-base`,
13
+ xl: `${e.xl} pb-px file:h-8 file:text-base`
14
+ } },
15
+ defaultVariants: { size: "md" }
16
+ });
17
+ function o({ className: e, type: n, controlSize: o = "md", ...s }) {
18
+ let c = a({ size: o });
19
+ return /* @__PURE__ */ r(i, {
20
+ type: n,
21
+ "data-slot": "input",
22
+ "data-size": o,
23
+ className: typeof e == "function" ? (n) => t(c, e(n)) : t(c, e),
24
+ ...s
25
+ });
26
+ }
27
+ //#endregion
28
+ export { o as Input };
@@ -1,7 +1,13 @@
1
1
  import { VariantProps } from 'class-variance-authority';
2
+ import { ControlSize } from '../../lib/control-size';
2
3
  import { Button } from '../button';
4
+ import { Input } from '../input';
3
5
  import * as React from 'react';
4
- declare function InputGroup({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
6
+ declare const inputGroupVariants: (props?: ({
7
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
8
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
9
+ type InputGroupProps = React.ComponentProps<'div'> & VariantProps<typeof inputGroupVariants>;
10
+ declare function InputGroup({ className, size, ...props }: InputGroupProps): React.JSX.Element;
5
11
  declare const inputGroupAddonVariants: (props?: ({
6
12
  align?: "inline-start" | "inline-end" | "block-start" | "block-end" | null | undefined;
7
13
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
@@ -13,7 +19,9 @@ declare function InputGroupButton({ className, type, variant, size, ...props }:
13
19
  type?: 'button' | 'submit' | 'reset';
14
20
  }): React.JSX.Element;
15
21
  declare function InputGroupText({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
16
- declare function InputGroupInput({ className, ...props }: React.ComponentProps<'input'>): React.JSX.Element;
22
+ declare function InputGroupInput({ className, controlSize, ...props }: Omit<React.ComponentProps<typeof Input>, 'controlSize'> & {
23
+ controlSize?: ControlSize;
24
+ }): React.JSX.Element;
17
25
  declare function InputGroupTextarea({ className, ...props }: React.ComponentProps<'textarea'>): React.JSX.Element;
18
- export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupText, InputGroupInput, InputGroupTextarea, };
26
+ export { InputGroup, type InputGroupProps, InputGroupAddon, InputGroupButton, InputGroupText, InputGroupInput, InputGroupTextarea, };
19
27
  //# sourceMappingURL=input-group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-group.d.ts","sourceRoot":"","sources":["../../../src/components/input-group/input-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAGjE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAI5C,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAYvE;AAED,QAAA,MAAM,uBAAuB;;8EAmB5B,CAAA;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,KAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,uBAAuB,CAAC,qBAgB5E;AAED,QAAA,MAAM,wBAAwB;;8EAgB7B,CAAA;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,IAAe,EACf,OAAiB,EACjB,IAAW,EACX,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,GAC3D,YAAY,CAAC,OAAO,wBAAwB,CAAC,GAAG;IAC9C,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;CACrC,qBAUF;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,qBAU5E;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,qBAW/B;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,qBAWlC;AAED,OAAO,EACL,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,CAAA"}
1
+ {"version":3,"file":"input-group.d.ts","sourceRoot":"","sources":["../../../src/components/input-group/input-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAyB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAE5E,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG1C,QAAA,MAAM,kBAAkB;;8EAgBvB,CAAA;AAED,KAAK,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAChD,YAAY,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAIzC,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,IAAW,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,qBAcxE;AAED,QAAA,MAAM,uBAAuB;;8EAmB5B,CAAA;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,KAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,uBAAuB,CAAC,qBAgB5E;AAED,QAAA,MAAM,wBAAwB;;8EAgB7B,CAAA;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,IAAe,EACf,OAAoB,EACpB,IAAW,EACX,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,GAC3D,YAAY,CAAC,OAAO,wBAAwB,CAAC,GAAG;IAC9C,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;CACrC,qBAUF;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,qBAU5E;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,WAAW,EACX,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,EAAE,aAAa,CAAC,GAAG;IAC3D,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,qBAcA;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,qBAWlC;AAED,OAAO,EACL,UAAU,EACV,KAAK,eAAe,EACpB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,CAAA"}
@@ -0,0 +1,95 @@
1
+ import { controlSizeClassNames as e } from "../../lib/control-size.js";
2
+ import { cn as t } from "../../lib/utils.js";
3
+ import { Button as n } from "../button/button.js";
4
+ import { Input as r } from "../input/input.js";
5
+ import { Textarea as i } from "../textarea/textarea.js";
6
+ import * as a from "react";
7
+ import { cva as o } from "class-variance-authority";
8
+ import { jsx as s } from "react/jsx-runtime";
9
+ //#region src/components/input-group/input-group.tsx
10
+ var c = o("group/input-group relative flex w-full min-w-0 items-center rounded-md border border-input bg-background transition-colors outline-none hover:border-foreground/15 in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:bg-surface-subtle has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-border-subtle has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/10 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5", {
11
+ variants: { size: {
12
+ xs: `${e.xs} px-0 [--input-group-icon-size:14px] [--icon-stroke-width:var(--icon-stroke-14)]`,
13
+ sm: `${e.sm} px-0 [--input-group-icon-size:15px] [--icon-stroke-width:var(--icon-stroke-15)]`,
14
+ md: `${e.md} px-0 [--input-group-icon-size:15px] [--icon-stroke-width:var(--icon-stroke-15)]`,
15
+ lg: `${e.lg} px-0 [--input-group-icon-size:18px] [--icon-stroke-width:var(--icon-stroke-18)]`,
16
+ xl: `${e.xl} px-0 [--input-group-icon-size:24px] [--icon-stroke-width:var(--icon-stroke-24)]`
17
+ } },
18
+ defaultVariants: { size: "md" }
19
+ }), l = a.createContext("md");
20
+ function u({ className: e, size: n = "md", ...r }) {
21
+ let i = n ?? "md";
22
+ return /* @__PURE__ */ s(l.Provider, {
23
+ value: i,
24
+ children: /* @__PURE__ */ s("div", {
25
+ "data-slot": "input-group",
26
+ "data-size": i,
27
+ role: "group",
28
+ className: t(c({ size: i }), e),
29
+ ...r
30
+ })
31
+ });
32
+ }
33
+ var d = o("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 font-normal text-muted-foreground select-none group-data-[disabled=true]/input-group:text-foreground-tertiary [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-[var(--input-group-icon-size)]", {
34
+ variants: { align: {
35
+ "inline-start": "order-first pl-[var(--control-padding-inline)] has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]",
36
+ "inline-end": "order-last pr-[var(--control-padding-inline)] has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]",
37
+ "block-start": "order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2",
38
+ "block-end": "order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"
39
+ } },
40
+ defaultVariants: { align: "inline-start" }
41
+ });
42
+ function f({ className: e, align: n = "inline-start", ...r }) {
43
+ return /* @__PURE__ */ s("div", {
44
+ role: "group",
45
+ "data-slot": "input-group-addon",
46
+ "data-align": n,
47
+ className: t(d({ align: n }), e),
48
+ onClick: (e) => {
49
+ e.target.closest("button") || e.currentTarget.parentElement?.querySelector("input")?.focus();
50
+ },
51
+ ...r
52
+ });
53
+ }
54
+ var p = o("type-body flex items-center gap-2 shadow-none", {
55
+ variants: { size: {
56
+ xs: "h-6 gap-1 rounded-[calc(var(--radius)-3px)] px-1.5 [--icon-stroke-width:var(--icon-stroke-14)] [&>svg:not([class*='size-'])]:size-3.5",
57
+ sm: "",
58
+ "icon-xs": "size-6 rounded-[calc(var(--radius)-3px)] p-0 [--icon-stroke-width:var(--icon-stroke-14)] has-[>svg]:p-0 [&>svg:not([class*='size-'])]:size-3.5",
59
+ "icon-sm": "size-8 p-0 has-[>svg]:p-0"
60
+ } },
61
+ defaultVariants: { size: "xs" }
62
+ });
63
+ function m({ className: e, type: r = "button", variant: i = "tertiary", size: a = "xs", ...o }) {
64
+ return /* @__PURE__ */ s(n, {
65
+ type: r,
66
+ "data-size": a,
67
+ variant: i,
68
+ className: t(p({ size: a }), e),
69
+ ...o
70
+ });
71
+ }
72
+ function h({ className: e, ...n }) {
73
+ return /* @__PURE__ */ s("span", {
74
+ className: t("flex items-center gap-2 text-muted-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-[var(--input-group-icon-size)]", e),
75
+ ...n
76
+ });
77
+ }
78
+ function g({ className: e, controlSize: n, ...i }) {
79
+ let o = a.useContext(l);
80
+ return /* @__PURE__ */ s(r, {
81
+ "data-slot": "input-group-control",
82
+ controlSize: n ?? o,
83
+ className: t("h-full flex-1 rounded-none border-0 bg-transparent px-[var(--control-padding-inline)] shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent", e),
84
+ ...i
85
+ });
86
+ }
87
+ function _({ className: e, ...n }) {
88
+ return /* @__PURE__ */ s(i, {
89
+ "data-slot": "input-group-control",
90
+ className: t("flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent", e),
91
+ ...n
92
+ });
93
+ }
94
+ //#endregion
95
+ export { u as InputGroup, f as InputGroupAddon, m as InputGroupButton, g as InputGroupInput, h as InputGroupText, _ as InputGroupTextarea };
@@ -6,11 +6,11 @@ declare function ItemGroup({ className, ...props }: React.ComponentProps<'div'>)
6
6
  declare function ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>): React.JSX.Element;
7
7
  declare const itemVariants: (props?: ({
8
8
  variant?: "default" | "outline" | "muted" | null | undefined;
9
- size?: "default" | "xs" | "sm" | null | undefined;
9
+ size?: "xs" | "sm" | "default" | null | undefined;
10
10
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
11
11
  declare function Item({ className, variant, size, render, ...props }: useRender.ComponentProps<'div'> & VariantProps<typeof itemVariants>): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
12
12
  declare const itemMediaVariants: (props?: ({
13
- variant?: "default" | "icon" | "image" | null | undefined;
13
+ variant?: "image" | "default" | "icon" | null | undefined;
14
14
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
15
15
  declare function ItemMedia({ className, variant, ...props }: React.ComponentProps<'div'> & VariantProps<typeof itemMediaVariants>): React.JSX.Element;
16
16
  declare function ItemContent({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
@@ -0,0 +1,121 @@
1
+ import { cn as e } from "../../lib/utils.js";
2
+ import { Separator as t } from "../separator/separator.js";
3
+ import "react";
4
+ import { cva as n } from "class-variance-authority";
5
+ import { jsx as r } from "react/jsx-runtime";
6
+ import { mergeProps as i } from "@base-ui/react/merge-props";
7
+ import { useRender as a } from "@base-ui/react/use-render";
8
+ //#region src/components/item/item.tsx
9
+ function o({ className: t, ...n }) {
10
+ return /* @__PURE__ */ r("div", {
11
+ role: "list",
12
+ "data-slot": "item-group",
13
+ className: e("group/item-group flex w-full flex-col gap-4 has-data-[size=sm]:gap-2.5 has-data-[size=xs]:gap-2", t),
14
+ ...n
15
+ });
16
+ }
17
+ function s({ className: n, ...i }) {
18
+ return /* @__PURE__ */ r(t, {
19
+ "data-slot": "item-separator",
20
+ orientation: "horizontal",
21
+ className: e("my-2", n),
22
+ ...i
23
+ });
24
+ }
25
+ var c = n("group/item flex w-full flex-wrap items-center rounded-lg border text-sm transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [a]:transition-colors [a]:hover:bg-muted", {
26
+ variants: {
27
+ variant: {
28
+ default: "border-transparent",
29
+ outline: "border-border",
30
+ muted: "border-transparent bg-muted/50"
31
+ },
32
+ size: {
33
+ default: "gap-2.5 px-3 py-2.5",
34
+ sm: "gap-2.5 px-3 py-2.5",
35
+ xs: "gap-2 px-2.5 py-2 in-data-[slot=dropdown-menu-content]:p-0"
36
+ }
37
+ },
38
+ defaultVariants: {
39
+ variant: "default",
40
+ size: "default"
41
+ }
42
+ });
43
+ function l({ className: t, variant: n = "default", size: r = "default", render: o, ...s }) {
44
+ return a({
45
+ defaultTagName: "div",
46
+ props: i({ className: e(c({
47
+ variant: n,
48
+ size: r,
49
+ className: t
50
+ })) }, s),
51
+ render: o,
52
+ state: {
53
+ slot: "item",
54
+ variant: n,
55
+ size: r
56
+ }
57
+ });
58
+ }
59
+ var u = n("flex shrink-0 items-center justify-center gap-2 group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start [&_svg]:pointer-events-none", {
60
+ variants: { variant: {
61
+ default: "bg-transparent",
62
+ icon: "[--icon-stroke-width:var(--icon-stroke-16)] [&_svg:not([class*='size-'])]:size-4",
63
+ image: "size-10 overflow-hidden rounded-sm group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 [&_img]:size-full [&_img]:object-cover"
64
+ } },
65
+ defaultVariants: { variant: "default" }
66
+ });
67
+ function d({ className: t, variant: n = "default", ...i }) {
68
+ return /* @__PURE__ */ r("div", {
69
+ "data-slot": "item-media",
70
+ "data-variant": n,
71
+ className: e(u({
72
+ variant: n,
73
+ className: t
74
+ })),
75
+ ...i
76
+ });
77
+ }
78
+ function f({ className: t, ...n }) {
79
+ return /* @__PURE__ */ r("div", {
80
+ "data-slot": "item-content",
81
+ className: e("flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0 [&+[data-slot=item-content]]:flex-none", t),
82
+ ...n
83
+ });
84
+ }
85
+ function p({ className: t, ...n }) {
86
+ return /* @__PURE__ */ r("div", {
87
+ "data-slot": "item-title",
88
+ className: e("line-clamp-1 flex w-fit items-center gap-2 text-sm leading-snug font-medium underline-offset-4", t),
89
+ ...n
90
+ });
91
+ }
92
+ function m({ className: t, ...n }) {
93
+ return /* @__PURE__ */ r("p", {
94
+ "data-slot": "item-description",
95
+ className: e("line-clamp-2 text-left text-sm leading-normal font-normal text-muted-foreground group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", t),
96
+ ...n
97
+ });
98
+ }
99
+ function h({ className: t, ...n }) {
100
+ return /* @__PURE__ */ r("div", {
101
+ "data-slot": "item-actions",
102
+ className: e("flex items-center gap-2", t),
103
+ ...n
104
+ });
105
+ }
106
+ function g({ className: t, ...n }) {
107
+ return /* @__PURE__ */ r("div", {
108
+ "data-slot": "item-header",
109
+ className: e("flex basis-full items-center justify-between gap-2", t),
110
+ ...n
111
+ });
112
+ }
113
+ function _({ className: t, ...n }) {
114
+ return /* @__PURE__ */ r("div", {
115
+ "data-slot": "item-footer",
116
+ className: e("flex basis-full items-center justify-between gap-2", t),
117
+ ...n
118
+ });
119
+ }
120
+ //#endregion
121
+ export { l as Item, h as ItemActions, f as ItemContent, m as ItemDescription, _ as ItemFooter, o as ItemGroup, g as ItemHeader, d as ItemMedia, s as ItemSeparator, p as ItemTitle };
@@ -0,0 +1,13 @@
1
+ import { cn as e } from "../../lib/utils.js";
2
+ import "react";
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ //#region src/components/label/label.tsx
5
+ function n({ className: n, ...r }) {
6
+ return /* @__PURE__ */ t("label", {
7
+ "data-slot": "label",
8
+ className: e("type-label flex items-center gap-2 font-medium text-foreground select-none group-data-disabled:pointer-events-none group-data-disabled:text-foreground-tertiary peer-disabled:cursor-not-allowed peer-disabled:text-foreground-tertiary", n),
9
+ ...r
10
+ });
11
+ }
12
+ //#endregion
13
+ export { n as Label };
@@ -2,7 +2,7 @@ import { useRender } from '@base-ui/react/use-render';
2
2
  import { VariantProps } from 'class-variance-authority';
3
3
  import * as React from 'react';
4
4
  declare const markerVariants: (props?: ({
5
- variant?: "default" | "separator" | "border" | null | undefined;
5
+ variant?: "separator" | "default" | "border" | null | undefined;
6
6
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
7
  declare function Marker({ className, variant, render, ...props }: useRender.ComponentProps<'div'> & VariantProps<typeof markerVariants>): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
8
8
  declare function MarkerIcon({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
@@ -0,0 +1,43 @@
1
+ import { cn as e } from "../../lib/utils.js";
2
+ import "react";
3
+ import { cva as t } from "class-variance-authority";
4
+ import { jsx as n } from "react/jsx-runtime";
5
+ import { mergeProps as r } from "@base-ui/react/merge-props";
6
+ import { useRender as i } from "@base-ui/react/use-render";
7
+ //#region src/components/marker/marker.tsx
8
+ var a = t("type-body group/marker relative flex min-h-4 w-full items-center gap-2 text-left text-muted-foreground [--icon-stroke-width:var(--icon-stroke-16)] [&_svg:not([class*='size-'])]:size-4 [a]:underline [a]:underline-offset-3 [a]:hover:text-foreground", { variants: { variant: {
9
+ default: "",
10
+ separator: "before:mr-1 before:h-px before:min-w-0 before:flex-1 before:bg-border after:ml-1 after:h-px after:min-w-0 after:flex-1 after:bg-border",
11
+ border: "border-b border-border pb-2"
12
+ } } });
13
+ function o({ className: t, variant: n = "default", render: o, ...s }) {
14
+ return i({
15
+ defaultTagName: "div",
16
+ props: r({ className: e(a({
17
+ variant: n,
18
+ className: t
19
+ })) }, s),
20
+ render: o,
21
+ state: {
22
+ slot: "marker",
23
+ variant: n
24
+ }
25
+ });
26
+ }
27
+ function s({ className: t, ...r }) {
28
+ return /* @__PURE__ */ n("span", {
29
+ "data-slot": "marker-icon",
30
+ "aria-hidden": "true",
31
+ className: e("size-4 shrink-0 [--icon-stroke-width:var(--icon-stroke-16)] [&_svg:not([class*='size-'])]:size-4", t),
32
+ ...r
33
+ });
34
+ }
35
+ function c({ className: t, ...r }) {
36
+ return /* @__PURE__ */ n("span", {
37
+ "data-slot": "marker-content",
38
+ className: e("min-w-0 wrap-break-word group-data-[variant=separator]/marker:flex-none group-data-[variant=separator]/marker:text-center *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground", t),
39
+ ...r
40
+ });
41
+ }
42
+ //#endregion
43
+ export { o as Marker, c as MarkerContent, s as MarkerIcon, a as markerVariants };