chore(release): publish db 0.8.21, cli 0.8.65 and seven in-flight packages
Quality / quality (ubuntu-latest) (push) Failing after 10m1s
Quality / quality (windows-latest) (push) Canceled after 0s

Carries the rollback refusal in db and the matching CLI message, together
with the auth, captcha, csr, dev-server, dev-toolbar, ui and validation
changes that were already in the working tree, since publishing stages
from it and those files would otherwise ship without being recorded here.

  @wrnexus/auth        0.8.28 -> 0.8.29
  @wrnexus/captcha     0.8.15 -> 0.8.16
  @wrnexus/cli         0.8.64 -> 0.8.65
  @wrnexus/csr         0.8.37 -> 0.8.38
  @wrnexus/db          0.8.20 -> 0.8.21
  @wrnexus/dev-server  0.8.60 -> 0.8.61
  @wrnexus/dev-toolbar 0.8.17 -> 0.8.18
  @wrnexus/ui          0.8.75 -> 0.8.76
  @wrnexus/validation  0.8.12 -> 0.8.13

Also declares Event among the browser globals captcha's client asset
already lists, which was the last lint failure, and reformats four files.
typecheck, lint, 1998 tests and format:check all pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
ClintchizandClaude Opus 5 committed 2026-09-03 10:17:09 +05:30
1 parent b807f7b5a7
commit 06433e4ac4
28 files changed
+194 -43

No files matched your search

