@mhmo91/schmancy 0.9.17 → 0.9.18
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/custom-elements.json +85 -46
- package/dist/agent/schmancy.agent.js +169 -23
- package/dist/agent/schmancy.agent.js.map +1 -1
- package/dist/agent/schmancy.manifest.json +198 -18
- package/dist/breadcrumb.cjs.map +1 -1
- package/dist/breadcrumb.js.map +1 -1
- package/dist/dialog.cjs.map +1 -1
- package/dist/dialog.js.map +1 -1
- package/dist/dropdown.cjs.map +1 -1
- package/dist/dropdown.js.map +1 -1
- package/dist/handover/agent-runtime-followups.md +1 -1
- package/dist/handover/agent-runtime-v1.md +3 -3
- package/dist/list-BpjKUOzM.js.map +1 -1
- package/dist/list-CMWHu6cV.cjs.map +1 -1
- package/dist/menu-BIBUgS1T.js.map +1 -1
- package/dist/menu-DS8Iz4fJ.cjs.map +1 -1
- package/dist/navigation-rail.cjs.map +1 -1
- package/dist/navigation-rail.js.map +1 -1
- package/dist/sheet-DdlZhnDG.cjs.map +1 -1
- package/dist/sheet-LFVo5iN4.js.map +1 -1
- package/dist/src-C7niWYur.js.map +1 -1
- package/dist/src-I4M33WK2.cjs.map +1 -1
- package/package.json +1 -1
- package/src/breadcrumb/breadcrumb.ts +14 -4
- package/src/dialog/dialog.component.ts +9 -9
- package/src/dropdown/dropdown-component.ts +13 -1
- package/src/dropdown/dropdown-content.ts +11 -3
- package/src/list/list-item.ts +10 -0
- package/src/list/list.ts +7 -8
- package/src/menu/menu-item.ts +13 -0
- package/src/menu/menu.ts +10 -22
- package/src/nav-drawer/appbar.ts +11 -0
- package/src/nav-drawer/content.ts +11 -0
- package/src/nav-drawer/drawer.ts +15 -0
- package/src/nav-drawer/navbar.ts +14 -0
- package/src/navigation-bar/navigation-bar-item.ts +3 -4
- package/src/navigation-bar/navigation-bar.ts +3 -9
- package/src/navigation-rail/navigation-rail-item.ts +3 -7
- package/src/navigation-rail/navigation-rail.ts +12 -8
- package/src/sheet/sheet.ts +17 -0
- package/types/src/breadcrumb/breadcrumb.d.ts +14 -4
- package/types/src/dialog/dialog.component.d.ts +9 -9
- package/types/src/dropdown/dropdown-component.d.ts +13 -1
- package/types/src/dropdown/dropdown-content.d.ts +11 -3
- package/types/src/list/list-item.d.ts +10 -0
- package/types/src/list/list.d.ts +7 -8
- package/types/src/menu/menu-item.d.ts +13 -0
- package/types/src/menu/menu.d.ts +10 -22
- package/types/src/nav-drawer/appbar.d.ts +11 -0
- package/types/src/nav-drawer/content.d.ts +11 -0
- package/types/src/nav-drawer/drawer.d.ts +15 -0
- package/types/src/nav-drawer/navbar.d.ts +14 -0
- package/types/src/navigation-bar/navigation-bar-item.d.ts +3 -4
- package/types/src/navigation-bar/navigation-bar.d.ts +3 -9
- package/types/src/navigation-rail/navigation-rail-item.d.ts +3 -7
- package/types/src/navigation-rail/navigation-rail.d.ts +12 -8
- package/types/src/sheet/sheet.d.ts +17 -0
|
@@ -31469,7 +31469,13 @@ var qp = {
|
|
|
31469
31469
|
kind: "class",
|
|
31470
31470
|
name: "SchmancyBreadcrumb",
|
|
31471
31471
|
tagName: "schmancy-breadcrumb",
|
|
31472
|
-
description: "Breadcrumb navigation
|
|
31472
|
+
description: "Breadcrumb trail — navigation history from root to current page. Renders schmancy-breadcrumb-item children with separators between.",
|
|
31473
|
+
summary: "Use for deep hierarchical navigation (file explorer paths, e-commerce category chains, admin settings trees). Last item is styled as the current page automatically.",
|
|
31474
|
+
platformPrimitive: {
|
|
31475
|
+
tag: "nav",
|
|
31476
|
+
mode: "-",
|
|
31477
|
+
note: "Styled `<nav aria-label=\"Breadcrumb\">`. Degrades to a plain nav if the tag never registers."
|
|
31478
|
+
},
|
|
31473
31479
|
attributes: [{
|
|
31474
31480
|
name: "separator",
|
|
31475
31481
|
type: { text: "string" },
|
|
@@ -31482,12 +31488,19 @@ var qp = {
|
|
|
31482
31488
|
cssParts: [{
|
|
31483
31489
|
name: "separator",
|
|
31484
31490
|
description: "The separator element."
|
|
31485
|
-
}]
|
|
31491
|
+
}],
|
|
31492
|
+
examples: ["<schmancy-breadcrumb separator=\"›\">\n <schmancy-breadcrumb-item href=\"/\">Home</schmancy-breadcrumb-item>\n <schmancy-breadcrumb-item href=\"/docs\">Docs</schmancy-breadcrumb-item>\n <schmancy-breadcrumb-item>Getting started</schmancy-breadcrumb-item>\n</schmancy-breadcrumb>"]
|
|
31486
31493
|
}, {
|
|
31487
31494
|
kind: "class",
|
|
31488
31495
|
name: "SchmancyBreadcrumbItem",
|
|
31489
31496
|
tagName: "schmancy-breadcrumb-item",
|
|
31490
|
-
description: "
|
|
31497
|
+
description: "Single segment in a schmancy-breadcrumb trail — a link when `href` is set, or a plain span (the current page) when omitted.",
|
|
31498
|
+
summary: "Always nested inside schmancy-breadcrumb. Omit `href` on the current page — it gets aria-current=\"page\" automatically.",
|
|
31499
|
+
platformPrimitive: {
|
|
31500
|
+
tag: "a",
|
|
31501
|
+
mode: "-",
|
|
31502
|
+
note: "Renders an `<a>` or `<span>` depending on href. Degrades to a plain anchor/span if the tag never registers."
|
|
31503
|
+
},
|
|
31491
31504
|
attributes: [{
|
|
31492
31505
|
name: "href",
|
|
31493
31506
|
type: { text: "string" },
|
|
@@ -31500,7 +31513,8 @@ var qp = {
|
|
|
31500
31513
|
slots: [{
|
|
31501
31514
|
name: "",
|
|
31502
31515
|
description: "Label content."
|
|
31503
|
-
}]
|
|
31516
|
+
}],
|
|
31517
|
+
examples: ["<schmancy-breadcrumb-item href=\"/products\">Products</schmancy-breadcrumb-item>"]
|
|
31504
31518
|
}]
|
|
31505
31519
|
},
|
|
31506
31520
|
{
|
|
@@ -32884,7 +32898,13 @@ var qp = {
|
|
|
32884
32898
|
kind: "class",
|
|
32885
32899
|
name: "SchmancyDialog",
|
|
32886
32900
|
tagName: "schmancy-dialog",
|
|
32887
|
-
description: "
|
|
32901
|
+
description: "Modal dialog — content-only (just a styled panel) or confirm mode (title + message + confirm/cancel buttons). Prefer the imperative `$dialog` service for most use cases; use the element directly only when you want a declaratively-positioned dialog.",
|
|
32902
|
+
summary: "Blocks interaction with the rest of the page until dismissed. For quick confirmations, prefer `$dialog.confirm({ ... })` over this element. For arbitrary dialog content driven imperatively, prefer `$dialog.component(MyComponent)`.",
|
|
32903
|
+
platformPrimitive: {
|
|
32904
|
+
tag: "dialog",
|
|
32905
|
+
mode: "close",
|
|
32906
|
+
note: "Positioned overlay in light DOM. Degrades to a styled `<dialog>` if the tag never registers — loses custom animations but keeps focus trap + ESC close."
|
|
32907
|
+
},
|
|
32888
32908
|
attributes: [
|
|
32889
32909
|
{
|
|
32890
32910
|
name: "uid",
|
|
@@ -32935,6 +32955,13 @@ var qp = {
|
|
|
32935
32955
|
description: "Whether to hide action buttons (force content mode)"
|
|
32936
32956
|
}
|
|
32937
32957
|
],
|
|
32958
|
+
events: [{
|
|
32959
|
+
name: "confirm",
|
|
32960
|
+
description: "In confirm mode, when the confirm button is clicked."
|
|
32961
|
+
}, {
|
|
32962
|
+
name: "cancel",
|
|
32963
|
+
description: "In confirm mode, when the cancel button or ESC is activated."
|
|
32964
|
+
}],
|
|
32938
32965
|
slots: [{
|
|
32939
32966
|
name: "default",
|
|
32940
32967
|
description: "Content slot for dialog body (used in content mode)"
|
|
@@ -32942,7 +32969,7 @@ var qp = {
|
|
|
32942
32969
|
name: "content",
|
|
32943
32970
|
description: "Named slot for custom content in confirm mode"
|
|
32944
32971
|
}],
|
|
32945
|
-
examples: ["Content mode (no buttons):\n
|
|
32972
|
+
examples: ["Content mode (no buttons):\n<schmancy-dialog>\n <my-custom-content></my-custom-content>\n</schmancy-dialog>", "Confirm mode (with buttons):\n<schmancy-dialog\n title=\"Delete item?\"\n message=\"This action cannot be undone.\"\n confirm-text=\"Delete\"\n cancel-text=\"Keep\"\n></schmancy-dialog>"]
|
|
32946
32973
|
}]
|
|
32947
32974
|
},
|
|
32948
32975
|
{
|
|
@@ -32992,7 +33019,13 @@ var qp = {
|
|
|
32992
33019
|
kind: "class",
|
|
32993
33020
|
name: "SchmancyDropdown",
|
|
32994
33021
|
tagName: "schmancy-dropdown",
|
|
32995
|
-
description: "
|
|
33022
|
+
description: "Anchored floating dropdown — a generic \"show this content relative to that trigger\" primitive. Unlike schmancy-menu (which uses the dialog service and is list-shaped), dropdown is a low-level popover anchored with Floating UI. Use when you want a custom-shaped overlay tied to a specific trigger element without the menu semantics.",
|
|
33023
|
+
summary: "Prefer schmancy-menu for action lists, schmancy-autocomplete for type-ahead, schmancy-tooltip for hover hints. Reach for schmancy-dropdown when none of those fit — custom filters, color pickers, inline forms anchored to a trigger.",
|
|
33024
|
+
platformPrimitive: {
|
|
33025
|
+
tag: "div",
|
|
33026
|
+
mode: "-",
|
|
33027
|
+
note: "Anchored via Floating UI (autoUpdate, flip, shift). Degrades to inline content if the tag never registers — loses positioning but content stays accessible."
|
|
33028
|
+
},
|
|
32996
33029
|
attributes: [
|
|
32997
33030
|
{
|
|
32998
33031
|
name: "open",
|
|
@@ -33027,13 +33060,21 @@ var qp = {
|
|
|
33027
33060
|
description: "Offset distance in pixels"
|
|
33028
33061
|
}
|
|
33029
33062
|
],
|
|
33063
|
+
events: [{
|
|
33064
|
+
name: "open",
|
|
33065
|
+
description: "When the dropdown opens."
|
|
33066
|
+
}, {
|
|
33067
|
+
name: "close",
|
|
33068
|
+
description: "When the dropdown closes."
|
|
33069
|
+
}],
|
|
33030
33070
|
slots: [{
|
|
33031
33071
|
name: "trigger",
|
|
33032
33072
|
description: "The element that triggers the dropdown"
|
|
33033
33073
|
}, {
|
|
33034
33074
|
name: "",
|
|
33035
33075
|
description: "Default slot for the dropdown content"
|
|
33036
|
-
}]
|
|
33076
|
+
}],
|
|
33077
|
+
examples: ["<schmancy-dropdown>\n <schmancy-button slot=\"trigger\">Filters</schmancy-button>\n <schmancy-dropdown-content>\n <schmancy-form>…</schmancy-form>\n </schmancy-dropdown-content>\n</schmancy-dropdown>"]
|
|
33037
33078
|
}]
|
|
33038
33079
|
},
|
|
33039
33080
|
{
|
|
@@ -33043,7 +33084,13 @@ var qp = {
|
|
|
33043
33084
|
kind: "class",
|
|
33044
33085
|
name: "SchmancyDropdownContent",
|
|
33045
33086
|
tagName: "schmancy-dropdown-content",
|
|
33046
|
-
description: "Content
|
|
33087
|
+
description: "Content panel for a schmancy-dropdown — a styled positioned surface. Always nested inside schmancy-dropdown and placed alongside the trigger slot.",
|
|
33088
|
+
summary: "Nest this inside schmancy-dropdown (not in the trigger slot). Use the `content` CSS part to customize backgrounds / shadows / padding without shadow-root piercing.",
|
|
33089
|
+
platformPrimitive: {
|
|
33090
|
+
tag: "div",
|
|
33091
|
+
mode: "-",
|
|
33092
|
+
note: "Positioned panel with theme-aware styling. Degrades to an inline div if the tag never registers."
|
|
33093
|
+
},
|
|
33047
33094
|
attributes: [
|
|
33048
33095
|
{
|
|
33049
33096
|
name: "width",
|
|
@@ -33084,7 +33131,8 @@ var qp = {
|
|
|
33084
33131
|
cssParts: [{
|
|
33085
33132
|
name: "content",
|
|
33086
33133
|
description: "The inner wrapper element; style to override panel backgrounds, shadows, padding, or borders without shadow-root piercing."
|
|
33087
|
-
}]
|
|
33134
|
+
}],
|
|
33135
|
+
examples: ["<schmancy-dropdown>\n <schmancy-button slot=\"trigger\">Open</schmancy-button>\n <schmancy-dropdown-content>\n Panel contents…\n </schmancy-dropdown-content>\n</schmancy-dropdown>"]
|
|
33088
33136
|
}]
|
|
33089
33137
|
},
|
|
33090
33138
|
{
|
|
@@ -33616,6 +33664,13 @@ var qp = {
|
|
|
33616
33664
|
kind: "class",
|
|
33617
33665
|
name: "SchmancyListItem",
|
|
33618
33666
|
tagName: "schmancy-list-item",
|
|
33667
|
+
description: "Single row in a schmancy-list — supports leading icon/avatar, main content, trailing actions. Clickable via click event, or used as a schmancy-menu-item's visual base.",
|
|
33668
|
+
summary: "Prefer nesting inside schmancy-list for consistent spacing/surface. Use `href` to make the row a navigation target (renders as `<a>`), or a click handler for in-app actions.",
|
|
33669
|
+
platformPrimitive: {
|
|
33670
|
+
tag: "li",
|
|
33671
|
+
mode: "click",
|
|
33672
|
+
note: "Styled `<li>` or `<a>` depending on `href`. Degrades to a plain list item if the tag never registers."
|
|
33673
|
+
},
|
|
33619
33674
|
attributes: [
|
|
33620
33675
|
{
|
|
33621
33676
|
name: "variant",
|
|
@@ -33673,6 +33728,7 @@ var qp = {
|
|
|
33673
33728
|
description: "default content"
|
|
33674
33729
|
}
|
|
33675
33730
|
],
|
|
33731
|
+
examples: ["<schmancy-list-item href=\"/profile\">\n <schmancy-icon slot=\"leading\">person</schmancy-icon>\n Profile\n <schmancy-icon slot=\"trailing\">chevron_right</schmancy-icon>\n</schmancy-list-item>"],
|
|
33676
33732
|
contexts: [{
|
|
33677
33733
|
name: "SchmancySurfaceTypeContext",
|
|
33678
33734
|
kind: "consume"
|
|
@@ -33686,7 +33742,13 @@ var qp = {
|
|
|
33686
33742
|
kind: "class",
|
|
33687
33743
|
name: "List",
|
|
33688
33744
|
tagName: "schmancy-list",
|
|
33689
|
-
description: "
|
|
33745
|
+
description: "Wrapped list container — holds schmancy-list-item children on a themed surface. Optionally scrollable.",
|
|
33746
|
+
summary: "Use for vertical lists of similarly-shaped items: settings entries, menu items, contact lists, notification lists. Pair with schmancy-list-item children.",
|
|
33747
|
+
platformPrimitive: {
|
|
33748
|
+
tag: "ul",
|
|
33749
|
+
mode: "-",
|
|
33750
|
+
note: "Styled list container. Degrades to a plain ul/div if the tag never registers."
|
|
33751
|
+
},
|
|
33690
33752
|
attributes: [
|
|
33691
33753
|
{
|
|
33692
33754
|
name: "surface",
|
|
@@ -33740,7 +33802,7 @@ var qp = {
|
|
|
33740
33802
|
name: "",
|
|
33741
33803
|
description: "The default slot for list items."
|
|
33742
33804
|
}],
|
|
33743
|
-
examples: ["<schmancy-list surface=\"container\" scroller>\n <schmancy-list-item>
|
|
33805
|
+
examples: ["<schmancy-list surface=\"container\" scroller>\n <schmancy-list-item>First</schmancy-list-item>\n <schmancy-list-item>Second</schmancy-list-item>\n <schmancy-list-item>Third</schmancy-list-item>\n</schmancy-list>"],
|
|
33744
33806
|
contexts: [{
|
|
33745
33807
|
name: "SchmancyListTypeContext",
|
|
33746
33808
|
kind: "provide"
|
|
@@ -34103,7 +34165,19 @@ var qp = {
|
|
|
34103
34165
|
declarations: [{
|
|
34104
34166
|
kind: "class",
|
|
34105
34167
|
name: "SchmancyMenuItem",
|
|
34106
|
-
tagName: "schmancy-menu-item"
|
|
34168
|
+
tagName: "schmancy-menu-item",
|
|
34169
|
+
description: "Single item inside a schmancy-menu. Auto-dismisses the menu dialog on click — attach your action handler to `@click` and it just works.",
|
|
34170
|
+
summary: "Always nested inside schmancy-menu. The click handler runs before the dialog closes, so `@click=${() => doThing()}` is the full pattern.",
|
|
34171
|
+
platformPrimitive: {
|
|
34172
|
+
tag: "menuitem",
|
|
34173
|
+
mode: "click",
|
|
34174
|
+
note: "Wraps schmancy-list-item with auto-dismiss. Degrades to a styled `<button role=\"menuitem\">` if the tag never registers."
|
|
34175
|
+
},
|
|
34176
|
+
slots: [{
|
|
34177
|
+
name: "",
|
|
34178
|
+
description: "The item label and optional icons."
|
|
34179
|
+
}],
|
|
34180
|
+
examples: ["<schmancy-menu-item @click=${() => archive()}>\n <schmancy-icon slot=\"leading\">archive</schmancy-icon>\n Archive\n</schmancy-menu-item>"]
|
|
34107
34181
|
}]
|
|
34108
34182
|
},
|
|
34109
34183
|
{
|
|
@@ -34113,7 +34187,13 @@ var qp = {
|
|
|
34113
34187
|
kind: "class",
|
|
34114
34188
|
name: "SchmancyMenu",
|
|
34115
34189
|
tagName: "schmancy-menu",
|
|
34116
|
-
description: "
|
|
34190
|
+
description: "Floating menu — a trigger button + a list of schmancy-menu-item children that open as a positioned dialog on click.",
|
|
34191
|
+
summary: "Use for dropdown menus attached to a button or icon — \"More actions\", \"Account\", row overflow menus in tables. Clicking a schmancy-menu-item inside auto-dismisses; custom components slotted inside must call `$dialog.dismiss()` themselves.",
|
|
34192
|
+
platformPrimitive: {
|
|
34193
|
+
tag: "menu",
|
|
34194
|
+
mode: "close",
|
|
34195
|
+
note: "Trigger + floating listbox dialog. Degrades to a native `<select>` or inline list if the tag never registers."
|
|
34196
|
+
},
|
|
34117
34197
|
slots: [
|
|
34118
34198
|
{
|
|
34119
34199
|
name: "trigger",
|
|
@@ -34128,7 +34208,7 @@ var qp = {
|
|
|
34128
34208
|
description: "Menu items or any custom component to display in dialog"
|
|
34129
34209
|
}
|
|
34130
34210
|
],
|
|
34131
|
-
examples: ["
|
|
34211
|
+
examples: ["<schmancy-menu>\n <schmancy-icon-button slot=\"trigger\" aria-label=\"Actions\">\n <schmancy-icon>more_vert</schmancy-icon>\n </schmancy-icon-button>\n <schmancy-menu-item @click=${() => edit()}>Edit</schmancy-menu-item>\n <schmancy-menu-item @click=${() => remove()}>Delete</schmancy-menu-item>\n</schmancy-menu>"]
|
|
34132
34212
|
}]
|
|
34133
34213
|
},
|
|
34134
34214
|
{
|
|
@@ -34138,10 +34218,18 @@ var qp = {
|
|
|
34138
34218
|
kind: "class",
|
|
34139
34219
|
name: "SchmancyDrawerAppbar",
|
|
34140
34220
|
tagName: "schmancy-nav-drawer-appbar",
|
|
34221
|
+
description: "Top app bar region inside schmancy-nav-drawer — the horizontal strip above the content area that typically holds the page title, hamburger trigger, and contextual actions.",
|
|
34222
|
+
summary: "Always nested inside schmancy-nav-drawer. Holds the page-level title + top-right actions. On mobile, the drawer's hamburger button renders inside this region.",
|
|
34223
|
+
platformPrimitive: {
|
|
34224
|
+
tag: "header",
|
|
34225
|
+
mode: "-",
|
|
34226
|
+
note: "Styled horizontal bar. Degrades to a plain header element if the tag never registers."
|
|
34227
|
+
},
|
|
34141
34228
|
slots: [{
|
|
34142
34229
|
name: "",
|
|
34143
34230
|
description: "The default slot"
|
|
34144
|
-
}]
|
|
34231
|
+
}],
|
|
34232
|
+
examples: ["<schmancy-nav-drawer-appbar>\n <schmancy-typography type=\"title\" token=\"lg\">Dashboard</schmancy-typography>\n <schmancy-icon-button slot=\"trailing\" aria-label=\"Notifications\">\n <schmancy-icon>notifications</schmancy-icon>\n </schmancy-icon-button>\n</schmancy-nav-drawer-appbar>"]
|
|
34145
34233
|
}]
|
|
34146
34234
|
},
|
|
34147
34235
|
{
|
|
@@ -34150,7 +34238,15 @@ var qp = {
|
|
|
34150
34238
|
declarations: [{
|
|
34151
34239
|
kind: "class",
|
|
34152
34240
|
name: "SchmancyNavigationDrawerContent",
|
|
34153
|
-
tagName: "schmancy-nav-drawer-content"
|
|
34241
|
+
tagName: "schmancy-nav-drawer-content",
|
|
34242
|
+
description: "Main content region inside schmancy-nav-drawer — typically hosts the router outlet or the page's body content.",
|
|
34243
|
+
summary: "Always nested inside schmancy-nav-drawer. Scrollable by default; propagates scroll events up so the drawer can collapse app-bar on scroll.",
|
|
34244
|
+
platformPrimitive: {
|
|
34245
|
+
tag: "main",
|
|
34246
|
+
mode: "scroll",
|
|
34247
|
+
note: "Scrollable `<main>`. Degrades to a plain scrollable div if the tag never registers."
|
|
34248
|
+
},
|
|
34249
|
+
examples: ["<schmancy-nav-drawer-content>\n <schmancy-area name=\"main\"></schmancy-area>\n</schmancy-nav-drawer-content>"]
|
|
34154
34250
|
}]
|
|
34155
34251
|
},
|
|
34156
34252
|
{
|
|
@@ -34160,6 +34256,13 @@ var qp = {
|
|
|
34160
34256
|
kind: "class",
|
|
34161
34257
|
name: "SchmancyNavigationDrawer",
|
|
34162
34258
|
tagName: "schmancy-nav-drawer",
|
|
34259
|
+
description: "Responsive navigation drawer — a left sidebar that becomes a hamburger-triggered modal overlay on narrow viewports. Composes schmancy-nav-drawer-navbar (the nav rail), schmancy-nav-drawer-appbar (the top bar), and schmancy-nav-drawer-content (the main region).",
|
|
34260
|
+
summary: "The app-shell layout primitive. Wrap your whole app in this when you want \"persistent sidebar on desktop, drawer on mobile\" behavior. Mode auto-switches at the breakpoint.",
|
|
34261
|
+
platformPrimitive: {
|
|
34262
|
+
tag: "div",
|
|
34263
|
+
mode: "-",
|
|
34264
|
+
note: "Flex layout with viewport-width mode switching. Degrades to a stack of plain divs if the tag never registers."
|
|
34265
|
+
},
|
|
34163
34266
|
attributes: [
|
|
34164
34267
|
{
|
|
34165
34268
|
name: "fullscreen",
|
|
@@ -34184,10 +34287,15 @@ var qp = {
|
|
|
34184
34287
|
values: ["open", "close"]
|
|
34185
34288
|
}
|
|
34186
34289
|
],
|
|
34290
|
+
events: [{
|
|
34291
|
+
name: "schmancy-drawer-state",
|
|
34292
|
+
description: "When the drawer open/close state changes on mobile."
|
|
34293
|
+
}],
|
|
34187
34294
|
slots: [{
|
|
34188
34295
|
name: "",
|
|
34189
34296
|
description: "The content slot"
|
|
34190
34297
|
}],
|
|
34298
|
+
examples: ["<schmancy-nav-drawer>\n <schmancy-nav-drawer-navbar>\n <!-- nav items, typically schmancy-list-item links -->\n </schmancy-nav-drawer-navbar>\n <schmancy-nav-drawer-appbar>App title</schmancy-nav-drawer-appbar>\n <schmancy-nav-drawer-content>\n <!-- router outlet / page content -->\n </schmancy-nav-drawer-content>\n</schmancy-nav-drawer>"],
|
|
34191
34299
|
contexts: [{
|
|
34192
34300
|
name: "SchmancyDrawerNavbarMode",
|
|
34193
34301
|
kind: "provide"
|
|
@@ -34204,11 +34312,19 @@ var qp = {
|
|
|
34204
34312
|
kind: "class",
|
|
34205
34313
|
name: "SchmancyNavigationDrawerSidebar",
|
|
34206
34314
|
tagName: "schmancy-nav-drawer-navbar",
|
|
34315
|
+
description: "Sidebar region inside schmancy-nav-drawer — the persistent-on-desktop / modal-on-mobile nav rail.",
|
|
34316
|
+
summary: "Always nested inside schmancy-nav-drawer. On desktop: pinned left sidebar. On mobile: modal overlay triggered by the hamburger button in schmancy-nav-drawer-appbar.",
|
|
34317
|
+
platformPrimitive: {
|
|
34318
|
+
tag: "nav",
|
|
34319
|
+
mode: "-",
|
|
34320
|
+
note: "Sidebar `<nav>` with responsive open/close behavior. Degrades to a plain sidebar div if the tag never registers."
|
|
34321
|
+
},
|
|
34207
34322
|
attributes: [{
|
|
34208
34323
|
name: "width",
|
|
34209
34324
|
type: { text: "string" },
|
|
34210
34325
|
default: "'220px'"
|
|
34211
34326
|
}],
|
|
34327
|
+
examples: ["<schmancy-nav-drawer-navbar>\n <schmancy-list>\n <schmancy-list-item href=\"/dashboard\">Dashboard</schmancy-list-item>\n <schmancy-list-item href=\"/settings\">Settings</schmancy-list-item>\n </schmancy-list>\n</schmancy-nav-drawer-navbar>"],
|
|
34212
34328
|
contexts: [{
|
|
34213
34329
|
name: "SchmancyDrawerNavbarMode",
|
|
34214
34330
|
kind: "consume"
|
|
@@ -34225,7 +34341,13 @@ var qp = {
|
|
|
34225
34341
|
kind: "class",
|
|
34226
34342
|
name: "SchmancyNavigationBarItem",
|
|
34227
34343
|
tagName: "schmancy-navigation-bar-item",
|
|
34228
|
-
description: "
|
|
34344
|
+
description: "Single destination inside schmancy-navigation-bar — an icon + optional label representing one primary app destination.",
|
|
34345
|
+
summary: "Always nested inside schmancy-navigation-bar. Use `icon` attr for a Material Symbols glyph or slot=icon for custom content.",
|
|
34346
|
+
platformPrimitive: {
|
|
34347
|
+
tag: "button",
|
|
34348
|
+
mode: "click",
|
|
34349
|
+
note: "Styled navigation target. Degrades to a plain `<button>` if the tag never registers."
|
|
34350
|
+
},
|
|
34229
34351
|
attributes: [
|
|
34230
34352
|
{
|
|
34231
34353
|
name: "icon",
|
|
@@ -34289,7 +34411,13 @@ var qp = {
|
|
|
34289
34411
|
kind: "class",
|
|
34290
34412
|
name: "SchmancyNavigationBar",
|
|
34291
34413
|
tagName: "schmancy-navigation-bar",
|
|
34292
|
-
description: "
|
|
34414
|
+
description: "Bottom navigation bar — Material Design 3 horizontal nav for mobile primary destinations (3–7 items). Auto-hides in fullscreen mode.",
|
|
34415
|
+
summary: "Use for mobile primary navigation (home, search, favorites, settings). For persistent desktop nav, prefer schmancy-navigation-rail or schmancy-nav-drawer. Consumer is responsible for fixed-bottom positioning via class.",
|
|
34416
|
+
platformPrimitive: {
|
|
34417
|
+
tag: "nav",
|
|
34418
|
+
mode: "-",
|
|
34419
|
+
note: "Styled horizontal nav with schmancy-navigation-bar-item children. Degrades to a plain flex container if the tag never registers."
|
|
34420
|
+
},
|
|
34293
34421
|
attributes: [
|
|
34294
34422
|
{
|
|
34295
34423
|
name: "hideLabels",
|
|
@@ -34328,7 +34456,13 @@ var qp = {
|
|
|
34328
34456
|
kind: "class",
|
|
34329
34457
|
name: "SchmancyNavigationRailItem",
|
|
34330
34458
|
tagName: "schmancy-navigation-rail-item",
|
|
34331
|
-
description: "
|
|
34459
|
+
description: "Single destination inside schmancy-navigation-rail — vertically-stacked icon + optional label. @see https://m3.material.io/components/navigation-rail/overview",
|
|
34460
|
+
summary: "Always nested inside schmancy-navigation-rail. Use `icon` attr for a Material Symbols glyph, or slot=icon for custom content. Supports a `badge` slot for notification dots / counts.",
|
|
34461
|
+
platformPrimitive: {
|
|
34462
|
+
tag: "button",
|
|
34463
|
+
mode: "click",
|
|
34464
|
+
note: "Styled vertical navigation target. Degrades to a plain `<button>` if the tag never registers."
|
|
34465
|
+
},
|
|
34332
34466
|
attributes: [
|
|
34333
34467
|
{
|
|
34334
34468
|
name: "icon",
|
|
@@ -34444,7 +34578,7 @@ var qp = {
|
|
|
34444
34578
|
kind: "class",
|
|
34445
34579
|
name: "SchmancyNavigationRail",
|
|
34446
34580
|
tagName: "schmancy-navigation-rail",
|
|
34447
|
-
description: "
|
|
34581
|
+
description: "Vertical navigation rail — Material Design 3 compact left-side nav for desktop / tablet layouts with 3–7 primary destinations. Auto-hides in fullscreen mode. @see https://m3.material.io/components/navigation-rail/overview\r @element schmancy-navigation-rail\r @summary Use as the desktop counterpart of schmancy-navigation-bar: same destinations, different form factor. Prefer schmancy-nav-drawer when you also want a drawer + app-bar combo.",
|
|
34448
34582
|
attributes: [
|
|
34449
34583
|
{
|
|
34450
34584
|
name: "label-visibility",
|
|
@@ -34487,7 +34621,7 @@ var qp = {
|
|
|
34487
34621
|
description: "Whether the navigation rail is expanded\r @default false"
|
|
34488
34622
|
}
|
|
34489
34623
|
],
|
|
34490
|
-
examples: ["<schmancy-navigation-rail activeIndex=\"0\">\r\n <schmancy-button slot=\"fab\" variant=\"filled\" aria-label=\"Compose\">\r\n <schmancy-icon>add</schmancy-icon>\r\n </schmancy-button>\r\n <schmancy-button slot=\"menu\" variant=\"text\" aria-label=\"Menu\">\r\n <schmancy-icon>menu</schmancy-icon>\r\n </schmancy-button>\r\n <schmancy-navigation-rail-item icon=\"home\" label=\"Home\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"search\" label=\"Search\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"favorite\" label=\"Favorites\" badge=\"3\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"settings\" label=\"Settings\"></schmancy-navigation-rail-item>\r\n</schmancy-navigation-rail>"]
|
|
34624
|
+
examples: ["<schmancy-navigation-rail activeIndex=\"0\">\r\n <schmancy-icon-button slot=\"fab\" variant=\"filled\">\r\n <schmancy-icon>add</schmancy-icon>\r\n </schmancy-icon-button>\r\n <schmancy-navigation-rail-item icon=\"home\" label=\"Home\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"search\" label=\"Search\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"settings\" label=\"Settings\"></schmancy-navigation-rail-item>\r\n</schmancy-navigation-rail>\r\n@platform nav - Vertical styled nav. Degrades to a plain vertical flex container if the tag never registers.\r\n@slot fab - Slot for a floating action button at the top\r\n@slot menu - Slot for a menu icon or button below the FAB\r\n@slot header - Custom header content slot\r\n@slot footer - Custom footer content slot\r\n@slot - Default slot for navigation rail items\r\n\n@fires navigate - When a navigation item is selected\r\n@fires menu-click - When the menu button is clicked\r\n@fires fab-click - When the FAB is clicked\r\n\n@csspart rail - The main rail container\r\n@csspart header - The header section\r\n@csspart nav - The navigation items container\r\n@csspart footer - The footer section", "<schmancy-navigation-rail activeIndex=\"0\">\r\n <schmancy-button slot=\"fab\" variant=\"filled\" aria-label=\"Compose\">\r\n <schmancy-icon>add</schmancy-icon>\r\n </schmancy-button>\r\n <schmancy-button slot=\"menu\" variant=\"text\" aria-label=\"Menu\">\r\n <schmancy-icon>menu</schmancy-icon>\r\n </schmancy-button>\r\n <schmancy-navigation-rail-item icon=\"home\" label=\"Home\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"search\" label=\"Search\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"favorite\" label=\"Favorites\" badge=\"3\"></schmancy-navigation-rail-item>\r\n <schmancy-navigation-rail-item icon=\"settings\" label=\"Settings\"></schmancy-navigation-rail-item>\r\n</schmancy-navigation-rail>"]
|
|
34491
34625
|
}]
|
|
34492
34626
|
},
|
|
34493
34627
|
{
|
|
@@ -35091,6 +35225,13 @@ var qp = {
|
|
|
35091
35225
|
kind: "class",
|
|
35092
35226
|
name: "SchmancySheet",
|
|
35093
35227
|
tagName: "schmancy-sheet",
|
|
35228
|
+
description: "Side-docked or bottom-docked panel — a dialog variant that slides in from an edge. Driven imperatively by the `sheet` service; rarely instantiated directly.",
|
|
35229
|
+
summary: "Prefer `sheet.open({ component, position })` over placing this element declaratively — the service handles stacking, focus, close on outside-click, ESC, and router integration.",
|
|
35230
|
+
platformPrimitive: {
|
|
35231
|
+
tag: "dialog",
|
|
35232
|
+
mode: "close",
|
|
35233
|
+
note: "Positioned-fixed panel with backdrop. Degrades to a `<dialog>` if the tag never registers — loses slide animation, keeps focus trap + dismiss."
|
|
35234
|
+
},
|
|
35094
35235
|
attributes: [
|
|
35095
35236
|
{
|
|
35096
35237
|
name: "open",
|
|
@@ -35118,7 +35259,12 @@ var qp = {
|
|
|
35118
35259
|
type: { text: "boolean" },
|
|
35119
35260
|
default: "true"
|
|
35120
35261
|
}
|
|
35121
|
-
]
|
|
35262
|
+
],
|
|
35263
|
+
events: [{
|
|
35264
|
+
name: "close",
|
|
35265
|
+
description: "When the sheet is dismissed (backdrop click, close button, ESC)."
|
|
35266
|
+
}],
|
|
35267
|
+
examples: ["import { sheet, SchmancySheetPosition } from '@mhmo91/schmancy'\nsheet.open({\n component: new MyEditorElement(),\n position: SchmancySheetPosition.Side,\n title: 'Edit item',\n})"]
|
|
35122
35268
|
}]
|
|
35123
35269
|
},
|
|
35124
35270
|
{
|