fix(ui): style password validation errors and invalid borders
This commit is contained in:
1 parent
fe40cc56df
commit
b1b84eb41c
5 files changed
+18
-4
No files matched your search
@@ -688,7 +688,7 @@
|
|||||||
},
|
},
|
||||||
"packages/ui": {
|
"packages/ui": {
|
||||||
"name": "@wrnexus/ui",
|
"name": "@wrnexus/ui",
|
||||||
"version": "0.8.58",
|
"version": "0.8.59",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/core": "workspace:*",
|
"@wrnexus/core": "workspace:*",
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -135,7 +135,7 @@ component StrongPassword {
|
|||||||
|
|
||||||
view {
|
view {
|
||||||
<div
|
<div
|
||||||
class="wrn-component wrn-component--color-{color} wrn-component--size-{size} wrn-next--strong-password wrn-next--strong-password-{presentation} {invalid ? 'wrn-next--invalid' : ''} {disabled ? 'wrn-next--disabled' : ''} {class}"
|
class="wrn-component wrn-component--color-{color} wrn-component--size-{size} wrn-next--strong-password wrn-next--strong-password-{presentation} {invalid || validationMessage || nativeError ? 'wrn-next--invalid' : ''} {disabled ? 'wrn-next--disabled' : ''} {class}"
|
||||||
data-wrn-strong-password
|
data-wrn-strong-password
|
||||||
data-strength="{password ? strengthLevel() : 'empty'}"
|
data-strength="{password ? strengthLevel() : 'empty'}"
|
||||||
data-score="{password ? score() : 0}"
|
data-score="{password ? score() : 0}"
|
||||||
@@ -245,6 +245,9 @@ component StrongPassword {
|
|||||||
}
|
}
|
||||||
|
|
||||||
style {
|
style {
|
||||||
|
.wrn-next--strong-password .wrn-next__validation {
|
||||||
|
color: var(--wrn-color-danger, #ef4444);
|
||||||
|
}
|
||||||
.wrn-next--strong-password {
|
.wrn-next--strong-password {
|
||||||
position: relative;
|
position: relative;
|
||||||
display: grid;
|
display: grid;
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ component TogglePassword {
|
|||||||
|
|
||||||
view {
|
view {
|
||||||
<fieldset
|
<fieldset
|
||||||
class="wrn-component wrn-component--color-{color} wrn-component--size-{size} wrn-next--toggle-password {invalid ? 'wrn-next--invalid' : ''} {disabled ? 'wrn-next--disabled' : ''} {class}"
|
class="wrn-component wrn-component--color-{color} wrn-component--size-{size} wrn-next--toggle-password {invalid || validationMessage || nativeError ? 'wrn-next--invalid' : ''} {disabled ? 'wrn-next--disabled' : ''} {class}"
|
||||||
data-wrn-toggle-password
|
data-wrn-toggle-password
|
||||||
data-visible="{revealed ? 'true' : 'false'}"
|
data-visible="{revealed ? 'true' : 'false'}"
|
||||||
>
|
>
|
||||||
@@ -172,6 +172,9 @@ component TogglePassword {
|
|||||||
}
|
}
|
||||||
|
|
||||||
style {
|
style {
|
||||||
|
.wrn-next--toggle-password .wrn-next__validation {
|
||||||
|
color: var(--wrn-color-danger, #ef4444);
|
||||||
|
}
|
||||||
.wrn-next--toggle-password {
|
.wrn-next--toggle-password {
|
||||||
display: grid;
|
display: grid;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/ui",
|
"name": "@wrnexus/ui",
|
||||||
"version": "0.8.58",
|
"version": "0.8.59",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
|||||||
@@ -1409,6 +1409,14 @@ test("password fields cancel native invalid popups and show inline errors", asyn
|
|||||||
expect(dom.querySelector("[data-error='password']")?.textContent).toContain(
|
expect(dom.querySelector("[data-error='password']")?.textContent).toContain(
|
||||||
"Enter your password.",
|
"Enter your password.",
|
||||||
);
|
);
|
||||||
|
expect(dom.querySelector(".wrn-next--invalid")).not.toBeNull();
|
||||||
|
const source = readFileSync(uiComponentPath(component), "utf8");
|
||||||
|
expect(source).toMatch(
|
||||||
|
/\.wrn-next--(?:toggle|strong)-password \.wrn-next__validation\s*\{\s*color: var\(--wrn-color-danger, #ef4444\)/,
|
||||||
|
);
|
||||||
|
input.value = "ExamplePassword123!";
|
||||||
|
input.dispatchEvent(new (dom.window as any).Event("input", { bubbles: true }));
|
||||||
|
expect(dom.querySelector(".wrn-next--invalid")).toBeNull();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user