@arclux/arc-ui-solid 1.0.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 (204) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +52 -0
  3. package/package.json +72 -0
  4. package/src/application/AppShell.tsx +19 -0
  5. package/src/application/AuthShell.tsx +19 -0
  6. package/src/application/Breadcrumb.tsx +19 -0
  7. package/src/application/BreadcrumbItem.tsx +19 -0
  8. package/src/application/Container.tsx +19 -0
  9. package/src/application/DashboardGrid.tsx +21 -0
  10. package/src/application/Footer.tsx +20 -0
  11. package/src/application/NavItem.tsx +21 -0
  12. package/src/application/NavigationMenu.tsx +20 -0
  13. package/src/application/NotificationPanel.tsx +21 -0
  14. package/src/application/PageHeader.tsx +20 -0
  15. package/src/application/PageLayout.tsx +21 -0
  16. package/src/application/Resizable.tsx +23 -0
  17. package/src/application/ScrollSpy.tsx +22 -0
  18. package/src/application/Section.tsx +19 -0
  19. package/src/application/SettingsLayout.tsx +19 -0
  20. package/src/application/Sidebar.tsx +23 -0
  21. package/src/application/SidebarLink.tsx +20 -0
  22. package/src/application/SidebarSection.tsx +21 -0
  23. package/src/application/SplitPane.tsx +22 -0
  24. package/src/application/SpyLink.tsx +19 -0
  25. package/src/application/StatusBar.tsx +19 -0
  26. package/src/application/Toolbar.tsx +21 -0
  27. package/src/application/TopBar.tsx +21 -0
  28. package/src/application/index.ts +45 -0
  29. package/src/content/Accordion.tsx +20 -0
  30. package/src/content/AccordionItem.tsx +19 -0
  31. package/src/content/AnimatedNumber.tsx +25 -0
  32. package/src/content/AspectRatio.tsx +19 -0
  33. package/src/content/Avatar.tsx +21 -0
  34. package/src/content/AvatarGroup.tsx +20 -0
  35. package/src/content/Badge.tsx +19 -0
  36. package/src/content/Callout.tsx +19 -0
  37. package/src/content/Card.tsx +19 -0
  38. package/src/content/Carousel.tsx +25 -0
  39. package/src/content/CodeBlock.tsx +22 -0
  40. package/src/content/Collapsible.tsx +20 -0
  41. package/src/content/ColorSwatch.tsx +21 -0
  42. package/src/content/Column.tsx +22 -0
  43. package/src/content/DataTable.tsx +25 -0
  44. package/src/content/Divider.tsx +21 -0
  45. package/src/content/EmptyState.tsx +20 -0
  46. package/src/content/FeatureCard.tsx +22 -0
  47. package/src/content/Highlight.tsx +21 -0
  48. package/src/content/Icon.tsx +21 -0
  49. package/src/content/InfiniteScroll.tsx +22 -0
  50. package/src/content/Kbd.tsx +18 -0
  51. package/src/content/Link.tsx +22 -0
  52. package/src/content/Markdown.tsx +19 -0
  53. package/src/content/Marquee.tsx +22 -0
  54. package/src/content/Meter.tsx +25 -0
  55. package/src/content/ScrollArea.tsx +20 -0
  56. package/src/content/Skeleton.tsx +21 -0
  57. package/src/content/Spinner.tsx +20 -0
  58. package/src/content/Stack.tsx +23 -0
  59. package/src/content/Stat.tsx +20 -0
  60. package/src/content/Step.tsx +19 -0
  61. package/src/content/Stepper.tsx +20 -0
  62. package/src/content/Table.tsx +22 -0
  63. package/src/content/Tag.tsx +21 -0
  64. package/src/content/Text.tsx +20 -0
  65. package/src/content/Timeline.tsx +19 -0
  66. package/src/content/TimelineItem.tsx +20 -0
  67. package/src/content/Truncate.tsx +20 -0
  68. package/src/content/ValueCard.tsx +21 -0
  69. package/src/content/index.ts +89 -0
  70. package/src/feedback/Alert.tsx +21 -0
  71. package/src/feedback/CommandItem.tsx +20 -0
  72. package/src/feedback/CommandPalette.tsx +23 -0
  73. package/src/feedback/ContextMenu.tsx +23 -0
  74. package/src/feedback/Dialog.tsx +22 -0
  75. package/src/feedback/DropdownMenu.tsx +21 -0
  76. package/src/feedback/HoverCard.tsx +22 -0
  77. package/src/feedback/Modal.tsx +22 -0
  78. package/src/feedback/NotificationPanel.tsx +21 -0
  79. package/src/feedback/Popover.tsx +21 -0
  80. package/src/feedback/Progress.tsx +23 -0
  81. package/src/feedback/Sheet.tsx +21 -0
  82. package/src/feedback/Toast.tsx +21 -0
  83. package/src/feedback/Tooltip.tsx +22 -0
  84. package/src/index.ts +257 -0
  85. package/src/input/Button.tsx +23 -0
  86. package/src/input/Calendar.tsx +24 -0
  87. package/src/input/Checkbox.tsx +24 -0
  88. package/src/input/Chip.tsx +21 -0
  89. package/src/input/ColorPicker.tsx +28 -0
  90. package/src/input/Combobox.tsx +26 -0
  91. package/src/input/CopyButton.tsx +21 -0
  92. package/src/input/DatePicker.tsx +28 -0
  93. package/src/input/FileUpload.tsx +25 -0
  94. package/src/input/Form.tsx +21 -0
  95. package/src/input/IconButton.tsx +26 -0
  96. package/src/input/Input.tsx +27 -0
  97. package/src/input/MultiSelect.tsx +26 -0
  98. package/src/input/NumberInput.tsx +24 -0
  99. package/src/input/OtpInput.tsx +22 -0
  100. package/src/input/PinInput.tsx +25 -0
  101. package/src/input/Radio.tsx +20 -0
  102. package/src/input/RadioGroup.tsx +23 -0
  103. package/src/input/Rating.tsx +22 -0
  104. package/src/input/Search.tsx +26 -0
  105. package/src/input/SegmentedControl.tsx +21 -0
  106. package/src/input/Select.tsx +25 -0
  107. package/src/input/Slider.tsx +24 -0
  108. package/src/input/SortableList.tsx +24 -0
  109. package/src/input/Suggestion.tsx +19 -0
  110. package/src/input/Textarea.tsx +27 -0
  111. package/src/input/ThemeToggle.tsx +21 -0
  112. package/src/input/Toggle.tsx +22 -0
  113. package/src/layout/AppShell.tsx +22 -0
  114. package/src/layout/AuthShell.tsx +19 -0
  115. package/src/layout/Container.tsx +19 -0
  116. package/src/layout/DashboardGrid.tsx +21 -0
  117. package/src/layout/PageHeader.tsx +20 -0
  118. package/src/layout/PageLayout.tsx +21 -0
  119. package/src/layout/Resizable.tsx +23 -0
  120. package/src/layout/Section.tsx +19 -0
  121. package/src/layout/SettingsLayout.tsx +19 -0
  122. package/src/layout/SplitPane.tsx +22 -0
  123. package/src/layout/StatusBar.tsx +19 -0
  124. package/src/layout/Toolbar.tsx +21 -0
  125. package/src/navigation/Breadcrumb.tsx +19 -0
  126. package/src/navigation/BreadcrumbItem.tsx +19 -0
  127. package/src/navigation/Drawer.tsx +21 -0
  128. package/src/navigation/Footer.tsx +20 -0
  129. package/src/navigation/Link.tsx +22 -0
  130. package/src/navigation/NavItem.tsx +21 -0
  131. package/src/navigation/NavigationMenu.tsx +23 -0
  132. package/src/navigation/Pagination.tsx +21 -0
  133. package/src/navigation/ScrollSpy.tsx +22 -0
  134. package/src/navigation/ScrollToTop.tsx +23 -0
  135. package/src/navigation/Sidebar.tsx +23 -0
  136. package/src/navigation/SidebarLink.tsx +20 -0
  137. package/src/navigation/SidebarSection.tsx +21 -0
  138. package/src/navigation/SpyLink.tsx +19 -0
  139. package/src/navigation/Tab.tsx +19 -0
  140. package/src/navigation/Tabs.tsx +21 -0
  141. package/src/navigation/TopBar.tsx +23 -0
  142. package/src/navigation/TreeItem.tsx +21 -0
  143. package/src/navigation/TreeView.tsx +20 -0
  144. package/src/reactive/Accordion.tsx +20 -0
  145. package/src/reactive/AccordionItem.tsx +19 -0
  146. package/src/reactive/Alert.tsx +21 -0
  147. package/src/reactive/Button.tsx +23 -0
  148. package/src/reactive/Calendar.tsx +24 -0
  149. package/src/reactive/Carousel.tsx +25 -0
  150. package/src/reactive/Checkbox.tsx +24 -0
  151. package/src/reactive/Chip.tsx +21 -0
  152. package/src/reactive/Collapsible.tsx +20 -0
  153. package/src/reactive/ColorPicker.tsx +28 -0
  154. package/src/reactive/Column.tsx +22 -0
  155. package/src/reactive/Combobox.tsx +26 -0
  156. package/src/reactive/CommandItem.tsx +20 -0
  157. package/src/reactive/CommandPalette.tsx +23 -0
  158. package/src/reactive/ContextMenu.tsx +23 -0
  159. package/src/reactive/CopyButton.tsx +21 -0
  160. package/src/reactive/DataTable.tsx +25 -0
  161. package/src/reactive/DatePicker.tsx +28 -0
  162. package/src/reactive/Dialog.tsx +22 -0
  163. package/src/reactive/Drawer.tsx +21 -0
  164. package/src/reactive/DropdownMenu.tsx +21 -0
  165. package/src/reactive/FileUpload.tsx +25 -0
  166. package/src/reactive/Form.tsx +21 -0
  167. package/src/reactive/HoverCard.tsx +22 -0
  168. package/src/reactive/IconButton.tsx +26 -0
  169. package/src/reactive/InfiniteScroll.tsx +22 -0
  170. package/src/reactive/Input.tsx +27 -0
  171. package/src/reactive/Modal.tsx +22 -0
  172. package/src/reactive/MultiSelect.tsx +26 -0
  173. package/src/reactive/NumberInput.tsx +24 -0
  174. package/src/reactive/OtpInput.tsx +22 -0
  175. package/src/reactive/Pagination.tsx +21 -0
  176. package/src/reactive/PinInput.tsx +25 -0
  177. package/src/reactive/Popover.tsx +21 -0
  178. package/src/reactive/Progress.tsx +23 -0
  179. package/src/reactive/Radio.tsx +20 -0
  180. package/src/reactive/RadioGroup.tsx +23 -0
  181. package/src/reactive/Rating.tsx +22 -0
  182. package/src/reactive/ScrollToTop.tsx +23 -0
  183. package/src/reactive/Search.tsx +26 -0
  184. package/src/reactive/SegmentedControl.tsx +21 -0
  185. package/src/reactive/Select.tsx +25 -0
  186. package/src/reactive/Sheet.tsx +21 -0
  187. package/src/reactive/Slider.tsx +24 -0
  188. package/src/reactive/SortableList.tsx +24 -0
  189. package/src/reactive/Suggestion.tsx +19 -0
  190. package/src/reactive/Tab.tsx +19 -0
  191. package/src/reactive/Tabs.tsx +21 -0
  192. package/src/reactive/Tag.tsx +21 -0
  193. package/src/reactive/Textarea.tsx +27 -0
  194. package/src/reactive/ThemeToggle.tsx +21 -0
  195. package/src/reactive/Toast.tsx +21 -0
  196. package/src/reactive/Toggle.tsx +22 -0
  197. package/src/reactive/Tooltip.tsx +22 -0
  198. package/src/reactive/TreeItem.tsx +21 -0
  199. package/src/reactive/TreeView.tsx +20 -0
  200. package/src/reactive/Truncate.tsx +20 -0
  201. package/src/reactive/index.ts +120 -0
  202. package/src/shared/MenuDivider.tsx +18 -0
  203. package/src/shared/MenuItem.tsx +21 -0
  204. package/src/shared/Option.tsx +21 -0
