@foxy.io/elements 1.30.0-beta.6 → 1.31.0-beta.1
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/dist/cdn/foxy-admin-subscription-form.js +1 -1
- package/dist/cdn/foxy-cart-form.js +1 -1
- package/dist/cdn/foxy-coupon-form.js +1 -1
- package/dist/cdn/foxy-customer-form.js +1 -1
- package/dist/cdn/foxy-customer-portal-settings-form.js +1 -1
- package/dist/cdn/foxy-customer-portal.js +1 -1
- package/dist/cdn/foxy-customer.js +1 -1
- package/dist/cdn/foxy-gift-card-form.js +1 -1
- package/dist/cdn/foxy-item-category-form.js +1 -1
- package/dist/cdn/foxy-item-form.js +1 -1
- package/dist/cdn/foxy-native-integration-form.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
- package/dist/cdn/foxy-store-card.js +1 -1
- package/dist/cdn/foxy-store-form.js +1 -1
- package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
- package/dist/cdn/foxy-subscription-settings-form.js +1 -1
- package/dist/cdn/foxy-transaction.js +1 -1
- package/dist/cdn/foxy-webhook-form.js +1 -1
- package/dist/cdn/shared-1d4fdfa8.js +1 -0
- package/dist/cdn/shared-cc8b47c6.js +1 -0
- package/dist/cdn/shared-fcbf196e.js +1 -0
- package/dist/cdn/translations/store-card/en.json +3 -1
- package/dist/cdn/translations/store-shipping-method-form/en.json +157 -127
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.d.ts +2 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js +56 -35
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js.map +1 -1
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/types.d.ts +18 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/types.js +2 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/types.js.map +1 -0
- package/dist/elements/internal/InternalPasswordControl/InternalPasswordControl.d.ts +1 -0
- package/dist/elements/internal/InternalPasswordControl/InternalPasswordControl.js +4 -0
- package/dist/elements/internal/InternalPasswordControl/InternalPasswordControl.js.map +1 -1
- package/dist/elements/internal/InternalPasswordControl/index.d.ts +1 -0
- package/dist/elements/internal/InternalPasswordControl/index.js +1 -0
- package/dist/elements/internal/InternalPasswordControl/index.js.map +1 -1
- package/dist/elements/internal/InternalPasswordControl/vaadinStyles.d.ts +1 -0
- package/dist/elements/internal/InternalPasswordControl/vaadinStyles.js +73 -0
- package/dist/elements/internal/InternalPasswordControl/vaadinStyles.js.map +1 -0
- package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js +7 -5
- package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js.map +1 -1
- package/dist/elements/public/StoreCard/StoreCard.js +13 -1
- package/dist/elements/public/StoreCard/StoreCard.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.d.ts +4 -3
- package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.js +79 -63
- package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/index.d.ts +2 -1
- package/dist/elements/public/StoreShippingMethodForm/index.js +2 -1
- package/dist/elements/public/StoreShippingMethodForm/index.js.map +1 -1
- package/package.json +13 -2
- package/dist/cdn/shared-40c6b1f6.js +0 -1
- package/dist/cdn/shared-96a392d9.js +0 -1
- package/dist/cdn/shared-b980ba1d.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InternalPasswordControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/InternalPasswordControl.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,sBAAsB,EAAE,oCAAiC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AAEpD;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,uBAAuB;IAApE;;
|
|
1
|
+
{"version":3,"file":"InternalPasswordControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/InternalPasswordControl.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,sBAAsB,EAAE,oCAAiC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AAEpD;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,uBAAuB;IAApE;;QAUE,qBAAgB,GAA4B,IAAI,CAAC;QAEjD,sDAAsD;QACtD,kBAAa,GAAG,KAAK,CAAC;QAEtB,WAAM,GAAyC,IAAI,CAAC;IAuDtD,CAAC;IArEC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,gBAAgB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE;YAClE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE;YAC7D,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IASD,aAAa;;QACX,OAAO,IAAI,CAAA;;wBAES,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;sBAC/B,IAAI,CAAC,UAAU;sBACf,IAAI,CAAC,WAAW;gBACtB,IAAI,CAAC,KAAK;gBACV,SAAS,OAAC,IAAI,CAAC,MAAM,mCAAI,KAAK,CAAC,CAAC;;oBAE5B,IAAI,CAAC,QAAQ;oBACb,IAAI,CAAC,QAAQ;yBACR,IAAI,CAAC,cAAc;iBAC3B,IAAI,CAAC,MAAM;mBACT,CAAC,GAAkB,EAAE,EAAE,WAAC,OAAA,GAAG,CAAC,GAAG,KAAK,OAAO,WAAI,IAAI,CAAC,OAAO,0CAAE,MAAM,GAAE,CAAA,EAAA;iBACvE,CAAC,GAAgB,EAAE,EAAE;YAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,aAAqC,CAAC;YACvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,CAAC;;UAEC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE;;KAEvD,CAAC;IACJ,CAAC;IAED,IAAc,MAAM;;QAClB,aAAQ,KAAK,CAAC,MAA6B,mCAAI,EAAE,CAAC;IACpD,CAAC;IAED,IAAc,MAAM,CAAC,QAAgB;QACnC,KAAK,CAAC,MAAM,GAAG,QAA+B,CAAC;IACjD,CAAC;IAEO,iBAAiB;QACvB,OAAO,IAAI,CAAA;;;gBAGC,QAAQ,CAAC;YACf,2EAA2E,EAAE,IAAI;YACjF,yCAAyC,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC3E,kBAAkB,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;SACnD,CAAC;;iBAEO,GAAG,EAAE;;YACZ,IAAI,CAAC,MAAM,GAAG,sBAAsB,OAAC,IAAI,CAAC,gBAAgB,mCAAI,KAAK,CAAC,CAAC,CAAC;YACtE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;YACrE,oFAAoF;YACpF,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,mBAAmB,CAAC,IAAI,EAAE;QACnC,CAAC;;UAEC,GAAG,CAAA,g1BAAg1B;;KAEx1B,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport type { PasswordFieldElement } from '@vaadin/vaadin-text-field/vaadin-password-field';\nimport type { GeneratorOptions } from './generateRandomPassword';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { generateRandomPassword } from './generateRandomPassword';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html, svg } from 'lit-element';\nimport { classMap } from '../../../utils/class-map';\n\n/**\n * Internal control displaying a basic password box.\n *\n * @since 1.17.0\n * @element foxy-internal-password-field-control\n */\nexport class InternalPasswordControl extends InternalEditableControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n generatorOptions: { type: Object, attribute: 'generator-options' },\n showGenerator: { type: Boolean, attribute: 'show-generator' },\n layout: {},\n };\n }\n\n generatorOptions: null | GeneratorOptions = null;\n\n /** If true, renders the password generator button. */\n showGenerator = false;\n\n layout: 'standalone' | 'summary-item' | null = null;\n\n renderControl(): TemplateResult {\n return html`\n <vaadin-password-field\n error-message=${ifDefined(this._errorMessage)}\n helper-text=${this.helperText}\n placeholder=${this.placeholder}\n label=${this.label}\n theme=${ifDefined(this.layout ?? void 0)}\n class=\"w-full\"\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n .checkValidity=${this._checkValidity}\n .value=${this._value}\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.nucleon?.submit()}\n @input=${(evt: CustomEvent) => {\n const area = evt.currentTarget as PasswordFieldElement;\n this._value = area.value;\n }}\n >\n ${this.showGenerator ? this.__renderGenerator() : ''}\n </vaadin-password-field>\n `;\n }\n\n protected get _value(): string {\n return (super._value as string | undefined) ?? '';\n }\n\n protected set _value(newValue: string) {\n super._value = newValue as unknown | undefined;\n }\n\n private __renderGenerator(): TemplateResult {\n return html`\n <div\n data-testid=\"generator\"\n class=${classMap({\n 'w-s h-s flex items-center justify-center cursor-default transition-colors': true,\n 'text-contrast-60 hover-text-contrast-80': !this.disabled && !this.readonly,\n 'text-contrast-20': this.disabled || this.readonly,\n })}\n slot=\"suffix\"\n @click=${() => {\n this._value = generateRandomPassword(this.generatorOptions ?? void 0);\n const field = this.renderRoot.querySelector('vaadin-password-field');\n // @ts-expect-error: this is a private method but it's ok since the version is fixed\n field?._setPasswordVisible(true);\n }}\n >\n ${svg`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" style=\"width: 1.15em; height: 1.15em\"><path d=\"M15.98 1.804a1 1 0 00-1.96 0l-.24 1.192a1 1 0 01-.784.785l-1.192.238a1 1 0 000 1.962l1.192.238a1 1 0 01.785.785l.238 1.192a1 1 0 001.962 0l.238-1.192a1 1 0 01.785-.785l1.192-.238a1 1 0 000-1.962l-1.192-.238a1 1 0 01-.785-.785l-.238-1.192zM6.949 5.684a1 1 0 00-1.898 0l-.683 2.051a1 1 0 01-.633.633l-2.051.683a1 1 0 000 1.898l2.051.684a1 1 0 01.633.632l.683 2.051a1 1 0 001.898 0l.683-2.051a1 1 0 01.633-.633l2.051-.683a1 1 0 000-1.898l-2.051-.683a1 1 0 01-.633-.633L6.95 5.684zM13.949 13.684a1 1 0 00-1.898 0l-.184.551a1 1 0 01-.632.633l-.551.183a1 1 0 000 1.898l.551.183a1 1 0 01.633.633l.183.551a1 1 0 001.898 0l.184-.551a1 1 0 01.632-.633l.551-.183a1 1 0 000-1.898l-.551-.184a1 1 0 01-.633-.632l-.183-.551z\" /></svg>`}\n </div>\n `;\n }\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import '@vaadin/vaadin-text-field/vaadin-password-field';
|
|
2
2
|
import "../InternalEditableControl/index.js";
|
|
3
|
+
import "./vaadinStyles.js";
|
|
3
4
|
import { InternalPasswordControl as Control } from "./InternalPasswordControl.js";
|
|
4
5
|
customElements.define('foxy-internal-password-control', Control);
|
|
5
6
|
export { Control as InternalPasswordControl };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/index.ts"],"names":[],"mappings":"AAAA,OAAO,iDAAiD,CAAC;AACzD,6CAA0C;AAC1C,OAAO,EAAE,uBAAuB,IAAI,OAAO,EAAE,qCAAkC;AAE/E,cAAc,CAAC,MAAM,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,CAAC","sourcesContent":["import '@vaadin/vaadin-text-field/vaadin-password-field';\nimport '../InternalEditableControl/index';\nimport { InternalPasswordControl as Control } from './InternalPasswordControl';\n\ncustomElements.define('foxy-internal-password-control', Control);\n\nexport { Control as InternalPasswordControl };\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/index.ts"],"names":[],"mappings":"AAAA,OAAO,iDAAiD,CAAC;AACzD,6CAA0C;AAC1C,2BAAwB;AAExB,OAAO,EAAE,uBAAuB,IAAI,OAAO,EAAE,qCAAkC;AAE/E,cAAc,CAAC,MAAM,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,CAAC","sourcesContent":["import '@vaadin/vaadin-text-field/vaadin-password-field';\nimport '../InternalEditableControl/index';\nimport './vaadinStyles';\n\nimport { InternalPasswordControl as Control } from './InternalPasswordControl';\n\ncustomElements.define('foxy-internal-password-control', Control);\n\nexport { Control as InternalPasswordControl };\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles';
|
|
2
|
+
import { css } from 'lit-element';
|
|
3
|
+
registerStyles('vaadin-password-field', css `:host([theme~='summary-item'])::before{
|
|
4
|
+
display:none;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
:host([theme~='summary-item']) .vaadin-text-field-container{
|
|
8
|
+
display:grid;
|
|
9
|
+
grid-template-columns:auto 1fr;
|
|
10
|
+
grid-template-rows:repeat(3, min-content);
|
|
11
|
+
gap:0 var(--lumo-space-m);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
:host([theme~='summary-item']) [part='label']{
|
|
15
|
+
font:normal var(--lumo-font-size-m) var(--lumo-font-family);
|
|
16
|
+
color:var(--lumo-body-text-color) !important;
|
|
17
|
+
grid-row:1;
|
|
18
|
+
-webkit-text-fill-color:var(--lumo-body-text-color) !important;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
:host([theme~='summary-item']) [part='helper-text']{
|
|
22
|
+
font:normal var(--lumo-font-size-s) var(--lumo-font-family);
|
|
23
|
+
color:var(--lumo-secondary-text-color) !important;
|
|
24
|
+
grid-row:2;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
:host([theme~='summary-item']) [part='helper-text']::before{
|
|
28
|
+
display:none;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
:host([theme~='summary-item']) [part='error-message']{
|
|
32
|
+
font:normal var(--lumo-font-size-s) var(--lumo-font-family);
|
|
33
|
+
color:var(--lumo-error-text-color);
|
|
34
|
+
grid-row:3;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
:host([theme~='summary-item']) [part='error-message'],
|
|
38
|
+
:host([theme~='summary-item']) [part='helper-text'],
|
|
39
|
+
:host([theme~='summary-item']) [part='label']{
|
|
40
|
+
line-height:var(--lumo-line-height-xs);
|
|
41
|
+
grid-column:1;
|
|
42
|
+
padding:0;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
:host([theme~='summary-item']) [part='input-field']{
|
|
46
|
+
grid-column:2;
|
|
47
|
+
grid-row:1;
|
|
48
|
+
padding:0;
|
|
49
|
+
background:transparent;
|
|
50
|
+
align-self:start;
|
|
51
|
+
height:1em;
|
|
52
|
+
--lumo-icon-size-m:1rem;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
:host([theme~='summary-item']) [part='input-field']::after,
|
|
56
|
+
:host([theme~='summary-item'][readonly]) [part='input-field'] slot[name='suffix']{
|
|
57
|
+
display:none;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
:host([theme~='summary-item']) [part='value']{
|
|
61
|
+
line-height:var(--lumo-line-height-xs);
|
|
62
|
+
text-align:right;
|
|
63
|
+
min-height:auto;
|
|
64
|
+
padding:0;
|
|
65
|
+
margin-right:var(--lumo-space-xs);
|
|
66
|
+
-webkit-mask-image:none;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
:host([theme~='summary-item'][readonly]) [part='value']{
|
|
70
|
+
margin-right:0;
|
|
71
|
+
}
|
|
72
|
+
`);
|
|
73
|
+
//# sourceMappingURL=vaadinStyles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vaadinStyles.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/vaadinStyles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,cAAc,CACZ,uBAAuB,EACvB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuEF,CACF,CAAC","sourcesContent":["import { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles';\nimport { css } from 'lit-element';\n\nregisterStyles(\n 'vaadin-password-field',\n css`\n :host([theme~='summary-item'])::before {\n display: none;\n }\n\n :host([theme~='summary-item']) .vaadin-text-field-container {\n display: grid;\n grid-template-columns: auto 1fr;\n grid-template-rows: repeat(3, min-content);\n gap: 0 var(--lumo-space-m);\n }\n\n :host([theme~='summary-item']) [part='label'] {\n font: normal var(--lumo-font-size-m) var(--lumo-font-family);\n color: var(--lumo-body-text-color) !important;\n grid-row: 1;\n -webkit-text-fill-color: var(--lumo-body-text-color) !important;\n }\n\n :host([theme~='summary-item']) [part='helper-text'] {\n font: normal var(--lumo-font-size-s) var(--lumo-font-family);\n color: var(--lumo-secondary-text-color) !important;\n grid-row: 2;\n }\n\n :host([theme~='summary-item']) [part='helper-text']::before {\n display: none;\n }\n\n :host([theme~='summary-item']) [part='error-message'] {\n font: normal var(--lumo-font-size-s) var(--lumo-font-family);\n color: var(--lumo-error-text-color);\n grid-row: 3;\n }\n\n :host([theme~='summary-item']) [part='error-message'],\n :host([theme~='summary-item']) [part='helper-text'],\n :host([theme~='summary-item']) [part='label'] {\n line-height: var(--lumo-line-height-xs);\n grid-column: 1;\n padding: 0;\n }\n\n :host([theme~='summary-item']) [part='input-field'] {\n grid-column: 2;\n grid-row: 1;\n padding: 0;\n background: transparent;\n align-self: start;\n height: 1em;\n\n --lumo-icon-size-m: 1rem;\n }\n\n :host([theme~='summary-item']) [part='input-field']::after,\n :host([theme~='summary-item'][readonly]) [part='input-field'] slot[name='suffix'] {\n display: none;\n }\n\n :host([theme~='summary-item']) [part='value'] {\n line-height: var(--lumo-line-height-xs);\n text-align: right;\n min-height: auto;\n padding: 0;\n margin-right: var(--lumo-space-xs);\n -webkit-mask-image: none;\n }\n\n :host([theme~='summary-item'][readonly]) [part='value'] {\n margin-right: 0;\n }\n `\n);\n"]}
|
|
@@ -5,12 +5,9 @@ export class InternalSummaryControl extends InternalEditableControl {
|
|
|
5
5
|
return [
|
|
6
6
|
...super.styles,
|
|
7
7
|
css `::slotted(*){
|
|
8
|
+
background-color:var(--lumo-base-color);
|
|
8
9
|
padding:calc(0.625em + (var(--lumo-border-radius) / 4) - 1px);
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
::slotted(:not(:first-child)){
|
|
12
|
-
border-top:thin var(--foxy-border-style, solid) var(--lumo-contrast-10pct) !important;
|
|
13
|
-
}
|
|
14
11
|
`,
|
|
15
12
|
];
|
|
16
13
|
}
|
|
@@ -20,7 +17,12 @@ export class InternalSummaryControl extends InternalEditableControl {
|
|
|
20
17
|
renderControl() {
|
|
21
18
|
return html `
|
|
22
19
|
<p class="mb-xs font-medium text-secondary text-s" ?hidden=${!this.label}>${this.label}</p>
|
|
23
|
-
<div
|
|
20
|
+
<div
|
|
21
|
+
class="rounded overflow-hidden border border-transparent grid bg-contrast-10"
|
|
22
|
+
style="gap: 1px"
|
|
23
|
+
>
|
|
24
|
+
<slot></slot>
|
|
25
|
+
</div>
|
|
24
26
|
<p class="mt-xs text-xs text-secondary" ?hidden=${!this.helperText}>${this.helperText}</p>
|
|
25
27
|
`;
|
|
26
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InternalSummaryControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalSummaryControl/InternalSummaryControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,OAAO,sBAAuB,SAAQ,uBAAuB;IACjE,MAAM,KAAK,MAAM;QACf,OAAO;YACL,GAAG,KAAK,CAAC,MAAM;YACf,GAAG
|
|
1
|
+
{"version":3,"file":"InternalSummaryControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalSummaryControl/InternalSummaryControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,OAAO,sBAAuB,SAAQ,uBAAuB;IACjE,MAAM,KAAK,MAAM;QACf,OAAO;YACL,GAAG,KAAK,CAAC,MAAM;YACf,GAAG;;;;OAKF;SACF,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,OAAO;IACT,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAA;mEACoD,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;;;;;;;wDAOpC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU;KACtF,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { CSSResultArray } from 'lit-element';\nimport type { TemplateResult } from 'lit-html';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { html, css } from 'lit-element';\n\nexport class InternalSummaryControl extends InternalEditableControl {\n static get styles(): CSSResultArray {\n return [\n ...super.styles,\n css`\n ::slotted(*) {\n background-color: var(--lumo-base-color);\n padding: calc(0.625em + (var(--lumo-border-radius) / 4) - 1px);\n }\n `,\n ];\n }\n\n renderLightDom(): void {\n return;\n }\n\n renderControl(): TemplateResult {\n return html`\n <p class=\"mb-xs font-medium text-secondary text-s\" ?hidden=${!this.label}>${this.label}</p>\n <div\n class=\"rounded overflow-hidden border border-transparent grid bg-contrast-10\"\n style=\"gap: 1px\"\n >\n <slot></slot>\n </div>\n <p class=\"mt-xs text-xs text-secondary\" ?hidden=${!this.helperText}>${this.helperText}</p>\n `;\n }\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TranslatableMixin } from "../../../mixins/translatable.js";
|
|
2
2
|
import { TwoLineCard } from "../CustomFieldCard/TwoLineCard.js";
|
|
3
|
+
import { classMap } from "../../../utils/class-map.js";
|
|
3
4
|
import { html } from 'lit-html';
|
|
4
5
|
const NS = 'store-card';
|
|
5
6
|
const Base = TranslatableMixin(TwoLineCard, NS);
|
|
@@ -27,7 +28,18 @@ export class StoreCard extends Base {
|
|
|
27
28
|
subtitle: data => {
|
|
28
29
|
const defaultD = this.defaultDomain;
|
|
29
30
|
const domain = data === null || data === void 0 ? void 0 : data.store_domain;
|
|
30
|
-
return html
|
|
31
|
+
return html `
|
|
32
|
+
<span
|
|
33
|
+
aria-label=${this.t(`status_${data.is_active ? 'active' : 'inactive'}`)}
|
|
34
|
+
style="width: 0.55em; height: 0.55em"
|
|
35
|
+
class=${classMap({
|
|
36
|
+
'inline-block flex-shrink-0 rounded-full': true,
|
|
37
|
+
'bg-success': data.is_active,
|
|
38
|
+
'border border-contrast-50': !data.is_active,
|
|
39
|
+
})}
|
|
40
|
+
></span>
|
|
41
|
+
${(domain === null || domain === void 0 ? void 0 : domain.includes('.')) || !defaultD ? domain : `${domain}.${defaultD}`}
|
|
42
|
+
`;
|
|
31
43
|
},
|
|
32
44
|
});
|
|
33
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreCard.js","sourceRoot":"","sources":["../../../../src/elements/public/StoreCard/StoreCard.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,WAAW,EAAE,0CAAuC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,EAAE,GAAG,YAAY,CAAC;AACxB,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,OAAO,SAAU,SAAQ,IAAU;IAAzC;;QAQE,+FAA+F;QAC/F,kBAAa,GAAkB,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"StoreCard.js","sourceRoot":"","sources":["../../../../src/elements/public/StoreCard/StoreCard.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,WAAW,EAAE,0CAAuC;AAC7D,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,EAAE,GAAG,YAAY,CAAC;AACxB,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,OAAO,SAAU,SAAQ,IAAU;IAAzC;;QAQE,+FAA+F;QAC/F,kBAAa,GAAkB,IAAI,CAAC;IAuBtC,CAAC;IA/BC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,aAAa,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE;SAC/C,CAAC;IACJ,CAAC;IAKD,UAAU;QACR,OAAO,KAAK,CAAC,UAAU,CAAC;YACtB,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,UAAU,EAAE;YACvC,QAAQ,EAAE,IAAI,CAAC,EAAE;gBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC;gBACpC,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY,CAAC;gBAClC,OAAO,IAAI,CAAA;;yBAEM,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;;oBAE/D,QAAQ,CAAC;oBACf,yCAAyC,EAAE,IAAI;oBAC/C,YAAY,EAAE,IAAI,CAAC,SAAS;oBAC5B,2BAA2B,EAAE,CAAC,IAAI,CAAC,SAAS;iBAC7C,CAAC;;YAEF,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC,GAAG,MAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,QAAQ,EAAE;SACxE,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { TemplateResult } from 'lit-html';\nimport type { Data } from './types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { TwoLineCard } from '../CustomFieldCard/TwoLineCard';\nimport { classMap } from '../../../utils/class-map';\nimport { html } from 'lit-html';\n\nconst NS = 'store-card';\nconst Base = TranslatableMixin(TwoLineCard, NS);\n\n/**\n * Card element representing a `fx:store` resource.\n *\n * @element foxy-store-card\n * @since 1.22.0\n */\nexport class StoreCard extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n defaultDomain: { attribute: 'default-domain' },\n };\n }\n\n /** Default host domain for stores that don't use a custom domain name, e.g. `foxycart.com`. */\n defaultDomain: string | null = null;\n\n renderBody(): TemplateResult {\n return super.renderBody({\n title: data => html`${data.store_name}`,\n subtitle: data => {\n const defaultD = this.defaultDomain;\n const domain = data?.store_domain;\n return html`\n <span\n aria-label=${this.t(`status_${data.is_active ? 'active' : 'inactive'}`)}\n style=\"width: 0.55em; height: 0.55em\"\n class=${classMap({\n 'inline-block flex-shrink-0 rounded-full': true,\n 'bg-success': data.is_active,\n 'border border-contrast-50': !data.is_active,\n })}\n ></span>\n ${domain?.includes('.') || !defaultD ? domain : `${domain}.${defaultD}`}\n `;\n },\n });\n }\n}\n"]}
|
|
@@ -20,13 +20,14 @@ export declare class StoreShippingMethodForm extends Base<Data> {
|
|
|
20
20
|
shippingMethods: string | null;
|
|
21
21
|
private readonly __shippingMethodLoaderId;
|
|
22
22
|
private readonly __shippingMethodUriSetValue;
|
|
23
|
-
private
|
|
24
|
-
private readonly
|
|
25
|
-
private readonly
|
|
23
|
+
private __useCustomAccount;
|
|
24
|
+
private readonly __useCustomAccountGetValue;
|
|
25
|
+
private readonly __useCustomAccountSetValue;
|
|
26
26
|
get hiddenSelector(): BooleanSelector;
|
|
27
27
|
get headerSubtitleOptions(): Record<string, unknown>;
|
|
28
28
|
get headerTitleOptions(): Record<string, unknown>;
|
|
29
29
|
renderBody(): TemplateResult;
|
|
30
|
+
updated(changes: Map<keyof this, unknown>): void;
|
|
30
31
|
private get __shippingMethodLoader();
|
|
31
32
|
private get __shippingMethod();
|
|
32
33
|
}
|
|
@@ -31,29 +31,31 @@ export class StoreShippingMethodForm extends Base {
|
|
|
31
31
|
this.undo();
|
|
32
32
|
this.edit({ shipping_method_uri: newValue });
|
|
33
33
|
};
|
|
34
|
-
this.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
this.__useCustomAccount = false;
|
|
35
|
+
this.__useCustomAccountGetValue = () => {
|
|
36
|
+
return Boolean(this.__useCustomAccount ||
|
|
37
|
+
this.form.authentication_key ||
|
|
38
|
+
this.form.meter_number ||
|
|
39
|
+
this.form.accountid ||
|
|
40
|
+
this.form.password);
|
|
41
41
|
};
|
|
42
|
-
this.
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
42
|
+
this.__useCustomAccountSetValue = (value) => {
|
|
43
|
+
if (!value) {
|
|
44
|
+
this.edit({
|
|
45
|
+
authentication_key: '',
|
|
46
|
+
meter_number: '',
|
|
47
|
+
accountid: '',
|
|
48
|
+
password: '',
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
this.__useCustomAccount = value;
|
|
47
52
|
};
|
|
48
|
-
this.__destinationsOptions = [
|
|
49
|
-
{ value: 'domestic', label: 'domestic' },
|
|
50
|
-
{ value: 'international', label: 'international' },
|
|
51
|
-
];
|
|
52
53
|
}
|
|
53
54
|
static get properties() {
|
|
54
55
|
return {
|
|
55
56
|
...super.properties,
|
|
56
57
|
shippingMethods: { attribute: 'shipping-methods' },
|
|
58
|
+
__useCustomAccount: { attribute: false },
|
|
57
59
|
};
|
|
58
60
|
}
|
|
59
61
|
static get v8n() {
|
|
@@ -104,20 +106,14 @@ export class StoreShippingMethodForm extends Base {
|
|
|
104
106
|
const hasData = !!this.data;
|
|
105
107
|
const code = (_a = this.__shippingMethod) === null || _a === void 0 ? void 0 : _a.code;
|
|
106
108
|
// prettier-ignore
|
|
107
|
-
let hiddenControls = 'shipping-container-uri shipping-drop-type-uri destinations
|
|
109
|
+
let hiddenControls = 'general:shipping-container-uri general:shipping-drop-type-uri destinations account endpoint custom-code';
|
|
108
110
|
if (code) {
|
|
109
111
|
const codeToHiddenControls = {
|
|
110
|
-
|
|
111
|
-
'CUSTOM-
|
|
112
|
-
|
|
113
|
-
'CUSTOM-CODE': 'shipping-container-uri shipping-drop-type-uri destinations authentication-key meter-number accountid password endpoint',
|
|
114
|
-
// prettier-ignore
|
|
115
|
-
'CUSTOM': 'shipping-container-uri shipping-drop-type-uri authentication-key meter-number accountid password endpoint custom-code',
|
|
116
|
-
// prettier-ignore
|
|
112
|
+
'CUSTOM-ENDPOINT-POST': 'general destinations account custom-code',
|
|
113
|
+
'CUSTOM-CODE': 'general destinations account endpoint',
|
|
114
|
+
'CUSTOM': 'general account endpoint custom-code',
|
|
117
115
|
'FedEx': 'endpoint custom-code',
|
|
118
|
-
|
|
119
|
-
'USPS': 'authentication-key meter-number accountid password endpoint custom-code',
|
|
120
|
-
// prettier-ignore
|
|
116
|
+
'USPS': 'account endpoint custom-code',
|
|
121
117
|
'UPS': 'endpoint custom-code',
|
|
122
118
|
};
|
|
123
119
|
if (codeToHiddenControls[code])
|
|
@@ -126,7 +122,10 @@ export class StoreShippingMethodForm extends Base {
|
|
|
126
122
|
if (!hasData || (code === null || code === void 0 ? void 0 : code.startsWith('CUSTOM')))
|
|
127
123
|
hiddenControls += ' services';
|
|
128
124
|
if (hasData)
|
|
129
|
-
hiddenControls = `shipping-method-uri ${hiddenControls}`;
|
|
125
|
+
hiddenControls = `general:shipping-method-uri ${hiddenControls}`;
|
|
126
|
+
// prettier-ignore
|
|
127
|
+
if (!this.__useCustomAccountGetValue())
|
|
128
|
+
hiddenControls += ' account:accountid account:password account:authentication-key account:meter-number';
|
|
130
129
|
return new BooleanSelector(`${hiddenControls} ${super.hiddenSelector}`.trim());
|
|
131
130
|
}
|
|
132
131
|
get headerSubtitleOptions() {
|
|
@@ -142,47 +141,58 @@ export class StoreShippingMethodForm extends Base {
|
|
|
142
141
|
return html `
|
|
143
142
|
${this.renderHeader()}
|
|
144
143
|
|
|
145
|
-
<foxy-internal-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
144
|
+
<foxy-internal-summary-control infer="general">
|
|
145
|
+
<foxy-internal-resource-picker-control
|
|
146
|
+
layout="summary-item"
|
|
147
|
+
infer="shipping-method-uri"
|
|
148
|
+
first=${ifDefined((_a = this.shippingMethods) !== null && _a !== void 0 ? _a : (_b = this.form._links) === null || _b === void 0 ? void 0 : _b['fx:shipping_methods'].href)}
|
|
149
|
+
item="foxy-shipping-method-card"
|
|
150
|
+
.setValue=${this.__shippingMethodUriSetValue}
|
|
151
|
+
>
|
|
152
|
+
</foxy-internal-resource-picker-control>
|
|
152
153
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
154
|
+
<foxy-internal-resource-picker-control
|
|
155
|
+
layout="summary-item"
|
|
156
|
+
infer="shipping-container-uri"
|
|
157
|
+
first=${ifDefined(shippingMethod === null || shippingMethod === void 0 ? void 0 : shippingMethod._links['fx:shipping_containers'].href)}
|
|
158
|
+
item="foxy-shipping-container-card"
|
|
159
|
+
>
|
|
160
|
+
</foxy-internal-resource-picker-control>
|
|
159
161
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
162
|
+
<foxy-internal-resource-picker-control
|
|
163
|
+
layout="summary-item"
|
|
164
|
+
infer="shipping-drop-type-uri"
|
|
165
|
+
first=${ifDefined(shippingMethod === null || shippingMethod === void 0 ? void 0 : shippingMethod._links['fx:shipping_drop_types'].href)}
|
|
166
|
+
item="foxy-shipping-drop-type-card"
|
|
167
|
+
>
|
|
168
|
+
</foxy-internal-resource-picker-control>
|
|
169
|
+
</foxy-internal-summary-control>
|
|
166
170
|
|
|
167
|
-
<foxy-internal-
|
|
168
|
-
infer="
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
.options=${this.__destinationsOptions}
|
|
172
|
-
>
|
|
173
|
-
</foxy-internal-checkbox-group-control>
|
|
171
|
+
<foxy-internal-summary-control infer="destinations">
|
|
172
|
+
<foxy-internal-switch-control infer="use-for-domestic"></foxy-internal-switch-control>
|
|
173
|
+
<foxy-internal-switch-control infer="use-for-international"></foxy-internal-switch-control>
|
|
174
|
+
</foxy-internal-summary-control>
|
|
174
175
|
|
|
175
|
-
<foxy-internal-
|
|
176
|
-
|
|
176
|
+
<foxy-internal-summary-control infer="account">
|
|
177
|
+
<foxy-internal-switch-control
|
|
178
|
+
infer="use-custom-account"
|
|
179
|
+
.getValue=${this.__useCustomAccountGetValue}
|
|
180
|
+
.setValue=${this.__useCustomAccountSetValue}
|
|
181
|
+
>
|
|
182
|
+
</foxy-internal-switch-control>
|
|
183
|
+
<foxy-internal-text-control layout="summary-item" infer="authentication-key">
|
|
184
|
+
</foxy-internal-text-control>
|
|
185
|
+
<foxy-internal-text-control layout="summary-item" infer="meter-number">
|
|
186
|
+
</foxy-internal-text-control>
|
|
187
|
+
<foxy-internal-text-control layout="summary-item" infer="accountid">
|
|
188
|
+
</foxy-internal-text-control>
|
|
189
|
+
<foxy-internal-password-control layout="summary-item" infer="password">
|
|
190
|
+
</foxy-internal-password-control>
|
|
191
|
+
</foxy-internal-summary-control>
|
|
177
192
|
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
<foxy-internal-text-control infer="endpoint" property="accountid">
|
|
181
|
-
</foxy-internal-text-control>
|
|
182
|
-
`
|
|
183
|
-
: html `<foxy-internal-text-control infer="accountid"></foxy-internal-text-control>`}
|
|
193
|
+
<foxy-internal-text-control infer="endpoint" property="accountid">
|
|
194
|
+
</foxy-internal-text-control>
|
|
184
195
|
|
|
185
|
-
<foxy-internal-password-control infer="password"></foxy-internal-password-control>
|
|
186
196
|
<foxy-internal-source-control infer="custom-code"></foxy-internal-source-control>
|
|
187
197
|
|
|
188
198
|
<foxy-internal-async-resource-link-list-control
|
|
@@ -194,6 +204,7 @@ export class StoreShippingMethodForm extends Base {
|
|
|
194
204
|
options-href=${ifDefined(shippingMethod === null || shippingMethod === void 0 ? void 0 : shippingMethod._links['fx:shipping_services'].href)}
|
|
195
205
|
links-href=${ifDefined((_d = this.data) === null || _d === void 0 ? void 0 : _d._links['fx:store_shipping_services'].href)}
|
|
196
206
|
infer="services"
|
|
207
|
+
limit="200"
|
|
197
208
|
item="foxy-shipping-service-card"
|
|
198
209
|
>
|
|
199
210
|
</foxy-internal-async-resource-link-list-control>
|
|
@@ -214,6 +225,11 @@ export class StoreShippingMethodForm extends Base {
|
|
|
214
225
|
${super.renderBody()}
|
|
215
226
|
`;
|
|
216
227
|
}
|
|
228
|
+
updated(changes) {
|
|
229
|
+
super.updated(changes);
|
|
230
|
+
if (changes.has('href'))
|
|
231
|
+
this.__useCustomAccount = false;
|
|
232
|
+
}
|
|
217
233
|
get __shippingMethodLoader() {
|
|
218
234
|
return this.renderRoot.querySelector(`#${this.__shippingMethodLoaderId}`);
|
|
219
235
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreShippingMethodForm.js","sourceRoot":"","sources":["../../../../src/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { TemplateResult } from 'lit-html';\nimport type { UpdateEvent } from '../NucleonElement/UpdateEvent';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\nimport type { Data } from './types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\ntype Embed = { 'fx:shipping_method': Resource<Rels.ShippingMethod> } | undefined;\n\nconst NS = 'store-shipping-method-form';\nconst Base = TranslatableMixin(InternalForm, NS);\nconst getKbSize = (value: string) => new Blob([value]).size / 1024;\nconst isURL = (value: string) => {\n try {\n new URL(value);\n return true;\n } catch {\n return false;\n }\n};\n\n/**\n * Form element for creating and editing store shipping methods (`fx:store_shipping_method`).\n *\n * @element foxy-store-shipping-method-form\n * @since 1.21.0\n */\nexport class StoreShippingMethodForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n shippingMethods: { attribute: 'shipping-methods' },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ shipping_method_uri: v }) => (v && isURL(v)) || 'shipping-method-uri:v8n_required',\n ({ accountid: v }) => !v || v.length <= 50 || 'accountid:v8n_too_long',\n ({ password: v }) => !v || v.length <= 50 || 'password:v8n_too_long',\n ({ meter_number: v }) => !v || v.length <= 50 || 'meter-number:v8n_too_long',\n ({ authentication_key: v }) => !v || v.length <= 50 || 'authentication-key:v8n_too_long',\n ({ custom_code: v }) => !v || getKbSize(v) <= 64 || 'custom-code:v8n_too_long',\n\n form => {\n if ((form._embedded as Embed)?.['fx:shipping_method']?.code === 'CUSTOM-ENDPOINT-POST') {\n return (form.accountid && isURL(form.accountid)) || 'endpoint:v8n_required';\n } else {\n return true;\n }\n },\n\n form => {\n const url = form.shipping_container_uri;\n const code = (form._embedded as Embed)?.['fx:shipping_method']?.code;\n const codes = ['USPS', 'FedEx', 'UPS'];\n\n if (code && codes.includes(code)) {\n return (url && isURL(url)) || 'shipping-container-uri:v8n_required';\n } else {\n return true;\n }\n },\n\n form => {\n const url = form.shipping_drop_type_uri;\n const code = (form._embedded as Embed)?.['fx:shipping_method']?.code;\n const codes = ['FedEx', 'UPS'];\n\n if (code && codes.includes(code)) {\n return (url && isURL(url)) || 'shipping-drop-type-uri:v8n_required';\n } else {\n return true;\n }\n },\n ];\n }\n\n /** URL of the `fx:shipping_methods` property helper. */\n shippingMethods: string | null = null;\n\n private readonly __shippingMethodLoaderId = 'shippingMethodLoader';\n\n private readonly __shippingMethodUriSetValue = (newValue: string) => {\n this.undo();\n this.edit({ shipping_method_uri: newValue });\n };\n\n private readonly __destinationsGetValue = () => {\n const value: string[] = [];\n if (this.form.use_for_domestic) value.push('domestic');\n if (this.form.use_for_international) value.push('international');\n return value;\n };\n\n private readonly __destinationsSetValue = (newValue: string[]) => {\n this.edit({\n use_for_domestic: newValue.includes('domestic'),\n use_for_international: newValue.includes('international'),\n });\n };\n\n private readonly __destinationsOptions = [\n { value: 'domestic', label: 'domestic' },\n { value: 'international', label: 'international' },\n ];\n\n get hiddenSelector(): BooleanSelector {\n const hasData = !!this.data;\n const code = this.__shippingMethod?.code;\n\n // prettier-ignore\n let hiddenControls = 'shipping-container-uri shipping-drop-type-uri destinations authentication-key meter-number accountid password endpoint custom-code';\n\n if (code) {\n const codeToHiddenControls: Record<string, string> = {\n // prettier-ignore\n 'CUSTOM-ENDPOINT-POST': 'shipping-container-uri shipping-drop-type-uri destinations authentication-key meter-number accountid password custom-code',\n // prettier-ignore\n 'CUSTOM-CODE': 'shipping-container-uri shipping-drop-type-uri destinations authentication-key meter-number accountid password endpoint',\n // prettier-ignore\n 'CUSTOM': 'shipping-container-uri shipping-drop-type-uri authentication-key meter-number accountid password endpoint custom-code',\n // prettier-ignore\n 'FedEx': 'endpoint custom-code',\n // prettier-ignore\n 'USPS': 'authentication-key meter-number accountid password endpoint custom-code',\n // prettier-ignore\n 'UPS': 'endpoint custom-code',\n };\n\n if (codeToHiddenControls[code]) hiddenControls = codeToHiddenControls[code];\n }\n\n if (!hasData || code?.startsWith('CUSTOM')) hiddenControls += ' services';\n if (hasData) hiddenControls = `shipping-method-uri ${hiddenControls}`;\n\n return new BooleanSelector(`${hiddenControls} ${super.hiddenSelector}`.trim());\n }\n\n get headerSubtitleOptions(): Record<string, unknown> {\n return { id: this.headerCopyIdValue };\n }\n\n get headerTitleOptions(): Record<string, unknown> {\n return { ...super.headerTitleOptions, provider: this.__shippingMethod?.name };\n }\n\n renderBody(): TemplateResult {\n const shippingMethod = this.__shippingMethod;\n\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-resource-picker-control\n infer=\"shipping-method-uri\"\n first=${ifDefined(this.shippingMethods ?? this.form._links?.['fx:shipping_methods'].href)}\n item=\"foxy-shipping-method-card\"\n .setValue=${this.__shippingMethodUriSetValue}\n >\n </foxy-internal-resource-picker-control>\n\n <foxy-internal-resource-picker-control\n infer=\"shipping-container-uri\"\n first=${ifDefined(shippingMethod?._links['fx:shipping_containers'].href)}\n item=\"foxy-shipping-container-card\"\n >\n </foxy-internal-resource-picker-control>\n\n <foxy-internal-resource-picker-control\n infer=\"shipping-drop-type-uri\"\n first=${ifDefined(shippingMethod?._links['fx:shipping_drop_types'].href)}\n item=\"foxy-shipping-drop-type-card\"\n >\n </foxy-internal-resource-picker-control>\n\n <foxy-internal-checkbox-group-control\n infer=\"destinations\"\n .getValue=${this.__destinationsGetValue}\n .setValue=${this.__destinationsSetValue}\n .options=${this.__destinationsOptions}\n >\n </foxy-internal-checkbox-group-control>\n\n <foxy-internal-text-control infer=\"authentication-key\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"meter-number\"></foxy-internal-text-control>\n\n ${shippingMethod?.code === 'CUSTOM-ENDPOINT-POST'\n ? html`\n <foxy-internal-text-control infer=\"endpoint\" property=\"accountid\">\n </foxy-internal-text-control>\n `\n : html`<foxy-internal-text-control infer=\"accountid\"></foxy-internal-text-control>`}\n\n <foxy-internal-password-control infer=\"password\"></foxy-internal-password-control>\n <foxy-internal-source-control infer=\"custom-code\"></foxy-internal-source-control>\n\n <foxy-internal-async-resource-link-list-control\n foreign-key-for-uri=\"shipping_service_uri\"\n foreign-key-for-id=\"shipping_service_id\"\n own-key-for-uri=\"shipping_method_uri\"\n own-uri=${ifDefined(this.data?._links.self.href)}\n embed-key=\"fx:store_shipping_services\"\n options-href=${ifDefined(shippingMethod?._links['fx:shipping_services'].href)}\n links-href=${ifDefined(this.data?._links['fx:store_shipping_services'].href)}\n infer=\"services\"\n item=\"foxy-shipping-service-card\"\n >\n </foxy-internal-async-resource-link-list-control>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.form.shipping_method_uri || undefined)}\n id=${this.__shippingMethodLoaderId}\n @update=${(evt: UpdateEvent) => {\n const nucleon = evt.target as NucleonElement<Resource<Rels.ShippingMethod>>;\n const embed = nucleon.data;\n this.edit({ _embedded: embed ? { 'fx:shipping_method': embed } : {} });\n }}\n >\n </foxy-nucleon>\n\n ${super.renderBody()}\n `;\n }\n\n private get __shippingMethodLoader() {\n type Loader = NucleonElement<Resource<Rels.ShippingMethod>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__shippingMethodLoaderId}`);\n }\n\n private get __shippingMethod() {\n return (\n this.__shippingMethodLoader?.data ?? (this.form._embedded as Embed)?.['fx:shipping_method']\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"StoreShippingMethodForm.js","sourceRoot":"","sources":["../../../../src/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { TemplateResult } from 'lit-html';\nimport type { UpdateEvent } from '../NucleonElement/UpdateEvent';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\nimport type { Data } from './types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\ntype Embed = { 'fx:shipping_method': Resource<Rels.ShippingMethod> } | undefined;\n\nconst NS = 'store-shipping-method-form';\nconst Base = TranslatableMixin(InternalForm, NS);\nconst getKbSize = (value: string) => new Blob([value]).size / 1024;\nconst isURL = (value: string) => {\n try {\n new URL(value);\n return true;\n } catch {\n return false;\n }\n};\n\n/**\n * Form element for creating and editing store shipping methods (`fx:store_shipping_method`).\n *\n * @element foxy-store-shipping-method-form\n * @since 1.21.0\n */\nexport class StoreShippingMethodForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n shippingMethods: { attribute: 'shipping-methods' },\n __useCustomAccount: { attribute: false },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ shipping_method_uri: v }) => (v && isURL(v)) || 'shipping-method-uri:v8n_required',\n ({ accountid: v }) => !v || v.length <= 50 || 'accountid:v8n_too_long',\n ({ password: v }) => !v || v.length <= 50 || 'password:v8n_too_long',\n ({ meter_number: v }) => !v || v.length <= 50 || 'meter-number:v8n_too_long',\n ({ authentication_key: v }) => !v || v.length <= 50 || 'authentication-key:v8n_too_long',\n ({ custom_code: v }) => !v || getKbSize(v) <= 64 || 'custom-code:v8n_too_long',\n\n form => {\n if ((form._embedded as Embed)?.['fx:shipping_method']?.code === 'CUSTOM-ENDPOINT-POST') {\n return (form.accountid && isURL(form.accountid)) || 'endpoint:v8n_required';\n } else {\n return true;\n }\n },\n\n form => {\n const url = form.shipping_container_uri;\n const code = (form._embedded as Embed)?.['fx:shipping_method']?.code;\n const codes = ['USPS', 'FedEx', 'UPS'];\n\n if (code && codes.includes(code)) {\n return (url && isURL(url)) || 'shipping-container-uri:v8n_required';\n } else {\n return true;\n }\n },\n\n form => {\n const url = form.shipping_drop_type_uri;\n const code = (form._embedded as Embed)?.['fx:shipping_method']?.code;\n const codes = ['FedEx', 'UPS'];\n\n if (code && codes.includes(code)) {\n return (url && isURL(url)) || 'shipping-drop-type-uri:v8n_required';\n } else {\n return true;\n }\n },\n ];\n }\n\n /** URL of the `fx:shipping_methods` property helper. */\n shippingMethods: string | null = null;\n\n private readonly __shippingMethodLoaderId = 'shippingMethodLoader';\n\n private readonly __shippingMethodUriSetValue = (newValue: string) => {\n this.undo();\n this.edit({ shipping_method_uri: newValue });\n };\n\n private __useCustomAccount = false;\n\n private readonly __useCustomAccountGetValue = () => {\n return Boolean(\n this.__useCustomAccount ||\n this.form.authentication_key ||\n this.form.meter_number ||\n this.form.accountid ||\n this.form.password\n );\n };\n\n private readonly __useCustomAccountSetValue = (value: boolean) => {\n if (!value) {\n this.edit({\n authentication_key: '',\n meter_number: '',\n accountid: '',\n password: '',\n });\n }\n\n this.__useCustomAccount = value;\n };\n\n get hiddenSelector(): BooleanSelector {\n const hasData = !!this.data;\n const code = this.__shippingMethod?.code;\n\n // prettier-ignore\n let hiddenControls = 'general:shipping-container-uri general:shipping-drop-type-uri destinations account endpoint custom-code';\n\n if (code) {\n const codeToHiddenControls: Record<string, string> = {\n 'CUSTOM-ENDPOINT-POST': 'general destinations account custom-code',\n 'CUSTOM-CODE': 'general destinations account endpoint',\n 'CUSTOM': 'general account endpoint custom-code',\n 'FedEx': 'endpoint custom-code',\n 'USPS': 'account endpoint custom-code',\n 'UPS': 'endpoint custom-code',\n };\n\n if (codeToHiddenControls[code]) hiddenControls = codeToHiddenControls[code];\n }\n\n if (!hasData || code?.startsWith('CUSTOM')) hiddenControls += ' services';\n if (hasData) hiddenControls = `general:shipping-method-uri ${hiddenControls}`;\n\n // prettier-ignore\n if (!this.__useCustomAccountGetValue()) hiddenControls += ' account:accountid account:password account:authentication-key account:meter-number';\n\n return new BooleanSelector(`${hiddenControls} ${super.hiddenSelector}`.trim());\n }\n\n get headerSubtitleOptions(): Record<string, unknown> {\n return { id: this.headerCopyIdValue };\n }\n\n get headerTitleOptions(): Record<string, unknown> {\n return { ...super.headerTitleOptions, provider: this.__shippingMethod?.name };\n }\n\n renderBody(): TemplateResult {\n const shippingMethod = this.__shippingMethod;\n\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-summary-control infer=\"general\">\n <foxy-internal-resource-picker-control\n layout=\"summary-item\"\n infer=\"shipping-method-uri\"\n first=${ifDefined(this.shippingMethods ?? this.form._links?.['fx:shipping_methods'].href)}\n item=\"foxy-shipping-method-card\"\n .setValue=${this.__shippingMethodUriSetValue}\n >\n </foxy-internal-resource-picker-control>\n\n <foxy-internal-resource-picker-control\n layout=\"summary-item\"\n infer=\"shipping-container-uri\"\n first=${ifDefined(shippingMethod?._links['fx:shipping_containers'].href)}\n item=\"foxy-shipping-container-card\"\n >\n </foxy-internal-resource-picker-control>\n\n <foxy-internal-resource-picker-control\n layout=\"summary-item\"\n infer=\"shipping-drop-type-uri\"\n first=${ifDefined(shippingMethod?._links['fx:shipping_drop_types'].href)}\n item=\"foxy-shipping-drop-type-card\"\n >\n </foxy-internal-resource-picker-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-summary-control infer=\"destinations\">\n <foxy-internal-switch-control infer=\"use-for-domestic\"></foxy-internal-switch-control>\n <foxy-internal-switch-control infer=\"use-for-international\"></foxy-internal-switch-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-summary-control infer=\"account\">\n <foxy-internal-switch-control\n infer=\"use-custom-account\"\n .getValue=${this.__useCustomAccountGetValue}\n .setValue=${this.__useCustomAccountSetValue}\n >\n </foxy-internal-switch-control>\n <foxy-internal-text-control layout=\"summary-item\" infer=\"authentication-key\">\n </foxy-internal-text-control>\n <foxy-internal-text-control layout=\"summary-item\" infer=\"meter-number\">\n </foxy-internal-text-control>\n <foxy-internal-text-control layout=\"summary-item\" infer=\"accountid\">\n </foxy-internal-text-control>\n <foxy-internal-password-control layout=\"summary-item\" infer=\"password\">\n </foxy-internal-password-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-text-control infer=\"endpoint\" property=\"accountid\">\n </foxy-internal-text-control>\n\n <foxy-internal-source-control infer=\"custom-code\"></foxy-internal-source-control>\n\n <foxy-internal-async-resource-link-list-control\n foreign-key-for-uri=\"shipping_service_uri\"\n foreign-key-for-id=\"shipping_service_id\"\n own-key-for-uri=\"shipping_method_uri\"\n own-uri=${ifDefined(this.data?._links.self.href)}\n embed-key=\"fx:store_shipping_services\"\n options-href=${ifDefined(shippingMethod?._links['fx:shipping_services'].href)}\n links-href=${ifDefined(this.data?._links['fx:store_shipping_services'].href)}\n infer=\"services\"\n limit=\"200\"\n item=\"foxy-shipping-service-card\"\n >\n </foxy-internal-async-resource-link-list-control>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.form.shipping_method_uri || undefined)}\n id=${this.__shippingMethodLoaderId}\n @update=${(evt: UpdateEvent) => {\n const nucleon = evt.target as NucleonElement<Resource<Rels.ShippingMethod>>;\n const embed = nucleon.data;\n this.edit({ _embedded: embed ? { 'fx:shipping_method': embed } : {} });\n }}\n >\n </foxy-nucleon>\n\n ${super.renderBody()}\n `;\n }\n\n updated(changes: Map<keyof this, unknown>): void {\n super.updated(changes);\n if (changes.has('href')) this.__useCustomAccount = false;\n }\n\n private get __shippingMethodLoader() {\n type Loader = NucleonElement<Resource<Rels.ShippingMethod>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__shippingMethodLoaderId}`);\n }\n\n private get __shippingMethod() {\n return (\n this.__shippingMethodLoader?.data ?? (this.form._embedded as Embed)?.['fx:shipping_method']\n );\n }\n}\n"]}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import '../../internal/InternalAsyncResourceLinkListControl/index';
|
|
2
2
|
import '../../internal/InternalResourcePickerControl/index';
|
|
3
|
-
import '../../internal/InternalCheckboxGroupControl/index';
|
|
4
3
|
import '../../internal/InternalPasswordControl/index';
|
|
4
|
+
import '../../internal/InternalSummaryControl/index';
|
|
5
5
|
import '../../internal/InternalSourceControl/index';
|
|
6
|
+
import '../../internal/InternalSwitchControl/index';
|
|
6
7
|
import '../../internal/InternalTextControl/index';
|
|
7
8
|
import '../../internal/InternalForm/index';
|
|
8
9
|
import '../ShippingContainerCard/index';
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import "../../internal/InternalAsyncResourceLinkListControl/index.js";
|
|
2
2
|
import "../../internal/InternalResourcePickerControl/index.js";
|
|
3
|
-
import "../../internal/InternalCheckboxGroupControl/index.js";
|
|
4
3
|
import "../../internal/InternalPasswordControl/index.js";
|
|
4
|
+
import "../../internal/InternalSummaryControl/index.js";
|
|
5
5
|
import "../../internal/InternalSourceControl/index.js";
|
|
6
|
+
import "../../internal/InternalSwitchControl/index.js";
|
|
6
7
|
import "../../internal/InternalTextControl/index.js";
|
|
7
8
|
import "../../internal/InternalForm/index.js";
|
|
8
9
|
import "../ShippingContainerCard/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/StoreShippingMethodForm/index.ts"],"names":[],"mappings":"AAAA,sEAAmE;AACnE,+DAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/StoreShippingMethodForm/index.ts"],"names":[],"mappings":"AAAA,sEAAmE;AACnE,+DAA4D;AAC5D,yDAAsD;AACtD,wDAAqD;AACrD,uDAAoD;AACpD,uDAAoD;AACpD,qDAAkD;AAClD,8CAA2C;AAE3C,2CAAwC;AACxC,0CAAuC;AACvC,yCAAsC;AACtC,wCAAqC;AACrC,oCAAiC;AAEjC,OAAO,EAAE,uBAAuB,EAAE,qCAAkC;AAEpE,cAAc,CAAC,MAAM,CAAC,iCAAiC,EAAE,uBAAuB,CAAC,CAAC;AAElF,OAAO,EAAE,uBAAuB,EAAE,CAAC","sourcesContent":["import '../../internal/InternalAsyncResourceLinkListControl/index';\nimport '../../internal/InternalResourcePickerControl/index';\nimport '../../internal/InternalPasswordControl/index';\nimport '../../internal/InternalSummaryControl/index';\nimport '../../internal/InternalSourceControl/index';\nimport '../../internal/InternalSwitchControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport '../ShippingContainerCard/index';\nimport '../ShippingDropTypeCard/index';\nimport '../ShippingServiceCard/index';\nimport '../ShippingMethodCard/index';\nimport '../NucleonElement/index';\n\nimport { StoreShippingMethodForm } from './StoreShippingMethodForm';\n\ncustomElements.define('foxy-store-shipping-method-form', StoreShippingMethodForm);\n\nexport { StoreShippingMethodForm };\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@foxy.io/elements",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.31.0-beta.1",
|
|
5
5
|
"description": "E-commerce web components by Foxy.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
"rollup-plugin-copy": "^3.4.0",
|
|
106
106
|
"rollup-plugin-multi-input": "^1.1.1",
|
|
107
107
|
"rollup-plugin-terser": "^7.0.1",
|
|
108
|
-
"semantic-release": "^24.
|
|
108
|
+
"semantic-release": "^24.1.0",
|
|
109
109
|
"sinon": "^9.0.2",
|
|
110
110
|
"tailwindcss": "^2.0.4",
|
|
111
111
|
"tslib": "2.1.0",
|
|
@@ -142,6 +142,17 @@
|
|
|
142
142
|
"name": "beta",
|
|
143
143
|
"prerelease": true
|
|
144
144
|
}
|
|
145
|
+
],
|
|
146
|
+
"plugins": [
|
|
147
|
+
"@semantic-release/commit-analyzer",
|
|
148
|
+
"@semantic-release/release-notes-generator",
|
|
149
|
+
"@semantic-release/npm",
|
|
150
|
+
[
|
|
151
|
+
"@semantic-release/github",
|
|
152
|
+
{
|
|
153
|
+
"successComment": false
|
|
154
|
+
}
|
|
155
|
+
]
|
|
145
156
|
]
|
|
146
157
|
},
|
|
147
158
|
"publishConfig": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as t}from"./shared-226dd830.js";import"./shared-49ecea83.js";import{c as e,h as s}from"./shared-dc73b9a5.js";let r,o,d=t=>t;customElements.define("foxy-internal-summary-control",class extends t{static get styles(){return[...super.styles,e(r||(r=d`::slotted(*){padding:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)}::slotted(:not(:first-child)){border-top:thin var(--foxy-border-style,solid) var(--lumo-contrast-10pct)!important}`))]}renderLightDom(){}renderControl(){return s(o||(o=d` <p class="mb-xs font-medium text-secondary text-s" ?hidden="${0}">${0}</p> <div class="border border-contrast-10 rounded"><slot></slot></div> <p class="mt-xs text-xs text-secondary" ?hidden="${0}">${0}</p> `),!this.label,this.label,!this.helperText,this.helperText)}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./shared-4a652d60.js";import"./shared-19f46691.js";import{I as e}from"./shared-226dd830.js";import{_ as t}from"./shared-0f6e4584.js";import{i as r}from"./shared-9803aa7c.js";import{h as a,s}from"./shared-dc73b9a5.js";import{c as l}from"./shared-4e709717.js";let o,i,n,d=e=>e;customElements.define("foxy-internal-password-control",class extends e{constructor(){super(...arguments),this.generatorOptions=null,this.showGenerator=!1}static get properties(){return t(t({},super.properties),{},{generatorOptions:{type:Object,attribute:"generator-options"},showGenerator:{type:Boolean,attribute:"show-generator"}})}renderControl(){return a(o||(o=d` <vaadin-password-field error-message="${0}" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" @keydown="${0}" @input="${0}"> ${0} </vaadin-password-field> `),r(this._errorMessage),this.helperText,this.placeholder,this.label,this.disabled,this.readonly,this._checkValidity,this._value,(e=>{var t;return"Enter"===e.key&&(null===(t=this.nucleon)||void 0===t?void 0:t.submit())}),(e=>{const t=e.currentTarget;this._value=t.value}),this.showGenerator?this.__renderGenerator():"")}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}__renderGenerator(){return a(i||(i=d` <div data-testid="generator" class="${0}" slot="suffix" @click="${0}"> ${0} </div> `),l({"w-s h-s flex items-center justify-center cursor-default transition-colors":!0,"text-contrast-60 hover-text-contrast-80":!this.disabled&&!this.readonly,"text-contrast-20":this.disabled||this.readonly}),(()=>{var e;this._value=function(e){var t,r,a;const s=null!==(t=null==e?void 0:e.separator)&&void 0!==t?t:"-",l=null!==(r=null==e?void 0:e.charset)&&void 0!==r?r:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",o=null!==(a=null==e?void 0:e.length)&&void 0!==a?a:18;let i="";for(let e=0;e<o;e++)s&&e>0&&e%6==0&&(i+=s),i+=l[Math.floor(Math.random()*l.length)];return i}(null!==(e=this.generatorOptions)&&void 0!==e?e:void 0);const t=this.renderRoot.querySelector("vaadin-password-field");null==t||t._setPasswordVisible(!0)}),s(n||(n=d`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" style="width: 1.15em; height: 1.15em"><path d="M15.98 1.804a1 1 0 00-1.96 0l-.24 1.192a1 1 0 01-.784.785l-1.192.238a1 1 0 000 1.962l1.192.238a1 1 0 01.785.785l.238 1.192a1 1 0 001.962 0l.238-1.192a1 1 0 01.785-.785l1.192-.238a1 1 0 000-1.962l-1.192-.238a1 1 0 01-.785-.785l-.238-1.192zM6.949 5.684a1 1 0 00-1.898 0l-.683 2.051a1 1 0 01-.633.633l-2.051.683a1 1 0 000 1.898l2.051.684a1 1 0 01.633.632l.683 2.051a1 1 0 001.898 0l.683-2.051a1 1 0 01.633-.633l2.051-.683a1 1 0 000-1.898l-2.051-.683a1 1 0 01-.633-.633L6.95 5.684zM13.949 13.684a1 1 0 00-1.898 0l-.184.551a1 1 0 01-.632.633l-.551.183a1 1 0 000 1.898l.551.183a1 1 0 01.633.633l.183.551a1 1 0 001.898 0l.184-.551a1 1 0 01.632-.633l.551-.183a1 1 0 000-1.898l-.551-.184a1 1 0 01-.633-.632l-.183-.551z" /></svg>`)))}});
|