@adia-ai/web-modules 0.8.43 → 0.8.45
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/CHANGELOG.md +22 -0
- package/billing/billing-overview/billing-overview.class.js +7 -3
- package/billing/invoice-detail/invoice-detail.class.js +6 -3
- package/billing/invoice-history/invoice-history.class.js +6 -3
- package/billing/plan-picker/plan-picker.class.js +6 -3
- package/chat/chat-sidebar/chat-sidebar.d.ts +4 -0
- package/chat/chat-sidebar/chat-sidebar.js +26 -73
- package/dist/chat/chat-shell.min.js +1 -1
- package/dist/editor/editor-shell.min.js +1 -1
- package/dist/everything.min.js +128 -128
- package/dist/shell/admin-shell.min.css +1 -1
- package/dist/shell/admin-shell.min.js +1 -1
- package/dist/simple/simple-shell.min.js +1 -1
- package/dist/web-modules.min.css +1 -1
- package/dist/web-modules.sheet.js +1 -1
- package/editor/editor-sidebar/editor-sidebar.js +21 -13
- package/package.json +7 -6
- package/shared/sidebar-persist.js +152 -0
- package/shell/admin-command/admin-command.d.ts +5 -0
- package/shell/admin-shell/css/admin-shell.tokens.css +1 -1
- package/shell/admin-sidebar/admin-sidebar.d.ts +4 -0
- package/shell/admin-sidebar/admin-sidebar.js +26 -88
- package/simple/simple-shell/simple-shell.d.ts +2 -0
- package/theme/theme-panel/theme-panel.d.ts +31 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
:where(admin-shell){--page-bg:var(--a-canvas-0);--page-border:1px solid var(--md-sys-color-neutral-outline-variant);--page-main-border:var(--page-border);--page-header-height:var(--a-chrome-app-header-height);--page-header-px:var(--a-space-3);--page-header-gap:var(--a-space-3);--page-header-font:var(--a-ui-size);--page-header-fg-muted:var(--a-fg-muted);--page-sidebar-px:var(--a-space-1);--page-sidebar-gap:var(--a-space-1);--page-sidebar-font:var(--a-ui-size);--page-sidebar-min-width:48px;--page-sidebar-max-width:480px;--page-sidebar-resize-accent:var(--md-sys-color-primary);--page-sidebar-bg:var(--md-sys-color-neutral-surface-dimmest);--page-sidebar-divider-bg:var(--md-sys-color-neutral-outline-variant);--page-sidebar-width-leading:clamp(var(--page-sidebar-min-width), 200px, 240px);--page-sidebar-width-trailing:clamp(var(--page-sidebar-min-width), 200px, 240px);--page-content-bg:var(--a-canvas-2);--page-content-header-bg:var(--page-content-bg);--page-content-radius:var(--a-radius-lg);--page-content-inset:var(--a-space-10);--page-content-max-width:1540px;--page-content-border:1px solid var(--md-sys-color-neutral-outline-variant);--page-content-shadow:var(--a-shadow-sm);--page-content-bp-sm:480px;--page-content-bp-md:720px;--page-content-bp-lg:1024px;--page-section-gap:var(--a-space-6);--page-block-gap:var(--a-space-4);--page-deck-gap:var(--a-space-1);--page-section-size:var(--a-kicker-size);--page-section-weight:var(--a-kicker-weight);--page-section-leading:var(--a-kicker-leading);--page-section-tracking:var(--a-kicker-tracking);--page-section-case:var(--a-kicker-case);--page-section-color:var(--a-kicker-color);--page-section-mb:var(--a-space-3);--page-section-pb:var(--a-space-2);--page-subsection-size:var(--a-subsection-size);--page-subsection-weight:var(--a-subsection-weight);--page-subsection-color:var(--a-subsection-color);--page-sidebar-collapsed-icon:1.0625rem;--page-sidebar-collapsed-avatar:1.875rem;--page-actions-gap:var(--a-space-2);--page-grid-gap:var(--a-space-3);--page-duration:var(--a-duration);--page-duration-fast:var(--a-duration-fast);--page-easing:var(--a-easing);--page-font-family:var(--a-font-family);--page-body-size:var(--a-body-size);--nav-duration:var(--a-duration);--nav-duration-fast:var(--a-duration-fast);--nav-easing:var(--a-easing);--nav-label-px:var(--a-space-2);--nav-label-py:var(--a-space-1);--nav-label-font-size:var(--a-kicker-sm);--nav-label-weight:var(--a-weight-medium);--nav-label-fg:var(--a-fg-muted);--nav-divider-bg:var(--md-sys-color-neutral-outline-variant);--nav-divider-my:var(--a-space-1);--nav-group-indent-rail-bg:var(--md-sys-color-neutral-outline-variant);--nav-group-icon-font-size:var(--a-ui-size);--nav-group-text-weight:var(--a-weight-medium);--nav-group-badge-bg:var(--a-bg-muted);--nav-group-badge-px:var(--a-space-1);--nav-group-badge-radius:var(--a-radius-full);--nav-item-icon-font-size:var(--a-ui-size);--nav-item-selected-weight:var(--a-weight-medium);--nav-item-badge-fg:var(--a-fg-muted);--nav-item-badge-bg:var(--a-bg-muted);--nav-item-badge-px:var(--a-space-1);--nav-item-badge-radius:var(--a-radius-full);--nav-item-trailing-font:var(--a-ui-sm);--nav-item-trailing-fg:var(--a-fg-muted);--nav-item-trailing-border:var(--md-sys-color-neutral-outline-variant);--nav-item-trailing-radius:var(--a-radius-sm);--nav-item-trailing-px:var(--a-space-0-5);--a-icon-size:18px}admin-shell[mode~=borderless]{--page-main-border:none;--page-border:none}admin-shell{background:var(--page-bg);overscroll-behavior:none;height:100dvh;font-family:var(--page-font-family);font-size:var(--page-body-size);display:flex;position:fixed;inset:0;overflow:hidden}admin-shell:not(:has(>:is(asideadmin-sidebar[slot=trailing],admin-sidebar[slot=trailing]):not([hidden])))>admin-content>admin-scroll{margin-inline-end:var(--a-space-2)}admin-shell:not(:has(>:is(header,header-ui,admin-topbar):not([hidden]),>admin-content>admin-topbar:not([hidden])))>admin-content>admin-scroll{margin-block-start:var(--a-space-2)}admin-shell:not(:has(>:is(footer,footer-ui,admin-statusbar):not([hidden]),>admin-content>admin-statusbar:not([hidden])))>admin-content>admin-scroll{margin-block-end:var(--a-space-2)}admin-shell>admin-content>admin-scroll::-webkit-scrollbar{display:none}admin-shell>admin-content>admin-scroll:has(>[data-subnav]:not([hidden])){grid-template-columns:var(--subnav-width,14rem) 1fr;grid-template-rows:minmax(0,1fr);gap:0;display:grid}admin-shell>admin-content>admin-scroll>[data-subnav]{overscroll-behavior:contain;border-inline-end:1px solid var(--md-sys-color-neutral-outline-variant);min-height:0;padding-block:var(--a-space-2);padding-inline:var(--a-space-2);overflow-y:auto}@container (width<=40rem){admin-shell>admin-content>admin-scroll:has(>[data-subnav]:not([hidden])){grid-template-columns:1fr}admin-shell>admin-content>admin-scroll>[data-subnav]{border-inline-end:none;border-block-end:1px solid var(--md-sys-color-neutral-outline-variant)}}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]){background:var(--page-sidebar-bg);min-width:var(--page-sidebar-min-width);max-width:var(--page-sidebar-max-width);min-height:0;font-size:var(--page-sidebar-font);transition:width var(--page-duration) var(--page-easing);flex-direction:column;flex-shrink:0;display:flex;position:relative;container:sidebar/inline-size}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]{cursor:col-resize;width:6px;transition:background var(--page-duration-fast) var(--page-easing);z-index:3;background:0 0;position:absolute;top:0;bottom:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]:hover,:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])[resizing]>[data-sidebar-resize]{background:var(--page-sidebar-resize-accent)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])[resizing]{-webkit-user-select:none;user-select:none;transition:none}admin-sidebar[slot=leading]{width:var(--page-sidebar-width-leading)}admin-sidebar[slot=trailing]{width:var(--page-sidebar-width-trailing)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui),:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui){align-items:center;gap:var(--page-sidebar-gap);padding:var(--page-sidebar-px);flex-shrink:0;min-width:0;display:flex;overflow:hidden}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui){min-height:var(--page-header-height);border-bottom:var(--page-border)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui){min-height:var(--page-header-height);border-top:var(--page-border);margin-top:auto}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=icon],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=icon]{color:var(--page-header-fg-muted);flex-shrink:0;align-items:center;display:flex}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=heading],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=heading]{font-weight:var(--a-weight-medium);color:var(--md-sys-color-neutral-on-surface)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=description],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=description]{color:var(--page-header-fg-muted);font-size:var(--a-ui-sm)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=action],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=action]{align-items:center;gap:var(--page-actions-gap);flex-shrink:0;margin-inline-start:auto;display:flex}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=action]~[slot=action],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=action]~[slot=action]{margin-inline-start:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=action-leading],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=action-leading]{align-items:center;gap:var(--page-actions-gap);flex-shrink:0;margin-inline-end:auto;display:flex}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(section,section-ui){padding:var(--page-sidebar-px);scrollbar-width:none;flex:1;min-height:0;overflow-y:auto}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(section,section-ui)::-webkit-scrollbar{display:none}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]) span[slot=pad]{padding:var(--page-sidebar-px);display:block}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]) nav-ui{border:none;padding:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(section,section-ui)>hr[data-nav-divider]{background:var(--page-sidebar-divider-bg);height:1px;margin:var(--page-sidebar-gap) var(--page-sidebar-px);border:none}@container sidebar (width<=96px){:is(admin-topbar,admin-statusbar){padding:var(--page-sidebar-px);justify-content:center}:is(section,section-ui){flex-direction:column;align-items:center;display:flex}select-ui [slot=display],select-ui [slot=caret],select-ui [data-chips]{display:none}select-ui [slot=trigger]{width:100%;min-height:var(--page-header-height);justify-content:center;padding:0}select-ui [slot=leading]{--a-icon-size:var(--page-sidebar-collapsed-icon);font-size:var(--page-sidebar-collapsed-icon)}select-ui img[slot=leading]{width:var(--page-sidebar-collapsed-avatar);height:var(--page-sidebar-collapsed-avatar)}select-ui adia-mark-ui[slot=leading]{--adia-mark-size:var(--page-sidebar-collapsed-avatar)}nav-ui [slot=text],nav-ui [slot=badge],nav-ui [slot=caret],nav-ui [slot=trailing],nav-ui [data-nav-label],nav-ui [data-nav-divider]{display:none!important}nav-group-ui [slot=header]{min-width:var(--nav-group-row-height);min-height:var(--nav-group-row-height);justify-content:center;padding:0}nav-item-ui{min-width:var(--nav-item-row-height);min-height:var(--nav-item-row-height);justify-content:center;padding:0}nav-ui{align-items:center;width:100%}button-ui{--button-px:0;justify-content:center;width:auto!important}button-ui [slot=trailing]{display:none}:scope,:is(admin-topbar,admin-statusbar),:is(section,section-ui,nav){overflow:hidden}:is(span,p,div,h1,h2,h3,h4,h5,h6)[slot=heading],[slot=heading]:not(:has(>[slot])){display:none}button.nav-item,a.nav-item,[data-nav]{text-indent:-9999px;white-space:nowrap;justify-content:center;overflow:hidden}button.nav-item>icon-ui,a.nav-item>icon-ui,[data-nav]>icon-ui,button.nav-item>:has(>icon-ui),a.nav-item>:has(>icon-ui),[data-nav]>:has(>icon-ui){text-indent:0}}admin-page-header>:is(header,header-ui),admin-page-body>:is(section,section-ui),admin-page-footer>:is(footer,footer-ui){max-width:var(--page-content-max-width);box-sizing:border-box;width:100%;margin-inline:auto}admin-page-header>:is(header,header-ui){padding-inline:var(--page-content-inset)}admin-page-body>:is(section,section-ui):not(:last-child){border-bottom:var(--page-content-border)}admin-page-header[data-content-full]>:is(header,header-ui),admin-page-body[data-content-full]>:is(section,section-ui),admin-page-footer[data-content-full]>:is(footer,footer-ui),admin-page-header>:is(header,header-ui)[data-content-full],admin-page-body>:is(section,section-ui)[data-content-full],admin-page-footer>:is(footer,footer-ui)[data-content-full]{max-width:100%}admin-page-header>:is(header,header-ui){gap:var(--page-header-gap);padding-block:var(--page-content-inset) var(--page-header-gap);flex-direction:column;display:flex}admin-page-header>:is(header,header-ui):has(tabs-ui){padding-bottom:0}admin-page-header:has(>:is(header,header-ui)[data-flush]){background:0 0;border-bottom:none;position:static}admin-page-header>:is(header,header-ui)[data-compact]{padding-block:var(--page-header-px)}admin-page-header>:is(header,header-ui)>div:first-of-type{justify-content:space-between;align-items:center;gap:var(--page-header-gap);display:flex}admin-page-header h1,admin-page-header>:is(header,header-ui)>p{margin:0}admin-page-body>:is(section,section-ui){padding:var(--page-content-inset);gap:var(--page-section-gap,var(--a-space-8));flex-direction:column;display:flex}admin-page-footer>:is(footer,footer-ui){justify-content:flex-end;align-items:center;gap:var(--page-header-gap);padding-inline:var(--page-content-inset);padding-block:var(--page-header-gap);display:flex}admin-page-body>iframe{border:0;flex:1;block-size:100%;inline-size:100%;display:block}admin-page-body>section:has(>iframe[data-standalone-frame]){flex:1;min-height:0}admin-page-body>section>iframe[data-standalone-frame]{border:0;flex:1;block-size:100%;inline-size:100%;display:block}[data-tab-content]>section{margin-bottom:var(--page-section-gap)}[data-tab-content]>section>h2{font-size:var(--page-section-size);font-weight:var(--page-section-weight);line-height:var(--page-section-leading);letter-spacing:var(--page-section-tracking);text-transform:var(--page-section-case);color:var(--page-section-color);margin:0 0 var(--page-section-mb);padding-bottom:var(--page-section-pb);border-bottom:var(--page-content-border)}[data-tab-content]>section>[data-section]{gap:var(--page-section-gap) var(--page-header-gap);grid-template-columns:1fr 2fr;display:grid}[data-tab-content]>section>[data-section]>aside>h3{font-size:var(--page-subsection-size);font-weight:var(--page-subsection-weight);color:var(--page-subsection-color);margin:0 0 var(--page-section-pb)}[data-tab-content]>section>[data-section]>aside>p{margin:0}@container page-content (width<=720px){[data-tab-content]>section>[data-section]{gap:var(--page-block-gap) 0;grid-template-columns:minmax(0,1fr)}}@container page-content (width<=768px){admin-page-header>:is(header,header-ui),admin-page-body>:is(section,section-ui){padding-inline:var(--a-space-8)}admin-page-body>:is(section,section-ui){padding-block:var(--a-space-8)}}@container page-content (width<=480px){admin-page-header>:is(header,header-ui),admin-page-body>:is(section,section-ui){padding-inline:var(--a-space-6)}admin-page-body>:is(section,section-ui){padding-block:var(--a-space-6)}}admin-shell [data-spacer]{flex:1}admin-shell [data-actions]{align-items:center;gap:var(--page-actions-gap);display:flex}admin-shell [data-layout-grid]{gap:var(--page-grid-gap);grid-template-columns:1fr 1fr;display:grid}admin-shell [data-layout-grid="3"]{grid-template-columns:1fr 1fr 1fr}admin-shell [data-col]{gap:var(--page-grid-gap);flex-direction:column;display:flex}admin-shell [data-row]{align-items:center;gap:var(--page-grid-gap);display:flex}admin-shell>admin-content{border-inline:var(--page-main-border);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}admin-content>admin-topbar,admin-shell>admin-topbar,admin-sidebar>admin-topbar{align-items:center;gap:var(--page-header-gap);padding:0 var(--a-space-3);height:var(--page-header-height);font-size:var(--page-header-font);border-bottom:var(--page-border);flex-shrink:0;display:flex}admin-content>admin-statusbar,admin-shell>admin-statusbar,admin-sidebar>admin-statusbar{align-items:center;gap:var(--page-header-gap);padding:0 var(--a-space-3);height:var(--page-header-height);font-size:var(--page-header-font);color:var(--page-header-fg-muted);border-top:var(--page-border);flex-shrink:0;display:flex}admin-sidebar>:is(admin-topbar,admin-statusbar){padding-inline:var(--page-sidebar-px)}admin-sidebar>:is(admin-topbar,admin-statusbar)>:where(span,p,small,time,text-ui,code-ui){padding-inline:var(--a-space-2)}admin-content>admin-scroll{overscroll-behavior:contain;scrollbar-width:none;background:var(--page-content-bg);border:var(--page-content-border);min-height:0;box-shadow:var(--page-content-shadow);flex:1;overflow-y:auto}admin-shell[mode~=rounded]>admin-content>admin-scroll{border-radius:var(--page-content-radius)}:is(admin-scroll,admin-content) admin-page{flex-direction:column;min-height:100%;display:flex;container:page-content/inline-size}admin-page>admin-page-header{z-index:1;background:var(--page-content-header-bg);border-bottom:var(--page-content-border);flex-shrink:0;position:sticky;top:0}admin-page>admin-page-body{box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-height:0;display:flex}admin-page>admin-page-footer{z-index:1;background:var(--page-content-header-bg);border-top:var(--page-content-border);flex-shrink:0;position:sticky;bottom:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]){min-width:var(--page-sidebar-min-width);max-width:var(--page-sidebar-max-width);min-height:0;font-size:var(--page-sidebar-font);transition:width var(--page-duration) var(--page-easing);background:var(--page-bg);flex-direction:column;flex-shrink:0;display:flex;position:relative;container:sidebar/inline-size}admin-sidebar[slot=leading]{width:var(--page-sidebar-width-leading);border-right:var(--page-border)}admin-sidebar[slot=trailing]{width:var(--page-sidebar-width-trailing);border-left:var(--page-border)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]{cursor:col-resize;z-index:3;-webkit-user-select:none;user-select:none;width:6px;position:absolute;top:0;bottom:0}admin-sidebar[slot=leading]>[data-sidebar-resize]{right:-3px}admin-sidebar[slot=trailing]>[data-sidebar-resize]{left:-3px}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]:hover{background:var(--page-sidebar-resize-accent);opacity:.5}admin-sidebar[resizing]{transition:none}admin-sidebar[resizing]>[data-sidebar-resize]{background:var(--page-sidebar-resize-accent);opacity:.8}:is(admin-topbar,admin-statusbar)>[slot=action]:first-of-type{margin-inline-start:auto}:is(admin-topbar,admin-statusbar)>[slot=action-leading]{margin-inline-end:var(--page-actions-gap)}:is(admin-topbar,admin-statusbar)>[slot=icon]{color:var(--page-header-fg-muted);flex-shrink:0}:is(admin-topbar,admin-statusbar)>[slot=heading]{font-weight:var(--a-weight-medium,500);color:var(--md-sys-color-neutral-on-surface)}:is(admin-topbar,admin-statusbar)>[slot=description]{color:var(--page-header-fg-muted);font-size:var(--a-ui-sm)}:is(admin-topbar,admin-statusbar)>[slot=action],:is(admin-topbar,admin-statusbar)>[slot=action-leading]{align-items:center;gap:var(--page-actions-gap);flex-shrink:0;display:flex}:is(admin-topbar,admin-statusbar)>[slot=action]~[slot=action]{margin-inline-start:0}:is(admin-topbar,admin-statusbar)>[slot=icon]{align-items:center;display:flex}admin-entity-item{--entity-item-gap:var(--a-space-1);--entity-item-px:var(--a-ui-px);--entity-item-icon-size:calc(var(--a-size) - var(--a-space-2));--entity-item-icon-color:var(--a-fg-muted);--entity-item-avatar-size:1.5rem;align-items:center;gap:var(--entity-item-gap);padding:0 var(--entity-item-px);min-width:0;display:inline-flex;overflow:hidden}admin-entity-item>[slot=icon]{color:var(--entity-item-icon-color);--a-icon-size:var(--entity-item-icon-size);flex-shrink:0;align-items:center;line-height:1;display:inline-flex}admin-entity-item>img[slot=icon]{width:var(--entity-item-avatar-size);height:var(--entity-item-avatar-size);border-radius:var(--a-radius-full);object-fit:cover}admin-entity-item>[slot=label]{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--a-ui-sm);font-weight:var(--a-weight-medium,500);color:var(--md-sys-color-neutral-on-surface);flex:1;overflow:hidden}admin-entity-item>[slot=badge]{flex-shrink:0}@container sidebar (width<=96px){admin-entity-item>[slot=label],admin-entity-item>[slot=badge]{display:none}}
|
|
1
|
+
:where(admin-shell){--page-bg:var(--a-canvas-0);--page-border:1px solid var(--md-sys-color-neutral-outline-variant);--page-main-border:var(--page-border);--page-header-height:var(--a-chrome-app-header-height);--page-header-px:var(--a-space-3);--page-header-gap:var(--a-space-3);--page-header-font:var(--a-ui-size);--page-header-fg-muted:var(--a-fg-muted);--page-sidebar-px:var(--a-space-1);--page-sidebar-gap:var(--a-space-1);--page-sidebar-font:var(--a-ui-size);--page-sidebar-min-width:48px;--page-sidebar-max-width:480px;--page-sidebar-resize-accent:var(--md-sys-color-primary);--page-sidebar-bg:var(--md-sys-color-neutral-surface-dimmest);--page-sidebar-divider-bg:var(--md-sys-color-neutral-outline-variant);--page-sidebar-width-leading:clamp(var(--page-sidebar-min-width), 200px, 240px);--page-sidebar-width-trailing:clamp(var(--page-sidebar-min-width), 200px, 240px);--page-content-bg:var(--a-canvas-2);--page-content-header-bg:var(--page-content-bg);--page-content-radius:var(--a-radius-lg);--page-content-inset:var(--a-space-10);--page-content-max-width:1540px;--page-content-border:1px solid var(--md-sys-color-neutral-outline-variant);--page-content-shadow:var(--a-shadow-sm);--page-content-bp-sm:480px;--page-content-bp-md:720px;--page-content-bp-lg:1024px;--page-section-gap:var(--a-space-6);--page-block-gap:var(--a-space-4);--page-deck-gap:var(--a-space-1);--page-section-size:var(--a-kicker-size);--page-section-weight:var(--a-kicker-weight);--page-section-leading:var(--a-kicker-leading);--page-section-tracking:var(--a-kicker-tracking);--page-section-case:var(--a-kicker-case);--page-section-color:var(--a-kicker-color);--page-section-mb:var(--a-space-3);--page-section-pb:var(--a-space-2);--page-subsection-size:var(--a-subsection-size);--page-subsection-weight:var(--a-subsection-weight);--page-subsection-color:var(--a-subsection-color);--page-sidebar-collapsed-icon:1.0625rem;--page-sidebar-collapsed-avatar:1.875rem;--page-actions-gap:var(--a-space-2);--page-grid-gap:var(--a-space-3);--page-duration:var(--a-duration);--page-duration-fast:var(--a-duration-fast);--page-easing:var(--a-easing);--page-font-family:var(--a-font-family);--page-body-size:var(--a-body-size);--nav-duration:var(--a-duration);--nav-duration-fast:var(--a-duration-fast);--nav-easing:var(--a-easing);--nav-label-px:var(--a-space-4);--nav-label-py:var(--a-space-1);--nav-label-font-size:var(--a-kicker-sm);--nav-label-weight:var(--a-weight-medium);--nav-label-fg:var(--a-fg-muted);--nav-divider-bg:var(--md-sys-color-neutral-outline-variant);--nav-divider-my:var(--a-space-1);--nav-group-indent-rail-bg:var(--md-sys-color-neutral-outline-variant);--nav-group-icon-font-size:var(--a-ui-size);--nav-group-text-weight:var(--a-weight-medium);--nav-group-badge-bg:var(--a-bg-muted);--nav-group-badge-px:var(--a-space-1);--nav-group-badge-radius:var(--a-radius-full);--nav-item-icon-font-size:var(--a-ui-size);--nav-item-selected-weight:var(--a-weight-medium);--nav-item-badge-fg:var(--a-fg-muted);--nav-item-badge-bg:var(--a-bg-muted);--nav-item-badge-px:var(--a-space-1);--nav-item-badge-radius:var(--a-radius-full);--nav-item-trailing-font:var(--a-ui-sm);--nav-item-trailing-fg:var(--a-fg-muted);--nav-item-trailing-border:var(--md-sys-color-neutral-outline-variant);--nav-item-trailing-radius:var(--a-radius-sm);--nav-item-trailing-px:var(--a-space-0-5);--a-icon-size:18px}admin-shell[mode~=borderless]{--page-main-border:none;--page-border:none}admin-shell{background:var(--page-bg);overscroll-behavior:none;height:100dvh;font-family:var(--page-font-family);font-size:var(--page-body-size);display:flex;position:fixed;inset:0;overflow:hidden}admin-shell:not(:has(>:is(asideadmin-sidebar[slot=trailing],admin-sidebar[slot=trailing]):not([hidden])))>admin-content>admin-scroll{margin-inline-end:var(--a-space-2)}admin-shell:not(:has(>:is(header,header-ui,admin-topbar):not([hidden]),>admin-content>admin-topbar:not([hidden])))>admin-content>admin-scroll{margin-block-start:var(--a-space-2)}admin-shell:not(:has(>:is(footer,footer-ui,admin-statusbar):not([hidden]),>admin-content>admin-statusbar:not([hidden])))>admin-content>admin-scroll{margin-block-end:var(--a-space-2)}admin-shell>admin-content>admin-scroll::-webkit-scrollbar{display:none}admin-shell>admin-content>admin-scroll:has(>[data-subnav]:not([hidden])){grid-template-columns:var(--subnav-width,14rem) 1fr;grid-template-rows:minmax(0,1fr);gap:0;display:grid}admin-shell>admin-content>admin-scroll>[data-subnav]{overscroll-behavior:contain;border-inline-end:1px solid var(--md-sys-color-neutral-outline-variant);min-height:0;padding-block:var(--a-space-2);padding-inline:var(--a-space-2);overflow-y:auto}@container (width<=40rem){admin-shell>admin-content>admin-scroll:has(>[data-subnav]:not([hidden])){grid-template-columns:1fr}admin-shell>admin-content>admin-scroll>[data-subnav]{border-inline-end:none;border-block-end:1px solid var(--md-sys-color-neutral-outline-variant)}}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]){background:var(--page-sidebar-bg);min-width:var(--page-sidebar-min-width);max-width:var(--page-sidebar-max-width);min-height:0;font-size:var(--page-sidebar-font);transition:width var(--page-duration) var(--page-easing);flex-direction:column;flex-shrink:0;display:flex;position:relative;container:sidebar/inline-size}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]{cursor:col-resize;width:6px;transition:background var(--page-duration-fast) var(--page-easing);z-index:3;background:0 0;position:absolute;top:0;bottom:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]:hover,:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])[resizing]>[data-sidebar-resize]{background:var(--page-sidebar-resize-accent)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])[resizing]{-webkit-user-select:none;user-select:none;transition:none}admin-sidebar[slot=leading]{width:var(--page-sidebar-width-leading)}admin-sidebar[slot=trailing]{width:var(--page-sidebar-width-trailing)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui),:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui){align-items:center;gap:var(--page-sidebar-gap);padding:var(--page-sidebar-px);flex-shrink:0;min-width:0;display:flex;overflow:hidden}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui){min-height:var(--page-header-height);border-bottom:var(--page-border)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui){min-height:var(--page-header-height);border-top:var(--page-border);margin-top:auto}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=icon],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=icon]{color:var(--page-header-fg-muted);flex-shrink:0;align-items:center;display:flex}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=heading],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=heading]{font-weight:var(--a-weight-medium);color:var(--md-sys-color-neutral-on-surface)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=description],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=description]{color:var(--page-header-fg-muted);font-size:var(--a-ui-sm)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=action],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=action]{align-items:center;gap:var(--page-actions-gap);flex-shrink:0;margin-inline-start:auto;display:flex}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=action]~[slot=action],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=action]~[slot=action]{margin-inline-start:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(header,header-ui)>[slot=action-leading],:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(footer,footer-ui)>[slot=action-leading]{align-items:center;gap:var(--page-actions-gap);flex-shrink:0;margin-inline-end:auto;display:flex}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(section,section-ui){padding:var(--page-sidebar-px);scrollbar-width:none;flex:1;min-height:0;overflow-y:auto}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(section,section-ui)::-webkit-scrollbar{display:none}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]) span[slot=pad]{padding:var(--page-sidebar-px);display:block}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]) nav-ui{border:none;padding:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>:is(section,section-ui)>hr[data-nav-divider]{background:var(--page-sidebar-divider-bg);height:1px;margin:var(--page-sidebar-gap) var(--page-sidebar-px);border:none}@container sidebar (width<=96px){:is(admin-topbar,admin-statusbar){padding:var(--page-sidebar-px);justify-content:center}:is(section,section-ui){flex-direction:column;align-items:center;display:flex}select-ui [slot=display],select-ui [slot=caret],select-ui [data-chips]{display:none}select-ui [slot=trigger]{width:100%;min-height:var(--page-header-height);justify-content:center;padding:0}select-ui [slot=leading]{--a-icon-size:var(--page-sidebar-collapsed-icon);font-size:var(--page-sidebar-collapsed-icon)}select-ui img[slot=leading]{width:var(--page-sidebar-collapsed-avatar);height:var(--page-sidebar-collapsed-avatar)}select-ui adia-mark-ui[slot=leading]{--adia-mark-size:var(--page-sidebar-collapsed-avatar)}nav-ui [slot=text],nav-ui [slot=badge],nav-ui [slot=caret],nav-ui [slot=trailing],nav-ui [data-nav-label],nav-ui [data-nav-divider]{display:none!important}nav-group-ui [slot=header]{min-width:var(--nav-group-row-height);min-height:var(--nav-group-row-height);justify-content:center;padding:0}nav-item-ui{min-width:var(--nav-item-row-height);min-height:var(--nav-item-row-height);justify-content:center;padding:0}nav-ui{align-items:center;width:100%}button-ui{--button-px:0;justify-content:center;width:auto!important}button-ui [slot=trailing]{display:none}:scope,:is(admin-topbar,admin-statusbar),:is(section,section-ui,nav){overflow:hidden}:is(span,p,div,h1,h2,h3,h4,h5,h6)[slot=heading],[slot=heading]:not(:has(>[slot])){display:none}button.nav-item,a.nav-item,[data-nav]{text-indent:-9999px;white-space:nowrap;justify-content:center;overflow:hidden}button.nav-item>icon-ui,a.nav-item>icon-ui,[data-nav]>icon-ui,button.nav-item>:has(>icon-ui),a.nav-item>:has(>icon-ui),[data-nav]>:has(>icon-ui){text-indent:0}}admin-page-header>:is(header,header-ui),admin-page-body>:is(section,section-ui),admin-page-footer>:is(footer,footer-ui){max-width:var(--page-content-max-width);box-sizing:border-box;width:100%;margin-inline:auto}admin-page-header>:is(header,header-ui){padding-inline:var(--page-content-inset)}admin-page-body>:is(section,section-ui):not(:last-child){border-bottom:var(--page-content-border)}admin-page-header[data-content-full]>:is(header,header-ui),admin-page-body[data-content-full]>:is(section,section-ui),admin-page-footer[data-content-full]>:is(footer,footer-ui),admin-page-header>:is(header,header-ui)[data-content-full],admin-page-body>:is(section,section-ui)[data-content-full],admin-page-footer>:is(footer,footer-ui)[data-content-full]{max-width:100%}admin-page-header>:is(header,header-ui){gap:var(--page-header-gap);padding-block:var(--page-content-inset) var(--page-header-gap);flex-direction:column;display:flex}admin-page-header>:is(header,header-ui):has(tabs-ui){padding-bottom:0}admin-page-header:has(>:is(header,header-ui)[data-flush]){background:0 0;border-bottom:none;position:static}admin-page-header>:is(header,header-ui)[data-compact]{padding-block:var(--page-header-px)}admin-page-header>:is(header,header-ui)>div:first-of-type{justify-content:space-between;align-items:center;gap:var(--page-header-gap);display:flex}admin-page-header h1,admin-page-header>:is(header,header-ui)>p{margin:0}admin-page-body>:is(section,section-ui){padding:var(--page-content-inset);gap:var(--page-section-gap,var(--a-space-8));flex-direction:column;display:flex}admin-page-footer>:is(footer,footer-ui){justify-content:flex-end;align-items:center;gap:var(--page-header-gap);padding-inline:var(--page-content-inset);padding-block:var(--page-header-gap);display:flex}admin-page-body>iframe{border:0;flex:1;block-size:100%;inline-size:100%;display:block}admin-page-body>section:has(>iframe[data-standalone-frame]){flex:1;min-height:0}admin-page-body>section>iframe[data-standalone-frame]{border:0;flex:1;block-size:100%;inline-size:100%;display:block}[data-tab-content]>section{margin-bottom:var(--page-section-gap)}[data-tab-content]>section>h2{font-size:var(--page-section-size);font-weight:var(--page-section-weight);line-height:var(--page-section-leading);letter-spacing:var(--page-section-tracking);text-transform:var(--page-section-case);color:var(--page-section-color);margin:0 0 var(--page-section-mb);padding-bottom:var(--page-section-pb);border-bottom:var(--page-content-border)}[data-tab-content]>section>[data-section]{gap:var(--page-section-gap) var(--page-header-gap);grid-template-columns:1fr 2fr;display:grid}[data-tab-content]>section>[data-section]>aside>h3{font-size:var(--page-subsection-size);font-weight:var(--page-subsection-weight);color:var(--page-subsection-color);margin:0 0 var(--page-section-pb)}[data-tab-content]>section>[data-section]>aside>p{margin:0}@container page-content (width<=720px){[data-tab-content]>section>[data-section]{gap:var(--page-block-gap) 0;grid-template-columns:minmax(0,1fr)}}@container page-content (width<=768px){admin-page-header>:is(header,header-ui),admin-page-body>:is(section,section-ui){padding-inline:var(--a-space-8)}admin-page-body>:is(section,section-ui){padding-block:var(--a-space-8)}}@container page-content (width<=480px){admin-page-header>:is(header,header-ui),admin-page-body>:is(section,section-ui){padding-inline:var(--a-space-6)}admin-page-body>:is(section,section-ui){padding-block:var(--a-space-6)}}admin-shell [data-spacer]{flex:1}admin-shell [data-actions]{align-items:center;gap:var(--page-actions-gap);display:flex}admin-shell [data-layout-grid]{gap:var(--page-grid-gap);grid-template-columns:1fr 1fr;display:grid}admin-shell [data-layout-grid="3"]{grid-template-columns:1fr 1fr 1fr}admin-shell [data-col]{gap:var(--page-grid-gap);flex-direction:column;display:flex}admin-shell [data-row]{align-items:center;gap:var(--page-grid-gap);display:flex}admin-shell>admin-content{border-inline:var(--page-main-border);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}admin-content>admin-topbar,admin-shell>admin-topbar,admin-sidebar>admin-topbar{align-items:center;gap:var(--page-header-gap);padding:0 var(--a-space-3);height:var(--page-header-height);font-size:var(--page-header-font);border-bottom:var(--page-border);flex-shrink:0;display:flex}admin-content>admin-statusbar,admin-shell>admin-statusbar,admin-sidebar>admin-statusbar{align-items:center;gap:var(--page-header-gap);padding:0 var(--a-space-3);height:var(--page-header-height);font-size:var(--page-header-font);color:var(--page-header-fg-muted);border-top:var(--page-border);flex-shrink:0;display:flex}admin-sidebar>:is(admin-topbar,admin-statusbar){padding-inline:var(--page-sidebar-px)}admin-sidebar>:is(admin-topbar,admin-statusbar)>:where(span,p,small,time,text-ui,code-ui){padding-inline:var(--a-space-2)}admin-content>admin-scroll{overscroll-behavior:contain;scrollbar-width:none;background:var(--page-content-bg);border:var(--page-content-border);min-height:0;box-shadow:var(--page-content-shadow);flex:1;overflow-y:auto}admin-shell[mode~=rounded]>admin-content>admin-scroll{border-radius:var(--page-content-radius)}:is(admin-scroll,admin-content) admin-page{flex-direction:column;min-height:100%;display:flex;container:page-content/inline-size}admin-page>admin-page-header{z-index:1;background:var(--page-content-header-bg);border-bottom:var(--page-content-border);flex-shrink:0;position:sticky;top:0}admin-page>admin-page-body{box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-height:0;display:flex}admin-page>admin-page-footer{z-index:1;background:var(--page-content-header-bg);border-top:var(--page-content-border);flex-shrink:0;position:sticky;bottom:0}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing]){min-width:var(--page-sidebar-min-width);max-width:var(--page-sidebar-max-width);min-height:0;font-size:var(--page-sidebar-font);transition:width var(--page-duration) var(--page-easing);background:var(--page-bg);flex-direction:column;flex-shrink:0;display:flex;position:relative;container:sidebar/inline-size}admin-sidebar[slot=leading]{width:var(--page-sidebar-width-leading);border-right:var(--page-border)}admin-sidebar[slot=trailing]{width:var(--page-sidebar-width-trailing);border-left:var(--page-border)}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]{cursor:col-resize;z-index:3;-webkit-user-select:none;user-select:none;width:6px;position:absolute;top:0;bottom:0}admin-sidebar[slot=leading]>[data-sidebar-resize]{right:-3px}admin-sidebar[slot=trailing]>[data-sidebar-resize]{left:-3px}:is(admin-sidebar[slot=leading],admin-sidebar[slot=trailing])>[data-sidebar-resize]:hover{background:var(--page-sidebar-resize-accent);opacity:.5}admin-sidebar[resizing]{transition:none}admin-sidebar[resizing]>[data-sidebar-resize]{background:var(--page-sidebar-resize-accent);opacity:.8}:is(admin-topbar,admin-statusbar)>[slot=action]:first-of-type{margin-inline-start:auto}:is(admin-topbar,admin-statusbar)>[slot=action-leading]{margin-inline-end:var(--page-actions-gap)}:is(admin-topbar,admin-statusbar)>[slot=icon]{color:var(--page-header-fg-muted);flex-shrink:0}:is(admin-topbar,admin-statusbar)>[slot=heading]{font-weight:var(--a-weight-medium,500);color:var(--md-sys-color-neutral-on-surface)}:is(admin-topbar,admin-statusbar)>[slot=description]{color:var(--page-header-fg-muted);font-size:var(--a-ui-sm)}:is(admin-topbar,admin-statusbar)>[slot=action],:is(admin-topbar,admin-statusbar)>[slot=action-leading]{align-items:center;gap:var(--page-actions-gap);flex-shrink:0;display:flex}:is(admin-topbar,admin-statusbar)>[slot=action]~[slot=action]{margin-inline-start:0}:is(admin-topbar,admin-statusbar)>[slot=icon]{align-items:center;display:flex}admin-entity-item{--entity-item-gap:var(--a-space-1);--entity-item-px:var(--a-ui-px);--entity-item-icon-size:calc(var(--a-size) - var(--a-space-2));--entity-item-icon-color:var(--a-fg-muted);--entity-item-avatar-size:1.5rem;align-items:center;gap:var(--entity-item-gap);padding:0 var(--entity-item-px);min-width:0;display:inline-flex;overflow:hidden}admin-entity-item>[slot=icon]{color:var(--entity-item-icon-color);--a-icon-size:var(--entity-item-icon-size);flex-shrink:0;align-items:center;line-height:1;display:inline-flex}admin-entity-item>img[slot=icon]{width:var(--entity-item-avatar-size);height:var(--entity-item-avatar-size);border-radius:var(--a-radius-full);object-fit:cover}admin-entity-item>[slot=label]{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--a-ui-sm);font-weight:var(--a-weight-medium,500);color:var(--md-sys-color-neutral-on-surface);flex:1;overflow:hidden}admin-entity-item>[slot=badge]{flex-shrink:0}@container sidebar (width<=96px){admin-entity-item>[slot=label],admin-entity-item>[slot=badge]{display:none}}
|
|
@@ -7,4 +7,4 @@ function ge(e,t){customElements.define(e,t)}function R(e,t){return customElement
|
|
|
7
7
|
`+u+" Compute the full attr value as a single expression and interpolate the whole.")}continue}let c=+a[1],s=o.name;s[0]==="@"?(i.removeAttribute(s),n[c]={t:"e",n:i,name:s.slice(1),c:void 0,_fx:null}):s[0]==="."?(i.removeAttribute(s),n[c]={t:"p",n:i,name:W(i,s.slice(1)),c:void 0,_fx:null,_resolved:!1}):s[0]==="?"?(i.removeAttribute(s),console.warn(`[template] Lit-style boolean attribute "${s}=" is not supported.
|
|
8
8
|
Element: <${i.tagName.toLowerCase()}>
|
|
9
9
|
Use .${s.slice(1)}=\${value} (property binding) instead \u2014 the primitive reflects the property to the DOM attribute for you.
|
|
10
|
-
See USAGE.md \xA7 Template parser \u2014 invariants + unsupported syntaxes.`),n[c]={t:"n",n:document.createTextNode(""),c:void 0,_fx:null}):n[c]={t:"a",n:i,name:s,c:void 0,_fx:null}}return n}function C(e){for(let t of e)t&&t._fx&&(t._fx(),t._fx=null)}function M(e){if(e.n.nodeType===1&&e.n[j])return e.n;let t=document.createElement("span");return t.style.display="contents",t.setAttribute("role","presentation"),t[j]=!0,e.n.replaceWith(t),e.n=t,t}var U=e=>e!=null&&typeof e=="object"&&e.strings,V=e=>typeof e=="function"||e!=null&&typeof e.handleEvent=="function";function L(e,t){if(t!==e.c){if(e.t==="n")if(t!=null&&t._directive)t._commit(M(e));else if(U(t))g(t,M(e));else if(Array.isArray(t)){let n=M(e);n.replaceChildren();for(let r of t)if(U(r)){let i=document.createElement("span");i.style.display="contents",i.setAttribute("role","presentation"),n.appendChild(i),g(r,i)}else n.appendChild(document.createTextNode(r??""))}else if(v(t))e.n.replaceWith(t),e.n=t;else if(e.n[j]){let n=document.createTextNode(t??"");e.n.replaceWith(n),e.n=n}else e.n.textContent=t??"";else if(e.t==="a")t==null||t===!1?e.n.removeAttribute(e.name):e.n.setAttribute(e.name,t===!0?"":t);else if(e.t==="p"){if(!e._resolved){let n=W(e.n,e.name);n!==e.name&&(e.name=n),e._resolved=!0}e.n[e.name]=t}else e.t==="e"&&(V(e.c)&&e.n.removeEventListener(e.name,e.c),V(t)&&e.n.addEventListener(e.name,t));e.c=t}}function se(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(!r)continue;let i=t[n],o=r.t!=="e"&&typeof i=="function",a=!o&&r.t!=="e"&&k(i);if(r._fx&&!o&&!a&&(r._fx(),r._fx=null),o){r._fx||(r._fx=m(()=>L(r,i())));continue}if(a){r._fx||(r._fx=m(()=>L(r,i.value)));continue}L(r,i)}}function ae(e,t,n){return{_directive:!0,_commit(r){let i=r[y]||new Map,o=new Map,a=[];for(let s=0;s<e.length;s++){let l=t(e[s],s);if(o.has(l))continue;a.push(l);let u=n(e[s],s);if(i.has(l)){let d=i.get(l);g(u,d),o.set(l,d)}else{let d=document.createElement("span");d.style.display="contents",d.setAttribute("role","presentation"),g(u,d),o.set(l,d)}}for(let[s,l]of i)o.has(s)||(l._i&&C(l._i.p),l.remove());let c=null;for(let s=a.length-1;s>=0;s--){let l=o.get(a[s]);(l.nextSibling!==c||l.parentNode!==r)&&r.insertBefore(l,c),c=l}r[y]=o}}}var x=new Map;function le(e,t){return t===`data-${e}`||t.startsWith(`data-${e}-`)}function z(e,t){return e===t||e.startsWith(`${t}-`)||t.startsWith(`${e}-`)}function ce(e){let t=[e.name,...e.prefixes||[]],n=[...e.attributes||[],...e.config||[]].filter(r=>!t.some(i=>le(i,r)));if(n.length>0)throw new Error(`Trait "${e.name}" declares attribute(s) outside its owned data-* namespace: ${n.join(", ")}. A trait owns "data-${e.name}" / "data-${e.name}-*" by default; register any other prefix via defineTrait({ ..., prefixes: [...] }) (ADR-0060) or rename the attribute.`)}function ue(e){let t=e.prefixes||[];for(let[n,r]of x){if(n===e.name)continue;let i=r.schema,o=[i.name,...i.prefixes||[]];for(let a of t)for(let c of o)if(z(a,c))throw new Error(`Trait "${e.name}"'s registered prefix "${a}" overlaps trait "${i.name}"'s owned namespace ("${c}"). Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`);for(let a of i.prefixes||[])if(z(a,e.name))throw new Error(`Trait "${e.name}"'s name overlaps trait "${i.name}"'s registered prefix "${a}". Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`)}}var G=new Set(["input-interaction","keyboard-navigation","forms-data","layout-measurement","motion-positioning","animation-feedback","visual-dynamics","interaction-delight","audio-haptics-sensory"]);function _e(e){if(!e.name)throw new Error("Trait requires a name");if(!e.setup)throw new Error(`Trait "${e.name}" requires a setup function`);if(!e.category)throw new Error(`Trait "${e.name}" requires a category`);if(!G.has(e.category))throw new Error(`Trait "${e.name}" has unknown category "${e.category}". Known: ${[...G].join(", ")}`);if(!e.description)throw new Error(`Trait "${e.name}" requires a description`);ce(e),ue(e);let t=Object.freeze({name:e.name,category:e.category,description:e.description,attributes:Object.freeze(e.attributes||[]),events:Object.freeze(e.events||[]),config:Object.freeze(e.config||[]),prefixes:Object.freeze(e.prefixes||[])});function n(){let r=null;return{schema:t,connect(i,o){r=e.setup({host:i,...o||{}})},disconnect(i){r&&(r(),r=null);for(let o of t.attributes)i.hasAttribute(o)&&(console.warn(`Trait "${t.name}": attribute "${o}" still present after disconnect`),i.removeAttribute(o))}}}return n.schema=t,x.set(e.name,n),n}function K(e){return x.get(e)||null}function Ce(e){return x.get(e)?.schema||null}function Oe(){return[...x.keys()]}var P=Symbol(),w=Symbol();function fe(e,t){e[w]=new Map,e[P]=new Map;for(let[n,r]of Object.entries(t)){let i=r.attribute??n.toLowerCase(),o=r.type??String,a=Object.prototype.hasOwnProperty.call(e,n),c=a?e[n]:void 0;a&&delete e[n];let s=p(r.default??void 0);e[P].set(n,s),Object.defineProperty(e,n,{get(){return s.value},set(l){let u=s.peek();Object.is(u,l)||(e[w].set(n,u),s.value=l,r.reflect&&he(e,i,l,o))},configurable:!0}),a&&(s.value=c)}}var de=Object.freeze({setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0},get form(){return null},get labels(){return[]},get validity(){return{}},get validationMessage(){return""},get willValidate(){return!1}});function he(e,t,n,r){r===Boolean?n?e.setAttribute(t,""):e.removeAttribute(t):n==null?e.removeAttribute(t):e.setAttribute(t,String(n))}var X=(e,t)=>t===Boolean?e!==null:t===Number?e===null?null:+e:e;function me(e){if(Object.hasOwn(e,"_sa"))return;e._sa=!0;let t=e.styles;if(!t||!("adoptedStyleSheets"in document))return;let n=Array.isArray(t)?t:[t];document.adoptedStyleSheets=[...document.adoptedStyleSheets,...n.filter(r=>!document.adoptedStyleSheets.includes(r))]}function Y(e){if(Object.hasOwn(e,"_pp"))return;e._pp={};let t=e.parts;if(t)for(let[n,r]of Object.entries(t)){let i=document.createElement("template");i.innerHTML=r,e._pp[n]=i.content.firstElementChild}}var O=class extends HTMLElement{static get properties(){return{}}static get traits(){return[]}static get observedAttributes(){let t=Object.entries(this.properties).map(([n,r])=>r.attribute??n.toLowerCase());return t.includes("traits")?t:[...t,"traits"]}#i=[];#n=[];#o=[];#t=null;#r=null;#e=null;#a=p(0);constructor(){super(),this.internals=typeof this.attachInternals=="function"?this.attachInternals():de,fe(this,this.constructor.properties)}connectedCallback(){let t=this.constructor;t._tag||(t._tag=this.localName),me(t),Y(t),E(()=>{for(let[n,r]of Object.entries(t.properties)){let i=r.attribute??n.toLowerCase();this.hasAttribute(i)?this[n]=X(this.getAttribute(i),r.type??String):r.reflect&&r.type===Boolean&&this[n]===!0&&this.setAttribute(i,"")}}),E(()=>this.connected()),this.#i.push(m(()=>{for(let r of this[P].values())r.value;this.#a.value;let n=t.template(this);if(n&&g(n,this),this.render(),this[w].size){let r=new Map(this[w]);this[w].clear(),this.updated(r)}},{host:this.localName,onError:this.onError?n=>this.onError(n):null})),this.#e||(this.#e=new Set);for(let n of t.traits)this.#s(n);this.#c(),this.#t&&this.#l()}disconnectedCallback(){this._i&&C(this._i.p);for(let t of this.#i)t();this.#i.length=0;for(let t of this.#o)t.value=void 0;this.#o.length=0;for(let t of this.#n)t.disconnect(this);this.#n.length=0,this.#e?.clear(),this.#r?.(),this.#r=null,this.#t?.disconnect?.(this),this.disconnected()}#l(){let t=this.#t;t.connect?.(this),this.#r=t.subscribe?.(()=>{this.#a.value++})}get controller(){return this.#t}set controller(t){this.#r?.(),this.#r=null,this.#t?.disconnect?.(this),this.#t=t,t&&this.isConnected&&this.#l()}#s(t,{declarative:n=!1}={}){this.#e.add(t);let r=t();r.connect(this,{host:this,signal:p,computed:N,effect:m}),n&&(r._declarative=!0),this.#n.push(r)}addTrait(t){return this.#e||(this.#e=new Set),this.#e.has(t)?this:(this.#s(t),this)}#c(){let t=this.getAttribute("traits");if(t)for(let n of t.split(/\s+/).filter(Boolean)){let r=K(n);if(!r){console.warn(`<${this.localName}> traits="${n}" \u2014 trait not found. Did you forget to import it?`);continue}this.#e.has(r)||this.#s(r,{declarative:!0})}}#f(){if(!this.#e)return;let t=[];for(let n of this.#n)if(n._declarative){n.disconnect(this);for(let r of this.#e)if(r.schema?.name&&n.schema?.name===r.schema.name){this.#e.delete(r);break}}else t.push(n);this.#n.length=0,this.#n.push(...t),this.#c()}attributeChangedCallback(t,n,r){if(t==="traits"){this.isConnected&&this.#f();return}for(let[i,o]of Object.entries(this.constructor.properties))if((o.attribute??i.toLowerCase())===t){this[i]=X(r,o.type??String);break}}static template=()=>null;static create(t={}){let n=this._tag??customElements.getName?.(this);if(!n)throw new Error("Component not registered");let r=document.createElement(n);for(let[i,o]of Object.entries(t))r[i]=o;return r}signal(t){let n=p(t);return this.#o.push(n),n}ensure(t){for(let o of this.children)if(o.getAttribute("slot")===t)return o;let n=this.#u(t);if(n)return n;Y(this.constructor);let r=this.constructor._pp?.[t];if(!r)return null;let i=r.cloneNode(!0);return i._uiPart=!0,this.appendChild(i),i}drop(t){for(let r of this.children)if(r.getAttribute("slot")===t){r.remove();return}let n=this.#u(t);n&&n.remove()}#u(t){for(let n of this.querySelectorAll(`[slot="${t}"]`)){let r=n.parentElement,i=!0;for(;r&&r!==this;){if(r.localName.includes("-")){i=!1;break}r=r.parentElement}if(i&&r===this)return n}return null}reconcile(t,n,r,i){let o=t[y]||new Map,a=new Map,c=[];for(let l=0;l<n.length;l++){let u=n[l],d=r(u,l);if(a.has(d))continue;let S=o.get(d);S?i(u,l,S):S=i(u,l,null),a.set(d,S),c.push(d)}for(let[l,u]of o)a.has(l)||u.remove();let s=null;for(let l=c.length-1;l>=0;l--){let u=a.get(c[l]);(u.nextSibling!==s||u.parentNode!==t)&&t.insertBefore(u,s),s=u}t[y]=a}connected(){}render(){}disconnected(){}updated(t){}};var pe="rounded borderless",T=class e extends O{static properties={mode:{type:String,default:"",reflect:!0}};static template=()=>null;connected(){this.hasAttribute("mode")||(this.mode=pe),this.addEventListener("click",this.#n),this.#o()}#i(t){return this.querySelector(`admin-sidebar[slot="${t}"], admin-sidebar[name="${t}"]`)}#n=t=>{let n=t.target.closest("[data-sidebar-toggle]");if(n&&this.contains(n)){let i=n.getAttribute("data-sidebar-toggle"),o=this.#i(i);o&&typeof o.toggle!="function"&&this.#r("admin-sidebar",`slot="${i}"`,"Sidebar toggle"),o?.toggle?.();return}let r=t.target.closest("[data-command-trigger]");if(r&&this.contains(r)){t.stopPropagation();let i=this.querySelector("admin-command");if(!i)return;if(typeof i.show!="function"){this.#r("admin-command","","Command palette");return}i.show()}};#o(){let t=this.querySelector("admin-command"),n=this.querySelector("nav-ui");!t||!n||t.addEventListener("command-select",r=>{let i=n.querySelector(`nav-item-ui[value="${r.detail.value}"]`);i&&n.select(i)})}static#t=new WeakSet;#r(t,n,r){let i=n?this.querySelector(`${t}[${n}], ${t}[${n.replace("slot=","name=")}]`):this.querySelector(t);if(!i||e.#t.has(i))return;e.#t.add(i);let o=t==="admin-sidebar"?"shell/admin-sidebar":"shell/admin-command";console.warn(`[admin-shell] <${t}${n?" "+n:""}> is in the DOM but ${t==="admin-sidebar"?"AdminSidebar":"AdminCommand"} is NOT registered \u2014 ${r} will not work. Import the cluster barrel \`@adia-ai/web-modules/shell\` (which registers all shell elements), OR add \`@adia-ai/web-modules/${o}\` alongside \`@adia-ai/web-modules/shell/admin-shell\` on the per-component path. Closes FB-55 silent-failure trap.`)}};R("admin-shell",T);export{T as AdminShell};
|
|
10
|
+
See USAGE.md \xA7 Template parser \u2014 invariants + unsupported syntaxes.`),n[c]={t:"n",n:document.createTextNode(""),c:void 0,_fx:null}):n[c]={t:"a",n:i,name:s,c:void 0,_fx:null}}return n}function C(e){for(let t of e)t&&t._fx&&(t._fx(),t._fx=null)}function M(e){if(e.n.nodeType===1&&e.n[j])return e.n;let t=document.createElement("span");return t.style.display="contents",t.setAttribute("role","presentation"),t[j]=!0,e.n.replaceWith(t),e.n=t,t}var U=e=>e!=null&&typeof e=="object"&&e.strings,V=e=>typeof e=="function"||e!=null&&typeof e.handleEvent=="function";function L(e,t){if(t!==e.c){if(e.t==="n")if(t!=null&&t._directive)t._commit(M(e));else if(U(t))g(t,M(e));else if(Array.isArray(t)){let n=M(e);n.replaceChildren();for(let r of t)if(U(r)){let i=document.createElement("span");i.style.display="contents",i.setAttribute("role","presentation"),n.appendChild(i),g(r,i)}else n.appendChild(document.createTextNode(r??""))}else if(v(t))e.n.replaceWith(t),e.n=t;else if(e.n[j]){let n=document.createTextNode(t??"");e.n.replaceWith(n),e.n=n}else e.n.textContent=t??"";else if(e.t==="a")t==null||t===!1?e.n.removeAttribute(e.name):e.n.setAttribute(e.name,t===!0?"":t);else if(e.t==="p"){if(!e._resolved){let n=W(e.n,e.name);n!==e.name&&(e.name=n),e._resolved=!0}e.n[e.name]=t}else e.t==="e"&&(V(e.c)&&e.n.removeEventListener(e.name,e.c),V(t)&&e.n.addEventListener(e.name,t));e.c=t}}function se(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(!r)continue;let i=t[n],o=r.t!=="e"&&typeof i=="function",a=!o&&r.t!=="e"&&k(i);if(r._fx&&!o&&!a&&(r._fx(),r._fx=null),o){r._fx||(r._fx=m(()=>L(r,i())));continue}if(a){r._fx||(r._fx=m(()=>L(r,i.value)));continue}L(r,i)}}function ae(e,t,n){return{_directive:!0,_commit(r){let i=r[y]||new Map,o=new Map,a=[];for(let s=0;s<e.length;s++){let l=t(e[s],s);if(o.has(l))continue;a.push(l);let u=n(e[s],s);if(i.has(l)){let d=i.get(l);g(u,d),o.set(l,d)}else{let d=document.createElement("span");d.style.display="contents",d.setAttribute("role","presentation"),g(u,d),o.set(l,d)}}for(let[s,l]of i)o.has(s)||(l._i&&C(l._i.p),l.remove());let c=null;for(let s=a.length-1;s>=0;s--){let l=o.get(a[s]);(l.nextSibling!==c||l.parentNode!==r)&&r.insertBefore(l,c),c=l}r[y]=o}}}var x=new Map;function le(e,t){return t===`data-${e}`||t.startsWith(`data-${e}-`)}function z(e,t){return e===t||e.startsWith(`${t}-`)||t.startsWith(`${e}-`)}function ce(e){let t=[e.name,...e.prefixes||[]],n=[...e.attributes||[],...e.config||[]].filter(r=>!t.some(i=>le(i,r)));if(n.length>0)throw new Error(`Trait "${e.name}" declares attribute(s) outside its owned data-* namespace: ${n.join(", ")}. A trait owns "data-${e.name}" / "data-${e.name}-*" by default; register any other prefix via defineTrait({ ..., prefixes: [...] }) (ADR-0060) or rename the attribute.`)}function ue(e){let t=e.prefixes||[];for(let[n,r]of x){if(n===e.name)continue;let i=r.schema,o=[i.name,...i.prefixes||[]];for(let a of t)for(let c of o)if(z(a,c))throw new Error(`Trait "${e.name}"'s registered prefix "${a}" overlaps trait "${i.name}"'s owned namespace ("${c}"). Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`);for(let a of i.prefixes||[])if(z(a,e.name))throw new Error(`Trait "${e.name}"'s name overlaps trait "${i.name}"'s registered prefix "${a}". Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`)}}var G=new Set(["input-interaction","keyboard-navigation","forms-data","layout-measurement","motion-positioning","animation-feedback","visual-dynamics","interaction-delight","audio-haptics-sensory"]);function _e(e){if(!e.name)throw new Error("Trait requires a name");if(!e.setup)throw new Error(`Trait "${e.name}" requires a setup function`);if(!e.category)throw new Error(`Trait "${e.name}" requires a category`);if(!G.has(e.category))throw new Error(`Trait "${e.name}" has unknown category "${e.category}". Known: ${[...G].join(", ")}`);if(!e.description)throw new Error(`Trait "${e.name}" requires a description`);ce(e),ue(e);let t=Object.freeze({name:e.name,category:e.category,description:e.description,attributes:Object.freeze(e.attributes||[]),events:Object.freeze(e.events||[]),config:Object.freeze(e.config||[]),prefixes:Object.freeze(e.prefixes||[])});function n(){let r=null;return{schema:t,connect(i,o){r=e.setup({host:i,...o||{}})},disconnect(i){r&&(r(),r=null);for(let o of t.attributes)i.hasAttribute(o)&&(console.warn(`Trait "${t.name}": attribute "${o}" still present after disconnect`),i.removeAttribute(o))}}}return n.schema=t,x.set(e.name,n),n}function K(e){return x.get(e)||null}function Ce(e){return x.get(e)?.schema||null}function Oe(){return[...x.keys()]}var P=Symbol(),w=Symbol();function fe(e,t){e[w]=new Map,e[P]=new Map;for(let[n,r]of Object.entries(t)){let i=r.attribute??n.toLowerCase(),o=r.type??String,a=Object.prototype.hasOwnProperty.call(e,n),c=a?e[n]:void 0;a&&delete e[n];let s=p(r.default??void 0);e[P].set(n,s),Object.defineProperty(e,n,{get(){return s.value},set(l){let u=s.peek();Object.is(u,l)||(e[w].set(n,u),s.value=l,r.reflect&&he(e,i,l,o))},configurable:!0}),a&&(s.value=c)}}var de=Object.freeze({setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0},get form(){return null},get labels(){return[]},get validity(){return{}},get validationMessage(){return""},get willValidate(){return!1}});function he(e,t,n,r){r===Boolean?n?e.setAttribute(t,""):e.removeAttribute(t):n==null?e.removeAttribute(t):e.setAttribute(t,String(n))}var X=(e,t)=>t===Boolean?e!==null&&e!=="false":t===Number?e===null?null:+e:e;function me(e){if(Object.hasOwn(e,"_sa"))return;e._sa=!0;let t=e.styles;if(!t||!("adoptedStyleSheets"in document))return;let n=Array.isArray(t)?t:[t];document.adoptedStyleSheets=[...document.adoptedStyleSheets,...n.filter(r=>!document.adoptedStyleSheets.includes(r))]}function Y(e){if(Object.hasOwn(e,"_pp"))return;e._pp={};let t=e.parts;if(t)for(let[n,r]of Object.entries(t)){let i=document.createElement("template");i.innerHTML=r,e._pp[n]=i.content.firstElementChild}}var O=class extends HTMLElement{static get properties(){return{}}static get traits(){return[]}static get observedAttributes(){let t=Object.entries(this.properties).map(([n,r])=>r.attribute??n.toLowerCase());return t.includes("traits")?t:[...t,"traits"]}#i=[];#n=[];#o=[];#t=null;#r=null;#e=null;#a=p(0);constructor(){super(),this.internals=typeof this.attachInternals=="function"?this.attachInternals():de,fe(this,this.constructor.properties)}connectedCallback(){let t=this.constructor;t._tag||(t._tag=this.localName),me(t),Y(t),E(()=>{for(let[n,r]of Object.entries(t.properties)){let i=r.attribute??n.toLowerCase();this.hasAttribute(i)?this[n]=X(this.getAttribute(i),r.type??String):r.reflect&&r.type===Boolean&&this[n]===!0&&this.setAttribute(i,"")}}),E(()=>this.connected()),this.#i.push(m(()=>{for(let r of this[P].values())r.value;this.#a.value;let n=t.template(this);if(n&&g(n,this),this.render(),this[w].size){let r=new Map(this[w]);this[w].clear(),this.updated(r)}},{host:this.localName,onError:this.onError?n=>this.onError(n):null})),this.#e||(this.#e=new Set);for(let n of t.traits)this.#s(n);this.#c(),this.#t&&this.#l()}disconnectedCallback(){this._i&&C(this._i.p);for(let t of this.#i)t();this.#i.length=0;for(let t of this.#o)t.value=void 0;this.#o.length=0;for(let t of this.#n)t.disconnect(this);this.#n.length=0,this.#e?.clear(),this.#r?.(),this.#r=null,this.#t?.disconnect?.(this),this.disconnected()}#l(){let t=this.#t;t.connect?.(this),this.#r=t.subscribe?.(()=>{this.#a.value++})}get controller(){return this.#t}set controller(t){this.#r?.(),this.#r=null,this.#t?.disconnect?.(this),this.#t=t,t&&this.isConnected&&this.#l()}#s(t,{declarative:n=!1}={}){this.#e.add(t);let r=t();r.connect(this,{host:this,signal:p,computed:N,effect:m}),n&&(r._declarative=!0),this.#n.push(r)}addTrait(t){return this.#e||(this.#e=new Set),this.#e.has(t)?this:(this.#s(t),this)}#c(){let t=this.getAttribute("traits");if(t)for(let n of t.split(/\s+/).filter(Boolean)){let r=K(n);if(!r){console.warn(`<${this.localName}> traits="${n}" \u2014 trait not found. Did you forget to import it?`);continue}this.#e.has(r)||this.#s(r,{declarative:!0})}}#f(){if(!this.#e)return;let t=[];for(let n of this.#n)if(n._declarative){n.disconnect(this);for(let r of this.#e)if(r.schema?.name&&n.schema?.name===r.schema.name){this.#e.delete(r);break}}else t.push(n);this.#n.length=0,this.#n.push(...t),this.#c()}attributeChangedCallback(t,n,r){if(t==="traits"){this.isConnected&&this.#f();return}for(let[i,o]of Object.entries(this.constructor.properties))if((o.attribute??i.toLowerCase())===t){this[i]=X(r,o.type??String);break}}static template=()=>null;static create(t={}){let n=this._tag??customElements.getName?.(this);if(!n)throw new Error("Component not registered");let r=document.createElement(n);for(let[i,o]of Object.entries(t))r[i]=o;return r}signal(t){let n=p(t);return this.#o.push(n),n}ensure(t){for(let o of this.children)if(o.getAttribute("slot")===t)return o;let n=this.#u(t);if(n)return n;Y(this.constructor);let r=this.constructor._pp?.[t];if(!r)return null;let i=r.cloneNode(!0);return i._uiPart=!0,this.appendChild(i),i}drop(t){for(let r of this.children)if(r.getAttribute("slot")===t){r.remove();return}let n=this.#u(t);n&&n.remove()}#u(t){for(let n of this.querySelectorAll(`[slot="${t}"]`)){let r=n.parentElement,i=!0;for(;r&&r!==this;){if(r.localName.includes("-")){i=!1;break}r=r.parentElement}if(i&&r===this)return n}return null}reconcile(t,n,r,i){let o=t[y]||new Map,a=new Map,c=[];for(let l=0;l<n.length;l++){let u=n[l],d=r(u,l);if(a.has(d))continue;let S=o.get(d);S?i(u,l,S):S=i(u,l,null),a.set(d,S),c.push(d)}for(let[l,u]of o)a.has(l)||u.remove();let s=null;for(let l=c.length-1;l>=0;l--){let u=a.get(c[l]);(u.nextSibling!==s||u.parentNode!==t)&&t.insertBefore(u,s),s=u}t[y]=a}connected(){}render(){}disconnected(){}updated(t){}};var pe="rounded borderless",T=class e extends O{static properties={mode:{type:String,default:"",reflect:!0}};static template=()=>null;connected(){this.hasAttribute("mode")||(this.mode=pe),this.addEventListener("click",this.#n),this.#o()}#i(t){return this.querySelector(`admin-sidebar[slot="${t}"], admin-sidebar[name="${t}"]`)}#n=t=>{let n=t.target.closest("[data-sidebar-toggle]");if(n&&this.contains(n)){let i=n.getAttribute("data-sidebar-toggle"),o=this.#i(i);o&&typeof o.toggle!="function"&&this.#r("admin-sidebar",`slot="${i}"`,"Sidebar toggle"),o?.toggle?.();return}let r=t.target.closest("[data-command-trigger]");if(r&&this.contains(r)){t.stopPropagation();let i=this.querySelector("admin-command");if(!i)return;if(typeof i.show!="function"){this.#r("admin-command","","Command palette");return}i.show()}};#o(){let t=this.querySelector("admin-command"),n=this.querySelector("nav-ui");!t||!n||t.addEventListener("command-select",r=>{let i=n.querySelector(`nav-item-ui[value="${r.detail.value}"]`);i&&n.select(i)})}static#t=new WeakSet;#r(t,n,r){let i=n?this.querySelector(`${t}[${n}], ${t}[${n.replace("slot=","name=")}]`):this.querySelector(t);if(!i||e.#t.has(i))return;e.#t.add(i);let o=t==="admin-sidebar"?"shell/admin-sidebar":"shell/admin-command";console.warn(`[admin-shell] <${t}${n?" "+n:""}> is in the DOM but ${t==="admin-sidebar"?"AdminSidebar":"AdminCommand"} is NOT registered \u2014 ${r} will not work. Import the cluster barrel \`@adia-ai/web-modules/shell\` (which registers all shell elements), OR add \`@adia-ai/web-modules/${o}\` alongside \`@adia-ai/web-modules/shell/admin-shell\` on the per-component path. Closes FB-55 silent-failure trap.`)}};R("admin-shell",T);export{T as AdminShell};
|
|
@@ -7,4 +7,4 @@ var A=Symbol("signal"),u=null,h=null,_=!1;function R(e){for(let t of e){if(t.dis
|
|
|
7
7
|
`+f+" Compute the full attr value as a single expression and interpolate the whole.")}continue}let c=+a[1],s=o.name;s[0]==="@"?(i.removeAttribute(s),n[c]={t:"e",n:i,name:s.slice(1),c:void 0,_fx:null}):s[0]==="."?(i.removeAttribute(s),n[c]={t:"p",n:i,name:q(i,s.slice(1)),c:void 0,_fx:null,_resolved:!1}):s[0]==="?"?(i.removeAttribute(s),console.warn(`[template] Lit-style boolean attribute "${s}=" is not supported.
|
|
8
8
|
Element: <${i.tagName.toLowerCase()}>
|
|
9
9
|
Use .${s.slice(1)}=\${value} (property binding) instead \u2014 the primitive reflects the property to the DOM attribute for you.
|
|
10
|
-
See USAGE.md \xA7 Template parser \u2014 invariants + unsupported syntaxes.`),n[c]={t:"n",n:document.createTextNode(""),c:void 0,_fx:null}):n[c]={t:"a",n:i,name:s,c:void 0,_fx:null}}return n}function $(e){for(let t of e)t&&t._fx&&(t._fx(),t._fx=null)}function M(e){if(e.n.nodeType===1&&e.n[v])return e.n;let t=document.createElement("span");return t.style.display="contents",t.setAttribute("role","presentation"),t[v]=!0,e.n.replaceWith(t),e.n=t,t}var V=e=>e!=null&&typeof e=="object"&&e.strings,z=e=>typeof e=="function"||e!=null&&typeof e.handleEvent=="function";function L(e,t){if(t!==e.c){if(e.t==="n")if(t!=null&&t._directive)t._commit(M(e));else if(V(t))g(t,M(e));else if(Array.isArray(t)){let n=M(e);n.replaceChildren();for(let r of t)if(V(r)){let i=document.createElement("span");i.style.display="contents",i.setAttribute("role","presentation"),n.appendChild(i),g(r,i)}else n.appendChild(document.createTextNode(r??""))}else if(j(t))e.n.replaceWith(t),e.n=t;else if(e.n[v]){let n=document.createTextNode(t??"");e.n.replaceWith(n),e.n=n}else e.n.textContent=t??"";else if(e.t==="a")t==null||t===!1?e.n.removeAttribute(e.name):e.n.setAttribute(e.name,t===!0?"":t);else if(e.t==="p"){if(!e._resolved){let n=q(e.n,e.name);n!==e.name&&(e.name=n),e._resolved=!0}e.n[e.name]=t}else e.t==="e"&&(z(e.c)&&e.n.removeEventListener(e.name,e.c),z(t)&&e.n.addEventListener(e.name,t));e.c=t}}function oe(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(!r)continue;let i=t[n],o=r.t!=="e"&&typeof i=="function",a=!o&&r.t!=="e"&&k(i);if(r._fx&&!o&&!a&&(r._fx(),r._fx=null),o){r._fx||(r._fx=p(()=>L(r,i())));continue}if(a){r._fx||(r._fx=p(()=>L(r,i.value)));continue}L(r,i)}}function se(e,t,n){return{_directive:!0,_commit(r){let i=r[y]||new Map,o=new Map,a=[];for(let s=0;s<e.length;s++){let l=t(e[s],s);if(o.has(l))continue;a.push(l);let f=n(e[s],s);if(i.has(l)){let d=i.get(l);g(f,d),o.set(l,d)}else{let d=document.createElement("span");d.style.display="contents",d.setAttribute("role","presentation"),g(f,d),o.set(l,d)}}for(let[s,l]of i)o.has(s)||(l._i&&$(l._i.p),l.remove());let c=null;for(let s=a.length-1;s>=0;s--){let l=o.get(a[s]);(l.nextSibling!==c||l.parentNode!==r)&&r.insertBefore(l,c),c=l}r[y]=o}}}var x=new Map;function ae(e,t){return t===`data-${e}`||t.startsWith(`data-${e}-`)}function U(e,t){return e===t||e.startsWith(`${t}-`)||t.startsWith(`${e}-`)}function le(e){let t=[e.name,...e.prefixes||[]],n=[...e.attributes||[],...e.config||[]].filter(r=>!t.some(i=>ae(i,r)));if(n.length>0)throw new Error(`Trait "${e.name}" declares attribute(s) outside its owned data-* namespace: ${n.join(", ")}. A trait owns "data-${e.name}" / "data-${e.name}-*" by default; register any other prefix via defineTrait({ ..., prefixes: [...] }) (ADR-0060) or rename the attribute.`)}function ce(e){let t=e.prefixes||[];for(let[n,r]of x){if(n===e.name)continue;let i=r.schema,o=[i.name,...i.prefixes||[]];for(let a of t)for(let c of o)if(U(a,c))throw new Error(`Trait "${e.name}"'s registered prefix "${a}" overlaps trait "${i.name}"'s owned namespace ("${c}"). Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`);for(let a of i.prefixes||[])if(U(a,e.name))throw new Error(`Trait "${e.name}"'s name overlaps trait "${i.name}"'s registered prefix "${a}". Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`)}}var F=new Set(["input-interaction","keyboard-navigation","forms-data","layout-measurement","motion-positioning","animation-feedback","visual-dynamics","interaction-delight","audio-haptics-sensory"]);function we(e){if(!e.name)throw new Error("Trait requires a name");if(!e.setup)throw new Error(`Trait "${e.name}" requires a setup function`);if(!e.category)throw new Error(`Trait "${e.name}" requires a category`);if(!F.has(e.category))throw new Error(`Trait "${e.name}" has unknown category "${e.category}". Known: ${[...F].join(", ")}`);if(!e.description)throw new Error(`Trait "${e.name}" requires a description`);le(e),ce(e);let t=Object.freeze({name:e.name,category:e.category,description:e.description,attributes:Object.freeze(e.attributes||[]),events:Object.freeze(e.events||[]),config:Object.freeze(e.config||[]),prefixes:Object.freeze(e.prefixes||[])});function n(){let r=null;return{schema:t,connect(i,o){r=e.setup({host:i,...o||{}})},disconnect(i){r&&(r(),r=null);for(let o of t.attributes)i.hasAttribute(o)&&(console.warn(`Trait "${t.name}": attribute "${o}" still present after disconnect`),i.removeAttribute(o))}}}return n.schema=t,x.set(e.name,n),n}function G(e){return x.get(e)||null}function Se(e){return x.get(e)?.schema||null}function Ae(){return[...x.keys()]}var P=Symbol(),w=Symbol();function fe(e,t){e[w]=new Map,e[P]=new Map;for(let[n,r]of Object.entries(t)){let i=r.attribute??n.toLowerCase(),o=r.type??String,a=Object.prototype.hasOwnProperty.call(e,n),c=a?e[n]:void 0;a&&delete e[n];let s=m(r.default??void 0);e[P].set(n,s),Object.defineProperty(e,n,{get(){return s.value},set(l){let f=s.peek();Object.is(f,l)||(e[w].set(n,f),s.value=l,r.reflect&&de(e,i,l,o))},configurable:!0}),a&&(s.value=c)}}var ue=Object.freeze({setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0},get form(){return null},get labels(){return[]},get validity(){return{}},get validationMessage(){return""},get willValidate(){return!1}});function de(e,t,n,r){r===Boolean?n?e.setAttribute(t,""):e.removeAttribute(t):n==null?e.removeAttribute(t):e.setAttribute(t,String(n))}var K=(e,t)=>t===Boolean?e!==null:t===Number?e===null?null:+e:e;function he(e){if(Object.hasOwn(e,"_sa"))return;e._sa=!0;let t=e.styles;if(!t||!("adoptedStyleSheets"in document))return;let n=Array.isArray(t)?t:[t];document.adoptedStyleSheets=[...document.adoptedStyleSheets,...n.filter(r=>!document.adoptedStyleSheets.includes(r))]}function X(e){if(Object.hasOwn(e,"_pp"))return;e._pp={};let t=e.parts;if(t)for(let[n,r]of Object.entries(t)){let i=document.createElement("template");i.innerHTML=r,e._pp[n]=i.content.firstElementChild}}var E=class extends HTMLElement{static get properties(){return{}}static get traits(){return[]}static get observedAttributes(){let t=Object.entries(this.properties).map(([n,r])=>r.attribute??n.toLowerCase());return t.includes("traits")?t:[...t,"traits"]}#i=[];#t=[];#o=[];#n=null;#r=null;#e=null;#a=m(0);constructor(){super(),this.internals=typeof this.attachInternals=="function"?this.attachInternals():ue,fe(this,this.constructor.properties)}connectedCallback(){let t=this.constructor;t._tag||(t._tag=this.localName),he(t),X(t),N(()=>{for(let[n,r]of Object.entries(t.properties)){let i=r.attribute??n.toLowerCase();this.hasAttribute(i)?this[n]=K(this.getAttribute(i),r.type??String):r.reflect&&r.type===Boolean&&this[n]===!0&&this.setAttribute(i,"")}}),N(()=>this.connected()),this.#i.push(p(()=>{for(let r of this[P].values())r.value;this.#a.value;let n=t.template(this);if(n&&g(n,this),this.render(),this[w].size){let r=new Map(this[w]);this[w].clear(),this.updated(r)}},{host:this.localName,onError:this.onError?n=>this.onError(n):null})),this.#e||(this.#e=new Set);for(let n of t.traits)this.#s(n);this.#c(),this.#n&&this.#l()}disconnectedCallback(){this._i&&$(this._i.p);for(let t of this.#i)t();this.#i.length=0;for(let t of this.#o)t.value=void 0;this.#o.length=0;for(let t of this.#t)t.disconnect(this);this.#t.length=0,this.#e?.clear(),this.#r?.(),this.#r=null,this.#n?.disconnect?.(this),this.disconnected()}#l(){let t=this.#n;t.connect?.(this),this.#r=t.subscribe?.(()=>{this.#a.value++})}get controller(){return this.#n}set controller(t){this.#r?.(),this.#r=null,this.#n?.disconnect?.(this),this.#n=t,t&&this.isConnected&&this.#l()}#s(t,{declarative:n=!1}={}){this.#e.add(t);let r=t();r.connect(this,{host:this,signal:m,computed:C,effect:p}),n&&(r._declarative=!0),this.#t.push(r)}addTrait(t){return this.#e||(this.#e=new Set),this.#e.has(t)?this:(this.#s(t),this)}#c(){let t=this.getAttribute("traits");if(t)for(let n of t.split(/\s+/).filter(Boolean)){let r=G(n);if(!r){console.warn(`<${this.localName}> traits="${n}" \u2014 trait not found. Did you forget to import it?`);continue}this.#e.has(r)||this.#s(r,{declarative:!0})}}#u(){if(!this.#e)return;let t=[];for(let n of this.#t)if(n._declarative){n.disconnect(this);for(let r of this.#e)if(r.schema?.name&&n.schema?.name===r.schema.name){this.#e.delete(r);break}}else t.push(n);this.#t.length=0,this.#t.push(...t),this.#c()}attributeChangedCallback(t,n,r){if(t==="traits"){this.isConnected&&this.#u();return}for(let[i,o]of Object.entries(this.constructor.properties))if((o.attribute??i.toLowerCase())===t){this[i]=K(r,o.type??String);break}}static template=()=>null;static create(t={}){let n=this._tag??customElements.getName?.(this);if(!n)throw new Error("Component not registered");let r=document.createElement(n);for(let[i,o]of Object.entries(t))r[i]=o;return r}signal(t){let n=m(t);return this.#o.push(n),n}ensure(t){for(let o of this.children)if(o.getAttribute("slot")===t)return o;let n=this.#f(t);if(n)return n;X(this.constructor);let r=this.constructor._pp?.[t];if(!r)return null;let i=r.cloneNode(!0);return i._uiPart=!0,this.appendChild(i),i}drop(t){for(let r of this.children)if(r.getAttribute("slot")===t){r.remove();return}let n=this.#f(t);n&&n.remove()}#f(t){for(let n of this.querySelectorAll(`[slot="${t}"]`)){let r=n.parentElement,i=!0;for(;r&&r!==this;){if(r.localName.includes("-")){i=!1;break}r=r.parentElement}if(i&&r===this)return n}return null}reconcile(t,n,r,i){let o=t[y]||new Map,a=new Map,c=[];for(let l=0;l<n.length;l++){let f=n[l],d=r(f,l);if(a.has(d))continue;let S=o.get(d);S?i(f,l,S):S=i(f,l,null),a.set(d,S),c.push(d)}for(let[l,f]of o)a.has(l)||f.remove();let s=null;for(let l=c.length-1;l>=0;l--){let f=a.get(c[l]);(f.nextSibling!==s||f.parentNode!==t)&&t.insertBefore(f,s),s=f}t[y]=a}connected(){}render(){}disconnected(){}updated(t){}};var O=class extends E{static properties={centered:{type:Boolean,default:!1,reflect:!0},"full-bleed":{type:Boolean,default:!1,reflect:!0}};static template=()=>null};customElements.get("simple-shell")||customElements.define("simple-shell",O);export{O as SimpleShell};
|
|
10
|
+
See USAGE.md \xA7 Template parser \u2014 invariants + unsupported syntaxes.`),n[c]={t:"n",n:document.createTextNode(""),c:void 0,_fx:null}):n[c]={t:"a",n:i,name:s,c:void 0,_fx:null}}return n}function $(e){for(let t of e)t&&t._fx&&(t._fx(),t._fx=null)}function M(e){if(e.n.nodeType===1&&e.n[v])return e.n;let t=document.createElement("span");return t.style.display="contents",t.setAttribute("role","presentation"),t[v]=!0,e.n.replaceWith(t),e.n=t,t}var V=e=>e!=null&&typeof e=="object"&&e.strings,z=e=>typeof e=="function"||e!=null&&typeof e.handleEvent=="function";function L(e,t){if(t!==e.c){if(e.t==="n")if(t!=null&&t._directive)t._commit(M(e));else if(V(t))g(t,M(e));else if(Array.isArray(t)){let n=M(e);n.replaceChildren();for(let r of t)if(V(r)){let i=document.createElement("span");i.style.display="contents",i.setAttribute("role","presentation"),n.appendChild(i),g(r,i)}else n.appendChild(document.createTextNode(r??""))}else if(j(t))e.n.replaceWith(t),e.n=t;else if(e.n[v]){let n=document.createTextNode(t??"");e.n.replaceWith(n),e.n=n}else e.n.textContent=t??"";else if(e.t==="a")t==null||t===!1?e.n.removeAttribute(e.name):e.n.setAttribute(e.name,t===!0?"":t);else if(e.t==="p"){if(!e._resolved){let n=q(e.n,e.name);n!==e.name&&(e.name=n),e._resolved=!0}e.n[e.name]=t}else e.t==="e"&&(z(e.c)&&e.n.removeEventListener(e.name,e.c),z(t)&&e.n.addEventListener(e.name,t));e.c=t}}function oe(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(!r)continue;let i=t[n],o=r.t!=="e"&&typeof i=="function",a=!o&&r.t!=="e"&&k(i);if(r._fx&&!o&&!a&&(r._fx(),r._fx=null),o){r._fx||(r._fx=p(()=>L(r,i())));continue}if(a){r._fx||(r._fx=p(()=>L(r,i.value)));continue}L(r,i)}}function se(e,t,n){return{_directive:!0,_commit(r){let i=r[y]||new Map,o=new Map,a=[];for(let s=0;s<e.length;s++){let l=t(e[s],s);if(o.has(l))continue;a.push(l);let f=n(e[s],s);if(i.has(l)){let d=i.get(l);g(f,d),o.set(l,d)}else{let d=document.createElement("span");d.style.display="contents",d.setAttribute("role","presentation"),g(f,d),o.set(l,d)}}for(let[s,l]of i)o.has(s)||(l._i&&$(l._i.p),l.remove());let c=null;for(let s=a.length-1;s>=0;s--){let l=o.get(a[s]);(l.nextSibling!==c||l.parentNode!==r)&&r.insertBefore(l,c),c=l}r[y]=o}}}var x=new Map;function ae(e,t){return t===`data-${e}`||t.startsWith(`data-${e}-`)}function U(e,t){return e===t||e.startsWith(`${t}-`)||t.startsWith(`${e}-`)}function le(e){let t=[e.name,...e.prefixes||[]],n=[...e.attributes||[],...e.config||[]].filter(r=>!t.some(i=>ae(i,r)));if(n.length>0)throw new Error(`Trait "${e.name}" declares attribute(s) outside its owned data-* namespace: ${n.join(", ")}. A trait owns "data-${e.name}" / "data-${e.name}-*" by default; register any other prefix via defineTrait({ ..., prefixes: [...] }) (ADR-0060) or rename the attribute.`)}function ce(e){let t=e.prefixes||[];for(let[n,r]of x){if(n===e.name)continue;let i=r.schema,o=[i.name,...i.prefixes||[]];for(let a of t)for(let c of o)if(U(a,c))throw new Error(`Trait "${e.name}"'s registered prefix "${a}" overlaps trait "${i.name}"'s owned namespace ("${c}"). Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`);for(let a of i.prefixes||[])if(U(a,e.name))throw new Error(`Trait "${e.name}"'s name overlaps trait "${i.name}"'s registered prefix "${a}". Registered prefixes must be globally exclusive across the trait registry (ADR-0060).`)}}var F=new Set(["input-interaction","keyboard-navigation","forms-data","layout-measurement","motion-positioning","animation-feedback","visual-dynamics","interaction-delight","audio-haptics-sensory"]);function we(e){if(!e.name)throw new Error("Trait requires a name");if(!e.setup)throw new Error(`Trait "${e.name}" requires a setup function`);if(!e.category)throw new Error(`Trait "${e.name}" requires a category`);if(!F.has(e.category))throw new Error(`Trait "${e.name}" has unknown category "${e.category}". Known: ${[...F].join(", ")}`);if(!e.description)throw new Error(`Trait "${e.name}" requires a description`);le(e),ce(e);let t=Object.freeze({name:e.name,category:e.category,description:e.description,attributes:Object.freeze(e.attributes||[]),events:Object.freeze(e.events||[]),config:Object.freeze(e.config||[]),prefixes:Object.freeze(e.prefixes||[])});function n(){let r=null;return{schema:t,connect(i,o){r=e.setup({host:i,...o||{}})},disconnect(i){r&&(r(),r=null);for(let o of t.attributes)i.hasAttribute(o)&&(console.warn(`Trait "${t.name}": attribute "${o}" still present after disconnect`),i.removeAttribute(o))}}}return n.schema=t,x.set(e.name,n),n}function G(e){return x.get(e)||null}function Se(e){return x.get(e)?.schema||null}function Ae(){return[...x.keys()]}var P=Symbol(),w=Symbol();function fe(e,t){e[w]=new Map,e[P]=new Map;for(let[n,r]of Object.entries(t)){let i=r.attribute??n.toLowerCase(),o=r.type??String,a=Object.prototype.hasOwnProperty.call(e,n),c=a?e[n]:void 0;a&&delete e[n];let s=m(r.default??void 0);e[P].set(n,s),Object.defineProperty(e,n,{get(){return s.value},set(l){let f=s.peek();Object.is(f,l)||(e[w].set(n,f),s.value=l,r.reflect&&de(e,i,l,o))},configurable:!0}),a&&(s.value=c)}}var ue=Object.freeze({setFormValue(){},setValidity(){},checkValidity(){return!0},reportValidity(){return!0},get form(){return null},get labels(){return[]},get validity(){return{}},get validationMessage(){return""},get willValidate(){return!1}});function de(e,t,n,r){r===Boolean?n?e.setAttribute(t,""):e.removeAttribute(t):n==null?e.removeAttribute(t):e.setAttribute(t,String(n))}var K=(e,t)=>t===Boolean?e!==null&&e!=="false":t===Number?e===null?null:+e:e;function he(e){if(Object.hasOwn(e,"_sa"))return;e._sa=!0;let t=e.styles;if(!t||!("adoptedStyleSheets"in document))return;let n=Array.isArray(t)?t:[t];document.adoptedStyleSheets=[...document.adoptedStyleSheets,...n.filter(r=>!document.adoptedStyleSheets.includes(r))]}function X(e){if(Object.hasOwn(e,"_pp"))return;e._pp={};let t=e.parts;if(t)for(let[n,r]of Object.entries(t)){let i=document.createElement("template");i.innerHTML=r,e._pp[n]=i.content.firstElementChild}}var E=class extends HTMLElement{static get properties(){return{}}static get traits(){return[]}static get observedAttributes(){let t=Object.entries(this.properties).map(([n,r])=>r.attribute??n.toLowerCase());return t.includes("traits")?t:[...t,"traits"]}#i=[];#t=[];#o=[];#n=null;#r=null;#e=null;#a=m(0);constructor(){super(),this.internals=typeof this.attachInternals=="function"?this.attachInternals():ue,fe(this,this.constructor.properties)}connectedCallback(){let t=this.constructor;t._tag||(t._tag=this.localName),he(t),X(t),N(()=>{for(let[n,r]of Object.entries(t.properties)){let i=r.attribute??n.toLowerCase();this.hasAttribute(i)?this[n]=K(this.getAttribute(i),r.type??String):r.reflect&&r.type===Boolean&&this[n]===!0&&this.setAttribute(i,"")}}),N(()=>this.connected()),this.#i.push(p(()=>{for(let r of this[P].values())r.value;this.#a.value;let n=t.template(this);if(n&&g(n,this),this.render(),this[w].size){let r=new Map(this[w]);this[w].clear(),this.updated(r)}},{host:this.localName,onError:this.onError?n=>this.onError(n):null})),this.#e||(this.#e=new Set);for(let n of t.traits)this.#s(n);this.#c(),this.#n&&this.#l()}disconnectedCallback(){this._i&&$(this._i.p);for(let t of this.#i)t();this.#i.length=0;for(let t of this.#o)t.value=void 0;this.#o.length=0;for(let t of this.#t)t.disconnect(this);this.#t.length=0,this.#e?.clear(),this.#r?.(),this.#r=null,this.#n?.disconnect?.(this),this.disconnected()}#l(){let t=this.#n;t.connect?.(this),this.#r=t.subscribe?.(()=>{this.#a.value++})}get controller(){return this.#n}set controller(t){this.#r?.(),this.#r=null,this.#n?.disconnect?.(this),this.#n=t,t&&this.isConnected&&this.#l()}#s(t,{declarative:n=!1}={}){this.#e.add(t);let r=t();r.connect(this,{host:this,signal:m,computed:C,effect:p}),n&&(r._declarative=!0),this.#t.push(r)}addTrait(t){return this.#e||(this.#e=new Set),this.#e.has(t)?this:(this.#s(t),this)}#c(){let t=this.getAttribute("traits");if(t)for(let n of t.split(/\s+/).filter(Boolean)){let r=G(n);if(!r){console.warn(`<${this.localName}> traits="${n}" \u2014 trait not found. Did you forget to import it?`);continue}this.#e.has(r)||this.#s(r,{declarative:!0})}}#u(){if(!this.#e)return;let t=[];for(let n of this.#t)if(n._declarative){n.disconnect(this);for(let r of this.#e)if(r.schema?.name&&n.schema?.name===r.schema.name){this.#e.delete(r);break}}else t.push(n);this.#t.length=0,this.#t.push(...t),this.#c()}attributeChangedCallback(t,n,r){if(t==="traits"){this.isConnected&&this.#u();return}for(let[i,o]of Object.entries(this.constructor.properties))if((o.attribute??i.toLowerCase())===t){this[i]=K(r,o.type??String);break}}static template=()=>null;static create(t={}){let n=this._tag??customElements.getName?.(this);if(!n)throw new Error("Component not registered");let r=document.createElement(n);for(let[i,o]of Object.entries(t))r[i]=o;return r}signal(t){let n=m(t);return this.#o.push(n),n}ensure(t){for(let o of this.children)if(o.getAttribute("slot")===t)return o;let n=this.#f(t);if(n)return n;X(this.constructor);let r=this.constructor._pp?.[t];if(!r)return null;let i=r.cloneNode(!0);return i._uiPart=!0,this.appendChild(i),i}drop(t){for(let r of this.children)if(r.getAttribute("slot")===t){r.remove();return}let n=this.#f(t);n&&n.remove()}#f(t){for(let n of this.querySelectorAll(`[slot="${t}"]`)){let r=n.parentElement,i=!0;for(;r&&r!==this;){if(r.localName.includes("-")){i=!1;break}r=r.parentElement}if(i&&r===this)return n}return null}reconcile(t,n,r,i){let o=t[y]||new Map,a=new Map,c=[];for(let l=0;l<n.length;l++){let f=n[l],d=r(f,l);if(a.has(d))continue;let S=o.get(d);S?i(f,l,S):S=i(f,l,null),a.set(d,S),c.push(d)}for(let[l,f]of o)a.has(l)||f.remove();let s=null;for(let l=c.length-1;l>=0;l--){let f=a.get(c[l]);(f.nextSibling!==s||f.parentNode!==t)&&t.insertBefore(f,s),s=f}t[y]=a}connected(){}render(){}disconnected(){}updated(t){}};var O=class extends E{static properties={centered:{type:Boolean,default:!1,reflect:!0},"full-bleed":{type:Boolean,default:!1,reflect:!0}};static template=()=>null};customElements.get("simple-shell")||customElements.define("simple-shell",O);export{O as SimpleShell};
|