@@ -0,0 +1,45 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+ export { AppShell } from './AppShell.js';
3
+ export type { AppShellProps } from './AppShell.js';
4
+ export { AuthShell } from './AuthShell.js';
5
+ export type { AuthShellProps } from './AuthShell.js';
6
+ export { BreadcrumbItem } from './BreadcrumbItem.js';
7
+ export type { BreadcrumbItemProps } from './BreadcrumbItem.js';
8
+ export { Container } from './Container.js';
9
+ export type { ContainerProps } from './Container.js';
10
+ export { DashboardGrid } from './DashboardGrid.js';
11
+ export type { DashboardGridProps } from './DashboardGrid.js';
12
+ export { Footer } from './Footer.js';
13
+ export type { FooterProps } from './Footer.js';
14
+ export { NavItem } from './NavItem.js';
15
+ export type { NavItemProps } from './NavItem.js';
16
+ export { NavigationMenu } from './NavigationMenu.js';
17
+ export type { NavigationMenuProps } from './NavigationMenu.js';
18
+ export { NotificationPanel } from './NotificationPanel.js';
19
+ export type { NotificationPanelProps } from './NotificationPanel.js';
20
+ export { PageHeader } from './PageHeader.js';
21
+ export type { PageHeaderProps } from './PageHeader.js';
22
+ export { PageLayout } from './PageLayout.js';
23
+ export type { PageLayoutProps } from './PageLayout.js';
24
+ export { Resizable } from './Resizable.js';
25
+ export type { ResizableProps } from './Resizable.js';
26
+ export { ScrollSpy } from './ScrollSpy.js';
27
+ export type { ScrollSpyProps } from './ScrollSpy.js';
28
+ export { Section } from './Section.js';
29
+ export type { SectionProps } from './Section.js';
30
+ export { SettingsLayout } from './SettingsLayout.js';
31
+ export type { SettingsLayoutProps } from './SettingsLayout.js';
32
+ export { SidebarLink } from './SidebarLink.js';
33
+ export type { SidebarLinkProps } from './SidebarLink.js';
34
+ export { SidebarSection } from './SidebarSection.js';
35
+ export type { SidebarSectionProps } from './SidebarSection.js';
36
+ export { SplitPane } from './SplitPane.js';
37
+ export type { SplitPaneProps } from './SplitPane.js';
38
+ export { SpyLink } from './SpyLink.js';
39
+ export type { SpyLinkProps } from './SpyLink.js';
40
+ export { StatusBar } from './StatusBar.js';
41
+ export type { StatusBarProps } from './StatusBar.js';
42
+ export { Toolbar } from './Toolbar.js';
43
+ export type { ToolbarProps } from './Toolbar.js';
44
+ export { TopBar } from './TopBar.js';
45
+ export type { TopBarProps } from './TopBar.js';
@@ -0,0 +1,20 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface AccordionProps {
7
+ _items?: string;
8
+ _openItems?: string;
9
+ children?: JSX.Element;
10
+ [key: string]: unknown;
11
+ }
12
+
13
+ export const Accordion: Component<AccordionProps> = (props) => {
14
+ const [local, rest] = splitProps(props, ['_items', '_openItems', 'children']);
15
+ return (
16
+ <arc-accordion _items={local._items} _openItems={local._openItems} {...rest}>
17
+ {local.children}
18
+ </arc-accordion>
19
+ );
20
+ };
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface AccordionItemProps {
7
+ question?: string;
8
+ children?: JSX.Element;
9
+ [key: string]: unknown;
10
+ }
11
+
12
+ export const AccordionItem: Component<AccordionItemProps> = (props) => {
13
+ const [local, rest] = splitProps(props, ['question', 'children']);
14
+ return (
15
+ <arc-accordion-item question={local.question} {...rest}>
16
+ {local.children}
17
+ </arc-accordion-item>
18
+ );
19
+ };
@@ -0,0 +1,25 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface AnimatedNumberProps {
7
+ value?: number;
8
+ duration?: number;
9
+ format?: string;
10
+ prefix?: string;
11
+ suffix?: string;
12
+ decimals?: number;
13
+ locale?: string;
14
+ children?: JSX.Element;
15
+ [key: string]: unknown;
16
+ }
17
+
18
+ export const AnimatedNumber: Component<AnimatedNumberProps> = (props) => {
19
+ const [local, rest] = splitProps(props, ['value', 'duration', 'format', 'prefix', 'suffix', 'decimals', 'locale', 'children']);
20
+ return (
21
+ <arc-animated-number value={local.value} duration={local.duration} format={local.format} prefix={local.prefix} suffix={local.suffix} decimals={local.decimals} locale={local.locale} {...rest}>
22
+ {local.children}
23
+ </arc-animated-number>
24
+ );
25
+ };
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface AspectRatioProps {
7
+ ratio?: string;
8
+ children?: JSX.Element;
9
+ [key: string]: unknown;
10
+ }
11
+
12
+ export const AspectRatio: Component<AspectRatioProps> = (props) => {
13
+ const [local, rest] = splitProps(props, ['ratio', 'children']);
14
+ return (
15
+ <arc-aspect-ratio ratio={local.ratio} {...rest}>
16
+ {local.children}
17
+ </arc-aspect-ratio>
18
+ );
19
+ };
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface AvatarProps {
7
+ src?: string;
8
+ name?: string;
9
+ size?: 'sm' | 'md' | 'lg';
10
+ children?: JSX.Element;
11
+ [key: string]: unknown;
12
+ }
13
+
14
+ export const Avatar: Component<AvatarProps> = (props) => {
15
+ const [local, rest] = splitProps(props, ['src', 'name', 'size', 'children']);
16
+ return (
17
+ <arc-avatar src={local.src} name={local.name} size={local.size} {...rest}>
18
+ {local.children}
19
+ </arc-avatar>
20
+ );
21
+ };
@@ -0,0 +1,20 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface AvatarGroupProps {
7
+ max?: number;
8
+ overlap?: 'sm' | 'lg';
9
+ children?: JSX.Element;
10
+ [key: string]: unknown;
11
+ }
12
+
13
+ export const AvatarGroup: Component<AvatarGroupProps> = (props) => {
14
+ const [local, rest] = splitProps(props, ['max', 'overlap', 'children']);
15
+ return (
16
+ <arc-avatar-group max={local.max} overlap={local.overlap} {...rest}>
17
+ {local.children}
18
+ </arc-avatar-group>
19
+ );
20
+ };
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface BadgeProps {
7
+ variant?: 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'info';
8
+ children?: JSX.Element;
9
+ [key: string]: unknown;
10
+ }
11
+
12
+ export const Badge: Component<BadgeProps> = (props) => {
13
+ const [local, rest] = splitProps(props, ['variant', 'children']);
14
+ return (
15
+ <arc-badge variant={local.variant} {...rest}>
16
+ {local.children}
17
+ </arc-badge>
18
+ );
19
+ };
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface CalloutProps {
7
+ variant?: 'info' | 'warning' | 'tip' | 'danger';
8
+ children?: JSX.Element;
9
+ [key: string]: unknown;
10
+ }
11
+
12
+ export const Callout: Component<CalloutProps> = (props) => {
13
+ const [local, rest] = splitProps(props, ['variant', 'children']);
14
+ return (
15
+ <arc-callout variant={local.variant} {...rest}>
16
+ {local.children}
17
+ </arc-callout>
18
+ );
19
+ };
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface CardProps {
7
+ href?: string;
8
+ children?: JSX.Element;
9
+ [key: string]: unknown;
10
+ }
11
+
12
+ export const Card: Component<CardProps> = (props) => {
13
+ const [local, rest] = splitProps(props, ['href', 'children']);
14
+ return (
15
+ <arc-card href={local.href} {...rest}>
16
+ {local.children}
17
+ </arc-card>
18
+ );
19
+ };
@@ -0,0 +1,25 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface CarouselProps {
7
+ autoPlay?: boolean;
8
+ interval?: number;
9
+ loop?: boolean;
10
+ showDots?: boolean;
11
+ showArrows?: boolean;
12
+ _current?: string;
13
+ _total?: string;
14
+ children?: JSX.Element;
15
+ [key: string]: unknown;
16
+ }
17
+
18
+ export const Carousel: Component<CarouselProps> = (props) => {
19
+ const [local, rest] = splitProps(props, ['autoPlay', 'interval', 'loop', 'showDots', 'showArrows', '_current', '_total', 'children']);
20
+ return (
21
+ <arc-carousel autoPlay={local.autoPlay} interval={local.interval} loop={local.loop} showDots={local.showDots} showArrows={local.showArrows} _current={local._current} _total={local._total} {...rest}>
22
+ {local.children}
23
+ </arc-carousel>
24
+ );
25
+ };
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface CodeBlockProps {
7
+ language?: string;
8
+ filename?: string;
9
+ code?: string;
10
+ _copied?: string;
11
+ children?: JSX.Element;
12
+ [key: string]: unknown;
13
+ }
14
+
15
+ export const CodeBlock: Component<CodeBlockProps> = (props) => {
16
+ const [local, rest] = splitProps(props, ['language', 'filename', 'code', '_copied', 'children']);
17
+ return (
18
+ <arc-code-block language={local.language} filename={local.filename} code={local.code} _copied={local._copied} {...rest}>
19
+ {local.children}
20
+ </arc-code-block>
21
+ );
22
+ };
@@ -0,0 +1,20 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface CollapsibleProps {
7
+ open?: boolean;
8
+ heading?: string;
9
+ children?: JSX.Element;
10
+ [key: string]: unknown;
11
+ }
12
+
13
+ export const Collapsible: Component<CollapsibleProps> = (props) => {
14
+ const [local, rest] = splitProps(props, ['open', 'heading', 'children']);
15
+ return (
16
+ <arc-collapsible open={local.open} heading={local.heading} {...rest}>
17
+ {local.children}
18
+ </arc-collapsible>
19
+ );
20
+ };
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface ColorSwatchProps {
7
+ color?: string;
8
+ label?: string;
9
+ size?: 'sm' | 'md' | 'lg';
10
+ children?: JSX.Element;
11
+ [key: string]: unknown;
12
+ }
13
+
14
+ export const ColorSwatch: Component<ColorSwatchProps> = (props) => {
15
+ const [local, rest] = splitProps(props, ['color', 'label', 'size', 'children']);
16
+ return (
17
+ <arc-color-swatch color={local.color} label={local.label} size={local.size} {...rest}>
18
+ {local.children}
19
+ </arc-color-swatch>
20
+ );
21
+ };
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface ColumnProps {
7
+ key?: string;
8
+ label?: string;
9
+ sortable?: boolean;
10
+ width?: string;
11
+ children?: JSX.Element;
12
+ [key: string]: unknown;
13
+ }
14
+
15
+ export const Column: Component<ColumnProps> = (props) => {
16
+ const [local, rest] = splitProps(props, ['key', 'label', 'sortable', 'width', 'children']);
17
+ return (
18
+ <arc-column key={local.key} label={local.label} sortable={local.sortable} width={local.width} {...rest}>
19
+ {local.children}
20
+ </arc-column>
21
+ );
22
+ };
@@ -0,0 +1,25 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface DataTableProps {
7
+ rows?: unknown[];
8
+ sortable?: boolean;
9
+ selectable?: boolean;
10
+ sortColumn?: string;
11
+ sortDirection?: string;
12
+ _columns?: string;
13
+ _selectedRows?: string;
14
+ children?: JSX.Element;
15
+ [key: string]: unknown;
16
+ }
17
+
18
+ export const DataTable: Component<DataTableProps> = (props) => {
19
+ const [local, rest] = splitProps(props, ['rows', 'sortable', 'selectable', 'sortColumn', 'sortDirection', '_columns', '_selectedRows', 'children']);
20
+ return (
21
+ <arc-data-table rows={local.rows} sortable={local.sortable} selectable={local.selectable} sortColumn={local.sortColumn} sortDirection={local.sortDirection} _columns={local._columns} _selectedRows={local._selectedRows} {...rest}>
22
+ {local.children}
23
+ </arc-data-table>
24
+ );
25
+ };
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface DividerProps {
7
+ variant?: 'subtle' | 'glow' | 'line-white' | 'line-primary' | 'line-gradient';
8
+ align?: 'left' | 'right';
9
+ vertical?: boolean;
10
+ children?: JSX.Element;
11
+ [key: string]: unknown;
12
+ }
13
+
14
+ export const Divider: Component<DividerProps> = (props) => {
15
+ const [local, rest] = splitProps(props, ['variant', 'align', 'vertical', 'children']);
16
+ return (
17
+ <arc-divider variant={local.variant} align={local.align} vertical={local.vertical} {...rest}>
18
+ {local.children}
19
+ </arc-divider>
20
+ );
21
+ };
@@ -0,0 +1,20 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface EmptyStateProps {
7
+ heading?: string;
8
+ description?: string;
9
+ children?: JSX.Element;
10
+ [key: string]: unknown;
11
+ }
12
+
13
+ export const EmptyState: Component<EmptyStateProps> = (props) => {
14
+ const [local, rest] = splitProps(props, ['heading', 'description', 'children']);
15
+ return (
16
+ <arc-empty-state heading={local.heading} description={local.description} {...rest}>
17
+ {local.children}
18
+ </arc-empty-state>
19
+ );
20
+ };
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface FeatureCardProps {
7
+ icon?: string;
8
+ heading?: string;
9
+ description?: string;
10
+ href?: string;
11
+ children?: JSX.Element;
12
+ [key: string]: unknown;
13
+ }
14
+
15
+ export const FeatureCard: Component<FeatureCardProps> = (props) => {
16
+ const [local, rest] = splitProps(props, ['icon', 'heading', 'description', 'href', 'children']);
17
+ return (
18
+ <arc-feature-card icon={local.icon} heading={local.heading} description={local.description} href={local.href} {...rest}>
19
+ {local.children}
20
+ </arc-feature-card>
21
+ );
22
+ };
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface HighlightProps {
7
+ text?: string;
8
+ query?: string;
9
+ caseSensitive?: boolean;
10
+ children?: JSX.Element;
11
+ [key: string]: unknown;
12
+ }
13
+
14
+ export const Highlight: Component<HighlightProps> = (props) => {
15
+ const [local, rest] = splitProps(props, ['text', 'query', 'caseSensitive', 'children']);
16
+ return (
17
+ <arc-highlight text={local.text} query={local.query} caseSensitive={local.caseSensitive} {...rest}>
18
+ {local.children}
19
+ </arc-highlight>
20
+ );
21
+ };
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface IconProps {
7
+ name?: string;
8
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
9
+ label?: string;
10
+ children?: JSX.Element;
11
+ [key: string]: unknown;
12
+ }
13
+
14
+ export const Icon: Component<IconProps> = (props) => {
15
+ const [local, rest] = splitProps(props, ['name', 'size', 'label', 'children']);
16
+ return (
17
+ <arc-icon name={local.name} size={local.size} label={local.label} {...rest}>
18
+ {local.children}
19
+ </arc-icon>
20
+ );
21
+ };
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface InfiniteScrollProps {
7
+ threshold?: number;
8
+ loading?: boolean;
9
+ finished?: boolean;
10
+ disabled?: boolean;
11
+ children?: JSX.Element;
12
+ [key: string]: unknown;
13
+ }
14
+
15
+ export const InfiniteScroll: Component<InfiniteScrollProps> = (props) => {
16
+ const [local, rest] = splitProps(props, ['threshold', 'loading', 'finished', 'disabled', 'children']);
17
+ return (
18
+ <arc-infinite-scroll threshold={local.threshold} loading={local.loading} finished={local.finished} disabled={local.disabled} {...rest}>
19
+ {local.children}
20
+ </arc-infinite-scroll>
21
+ );
22
+ };
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface KbdProps {
7
+ children?: JSX.Element;
8
+ [key: string]: unknown;
9
+ }
10
+
11
+ export const Kbd: Component<KbdProps> = (props) => {
12
+ const [local, rest] = splitProps(props, ['children']);
13
+ return (
14
+ <arc-kbd {...rest}>
15
+ {local.children}
16
+ </arc-kbd>
17
+ );
18
+ };
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface LinkProps {
7
+ href?: string;
8
+ variant?: 'muted' | 'nav';
9
+ active?: boolean;
10
+ external?: boolean;
11
+ children?: JSX.Element;
12
+ [key: string]: unknown;
13
+ }
14
+
15
+ export const Link: Component<LinkProps> = (props) => {
16
+ const [local, rest] = splitProps(props, ['href', 'variant', 'active', 'external', 'children']);
17
+ return (
18
+ <arc-link href={local.href} variant={local.variant} active={local.active} external={local.external} {...rest}>
19
+ {local.children}
20
+ </arc-link>
21
+ );
22
+ };
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface MarkdownProps {
7
+ content?: string;
8
+ children?: JSX.Element;
9
+ [key: string]: unknown;
10
+ }
11
+
12
+ export const Markdown: Component<MarkdownProps> = (props) => {
13
+ const [local, rest] = splitProps(props, ['content', 'children']);
14
+ return (
15
+ <arc-markdown content={local.content} {...rest}>
16
+ {local.children}
17
+ </arc-markdown>
18
+ );
19
+ };
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface MarqueeProps {
7
+ speed?: number;
8
+ direction?: string;
9
+ gap?: string;
10
+ _animDuration?: string;
11
+ children?: JSX.Element;
12
+ [key: string]: unknown;
13
+ }
14
+
15
+ export const Marquee: Component<MarqueeProps> = (props) => {
16
+ const [local, rest] = splitProps(props, ['speed', 'direction', 'gap', '_animDuration', 'children']);
17
+ return (
18
+ <arc-marquee speed={local.speed} direction={local.direction} gap={local.gap} _animDuration={local._animDuration} {...rest}>
19
+ {local.children}
20
+ </arc-marquee>
21
+ );
22
+ };
@@ -0,0 +1,25 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface MeterProps {
7
+ value?: number;
8
+ min?: number;
9
+ max?: number;
10
+ low?: number;
11
+ high?: number;
12
+ optimum?: number;
13
+ label?: string;
14
+ children?: JSX.Element;
15
+ [key: string]: unknown;
16
+ }
17
+
18
+ export const Meter: Component<MeterProps> = (props) => {
19
+ const [local, rest] = splitProps(props, ['value', 'min', 'max', 'low', 'high', 'optimum', 'label', 'children']);
20
+ return (
21
+ <arc-meter value={local.value} min={local.min} max={local.max} low={local.low} high={local.high} optimum={local.optimum} label={local.label} {...rest}>
22
+ {local.children}
23
+ </arc-meter>
24
+ );
25
+ };
@@ -0,0 +1,20 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { splitProps, type Component, type JSX } from 'solid-js';
4
+ import '@arclux/arc-ui';
5
+
6
+ export interface ScrollAreaProps {
7
+ maxHeight?: string;
8
+ orientation?: 'vertical' | 'horizontal' | 'both';
9
+ children?: JSX.Element;
10
+ [key: string]: unknown;
11
+ }
12
+
13
+ export const ScrollArea: Component<ScrollAreaProps> = (props) => {
14
+ const [local, rest] = splitProps(props, ['maxHeight', 'orientation', 'children']);
15
+ return (
16
+ <arc-scroll-area maxHeight={local.maxHeight} orientation={local.orientation} {...rest}>
17
+ {local.children}
18
+ </arc-scroll-area>
19
+ );
20
+ };