@postnord/pn-marketweb-components 2.4.20 → 2.4.22
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/cjs/index-4199ff85.js +8 -4
- package/cjs/loader.cjs.js +1 -1
- package/cjs/pn-address-autofill.cjs.entry.js +322 -0
- package/cjs/pn-market-web-components.cjs.js +1 -1
- package/cjs/pn-marketweb-input.cjs.entry.js +36 -25
- package/cjs/pn-marketweb-sitefooter.cjs.entry.js +7 -6
- package/cjs/pn-marketweb-siteheader.cjs.entry.js +3 -3
- package/cjs/pn-proxio-findprice.cjs.entry.js +3 -3
- package/cjs/pn-proxio-pricegroup.cjs.entry.js +3 -3
- package/cjs/pn-site-footer_3.cjs.entry.js +3 -2
- package/collection/collection-manifest.json +2 -1
- package/collection/components/input/pn-address-autofill/pn-address-autofill.css +45 -0
- package/collection/components/input/pn-address-autofill/pn-address-autofill.js +537 -0
- package/collection/components/input/pn-address-autofill/pn-address-autofill.stories.js +40 -0
- package/collection/components/input/pn-marketweb-input/pn-marketweb-input.js +50 -39
- package/collection/components/input/pn-multi-formfield/types.js +1 -0
- package/collection/components/layout-components/pn-marketweb-sitefooter/pn-marketweb-sitefooter.js +22 -3
- package/collection/components/layout-components/pn-marketweb-sitefooter/pn-marketweb-sitefooter.stories.js +2 -0
- package/collection/components/minor/pn-swan/pn-swan.css +12 -0
- package/collection/components/minor/pn-swan/pn-swan.js +19 -1
- package/collection/components/minor/pn-swan/pn-swan.stories.js +1 -1
- package/components/index.d.ts +2 -1
- package/components/index.js +1 -0
- package/components/index2.js +63 -52
- package/components/index3.js +52 -63
- package/components/pn-address-autofill.d.ts +11 -0
- package/components/pn-address-autofill.js +359 -0
- package/components/pn-animated-tile.js +1 -1
- package/components/pn-dropdown-choice-adds-row.js +1 -1
- package/components/pn-marketweb-input2.js +36 -25
- package/components/pn-marketweb-sitefooter.js +6 -4
- package/components/pn-marketweb-siteheader.js +1 -1
- package/components/pn-multi-formfield.js +1 -1
- package/components/pn-proxio-findprice.js +1 -1
- package/components/pn-proxio-pricegroup.js +1 -1
- package/components/pn-spotlight.js +1 -1
- package/components/pn-swan2.js +4 -2
- package/esm/index-ee44c065.js +8 -4
- package/esm/loader.js +1 -1
- package/esm/pn-address-autofill.entry.js +318 -0
- package/esm/pn-market-web-components.js +1 -1
- package/esm/pn-marketweb-input.entry.js +36 -25
- package/esm/pn-marketweb-sitefooter.entry.js +5 -4
- package/esm/pn-marketweb-siteheader.entry.js +1 -1
- package/esm/pn-proxio-findprice.entry.js +1 -1
- package/esm/pn-proxio-pricegroup.entry.js +1 -1
- package/esm/pn-site-footer_3.entry.js +3 -2
- package/esm-es5/FetchHelper-62dc55bf.js +1 -0
- package/esm-es5/index-ee44c065.js +1 -1
- package/esm-es5/loader.js +1 -1
- package/esm-es5/pn-address-autofill.entry.js +1 -0
- package/esm-es5/pn-market-web-components.js +1 -1
- package/esm-es5/pn-marketweb-input.entry.js +1 -1
- package/esm-es5/pn-marketweb-sitefooter.entry.js +1 -1
- package/esm-es5/pn-marketweb-siteheader.entry.js +1 -1
- package/esm-es5/pn-proxio-findprice.entry.js +1 -1
- package/esm-es5/pn-proxio-pricegroup.entry.js +1 -1
- package/esm-es5/pn-site-footer_3.entry.js +1 -1
- package/package.json +1 -1
- package/pn-market-web-components/{p-7e99f631.system.entry.js → p-18aca162.system.entry.js} +1 -1
- package/pn-market-web-components/{p-6e11edfe.entry.js → p-1b282c2b.entry.js} +1 -1
- package/pn-market-web-components/{p-3c38a67e.system.entry.js → p-256ba011.system.entry.js} +1 -1
- package/pn-market-web-components/{p-21bf0e64.system.entry.js → p-356a937e.system.entry.js} +1 -1
- package/pn-market-web-components/{p-1a8d7eb8.entry.js → p-372b4cad.entry.js} +1 -1
- package/{esm-es5/MarketWebContextService-f6a33f17.js → pn-market-web-components/p-439d5d73.system.js} +1 -1
- package/pn-market-web-components/p-4afba818.entry.js +1 -0
- package/pn-market-web-components/p-4b0ccb02.system.entry.js +1 -0
- package/pn-market-web-components/p-592b66fc.system.entry.js +1 -0
- package/pn-market-web-components/{p-8e9abd24.system.entry.js → p-89fcb948.system.entry.js} +1 -1
- package/pn-market-web-components/{p-5427a6ba.entry.js → p-90d2fb46.entry.js} +1 -1
- package/pn-market-web-components/p-9ad0ceb0.js +1 -0
- package/pn-market-web-components/p-b1527c0c.entry.js +1 -0
- package/pn-market-web-components/{p-0ae0b140.system.entry.js → p-c06e3588.system.entry.js} +1 -1
- package/pn-market-web-components/p-da9e05c0.entry.js +1 -0
- package/pn-market-web-components/p-fcdb7381.system.js +1 -1
- package/pn-market-web-components/p-ffae5f6b.entry.js +1 -0
- package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
- package/types/components/input/pn-address-autofill/pn-address-autofill.d.ts +56 -0
- package/types/components/input/pn-address-autofill/types.d.ts +40 -0
- package/types/components/layout-components/pn-marketweb-sitefooter/pn-marketweb-sitefooter-types.d.ts +1 -1
- package/types/components/layout-components/pn-marketweb-sitefooter/pn-marketweb-sitefooter.d.ts +2 -0
- package/types/components/minor/pn-swan/pn-swan.d.ts +1 -0
- package/types/components.d.ts +60 -1
- package/pn-market-web-components/p-33322417.system.js +0 -1
- package/pn-market-web-components/p-3ba2a479.entry.js +0 -1
- package/pn-market-web-components/p-5d21372b.js +0 -1
- package/pn-market-web-components/p-f0078106.entry.js +0 -1
- package/pn-market-web-components/p-f45f034b.entry.js +0 -1
- package/pn-market-web-components/p-f7165a26.system.entry.js +0 -1
- package/cjs/{MarketWebContextService-17053565.js → FetchHelper-2130dacf.js} +84 -84
- package/collection/components/{layout-components/pn-multi-formfield → input/pn-address-autofill}/types.js +0 -0
- package/collection/components/{layout-components → input}/pn-multi-formfield/multi-formfield.stories.js +0 -0
- package/collection/components/{layout-components → input}/pn-multi-formfield/pn-multi-formfield.css +0 -0
- package/collection/components/{layout-components → input}/pn-multi-formfield/pn-multi-formfield.js +0 -0
- package/components/{MarketWebContextService.js → FetchHelper.js} +84 -84
- package/esm/{MarketWebContextService-f6a33f17.js → FetchHelper-62dc55bf.js} +84 -84
- /package/types/components/{layout-components → input}/pn-multi-formfield/pn-multi-formfield.d.ts +0 -0
- /package/types/components/{layout-components → input}/pn-multi-formfield/types.d.ts +0 -0
package/components/index3.js
CHANGED
|
@@ -1,70 +1,59 @@
|
|
|
1
|
-
|
|
2
|
-
* Returns a function, that, as long as it continues to be invoked, will not
|
|
3
|
-
* be triggered. The function will be called after it stops being called for
|
|
4
|
-
* N milliseconds. If `immediate` is passed, trigger the function on the
|
|
5
|
-
* leading edge, instead of the trailing. The function also has a property 'clear'
|
|
6
|
-
* that is a function which will clear the timer to prevent previously scheduled executions.
|
|
7
|
-
*
|
|
8
|
-
* @source underscore.js
|
|
9
|
-
* @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/
|
|
10
|
-
* @param {Function} function to wrap
|
|
11
|
-
* @param {Number} timeout in ms (`100`)
|
|
12
|
-
* @param {Boolean} whether to execute at the beginning (`false`)
|
|
13
|
-
* @api public
|
|
14
|
-
*/
|
|
15
|
-
function debounce(func, wait, immediate){
|
|
16
|
-
var timeout, args, context, timestamp, result;
|
|
17
|
-
if (null == wait) wait = 100;
|
|
1
|
+
import { c as createCommonjsModule } from './_commonjsHelpers.js';
|
|
18
2
|
|
|
19
|
-
|
|
20
|
-
|
|
3
|
+
var classnames = createCommonjsModule(function (module) {
|
|
4
|
+
/*!
|
|
5
|
+
Copyright (c) 2018 Jed Watson.
|
|
6
|
+
Licensed under the MIT License (MIT), see
|
|
7
|
+
http://jedwatson.github.io/classnames
|
|
8
|
+
*/
|
|
9
|
+
/* global define */
|
|
21
10
|
|
|
22
|
-
|
|
23
|
-
timeout = setTimeout(later, wait - last);
|
|
24
|
-
} else {
|
|
25
|
-
timeout = null;
|
|
26
|
-
if (!immediate) {
|
|
27
|
-
result = func.apply(context, args);
|
|
28
|
-
context = args = null;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
var debounced = function(){
|
|
33
|
-
context = this;
|
|
34
|
-
args = arguments;
|
|
35
|
-
timestamp = Date.now();
|
|
36
|
-
var callNow = immediate && !timeout;
|
|
37
|
-
if (!timeout) timeout = setTimeout(later, wait);
|
|
38
|
-
if (callNow) {
|
|
39
|
-
result = func.apply(context, args);
|
|
40
|
-
context = args = null;
|
|
41
|
-
}
|
|
11
|
+
(function () {
|
|
42
12
|
|
|
43
|
-
|
|
44
|
-
};
|
|
13
|
+
var hasOwn = {}.hasOwnProperty;
|
|
45
14
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
clearTimeout(timeout);
|
|
49
|
-
timeout = null;
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
debounced.flush = function() {
|
|
54
|
-
if (timeout) {
|
|
55
|
-
result = func.apply(context, args);
|
|
56
|
-
context = args = null;
|
|
57
|
-
|
|
58
|
-
clearTimeout(timeout);
|
|
59
|
-
timeout = null;
|
|
60
|
-
}
|
|
61
|
-
};
|
|
15
|
+
function classNames() {
|
|
16
|
+
var classes = [];
|
|
62
17
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
debounce.debounce = debounce;
|
|
18
|
+
for (var i = 0; i < arguments.length; i++) {
|
|
19
|
+
var arg = arguments[i];
|
|
20
|
+
if (!arg) continue;
|
|
67
21
|
|
|
68
|
-
var
|
|
22
|
+
var argType = typeof arg;
|
|
69
23
|
|
|
70
|
-
|
|
24
|
+
if (argType === 'string' || argType === 'number') {
|
|
25
|
+
classes.push(arg);
|
|
26
|
+
} else if (Array.isArray(arg)) {
|
|
27
|
+
if (arg.length) {
|
|
28
|
+
var inner = classNames.apply(null, arg);
|
|
29
|
+
if (inner) {
|
|
30
|
+
classes.push(inner);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
} else if (argType === 'object') {
|
|
34
|
+
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {
|
|
35
|
+
classes.push(arg.toString());
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
for (var key in arg) {
|
|
40
|
+
if (hasOwn.call(arg, key) && arg[key]) {
|
|
41
|
+
classes.push(key);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return classes.join(' ');
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
if (module.exports) {
|
|
51
|
+
classNames.default = classNames;
|
|
52
|
+
module.exports = classNames;
|
|
53
|
+
} else {
|
|
54
|
+
window.classNames = classNames;
|
|
55
|
+
}
|
|
56
|
+
}());
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
export { classnames as c };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface PnAddressAutofill extends Components.PnAddressAutofill, HTMLElement {}
|
|
4
|
+
export const PnAddressAutofill: {
|
|
5
|
+
prototype: PnAddressAutofill;
|
|
6
|
+
new (): PnAddressAutofill;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
|
+
import { F as FetchHelper, M as MarketWebContextService } from './FetchHelper.js';
|
|
3
|
+
import { d as debounce_1 } from './index2.js';
|
|
4
|
+
import { d as defineCustomElement$2 } from './pn-marketweb-input2.js';
|
|
5
|
+
|
|
6
|
+
const pnAddressAutofillCss = "pn-address-autofill pn-marketweb-input{width:50%}pn-address-autofill .input-container-row{display:-ms-flexbox;display:flex;gap:1rem;margin-bottom:1rem}pn-address-autofill .label-container{color:#5E554A;font-size:0.875em;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:end;align-items:flex-end}pn-address-autofill .autocomplete-items{position:absolute;border-radius:0.8rem;border:0.1rem solid #5E554A;width:100%;max-height:30rem;overflow-y:auto}pn-address-autofill .autocomplete-items:hover,pn-address-autofill .autocomplete-items :focus{border:0.1rem solid #00A0D6}pn-address-autofill .autocomplete-items div{padding:1.6rem;cursor:pointer;background-color:#fff;border:0.1rem solid transparent}pn-address-autofill .autocomplete-items div:first-child{border-radius:0.8rem 0.8rem 0 0}pn-address-autofill .autocomplete-items div:last-child{border-radius:0 0 0.8rem 0.8rem}pn-address-autofill .autocomplete-items div:hover{background-color:#e0f8ff}pn-address-autofill .autocomplete-items .autocomplete-active{background-color:#e0f8ff}";
|
|
7
|
+
|
|
8
|
+
const PnAddressAutofill$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
9
|
+
constructor() {
|
|
10
|
+
super();
|
|
11
|
+
this.__registerHost();
|
|
12
|
+
this.addresscomplete = createEvent(this, "addresscomplete", 7);
|
|
13
|
+
this.pnInputPostalCode = null;
|
|
14
|
+
this.pnInputCity = null;
|
|
15
|
+
this.pnInputStreetAddress = null;
|
|
16
|
+
this.pnInputStreetNumber = null;
|
|
17
|
+
this.postalCodeInputField = null;
|
|
18
|
+
this.streetAddressInputField = null;
|
|
19
|
+
this.streetNumberInputField = null;
|
|
20
|
+
this.pnInputHiddenValue = null;
|
|
21
|
+
this.endpointPath = '/api/location/get-by-location';
|
|
22
|
+
this._postalCodeProps = null;
|
|
23
|
+
this._cityProps = null;
|
|
24
|
+
this._streetAddressProps = null;
|
|
25
|
+
this._streetNumberProps = null;
|
|
26
|
+
this.fetchHelper = new FetchHelper('PostalCodeCityAutofill');
|
|
27
|
+
this.filterStreetNames = (data) => {
|
|
28
|
+
const addresses = [];
|
|
29
|
+
this.streetAdressArr = null;
|
|
30
|
+
data.addresses.forEach(item => {
|
|
31
|
+
if (item.postalCode.postalCity === this.city && !addresses.includes(item.street)) {
|
|
32
|
+
addresses.push(item.street);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
this.streetAdressArr = addresses;
|
|
36
|
+
};
|
|
37
|
+
this.filterStreetNumbers = (data) => {
|
|
38
|
+
const streetNumbersResult = [];
|
|
39
|
+
data.addresses.forEach(item => {
|
|
40
|
+
if (item.postalCode.postalCode === this.postalCode) {
|
|
41
|
+
const { numberFrom, numberTo } = item;
|
|
42
|
+
const from = parseInt(numberFrom);
|
|
43
|
+
const to = parseInt(numberTo);
|
|
44
|
+
for (let i = from; i <= to; i++) {
|
|
45
|
+
const nrString = i.toString();
|
|
46
|
+
if (!streetNumbersResult.includes(nrString)) {
|
|
47
|
+
streetNumbersResult.push(i.toString());
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
this.streetNumberArr = streetNumbersResult;
|
|
53
|
+
};
|
|
54
|
+
this.market = null;
|
|
55
|
+
this.environment = null;
|
|
56
|
+
this.endpoint = null;
|
|
57
|
+
this.cache = true;
|
|
58
|
+
this.countryCode = null;
|
|
59
|
+
this.postalCodeProps = null;
|
|
60
|
+
this.cityProps = null;
|
|
61
|
+
this.streetAddressProps = null;
|
|
62
|
+
this.streetNumberProps = null;
|
|
63
|
+
this.streetAdressArr = null;
|
|
64
|
+
this.streetNumberArr = null;
|
|
65
|
+
this.city = null;
|
|
66
|
+
this.postalCode = null;
|
|
67
|
+
this.streetAddress = null;
|
|
68
|
+
this.streetNumber = null;
|
|
69
|
+
this.fullAddress = null;
|
|
70
|
+
}
|
|
71
|
+
componentWillLoad() {
|
|
72
|
+
this.setInitialValues();
|
|
73
|
+
this._postalCodeProps = this.setProps(this.postalCodeProps);
|
|
74
|
+
this._cityProps = this.setProps(this.cityProps);
|
|
75
|
+
this._streetAddressProps = this.setProps(this.streetAddressProps);
|
|
76
|
+
this._streetNumberProps = this.setProps(this.streetNumberProps);
|
|
77
|
+
}
|
|
78
|
+
setProps(props) {
|
|
79
|
+
if (typeof props === 'string') {
|
|
80
|
+
return JSON.parse(props);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
return props;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
componentDidLoad() {
|
|
87
|
+
this.postalCodeInputField = this.pnInputPostalCode.querySelector('input');
|
|
88
|
+
this.streetAddressInputField = this.pnInputStreetAddress.querySelector('input');
|
|
89
|
+
this.streetNumberInputField = this.pnInputStreetNumber.querySelector('input');
|
|
90
|
+
this.addEventHandlers();
|
|
91
|
+
}
|
|
92
|
+
async setInitialValues(href = window.location.href) {
|
|
93
|
+
var _a;
|
|
94
|
+
const marketWebContextService = new MarketWebContextService(href);
|
|
95
|
+
if (!this.environment) {
|
|
96
|
+
this.environment = await marketWebContextService.getEnvironmentName();
|
|
97
|
+
}
|
|
98
|
+
if (!this.endpoint && ((_a = this.environment) === null || _a === void 0 ? void 0 : _a.indexOf('local')) === -1) {
|
|
99
|
+
this.endpoint = await marketWebContextService.getEndpoint(this.environment, this.market);
|
|
100
|
+
}
|
|
101
|
+
if (!this.endpoint) {
|
|
102
|
+
this.endpoint = '';
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
addEventHandlers() {
|
|
106
|
+
const postalCodeSearch = debounce_1.debounce(this.fetchData.bind(this, this.postalCodeInputField), 1000);
|
|
107
|
+
this.postalCodeInputField.addEventListener('keyup', postalCodeSearch);
|
|
108
|
+
this.streetAddressInputField.addEventListener('keyup', this.handleStreetAddressDropdown.bind(this));
|
|
109
|
+
this.streetNumberInputField.addEventListener('focus', this.handleStreetNumberDropdown.bind(this));
|
|
110
|
+
this.addFormFieldEvent();
|
|
111
|
+
}
|
|
112
|
+
addFormFieldEvent() {
|
|
113
|
+
const allInputs = this.hostElement.querySelectorAll('input');
|
|
114
|
+
allInputs.forEach(element => {
|
|
115
|
+
['keyup', 'change'].forEach(eventName => {
|
|
116
|
+
const debounceUpdate = debounce_1.debounce(this.updateHiddenValue.bind(this), 1000);
|
|
117
|
+
element.addEventListener(eventName, debounceUpdate);
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
updateHiddenValue(e) {
|
|
122
|
+
if (e.target === this.streetNumberInputField) {
|
|
123
|
+
this.streetNumber = this.streetNumberInputField.value;
|
|
124
|
+
}
|
|
125
|
+
if (this.postalCode && this.city && this.streetAddress && this.streetNumber) {
|
|
126
|
+
this.fullAddress = `${this.streetAddress} ${this.streetNumber}, ${this.city} ${this.postalCode}`;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
this.fullAddress = '';
|
|
130
|
+
}
|
|
131
|
+
this.addresscomplete.emit(this.fullAddress);
|
|
132
|
+
}
|
|
133
|
+
async fetchData(field, e) {
|
|
134
|
+
var _a;
|
|
135
|
+
if (e) {
|
|
136
|
+
e.preventDefault();
|
|
137
|
+
if (e.key === 'Tab') {
|
|
138
|
+
if (this.city) {
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
let query = '';
|
|
144
|
+
const isPostalCodeSearch = e && e.target === this.postalCodeInputField;
|
|
145
|
+
const isStreetAddressSearch = field === this.streetAddressInputField && this.city && this.city.length;
|
|
146
|
+
const isStreetNumberSearch = field === this.streetNumberInputField && this.city && this.city.length && this.streetAddress && this.streetAddress.length;
|
|
147
|
+
if (isPostalCodeSearch) {
|
|
148
|
+
query = this.postalCodeInputField.value;
|
|
149
|
+
this.streetAdressArr = null;
|
|
150
|
+
this.streetAddressInputField.value = '';
|
|
151
|
+
this.streetNumberArr = null;
|
|
152
|
+
this.streetNumberInputField.value = '';
|
|
153
|
+
this.city = null;
|
|
154
|
+
this.streetAddress = null;
|
|
155
|
+
this.streetNumber = null;
|
|
156
|
+
}
|
|
157
|
+
if (isStreetAddressSearch) {
|
|
158
|
+
query = `${this.streetAddressInputField.value}, ${this.city}`;
|
|
159
|
+
this.streetNumberArr = null;
|
|
160
|
+
this.streetNumberInputField.value = '';
|
|
161
|
+
this.streetNumber = null;
|
|
162
|
+
}
|
|
163
|
+
if (isStreetNumberSearch) {
|
|
164
|
+
this.streetAdressArr = null;
|
|
165
|
+
query = `${this.streetAddress}, ${this.city}`;
|
|
166
|
+
}
|
|
167
|
+
if (query.length > 0) {
|
|
168
|
+
const endpointBase = this.endpoint.lastIndexOf('/') === this.endpoint.length - 1 ? this.endpoint.substring(0, this.endpoint.length - 1) : this.endpoint;
|
|
169
|
+
const fetchUrl = `${endpointBase}${this.endpointPath}?countryCode=${this.countryCode}&query=${query}`;
|
|
170
|
+
const data = (await this.fetchHelper.fetchJson(fetchUrl, {
|
|
171
|
+
mode: 'cors',
|
|
172
|
+
}, this.cache));
|
|
173
|
+
if (data) {
|
|
174
|
+
if (isPostalCodeSearch) {
|
|
175
|
+
this.city = data.postalCodes ? (_a = data.postalCodes[0]) === null || _a === void 0 ? void 0 : _a.postalCity : null;
|
|
176
|
+
}
|
|
177
|
+
if (isStreetAddressSearch && data.addresses) {
|
|
178
|
+
this.postalCode = this.postalCodeInputField.value;
|
|
179
|
+
this.filterStreetNames(data);
|
|
180
|
+
}
|
|
181
|
+
if (isStreetNumberSearch && data.addresses) {
|
|
182
|
+
this.filterStreetNumbers(data);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
async handleStreetAddressDropdown(e) {
|
|
188
|
+
const target = e.target;
|
|
189
|
+
if (target === this.streetAddressInputField && target.value.length) {
|
|
190
|
+
if (!this.streetAdressArr || !this.streetAdressArr.length) {
|
|
191
|
+
await this.fetchData(this.streetAddressInputField, null);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
if (!target.value || !target.value.length) {
|
|
195
|
+
this.streetAdressArr = null;
|
|
196
|
+
}
|
|
197
|
+
if (this.streetAdressArr && this.streetAdressArr.length) {
|
|
198
|
+
this.autoComplete(e, this.streetAdressArr);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
async handleStreetNumberDropdown(e) {
|
|
202
|
+
e.preventDefault();
|
|
203
|
+
const target = e.target;
|
|
204
|
+
if (target === this.streetNumberInputField) {
|
|
205
|
+
if (!this.streetNumberArr || !this.streetNumberArr.length) {
|
|
206
|
+
await this.fetchData(this.streetNumberInputField, null);
|
|
207
|
+
}
|
|
208
|
+
if (this.streetNumberArr) {
|
|
209
|
+
this.autoComplete(e, this.streetNumberArr);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
autoComplete(e, arr) {
|
|
214
|
+
const inputField = e.target;
|
|
215
|
+
if (arr.length < 1) {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
let currentFocus = 0;
|
|
219
|
+
inputField.addEventListener('input', () => {
|
|
220
|
+
const val = inputField.value;
|
|
221
|
+
this.closeAllLists(inputField);
|
|
222
|
+
if (!val) {
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
currentFocus = -1;
|
|
226
|
+
let list = document.createElement('div');
|
|
227
|
+
list.setAttribute('id', 'autocomplete-list' + inputField.name);
|
|
228
|
+
list.setAttribute('class', 'autocomplete-items');
|
|
229
|
+
inputField.parentElement.appendChild(list);
|
|
230
|
+
for (let i = 0; i < arr.length; i++) {
|
|
231
|
+
if (arr[i].substring(0, val.length).toUpperCase() == val.toUpperCase()) {
|
|
232
|
+
let option = document.createElement('div');
|
|
233
|
+
option.innerHTML = '<strong>' + arr[i].substring(0, val.length) + '</strong>';
|
|
234
|
+
option.innerHTML += arr[i].substring(val.length);
|
|
235
|
+
option.innerHTML += "<input type='hidden' value='" + arr[i] + "'>";
|
|
236
|
+
option.addEventListener('click', clickEvent => {
|
|
237
|
+
const inputParrent = inputField.closest('pn-marketweb-input');
|
|
238
|
+
let eventTarget = clickEvent.target;
|
|
239
|
+
if (eventTarget.nodeName === 'STRONG') {
|
|
240
|
+
eventTarget = eventTarget.parentElement;
|
|
241
|
+
}
|
|
242
|
+
inputParrent.value = eventTarget.getElementsByTagName('input')[0].value;
|
|
243
|
+
if (inputField === this.streetNumberInputField) {
|
|
244
|
+
this.streetNumber = inputParrent.value;
|
|
245
|
+
}
|
|
246
|
+
if (inputField === this.streetAddressInputField) {
|
|
247
|
+
this.streetAddress = inputParrent.value;
|
|
248
|
+
}
|
|
249
|
+
this.closeAllLists(clickEvent.target);
|
|
250
|
+
inputField.focus();
|
|
251
|
+
});
|
|
252
|
+
list.appendChild(option);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
});
|
|
256
|
+
inputField.addEventListener('keydown', keydownEvent => {
|
|
257
|
+
const listElement = document.getElementById('autocomplete-list' + inputField.name);
|
|
258
|
+
let element;
|
|
259
|
+
if (listElement) {
|
|
260
|
+
element = listElement.getElementsByTagName('div');
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
element = listElement;
|
|
264
|
+
}
|
|
265
|
+
//If arrow DOWN key is pressed
|
|
266
|
+
if (keydownEvent.keyCode == 40) {
|
|
267
|
+
currentFocus++;
|
|
268
|
+
this.addActive(element, currentFocus);
|
|
269
|
+
}
|
|
270
|
+
//If the arrow UP key is pressed
|
|
271
|
+
if (keydownEvent.keyCode == 38) {
|
|
272
|
+
currentFocus--;
|
|
273
|
+
this.addActive(element, currentFocus);
|
|
274
|
+
}
|
|
275
|
+
//If the ENTER key is pressed
|
|
276
|
+
if (keydownEvent.keyCode == 13) {
|
|
277
|
+
keydownEvent.preventDefault();
|
|
278
|
+
if (currentFocus > -1) {
|
|
279
|
+
if (element) {
|
|
280
|
+
element[currentFocus].click();
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
});
|
|
285
|
+
}
|
|
286
|
+
//close all autocomplete lists in the document, except the one passed as an argument:
|
|
287
|
+
closeAllLists(elmnt) {
|
|
288
|
+
const lists = document.getElementsByClassName('autocomplete-items');
|
|
289
|
+
for (let i = 0; i < lists.length; i++) {
|
|
290
|
+
if (elmnt != lists[i]) {
|
|
291
|
+
lists[i].parentNode.removeChild(lists[i]);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
//a function to classify an item as "active":
|
|
296
|
+
addActive(elmnt, currentFocus) {
|
|
297
|
+
if (!elmnt)
|
|
298
|
+
return;
|
|
299
|
+
this.removeActive(elmnt);
|
|
300
|
+
if (currentFocus >= elmnt.length)
|
|
301
|
+
currentFocus = 0;
|
|
302
|
+
if (currentFocus < 0)
|
|
303
|
+
currentFocus = elmnt.length - 1;
|
|
304
|
+
elmnt[currentFocus].classList.add('autocomplete-active');
|
|
305
|
+
}
|
|
306
|
+
//a function to remove the "active" class from all autocomplete items:
|
|
307
|
+
removeActive(elmnt) {
|
|
308
|
+
for (let i = 0; i < elmnt.length; i++) {
|
|
309
|
+
elmnt[i].classList.remove('autocomplete-active');
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
render() {
|
|
313
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
314
|
+
return (h(Host, { class: "pn-address-autofill" }, ((_a = this._postalCodeProps) === null || _a === void 0 ? void 0 : _a.postalCodeCityLabel) ? (h("div", { class: "label-container" }, h("label", null, `${this._postalCodeProps.postalCodeCityLabel}`))) : null, h("div", { class: "input-container-row" }, h("pn-marketweb-input", { type: "text", name: (_b = this._postalCodeProps) === null || _b === void 0 ? void 0 : _b.postalCodeInputName, required: (_c = this._postalCodeProps) === null || _c === void 0 ? void 0 : _c.postalCodeInputRequired, placeholder: (_d = this._postalCodeProps) === null || _d === void 0 ? void 0 : _d.postalCodeInputPlaceholder, ref: el => (this.pnInputPostalCode = el), autocomplete: "off", helpertext: (_e = this._postalCodeProps) === null || _e === void 0 ? void 0 : _e.postalCodeInputHelpertext }), h("pn-marketweb-input", { type: "text", name: (_f = this._cityProps) === null || _f === void 0 ? void 0 : _f.cityInputName, disabled: true, value: this.city, placeholder: (_g = this._cityProps) === null || _g === void 0 ? void 0 : _g.cityInputPlaceholder, autocomplete: "off", helpertext: (_h = this._cityProps) === null || _h === void 0 ? void 0 : _h.cityInputHelpertext })), ((_j = this._streetAddressProps) === null || _j === void 0 ? void 0 : _j.streetAddressNumberLabel) ? (h("div", { class: "label-container" }, h("label", null, `${this._streetAddressProps.streetAddressNumberLabel}`))) : null, h("div", { class: "input-container-row" }, h("pn-marketweb-input", { type: "text", name: (_k = this._streetAddressProps) === null || _k === void 0 ? void 0 : _k.streetAddressInputName, required: (_l = this._streetAddressProps) === null || _l === void 0 ? void 0 : _l.streetAddressInputRequired, value: this.streetAddress, placeholder: (_m = this._streetAddressProps) === null || _m === void 0 ? void 0 : _m.streetAddressInputPlaceholder, ref: el => (this.pnInputStreetAddress = el), autocomplete: "off", helpertext: (_o = this._streetAddressProps) === null || _o === void 0 ? void 0 : _o.streetAddressInputHelpertext }), h("pn-marketweb-input", { type: "text", name: (_p = this._streetNumberProps) === null || _p === void 0 ? void 0 : _p.streetNumberInputName, required: (_q = this._streetNumberProps) === null || _q === void 0 ? void 0 : _q.streetNumberInputRequired, value: this.streetNumber, placeholder: (_r = this._streetNumberProps) === null || _r === void 0 ? void 0 : _r.streetNumberInputPlaceholder, ref: el => (this.pnInputStreetNumber = el), autocomplete: "off", helpertext: (_s = this._streetNumberProps) === null || _s === void 0 ? void 0 : _s.streetNumberInputHelpertext }))));
|
|
315
|
+
}
|
|
316
|
+
get hostElement() { return this; }
|
|
317
|
+
static get style() { return pnAddressAutofillCss; }
|
|
318
|
+
}, [0, "pn-address-autofill", {
|
|
319
|
+
"market": [1537],
|
|
320
|
+
"environment": [1537],
|
|
321
|
+
"endpoint": [1],
|
|
322
|
+
"cache": [4],
|
|
323
|
+
"countryCode": [1, "country-code"],
|
|
324
|
+
"postalCodeProps": [1, "postal-code-props"],
|
|
325
|
+
"cityProps": [1, "city-props"],
|
|
326
|
+
"streetAddressProps": [1, "street-address-props"],
|
|
327
|
+
"streetNumberProps": [1, "street-number-props"],
|
|
328
|
+
"streetAdressArr": [32],
|
|
329
|
+
"streetNumberArr": [32],
|
|
330
|
+
"city": [32],
|
|
331
|
+
"postalCode": [32],
|
|
332
|
+
"streetAddress": [32],
|
|
333
|
+
"streetNumber": [32],
|
|
334
|
+
"fullAddress": [32]
|
|
335
|
+
}]);
|
|
336
|
+
function defineCustomElement$1() {
|
|
337
|
+
if (typeof customElements === "undefined") {
|
|
338
|
+
return;
|
|
339
|
+
}
|
|
340
|
+
const components = ["pn-address-autofill", "pn-marketweb-input"];
|
|
341
|
+
components.forEach(tagName => { switch (tagName) {
|
|
342
|
+
case "pn-address-autofill":
|
|
343
|
+
if (!customElements.get(tagName)) {
|
|
344
|
+
customElements.define(tagName, PnAddressAutofill$1);
|
|
345
|
+
}
|
|
346
|
+
break;
|
|
347
|
+
case "pn-marketweb-input":
|
|
348
|
+
if (!customElements.get(tagName)) {
|
|
349
|
+
defineCustomElement$2();
|
|
350
|
+
}
|
|
351
|
+
break;
|
|
352
|
+
} });
|
|
353
|
+
}
|
|
354
|
+
defineCustomElement$1();
|
|
355
|
+
|
|
356
|
+
const PnAddressAutofill = PnAddressAutofill$1;
|
|
357
|
+
const defineCustomElement = defineCustomElement$1;
|
|
358
|
+
|
|
359
|
+
export { PnAddressAutofill, defineCustomElement };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
2
|
-
import { c as classnames } from './
|
|
2
|
+
import { c as classnames } from './index3.js';
|
|
3
3
|
|
|
4
4
|
const pnAnimatedTileCss = "pn-animated-tile .pn-animated-tile__container{position:relative;border-radius:2.4rem;height:56rem;cursor:default}pn-animated-tile .pn-animated-tile__content{position:relative;display:-ms-flexbox;display:flex;height:100%;width:100%;background-color:transparent}pn-animated-tile [slot=side-a],pn-animated-tile [slot=side-b]{position:absolute;-ms-flex-item-align:stretch;align-self:stretch;top:0;left:0;width:100%;height:100%}pn-animated-tile [slot=side-a]{padding:0;opacity:1}pn-animated-tile [slot=side-b]{z-index:-1;padding:2.4rem 2.4rem 7rem 2.4rem;opacity:0;-webkit-transform:translateY(50px);transform:translateY(50px)}pn-animated-tile .pn-animated-tile__toggle{z-index:2;position:absolute;bottom:2.4rem;right:2.4rem;padding:0.8rem;border-radius:50%;border:none;cursor:pointer;background-color:#FFFFFF;-webkit-transition:background-color 0.45s ease-in-out;transition:background-color 0.45s ease-in-out}pn-animated-tile .pn-animated-tile__toggle pn-icon{background-color:#FFFFFF;-webkit-transition:background-color 0.45s ease-in-out, -webkit-transform 0.45s ease-in-out 0.5s;transition:background-color 0.45s ease-in-out, -webkit-transform 0.45s ease-in-out 0.5s;transition:background-color 0.45s ease-in-out, transform 0.45s ease-in-out 0.5s;transition:background-color 0.45s ease-in-out, transform 0.45s ease-in-out 0.5s, -webkit-transform 0.45s ease-in-out 0.5s}pn-animated-tile .pn-animated-tile__toggle:hover{background-color:#e9e6e5}pn-animated-tile .pn-animated-tile__toggle:hover pn-icon{background-color:#e9e6e5}pn-animated-tile .button-tooltip{display:none}.cat-animate [slot=side-a],.cat-animate [slot=side-b]{-webkit-transition:opacity 0.45s ease-in-out, -webkit-transform 0.45s ease-in-out 0.5s;transition:opacity 0.45s ease-in-out, -webkit-transform 0.45s ease-in-out 0.5s;transition:opacity 0.45s ease-in-out, transform 0.45s ease-in-out 0.5s;transition:opacity 0.45s ease-in-out, transform 0.45s ease-in-out 0.5s, -webkit-transform 0.45s ease-in-out 0.5s}.cat-animate.fade [slot=side-a]{opacity:0;z-index:-1}.cat-animate.fade [slot=side-b]{z-index:1;opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:0.5s;transition-delay:0.5s}.cat-animate.fade--reversed [slot=side-a]{opacity:1;-webkit-transition-delay:0.5s;transition-delay:0.5s}.cat-animate.fade--reversed [slot=side-b]{opacity:0;-webkit-transform:translateY(50px);transform:translateY(50px)}.cat-animate.toggle.animate pn-icon{-webkit-transform:rotate(45deg);transform:rotate(45deg)}[data-cat-theme=white] .pn-animated-tile__container{background-color:#FFFFFF}[data-cat-theme=white] .pn-animated-tile__toggle{background-color:#00A0D6}[data-cat-theme=white] .pn-animated-tile__toggle pn-icon{background-color:#00A0D6}[data-cat-theme=white] .pn-animated-tile__toggle pn-icon svg>path{fill:#FFFFFF}[data-cat-theme=white] .pn-animated-tile__toggle:hover{background-color:#005D92}[data-cat-theme=white] .pn-animated-tile__toggle:hover pn-icon{background-color:#005D92}[data-cat-theme=white] .pn-animated-tile__toggle:focus,[data-cat-theme=white] .pn-animated-tile__toggle:focus-visible{outline-color:#005D92}[data-cat-theme=coral400] .pn-animated-tile__container{background-color:#F06365}[data-cat-theme=coral400] .pn-animated-tile__toggle{background-color:#FFFFFF}[data-cat-theme=coral400] .pn-animated-tile__toggle pn-icon{background-color:#FFFFFF}[data-cat-theme=coral400] .pn-animated-tile__toggle pn-icon svg>path{fill:#F06365}[data-cat-theme=coral400] .pn-animated-tile__toggle:focus,[data-cat-theme=coral400] .pn-animated-tile__toggle:focus-visible{outline-color:#F06365}[data-cat-theme=private] .pn-animated-tile__container{background-color:#00A0D6}[data-cat-theme=private] .pn-animated-tile__toggle{background-color:#FFFFFF}[data-cat-theme=private] .pn-animated-tile__toggle pn-icon{background-color:#FFFFFF}[data-cat-theme=private] .pn-animated-tile__toggle pn-icon svg>path{fill:#00A0D6}[data-cat-theme=private] .pn-animated-tile__toggle:focus,[data-cat-theme=private] .pn-animated-tile__toggle:focus-visible{outline-color:#00A0D6}[data-cat-theme=business] .pn-animated-tile__container{background-color:#0D234B}[data-cat-theme=business] .pn-animated-tile__toggle{background-color:#FFFFFF}[data-cat-theme=business] .pn-animated-tile__toggle pn-icon{background-color:#FFFFFF}[data-cat-theme=business] .pn-animated-tile__toggle pn-icon svg>path{fill:#0D234B}[data-cat-theme=business] .pn-animated-tile__toggle:focus,[data-cat-theme=business] .pn-animated-tile__toggle:focus-visible{outline-color:#0D234B}[data-cat-theme=hybrid] .pn-animated-tile__container{background-color:#e9e6e5}[data-cat-theme=hybrid] .pn-animated-tile__toggle{background-color:#FFFFFF}[data-cat-theme=hybrid] .pn-animated-tile__toggle pn-icon{background-color:#FFFFFF}[data-cat-theme=hybrid] .pn-animated-tile__toggle pn-icon svg>path{fill:#005D92}[data-cat-theme=hybrid] .pn-animated-tile__toggle:focus,[data-cat-theme=hybrid] .pn-animated-tile__toggle:focus-visible{outline-color:#005D92}[data-cat-firstpage-only=true] [slot=side-b],[data-cat-firstpage-only=true] .pn-animated-tile__toggle{display:none}";
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
|
-
import { d as debounce_1 } from './
|
|
2
|
+
import { d as debounce_1 } from './index2.js';
|
|
3
3
|
import { d as defineCustomElement$2 } from './pn-marketweb-input2.js';
|
|
4
4
|
|
|
5
5
|
const pnDropdownChoiceAddsRowCss = "pn-dropdown-choice-adds-row{gap:1rem}pn-dropdown-choice-adds-row .dropdown-choice-form-row{display:-ms-flexbox;display:flex;gap:1rem}pn-dropdown-choice-adds-row .pn-row-select-dropdown{width:50%;margin-bottom:1rem}@media only screen and (max-width: 640px){pn-dropdown-choice-adds-row .pn-row-select-dropdown{width:100%}}pn-dropdown-choice-adds-row .pn-dropdown-choice-table{width:100%;border-spacing:0rem}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead th{text-align:left;padding:1rem 0.5rem}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead th label{color:#5E554A;font-size:1.4rem;font-weight:400}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--name{width:40%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--dropdown{width:40%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--input{width:10%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--delete{width:10%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tbody td{padding:0.5rem}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tbody tr:nth-child(even){background-color:#effbff}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tbody .tr-delete{text-align:center}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tfoot td small{color:#A70707;vertical-align:middle}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tfoot td pn-icon{margin-right:0.25em;vertical-align:middle}";
|
|
@@ -7,23 +7,23 @@ const PnMarketwebInput = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
|
|
|
7
7
|
super();
|
|
8
8
|
this.__registerHost();
|
|
9
9
|
this.disabled = false;
|
|
10
|
-
this.error =
|
|
10
|
+
this.error = "";
|
|
11
11
|
this.invalid = false;
|
|
12
|
-
this.helpertext =
|
|
13
|
-
this.label =
|
|
14
|
-
this.placeholder =
|
|
12
|
+
this.helpertext = "";
|
|
13
|
+
this.label = "";
|
|
14
|
+
this.placeholder = "";
|
|
15
15
|
this.inputid = `${Math.random()}`;
|
|
16
|
-
this.name =
|
|
17
|
-
this.required =
|
|
18
|
-
this.type =
|
|
19
|
-
this.autocomplete =
|
|
16
|
+
this.name = "";
|
|
17
|
+
this.required = false;
|
|
18
|
+
this.type = "text";
|
|
19
|
+
this.autocomplete = "";
|
|
20
20
|
this.valid = null;
|
|
21
|
-
this.value =
|
|
22
|
-
this.maxlength =
|
|
23
|
-
this.min =
|
|
24
|
-
this.max =
|
|
25
|
-
this.step =
|
|
26
|
-
this.pattern =
|
|
21
|
+
this.value = "";
|
|
22
|
+
this.maxlength = "";
|
|
23
|
+
this.min = "";
|
|
24
|
+
this.max = "";
|
|
25
|
+
this.step = "";
|
|
26
|
+
this.pattern = "";
|
|
27
27
|
this.showText = false;
|
|
28
28
|
}
|
|
29
29
|
getTextMessage() {
|
|
@@ -37,8 +37,21 @@ const PnMarketwebInput = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
|
|
|
37
37
|
this.showText = !this.showText;
|
|
38
38
|
}
|
|
39
39
|
getInputType() {
|
|
40
|
-
let types = [
|
|
41
|
-
|
|
40
|
+
let types = [
|
|
41
|
+
"text",
|
|
42
|
+
"password",
|
|
43
|
+
"url",
|
|
44
|
+
"tel",
|
|
45
|
+
"search",
|
|
46
|
+
"number",
|
|
47
|
+
"email",
|
|
48
|
+
"date",
|
|
49
|
+
"datetime-local",
|
|
50
|
+
"month",
|
|
51
|
+
"week",
|
|
52
|
+
"time",
|
|
53
|
+
];
|
|
54
|
+
return types.includes(this.type) && !this.showText ? this.type : "text";
|
|
42
55
|
}
|
|
43
56
|
setVal(e) {
|
|
44
57
|
var _a;
|
|
@@ -46,21 +59,19 @@ const PnMarketwebInput = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
|
|
|
46
59
|
this.value = target.value;
|
|
47
60
|
}
|
|
48
61
|
getClassNames() {
|
|
49
|
-
let classNames =
|
|
62
|
+
let classNames = "pn-input ";
|
|
50
63
|
if (this.error.length > 0 || this.invalid)
|
|
51
|
-
classNames +=
|
|
64
|
+
classNames += "error ";
|
|
52
65
|
if (this.valid)
|
|
53
|
-
classNames +=
|
|
54
|
-
if (this.type ===
|
|
55
|
-
classNames +=
|
|
66
|
+
classNames += "valid ";
|
|
67
|
+
if (this.type === "password")
|
|
68
|
+
classNames += "password ";
|
|
56
69
|
if (this.error || this.invalid || this.valid)
|
|
57
|
-
classNames +=
|
|
70
|
+
classNames += "icon ";
|
|
58
71
|
return classNames;
|
|
59
72
|
}
|
|
60
73
|
render() {
|
|
61
|
-
return (h(Host, { class: this.getClassNames() }, (this.label || this.maxlength) &&
|
|
62
|
-
h("div", { class: "label-container" }, this.label && h("label", { htmlFor: this.inputid }, this.label), parseInt(this.maxlength) > 0 && h("label", { class: "char-count", htmlFor: this.inputid }, `${this.value.length}/${this.maxlength}`)), h("div", { class: "input-container" }, h("input", { type: this.getInputType(), value: this.value, id: this.inputid, name: this.name, placeholder: this.placeholder, disabled: this.disabled, autocomplete: this.autocomplete, onInput: (e) => this.setVal(e), maxlength: this.maxlength ? this.maxlength : null, min: (this.min ? this.min : null), max: (this.max ? this.max : null), step: (this.step ? this.step : null), pattern: (this.pattern ? this.pattern : null) }), h("svg", { class: "pn-input-checkmark", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none" }, h("polyline", { class: "checkmark-path", points: "4,12 9,17 20,6", "stroke-width": "3" })), this.type === 'password' && !this.disabled && h("button", { onClick: () => this.toggleTextVisibility() }, "Show")), this.getTextMessage() &&
|
|
63
|
-
h("small", null, this.error && h("pn-icon", { symbol: "alert-exclamation-circle", small: true, color: "warning" }), this.getTextMessage())));
|
|
74
|
+
return (h(Host, { class: this.getClassNames() }, (this.label || this.maxlength) && (h("div", { class: "label-container" }, this.label && h("label", { htmlFor: this.inputid }, this.label), parseInt(this.maxlength) > 0 && (h("label", { class: "char-count", htmlFor: this.inputid }, `${this.value.length}/${this.maxlength}`)))), h("div", { class: "input-container" }, h("input", { type: this.getInputType(), value: this.value, id: this.inputid, name: this.name, placeholder: this.placeholder, disabled: this.disabled, required: this.required, autocomplete: this.autocomplete, onInput: (e) => this.setVal(e), maxlength: this.maxlength ? this.maxlength : null, min: this.min ? this.min : null, max: this.max ? this.max : null, step: this.step ? this.step : null, pattern: this.pattern ? this.pattern : null }), h("svg", { class: "pn-input-checkmark", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none" }, h("polyline", { class: "checkmark-path", points: "4,12 9,17 20,6", "stroke-width": "3" })), this.type === "password" && !this.disabled && (h("button", { onClick: () => this.toggleTextVisibility() }, "Show"))), this.getTextMessage() && (h("small", null, this.error && h("pn-icon", { symbol: "alert-exclamation-circle", small: true, color: "warning" }), this.getTextMessage()))));
|
|
64
75
|
}
|
|
65
76
|
static get style() { return pnMarketwebInputCss; }
|
|
66
77
|
}, [0, "pn-marketweb-input", {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
2
|
-
import { F as FetchHelper, M as MarketWebContextService } from './
|
|
2
|
+
import { F as FetchHelper, M as MarketWebContextService } from './FetchHelper.js';
|
|
3
3
|
import { d as defineCustomElement$4 } from './pn-site-footer2.js';
|
|
4
4
|
import { d as defineCustomElement$3 } from './pn-site-footer-col2.js';
|
|
5
5
|
import { d as defineCustomElement$2 } from './pn-swan2.js';
|
|
@@ -139,6 +139,7 @@ const PnMarketwebSiteheader = /*@__PURE__*/ proxyCustomElement(class extends HTM
|
|
|
139
139
|
this.cache = false;
|
|
140
140
|
this.theme = 'default';
|
|
141
141
|
this.backgroundcolor = 'darkestblue';
|
|
142
|
+
this.showSwan = false;
|
|
142
143
|
this.siteDefinition = undefined;
|
|
143
144
|
this.footerContent = undefined;
|
|
144
145
|
this.i18n = undefined;
|
|
@@ -299,11 +300,11 @@ const PnMarketwebSiteheader = /*@__PURE__*/ proxyCustomElement(class extends HTM
|
|
|
299
300
|
}
|
|
300
301
|
renderSwanComponent() {
|
|
301
302
|
var _a, _b, _c, _d;
|
|
302
|
-
return (((_b = (_a = this.footerContent) === null || _a === void 0 ? void 0 : _a.swanInfo) === null || _b === void 0 ? void 0 : _b.
|
|
303
|
+
return (this.showSwan && (h("div", { class: "swan-wrapper" }, h("div", { class: "separator" }), h("pn-swan", { language: this.language, "license-number": (_b = (_a = this.footerContent) === null || _a === void 0 ? void 0 : _a.swanInfo) === null || _b === void 0 ? void 0 : _b.swanLicense, "link-to": (_d = (_c = this.footerContent) === null || _c === void 0 ? void 0 : _c.swanInfo) === null || _d === void 0 ? void 0 : _d.swanLink }))));
|
|
303
304
|
}
|
|
304
305
|
renderDotComFooter() {
|
|
305
|
-
var _a, _b, _c, _d
|
|
306
|
-
return (h(Host, { language: this.language, market: this.market, environment: this.environment }, h("pn-site-footer", { theme: this.theme, url: (_b = (_a = this.siteDefinition) === null || _a === void 0 ? void 0 : _a.url) !== null && _b !== void 0 ? _b : '' }, this.renderCols(), h("slot", { name: "middle-extra" }), h("slot", { name: "middle-extra-mobile" }), h("div", { slot: "bottom" }, h("div", { class: `social-media ${
|
|
306
|
+
var _a, _b, _c, _d;
|
|
307
|
+
return (h(Host, { language: this.language, market: this.market, environment: this.environment }, h("pn-site-footer", { theme: this.theme, url: (_b = (_a = this.siteDefinition) === null || _a === void 0 ? void 0 : _a.url) !== null && _b !== void 0 ? _b : '' }, this.renderCols(), h("slot", { name: "middle-extra" }), h("slot", { name: "middle-extra-mobile" }), h("div", { slot: "bottom" }, h("div", { class: `social-media ${this.showSwan ? 'social-media--swan' : ''}` }, h("ul", null, this.renderSocialMeidaIconListElements()), this.renderSwanComponent()), h("div", { class: "copyright" }, this.gotData && ((_c = this.footerContent) === null || _c === void 0 ? void 0 : _c.copyrightText) ? h("span", null, this.footerContent.copyrightText) : null, this.gotData && ((_d = this.footerContent) === null || _d === void 0 ? void 0 : _d.bottomLinks) ? h("ul", null, this.renderBottomLinks()) : null)))));
|
|
307
308
|
}
|
|
308
309
|
render() {
|
|
309
310
|
switch (this.theme) {
|
|
@@ -328,6 +329,7 @@ const PnMarketwebSiteheader = /*@__PURE__*/ proxyCustomElement(class extends HTM
|
|
|
328
329
|
"cache": [4],
|
|
329
330
|
"theme": [513],
|
|
330
331
|
"backgroundcolor": [513],
|
|
332
|
+
"showSwan": [4, "show-swan"],
|
|
331
333
|
"siteDefinition": [32],
|
|
332
334
|
"footerContent": [32],
|
|
333
335
|
"i18n": [32],
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
|
-
import { F as FetchHelper, M as MarketWebContextService } from './
|
|
2
|
+
import { F as FetchHelper, M as MarketWebContextService } from './FetchHelper.js';
|
|
3
3
|
import { s as state, d as defineCustomElement$9 } from './pn-marketweb-siteheader-login-linklist2.js';
|
|
4
4
|
import { d as defineCustomElement$h } from './pn-language-selector2.js';
|
|
5
5
|
import { d as defineCustomElement$g } from './pn-language-selector-option2.js';
|