Skip to main content

Skeletons.Wrapper

A dialog or overlay container — a layout box that automatically adds the dialog__wrapper class and generates a default sys_pn from its name. Use it for overlays, dialogs, contextual panels, and any container that needs built-in naming.


Variants

VariantFlowUse for
Skeletons.Wrapper.XHorizontal (x)Horizontal wrappers, attachment rows
Skeletons.Wrapper.YVertical (y)Overlays, dialogs, vertical panels

Signature

Skeletons.Wrapper.X(props, style?)
Skeletons.Wrapper.Y(props, style?)

Automatic Behavior

Two things happen automatically that distinguish Wrapper from Box:

  • dialog__wrapper is always appended to className
  • sys_pn defaults to wrapper-{name} if not explicitly set — where name defaults to "dialog"
// No sys_pn or name provided
Skeletons.Wrapper.Y({ className: "my-overlay" });
// → sys_pn = "wrapper-dialog"

// With a custom name
Skeletons.Wrapper.Y({ className: "my-overlay", name: "overlay" });
// → sys_pn = "wrapper-overlay"

// With an explicit sys_pn — overrides auto-generation
Skeletons.Wrapper.Y({ className: "my-overlay", sys_pn: "avatar" });
// → sys_pn = "avatar"

Common Props

PropTypeDescription
classNameStringCSS class(es) — dialog__wrapper is always added
nameStringUsed to generate default sys_pn. Defaults to "dialog"
sys_pnStringExplicit named part — overrides wrapper-{name}
kidsArrayChild skeleton nodes
uiHandlerWidgetRoutes interaction events to onUiEvent
partHandlerWidgetRoutes part lifecycle events to onPartReady
attrOptObjectHTML attributes set on the element

Examples

Simple named overlay

Skeletons.Wrapper.Y({
className: `${fig}__overlay`,
name: "overlay",
});
// → sys_pn = "wrapper-overlay"

Contextual dialog panel

Skeletons.Wrapper.Y({
className: `${fig}__context`,
name: "context",
uiHandler: ui,
partHandler: ui,
});

Container with children and explicit sys_pn

Skeletons.Wrapper.Y({
className: `${fig}__avatar`,
sys_pn: "avatar",
kids: [avatar],
attrOpt: { id: "my-avatar" },
});

Horizontal attachment wrapper

Skeletons.Wrapper.X({
className: `${fig}__attachment`,
kids: [
Skeletons.Box.Y({
className: `${fig}__media`,
sys_pn: "attachment-content",
partHandler: ui,
}),
],
});

Notification overlay (no children)

Skeletons.Wrapper.X({
className: "my-notifier",
name: "my-notifier",
});

Wrapper vs Box

Skeletons.BoxSkeletons.Wrapper
Auto-adds CSS classdialog__wrapper
Auto-generates sys_pn✅ from name
name prop
Layout flowX / Y / G / ZX / Y

Use Box for general layout. Use Wrapper when the container is a named dialog, overlay, or panel that needs to be referenced by the widget via sys_pn.