@savvycal/mjml-editor 0.0.1 → 0.0.3

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 (173) hide show
  1. package/README.md +191 -0
  2. package/dist/components/editor/BlockIcon.d.ts +7 -0
  3. package/dist/components/editor/BlockIcon.d.ts.map +1 -0
  4. package/dist/components/editor/BlockInspector.d.ts +6 -0
  5. package/dist/components/editor/BlockInspector.d.ts.map +1 -0
  6. package/dist/components/editor/BlockInspector.js +380 -0
  7. package/dist/components/editor/EditorCanvas.d.ts +11 -0
  8. package/dist/components/editor/EditorCanvas.d.ts.map +1 -0
  9. package/dist/components/editor/EditorCanvas.js +116 -0
  10. package/dist/components/editor/FontEditor.d.ts +2 -0
  11. package/dist/components/editor/FontEditor.d.ts.map +1 -0
  12. package/dist/components/editor/FontEditor.js +227 -0
  13. package/dist/components/editor/GlobalStylesPanel.d.ts +7 -0
  14. package/dist/components/editor/GlobalStylesPanel.d.ts.map +1 -0
  15. package/dist/components/editor/GlobalStylesPanel.js +310 -0
  16. package/dist/components/editor/InteractivePreview.d.ts +8 -0
  17. package/dist/components/editor/InteractivePreview.d.ts.map +1 -0
  18. package/dist/components/editor/InteractivePreview.js +130 -0
  19. package/dist/components/editor/LiquidAutocomplete.d.ts +10 -0
  20. package/dist/components/editor/LiquidAutocomplete.d.ts.map +1 -0
  21. package/dist/components/editor/LiquidAutocomplete.js +70 -0
  22. package/dist/components/editor/LiquidInput.d.ts +12 -0
  23. package/dist/components/editor/LiquidInput.d.ts.map +1 -0
  24. package/dist/components/editor/LiquidInput.js +185 -0
  25. package/dist/components/editor/MjmlEditor.d.ts +22 -0
  26. package/dist/components/editor/MjmlEditor.d.ts.map +1 -0
  27. package/dist/components/editor/MjmlEditor.js +137 -0
  28. package/dist/components/editor/OutlineTree.d.ts +7 -0
  29. package/dist/components/editor/OutlineTree.d.ts.map +1 -0
  30. package/dist/components/editor/OutlineTree.js +282 -0
  31. package/dist/components/editor/SourceEditor.d.ts +2 -0
  32. package/dist/components/editor/SourceEditor.d.ts.map +1 -0
  33. package/dist/components/editor/SourceEditor.js +70 -0
  34. package/dist/components/editor/SourcePreview.d.ts +7 -0
  35. package/dist/components/editor/SourcePreview.d.ts.map +1 -0
  36. package/dist/components/editor/SourcePreview.js +69 -0
  37. package/dist/components/editor/TiptapEditor.d.ts +12 -0
  38. package/dist/components/editor/TiptapEditor.d.ts.map +1 -0
  39. package/dist/components/editor/TiptapEditor.js +330 -0
  40. package/dist/components/editor/VisualEditor.d.ts +7 -0
  41. package/dist/components/editor/VisualEditor.d.ts.map +1 -0
  42. package/dist/components/editor/VisualEditor.js +51 -0
  43. package/dist/components/editor/visual-blocks/VisualBlock.d.ts +7 -0
  44. package/dist/components/editor/visual-blocks/VisualBlock.d.ts.map +1 -0
  45. package/dist/components/editor/visual-blocks/VisualBlock.js +34 -0
  46. package/dist/components/editor/visual-blocks/VisualButton.d.ts +7 -0
  47. package/dist/components/editor/visual-blocks/VisualButton.d.ts.map +1 -0
  48. package/dist/components/editor/visual-blocks/VisualButton.js +111 -0
  49. package/dist/components/editor/visual-blocks/VisualColumn.d.ts +8 -0
  50. package/dist/components/editor/visual-blocks/VisualColumn.d.ts.map +1 -0
  51. package/dist/components/editor/visual-blocks/VisualColumn.js +44 -0
  52. package/dist/components/editor/visual-blocks/VisualDivider.d.ts +7 -0
  53. package/dist/components/editor/visual-blocks/VisualDivider.d.ts.map +1 -0
  54. package/dist/components/editor/visual-blocks/VisualDivider.js +41 -0
  55. package/dist/components/editor/visual-blocks/VisualImage.d.ts +7 -0
  56. package/dist/components/editor/visual-blocks/VisualImage.d.ts.map +1 -0
  57. package/dist/components/editor/visual-blocks/VisualImage.js +48 -0
  58. package/dist/components/editor/visual-blocks/VisualRaw.d.ts +7 -0
  59. package/dist/components/editor/visual-blocks/VisualRaw.d.ts.map +1 -0
  60. package/dist/components/editor/visual-blocks/VisualRaw.js +32 -0
  61. package/dist/components/editor/visual-blocks/VisualSection.d.ts +7 -0
  62. package/dist/components/editor/visual-blocks/VisualSection.d.ts.map +1 -0
  63. package/dist/components/editor/visual-blocks/VisualSection.js +131 -0
  64. package/dist/components/editor/visual-blocks/VisualSocial.d.ts +7 -0
  65. package/dist/components/editor/visual-blocks/VisualSocial.d.ts.map +1 -0
  66. package/dist/components/editor/visual-blocks/VisualSocial.js +62 -0
  67. package/dist/components/editor/visual-blocks/VisualSpacer.d.ts +7 -0
  68. package/dist/components/editor/visual-blocks/VisualSpacer.d.ts.map +1 -0
  69. package/dist/components/editor/visual-blocks/VisualSpacer.js +30 -0
  70. package/dist/components/editor/visual-blocks/VisualText.d.ts +7 -0
  71. package/dist/components/editor/visual-blocks/VisualText.d.ts.map +1 -0
  72. package/dist/components/editor/visual-blocks/VisualText.js +103 -0
  73. package/dist/components/editor/visual-blocks/helpers.d.ts +13 -0
  74. package/dist/components/editor/visual-blocks/helpers.d.ts.map +1 -0
  75. package/dist/components/editor/visual-blocks/helpers.js +44 -0
  76. package/dist/components/editor/visual-blocks/useResolvedAttributes.d.ts +7 -0
  77. package/dist/components/editor/visual-blocks/useResolvedAttributes.d.ts.map +1 -0
  78. package/dist/components/editor/visual-blocks/useResolvedAttributes.js +12 -0
  79. package/dist/components/ui/badge.d.ts +10 -0
  80. package/dist/components/ui/badge.d.ts.map +1 -0
  81. package/dist/components/ui/badge.js +26 -0
  82. package/dist/components/ui/button.d.ts +11 -0
  83. package/dist/components/ui/button.d.ts.map +1 -0
  84. package/dist/components/ui/button.js +54 -0
  85. package/dist/components/ui/card.d.ts +10 -0
  86. package/dist/components/ui/card.d.ts.map +1 -0
  87. package/dist/components/ui/collapsible.d.ts +6 -0
  88. package/dist/components/ui/collapsible.d.ts.map +1 -0
  89. package/dist/components/ui/collapsible.js +7 -0
  90. package/dist/components/ui/floating-panel.d.ts +12 -0
  91. package/dist/components/ui/floating-panel.d.ts.map +1 -0
  92. package/dist/components/ui/floating-panel.js +54 -0
  93. package/dist/components/ui/input.d.ts +4 -0
  94. package/dist/components/ui/input.d.ts.map +1 -0
  95. package/dist/components/ui/input.js +26 -0
  96. package/dist/components/ui/label.d.ts +5 -0
  97. package/dist/components/ui/label.d.ts.map +1 -0
  98. package/dist/components/ui/label.js +23 -0
  99. package/dist/components/ui/popover.d.ts +8 -0
  100. package/dist/components/ui/popover.d.ts.map +1 -0
  101. package/dist/components/ui/popover.js +39 -0
  102. package/dist/components/ui/resizable-split-pane.d.ts +10 -0
  103. package/dist/components/ui/resizable-split-pane.d.ts.map +1 -0
  104. package/dist/components/ui/resizable-split-pane.js +65 -0
  105. package/dist/components/ui/scroll-area.d.ts +10 -0
  106. package/dist/components/ui/scroll-area.d.ts.map +1 -0
  107. package/dist/components/ui/scroll-area.js +69 -0
  108. package/dist/components/ui/select.d.ts +16 -0
  109. package/dist/components/ui/select.d.ts.map +1 -0
  110. package/dist/components/ui/select.js +145 -0
  111. package/dist/components/ui/separator.d.ts +5 -0
  112. package/dist/components/ui/separator.d.ts.map +1 -0
  113. package/dist/components/ui/tabs.d.ts +8 -0
  114. package/dist/components/ui/tabs.d.ts.map +1 -0
  115. package/dist/components/ui/tabs.js +68 -0
  116. package/dist/components/ui/theme-toggle.d.ts +2 -0
  117. package/dist/components/ui/theme-toggle.d.ts.map +1 -0
  118. package/dist/components/ui/theme-toggle.js +58 -0
  119. package/dist/components.css +365 -0
  120. package/dist/context/EditorContext.d.ts +40 -0
  121. package/dist/context/EditorContext.d.ts.map +1 -0
  122. package/dist/context/EditorContext.js +576 -0
  123. package/dist/context/LiquidSchemaContext.d.ts +10 -0
  124. package/dist/context/LiquidSchemaContext.d.ts.map +1 -0
  125. package/dist/context/LiquidSchemaContext.js +16 -0
  126. package/dist/context/ThemeContext.d.ts +29 -0
  127. package/dist/context/ThemeContext.d.ts.map +1 -0
  128. package/dist/context/ThemeContext.js +55 -0
  129. package/dist/extensions/LiquidHighlight.d.ts +3 -0
  130. package/dist/extensions/LiquidHighlight.d.ts.map +1 -0
  131. package/dist/extensions/LiquidHighlight.js +58 -0
  132. package/dist/extensions/LiquidSuggestion.d.ts +18 -0
  133. package/dist/extensions/LiquidSuggestion.d.ts.map +1 -0
  134. package/dist/extensions/LiquidSuggestion.js +119 -0
  135. package/dist/hooks/useFontLoader.d.ts +6 -0
  136. package/dist/hooks/useFontLoader.d.ts.map +1 -0
  137. package/dist/hooks/useFontLoader.js +21 -0
  138. package/dist/hooks/useStyleLoader.d.ts +11 -0
  139. package/dist/hooks/useStyleLoader.d.ts.map +1 -0
  140. package/dist/hooks/useStyleLoader.js +26 -0
  141. package/dist/index.d.ts +6 -150
  142. package/dist/index.d.ts.map +1 -0
  143. package/dist/index.js +7 -57452
  144. package/dist/lib/html-utils.d.ts +23 -0
  145. package/dist/lib/html-utils.d.ts.map +1 -0
  146. package/dist/lib/html-utils.js +25 -0
  147. package/dist/lib/mjml/attributes.d.ts +100 -0
  148. package/dist/lib/mjml/attributes.d.ts.map +1 -0
  149. package/dist/lib/mjml/attributes.js +105 -0
  150. package/dist/lib/mjml/parser.d.ts +67 -0
  151. package/dist/lib/mjml/parser.d.ts.map +1 -0
  152. package/dist/lib/mjml/parser.js +184 -0
  153. package/dist/lib/mjml/parser.test.d.ts +2 -0
  154. package/dist/lib/mjml/parser.test.d.ts.map +1 -0
  155. package/dist/lib/mjml/renderer.d.ts +23 -0
  156. package/dist/lib/mjml/renderer.d.ts.map +1 -0
  157. package/dist/lib/mjml/renderer.js +75 -0
  158. package/dist/lib/mjml/schema.d.ts +21 -0
  159. package/dist/lib/mjml/schema.d.ts.map +1 -0
  160. package/dist/lib/mjml/schema.js +1307 -0
  161. package/dist/lib/mjml/scopeCSS.d.ts +21 -0
  162. package/dist/lib/mjml/scopeCSS.d.ts.map +1 -0
  163. package/dist/lib/mjml/scopeCSS.js +67 -0
  164. package/dist/lib/utils.d.ts +3 -0
  165. package/dist/lib/utils.d.ts.map +1 -0
  166. package/dist/lib/utils.js +8 -0
  167. package/dist/preset.css +150 -0
  168. package/dist/types/liquid.d.ts +28 -0
  169. package/dist/types/liquid.d.ts.map +1 -0
  170. package/dist/types/mjml.d.ts +101 -0
  171. package/dist/types/mjml.d.ts.map +1 -0
  172. package/package.json +14 -10
  173. package/dist/styles.css +0 -1
