@exponential-at/ui-solid 0.0.0-stage → 0.1.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 (127) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +54 -0
  3. package/README.md +135 -2
  4. package/dist/chunks/image-loading-status-DZOoj4RQ.js +1724 -0
  5. package/dist/chunks/image-loading-status-DZOoj4RQ.js.map +1 -0
  6. package/dist/exponential-ui-solid.css +2 -0
  7. package/dist/index.js +12305 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/primitives.js +8439 -0
  10. package/dist/primitives.js.map +1 -0
  11. package/dist/types/behaviors/bubble-input.d.ts +35 -0
  12. package/dist/types/behaviors/collapsible.d.ts +15 -0
  13. package/dist/types/behaviors/dialog.d.ts +116 -0
  14. package/dist/types/behaviors/dismissable-layer.d.ts +48 -0
  15. package/dist/types/behaviors/drag-to-dismiss.d.ts +10 -0
  16. package/dist/types/behaviors/element-size.d.ts +7 -0
  17. package/dist/types/behaviors/focus-guards.d.ts +4 -0
  18. package/dist/types/behaviors/focus-scope.d.ts +20 -0
  19. package/dist/types/behaviors/grace-area.d.ts +10 -0
  20. package/dist/types/behaviors/image-loading-status.d.ts +4 -0
  21. package/dist/types/behaviors/index.d.ts +23 -0
  22. package/dist/types/behaviors/listbox.d.ts +44 -0
  23. package/dist/types/behaviors/menu.d.ts +95 -0
  24. package/dist/types/behaviors/modal.d.ts +3 -0
  25. package/dist/types/behaviors/picker-popover.d.ts +22 -0
  26. package/dist/types/behaviors/popper.d.ts +49 -0
  27. package/dist/types/behaviors/portal.d.ts +11 -0
  28. package/dist/types/behaviors/presence.d.ts +7 -0
  29. package/dist/types/behaviors/roving-focus.d.ts +30 -0
  30. package/dist/types/behaviors/scroll-lock.d.ts +4 -0
  31. package/dist/types/behaviors/search-match.d.ts +6 -0
  32. package/dist/types/behaviors/slider.d.ts +8 -0
  33. package/dist/types/behaviors/style-writer.d.ts +8 -0
  34. package/dist/types/behaviors/typeahead.d.ts +11 -0
  35. package/dist/types/behaviors/visually-hidden.d.ts +6 -0
  36. package/dist/types/bind-attrs.d.ts +4 -0
  37. package/dist/types/context.d.ts +74 -0
  38. package/dist/types/create-surface.d.ts +58 -0
  39. package/dist/types/extensions.d.ts +25 -0
  40. package/dist/types/form.d.ts +63 -0
  41. package/dist/types/host-surface.d.ts +33 -0
  42. package/dist/types/host.d.ts +37 -0
  43. package/dist/types/icons.d.ts +56 -0
  44. package/dist/types/index.d.ts +39 -0
  45. package/dist/types/inputs.d.ts +27 -0
  46. package/dist/types/list.d.ts +33 -0
  47. package/dist/types/markdown.d.ts +10 -0
  48. package/dist/types/media.d.ts +16 -0
  49. package/dist/types/natives/actions.d.ts +13 -0
  50. package/dist/types/natives/bound.d.ts +3 -0
  51. package/dist/types/natives/chart.d.ts +4 -0
  52. package/dist/types/natives/chips.d.ts +7 -0
  53. package/dist/types/natives/choice-tiles.d.ts +4 -0
  54. package/dist/types/natives/code.d.ts +4 -0
  55. package/dist/types/natives/dates.d.ts +30 -0
  56. package/dist/types/natives/feedback.d.ts +19 -0
  57. package/dist/types/natives/index.d.ts +6 -0
  58. package/dist/types/natives/inputs.d.ts +20 -0
  59. package/dist/types/natives/layout.d.ts +12 -0
  60. package/dist/types/natives/media.d.ts +14 -0
  61. package/dist/types/natives/nav.d.ts +14 -0
  62. package/dist/types/natives/overlays.d.ts +19 -0
  63. package/dist/types/natives/owners.d.ts +2 -0
  64. package/dist/types/natives/pending.d.ts +3 -0
  65. package/dist/types/natives/resizable.d.ts +4 -0
  66. package/dist/types/natives/search.d.ts +45 -0
  67. package/dist/types/natives/select.d.ts +10 -0
  68. package/dist/types/natives/shared.d.ts +50 -0
  69. package/dist/types/natives/table.d.ts +7 -0
  70. package/dist/types/natives/text.d.ts +5 -0
  71. package/dist/types/node-view.d.ts +83 -0
  72. package/dist/types/platform.d.ts +12 -0
  73. package/dist/types/primitives/alert-dialog.d.ts +24 -0
  74. package/dist/types/primitives/alert.d.ts +6 -0
  75. package/dist/types/primitives/avatar-color.d.ts +1 -0
  76. package/dist/types/primitives/avatar.d.ts +12 -0
  77. package/dist/types/primitives/badge.d.ts +8 -0
  78. package/dist/types/primitives/breadcrumb.d.ts +12 -0
  79. package/dist/types/primitives/button.d.ts +12 -0
  80. package/dist/types/primitives/calendar.d.ts +188 -0
  81. package/dist/types/primitives/card.d.ts +9 -0
  82. package/dist/types/primitives/checkbox.d.ts +14 -0
  83. package/dist/types/primitives/choice-tiles.d.ts +59 -0
  84. package/dist/types/primitives/cn.d.ts +1 -0
  85. package/dist/types/primitives/code-block.d.ts +34 -0
  86. package/dist/types/primitives/collapsible.d.ts +15 -0
  87. package/dist/types/primitives/command.d.ts +51 -0
  88. package/dist/types/primitives/context-ring.d.ts +14 -0
  89. package/dist/types/primitives/dialog-arms.d.ts +2 -0
  90. package/dist/types/primitives/dialog.d.ts +34 -0
  91. package/dist/types/primitives/disclosure-header.d.ts +7 -0
  92. package/dist/types/primitives/dock-card.d.ts +41 -0
  93. package/dist/types/primitives/dropdown-menu.d.ts +73 -0
  94. package/dist/types/primitives/empty-state.d.ts +19 -0
  95. package/dist/types/primitives/glass-card.d.ts +3 -0
  96. package/dist/types/primitives/hover-card.d.ts +28 -0
  97. package/dist/types/primitives/icon-disc.d.ts +11 -0
  98. package/dist/types/primitives/index.d.ts +51 -0
  99. package/dist/types/primitives/input.d.ts +6 -0
  100. package/dist/types/primitives/kbd.d.ts +4 -0
  101. package/dist/types/primitives/label.d.ts +3 -0
  102. package/dist/types/primitives/menu-surface.d.ts +1 -0
  103. package/dist/types/primitives/meter.d.ts +8 -0
  104. package/dist/types/primitives/popover.d.ts +31 -0
  105. package/dist/types/primitives/progress-ring.d.ts +12 -0
  106. package/dist/types/primitives/progress.d.ts +9 -0
  107. package/dist/types/primitives/scroll-area.d.ts +19 -0
  108. package/dist/types/primitives/segmented-control.d.ts +23 -0
  109. package/dist/types/primitives/select.d.ts +51 -0
  110. package/dist/types/primitives/separator.d.ts +6 -0
  111. package/dist/types/primitives/sheet-chrome.d.ts +11 -0
  112. package/dist/types/primitives/sheet.d.ts +21 -0
  113. package/dist/types/primitives/skeleton.d.ts +3 -0
  114. package/dist/types/primitives/spinner.d.ts +9 -0
  115. package/dist/types/primitives/switch.d.ts +14 -0
  116. package/dist/types/primitives/table.d.ts +11 -0
  117. package/dist/types/primitives/tabs.d.ts +29 -0
  118. package/dist/types/primitives/textarea.d.ts +5 -0
  119. package/dist/types/primitives/toast.d.ts +16 -0
  120. package/dist/types/primitives/tooltip.d.ts +34 -0
  121. package/dist/types/primitives/truncate.d.ts +1 -0
  122. package/dist/types/primitives/use-media-query.d.ts +4 -0
  123. package/dist/types/primitives/use-mobile.d.ts +4 -0
  124. package/dist/types/primitives/use-sheet-drag.d.ts +20 -0
  125. package/dist/types/style.d.ts +6 -0
  126. package/dist/types/surface.d.ts +99 -0
  127. package/package.json +55 -4
