@agent-native/toolkit 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -3
- package/agent-native.eject.json +71 -0
- package/dist/chat-history/ChatHistoryRail.d.ts +33 -0
- package/dist/chat-history/ChatHistoryRail.d.ts.map +1 -0
- package/dist/chat-history/ChatHistoryRail.js +35 -0
- package/dist/chat-history/ChatHistoryRail.js.map +1 -0
- package/dist/chat-history/ChatHistoryRail.spec.d.ts +2 -0
- package/dist/chat-history/ChatHistoryRail.spec.d.ts.map +1 -0
- package/dist/chat-history/ChatHistoryRail.spec.js +157 -0
- package/dist/chat-history/ChatHistoryRail.spec.js.map +1 -0
- package/dist/chat-history/index.d.ts +2 -0
- package/dist/chat-history/index.d.ts.map +1 -1
- package/dist/chat-history/index.js +2 -0
- package/dist/chat-history/index.js.map +1 -1
- package/dist/chat-history/useChatHistoryRailController.d.ts +26 -0
- package/dist/chat-history/useChatHistoryRailController.d.ts.map +1 -0
- package/dist/chat-history/useChatHistoryRailController.js +36 -0
- package/dist/chat-history/useChatHistoryRailController.js.map +1 -0
- package/dist/chat-history/useChatHistoryRailController.spec.d.ts +2 -0
- package/dist/chat-history/useChatHistoryRailController.spec.d.ts.map +1 -0
- package/dist/chat-history/useChatHistoryRailController.spec.js +101 -0
- package/dist/chat-history/useChatHistoryRailController.spec.js.map +1 -0
- package/dist/chat-history.css +61 -0
- package/dist/composer/ComposerPlusMenu.js +1 -1
- package/dist/composer/ComposerPlusMenu.js.map +1 -1
- package/dist/composer/PromptComposer.d.ts.map +1 -1
- package/dist/composer/PromptComposer.js +22 -4
- package/dist/composer/PromptComposer.js.map +1 -1
- package/dist/composer/RealtimeVoiceMode.d.ts +5 -1
- package/dist/composer/RealtimeVoiceMode.d.ts.map +1 -1
- package/dist/composer/RealtimeVoiceMode.js +27 -8
- package/dist/composer/RealtimeVoiceMode.js.map +1 -1
- package/dist/composer/RealtimeVoiceMode.spec.js +51 -11
- package/dist/composer/RealtimeVoiceMode.spec.js.map +1 -1
- package/dist/composer/VoiceButton.d.ts +2 -0
- package/dist/composer/VoiceButton.d.ts.map +1 -1
- package/dist/composer/VoiceButton.js +33 -1
- package/dist/composer/VoiceButton.js.map +1 -1
- package/dist/composer/VoiceButton.spec.js +9 -1
- package/dist/composer/VoiceButton.spec.js.map +1 -1
- package/dist/composer/realtime-voice-audio-level.d.ts.map +1 -1
- package/dist/composer/realtime-voice-audio-level.js +2 -1
- package/dist/composer/realtime-voice-audio-level.js.map +1 -1
- package/dist/composer/realtime-voice-audio-level.spec.js +7 -0
- package/dist/composer/realtime-voice-audio-level.spec.js.map +1 -1
- package/dist/composer/useRealtimeVoiceMode.d.ts +7 -0
- package/dist/composer/useRealtimeVoiceMode.d.ts.map +1 -1
- package/dist/composer/useRealtimeVoiceMode.js +95 -23
- package/dist/composer/useRealtimeVoiceMode.js.map +1 -1
- package/dist/composer/useRealtimeVoiceMode.spec.js +58 -9
- package/dist/composer/useRealtimeVoiceMode.spec.js.map +1 -1
- package/dist/conformance/__fixtures__/css-in-js-adapter.d.ts +7 -0
- package/dist/conformance/__fixtures__/css-in-js-adapter.d.ts.map +1 -0
- package/dist/conformance/__fixtures__/css-in-js-adapter.js +84 -0
- package/dist/conformance/__fixtures__/css-in-js-adapter.js.map +1 -0
- package/dist/conformance/conformance.spec.d.ts +2 -0
- package/dist/conformance/conformance.spec.d.ts.map +1 -0
- package/dist/conformance/conformance.spec.js +58 -0
- package/dist/conformance/conformance.spec.js.map +1 -0
- package/dist/conformance/index.d.ts +4 -0
- package/dist/conformance/index.d.ts.map +1 -0
- package/dist/conformance/index.js +4 -0
- package/dist/conformance/index.js.map +1 -0
- package/dist/conformance/runner.d.ts +12 -0
- package/dist/conformance/runner.d.ts.map +1 -0
- package/dist/conformance/runner.js +441 -0
- package/dist/conformance/runner.js.map +1 -0
- package/dist/conformance/types.d.ts +26 -0
- package/dist/conformance/types.d.ts.map +1 -0
- package/dist/conformance/types.js +13 -0
- package/dist/conformance/types.js.map +1 -0
- package/dist/conformance/version.d.ts +6 -0
- package/dist/conformance/version.d.ts.map +1 -0
- package/dist/conformance/version.js +14 -0
- package/dist/conformance/version.js.map +1 -0
- package/dist/design-system/components.d.ts +64 -0
- package/dist/design-system/components.d.ts.map +1 -0
- package/dist/design-system/components.js +50 -0
- package/dist/design-system/components.js.map +1 -0
- package/dist/design-system/context.d.ts +11 -0
- package/dist/design-system/context.d.ts.map +1 -0
- package/dist/design-system/context.js +17 -0
- package/dist/design-system/context.js.map +1 -0
- package/dist/design-system/default-adapter.d.ts +3 -0
- package/dist/design-system/default-adapter.d.ts.map +1 -0
- package/dist/design-system/default-adapter.js +166 -0
- package/dist/design-system/default-adapter.js.map +1 -0
- package/dist/design-system/default-adapter.spec.d.ts +2 -0
- package/dist/design-system/default-adapter.spec.d.ts.map +1 -0
- package/dist/design-system/default-adapter.spec.js +96 -0
- package/dist/design-system/default-adapter.spec.js.map +1 -0
- package/dist/design-system/definition.d.ts +9 -0
- package/dist/design-system/definition.d.ts.map +1 -0
- package/dist/design-system/definition.js +4 -0
- package/dist/design-system/definition.js.map +1 -0
- package/dist/design-system/design-system.spec.d.ts +2 -0
- package/dist/design-system/design-system.spec.d.ts.map +1 -0
- package/dist/design-system/design-system.spec.js +121 -0
- package/dist/design-system/design-system.spec.js.map +1 -0
- package/dist/design-system/error-boundary.d.ts +18 -0
- package/dist/design-system/error-boundary.d.ts.map +1 -0
- package/dist/design-system/error-boundary.js +16 -0
- package/dist/design-system/error-boundary.js.map +1 -0
- package/dist/design-system/index.d.ts +8 -0
- package/dist/design-system/index.d.ts.map +1 -0
- package/dist/design-system/index.js +8 -0
- package/dist/design-system/index.js.map +1 -0
- package/dist/design-system/theme.d.ts +30 -0
- package/dist/design-system/theme.d.ts.map +1 -0
- package/dist/design-system/theme.js +95 -0
- package/dist/design-system/theme.js.map +1 -0
- package/dist/design-system/theme.spec.d.ts +2 -0
- package/dist/design-system/theme.spec.d.ts.map +1 -0
- package/dist/design-system/theme.spec.js +43 -0
- package/dist/design-system/theme.spec.js.map +1 -0
- package/dist/design-system/types.d.ts +288 -0
- package/dist/design-system/types.d.ts.map +1 -0
- package/dist/design-system/types.js +2 -0
- package/dist/design-system/types.js.map +1 -0
- package/dist/provider.d.ts +4 -3
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +46 -4
- package/dist/provider.js.map +1 -1
- package/dist/styles.css +35 -0
- package/dist/ui/button.d.ts +5 -0
- package/dist/ui/button.d.ts.map +1 -1
- package/dist/ui/button.js +25 -4
- package/dist/ui/button.js.map +1 -1
- package/dist/ui/dialog.d.ts +4 -0
- package/dist/ui/dialog.d.ts.map +1 -1
- package/dist/ui/dialog.js +2 -2
- package/dist/ui/dialog.js.map +1 -1
- package/dist/ui/popover.d.ts +1 -0
- package/dist/ui/popover.d.ts.map +1 -1
- package/dist/ui/popover.js +2 -2
- package/dist/ui/popover.js.map +1 -1
- package/dist/ui/select.d.ts +3 -1
- package/dist/ui/select.d.ts.map +1 -1
- package/dist/ui/select.js +1 -1
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/sidebar.d.ts +6 -2
- package/dist/ui/sidebar.d.ts.map +1 -1
- package/dist/ui/sidebar.js +12 -15
- package/dist/ui/sidebar.js.map +1 -1
- package/dist/ui/tooltip.d.ts +3 -1
- package/dist/ui/tooltip.d.ts.map +1 -1
- package/dist/ui/tooltip.js +2 -2
- package/dist/ui/tooltip.js.map +1 -1
- package/package.json +31 -1
- package/src/chat-history/ChatHistoryRail.spec.tsx +312 -0
- package/src/chat-history/ChatHistoryRail.tsx +150 -0
- package/src/chat-history/index.ts +14 -0
- package/src/chat-history/useChatHistoryRailController.spec.tsx +131 -0
- package/src/chat-history/useChatHistoryRailController.ts +76 -0
- package/src/chat-history.css +61 -0
- package/src/composer/ComposerPlusMenu.tsx +11 -8
- package/src/composer/PromptComposer.tsx +27 -6
- package/src/composer/RealtimeVoiceMode.spec.tsx +116 -11
- package/src/composer/RealtimeVoiceMode.tsx +106 -36
- package/src/composer/VoiceButton.spec.ts +17 -1
- package/src/composer/VoiceButton.tsx +49 -0
- package/src/composer/realtime-voice-audio-level.spec.ts +15 -0
- package/src/composer/realtime-voice-audio-level.ts +2 -1
- package/src/composer/useRealtimeVoiceMode.spec.ts +82 -8
- package/src/composer/useRealtimeVoiceMode.tsx +112 -25
- package/src/conformance/__fixtures__/css-in-js-adapter.tsx +401 -0
- package/src/conformance/conformance.spec.tsx +83 -0
- package/src/conformance/index.ts +3 -0
- package/src/conformance/runner.tsx +710 -0
- package/src/conformance/types.ts +45 -0
- package/src/conformance/version.ts +22 -0
- package/src/design-system/components.tsx +146 -0
- package/src/design-system/context.tsx +31 -0
- package/src/design-system/default-adapter.spec.tsx +143 -0
- package/src/design-system/default-adapter.tsx +915 -0
- package/src/design-system/definition.ts +14 -0
- package/src/design-system/design-system.spec.tsx +183 -0
- package/src/design-system/error-boundary.tsx +37 -0
- package/src/design-system/index.ts +7 -0
- package/src/design-system/theme.spec.ts +61 -0
- package/src/design-system/theme.ts +145 -0
- package/src/design-system/types.ts +363 -0
- package/src/provider.tsx +98 -5
- package/src/styles.css +35 -0
- package/src/ui/button.tsx +95 -6
- package/src/ui/dialog.tsx +48 -23
- package/src/ui/popover.tsx +16 -2
- package/src/ui/select.tsx +7 -3
- package/src/ui/sidebar.tsx +47 -48
- package/src/ui/tooltip.tsx +7 -3
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useDesignSystemComponent } from "./context.js";
|
|
3
|
+
import { defaultDesignSystemComponents } from "./default-adapter.js";
|
|
4
|
+
import { DesignSystemErrorBoundary } from "./error-boundary.js";
|
|
5
|
+
function createComponent(name, DefaultComponent) {
|
|
6
|
+
function DesignSystemComponent(props) {
|
|
7
|
+
const CustomComponent = useDesignSystemComponent(name);
|
|
8
|
+
const fallback = _jsx(DefaultComponent, { ...props });
|
|
9
|
+
if (!CustomComponent ||
|
|
10
|
+
CustomComponent === DefaultComponent ||
|
|
11
|
+
CustomComponent === DesignSystemComponent) {
|
|
12
|
+
return fallback;
|
|
13
|
+
}
|
|
14
|
+
return (_jsx(DesignSystemErrorBoundary, { component: name, fallback: fallback, children: _jsx(CustomComponent, { ...props }) }));
|
|
15
|
+
}
|
|
16
|
+
DesignSystemComponent.displayName = `DesignSystem.${name}`;
|
|
17
|
+
return DesignSystemComponent;
|
|
18
|
+
}
|
|
19
|
+
export const ActionButton = createComponent("ActionButton", defaultDesignSystemComponents.ActionButton);
|
|
20
|
+
export const IconButton = createComponent("IconButton", defaultDesignSystemComponents.IconButton);
|
|
21
|
+
export const TextField = createComponent("TextField", defaultDesignSystemComponents.TextField);
|
|
22
|
+
export const TextArea = createComponent("TextArea", defaultDesignSystemComponents.TextArea);
|
|
23
|
+
export const Spinner = createComponent("Spinner", defaultDesignSystemComponents.Spinner);
|
|
24
|
+
export const Skeleton = createComponent("Skeleton", defaultDesignSystemComponents.Skeleton);
|
|
25
|
+
export const Status = createComponent("Status", defaultDesignSystemComponents.Status);
|
|
26
|
+
export const Surface = createComponent("Surface", defaultDesignSystemComponents.Surface);
|
|
27
|
+
export const Avatar = createComponent("Avatar", defaultDesignSystemComponents.Avatar);
|
|
28
|
+
export const Tooltip = createComponent("Tooltip", defaultDesignSystemComponents.Tooltip);
|
|
29
|
+
export const Menu = createComponent("Menu", defaultDesignSystemComponents.Menu);
|
|
30
|
+
export const Popover = createComponent("Popover", defaultDesignSystemComponents.Popover);
|
|
31
|
+
export const Dialog = createComponent("Dialog", defaultDesignSystemComponents.Dialog);
|
|
32
|
+
export const Checkbox = createComponent("Checkbox", defaultDesignSystemComponents.Checkbox);
|
|
33
|
+
export const Switch = createComponent("Switch", defaultDesignSystemComponents.Switch);
|
|
34
|
+
export function Picker(props) {
|
|
35
|
+
const CustomComponent = useDesignSystemComponent("Picker");
|
|
36
|
+
const DefaultComponent = defaultDesignSystemComponents.Picker;
|
|
37
|
+
const fallback = _jsx(DefaultComponent, { ...props });
|
|
38
|
+
if (!CustomComponent || CustomComponent === DefaultComponent)
|
|
39
|
+
return fallback;
|
|
40
|
+
return (_jsx(DesignSystemErrorBoundary, { component: "Picker", fallback: fallback, children: _jsx(CustomComponent, { ...props }) }));
|
|
41
|
+
}
|
|
42
|
+
export function Tabs(props) {
|
|
43
|
+
const CustomComponent = useDesignSystemComponent("Tabs");
|
|
44
|
+
const DefaultComponent = defaultDesignSystemComponents.Tabs;
|
|
45
|
+
const fallback = _jsx(DefaultComponent, { ...props });
|
|
46
|
+
if (!CustomComponent || CustomComponent === DefaultComponent)
|
|
47
|
+
return fallback;
|
|
48
|
+
return (_jsx(DesignSystemErrorBoundary, { component: "Tabs", fallback: fallback, children: _jsx(CustomComponent, { ...props }) }));
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=components.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/design-system/components.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DesignSystemDefinition } from "./definition.js";
|
|
2
|
+
import type { DesignSystemComponentName, DesignSystemComponents } from "./types.js";
|
|
3
|
+
export interface DesignSystemContextValue {
|
|
4
|
+
definition?: DesignSystemDefinition;
|
|
5
|
+
legacyActionButton?: DesignSystemComponents["ActionButton"];
|
|
6
|
+
}
|
|
7
|
+
export declare const DesignSystemContext: import("react").Context<DesignSystemContextValue>;
|
|
8
|
+
export declare const LegacyButtonRenderContext: import("react").Context<boolean>;
|
|
9
|
+
export declare function useDesignSystem(): DesignSystemDefinition | undefined;
|
|
10
|
+
export declare function useDesignSystemComponent<Name extends DesignSystemComponentName>(name: Name): DesignSystemComponents[Name] | undefined;
|
|
11
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/design-system/context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,wBAAwB;IACvC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,kBAAkB,CAAC,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAC;CAC7D;AAED,eAAO,MAAM,mBAAmB,mDAA8C,CAAC;AAC/E,eAAO,MAAM,yBAAyB,kCAAuB,CAAC;AAE9D,wBAAgB,eAAe,IAAI,sBAAsB,GAAG,SAAS,CAEpE;AAED,wBAAgB,wBAAwB,CACtC,IAAI,SAAS,yBAAyB,EACtC,IAAI,EAAE,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,GAAG,SAAS,CAQtD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
export const DesignSystemContext = createContext({});
|
|
3
|
+
export const LegacyButtonRenderContext = createContext(false);
|
|
4
|
+
export function useDesignSystem() {
|
|
5
|
+
return useContext(DesignSystemContext).definition;
|
|
6
|
+
}
|
|
7
|
+
export function useDesignSystemComponent(name) {
|
|
8
|
+
const context = useContext(DesignSystemContext);
|
|
9
|
+
const component = context.definition?.components?.[name];
|
|
10
|
+
if (component)
|
|
11
|
+
return component;
|
|
12
|
+
if (name === "ActionButton" && context.legacyActionButton) {
|
|
13
|
+
return context.legacyActionButton;
|
|
14
|
+
}
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/design-system/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAalD,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAA2B,EAAE,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;AAE9D,MAAM,UAAU,eAAe;IAC7B,OAAO,UAAU,CAAC,mBAAmB,CAAC,CAAC,UAAU,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAEtC,IAAU;IACV,MAAM,OAAO,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;IACzD,IAAI,SAAS;QAAE,OAAO,SAAyC,CAAC;IAChE,IAAI,IAAI,KAAK,cAAc,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAC1D,OAAO,OAAO,CAAC,kBAAkD,CAAC;IACpE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-adapter.d.ts","sourceRoot":"","sources":["../../src/design-system/default-adapter.tsx"],"names":[],"mappings":"AA+DA,OAAO,KAAK,EAAE,sBAAsB,EAAY,MAAM,YAAY,CAAC;AAi0BnE,eAAO,MAAM,6BAA6B,EAAE,sBAkB3C,CAAC"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { IconSearch } from "@tabler/icons-react";
|
|
3
|
+
import { createElement, } from "react";
|
|
4
|
+
import { Avatar, AvatarFallback, AvatarImage } from "../ui/avatar.js";
|
|
5
|
+
import { Badge } from "../ui/badge.js";
|
|
6
|
+
import { ButtonBase } from "../ui/button.js";
|
|
7
|
+
import { Card } from "../ui/card.js";
|
|
8
|
+
import { Checkbox as DefaultCheckboxPrimitive } from "../ui/checkbox.js";
|
|
9
|
+
import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, } from "../ui/dialog.js";
|
|
10
|
+
import { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, } from "../ui/dropdown-menu.js";
|
|
11
|
+
import { Input } from "../ui/input.js";
|
|
12
|
+
import { Popover, PopoverContent, PopoverTrigger } from "../ui/popover.js";
|
|
13
|
+
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "../ui/select.js";
|
|
14
|
+
import { Skeleton as DefaultSkeletonPrimitive } from "../ui/skeleton.js";
|
|
15
|
+
import { Spinner as DefaultSpinnerPrimitive } from "../ui/spinner.js";
|
|
16
|
+
import { Switch as DefaultSwitchPrimitive } from "../ui/switch.js";
|
|
17
|
+
import { Tabs as DefaultTabsPrimitive, TabsContent, TabsList, TabsTrigger, } from "../ui/tabs.js";
|
|
18
|
+
import { Textarea } from "../ui/textarea.js";
|
|
19
|
+
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, } from "../ui/tooltip.js";
|
|
20
|
+
import { cn } from "../utils.js";
|
|
21
|
+
function buttonVariant(intent = "neutral", emphasis = "solid") {
|
|
22
|
+
if (emphasis === "ghost")
|
|
23
|
+
return "ghost";
|
|
24
|
+
if (emphasis === "outline")
|
|
25
|
+
return "outline";
|
|
26
|
+
if (intent === "primary")
|
|
27
|
+
return "default";
|
|
28
|
+
if (intent === "danger")
|
|
29
|
+
return "destructive";
|
|
30
|
+
return "secondary";
|
|
31
|
+
}
|
|
32
|
+
function buttonSize(size = "default") {
|
|
33
|
+
if (size === "compact")
|
|
34
|
+
return "sm";
|
|
35
|
+
if (size === "large")
|
|
36
|
+
return "lg";
|
|
37
|
+
return "default";
|
|
38
|
+
}
|
|
39
|
+
const DefaultActionButton = ({ children, intent, emphasis, size, pending, disabled, type = "button", leadingIcon, trailingIcon, onPress, elementRef, ...props }) => (_jsxs(ButtonBase, { ...props, ref: elementRef, type: type, variant: buttonVariant(intent, emphasis), size: buttonSize(size), disabled: disabled || pending, onClick: (event) => onPress?.(event), children: [pending ? _jsx(DefaultSpinnerPrimitive, { "aria-hidden": "true" }) : leadingIcon, children, trailingIcon] }));
|
|
40
|
+
const DefaultIconButton = ({ label, icon, intent, emphasis = "ghost", size, pending, disabled, type = "button", onPress, elementRef, className, ...props }) => (_jsx(ButtonBase, { ...props, ref: elementRef, type: type, variant: buttonVariant(intent, emphasis), size: "icon", className: cn(size === "compact" && "h-8 w-8", size === "large" && "h-12 w-12", className), disabled: disabled || pending, onClick: (event) => onPress?.(event), "aria-label": label, "data-size": size, children: pending ? _jsx(DefaultSpinnerPrimitive, { "aria-hidden": "true" }) : icon }));
|
|
41
|
+
function FieldShell({ label, description, errorMessage, className, style, children, }) {
|
|
42
|
+
return (_jsxs("label", { className: cn("grid gap-1.5", className), style: style, children: [label ? _jsx("span", { className: "text-sm font-medium", children: label }) : null, children, errorMessage ? (_jsx("span", { className: "text-xs text-destructive", role: "alert", children: errorMessage })) : description ? (_jsx("span", { className: "text-xs text-muted-foreground", children: description })) : null] }));
|
|
43
|
+
}
|
|
44
|
+
const DefaultTextField = ({ value, onChange, label, description, errorMessage, invalid, inputRef, leadingContent, trailingContent, className, style, onBlur, onFocus, onKeyDown, ...props }) => (_jsx(FieldShell, { label: label, description: description, errorMessage: errorMessage, className: className, style: style, children: _jsxs("div", { className: "flex items-center gap-2", children: [leadingContent, _jsx(Input, { ...props, ref: inputRef, value: value, "aria-invalid": invalid || undefined, onChange: (event) => onChange(event.currentTarget.value), onBlur: onBlur, onFocus: onFocus, onKeyDown: onKeyDown }), trailingContent] }) }));
|
|
45
|
+
const DefaultTextArea = ({ value, onChange, label, description, errorMessage, invalid, textAreaRef, className, style, onBlur, onFocus, onKeyDown, ...props }) => (_jsx(FieldShell, { label: label, description: description, errorMessage: errorMessage, className: className, style: style, children: _jsx(Textarea, { ...props, ref: textAreaRef, value: value, "aria-invalid": invalid || undefined, onChange: (event) => onChange(event.currentTarget.value), onBlur: onBlur, onFocus: onFocus, onKeyDown: onKeyDown }) }));
|
|
46
|
+
const DefaultSpinner = ({ label, size, className, ...props }) => (_jsx(DefaultSpinnerPrimitive, { ...props, "aria-label": label, className: cn(size === "compact" && "size-3", size === "large" && "size-5", className), "data-size": size, role: label ? "status" : undefined }));
|
|
47
|
+
const DefaultSkeleton = ({ width, height, shape = "rectangle", className, style, ...props }) => (_jsx(DefaultSkeletonPrimitive, { ...props, "aria-hidden": "true", className: cn(shape === "line" && "rounded-sm", shape === "rectangle" && "rounded-md", shape === "circle" && "rounded-full", className), style: { width, height, ...style }, "data-shape": shape }));
|
|
48
|
+
const DefaultStatus = ({ children, tone = "neutral", icon, size, className, ...props }) => (_jsxs(Badge, { ...props, className: cn(size === "compact" && "text-xs", size === "large" && "px-3 py-1 text-sm", className), variant: tone === "danger" ? "destructive" : "secondary", "data-tone": tone, "data-size": size, children: [icon, children] }));
|
|
49
|
+
const DefaultSurface = ({ children, as = "div", elevation = "low", padding = "default", interactive, onPress, className, ...props }) => {
|
|
50
|
+
const onKeyDown = (event) => {
|
|
51
|
+
if (!interactive || (event.key !== "Enter" && event.key !== " "))
|
|
52
|
+
return;
|
|
53
|
+
event.preventDefault();
|
|
54
|
+
onPress?.(event);
|
|
55
|
+
};
|
|
56
|
+
const elementProps = {
|
|
57
|
+
...props,
|
|
58
|
+
className: cn("rounded-lg border bg-card text-card-foreground", elevation === "none" && "shadow-none", elevation === "low" && "shadow-sm", elevation === "medium" && "shadow-md", padding === "compact" && "p-3", padding === "default" && "p-4", padding === "spacious" && "p-6", interactive && "cursor-pointer", className),
|
|
59
|
+
onClick: (event) => onPress?.(event),
|
|
60
|
+
onKeyDown,
|
|
61
|
+
role: interactive ? "button" : undefined,
|
|
62
|
+
tabIndex: interactive ? 0 : undefined,
|
|
63
|
+
children,
|
|
64
|
+
};
|
|
65
|
+
if (as === "div")
|
|
66
|
+
return _jsx(Card, { ...elementProps });
|
|
67
|
+
return createElement(as, elementProps);
|
|
68
|
+
};
|
|
69
|
+
const DefaultAvatar = ({ name, src, fallback, size, status, imageRef, className, ...props }) => (_jsxs(Avatar, { ...props, className: cn(size === "compact" && "h-8 w-8", size === "default" && "h-10 w-10", size === "large" && "h-12 w-12", className), "data-size": size, "data-status": status, children: [src ? _jsx(AvatarImage, { ref: imageRef, src: src, alt: name }) : null, _jsx(AvatarFallback, { children: fallback ?? name.slice(0, 2).toUpperCase() }), status ? (_jsx("span", { "aria-label": status, className: cn("absolute bottom-0 end-0 h-2.5 w-2.5 rounded-full border-2 border-background", status === "online" && "bg-green-500", status === "offline" && "bg-muted-foreground", status === "busy" && "bg-destructive", status === "away" && "bg-yellow-500"), role: "img" })) : null] }));
|
|
70
|
+
const DefaultTooltip = ({ trigger, content, open, defaultOpen, onOpenChange, delayMs, disabled, portalContainer, placement = "top", align = "center", collisionPadding, className, style, }) => {
|
|
71
|
+
if (disabled)
|
|
72
|
+
return trigger;
|
|
73
|
+
return (_jsx(TooltipProvider, { delayDuration: delayMs, children: _jsxs(Tooltip, { open: open, defaultOpen: defaultOpen, onOpenChange: onOpenChange, children: [_jsx(TooltipTrigger, { asChild: true, children: trigger }), _jsx(TooltipContent, { container: portalContainer, side: placement, align: align, collisionPadding: collisionPadding, className: className, style: style, children: content })] }) }));
|
|
74
|
+
};
|
|
75
|
+
function DefaultMenuItems({ items, onAction, closeOnAction, }) {
|
|
76
|
+
return items.map((item) => item.children?.length ? (_jsxs(DropdownMenuSub, { children: [_jsxs(DropdownMenuSubTrigger, { disabled: item.disabled, children: [item.icon, item.label] }), _jsx(DropdownMenuSubContent, { children: _jsx(DefaultMenuItems, { items: item.children, onAction: onAction, closeOnAction: closeOnAction }) })] }, item.id)) : item.selected !== undefined ? (_jsxs(DropdownMenuCheckboxItem, { checked: item.selected, disabled: item.disabled, onSelect: (event) => {
|
|
77
|
+
if (!closeOnAction)
|
|
78
|
+
event.preventDefault();
|
|
79
|
+
onAction(item.id);
|
|
80
|
+
}, className: item.intent === "danger" ? "text-destructive" : undefined, children: [item.icon, _jsx("span", { className: "min-w-0 flex-1", children: item.label }), item.shortcut ? (_jsx(DropdownMenuShortcut, { children: item.shortcut })) : null] }, item.id)) : (_jsxs(DropdownMenuItem, { disabled: item.disabled, onSelect: (event) => {
|
|
81
|
+
if (!closeOnAction)
|
|
82
|
+
event.preventDefault();
|
|
83
|
+
onAction(item.id);
|
|
84
|
+
}, className: item.intent === "danger" ? "text-destructive" : undefined, children: [item.icon, _jsx("span", { className: "min-w-0 flex-1", children: item.label }), item.shortcut ? (_jsx(DropdownMenuShortcut, { children: item.shortcut })) : null] }, item.id)));
|
|
85
|
+
}
|
|
86
|
+
const DefaultMenu = ({ trigger, items, sections, open, defaultOpen, onOpenChange, onAction, portalContainer, placement = "bottom", align = "start", collisionPadding, className, style, closeOnAction = true, }) => (_jsxs(DropdownMenu, { open: open, defaultOpen: defaultOpen, onOpenChange: onOpenChange, children: [_jsx(DropdownMenuTrigger, { asChild: true, children: trigger }), _jsx(DropdownMenuContent, { container: portalContainer, side: placement, align: align, collisionPadding: collisionPadding, className: className, style: style, children: sections ? (sections.map((section, index) => (_jsxs("div", { children: [index > 0 ? _jsx(DropdownMenuSeparator, {}) : null, section.label ? (_jsx(DropdownMenuLabel, { children: section.label })) : null, _jsx(DefaultMenuItems, { items: section.items, onAction: onAction, closeOnAction: closeOnAction })] }, section.id)))) : items ? (_jsx(DefaultMenuItems, { items: items, onAction: onAction, closeOnAction: closeOnAction })) : null })] }));
|
|
87
|
+
const DefaultPopover = ({ trigger, children, open, defaultOpen, onOpenChange, modal, dismissible = true, portalContainer, placement = "bottom", align = "center", collisionPadding, className, style, }) => (_jsxs(Popover, { open: open, defaultOpen: defaultOpen, onOpenChange: onOpenChange, modal: modal, children: [_jsx(PopoverTrigger, { asChild: true, children: trigger }), _jsx(PopoverContent, { container: portalContainer, side: placement, align: align, collisionPadding: collisionPadding, className: className, style: style, onEscapeKeyDown: (event) => {
|
|
88
|
+
if (!dismissible)
|
|
89
|
+
event.preventDefault();
|
|
90
|
+
}, onInteractOutside: (event) => {
|
|
91
|
+
if (!dismissible)
|
|
92
|
+
event.preventDefault();
|
|
93
|
+
}, children: children })] }));
|
|
94
|
+
const DefaultDialog = ({ open, onOpenChange, title, description, children, footer, trigger, size = "medium", dismissible = true, closeLabel, initialFocusRef, restoreFocusRef, portalContainer, className, style, }) => (_jsxs(Dialog, { open: open, onOpenChange: onOpenChange, children: [trigger ? _jsx(DialogTrigger, { asChild: true, children: trigger }) : null, _jsxs(DialogContent, { container: portalContainer, hideClose: !dismissible, closeLabel: closeLabel, style: style, className: cn(size === "small" && "max-w-sm", size === "medium" && "max-w-lg", size === "large" && "max-w-2xl", size === "fullscreen" &&
|
|
95
|
+
"inset-0 h-[100dvh] max-h-none w-full max-w-none translate-x-0 translate-y-0 rounded-none", className), "data-size": size, onOpenAutoFocus: (event) => {
|
|
96
|
+
if (!initialFocusRef?.current)
|
|
97
|
+
return;
|
|
98
|
+
event.preventDefault();
|
|
99
|
+
initialFocusRef.current.focus();
|
|
100
|
+
}, onCloseAutoFocus: (event) => {
|
|
101
|
+
if (!restoreFocusRef?.current)
|
|
102
|
+
return;
|
|
103
|
+
event.preventDefault();
|
|
104
|
+
restoreFocusRef.current.focus();
|
|
105
|
+
}, onEscapeKeyDown: (event) => {
|
|
106
|
+
if (!dismissible)
|
|
107
|
+
event.preventDefault();
|
|
108
|
+
}, onInteractOutside: (event) => {
|
|
109
|
+
if (!dismissible)
|
|
110
|
+
event.preventDefault();
|
|
111
|
+
}, children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { children: title }), description ? (_jsx(DialogDescription, { children: description })) : null] }), children, footer ? _jsx(DialogFooter, { children: footer }) : null] })] }));
|
|
112
|
+
const DefaultPicker = ({ mode, options, value, onChange, label, description, errorMessage, placeholder, searchValue = "", onSearchChange, open, onOpenChange, emptyContent, loadingContent, loading, required, disabled, invalid, pickerRef, portalContainer, className, style, ...props }) => {
|
|
113
|
+
const selected = options.find((option) => option.value === value);
|
|
114
|
+
const filtered = mode === "combobox" && searchValue
|
|
115
|
+
? options.filter((option) => [option.textValue, option.label, ...(option.keywords ?? [])]
|
|
116
|
+
.filter((part) => typeof part === "string")
|
|
117
|
+
.join(" ")
|
|
118
|
+
.toLowerCase()
|
|
119
|
+
.includes(searchValue.toLowerCase()))
|
|
120
|
+
: options;
|
|
121
|
+
if (mode === "select") {
|
|
122
|
+
return (_jsx(FieldShell, { label: label, description: description, errorMessage: errorMessage, className: className, style: style, children: _jsxs(Select, { value: value == null ? undefined : String(value), open: open, onOpenChange: onOpenChange, onValueChange: (next) => {
|
|
123
|
+
const option = options.find((candidate) => String(candidate.value) === next);
|
|
124
|
+
onChange(option?.value ?? null);
|
|
125
|
+
}, required: required, disabled: disabled, children: [_jsx(SelectTrigger, { ...props, ref: pickerRef, "aria-invalid": invalid || undefined, children: _jsx(SelectValue, { placeholder: placeholder, children: selected?.label }) }), _jsx(SelectContent, { container: portalContainer, children: loading
|
|
126
|
+
? loadingContent
|
|
127
|
+
: options.length
|
|
128
|
+
? options.map((option) => (_jsx(SelectItem, { value: String(option.value), disabled: option.disabled, children: option.label }, option.value)))
|
|
129
|
+
: emptyContent })] }) }));
|
|
130
|
+
}
|
|
131
|
+
return (_jsx(FieldShell, { label: label, description: description, errorMessage: errorMessage, className: className, style: style, children: _jsxs(Popover, { open: open, onOpenChange: onOpenChange, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(ButtonBase, { ref: pickerRef, type: "button", variant: "outline", disabled: disabled, "aria-invalid": invalid || undefined, children: selected?.label ?? placeholder }) }), _jsxs(PopoverContent, { container: portalContainer, className: "w-72 p-2", children: [_jsxs("label", { className: "flex items-center gap-2 border-b px-2 pb-2", children: [_jsx(IconSearch, { className: "size-4 text-muted-foreground" }), _jsx(Input, { value: searchValue, onChange: (event) => onSearchChange?.(event.currentTarget.value), className: "h-8 border-0 p-0 shadow-none focus-visible:ring-0" })] }), _jsx("div", { className: "max-h-64 overflow-auto py-1", role: "listbox", children: loading
|
|
132
|
+
? loadingContent
|
|
133
|
+
: filtered.length
|
|
134
|
+
? filtered.map((option) => (_jsxs("button", { type: "button", role: "option", "aria-selected": option.value === value, disabled: option.disabled, className: "flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-start text-sm hover:bg-accent disabled:opacity-50", onClick: () => {
|
|
135
|
+
onChange(option.value);
|
|
136
|
+
onOpenChange?.(false);
|
|
137
|
+
}, children: [option.icon, _jsx("span", { children: option.label })] }, option.value)))
|
|
138
|
+
: emptyContent })] })] }) }));
|
|
139
|
+
};
|
|
140
|
+
const DefaultCheckbox = ({ checked, onChange, label, description, indeterminate, inputRef, invalid, ...props }) => (_jsxs("label", { className: "flex items-start gap-2", children: [_jsx(DefaultCheckboxPrimitive, { ...props, ref: inputRef, checked: indeterminate ? "indeterminate" : checked, "aria-invalid": invalid || undefined, onCheckedChange: (next) => onChange(next === true) }), label || description ? (_jsxs("span", { className: "grid gap-0.5", children: [label ? _jsx("span", { className: "text-sm", children: label }) : null, description ? (_jsx("span", { className: "text-xs text-muted-foreground", children: description })) : null] })) : null] }));
|
|
141
|
+
const DefaultSwitch = ({ checked, onChange, label, description, inputRef, ...props }) => (_jsxs("label", { className: "flex items-start gap-2", children: [_jsx(DefaultSwitchPrimitive, { ...props, ref: inputRef, checked: checked, onCheckedChange: onChange }), label || description ? (_jsxs("span", { className: "grid gap-0.5", children: [label ? _jsx("span", { className: "text-sm", children: label }) : null, description ? (_jsx("span", { className: "text-xs text-muted-foreground", children: description })) : null] })) : null] }));
|
|
142
|
+
const DefaultTabs = ({ items, value, onChange, orientation, activationMode, className, style, ...props }) => (_jsxs(DefaultTabsPrimitive, { ...props, value: String(value), onValueChange: (next) => {
|
|
143
|
+
const item = items.find((candidate) => String(candidate.value) === next);
|
|
144
|
+
if (item)
|
|
145
|
+
onChange(item.value);
|
|
146
|
+
}, orientation: orientation, activationMode: activationMode, className: className, style: style, children: [_jsx(TabsList, { children: items.map((item) => (_jsxs(TabsTrigger, { value: String(item.value), disabled: item.disabled, children: [item.icon, item.label] }, item.value))) }), items.map((item) => (_jsx(TabsContent, { value: String(item.value), children: item.content }, item.value)))] }));
|
|
147
|
+
export const defaultDesignSystemComponents = {
|
|
148
|
+
ActionButton: DefaultActionButton,
|
|
149
|
+
IconButton: DefaultIconButton,
|
|
150
|
+
TextField: DefaultTextField,
|
|
151
|
+
TextArea: DefaultTextArea,
|
|
152
|
+
Spinner: DefaultSpinner,
|
|
153
|
+
Skeleton: DefaultSkeleton,
|
|
154
|
+
Status: DefaultStatus,
|
|
155
|
+
Surface: DefaultSurface,
|
|
156
|
+
Avatar: DefaultAvatar,
|
|
157
|
+
Tooltip: DefaultTooltip,
|
|
158
|
+
Menu: DefaultMenu,
|
|
159
|
+
Popover: DefaultPopover,
|
|
160
|
+
Dialog: DefaultDialog,
|
|
161
|
+
Picker: DefaultPicker,
|
|
162
|
+
Checkbox: DefaultCheckbox,
|
|
163
|
+
Switch: DefaultSwitch,
|
|
164
|
+
Tabs: DefaultTabs,
|
|
165
|
+
};
|
|
166
|
+
//# sourceMappingURL=default-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-adapter.js","sourceRoot":"","sources":["../../src/design-system/default-adapter.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-adapter.spec.d.ts","sourceRoot":"","sources":["../../src/design-system/default-adapter.spec.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// @vitest-environment happy-dom
|
|
3
|
+
import { Children, isValidElement, } from "react";
|
|
4
|
+
import { describe, expect, it, vi } from "vitest";
|
|
5
|
+
import { defaultDesignSystemComponents } from "./default-adapter.js";
|
|
6
|
+
function findElement(node, predicate) {
|
|
7
|
+
if (Array.isArray(node)) {
|
|
8
|
+
for (const child of node) {
|
|
9
|
+
const match = findElement(child, predicate);
|
|
10
|
+
if (match)
|
|
11
|
+
return match;
|
|
12
|
+
}
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
if (!isValidElement(node))
|
|
16
|
+
return undefined;
|
|
17
|
+
const element = node;
|
|
18
|
+
if (predicate(element))
|
|
19
|
+
return element;
|
|
20
|
+
for (const child of Children.toArray(element.props.children)) {
|
|
21
|
+
const match = findElement(child, predicate);
|
|
22
|
+
if (match)
|
|
23
|
+
return match;
|
|
24
|
+
}
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
function renderComponent(component, props) {
|
|
28
|
+
return component(props);
|
|
29
|
+
}
|
|
30
|
+
describe("default design system adapter", () => {
|
|
31
|
+
it("maps visual size and shape props to default styles", () => {
|
|
32
|
+
const iconButton = renderComponent(defaultDesignSystemComponents.IconButton, {
|
|
33
|
+
label: "More",
|
|
34
|
+
icon: _jsx("span", {}),
|
|
35
|
+
size: "large",
|
|
36
|
+
});
|
|
37
|
+
const spinner = renderComponent(defaultDesignSystemComponents.Spinner, {
|
|
38
|
+
size: "compact",
|
|
39
|
+
});
|
|
40
|
+
const skeleton = renderComponent(defaultDesignSystemComponents.Skeleton, {
|
|
41
|
+
shape: "circle",
|
|
42
|
+
});
|
|
43
|
+
const avatar = renderComponent(defaultDesignSystemComponents.Avatar, {
|
|
44
|
+
name: "Ada Lovelace",
|
|
45
|
+
size: "compact",
|
|
46
|
+
status: "online",
|
|
47
|
+
});
|
|
48
|
+
expect(iconButton.props.className).toContain("h-12");
|
|
49
|
+
expect(spinner.props.className).toContain("size-3");
|
|
50
|
+
expect(skeleton.props.className).toContain("rounded-full");
|
|
51
|
+
expect(findElement(avatar, (element) => element.props.role === "img")?.props
|
|
52
|
+
.className).toContain("bg-green-500");
|
|
53
|
+
});
|
|
54
|
+
it("prevents outside dismissal when a dialog is not dismissible", () => {
|
|
55
|
+
const dialog = renderComponent(defaultDesignSystemComponents.Dialog, {
|
|
56
|
+
open: true,
|
|
57
|
+
onOpenChange: vi.fn(),
|
|
58
|
+
title: "Confirm",
|
|
59
|
+
children: _jsx("p", { children: "Confirm this action" }),
|
|
60
|
+
dismissible: false,
|
|
61
|
+
});
|
|
62
|
+
const content = findElement(dialog, (element) => typeof element.props.onInteractOutside === "function");
|
|
63
|
+
const preventDefault = vi.fn();
|
|
64
|
+
content?.props.onInteractOutside?.({ preventDefault });
|
|
65
|
+
expect(preventDefault).toHaveBeenCalledOnce();
|
|
66
|
+
});
|
|
67
|
+
it("honors menu selection state and closeOnAction", () => {
|
|
68
|
+
const onAction = vi.fn();
|
|
69
|
+
const menu = renderComponent(defaultDesignSystemComponents.Menu, {
|
|
70
|
+
trigger: _jsx("button", { type: "button", children: "Open" }),
|
|
71
|
+
items: [{ id: "selected", label: "Selected", selected: true }],
|
|
72
|
+
onAction,
|
|
73
|
+
closeOnAction: false,
|
|
74
|
+
});
|
|
75
|
+
const content = menu.props.children[1];
|
|
76
|
+
const items = content.props.children;
|
|
77
|
+
const renderedItems = items.type(items.props);
|
|
78
|
+
const item = findElement(renderedItems, (element) => element.props.checked === true);
|
|
79
|
+
const preventDefault = vi.fn();
|
|
80
|
+
item?.props.onSelect?.({ preventDefault });
|
|
81
|
+
expect(item?.props.checked).toBe(true);
|
|
82
|
+
expect(preventDefault).toHaveBeenCalledOnce();
|
|
83
|
+
expect(onAction).toHaveBeenCalledWith("selected");
|
|
84
|
+
});
|
|
85
|
+
it("maps checkbox invalid state to aria-invalid", () => {
|
|
86
|
+
const checkbox = renderComponent(defaultDesignSystemComponents.Checkbox, {
|
|
87
|
+
checked: false,
|
|
88
|
+
onChange: vi.fn(),
|
|
89
|
+
invalid: true,
|
|
90
|
+
});
|
|
91
|
+
const input = findElement(checkbox, (element) => element.props["aria-invalid"] === true);
|
|
92
|
+
expect(input?.props["aria-invalid"]).toBe(true);
|
|
93
|
+
expect(input?.props.invalid).toBeUndefined();
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
//# sourceMappingURL=default-adapter.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-adapter.spec.js","sourceRoot":"","sources":["../../src/design-system/default-adapter.spec.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DesignSystemTheme } from "./theme.js";
|
|
2
|
+
import type { DesignSystemComponents } from "./types.js";
|
|
3
|
+
export interface DesignSystemDefinition {
|
|
4
|
+
name?: string;
|
|
5
|
+
components?: Partial<DesignSystemComponents>;
|
|
6
|
+
theme?: DesignSystemTheme;
|
|
7
|
+
}
|
|
8
|
+
export declare function defineDesignSystem<const Definition extends DesignSystemDefinition>(definition: Definition): Definition;
|
|
9
|
+
//# sourceMappingURL=definition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../src/design-system/definition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEzD,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC3B;AAED,wBAAgB,kBAAkB,CAChC,KAAK,CAAC,UAAU,SAAS,sBAAsB,EAC/C,UAAU,EAAE,UAAU,GAAG,UAAU,CAEpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definition.js","sourceRoot":"","sources":["../../src/design-system/definition.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,kBAAkB,CAEhC,UAAsB;IACtB,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"design-system.spec.d.ts","sourceRoot":"","sources":["../../src/design-system/design-system.spec.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// @vitest-environment happy-dom
|
|
3
|
+
import { act } from "react";
|
|
4
|
+
import { createRoot } from "react-dom/client";
|
|
5
|
+
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
|
6
|
+
import { ToolkitProvider } from "../provider.js";
|
|
7
|
+
import { Button } from "../ui/button.js";
|
|
8
|
+
import { ActionButton } from "./components.js";
|
|
9
|
+
import { defaultDesignSystemComponents } from "./default-adapter.js";
|
|
10
|
+
import { defineDesignSystem } from "./definition.js";
|
|
11
|
+
import { defineTheme } from "./theme.js";
|
|
12
|
+
import { DESIGN_SYSTEM_CONTRACT_VERSION } from "./types.js";
|
|
13
|
+
describe("design-system contract", () => {
|
|
14
|
+
let container;
|
|
15
|
+
let root;
|
|
16
|
+
beforeEach(() => {
|
|
17
|
+
vi.stubGlobal("IS_REACT_ACT_ENVIRONMENT", true);
|
|
18
|
+
container = document.createElement("div");
|
|
19
|
+
document.body.appendChild(container);
|
|
20
|
+
root = createRoot(container);
|
|
21
|
+
});
|
|
22
|
+
afterEach(() => {
|
|
23
|
+
act(() => root.unmount());
|
|
24
|
+
container.remove();
|
|
25
|
+
vi.restoreAllMocks();
|
|
26
|
+
vi.unstubAllGlobals();
|
|
27
|
+
});
|
|
28
|
+
it("locks the seventeen semantic component names", () => {
|
|
29
|
+
expect(DESIGN_SYSTEM_CONTRACT_VERSION).toBe(1);
|
|
30
|
+
expect(Object.keys(defaultDesignSystemComponents).sort()).toEqual([
|
|
31
|
+
"ActionButton",
|
|
32
|
+
"Avatar",
|
|
33
|
+
"Checkbox",
|
|
34
|
+
"Dialog",
|
|
35
|
+
"IconButton",
|
|
36
|
+
"Menu",
|
|
37
|
+
"Picker",
|
|
38
|
+
"Popover",
|
|
39
|
+
"Skeleton",
|
|
40
|
+
"Spinner",
|
|
41
|
+
"Status",
|
|
42
|
+
"Surface",
|
|
43
|
+
"Switch",
|
|
44
|
+
"Tabs",
|
|
45
|
+
"TextArea",
|
|
46
|
+
"TextField",
|
|
47
|
+
"Tooltip",
|
|
48
|
+
].sort());
|
|
49
|
+
});
|
|
50
|
+
it("preserves typed design-system and theme definitions", () => {
|
|
51
|
+
const theme = defineTheme({
|
|
52
|
+
colors: {
|
|
53
|
+
light: { primary: "oklch(55% 0.2 260)" },
|
|
54
|
+
},
|
|
55
|
+
radius: "0.75rem",
|
|
56
|
+
});
|
|
57
|
+
const definition = defineDesignSystem({
|
|
58
|
+
name: "Acme",
|
|
59
|
+
theme,
|
|
60
|
+
components: {},
|
|
61
|
+
});
|
|
62
|
+
expect(definition).toEqual({ name: "Acme", theme, components: {} });
|
|
63
|
+
});
|
|
64
|
+
it("prefers ActionButton over the legacy Button override", () => {
|
|
65
|
+
const warning = vi.spyOn(console, "warn").mockImplementation(() => { });
|
|
66
|
+
const LegacyButton = () => _jsx("button", { "data-adapter": "legacy" });
|
|
67
|
+
const CustomActionButton = () => _jsx("button", { "data-adapter": "semantic" });
|
|
68
|
+
act(() => {
|
|
69
|
+
root.render(_jsx(ToolkitProvider, { components: { Button: LegacyButton }, designSystem: {
|
|
70
|
+
components: { ActionButton: CustomActionButton },
|
|
71
|
+
}, children: _jsx(Button, { children: "Save" }) }));
|
|
72
|
+
});
|
|
73
|
+
expect(container.querySelector("[data-adapter=semantic]")).not.toBeNull();
|
|
74
|
+
expect(container.querySelector("[data-adapter=legacy]")).toBeNull();
|
|
75
|
+
expect(warning).toHaveBeenCalledOnce();
|
|
76
|
+
});
|
|
77
|
+
it("warns when nested providers combine the effective ActionButton APIs", () => {
|
|
78
|
+
const warning = vi.spyOn(console, "warn").mockImplementation(() => { });
|
|
79
|
+
const LegacyButton = () => _jsx("button", { "data-adapter": "legacy" });
|
|
80
|
+
const CustomActionButton = () => _jsx("button", { "data-adapter": "semantic" });
|
|
81
|
+
act(() => {
|
|
82
|
+
root.render(_jsx(ToolkitProvider, { designSystem: {
|
|
83
|
+
components: { ActionButton: CustomActionButton },
|
|
84
|
+
}, children: _jsx(ToolkitProvider, { components: { Button: LegacyButton }, children: _jsx(Button, { children: "Save" }) }) }));
|
|
85
|
+
});
|
|
86
|
+
expect(container.querySelector("[data-adapter=semantic]")).not.toBeNull();
|
|
87
|
+
expect(warning).toHaveBeenCalledOnce();
|
|
88
|
+
});
|
|
89
|
+
it("forwards semantic intent independently from the legacy visual variant", () => {
|
|
90
|
+
const received = vi.fn();
|
|
91
|
+
const CustomActionButton = (props) => {
|
|
92
|
+
received(props.intent, props.emphasis);
|
|
93
|
+
return _jsx("button", { children: props.children });
|
|
94
|
+
};
|
|
95
|
+
act(() => {
|
|
96
|
+
root.render(_jsx(ToolkitProvider, { designSystem: { components: { ActionButton: CustomActionButton } }, children: _jsx(Button, { variant: "ghost", intent: "danger", emphasis: "outline", children: "Remove" }) }));
|
|
97
|
+
});
|
|
98
|
+
expect(received).toHaveBeenCalledWith("danger", "outline");
|
|
99
|
+
});
|
|
100
|
+
it("uses legacy Button as the lowest-precedence ActionButton adapter", () => {
|
|
101
|
+
const LegacyButton = (props) => (_jsx("button", { ...props, "data-adapter": "legacy" }));
|
|
102
|
+
act(() => {
|
|
103
|
+
root.render(_jsx(ToolkitProvider, { components: { Button: LegacyButton }, children: _jsx(ActionButton, { children: "Save" }) }));
|
|
104
|
+
});
|
|
105
|
+
expect(container.querySelector("[data-adapter=legacy]")?.textContent).toBe("Save");
|
|
106
|
+
});
|
|
107
|
+
it("isolates a broken customer component and renders the default control", () => {
|
|
108
|
+
vi.spyOn(console, "error").mockImplementation(() => { });
|
|
109
|
+
const BrokenActionButton = () => {
|
|
110
|
+
throw new Error("broken adapter");
|
|
111
|
+
};
|
|
112
|
+
act(() => {
|
|
113
|
+
root.render(_jsx(ToolkitProvider, { designSystem: {
|
|
114
|
+
components: { ActionButton: BrokenActionButton },
|
|
115
|
+
}, children: _jsx(ActionButton, { children: "Fallback action" }) }));
|
|
116
|
+
});
|
|
117
|
+
expect(container.querySelector("button")?.textContent).toBe("Fallback action");
|
|
118
|
+
expect(console.error).toHaveBeenCalled();
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
//# sourceMappingURL=design-system.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"design-system.spec.js","sourceRoot":"","sources":["../../src/design-system/design-system.spec.tsx"],"names":[],"mappings":"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"}
|