{#if title}
{title}
{/if}
{#if description}
{description}
{/if}
diff --git a/.publish/ui/package.json b/.publish/ui/package.json
index 43efbe8d..5b17cde8 100644
--- a/.publish/ui/package.json
+++ b/.publish/ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ui",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"description": "@wrnexus/ui — part of the WrNexus framework.",
"license": "MIT",
@@ -25,7 +25,7 @@
"./ui.css": "./ui.css"
},
"dependencies": {
- "@wrnexus/core": "^0.2.72"
+ "@wrnexus/core": "^0.2.73"
},
"files": [
"dist",
diff --git a/.publish/ui/ui.css b/.publish/ui/ui.css
index 1d9718f3..0d5aa5ba 100644
--- a/.publish/ui/ui.css
+++ b/.publish/ui/ui.css
@@ -312,21 +312,37 @@
.wire-alert--warning {
border-left-color: var(--wire-color-warning);
}
+.wire-alert--brand {
+ border-color: var(--wire-color-border);
+}
.wire-alert--rich {
display: grid;
grid-template-columns: auto minmax(0, 1fr) auto;
- gap: 0.75rem;
- align-items: start;
- padding: 1rem;
+ gap: 1rem;
+ align-items: center;
+ min-height: 6.125rem;
+ padding: 1rem 1.25rem;
border-left-width: 1px;
- border-radius: var(--wire-radius);
+ border-radius: 1rem;
box-shadow: var(--wire-shadow-1);
}
.wire-alert--rich .wire-alert__icon {
+ display: grid;
width: 2.5rem;
height: 2.5rem;
- border-radius: calc(var(--wire-radius-sm) * 0.8);
- background: color-mix(in srgb, currentColor 12%, transparent);
+ place-items: center;
+ border-radius: 0.75rem;
+ color: var(--wire-color-primary);
+ background: color-mix(in srgb, var(--wire-color-primary) 22%, transparent);
+}
+.wire-alert--rich .wire-alert__icon svg {
+ width: 1.25rem;
+ height: 1.25rem;
+ fill: none;
+ stroke: currentColor;
+ stroke-width: 1.8;
+ stroke-linecap: round;
+ stroke-linejoin: round;
}
.wire-alert--rich .wire-alert__body {
margin: 0.25rem 0 0;
@@ -1096,30 +1112,52 @@
gap: 1rem;
padding: 1rem 1.25rem;
text-align: left;
- border-radius: var(--wire-radius);
+ border-radius: 1rem;
}
.wire-auth-action__icon {
display: grid;
width: 3rem;
height: 3rem;
place-items: center;
- border-radius: calc(var(--wire-radius-sm) * 0.9);
+ border-radius: 0.75rem;
color: currentColor;
background: color-mix(in srgb, currentColor 12%, transparent);
}
+.wire-auth-action__icon svg {
+ width: 1.5rem;
+ height: 1.5rem;
+ fill: none;
+ stroke: currentColor;
+ stroke-width: 1.8;
+ stroke-linecap: round;
+ stroke-linejoin: round;
+}
+.wire-auth-action__icon--passkey {
+ color: #fff;
+ background: rgb(255 255 255 / 20%);
+}
+.wire-auth-action__icon--password {
+ color: color-mix(in srgb, var(--wire-color-primary) 70%, white);
+ background: color-mix(in srgb, var(--wire-color-primary) 30%, transparent);
+}
+.wire-auth-action__icon--account {
+ color: #5ee9b5;
+ background: color-mix(in srgb, #00a96e 30%, transparent);
+}
.wire-auth-action__copy {
min-width: 0;
}
.wire-auth-action__label {
display: block;
- font-weight: 750;
+ font-size: 1rem;
+ font-weight: 700;
line-height: 1.3;
}
.wire-auth-action__description {
display: block;
margin-top: 0.25rem;
color: color-mix(in srgb, currentColor 66%, transparent);
- font-size: 0.8rem;
+ font-size: 0.875rem;
font-weight: 500;
line-height: 1.45;
}
@@ -1127,6 +1165,11 @@
width: 1.1rem;
height: 1.1rem;
opacity: 0.65;
+ fill: none;
+ stroke: currentColor;
+ stroke-width: 1.8;
+ stroke-linecap: round;
+ stroke-linejoin: round;
transition: transform var(--wire-motion-base) var(--wire-ease-emphasized);
}
.wire-auth-action > :where(a, button):hover .wire-auth-action__arrow {
diff --git a/.publish/uploader/package.json b/.publish/uploader/package.json
index ae70a662..52da8f6b 100644
--- a/.publish/uploader/package.json
+++ b/.publish/uploader/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/uploader",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"description": "@wrnexus/uploader — part of the WrNexus framework.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/core": "^0.2.72"
+ "@wrnexus/core": "^0.2.73"
},
"files": [
"dist"
diff --git a/.publish/validation/package.json b/.publish/validation/package.json
index 55c53d13..eb978a60 100644
--- a/.publish/validation/package.json
+++ b/.publish/validation/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/validation",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"description": "@wrnexus/validation — part of the WrNexus framework.",
"license": "MIT",
diff --git a/packages/ai/package.json b/packages/ai/package.json
index 45eb03ed..6d896bb2 100644
--- a/packages/ai/package.json
+++ b/packages/ai/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ai",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"description": "Zero-dependency Claude (Anthropic) client for WrNexus apps.",
diff --git a/packages/authz/package.json b/packages/authz/package.json
index f36cc3ba..e45fb0c9 100644
--- a/packages/authz/package.json
+++ b/packages/authz/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/authz",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/cli/package.json b/packages/cli/package.json
index 0ce439fd..0fdd6d7d 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/cli",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/cli/src/update.ts b/packages/cli/src/update.ts
index 399f3c02..8f35454d 100644
--- a/packages/cli/src/update.ts
+++ b/packages/cli/src/update.ts
@@ -725,6 +725,15 @@ const MIGRATIONS: Migration[] = [
// Component and cache behavior improves automatically after updating.
},
},
+ {
+ version: "0.2.73",
+ id: "polished-auth-component-visuals",
+ description:
+ "Updates shared authentication actions and notices with reliable built-in icons, semantic color treatments, and polished sizing.",
+ apply() {
+ // Shared UI visuals improve automatically after updating and rebuilding.
+ },
+ },
];
/** Release tooling uses this to require an explicit migration entry per version. */
diff --git a/packages/compiler/package.json b/packages/compiler/package.json
index c1f50841..f3644534 100644
--- a/packages/compiler/package.json
+++ b/packages/compiler/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/compiler",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/core/package.json b/packages/core/package.json
index 92cd2d14..97bd1d86 100644
--- a/packages/core/package.json
+++ b/packages/core/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/core",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/csr/package.json b/packages/csr/package.json
index 389b5165..f9131cee 100644
--- a/packages/csr/package.json
+++ b/packages/csr/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/csr",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/db/package.json b/packages/db/package.json
index 0f7cac88..a5beb280 100644
--- a/packages/db/package.json
+++ b/packages/db/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/db",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/dev-server/package.json b/packages/dev-server/package.json
index e4342375..7ba49ce2 100644
--- a/packages/dev-server/package.json
+++ b/packages/dev-server/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/dev-server",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/encryption/package.json b/packages/encryption/package.json
index 57f622bf..79b80bc5 100644
--- a/packages/encryption/package.json
+++ b/packages/encryption/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/encryption",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/helpers/package.json b/packages/helpers/package.json
index 3e8a4b2f..00d528fa 100644
--- a/packages/helpers/package.json
+++ b/packages/helpers/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/helpers",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"description": "Safe convenience helpers for WrNexus request contexts and common application flows.",
diff --git a/packages/i18n/package.json b/packages/i18n/package.json
index dee1c466..7f367c73 100644
--- a/packages/i18n/package.json
+++ b/packages/i18n/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/i18n",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/jwt/package.json b/packages/jwt/package.json
index 3d4c5518..aaa1c406 100644
--- a/packages/jwt/package.json
+++ b/packages/jwt/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/jwt",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/mobile/package.json b/packages/mobile/package.json
index 1ceab2f9..e1a3520f 100644
--- a/packages/mobile/package.json
+++ b/packages/mobile/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/mobile",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/native/package.json b/packages/native/package.json
index 77cd3857..183ed123 100644
--- a/packages/native/package.json
+++ b/packages/native/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/native",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/oauth/package.json b/packages/oauth/package.json
index 02257598..a6bac51c 100644
--- a/packages/oauth/package.json
+++ b/packages/oauth/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/oauth",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/pubsub/package.json b/packages/pubsub/package.json
index da6811db..24cf9a93 100644
--- a/packages/pubsub/package.json
+++ b/packages/pubsub/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/pubsub",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/queue/package.json b/packages/queue/package.json
index b98abc3d..73f7ecdc 100644
--- a/packages/queue/package.json
+++ b/packages/queue/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/queue",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/reactive/package.json b/packages/reactive/package.json
index a9fed9ce..5e3d2088 100644
--- a/packages/reactive/package.json
+++ b/packages/reactive/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/reactive",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/router/package.json b/packages/router/package.json
index 9ac5b072..f1e23615 100644
--- a/packages/router/package.json
+++ b/packages/router/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/router",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/ssr/package.json b/packages/ssr/package.json
index 9b14b86e..c8c71db9 100644
--- a/packages/ssr/package.json
+++ b/packages/ssr/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ssr",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/styles/package.json b/packages/styles/package.json
index 83c083c7..da9bd1b7 100644
--- a/packages/styles/package.json
+++ b/packages/styles/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/styles",
- "version": "0.2.72",
+ "version": "0.2.73",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/test/package.json b/packages/test/package.json
index c6efdc8a..946bff51 100644
--- a/packages/test/package.json
+++ b/packages/test/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/test",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/tracking/package.json b/packages/tracking/package.json
index cbbf05c5..29e77095 100644
--- a/packages/tracking/package.json
+++ b/packages/tracking/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/tracking",
- "version": "0.2.72",
+ "version": "0.2.73",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/ui/COMPONENTS.md b/packages/ui/COMPONENTS.md
index d0cec520..e247c6e1 100644
--- a/packages/ui/COMPONENTS.md
+++ b/packages/ui/COMPONENTS.md
@@ -513,7 +513,7 @@ Reusable share button component.
Reusable sign in link component.
- Mount: `data-component="SignInLink"`
-- Props: `label: string = "Sign in with password"`, `description: string = "Use your username or email and password"`, `href: string = ""`, `type: string = "button"`, `variant: string = "secondary"`, `disabled: boolean = false`, `icon: string = "icon-[lucide--lock-keyhole]"`, `class: string = ""`
+- Props: `label: string = "Sign in with password"`, `description: string = "Use your username or email and password"`, `href: string = ""`, `type: string = "button"`, `variant: string = "secondary"`, `disabled: boolean = false`, `icon: string = "icon-[lucide--lock-keyhole]"`, `tone: string = "password"`, `class: string = ""`
- Slots: None
- Events: None
diff --git a/packages/ui/component-reference.json b/packages/ui/component-reference.json
index e5868a41..276298e3 100644
--- a/packages/ui/component-reference.json
+++ b/packages/ui/component-reference.json
@@ -40327,6 +40327,12 @@
"required": false,
"default": "\"icon-[lucide--lock-keyhole]\""
},
+ {
+ "name": "tone",
+ "type": "string",
+ "required": false,
+ "default": "\"password\""
+ },
{
"name": "class",
"type": "string",
diff --git a/packages/ui/components/PasskeyButton.wrn b/packages/ui/components/PasskeyButton.wrn
index 302e2ca3..ecc8b203 100644
--- a/packages/ui/components/PasskeyButton.wrn
+++ b/packages/ui/components/PasskeyButton.wrn
@@ -12,15 +12,15 @@ component PasskeyButton {
{#if href}
-
+
{label}{#if description}{description}{/if}
-
+
{:else}
{/if}
diff --git a/packages/ui/components/SignInLink.wrn b/packages/ui/components/SignInLink.wrn
index 699c2b90..343af26d 100644
--- a/packages/ui/components/SignInLink.wrn
+++ b/packages/ui/components/SignInLink.wrn
@@ -7,21 +7,22 @@ component SignInLink {
variant = "secondary"
disabled = false
icon = "icon-[lucide--lock-keyhole]"
+ tone = "password"
class = ""
}
view {
{#if href}
-
+ {#if tone == "account"}{:else}{/if}
{label}{#if description}{description}{/if}
-
+
{:else}
{/if}
diff --git a/packages/ui/components/alert.wrn b/packages/ui/components/alert.wrn
index c875e270..715287d4 100644
--- a/packages/ui/components/alert.wrn
+++ b/packages/ui/components/alert.wrn
@@ -11,7 +11,7 @@ component Alert {
view {