fix(studio): refine preset surfaces and repair gallery interactions
Quality / quality (ubuntu-latest) (push) Failing after 11m2s
Quality / quality (windows-latest) (push) Canceled after 0s

This commit is contained in:
Clintchiz committed 2026-10-19 19:10:44 +05:30
1 parent f642a84c58
commit bb40dffee8
20 files changed
+345 -72

No files matched your search

+3
View File
@@ -40,6 +40,9 @@ component Clipboard {
}
status = "copying"
output.copy({ value: value, sourceEvent: sourceEvent })
if (window.wrnClipboard && window.wrnClipboard.writeText) {
return window.wrnClipboard.writeText(value).then(copySucceeded).catch(copyFailed)
}
if (!window.navigator.clipboard || !window.navigator.clipboard.writeText) {
copyFailed(new Error("Clipboard API is unavailable"))
return
+24 -19
View File
@@ -47,10 +47,7 @@ component Footer {
<div
class="wrn-footer__pre"
data-wrn-owner="Footer" data-wrn-part="pre" data-wrn-axis-size="{size}" data-wrn-axis-color="{color}">
<slot
name="pre-footer"
>
</slot>
<slot name="pre-footer"></slot>
</div>
{#if items.length > 0}
@@ -260,10 +257,7 @@ component Footer {
<div
class="wrn-footer__post"
data-wrn-owner="Footer" data-wrn-part="post" data-wrn-axis-size="{size}" data-wrn-axis-color="{color}">
<slot
name="post-footer"
>
</slot>
<slot name="post-footer"></slot>
</div>
</div>
@@ -273,10 +267,7 @@ component Footer {
<div
class="wrn-footer__copyright-left"
data-wrn-owner="Footer" data-wrn-part="copyrightLeft" data-wrn-axis-size="{size}" data-wrn-axis-color="{color}">
<slot
name="copyright-left"
>
</slot>
<slot name="copyright-left"></slot>
</div>
{#if copyright}
@@ -290,10 +281,7 @@ component Footer {
<div
class="wrn-footer__copyright-right"
data-wrn-owner="Footer" data-wrn-part="copyrightRight" data-wrn-axis-size="{size}" data-wrn-axis-color="{color}">
<slot
name="copyright-right"
>
</slot>
<slot name="copyright-right"></slot>
</div>
</div>
</footer>
@@ -366,9 +354,11 @@ component Footer {
font-weight: 400;
}
.wrn-footer { container: wrn-footer / inline-size; }
.wrn-footer__grid {
display: grid;
grid-template-columns: minmax(13rem, 1.2fr) minmax(0, 3fr) minmax(13rem, 1fr);
grid-template-columns: minmax(0, 1fr);
width: min(100%, 90rem);
margin-inline: auto;
padding: clamp(2rem, 5vw, 4rem) clamp(1rem, 4vw, 3rem);
@@ -380,6 +370,8 @@ component Footer {
max-width: none;
}
.wrn-footer__pre:has(> slot:empty),
.wrn-footer__post:has(> slot:empty),
.wrn-footer__pre:empty,
.wrn-footer__post:empty,
.wrn-footer__pre:not(:has(*)),
@@ -408,6 +400,7 @@ component Footer {
.wrn-footer__links {
display: grid;
grid-template-columns: repeat(var(--wrn-footer-columns, 3), minmax(0, 1fr));
min-width: 0;
align-content: start;
gap: 1.5rem;
}
@@ -435,6 +428,8 @@ component Footer {
.wrn-footer__link {
display: flex;
width: fit-content;
max-width: 100%;
overflow-wrap: anywhere;
min-height: 2rem;
align-items: center;
gap: 0.4rem;
@@ -469,7 +464,7 @@ component Footer {
}
.wrn-footer__bottom--slots:not(
:has(.wrn-footer__copyright-left > *, .wrn-footer__copyright-right > *)
:has(.wrn-footer__copyright-left > slot:not(:empty), .wrn-footer__copyright-right > slot:not(:empty))
) {
display: none;
}
@@ -513,6 +508,8 @@ component Footer {
text-align: right;
}
.wrn-footer__copyright-left:has(> slot:empty),
.wrn-footer__copyright-right:has(> slot:empty),
.wrn-footer__copyright-left:empty,
.wrn-footer__copyright-right:empty,
.wrn-footer__copyright-left:not(:has(*)),
@@ -525,7 +522,7 @@ component Footer {
grid-template-columns: 1fr;
}
.wrn-footer__links {
grid-template-columns: repeat(3, minmax(0, 1fr));
grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
}
.wrn-footer__bottom--slots {
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
@@ -566,5 +563,13 @@ component Footer {
grid-template-columns: 1fr;
}
}
@container wrn-footer (max-width: 700px) {
.wrn-footer__links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.wrn-footer__bottom { grid-template-columns: 1fr; gap: 1rem; }
.wrn-footer__copyright { grid-column: 1; white-space: normal; }
}
@container wrn-footer (max-width: 400px) {
.wrn-footer__links { grid-template-columns: 1fr; }
}
}
}
+3
View File
@@ -107,6 +107,9 @@ component List {
}
.wrn-list__description { margin-top: 0.25rem; color: var(--wrn-color-text-muted); font-size: 0.875rem; line-height: 1.5rem; }
.wrn-list__items {
list-style: none;
margin: 0;
padding: 0;
overflow: hidden;
}
.wrn-list__items:is([data-variant="default"], [data-variant="divided"]) > .wrn-list__item + .wrn-list__item {
+6 -3
View File
@@ -312,9 +312,10 @@ component PortalDashboard {
}
.wrn-portal-dashboard__list a {
border: 0;
border-bottom: 1px solid var(--wrn-color-border);
border-radius: 0;
align-items: flex-start;
border: 1px solid var(--wrn-color-border);
border-radius: var(--wrn-radius-sm);
background: var(--wrn-color-surface-2);
}
.wrn-portal-dashboard__status {
@@ -326,6 +327,8 @@ component PortalDashboard {
}
.wrn-portal-dashboard__list em {
flex: none;
margin-inline-start: auto;
color: var(--wrn-color-muted);
font-size: 0.7rem;
font-style: normal;
+15 -3
View File
@@ -117,6 +117,8 @@ size: string = "default"
color: var(--wrn-color-muted);
cursor: pointer;
list-style: none;
background: var(--wrn-color-surface-2);
font: inherit;
}
.wrn-preferences__menu > [data-wrn-menu-toggle]:hover,
@@ -185,21 +187,31 @@ size: string = "default"
padding: 0.5rem 0.65rem;
align-items: center;
gap: 0.5rem;
border-radius: 0.55rem;
border: 1px solid transparent;
border-radius: var(--wrn-radius-sm, 0.55rem);
font-family: inherit;
text-align: start;
cursor: pointer;
color: var(--wrn-color-text);
background: var(--wrn-color-surface-2);
font-size: 0.75rem;
font-weight: 500;
}
.wrn-preferences__panel button:focus-visible {
outline: 2px solid var(--wrn-color-focus, var(--wrn-color-primary));
outline-offset: 2px;
}
.wrn-preferences__panel button:hover {
outline: 2px solid color-mix(in srgb, var(--wrn-color-primary) 40%, transparent);
border-color: var(--wrn-color-border);
background: var(--wrn-color-surface-2);
}
.wrn-preferences__panel button[aria-pressed="true"] {
color: var(--wrn-color-primary);
background: color-mix(in srgb, var(--wrn-color-primary) 12%, var(--wrn-color-surface));
outline: 1px solid color-mix(in srgb, var(--wrn-color-primary) 55%, transparent);
border-color: color-mix(in srgb, var(--wrn-color-primary) 55%, transparent);
}
.wrn-preferences__swatches {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ui",
"version": "0.8.121",
"version": "0.8.122",
"private": true,
"type": "module",
"main": "src/index.ts",