+11 -2
View File
@@ -344,7 +344,7 @@ component AdvancedSelect {
{#if searchable}
<label class="wrn-next__select-search">
<span class="wrn-visually-hidden">{searchPlaceholder}</span>
<span class="wrn-next__search-icon" aria-hidden="true">⌕</span>
<span class="wrn-next__search-icon icon-[lucide--search]" aria-hidden="true"></span>
<input
type="search"
value="{query}"
@@ -473,8 +473,17 @@ component AdvancedSelect {
display: block;
}
.wrn-next__select-search .wrn-next__search-icon {
inset-inline-start: 0.8em;
left: auto;
width: 1em;
height: 1em;
pointer-events: none;
}
.wrn-next__select-search input {
padding-left: 2.25em;
padding-inline-start: 2.4em;
padding-inline-end: 0.75em;
}
.wrn-next__select-tags {
+16 -6
View File
@@ -86,6 +86,16 @@ component Sidebar {
output.close({ source: "drawer" })
output.toggle({ open: false })
}
client function revealActiveItem() {
document.querySelector(".wrn-sidebar__rail .wrn-sidebar__link--active") && document.querySelector(".wrn-sidebar__rail .wrn-sidebar__link--active").scrollIntoView({ block: "nearest", inline: "nearest", behavior: "auto" })
}
}
lifecycle {
mount {
revealActiveItem()
}
}
view {
@@ -115,7 +125,7 @@ component Sidebar {
<p class="wrn-sidebar__heading" data-show="entry.heading">{entry.heading}</p>
<a
class="wrn-sidebar__link"
class='wrn-sidebar__link {isActive(entry) ? "wrn-sidebar__link--active" : ""}'
data-show="!entry.heading"
href='{entry.href || "#"}'
data-wrn-roving-item="true"
@@ -138,7 +148,7 @@ component Sidebar {
{#each childrenOf(entry) as child}
<li class="wrn-sidebar__entry">
<a
class="wrn-sidebar__link"
class='wrn-sidebar__link {isActive(child) ? "wrn-sidebar__link--active" : ""}'
href='{child.href || "#"}'
data-active='{isActive(child)}'
aria-current='{isActive(child) ? "page" : "false"}'
@@ -163,7 +173,7 @@ component Sidebar {
{#each childrenOf(child) as leaf}
<li class="wrn-sidebar__entry">
<a
class="wrn-sidebar__link"
class='wrn-sidebar__link {isActive(leaf) ? "wrn-sidebar__link--active" : ""}'
href='{leaf.href || "#"}'
data-active='{isActive(leaf)}'
aria-current='{isActive(leaf) ? "page" : "false"}'
@@ -201,7 +211,7 @@ component Sidebar {
<p class="wrn-sidebar__heading" data-show="entry.heading">{entry.heading}</p>
<a
class="wrn-sidebar__link"
class='wrn-sidebar__link {isActive(entry) ? "wrn-sidebar__link--active" : ""}'
data-show="!entry.heading"
href='{entry.href || "#"}'
data-wrn-roving-item="true"
@@ -224,7 +234,7 @@ component Sidebar {
{#each childrenOf(entry) as child}
<li class="wrn-sidebar__entry">
<a
class="wrn-sidebar__link"
class='wrn-sidebar__link {isActive(child) ? "wrn-sidebar__link--active" : ""}'
href='{child.href || "#"}'
data-active='{isActive(child)}'
aria-current='{isActive(child) ? "page" : "false"}'
@@ -249,7 +259,7 @@ component Sidebar {
{#each childrenOf(child) as leaf}
<li class="wrn-sidebar__entry">
<a
class="wrn-sidebar__link"
class='wrn-sidebar__link {isActive(leaf) ? "wrn-sidebar__link--active" : ""}'
href='{leaf.href || "#"}'
data-active='{isActive(leaf)}'
aria-current='{isActive(leaf) ? "page" : "false"}'
+6 -1
View File
@@ -5,6 +5,7 @@ component Badge {
props {
label: string = "Badge"
humanize: boolean = true
size: string = "md"
color: string = "primary"
variant: string = "solid"
@@ -86,7 +87,7 @@ component Badge {
{/if}
{#if !dotOnly}
<span class="wrn-next__badge-label {truncate ? 'wrn-next__badge-label--truncate' : ''}">
{label}
{humanize ? label.replaceAll('_', ' ').replaceAll('-', ' ') : label}
</span>
{/if}
{#if icon && iconPosition === "end"}
@@ -142,6 +143,10 @@ component Badge {
white-space: nowrap;
}
.wrn-next__badge-label {
text-transform: capitalize;
}
.wrn-next__badge[data-size="xs"] {
min-height: 1.25rem;
padding: 0.15rem 0.4rem;
+11 -2
View File
@@ -28,6 +28,7 @@ label: string = "Button"
ariaExpanded: string = ""
ariaControls: string = ""
title: string = ""
tooltipPlacement: string = "top"
autofocus: boolean = false
controlClass: string = ""
class: string = ""
@@ -93,7 +94,8 @@ label: string = "Button"
{/if}
{#if (size === "icon" || size === "icon-xs" || size === "icon-sm" || size === "icon-lg") && (ariaLabel || label)}
<span
class="wrn-btn__tooltip"
class="wrn-btn__tooltip wrn-btn__tooltip--{tooltipPlacement}"
data-placement="{tooltipPlacement}"
role="tooltip"
aria-hidden="true"
>
@@ -154,7 +156,8 @@ label: string = "Button"
{/if}
{#if (size === "icon" || size === "icon-xs" || size === "icon-sm" || size === "icon-lg") && (ariaLabel || label)}
<span
class="wrn-btn__tooltip"
class="wrn-btn__tooltip wrn-btn__tooltip--{tooltipPlacement}"
data-placement="{tooltipPlacement}"
role="tooltip"
aria-hidden="true"
>
@@ -469,5 +472,11 @@ label: string = "Button"
opacity var(--wrn-motion-fast) var(--wrn-ease-standard),
transform var(--wrn-motion-fast) var(--wrn-ease-standard);
}
.wrn-btn__tooltip--bottom {
inset-block-start: calc(100% + 0.5rem);
inset-block-end: auto;
transform: translate(-50%, -0.25rem);
}
}
}
+1 -1
View File
@@ -330,7 +330,7 @@ size: string = "default"
font-size: 0.82em;
font-weight: 600;
}
.wrn-next__field-error:empty {
.wrn-next--field[data-invalid="false"] > .wrn-next__field-error {
display: none;
}
.wrn-next--field[data-invalid="true"] :is(input, textarea, select),