@cosmicdrift/kumiko-renderer-web 0.340.0 → 0.341.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.
@@ -26,7 +26,7 @@ declare function Sidebar({ side, variant, collapsible, className, children, ...p
26
26
  }): React.JSX.Element;
27
27
  declare function SidebarTrigger({ className, onClick, ...props }: React.ComponentProps<typeof Button>): React.JSX.Element;
28
28
  declare function SidebarRail({ className, ...props }: React.ComponentProps<"button">): React.JSX.Element;
29
- declare function SidebarInset({ className, ...props }: React.ComponentProps<"main">): React.JSX.Element;
29
+ declare function SidebarInset({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
30
30
  declare function SidebarInput({ className, ...props }: React.ComponentProps<typeof Input>): React.JSX.Element;
31
31
  declare function SidebarHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
32
32
  declare function SidebarFooter({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
@@ -112,8 +112,10 @@ function SidebarRail({ className, ...props }) {
112
112
  const { toggleSidebar } = useSidebar();
113
113
  return (_jsx("button", { "data-sidebar": "rail", "data-slot": "sidebar-rail", "aria-label": "Toggle Sidebar", tabIndex: -1, onClick: toggleSidebar, title: "Toggle Sidebar", className: cn("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex", "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize", "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize", "group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar", "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2", "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2", className), ...props }));
114
114
  }
115
+ // Deviates from the shadcn template (which renders <main>): the shells own the
116
+ // single main landmark around the screen content, so the inset must not be one.
115
117
  function SidebarInset({ className, ...props }) {
116
- return (_jsx("main", { "data-slot": "sidebar-inset", className: cn("relative flex w-full flex-1 flex-col bg-card", "md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2", className), ...props }));
118
+ return (_jsx("div", { "data-slot": "sidebar-inset", className: cn("relative flex w-full flex-1 flex-col bg-card", "md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2", className), ...props }));
117
119
  }
118
120
  function SidebarInput({ className, ...props }) {
119
121
  return (_jsx(Input, { "data-slot": "sidebar-input", "data-sidebar": "input", className: cn("h-8 w-full border-sidebar-border bg-sidebar-input text-sidebar-foreground shadow-none placeholder:text-sidebar-muted", className), ...props }));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cosmicdrift/kumiko-renderer-web",
3
- "version": "0.340.0",
3
+ "version": "0.341.0",
4
4
  "description": "Web-platform bindings for @cosmicdrift/kumiko-renderer. HTML default-primitives, browser history-based navigation, EventSource-backed live events, and a one-call createKumikoApp that mounts the whole stack via react-dom.",
5
5
  "license": "BUSL-1.1",
6
6
  "author": "Marc Frost <marc@cosmicdriftgamestudio.com>",
@@ -20,11 +20,11 @@
20
20
  }
21
21
  },
22
22
  "dependencies": {
23
- "@cosmicdrift/kumiko-dispatcher-live": "0.340.0",
24
- "@cosmicdrift/kumiko-framework": "0.340.0",
25
- "@cosmicdrift/kumiko-headless": "0.340.0",
26
- "@cosmicdrift/kumiko-renderer": "0.340.0",
27
- "@cosmicdrift/kumiko-types": "0.340.0",
23
+ "@cosmicdrift/kumiko-dispatcher-live": "0.341.0",
24
+ "@cosmicdrift/kumiko-framework": "0.341.0",
25
+ "@cosmicdrift/kumiko-headless": "0.341.0",
26
+ "@cosmicdrift/kumiko-renderer": "0.341.0",
27
+ "@cosmicdrift/kumiko-types": "0.341.0",
28
28
  "@radix-ui/react-dialog": "^1.1.15",
29
29
  "@radix-ui/react-dropdown-menu": "^2.1.16",
30
30
  "@radix-ui/react-label": "^2.1.8",
@@ -72,7 +72,7 @@
72
72
  "@types/react-dom": "^19.2.3",
73
73
  "jsdom": "^29.1.1",
74
74
  "tailwindcss": "^4.3.0",
75
- "@cosmicdrift/kumiko-locale-de": "0.340.0"
75
+ "@cosmicdrift/kumiko-locale-de": "0.341.0"
76
76
  },
77
77
  "repository": {
78
78
  "type": "git",
package/src/changes.json CHANGED
@@ -1,4 +1,10 @@
1
1
  [
2
+ {
3
+ "version": "0.341.0",
4
+ "type": "fix",
5
+ "title": "App shells render a single main landmark",
6
+ "detail": "`DefaultAppShell` and `WorkspaceShell` render exactly one `main` landmark. `SidebarInset` is now a `div`, so the shell's own `main` around the screen content is the only one, and the `ShellHeader` sits outside it. Screen readers no longer announce two main regions, and `getByRole(\"main\")` in E2E tests matches a single element."
7
+ },
2
8
  {
3
9
  "version": "0.339.0",
4
10
  "type": "fix",