@forgeax/app-shell 0.15.0 → 0.16.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/dist/react.d.ts CHANGED
@@ -49,6 +49,16 @@ interface DetachedPanelBoundaryProps {
49
49
  /** Product-neutral presentation switch for a keep-anchor detached surface. */
50
50
  declare function DetachedPanelBoundary({ capability, floatingSurfaces, placeholder, children, }: DetachedPanelBoundaryProps): ReactNode;
51
51
 
52
+ interface DetachedSurfaceFrameProps {
53
+ children: ReactNode;
54
+ /** Apply the established product-shell hooks used by detached dock panels. */
55
+ panel?: boolean;
56
+ /** Center caller-owned status content inside the full-window frame. */
57
+ centered?: boolean;
58
+ }
59
+ /** Product-neutral presentation frame for content mounted in a detached window. */
60
+ declare function DetachedSurfaceFrame({ children, panel, centered, }: DetachedSurfaceFrameProps): ReactElement;
61
+
52
62
  type ShellSlotElement = 'aside' | 'div' | 'main' | 'section';
53
63
  interface ShellSlotProps extends HTMLAttributes<HTMLElement> {
54
64
  as?: ShellSlotElement;
@@ -57,4 +67,4 @@ interface ShellSlotProps extends HTMLAttributes<HTMLElement> {
57
67
  /** Structural shell marker that preserves the caller's semantic element. */
58
68
  declare function ShellSlot({ as, name, ...props }: ShellSlotProps): ReactElement;
59
69
 
60
- export { DetachedPanelBoundary, type DetachedPanelBoundaryProps, type PanelContentPadding, type PanelContentPolicy, type PanelContentScroll, type PanelContentTone, PanelSurface, type PanelSurfaceProps, ResizeHandle, type ResizeHandleProps, ShellSlot, type ShellSlotElement, type ShellSlotProps, SlotDebugOverlay, hashSlotHue, isSlotDebugEnabled, useLocalSize };
70
+ export { DetachedPanelBoundary, type DetachedPanelBoundaryProps, DetachedSurfaceFrame, type DetachedSurfaceFrameProps, type PanelContentPadding, type PanelContentPolicy, type PanelContentScroll, type PanelContentTone, PanelSurface, type PanelSurfaceProps, ResizeHandle, type ResizeHandleProps, ShellSlot, type ShellSlotElement, type ShellSlotProps, SlotDebugOverlay, hashSlotHue, isSlotDebugEnabled, useLocalSize };
package/dist/react.js CHANGED
@@ -315,6 +315,29 @@ function DetachedPanelBoundary({
315
315
  return children;
316
316
  }
317
317
 
318
+ // src/detached-surface-frame.tsx
319
+ import { jsx as jsx4 } from "react/jsx-runtime";
320
+ var fill = { position: "fixed", inset: 0 };
321
+ var centeredContent = {
322
+ display: "flex",
323
+ alignItems: "center",
324
+ justifyContent: "center"
325
+ };
326
+ function DetachedSurfaceFrame({
327
+ children,
328
+ panel = false,
329
+ centered = false
330
+ }) {
331
+ return /* @__PURE__ */ jsx4(
332
+ "div",
333
+ {
334
+ className: panel ? "fx-detached-surface fx-detached-panel main-area" : "fx-detached-surface",
335
+ style: fill,
336
+ children: centered ? /* @__PURE__ */ jsx4("div", { className: "fx-detached-surface-status", style: centeredContent, children }) : children
337
+ }
338
+ );
339
+ }
340
+
318
341
  // src/react.tsx
319
342
  function ShellSlot({
320
343
  as = "div",
@@ -325,6 +348,7 @@ function ShellSlot({
325
348
  }
326
349
  export {
327
350
  DetachedPanelBoundary,
351
+ DetachedSurfaceFrame,
328
352
  PanelSurface,
329
353
  ResizeHandle,
330
354
  ShellSlot,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgeax/app-shell",
3
- "version": "0.15.0",
3
+ "version": "0.16.0",
4
4
  "description": "Generic Dock, Panel, Window, and Slot composition primitives",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",