@@ -0,0 +1,54 @@
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import "react";
3
+ import { Slot as s } from "@radix-ui/react-slot";
4
+ import { cva as a } from "class-variance-authority";
5
+ import { cn as d } from "../../lib/utils.js";
6
+ const u = a(
7
+ "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-smooth disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1",
8
+ {
9
+ variants: {
10
+ variant: {
11
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
12
+ destructive: "bg-destructive text-white hover:bg-destructive/90",
13
+ outline: "border border-border bg-background text-foreground hover:bg-accent hover:border-border",
14
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
15
+ ghost: "text-foreground hover:bg-accent hover:text-accent-foreground",
16
+ link: "text-primary underline-offset-4 hover:underline"
17
+ },
18
+ size: {
19
+ default: "h-9 px-4 py-2",
20
+ sm: "h-8 rounded-md gap-1.5 px-3 text-xs",
21
+ lg: "h-10 rounded-md px-6",
22
+ icon: "size-9",
23
+ "icon-sm": "size-7",
24
+ "icon-lg": "size-10"
25
+ }
26
+ },
27
+ defaultVariants: {
28
+ variant: "default",
29
+ size: "default"
30
+ }
31
+ }
32
+ );
33
+ function p({
34
+ className: r,
35
+ variant: e = "default",
36
+ size: t = "default",
37
+ asChild: o = !1,
38
+ ...n
39
+ }) {
40
+ return /* @__PURE__ */ i(
41
+ o ? s : "button",
42
+ {
43
+ "data-slot": "button",
44
+ "data-variant": e,
45
+ "data-size": t,
46
+ className: d(u({ variant: e, size: t, className: r })),
47
+ ...n
48
+ }
49
+ );
50
+ }
51
+ export {
52
+ p as Button,
53
+ u as buttonVariants
54
+ };
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ declare function Card({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
3
+ declare function CardHeader({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
4
+ declare function CardTitle({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
5
+ declare function CardDescription({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
6
+ declare function CardAction({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
7
+ declare function CardContent({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
8
+ declare function CardFooter({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
9
+ export { Card, CardHeader, CardFooter, CardTitle, CardAction, CardDescription, CardContent, };
10
+ //# sourceMappingURL=card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWjE;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWvE;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQtE;AAED,iBAAS,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQ5E;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWvE;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQxE;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQvE;AAED,OAAO,EACL,IAAI,EACJ,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,GACZ,CAAC"}
@@ -0,0 +1,6 @@
1
+ import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
2
+ declare const Collapsible: import('react').ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleProps & import('react').RefAttributes<HTMLDivElement>>;
3
+ declare const CollapsibleTrigger: import('react').ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleTriggerProps & import('react').RefAttributes<HTMLButtonElement>>;
4
+ declare const CollapsibleContent: import('react').ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleContentProps & import('react').RefAttributes<HTMLDivElement>>;
5
+ export { Collapsible, CollapsibleTrigger, CollapsibleContent };
6
+ //# sourceMappingURL=collapsible.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapsible.d.ts","sourceRoot":"","sources":["../../../src/components/ui/collapsible.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,oBAAoB,MAAM,6BAA6B,CAAC;AAEpE,QAAA,MAAM,WAAW,kIAA4B,CAAC;AAE9C,QAAA,MAAM,kBAAkB,4IAA0C,CAAC;AAEnE,QAAA,MAAM,kBAAkB,yIAA0C,CAAC;AAEnE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import * as l from "@radix-ui/react-collapsible";
2
+ const o = l.Root, e = l.CollapsibleTrigger, i = l.CollapsibleContent;
3
+ export {
4
+ o as Collapsible,
5
+ i as CollapsibleContent,
6
+ e as CollapsibleTrigger
7
+ };
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+ interface FloatingPanelProps {
3
+ children: React.ReactNode;
4
+ side: 'left' | 'right';
5
+ isOpen: boolean;
6
+ onToggle: () => void;
7
+ width: number;
8
+ className?: string;
9
+ }
10
+ export declare function FloatingPanel({ children, side, isOpen, onToggle, width, className, }: FloatingPanelProps): import("react/jsx-runtime").JSX.Element;
11
+ export {};
12
+ //# sourceMappingURL=floating-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"floating-panel.d.ts","sourceRoot":"","sources":["../../../src/components/ui/floating-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,KAAK,EACL,SAAS,GACV,EAAE,kBAAkB,2CAqBpB"}
@@ -0,0 +1,54 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import "react";
3
+ import { PanelLeft as f, PanelRight as u } from "lucide-react";
4
+ import { cn as n } from "../../lib/utils.js";
5
+ function c({
6
+ side: t,
7
+ onClick: e
8
+ }) {
9
+ const r = t === "left" ? f : u;
10
+ return /* @__PURE__ */ o(
11
+ "button",
12
+ {
13
+ onClick: e,
14
+ className: n(
15
+ "absolute top-14 z-40",
16
+ "h-8 w-8 rounded-md",
17
+ "flex items-center justify-center",
18
+ "text-foreground-muted hover:text-foreground hover:bg-accent/50",
19
+ "transition-colors duration-150",
20
+ t === "left" ? "left-3" : "right-3"
21
+ ),
22
+ title: t === "left" ? "Show outline panel" : "Show inspector panel",
23
+ children: /* @__PURE__ */ o(r, { className: "h-4 w-4" })
24
+ }
25
+ );
26
+ }
27
+ function h({
28
+ children: t,
29
+ side: e,
30
+ isOpen: r,
31
+ onToggle: l,
32
+ width: a,
33
+ className: i
34
+ }) {
35
+ return r ? /* @__PURE__ */ o(
36
+ "div",
37
+ {
38
+ className: n(
39
+ "absolute top-14 bottom-3 z-40",
40
+ "bg-background text-foreground border border-border rounded-lg",
41
+ "shadow-lg",
42
+ "flex flex-col overflow-hidden",
43
+ "transition-all duration-150 ease-out",
44
+ e === "left" ? "left-3" : "right-3",
45
+ i
46
+ ),
47
+ style: { width: a },
48
+ children: t
49
+ }
50
+ ) : /* @__PURE__ */ o(c, { side: e, onClick: l });
51
+ }
52
+ export {
53
+ h as FloatingPanel
54
+ };
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ declare function Input({ className, type, ...props }: React.ComponentProps<'input'>): import("react/jsx-runtime").JSX.Element;
3
+ export { Input };
4
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/ui/input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAkB1E;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import "react";
3
+ import { cn as n } from "../../lib/utils.js";
4
+ function a({ className: o, type: r, ...t }) {
5
+ return /* @__PURE__ */ e(
6
+ "input",
7
+ {
8
+ type: r,
9
+ "data-slot": "input",
10
+ autoComplete: "off",
11
+ "data-1p-ignore": !0,
12
+ className: n(
13
+ "h-9 w-full min-w-0 rounded-md border border-border bg-background text-foreground px-3 py-1 text-sm",
14
+ "placeholder:text-foreground-muted",
15
+ "transition-smooth",
16
+ "focus:border-ring focus:ring-2 focus:ring-ring/20 focus:outline-none",
17
+ "disabled:cursor-not-allowed disabled:opacity-50",
18
+ o
19
+ ),
20
+ ...t
21
+ }
22
+ );
23
+ }
24
+ export {
25
+ a as Input
26
+ };
@@ -0,0 +1,5 @@
1
+ import * as React from 'react';
2
+ import * as LabelPrimitive from '@radix-ui/react-label';
3
+ declare function Label({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Label };
5
+ //# sourceMappingURL=label.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../../src/components/ui/label.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AAIxD,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,2CAWlD;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import "react";
3
+ import * as a from "@radix-ui/react-label";
4
+ import { cn as r } from "../../lib/utils.js";
5
+ function d({
6
+ className: e,
7
+ ...t
8
+ }) {
9
+ return /* @__PURE__ */ o(
10
+ a.Root,
11
+ {
12
+ "data-slot": "label",
13
+ className: r(
14
+ "flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
15
+ e
16
+ ),
17
+ ...t
18
+ }
19
+ );
20
+ }
21
+ export {
22
+ d as Label
23
+ };
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ import * as PopoverPrimitive from '@radix-ui/react-popover';
3
+ declare function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
+ declare function PopoverContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
6
+ declare function PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>): import("react/jsx-runtime").JSX.Element;
7
+ export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };
8
+ //# sourceMappingURL=popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../../src/components/ui/popover.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAI5D,iBAAS,OAAO,CAAC,EACf,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAEpD;AAED,iBAAS,cAAc,CAAC,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,2CAEvD;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,KAAgB,EAChB,UAAc,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,2CAevD;AAED,iBAAS,aAAa,CAAC,EACrB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,MAAM,CAAC,2CAEtD;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { jsx as t } from "react/jsx-runtime";
2
+ import "react";
3
+ import * as e from "@radix-ui/react-popover";
4
+ import { cn as d } from "../../lib/utils.js";
5
+ function m({
6
+ ...o
7
+ }) {
8
+ return /* @__PURE__ */ t(e.Root, { "data-slot": "popover", ...o });
9
+ }
10
+ function f({
11
+ ...o
12
+ }) {
13
+ return /* @__PURE__ */ t(e.Trigger, { "data-slot": "popover-trigger", ...o });
14
+ }
15
+ function l({
16
+ className: o,
17
+ align: r = "center",
18
+ sideOffset: a = 4,
19
+ ...i
20
+ }) {
21
+ return /* @__PURE__ */ t(e.Portal, { children: /* @__PURE__ */ t(
22
+ e.Content,
23
+ {
24
+ "data-slot": "popover-content",
25
+ align: r,
26
+ sideOffset: a,
27
+ className: d(
28
+ "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-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 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border border-border p-4 shadow-md outline-hidden",
29
+ o
30
+ ),
31
+ ...i
32
+ }
33
+ ) });
34
+ }
35
+ export {
36
+ m as Popover,
37
+ l as PopoverContent,
38
+ f as PopoverTrigger
39
+ };
@@ -0,0 +1,10 @@
1
+ interface ResizableSplitPaneProps {
2
+ children: [React.ReactNode, React.ReactNode];
3
+ defaultLeftWidth?: number;
4
+ minLeftWidth?: number;
5
+ maxLeftWidth?: number;
6
+ className?: string;
7
+ }
8
+ export declare function ResizableSplitPane({ children, defaultLeftWidth, minLeftWidth, maxLeftWidth, className, }: ResizableSplitPaneProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=resizable-split-pane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resizable-split-pane.d.ts","sourceRoot":"","sources":["../../../src/components/ui/resizable-split-pane.tsx"],"names":[],"mappings":"AAGA,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,gBAAqB,EACrB,YAAiB,EACjB,YAAiB,EACjB,SAAS,GACV,EAAE,uBAAuB,2CA0EzB"}
@@ -0,0 +1,65 @@
1
+ import { jsxs as x, jsx as o } from "react/jsx-runtime";
2
+ import { useState as a, useRef as D, useCallback as E, useEffect as L } from "react";
3
+ import { cn as s } from "../../lib/utils.js";
4
+ function j({
5
+ children: m,
6
+ defaultLeftWidth: f = 50,
7
+ minLeftWidth: r = 30,
8
+ maxLeftWidth: c = 70,
9
+ className: h
10
+ }) {
11
+ const [l, v] = a(f), [e, i] = a(!1), n = D(null), p = E((t) => {
12
+ t.preventDefault(), i(!0), document.body.style.cursor = "col-resize", document.body.style.userSelect = "none";
13
+ }, []);
14
+ L(() => {
15
+ if (!e) return;
16
+ const t = (b) => {
17
+ if (!n.current) return;
18
+ const d = n.current.getBoundingClientRect(), w = (b.clientX - d.left) / d.width * 100, M = Math.min(
19
+ c,
20
+ Math.max(r, w)
21
+ );
22
+ v(M);
23
+ }, u = () => {
24
+ i(!1), document.body.style.cursor = "", document.body.style.userSelect = "";
25
+ };
26
+ return document.addEventListener("mousemove", t), document.addEventListener("mouseup", u), () => {
27
+ document.removeEventListener("mousemove", t), document.removeEventListener("mouseup", u);
28
+ };
29
+ }, [e, r, c]);
30
+ const [g, y] = m;
31
+ return /* @__PURE__ */ x("div", { ref: n, className: s("flex h-full", h), children: [
32
+ /* @__PURE__ */ o(
33
+ "div",
34
+ {
35
+ style: { width: `${l}%` },
36
+ className: s(
37
+ "h-full overflow-hidden",
38
+ e && "pointer-events-none"
39
+ ),
40
+ children: g
41
+ }
42
+ ),
43
+ /* @__PURE__ */ o(
44
+ "div",
45
+ {
46
+ onMouseDown: p,
47
+ className: "w-1 bg-border hover:bg-primary/50 cursor-col-resize flex-shrink-0 transition-colors"
48
+ }
49
+ ),
50
+ /* @__PURE__ */ o(
51
+ "div",
52
+ {
53
+ style: { width: `${100 - l}%` },
54
+ className: s(
55
+ "h-full overflow-hidden",
56
+ e && "pointer-events-none"
57
+ ),
58
+ children: y
59
+ }
60
+ )
61
+ ] });
62
+ }
63
+ export {
64
+ j as ResizableSplitPane
65
+ };
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
3
+ declare function ScrollArea({ className, viewportClassName, viewportStyle, children, orientation, ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.Root> & {
4
+ viewportClassName?: string;
5
+ viewportStyle?: React.CSSProperties;
6
+ orientation?: 'vertical' | 'horizontal' | 'both';
7
+ }): import("react/jsx-runtime").JSX.Element;
8
+ declare function ScrollBar({ className, orientation, ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>): import("react/jsx-runtime").JSX.Element;
9
+ export { ScrollArea, ScrollBar };
10
+ //# sourceMappingURL=scroll-area.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll-area.d.ts","sourceRoot":"","sources":["../../../src/components/ui/scroll-area.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAC;AAInE,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,QAAQ,EACR,WAAwB,EACxB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,GAAG;IACzD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,MAAM,CAAC;CAClD,2CA0BA;AAED,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,WAAwB,EACxB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,mBAAmB,CAAC,2CAqBtE;AAED,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { jsxs as u, jsx as r } from "react/jsx-runtime";
2
+ import "react";
3
+ import * as o from "@radix-ui/react-scroll-area";
4
+ import { cn as i } from "../../lib/utils.js";
5
+ function h({
6
+ className: a,
7
+ viewportClassName: l,
8
+ viewportStyle: t,
9
+ children: c,
10
+ orientation: e = "vertical",
11
+ ...n
12
+ }) {
13
+ return /* @__PURE__ */ u(
14
+ o.Root,
15
+ {
16
+ "data-slot": "scroll-area",
17
+ className: i("relative", a),
18
+ ...n,
19
+ children: [
20
+ /* @__PURE__ */ r(
21
+ o.Viewport,
22
+ {
23
+ "data-slot": "scroll-area-viewport",
24
+ className: i(
25
+ "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1 focus-visible:outline-ring/50",
26
+ l
27
+ ),
28
+ style: t,
29
+ children: c
30
+ }
31
+ ),
32
+ (e === "vertical" || e === "both") && /* @__PURE__ */ r(s, { orientation: "vertical" }),
33
+ (e === "horizontal" || e === "both") && /* @__PURE__ */ r(s, { orientation: "horizontal" }),
34
+ /* @__PURE__ */ r(o.Corner, {})
35
+ ]
36
+ }
37
+ );
38
+ }
39
+ function s({
40
+ className: a,
41
+ orientation: l = "vertical",
42
+ ...t
43
+ }) {
44
+ return /* @__PURE__ */ r(
45
+ o.ScrollAreaScrollbar,
46
+ {
47
+ "data-slot": "scroll-area-scrollbar",
48
+ orientation: l,
49
+ className: i(
50
+ "flex touch-none p-px transition-colors select-none",
51
+ l === "vertical" && "h-full w-2.5 border-l border-l-transparent",
52
+ l === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
53
+ a
54
+ ),
55
+ ...t,
56
+ children: /* @__PURE__ */ r(
57
+ o.ScrollAreaThumb,
58
+ {
59
+ "data-slot": "scroll-area-thumb",
60
+ className: "bg-border relative flex-1 rounded-full"
61
+ }
62
+ )
63
+ }
64
+ );
65
+ }
66
+ export {
67
+ h as ScrollArea,
68
+ s as ScrollBar
69
+ };
@@ -0,0 +1,16 @@
1
+ import * as React from 'react';
2
+ import * as SelectPrimitive from '@radix-ui/react-select';
3
+ declare function Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function SelectGroup({ ...props }: React.ComponentProps<typeof SelectPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
5
+ declare function SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>): import("react/jsx-runtime").JSX.Element;
6
+ declare function SelectTrigger({ className, size, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Trigger> & {
7
+ size?: 'sm' | 'default';
8
+ }): import("react/jsx-runtime").JSX.Element;
9
+ declare function SelectContent({ className, children, position, align, ...props }: React.ComponentProps<typeof SelectPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
10
+ declare function SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>): import("react/jsx-runtime").JSX.Element;
11
+ declare function SelectItem({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
12
+ declare function SelectSeparator({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
13
+ declare function SelectScrollUpButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>): import("react/jsx-runtime").JSX.Element;
14
+ declare function SelectScrollDownButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>): import("react/jsx-runtime").JSX.Element;
15
+ export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, };
16
+ //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/components/ui/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAK1D,iBAAS,MAAM,CAAC,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEnD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEpD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEpD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,IAAgB,EAChB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACxD,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACzB,2CAiBA;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,QAAyB,EACzB,KAAgB,EAChB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CA6BtD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAQpD;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAqBnD;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,SAAS,CAAC,2CAQxD;AAED,iBAAS,oBAAoB,CAAC,EAC5B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,cAAc,CAAC,2CAa7D;AAED,iBAAS,sBAAsB,CAAC,EAC9B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,gBAAgB,CAAC,2CAa/D;AAED,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,WAAW,GACZ,CAAC"}
@@ -0,0 +1,145 @@
1
+ import { jsx as e, jsxs as l } from "react/jsx-runtime";
2
+ import "react";
3
+ import * as a from "@radix-ui/react-select";
4
+ import { ChevronDownIcon as i, CheckIcon as c, ChevronUpIcon as u } from "lucide-react";
5
+ import { cn as o } from "../../lib/utils.js";
6
+ function x({
7
+ ...t
8
+ }) {
9
+ return /* @__PURE__ */ e(a.Root, { "data-slot": "select", ...t });
10
+ }
11
+ function b({
12
+ ...t
13
+ }) {
14
+ return /* @__PURE__ */ e(a.Value, { "data-slot": "select-value", ...t });
15
+ }
16
+ function w({
17
+ className: t,
18
+ size: s = "default",
19
+ children: r,
20
+ ...n
21
+ }) {
22
+ return /* @__PURE__ */ l(
23
+ a.Trigger,
24
+ {
25
+ "data-slot": "select-trigger",
26
+ "data-size": s,
27
+ className: o(
28
+ "border-border data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive flex w-fit items-center justify-between gap-2 rounded-md border bg-background px-3 py-2 text-sm whitespace-nowrap transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
29
+ t
30
+ ),
31
+ ...n,
32
+ children: [
33
+ r,
34
+ /* @__PURE__ */ e(a.Icon, { asChild: !0, children: /* @__PURE__ */ e(i, { className: "size-4 opacity-50" }) })
35
+ ]
36
+ }
37
+ );
38
+ }
39
+ function y({
40
+ className: t,
41
+ children: s,
42
+ position: r = "item-aligned",
43
+ align: n = "center",
44
+ ...d
45
+ }) {
46
+ return /* @__PURE__ */ e(a.Portal, { children: /* @__PURE__ */ l(
47
+ a.Content,
48
+ {
49
+ "data-slot": "select-content",
50
+ className: o(
51
+ "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border shadow-md",
52
+ r === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
53
+ t
54
+ ),
55
+ position: r,
56
+ align: n,
57
+ ...d,
58
+ children: [
59
+ /* @__PURE__ */ e(m, {}),
60
+ /* @__PURE__ */ e(
61
+ a.Viewport,
62
+ {
63
+ className: o(
64
+ "p-1",
65
+ r === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
66
+ ),
67
+ children: s
68
+ }
69
+ ),
70
+ /* @__PURE__ */ e(f, {})
71
+ ]
72
+ }
73
+ ) });
74
+ }
75
+ function z({
76
+ className: t,
77
+ children: s,
78
+ ...r
79
+ }) {
80
+ return /* @__PURE__ */ l(
81
+ a.Item,
82
+ {
83
+ "data-slot": "select-item",
84
+ className: o(
85
+ "focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
86
+ t
87
+ ),
88
+ ...r,
89
+ children: [
90
+ /* @__PURE__ */ e(
91
+ "span",
92
+ {
93
+ "data-slot": "select-item-indicator",
94
+ className: "absolute right-2 flex size-3.5 items-center justify-center",
95
+ children: /* @__PURE__ */ e(a.ItemIndicator, { children: /* @__PURE__ */ e(c, { className: "size-4" }) })
96
+ }
97
+ ),
98
+ /* @__PURE__ */ e(a.ItemText, { children: s })
99
+ ]
100
+ }
101
+ );
102
+ }
103
+ function m({
104
+ className: t,
105
+ ...s
106
+ }) {
107
+ return /* @__PURE__ */ e(
108
+ a.ScrollUpButton,
109
+ {
110
+ "data-slot": "select-scroll-up-button",
111
+ className: o(
112
+ "flex cursor-default items-center justify-center py-1",
113
+ t
114
+ ),
115
+ ...s,
116
+ children: /* @__PURE__ */ e(u, { className: "size-4" })
117
+ }
118
+ );
119
+ }
120
+ function f({
121
+ className: t,
122
+ ...s
123
+ }) {
124
+ return /* @__PURE__ */ e(
125
+ a.ScrollDownButton,
126
+ {
127
+ "data-slot": "select-scroll-down-button",
128
+ className: o(
129
+ "flex cursor-default items-center justify-center py-1",
130
+ t
131
+ ),
132
+ ...s,
133
+ children: /* @__PURE__ */ e(i, { className: "size-4" })
134
+ }
135
+ );
136
+ }
137
+ export {
138
+ x as Select,
139
+ y as SelectContent,
140
+ z as SelectItem,
141
+ f as SelectScrollDownButton,
142
+ m as SelectScrollUpButton,
143
+ w as SelectTrigger,
144
+ b as SelectValue
145
+ };
@@ -0,0 +1,5 @@
1
+ import * as React from 'react';
2
+ import * as SeparatorPrimitive from '@radix-ui/react-separator';
3
+ declare function Separator({ className, orientation, decorative, ...props }: React.ComponentProps<typeof SeparatorPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Separator };
5
+ //# sourceMappingURL=separator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"separator.d.ts","sourceRoot":"","sources":["../../../src/components/ui/separator.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,kBAAkB,MAAM,2BAA2B,CAAC;AAIhE,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,WAA0B,EAC1B,UAAiB,EACjB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,IAAI,CAAC,2CAatD;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ import * as TabsPrimitive from '@radix-ui/react-tabs';
3
+ declare function Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function TabsList({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.List>): import("react/jsx-runtime").JSX.Element;
5
+ declare function TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
6
+ declare function TabsContent({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
7
+ export { Tabs, TabsList, TabsTrigger, TabsContent };
8
+ //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,aAAa,MAAM,sBAAsB,CAAC;AAItD,iBAAS,IAAI,CAAC,EACZ,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC,2CAQjD;AAED,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC,2CAWjD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,OAAO,CAAC,2CAWpD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,OAAO,CAAC,2CAQpD;AAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC"}