@@ -0,0 +1,9 @@
1
+ import { type JSX } from "solid-js";
2
+ declare function Spinner(props: Omit<JSX.SvgSVGAttributes<SVGSVGElement>, `children`> & {
3
+ size?: number;
4
+ /** The accessible name; the glyph itself never carries words. */
5
+ label?: string;
6
+ class?: string;
7
+ [data: `data-${string}`]: string | undefined;
8
+ }): JSX.Element;
9
+ export { Spinner };
@@ -0,0 +1,14 @@
1
+ import { type ComponentProps, type JSX } from "solid-js";
2
+ export type SwitchProps = Omit<ComponentProps<`button`>, `value` | `onChange`> & {
3
+ checked?: boolean;
4
+ defaultChecked?: boolean;
5
+ onCheckedChange?: (checked: boolean) => void;
6
+ required?: boolean;
7
+ name?: string;
8
+ value?: string;
9
+ form?: string;
10
+ disabled?: boolean;
11
+ size?: `sm` | `default`;
12
+ };
13
+ declare function Switch(props: SwitchProps): JSX.Element;
14
+ export { Switch };
@@ -0,0 +1,11 @@
1
+ import { type ComponentProps } from "solid-js";
2
+ declare function Table(props: ComponentProps<`table`>): import("solid-js").JSX.Element;
3
+ declare function TableHeader(props: ComponentProps<`thead`>): import("solid-js").JSX.Element;
4
+ declare function TableBody(props: ComponentProps<`tbody`>): import("solid-js").JSX.Element;
5
+ declare function TableFooter(props: ComponentProps<`tfoot`>): import("solid-js").JSX.Element;
6
+ /** A selected row says so with `data-state="selected"` (shadcn's convention). */
7
+ declare function TableRow(props: ComponentProps<`tr`>): import("solid-js").JSX.Element;
8
+ declare function TableHead(props: ComponentProps<`th`>): import("solid-js").JSX.Element;
9
+ declare function TableCell(props: ComponentProps<`td`>): import("solid-js").JSX.Element;
10
+ declare function TableCaption(props: ComponentProps<`caption`>): import("solid-js").JSX.Element;
11
+ export { Table, TableHeader, TableBody, TableFooter, TableRow, TableHead, TableCell, TableCaption };
@@ -0,0 +1,29 @@
1
+ import { type ComponentProps, type JSX } from "solid-js";
2
+ export { SEGMENTED_ITEM, SEGMENTED_LIST, SEGMENTED_ROW, SEGMENTED_ROW_COMPACT, SEGMENTED_TAB } from "@exponential-at/ui/web/primitives";
3
+ type Orientation = `horizontal` | `vertical`;
4
+ type Dir = `ltr` | `rtl`;
5
+ export type TabsProps = Omit<ComponentProps<`div`>, `dir`> & {
6
+ value?: string;
7
+ defaultValue?: string;
8
+ onValueChange?: (value: string) => void;
9
+ orientation?: Orientation;
10
+ dir?: Dir;
11
+ activationMode?: `automatic` | `manual`;
12
+ };
13
+ declare function Tabs(props: TabsProps): JSX.Element;
14
+ export type TabsListProps = ComponentProps<`div`> & {
15
+ loop?: boolean;
16
+ };
17
+ declare function TabsList(props: TabsListProps): JSX.Element;
18
+ export type TabsTriggerProps = Omit<ComponentProps<`button`>, `value`> & {
19
+ value: string;
20
+ disabled?: boolean;
21
+ };
22
+ declare function TabsTrigger(props: TabsTriggerProps): JSX.Element;
23
+ export type TabsContentProps = Omit<ComponentProps<`div`>, `style`> & {
24
+ value: string;
25
+ forceMount?: boolean;
26
+ style?: JSX.CSSProperties;
27
+ };
28
+ declare function TabsContent(props: TabsContentProps): JSX.Element;
29
+ export { Tabs, TabsList, TabsTrigger, TabsContent };
@@ -0,0 +1,5 @@
1
+ import { type ComponentProps } from "solid-js";
2
+ /** React writes a controlled `value` as the textarea's TEXT (its default
3
+ * value) as well as the property: both, here too. */
4
+ declare function Textarea(props: ComponentProps<`textarea`>): import("solid-js").JSX.Element;
5
+ export { Textarea };
@@ -0,0 +1,16 @@
1
+ import { type ComponentProps } from "solid-js";
2
+ import { type ToastStore } from "@exponential-at/ui/web/primitives";
3
+ /** The default store `toast` writes to and `<Toaster />` reads. */
4
+ export declare const toastStore: ToastStore;
5
+ /** `toast("…")`, `toast.success("…", { description, action })`, … on the default store. */
6
+ export declare const toast: import("@exponential-at/ui/web/primitives").ToastFn;
7
+ export type ToasterProps = Omit<ComponentProps<`section`>, `children`> & {
8
+ store?: ToastStore;
9
+ /** The placement input (default: the `touchMaxWidth` media query). */
10
+ touch?: boolean;
11
+ /** The close glyph's label. */
12
+ closeLabel?: string;
13
+ };
14
+ export declare function Toaster(props: ToasterProps): import("solid-js").JSX.Element;
15
+ export { createToastStore, toastStackGeometry, toastPlacement, TOAST_CONSTANTS, TOAST_KINDS, TOAST_TOUCH_QUERY } from "@exponential-at/ui/web/primitives";
16
+ export type { ToastKind, ToastOptions, ToastRecord, ToastStore, ToastAction, ToastPlacement } from "@exponential-at/ui/web/primitives";
@@ -0,0 +1,34 @@
1
+ import { type ComponentProps, type JSX } from "solid-js";
2
+ import { type Align, type OutsideEvent, type Side } from "../behaviors/index.js";
3
+ import { type AsProps } from "../behaviors/dialog.js";
4
+ export interface TooltipProviderProps {
5
+ delayDuration?: number;
6
+ skipDelayDuration?: number;
7
+ disableHoverableContent?: boolean;
8
+ children?: JSX.Element;
9
+ }
10
+ declare function TooltipProvider(props: TooltipProviderProps): JSX.Element;
11
+ export interface TooltipProps {
12
+ open?: boolean;
13
+ defaultOpen?: boolean;
14
+ onOpenChange?: (open: boolean) => void;
15
+ delayDuration?: number;
16
+ disableHoverableContent?: boolean;
17
+ children?: JSX.Element;
18
+ }
19
+ declare function Tooltip(props: TooltipProps): JSX.Element;
20
+ declare function TooltipTrigger(props: AsProps): JSX.Element;
21
+ export type TooltipContentProps = Omit<ComponentProps<`div`>, `style`> & {
22
+ side?: Side;
23
+ align?: Align;
24
+ sideOffset?: number;
25
+ alignOffset?: number;
26
+ collisionPadding?: number;
27
+ container?: HTMLElement | null;
28
+ style?: JSX.CSSProperties;
29
+ "aria-label"?: string;
30
+ onEscapeKeyDown?: (e: KeyboardEvent) => void;
31
+ onPointerDownOutside?: (e: OutsideEvent) => void;
32
+ };
33
+ declare function TooltipContent(props: TooltipContentProps): JSX.Element;
34
+ export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
@@ -0,0 +1 @@
1
+ export { middleTruncate } from "@exponential-at/ui/web/primitives";
@@ -0,0 +1,4 @@
1
+ import { type Accessor } from "solid-js";
2
+ /** Whether `query` matches right now, following changes (React's
3
+ * `useMediaQuery`). Without a `window` or `matchMedia` it answers `false`. */
4
+ export declare function createMediaQuery(query: string): Accessor<boolean>;
@@ -0,0 +1,4 @@
1
+ import { type Accessor } from "solid-js";
2
+ /** Below the mobile breakpoint (React's `useIsMobile`): read synchronously
3
+ * at creation (no first-frame desktop flash), then followed. */
4
+ export declare function createIsMobile(): Accessor<boolean>;
@@ -0,0 +1,20 @@
1
+ import type { JSX } from "solid-js";
2
+ /** Did a downward drag of `dy` px over `dtMs` ms earn a dismissal? Upward
3
+ * drags never do. */
4
+ export declare function shouldDismissSheet(dy: number, dtMs: number): boolean;
5
+ export interface SheetDragHandleProps {
6
+ onPointerDown: (event: PointerEvent & {
7
+ currentTarget: HTMLElement;
8
+ }) => void;
9
+ onPointerMove: (event: PointerEvent) => void;
10
+ onPointerUp: (event: PointerEvent) => void;
11
+ onPointerCancel: (event: PointerEvent) => void;
12
+ style: JSX.CSSProperties;
13
+ }
14
+ /** React's `useSheetDrag`: `panel()` = the sheet's panel element. */
15
+ export declare function createSheetDrag(opts: {
16
+ panel: () => HTMLElement | null | undefined;
17
+ onDismiss: () => void;
18
+ }): {
19
+ handleProps: SheetDragHandleProps;
20
+ };
@@ -0,0 +1,6 @@
1
+ export type StyleInput = Record<string, string | number | null | undefined | boolean>;
2
+ export type SolidStyle = Record<string, string>;
3
+ /** A React style object → Solid's (kebab-case keys, string values). */
4
+ export declare function css(style: StyleInput | undefined | null): SolidStyle | undefined;
5
+ /** A length prop (`width={390}` / `"100%"`) the React way. */
6
+ export declare const px: (v: number | string) => string;
@@ -0,0 +1,99 @@
1
+ import { type JSX } from "solid-js";
2
+ import type { ModeName, ResolvedTheme, ScrollAlign, ThemeIssue, ThemeSource, UiNode, SurfaceCommand } from "@exponential-at/ui";
3
+ import { type DataModel } from "@exponential-at/ui/web";
4
+ import { type SolidExtension } from "./extensions.js";
5
+ import type { HostPlugin } from "./host.js";
6
+ import type { SurfaceState } from "./create-surface.js";
7
+ export type ThemeInput = ResolvedTheme | ThemeSource | string;
8
+ /** What a host can ask of a live surface (`SurfaceCommand`, a11y.json). */
9
+ export interface SurfaceHandle {
10
+ run: (command: SurfaceCommand) => void;
11
+ /** Focus the node (or its first focusable descendant); false if absent. */
12
+ focus: (id: string) => boolean;
13
+ announce: (text: string, live?: `polite` | `assertive`) => void;
14
+ scrollIntoView: (id: string) => boolean;
15
+ /** Item `index` (data order) of the List/Table `id` into view. */
16
+ scrollToIndex: (id: string, index: number, align?: ScrollAlign) => boolean;
17
+ }
18
+ export interface ExponentialSurfaceProps {
19
+ /** The state from `createSurface` (tree + data + templates)… */
20
+ surface?: SurfaceState;
21
+ /** …or a normalized tree (a fixture) with an optional data model… */
22
+ root?: UiNode | null;
23
+ /** …and its LIFTED templates (`ReduceResult.templates`). */
24
+ templates?: Readonly<Record<string, UiNode>>;
25
+ data?: DataModel;
26
+ /** A built-in id, a theme file (resolved against the built-ins) or a
27
+ * resolved theme. */
28
+ theme?: ThemeInput;
29
+ /** `light | dark | system` (default `system`, followed live). */
30
+ mode?: ModeName | `system`;
31
+ density?: `compact` | `default` | `comfortable`;
32
+ contrast?: `normal` | `high` | `system`;
33
+ /** BCP 47 (default `en-US`). */
34
+ locale?: string;
35
+ /** IANA time zone (default the platform's). */
36
+ timeZone?: string;
37
+ /** Built-in string overrides by id (`catalog/strings.json`). */
38
+ strings?: Record<string, string>;
39
+ host?: HostPlugin;
40
+ extensions?: readonly SolidExtension[];
41
+ /** Forced interaction states on every node (the builder's recipe sheet). */
42
+ states?: readonly string[];
43
+ /** Geometry mode: leaves become fixed boxes of the returned size. */
44
+ measure?: (node: UiNode) => {
45
+ w: number;
46
+ h: number;
47
+ } | null;
48
+ /** Default: the locale's direction (`textDirection`). */
49
+ direction?: `ltr` | `rtl`;
50
+ /** The surface width; default = the host's box. */
51
+ width?: number | string;
52
+ /** The height of the VIEWPORT the surface is shown in (the height and
53
+ * orientation conditions); default an explicit inline `style.height`,
54
+ * else unknown. */
55
+ viewportHeight?: number;
56
+ /** An explicit id (defaults to `createUniqueId`); unique per page. */
57
+ id?: string;
58
+ /** Host → surface commands: called once with the surface's handle (React's
59
+ * `handleRef`, as a Solid ref callback). */
60
+ handleRef?: (handle: SurfaceHandle) => void;
61
+ class?: string;
62
+ /** Solid's style form (kebab-case keys). */
63
+ style?: JSX.CSSProperties;
64
+ children?: JSX.Element;
65
+ }
66
+ /** A theme prop, resolved: the theme to paint with and why the asked one
67
+ * was refused (empty when it loaded). */
68
+ export interface ThemeResolution {
69
+ theme: ResolvedTheme;
70
+ issues: ThemeIssue[];
71
+ }
72
+ /** A theme prop → the resolved theme. NEVER throws (round 4). */
73
+ export declare function resolveThemeInput(input: ThemeInput | undefined): ThemeResolution;
74
+ /** The theme a surface runs with: density applied, then the contrast
75
+ * overlays when asked (memoized per theme, so the compiled sheet is too). */
76
+ export declare function surfaceTheme(theme: ResolvedTheme, density: `compact` | `default` | `comfortable`, highContrast: boolean): ResolvedTheme;
77
+ /** What the surface knows of its box. */
78
+ export interface SurfaceBox {
79
+ width: number;
80
+ /** Undefined = unknown. */
81
+ height: number | undefined;
82
+ measured: boolean;
83
+ }
84
+ export interface LayoutInputs {
85
+ breakpoints: Record<string, number>;
86
+ queries: readonly string[];
87
+ viewportHeight: number | undefined;
88
+ hover: boolean;
89
+ reducedMotion: boolean;
90
+ }
91
+ /** The only layout facts that reach the tree: the active breakpoint and the
92
+ * matching JS-evaluated conditions (`data-xq`). */
93
+ export declare function surfaceLayout(box: SurfaceBox, inputs: LayoutInputs): {
94
+ breakpoint: string | null;
95
+ xq: string;
96
+ };
97
+ /** Structural equality, short-circuiting on identity at every level. */
98
+ export declare function sameData(a: unknown, b: unknown): boolean;
99
+ export declare function ExponentialSurface(input: ExponentialSurfaceProps): JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,57 @@
1
1
  {
2
2
  "name": "@exponential-at/ui-solid",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "0.1.0",
4
+ "description": "Exponential UI for SolidJS: the core A2UI catalog painted on plain elements (floating-ui, aria-hidden) with the same DOM, the same compiled stylesheet and the same runtime themes as the React renderer, run through the conformance suite and the web-parity check.",
5
+ "license": "Apache-2.0",
6
+ "homepage": "https://ui.exponential.at",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/Niach/exponential.git",
10
+ "directory": "packages/exponential-ui-solid"
11
+ },
12
+ "keywords": [
13
+ "a2ui",
14
+ "generative-ui",
15
+ "exponential-ui"
16
+ ],
17
+ "type": "module",
18
+ "main": "./dist/index.js",
19
+ "module": "./dist/index.js",
20
+ "types": "./dist/types/index.d.ts",
21
+ "exports": {
22
+ ".": {
23
+ "types": "./dist/types/index.d.ts",
24
+ "import": "./dist/index.js",
25
+ "default": "./dist/index.js"
26
+ },
27
+ "./primitives": {
28
+ "types": "./dist/types/primitives/index.d.ts",
29
+ "import": "./dist/primitives.js",
30
+ "default": "./dist/primitives.js"
31
+ },
32
+ "./styles.css": "./dist/exponential-ui-solid.css",
33
+ "./package.json": "./package.json"
34
+ },
35
+ "files": [
36
+ "dist",
37
+ "README.md",
38
+ "LICENSE",
39
+ "NOTICE"
40
+ ],
41
+ "sideEffects": [
42
+ "*.css"
43
+ ],
44
+ "dependencies": {
45
+ "@exponential-at/ui": "^0.1.0",
46
+ "@floating-ui/dom": "^1.7.0",
47
+ "aria-hidden": "^1.2.6",
48
+ "lucide-solid": "0.544.0"
49
+ },
50
+ "peerDependencies": {
51
+ "solid-js": "^1.9.0"
52
+ },
53
+ "publishConfig": {
54
+ "access": "public",
55
+ "provenance": true
56
+ }
57
+ }