@justeattakeaway/pie-text-input 0.29.19 → 0.29.20
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/custom-elements.json +4 -4
- package/dist/index.js +34 -34
- package/package.json +1 -1
- package/src/text-input.scss +2 -0
package/custom-elements.json
CHANGED
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"type": {
|
|
51
51
|
"text": "DefaultProps"
|
|
52
52
|
},
|
|
53
|
-
"default": "{\
|
|
53
|
+
"default": "{\n type: 'text',\n value: '',\n size: 'medium',\n status: 'default',\n disabled: false,\n readonly: false,\n}",
|
|
54
54
|
"description": "Default values for optional properties that have default fallback values in the component."
|
|
55
55
|
}
|
|
56
56
|
],
|
|
@@ -290,7 +290,7 @@
|
|
|
290
290
|
"text": "ValidityState"
|
|
291
291
|
},
|
|
292
292
|
"privacy": "public",
|
|
293
|
-
"description": "(Read-only) returns a ValidityState with the validity states that this element is in.\
|
|
293
|
+
"description": "(Read-only) returns a ValidityState with the validity states that this element is in.\nhttps://developer.mozilla.org/en-US/docs/Web/API/HTMLObjectElement/validity",
|
|
294
294
|
"readonly": true
|
|
295
295
|
},
|
|
296
296
|
{
|
|
@@ -311,7 +311,7 @@
|
|
|
311
311
|
"description": "The latest disabled state of the input."
|
|
312
312
|
}
|
|
313
313
|
],
|
|
314
|
-
"description": "Called after the disabled state of the element changes,\
|
|
314
|
+
"description": "Called after the disabled state of the element changes,\neither because the disabled attribute of this element was added or removed;\nor because the disabled state changed on a <fieldset> that's an ancestor of this element."
|
|
315
315
|
},
|
|
316
316
|
{
|
|
317
317
|
"kind": "method",
|
|
@@ -322,7 +322,7 @@
|
|
|
322
322
|
"text": "void"
|
|
323
323
|
}
|
|
324
324
|
},
|
|
325
|
-
"description": "Called when the form that owns this component is reset.\
|
|
325
|
+
"description": "Called when the form that owns this component is reset.\nResets the value to the default value."
|
|
326
326
|
},
|
|
327
327
|
{
|
|
328
328
|
"kind": "field",
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { LitElement as Vt, nothing as Nt, html as mt, unsafeCSS as Lt } from "lit";
|
|
2
|
-
import { property as u, query as
|
|
3
|
-
import { ifDefined as
|
|
2
|
+
import { property as u, query as ht } from "lit/decorators.js";
|
|
3
|
+
import { ifDefined as h } from "lit/directives/if-defined.js";
|
|
4
4
|
import { classMap as $t } from "lit/directives/class-map.js";
|
|
5
|
-
import { live as
|
|
5
|
+
import { live as ft } from "lit/directives/live.js";
|
|
6
6
|
import { FormControlMixin as Ot, RtlMixin as Pt, DelegatesFocusMixin as Rt, wrapNativeEvent as Dt, validPropertyValues as Y, safeCustomElement as _t } from "@justeattakeaway/pie-webc-core";
|
|
7
7
|
import "@justeattakeaway/pie-assistive-text";
|
|
8
8
|
const z = class z extends Vt {
|
|
@@ -10,9 +10,9 @@ const z = class z extends Vt {
|
|
|
10
10
|
this.getAttribute("v") || this.setAttribute("v", z.v);
|
|
11
11
|
}
|
|
12
12
|
};
|
|
13
|
-
z.v = "0.29.
|
|
13
|
+
z.v = "0.29.20";
|
|
14
14
|
let X = z;
|
|
15
|
-
const Ht = "*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-textInput{--input-padding-block: var(--dt-spacing-c);--input-padding-inline: var(--dt-spacing-d);--input-gap: var(--dt-spacing-d);--input-text-color: var(--dt-color-content-default);--input-text-color-leading-trailing-content: var(--dt-color-content-default);--input-text-color-placeholder: var(--dt-color-content-placeholder);--input-border-color: var(--dt-color-border-form);--input-container-color: var(--dt-color-container-default);--input-radius: var(--dt-radius-rounded-c);--input-font-size: calc(var(--dt-font-body-l-size) * 1px);--input-line-height: calc(var(--dt-font-body-l-line-height) * 1px);--input-height: 48px;--input-cursor: text;--icon-size-override: 24px;height:var(--input-height);border:1px solid var(--input-border-color);border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline);padding-inline-end:var(--input-padding-inline);padding-block-start:var(--input-padding-block);padding-block-end:var(--input-padding-block);font-size:var(--input-font-size);line-height:var(--input-line-height);display:flex;flex-wrap:nowrap;align-items:center;background-color:var(--input-container-color);color:var(--input-text-color-leading-trailing-content);cursor:var(--input-cursor)}.c-textInput.c-textInput--large{--input-padding-block: var(--dt-spacing-d);--input-height: 56px}.c-textInput.c-textInput--small{--input-padding-block: var(--dt-spacing-b);--input-height: 40px}.c-textInput.c-textInput--error{--input-border-color: var(--dt-color-support-error)}.c-textInput ::slotted([slot=leadingText]),.c-textInput ::slotted([slot=leadingIcon]){margin-inline-end:var(--input-gap)}.c-textInput ::slotted([slot=trailingText]),.c-textInput ::slotted([slot=trailingIcon]){margin-inline-start:var(--input-gap)}@supports (gap: var(--input-gap)){.c-textInput{gap:var(--input-gap)}.c-textInput ::slotted([slot=leadingText]),.c-textInput ::slotted([slot=leadingIcon]){margin-inline-end:0}.c-textInput ::slotted([slot=trailingText]),.c-textInput ::slotted([slot=trailingIcon]){margin-inline-start:0}}.c-textInput:not(.is-disabled) ::slotted([slot=leadingIcon]),.c-textInput:not(.is-disabled) ::slotted([slot=trailingIcon]){color:var(--dt-color-content-subdued)}@media (hover: hover){.c-textInput:hover{--input-container-color: hsl(var(--dt-color-container-default-h), var(--dt-color-container-default-s), calc(var(--dt-color-container-default-l) + calc(-1 * var(--dt-color-hover-01))))}@supports (background-color: color-mix(in srgb,black,white)){.c-textInput:hover{--input-container-color: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), var(--dt-color-container-default))}}}.c-textInput.c-textInput--readonly{--input-container-color: var(--dt-color-container-subtle);--input-border-color: var(--dt-color-border-form)}.c-textInput.is-disabled.c-textInput--readonly,.c-textInput.is-disabled{--input-container-color: var(--dt-color-disabled-01);--input-border-color: var(--dt-color-disabled-01);--input-text-color: var(--dt-color-content-disabled);--input-text-color-placeholder: var(--dt-color-content-disabled);--input-text-color-leading-trailing-content: var(--dt-color-content-disabled);--input-cursor: auto}.c-textInput:focus-within{box-shadow:0 0 0 2px var(--dt-color-focus-inner),0 0 0 4px var(--dt-color-focus-outer);outline:none}input{border:0;outline:0;height:24px;padding:0;color:var(--input-text-color);width:100%;font-size:var(--input-font-size);font-family:inherit;background:none;cursor:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}input::placeholder{color:var(--input-text-color-placeholder);opacity:1}input:disabled{-webkit-text-fill-color:var(--input-text-color);color:var(--input-text-color);-webkit-opacity:1;opacity:1}input[type=number]:not([step])::-webkit-inner-spin-button,input[type=number]:not([step])::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]:not([step]){-moz-appearance:textfield}", zt = ["text", "number", "password", "url", "email", "tel"], te = ["none", "text", "tel", "url", "email", "numeric", "decimal", "search"], Wt = ["default", "success", "error"], qt = ["small", "medium", "large"], w = {
|
|
15
|
+
const Ht = "*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-textInput{--input-padding-block: var(--dt-spacing-c);--input-padding-inline: var(--dt-spacing-d);--input-gap: var(--dt-spacing-d);--input-text-color: var(--dt-color-content-default);--input-text-color-leading-trailing-content: var(--dt-color-content-default);--input-text-color-placeholder: var(--dt-color-content-placeholder);--input-border-color: var(--dt-color-border-form);--input-container-color: var(--dt-color-container-default);--input-radius: var(--dt-radius-rounded-c);--input-font-family: var(--dt-font-body-l-family);--input-font-size: calc(var(--dt-font-body-l-size) * 1px);--input-line-height: calc(var(--dt-font-body-l-line-height) * 1px);--input-height: 48px;--input-cursor: text;--icon-size-override: 24px;height:var(--input-height);border:1px solid var(--input-border-color);border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline);padding-inline-end:var(--input-padding-inline);padding-block-start:var(--input-padding-block);padding-block-end:var(--input-padding-block);font-family:var(--input-font-family);font-size:var(--input-font-size);line-height:var(--input-line-height);display:flex;flex-wrap:nowrap;align-items:center;background-color:var(--input-container-color);color:var(--input-text-color-leading-trailing-content);cursor:var(--input-cursor)}.c-textInput.c-textInput--large{--input-padding-block: var(--dt-spacing-d);--input-height: 56px}.c-textInput.c-textInput--small{--input-padding-block: var(--dt-spacing-b);--input-height: 40px}.c-textInput.c-textInput--error{--input-border-color: var(--dt-color-support-error)}.c-textInput ::slotted([slot=leadingText]),.c-textInput ::slotted([slot=leadingIcon]){margin-inline-end:var(--input-gap)}.c-textInput ::slotted([slot=trailingText]),.c-textInput ::slotted([slot=trailingIcon]){margin-inline-start:var(--input-gap)}@supports (gap: var(--input-gap)){.c-textInput{gap:var(--input-gap)}.c-textInput ::slotted([slot=leadingText]),.c-textInput ::slotted([slot=leadingIcon]){margin-inline-end:0}.c-textInput ::slotted([slot=trailingText]),.c-textInput ::slotted([slot=trailingIcon]){margin-inline-start:0}}.c-textInput:not(.is-disabled) ::slotted([slot=leadingIcon]),.c-textInput:not(.is-disabled) ::slotted([slot=trailingIcon]){color:var(--dt-color-content-subdued)}@media (hover: hover){.c-textInput:hover{--input-container-color: hsl(var(--dt-color-container-default-h), var(--dt-color-container-default-s), calc(var(--dt-color-container-default-l) + calc(-1 * var(--dt-color-hover-01))))}@supports (background-color: color-mix(in srgb,black,white)){.c-textInput:hover{--input-container-color: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), var(--dt-color-container-default))}}}.c-textInput.c-textInput--readonly{--input-container-color: var(--dt-color-container-subtle);--input-border-color: var(--dt-color-border-form)}.c-textInput.is-disabled.c-textInput--readonly,.c-textInput.is-disabled{--input-container-color: var(--dt-color-disabled-01);--input-border-color: var(--dt-color-disabled-01);--input-text-color: var(--dt-color-content-disabled);--input-text-color-placeholder: var(--dt-color-content-disabled);--input-text-color-leading-trailing-content: var(--dt-color-content-disabled);--input-cursor: auto}.c-textInput:focus-within{box-shadow:0 0 0 2px var(--dt-color-focus-inner),0 0 0 4px var(--dt-color-focus-outer);outline:none}input{border:0;outline:0;height:24px;padding:0;color:var(--input-text-color);width:100%;font-size:var(--input-font-size);font-family:inherit;background:none;cursor:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}input::placeholder{color:var(--input-text-color-placeholder);opacity:1}input:disabled{-webkit-text-fill-color:var(--input-text-color);color:var(--input-text-color);-webkit-opacity:1;opacity:1}input[type=number]:not([step])::-webkit-inner-spin-button,input[type=number]:not([step])::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]:not([step]){-moz-appearance:textfield}", zt = ["text", "number", "password", "url", "email", "tel"], te = ["none", "text", "tel", "url", "email", "numeric", "decimal", "search"], Wt = ["default", "success", "error"], qt = ["small", "medium", "large"], w = {
|
|
16
16
|
type: "text",
|
|
17
17
|
value: "",
|
|
18
18
|
size: "medium",
|
|
@@ -107,7 +107,7 @@ const Ht = "*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-textInp
|
|
|
107
107
|
e.forEach((t) => {
|
|
108
108
|
const { addedNodes: a, removedNodes: i } = t, n = Array.from(a), o = Array.from(i);
|
|
109
109
|
n.forEach((r) => {
|
|
110
|
-
var
|
|
110
|
+
var f;
|
|
111
111
|
if (l.has(r) && r.constructor.formAssociated && O(r), S.has(r)) {
|
|
112
112
|
const m = S.get(r);
|
|
113
113
|
Object.keys(C).filter((b) => m[b] !== null).forEach((b) => {
|
|
@@ -128,10 +128,10 @@ const Ht = "*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-textInp
|
|
|
128
128
|
for (; b; )
|
|
129
129
|
O(b), b = E.nextNode();
|
|
130
130
|
}
|
|
131
|
-
r.localName === "fieldset" && ((
|
|
131
|
+
r.localName === "fieldset" && ((f = R.observe) === null || f === void 0 || f.call(R, r, tt), P(r, !0));
|
|
132
132
|
}), o.forEach((r) => {
|
|
133
|
-
const
|
|
134
|
-
|
|
133
|
+
const f = l.get(r);
|
|
134
|
+
f && g.get(f) && et(f), F.has(r) && F.get(r).disconnect();
|
|
135
135
|
});
|
|
136
136
|
});
|
|
137
137
|
}
|
|
@@ -185,7 +185,7 @@ const Ht = "*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-textInp
|
|
|
185
185
|
const n = y.get(e);
|
|
186
186
|
if (e.noValidate)
|
|
187
187
|
return;
|
|
188
|
-
n.size && Array.from(n).reverse().map((
|
|
188
|
+
n.size && Array.from(n).reverse().map((f) => l.get(f).reportValidity()).includes(!1) && a.preventDefault();
|
|
189
189
|
}
|
|
190
190
|
});
|
|
191
191
|
}, Et = (e) => {
|
|
@@ -316,10 +316,10 @@ const Ht = "*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-textInp
|
|
|
316
316
|
const { get: n } = Object.getOwnPropertyDescriptor(HTMLFormElement.prototype, "elements");
|
|
317
317
|
Object.defineProperty(HTMLFormElement.prototype, "elements", {
|
|
318
318
|
get(...o) {
|
|
319
|
-
const r = n.call(this, ...o),
|
|
320
|
-
if (
|
|
319
|
+
const r = n.call(this, ...o), f = Array.from(y.get(this) || []);
|
|
320
|
+
if (f.length === 0)
|
|
321
321
|
return r;
|
|
322
|
-
const m = Array.from(r).concat(
|
|
322
|
+
const m = Array.from(r).concat(f).sort((E, b) => E.compareDocumentPosition ? E.compareDocumentPosition(b) & 2 ? 1 : -1 : 0);
|
|
323
323
|
return new Ct(m);
|
|
324
324
|
}
|
|
325
325
|
});
|
|
@@ -394,9 +394,9 @@ const Ht = "*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-textInp
|
|
|
394
394
|
for (const E in t)
|
|
395
395
|
r[E] = t[E];
|
|
396
396
|
Object.keys(r).length === 0 && Mt(o);
|
|
397
|
-
const
|
|
398
|
-
delete
|
|
399
|
-
const { valid: m } = kt(o,
|
|
397
|
+
const f = Object.assign(Object.assign({}, o), r);
|
|
398
|
+
delete f.valid;
|
|
399
|
+
const { valid: m } = kt(o, f, this.form);
|
|
400
400
|
if (!m && !a)
|
|
401
401
|
throw new DOMException("Failed to execute 'setValidity' on 'ElementInternals': The second argument should not be empty if one or more flags in the first argument are true.");
|
|
402
402
|
I.set(this, m ? "" : a), n.isConnected ? (n.toggleAttribute("internals-invalid", !m), n.toggleAttribute("internals-valid", m), n.setAttribute("aria-invalid", `${!m}`)) : T.set(n, this);
|
|
@@ -572,25 +572,25 @@ let s = class extends Ot(Pt(Rt(X))) {
|
|
|
572
572
|
<slot name="leadingIcon"></slot>
|
|
573
573
|
<slot name="leadingText"></slot>
|
|
574
574
|
<input
|
|
575
|
-
type=${
|
|
576
|
-
.value=${
|
|
577
|
-
name=${
|
|
578
|
-
?disabled=${
|
|
579
|
-
pattern=${
|
|
580
|
-
step=${
|
|
581
|
-
minlength=${
|
|
582
|
-
maxlength=${
|
|
583
|
-
min=${
|
|
584
|
-
max=${
|
|
585
|
-
autocomplete=${
|
|
575
|
+
type=${h(T)}
|
|
576
|
+
.value=${ft(C)}
|
|
577
|
+
name=${h(N)}
|
|
578
|
+
?disabled=${ft(g)}
|
|
579
|
+
pattern=${h(S)}
|
|
580
|
+
step=${h(L)}
|
|
581
|
+
minlength=${h(M)}
|
|
582
|
+
maxlength=${h(I)}
|
|
583
|
+
min=${h(F)}
|
|
584
|
+
max=${h(y)}
|
|
585
|
+
autocomplete=${h(d)}
|
|
586
586
|
?autofocus=${v}
|
|
587
|
-
inputmode=${
|
|
588
|
-
placeholder=${
|
|
587
|
+
inputmode=${h(l)}
|
|
588
|
+
placeholder=${h($)}
|
|
589
589
|
?readonly=${A}
|
|
590
590
|
?required=${O}
|
|
591
|
-
aria-describedby=${
|
|
591
|
+
aria-describedby=${h(p ? Q : void 0)}
|
|
592
592
|
aria-invalid=${k === "error" ? "true" : "false"}
|
|
593
|
-
aria-errormessage="${
|
|
593
|
+
aria-errormessage="${h(k === "error" ? Q : void 0)}"
|
|
594
594
|
@input=${this.handleInput}
|
|
595
595
|
@change=${this.handleChange}
|
|
596
596
|
data-test-id="pie-text-input">
|
|
@@ -604,7 +604,7 @@ let s = class extends Ot(Pt(Rt(X))) {
|
|
|
604
604
|
${p ? mt`
|
|
605
605
|
<pie-assistive-text
|
|
606
606
|
id="${Q}"
|
|
607
|
-
variant=${
|
|
607
|
+
variant=${h(k)}
|
|
608
608
|
data-test-id="pie-text-input-assistive-text">
|
|
609
609
|
${p}
|
|
610
610
|
</pie-assistive-text>
|
|
@@ -676,10 +676,10 @@ c([
|
|
|
676
676
|
u({ type: Boolean })
|
|
677
677
|
], s.prototype, "required", 2);
|
|
678
678
|
c([
|
|
679
|
-
|
|
679
|
+
ht("input")
|
|
680
680
|
], s.prototype, "input", 2);
|
|
681
681
|
c([
|
|
682
|
-
|
|
682
|
+
ht("input")
|
|
683
683
|
], s.prototype, "focusTarget", 2);
|
|
684
684
|
s = c([
|
|
685
685
|
_t("pie-text-input")
|
package/package.json
CHANGED
package/src/text-input.scss
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
--input-border-color: var(--dt-color-border-form);
|
|
15
15
|
--input-container-color: var(--dt-color-container-default);
|
|
16
16
|
--input-radius: var(--dt-radius-rounded-c);
|
|
17
|
+
--input-font-family: var(--dt-font-body-l-family);
|
|
17
18
|
--input-font-size: #{p.font-size(--dt-font-body-l-size)};
|
|
18
19
|
--input-line-height: #{p.font-size(--dt-font-body-l-line-height)};
|
|
19
20
|
--input-height: 48px;
|
|
@@ -29,6 +30,7 @@
|
|
|
29
30
|
padding-inline-end: var(--input-padding-inline);
|
|
30
31
|
padding-block-start: var(--input-padding-block);
|
|
31
32
|
padding-block-end: var(--input-padding-block);
|
|
33
|
+
font-family: var(--input-font-family);
|
|
32
34
|
font-size: var(--input-font-size);
|
|
33
35
|
line-height: var(--input-line-height);
|
|
34
36
|
display: flex;
|