@iamproperty/components 3.7.9-beta → 3.7.9
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/assets/css/components/dialog.css +1 -1
- package/assets/css/components/dialog.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
- package/assets/js/components/card/card.component.js +2 -1
- package/assets/js/components/card/card.component.min.js +2 -2
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +1 -1
- package/assets/js/components/table/table.component.min.js +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/dynamic.min.js +5 -5
- package/assets/js/dynamic.min.js.map +1 -1
- package/assets/js/modules/dialogs.js +94 -19
- package/assets/js/scripts.bundle.js +22 -22
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/js/tests/filterlist.spec.js +1 -1
- package/assets/sass/components/dialog.scss +67 -4
- package/assets/ts/components/card/card.component.ts +2 -2
- package/assets/ts/modules/dialogs.ts +138 -23
- package/assets/ts/tests/dialogs.spec.js +50 -0
- package/assets/ts/tests/filterlist.spec.ts +1 -1
- package/dist/components.es.js +7 -7
- package/dist/components.umd.js +8 -8
- package/package.json +1 -1
|
@@ -12,7 +12,7 @@ const listHTML = `
|
|
|
12
12
|
<li class="lead text-primary pb-1">Benjamin Lee</li>
|
|
13
13
|
`;
|
|
14
14
|
describe('addDataAttributes', () => {
|
|
15
|
-
let list = document.createElement('
|
|
15
|
+
let list = document.createElement('div');
|
|
16
16
|
list.innerHTML = listHTML;
|
|
17
17
|
filterTheList(list, "Lucas");
|
|
18
18
|
test('should add a class of d-none to each item except the one containing Lucas Myers', () => {
|
|
@@ -279,7 +279,7 @@ dialog::backdrop {
|
|
|
279
279
|
height: 2px;
|
|
280
280
|
background: currentColor;
|
|
281
281
|
z-index: 1;
|
|
282
|
-
|
|
282
|
+
background: linear-gradient(90deg, var(--colour-success) 0%, var(--colour-success) var(--progress, 0%), rgba(255,255,255,0.5) var(--progress, 0%), rgba(255,255,255,0.5) 100%);
|
|
283
283
|
}
|
|
284
284
|
|
|
285
285
|
button {
|
|
@@ -287,7 +287,7 @@ dialog::backdrop {
|
|
|
287
287
|
position: relative;
|
|
288
288
|
background: transparent;
|
|
289
289
|
border: none;
|
|
290
|
-
color:
|
|
290
|
+
color: rgba($color: #ffffff, $alpha: 0.5);
|
|
291
291
|
height: rem(24);
|
|
292
292
|
line-height: rem(24);
|
|
293
293
|
width: rem(24);
|
|
@@ -314,8 +314,35 @@ dialog::backdrop {
|
|
|
314
314
|
border-radius: 50%;
|
|
315
315
|
}
|
|
316
316
|
|
|
317
|
-
&:not(.active):
|
|
318
|
-
|
|
317
|
+
&:not(.active):not(.valid) {
|
|
318
|
+
|
|
319
|
+
pointer-events: none;
|
|
320
|
+
|
|
321
|
+
&:before {
|
|
322
|
+
opacity: 0.5;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
&.active {
|
|
327
|
+
color: var(--colour-white);
|
|
328
|
+
}
|
|
329
|
+
&.valid {
|
|
330
|
+
color: var(--colour-success);
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
@media screen and (prefers-color-scheme: dark) {
|
|
335
|
+
|
|
336
|
+
button {
|
|
337
|
+
|
|
338
|
+
color: rgba($color: #000000, $alpha: 0.5);
|
|
339
|
+
|
|
340
|
+
&.active {
|
|
341
|
+
color: black;
|
|
342
|
+
}
|
|
343
|
+
&.valid {
|
|
344
|
+
color: var(--colour-complete);
|
|
345
|
+
}
|
|
319
346
|
}
|
|
320
347
|
}
|
|
321
348
|
}
|
|
@@ -569,3 +596,39 @@ dialog::backdrop {
|
|
|
569
596
|
display: none;
|
|
570
597
|
}
|
|
571
598
|
// #endregion
|
|
599
|
+
|
|
600
|
+
// #region mobile fullwidth view
|
|
601
|
+
@media screen and (max-width: 36em) {
|
|
602
|
+
|
|
603
|
+
dialog[open].dialog--sm-fullpage,
|
|
604
|
+
.js-enabled *:not(.dialog__wrapper) > dialog[open].dialog--multi {
|
|
605
|
+
|
|
606
|
+
min-width: 100%;
|
|
607
|
+
min-height: 100%;
|
|
608
|
+
border-radius: 0;
|
|
609
|
+
overflow-y: auto;
|
|
610
|
+
|
|
611
|
+
.btn--wrapper {
|
|
612
|
+
padding-top: rem(64);
|
|
613
|
+
}
|
|
614
|
+
}
|
|
615
|
+
|
|
616
|
+
dialog[open].dialog--sm-fullpage {
|
|
617
|
+
|
|
618
|
+
.mh-lg {
|
|
619
|
+
max-height: none!important;
|
|
620
|
+
overflow: visible;
|
|
621
|
+
}
|
|
622
|
+
|
|
623
|
+
&:before,
|
|
624
|
+
*:first-child {
|
|
625
|
+
margin-top: auto!important;
|
|
626
|
+
}
|
|
627
|
+
|
|
628
|
+
*:last-child {
|
|
629
|
+
|
|
630
|
+
margin-bottom: auto!important;
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
}
|
|
634
|
+
// #endregion
|
|
@@ -76,8 +76,8 @@ class iamCard extends HTMLElement {
|
|
|
76
76
|
const inputName = input.getAttribute('name');
|
|
77
77
|
const inputID = input.getAttribute('id');
|
|
78
78
|
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
// Mimic radio button functionality
|
|
80
|
+
const inputs = Array.from(document.querySelectorAll(`[name="${inputName}"][type="radio"]:not([id="${inputID}"])`));
|
|
81
81
|
inputs.forEach((input, index) => {
|
|
82
82
|
|
|
83
83
|
const otherCard = document.querySelector(`[for="${input.getAttribute('id')}"] iam-card`);
|
|
@@ -3,6 +3,20 @@ import { createEmbed } from "./youtubevideo";
|
|
|
3
3
|
|
|
4
4
|
const extendDialogs = (body) => {
|
|
5
5
|
|
|
6
|
+
Array.from(body.querySelectorAll('dialog[open]')).forEach((dialog, index) => {
|
|
7
|
+
|
|
8
|
+
let parent = dialog.closest('.dialog__wrapper');
|
|
9
|
+
|
|
10
|
+
if(!parent){
|
|
11
|
+
|
|
12
|
+
dialog.removeAttribute('open');
|
|
13
|
+
dialog.showModal();
|
|
14
|
+
dialog.focus();
|
|
15
|
+
|
|
16
|
+
createDialog(dialog);
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
|
|
6
20
|
// Dialogs/modals
|
|
7
21
|
body.addEventListener('click', (event) => {
|
|
8
22
|
|
|
@@ -15,20 +29,6 @@ const extendDialogs = (body) => {
|
|
|
15
29
|
|
|
16
30
|
createDialog(dialog);
|
|
17
31
|
|
|
18
|
-
|
|
19
|
-
// Prevent the user from escaping the model when transactional
|
|
20
|
-
if(dialog.querySelector(':scope > .mh-lg > form:last-child > button:last-child, :scope > .mh-lg > button:last-child') && !dialog.classList.contains('dialog--multi')) {
|
|
21
|
-
dialog.addEventListener("cancel", (e) => {
|
|
22
|
-
e.preventDefault();
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
// Create the video embed
|
|
27
|
-
let videoButton = dialog.querySelector('.youtube-embed a');
|
|
28
|
-
if (videoButton){
|
|
29
|
-
createEmbed(videoButton)
|
|
30
|
-
}
|
|
31
|
-
|
|
32
32
|
// Open the modal!
|
|
33
33
|
dialog.showModal();
|
|
34
34
|
dialog.focus();
|
|
@@ -181,6 +181,19 @@ const extendDialogs = (body) => {
|
|
|
181
181
|
|
|
182
182
|
export const createDialog = (dialog) => {
|
|
183
183
|
|
|
184
|
+
// Prevent the user from escaping the model when transactional
|
|
185
|
+
if(dialog.querySelector(':scope > .mh-lg > form:last-child > button:last-child, :scope > .mh-lg > button:last-child') && !dialog.classList.contains('dialog--multi')) {
|
|
186
|
+
dialog.addEventListener("cancel", (e) => {
|
|
187
|
+
e.preventDefault();
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
// Create the video embed
|
|
192
|
+
let videoButton = dialog.querySelector('.youtube-embed a');
|
|
193
|
+
if (videoButton){
|
|
194
|
+
createEmbed(videoButton)
|
|
195
|
+
}
|
|
196
|
+
|
|
184
197
|
// Multi dialog
|
|
185
198
|
if(dialog.classList.contains('dialog--multi') && !dialog.querySelector(':scope > .steps')) {
|
|
186
199
|
createMultiFormDialog(dialog);
|
|
@@ -209,33 +222,97 @@ export const createDialog = (dialog) => {
|
|
|
209
222
|
|
|
210
223
|
}
|
|
211
224
|
|
|
212
|
-
const createMultiFormDialog = (dialog) => {
|
|
225
|
+
export const createMultiFormDialog = (dialog) => {
|
|
226
|
+
|
|
213
227
|
let buttons = "";
|
|
214
228
|
let fieldsets = Array.from(dialog.querySelectorAll('fieldset[data-title]'));
|
|
229
|
+
|
|
215
230
|
fieldsets.forEach((fieldset,index) => {
|
|
216
|
-
buttons += `<button data-title="${fieldset.getAttribute('data-title')}" type="button" class="${index == 0 ? "active":""}">${fieldset.getAttribute('data-title')}</button>`;
|
|
231
|
+
buttons += `<button data-title="${fieldset.getAttribute('data-title')}" type="button" class="${index == 0 ? "active":""}" tabindex="-1">${fieldset.getAttribute('data-title')}</button>`;
|
|
217
232
|
|
|
218
233
|
const btnWrapper = document.createElement("div");
|
|
219
234
|
btnWrapper.classList.add('btn--wrapper');
|
|
220
235
|
fieldset.appendChild(btnWrapper);
|
|
221
236
|
|
|
222
|
-
|
|
223
237
|
if(index != 0)
|
|
224
|
-
btnWrapper.innerHTML += `<button data-title="${fieldsets[index-1].getAttribute('data-title')}" class="btn btn-secondary mb-0" type="button">Previous</button>`;
|
|
238
|
+
btnWrapper.innerHTML += `<button data-title="${fieldsets[index-1].getAttribute('data-title')}" class="btn btn-secondary mb-0" data-previous type="button">Previous</button>`;
|
|
225
239
|
|
|
226
240
|
if(index != fieldsets.length - 1)
|
|
227
|
-
btnWrapper.innerHTML += `<button data-title="${fieldsets[index+1].getAttribute('data-title')}" class="btn btn-primary mb-0" type="button">Next</button>`;
|
|
241
|
+
btnWrapper.innerHTML += `<button data-title="${fieldsets[index+1].getAttribute('data-title')}" class="btn btn-primary mb-0" data-next type="button">Next</button>`;
|
|
228
242
|
|
|
229
243
|
if(index == fieldsets.length - 1)
|
|
230
|
-
btnWrapper.innerHTML += `<button class="btn btn-primary mb-0">Submit</button>`;
|
|
244
|
+
btnWrapper.innerHTML += `<button data-title="${fieldsets[index].getAttribute('data-title')}" class="btn btn-primary mb-0" data-next type="submit">Submit</button>`;
|
|
231
245
|
});
|
|
232
246
|
|
|
233
247
|
dialog.innerHTML = `<div class="steps bg-primary">${buttons}</div>${dialog.innerHTML}`;
|
|
234
248
|
|
|
235
249
|
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
250
|
+
// Open the fieldset with an error inside
|
|
251
|
+
let validatedFieldsets = Array.from(dialog.querySelectorAll('fieldset.was-validated'));
|
|
252
|
+
for (let i = 0; i < validatedFieldsets.length; i++) {
|
|
253
|
+
|
|
254
|
+
let fieldset = validatedFieldsets[i];
|
|
255
|
+
let fieldsetID = fieldset.getAttribute('data-title');
|
|
256
|
+
|
|
257
|
+
if(fieldset.querySelector('.is-invalid')){
|
|
258
|
+
|
|
259
|
+
Array.from(dialog.querySelectorAll(`[data-title="${fieldsetID}"]`)).forEach((element, index) => {
|
|
260
|
+
|
|
261
|
+
element.classList.add('active');
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
break;
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
|
|
268
|
+
Array.from(dialog.querySelectorAll(`[data-title="${fieldsetID}"]`)).forEach((element, index) => {
|
|
269
|
+
|
|
270
|
+
element.classList.add('valid');
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
// Prevent the bubble messages
|
|
276
|
+
dialog.addEventListener('invalid', (function () {
|
|
277
|
+
return function (e) {
|
|
278
|
+
e.preventDefault();
|
|
279
|
+
};
|
|
280
|
+
})(), true);
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
function validateFieldset(button){
|
|
284
|
+
|
|
285
|
+
const currentFieldset = dialog.querySelector(`fieldset.active`) ? dialog.querySelector(`fieldset.active`) : dialog.querySelector(`fieldset[data-title]`);
|
|
286
|
+
const currentFieldsetID = currentFieldset.getAttribute('data-title');
|
|
287
|
+
let isFieldsetValid = true;
|
|
288
|
+
|
|
289
|
+
currentFieldset.classList.add('was-validated');
|
|
290
|
+
|
|
291
|
+
Array.from(currentFieldset.querySelectorAll('input')).forEach((input, index) => {
|
|
292
|
+
|
|
293
|
+
if (!input.checkValidity())
|
|
294
|
+
isFieldsetValid = false;
|
|
295
|
+
});
|
|
296
|
+
|
|
297
|
+
// If valid mode to next field set
|
|
298
|
+
if(!isFieldsetValid){
|
|
299
|
+
|
|
300
|
+
Array.from(dialog.querySelectorAll(`[data-title="${currentFieldsetID}"]`)).forEach((element, index) => {
|
|
301
|
+
|
|
302
|
+
element.classList.remove('valid');
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
else {
|
|
306
|
+
|
|
307
|
+
Array.from(dialog.querySelectorAll(`[data-title="${currentFieldsetID}"]`)).forEach((element, index) => {
|
|
308
|
+
|
|
309
|
+
element.classList.add('valid');
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
// Allow the previous button to navigate
|
|
314
|
+
if(isFieldsetValid || !button.hasAttribute('data-next')){
|
|
315
|
+
|
|
239
316
|
const fieldset = dialog.querySelector(`fieldset[data-title="${button.getAttribute('data-title')}"]`);
|
|
240
317
|
const step = dialog.querySelector(`.steps button[data-title="${button.getAttribute('data-title')}"]`);
|
|
241
318
|
|
|
@@ -248,6 +325,44 @@ const createMultiFormDialog = (dialog) => {
|
|
|
248
325
|
|
|
249
326
|
step.classList.add('active');
|
|
250
327
|
fieldset.classList.add('active');
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
let fieldsetCount = Array.from(dialog.querySelectorAll(`fieldset`)).length;
|
|
332
|
+
let validFieldsetCount = Array.from(dialog.querySelectorAll(`fieldset.valid`)).length;
|
|
333
|
+
|
|
334
|
+
// update the progress bar
|
|
335
|
+
dialog.style.setProperty('--progress', `${(validFieldsetCount/(fieldsetCount - 1) * 100)}%`);
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
// remove error messages from server
|
|
339
|
+
dialog.addEventListener('keydown', (event) => {
|
|
340
|
+
if (event && event.target instanceof HTMLElement && event.target.closest('button')){
|
|
341
|
+
|
|
342
|
+
const button = event.target.closest('button');
|
|
343
|
+
|
|
344
|
+
if(event.keyCode == 13){
|
|
345
|
+
|
|
346
|
+
event.preventDefault();
|
|
347
|
+
validateFieldset(button);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
if (event && event.target instanceof HTMLElement && event.target.closest('input')){
|
|
352
|
+
const input = event.target.closest('input');
|
|
353
|
+
|
|
354
|
+
input.classList.remove('is-invalid');
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
}
|
|
358
|
+
});
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
dialog.addEventListener('click', (event) => {
|
|
362
|
+
if (event && event.target instanceof HTMLElement && event.target.closest('button[data-title]')){
|
|
363
|
+
|
|
364
|
+
const button = event.target.closest('button[data-title]');
|
|
365
|
+
validateFieldset(button);
|
|
251
366
|
};
|
|
252
367
|
return null
|
|
253
368
|
});
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import '@testing-library/jest-dom'
|
|
3
|
+
import { createMultiFormDialog } from "../modules/dialogs";
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
describe('createMultiFormDialog', () => {
|
|
7
|
+
let dialog;
|
|
8
|
+
|
|
9
|
+
beforeEach(() => {
|
|
10
|
+
// Create a fresh dialog element before each test
|
|
11
|
+
dialog = document.createElement('dialog');
|
|
12
|
+
dialog.innerHTML = `
|
|
13
|
+
<fieldset data-title="fieldset1">
|
|
14
|
+
<input type="text" >
|
|
15
|
+
</fieldset>
|
|
16
|
+
<fieldset data-title="fieldset2">
|
|
17
|
+
<input type="text" >
|
|
18
|
+
</fieldset>
|
|
19
|
+
`;
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
test('it initializes buttons and fieldsets', () => {
|
|
23
|
+
createMultiFormDialog(dialog);
|
|
24
|
+
|
|
25
|
+
expect(dialog.querySelectorAll('.steps').length).toEqual(1);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
test('it validates fieldsets and updates classes', () => {
|
|
29
|
+
createMultiFormDialog(dialog);
|
|
30
|
+
|
|
31
|
+
// Simulate a button click to trigger validation
|
|
32
|
+
const button = dialog.querySelector('button[data-title="fieldset1"]');
|
|
33
|
+
button.click();
|
|
34
|
+
|
|
35
|
+
// Add your assertions here to check if validation and class updates are working as expected
|
|
36
|
+
expect(dialog.querySelectorAll('fieldset[data-title="fieldset1"].active').length).toEqual(1);
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
test('it navigates to the next fieldset', () => {
|
|
40
|
+
createMultiFormDialog(dialog);
|
|
41
|
+
|
|
42
|
+
// Simulate a button click to navigate to the next fieldset
|
|
43
|
+
const button = dialog.querySelector('button[data-title="fieldset2"]');
|
|
44
|
+
button.click();
|
|
45
|
+
|
|
46
|
+
// Add your assertions here to check if navigation to the next fieldset is working
|
|
47
|
+
expect(dialog.querySelectorAll('fieldset[data-title="fieldset2"].active').length).toEqual(1);
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
});
|
package/dist/components.es.js
CHANGED
|
@@ -48,7 +48,7 @@ function ge(t, a, e, r, i, o) {
|
|
|
48
48
|
}
|
|
49
49
|
const _e = /* @__PURE__ */ S(be, [["render", ge]]);
|
|
50
50
|
/*!
|
|
51
|
-
* iamKey v3.7.9
|
|
51
|
+
* iamKey v3.7.9
|
|
52
52
|
* Copyright 2022-2023 iamproperty
|
|
53
53
|
*/
|
|
54
54
|
const ve = function(t) {
|
|
@@ -962,7 +962,7 @@ function ht(t, a, e, r, i, o) {
|
|
|
962
962
|
}
|
|
963
963
|
const nr = /* @__PURE__ */ S(mt, [["render", ht]]);
|
|
964
964
|
/*!
|
|
965
|
-
* iamKey v3.7.9
|
|
965
|
+
* iamKey v3.7.9
|
|
966
966
|
* Copyright 2022-2023 iamproperty
|
|
967
967
|
*/
|
|
968
968
|
function ft(t) {
|
|
@@ -1113,7 +1113,7 @@ const ur = /* @__PURE__ */ S(St, [["render", Tt]]), Mt = {
|
|
|
1113
1113
|
name: "Card",
|
|
1114
1114
|
mounted() {
|
|
1115
1115
|
this.$nextTick(function() {
|
|
1116
|
-
import("./card.component.min-
|
|
1116
|
+
import("./card.component.min-e1d5b078.mjs").then((t) => {
|
|
1117
1117
|
window.customElements.get("iam-card") || window.customElements.define("iam-card", t.default);
|
|
1118
1118
|
}).catch((t) => {
|
|
1119
1119
|
console.log(t.message);
|
|
@@ -1314,7 +1314,7 @@ function Vt(t, a, e, r, i, o) {
|
|
|
1314
1314
|
}
|
|
1315
1315
|
const mr = /* @__PURE__ */ S(Nt, [["render", Vt]]);
|
|
1316
1316
|
/*!
|
|
1317
|
-
* iamKey v3.7.9
|
|
1317
|
+
* iamKey v3.7.9
|
|
1318
1318
|
* Copyright 2022-2023 iamproperty
|
|
1319
1319
|
*/
|
|
1320
1320
|
window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "header" });
|
|
@@ -2092,7 +2092,7 @@ function ks(t, a, e, r, i, o) {
|
|
|
2092
2092
|
}
|
|
2093
2093
|
const gr = /* @__PURE__ */ S(As, [["render", ks]]);
|
|
2094
2094
|
/*!
|
|
2095
|
-
* iamKey v3.7.9
|
|
2095
|
+
* iamKey v3.7.9
|
|
2096
2096
|
* Copyright 2022-2023 iamproperty
|
|
2097
2097
|
*/
|
|
2098
2098
|
const qs = function(t) {
|
|
@@ -2281,7 +2281,7 @@ function Vs(t, a, e, r, i, o) {
|
|
|
2281
2281
|
}
|
|
2282
2282
|
const wr = /* @__PURE__ */ S(Is, [["render", Vs]]);
|
|
2283
2283
|
/*!
|
|
2284
|
-
* iamKey v3.7.9
|
|
2284
|
+
* iamKey v3.7.9
|
|
2285
2285
|
* Copyright 2022-2023 iamproperty
|
|
2286
2286
|
*/
|
|
2287
2287
|
function Us(t, a) {
|
|
@@ -2373,7 +2373,7 @@ function Ks(t, a, e, r, i, o) {
|
|
|
2373
2373
|
}
|
|
2374
2374
|
const Ar = /* @__PURE__ */ S(Gs, [["render", Ks]]);
|
|
2375
2375
|
/*!
|
|
2376
|
-
* iamKey v3.7.9
|
|
2376
|
+
* iamKey v3.7.9
|
|
2377
2377
|
* Copyright 2022-2023 iamproperty
|
|
2378
2378
|
*/
|
|
2379
2379
|
function Ys(t, a) {
|
package/dist/components.umd.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
(function(y,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(y=typeof globalThis<"u"?globalThis:y||self,e(y.iamkey={},y.Vue))})(this,function(y,e){"use strict";const k=(a,o)=>{const t=a.__vccOpts||a;for(const[r,s]of o)t[r]=s;return t},X={name:"Logo",props:{id:{type:String,required:!1,default:"property"},path:{type:String,required:!1,default:"/svg/logo.svg"},desc:{type:String}},computed:{src:function(){return"#logo-"+this.id},className:function(){return"brand brand--"+this.id}}},J=["xlink:href"],Q=["innerHTML"];function ee(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(i.className)},[(e.openBlock(),e.createElementBlock("svg",null,[e.createElementVNode("title",null,"iam "+e.toDisplayString(t.id),1),e.createElementVNode("use",{"xlink:href":t.path+i.src},null,8,J)])),t.desc?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:t.desc},null,8,Q)):e.createCommentVNode("",!0)],2)}const P=k(X,[["render",ee]]);/*!
|
|
2
|
-
* iamKey v3.7.9
|
|
2
|
+
* iamKey v3.7.9
|
|
3
3
|
* Copyright 2022-2023 iamproperty
|
|
4
4
|
*/const te=function(a){return typeof a!="string"?!1:!isNaN(a)&&!isNaN(parseFloat(a))},ae=(a,o)=>String(a).padStart(o,"0"),oe=a=>a.charAt(0).toUpperCase()+a.slice(1),$=function(a,o){if(!a.getAttribute("data-pages"))return!1;a.getAttribute("data-page")||a.setAttribute("data-page",1);let t=a.getAttribute("data-page"),r=a.getAttribute("data-pages"),s=a.getAttribute("data-total"),i=a.getAttribute("data-show"),n=a.getAttribute("data-increment");if(r<=1)return o.innerHTML="",!1;let l="";for(let d=1;d<=r;d++)d==t?l+=`<li class="page-item active" aria-current="page"><span class="page-link">${d}</span></li>`:l+=`<li class="page-item"><a href="?page=${d}" class="page-link" data-page="${d}">${d}</a></li>`;return o.innerHTML=`<ul class="pagination mb-0 d-none d-sm-flex">
|
|
5
5
|
${t==1?'<li class="page-item disabled"><span class="page-link">Previous</span></li>':`<li class="page-item"><a href="?page=${parseInt(t)-1}" class="page-link" data-page="${parseInt(t)-1}">Previous</a></li>`}
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
<div class="files"></div>
|
|
48
48
|
</div>
|
|
49
49
|
`,this.shadowRoot.appendChild(s.content.cloneNode(!0))}connectedCallback(){this.innerHTML+='<i class="fa-regular fa-arrow-up-from-bracket me-2" aria-hidden="true" slot="btn"></i>';const o=this.shadowRoot.querySelector(".file-upload"),t=this.querySelector("input"),r=this.shadowRoot.querySelector(".helper-text");r.innerHTML=`${this.hasAttribute("data-maxsize")?`Max file size is ${this.getAttribute("data-maxsize")}kb. `:""}${t.hasAttribute("accept")?`Supported file types are ${t.getAttribute("accept")}`:""}`,Ue(this,o)}}const Ge={name:"FileUpload",props:{maxfilesize:{type:Number,required:!1},maxfiles:{type:Number,required:!1}},mounted(){this.$nextTick(function(){window.customElements.get("iam-fileupload")||window.customElements.define("iam-fileupload",We)})}};function Ke(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("iam-fileupload",null,[e.renderSlot(a.$slots,"default")])}const Ye=k(Ge,[["render",Ke]]);/*!
|
|
50
|
-
* iamKey v3.7.9
|
|
50
|
+
* iamKey v3.7.9
|
|
51
51
|
* Copyright 2022-2023 iamproperty
|
|
52
52
|
*/function Ze(a){let o=a.querySelectorAll("details"),t=a.querySelectorAll("summary");if(o.forEach(r=>{r.classList.add("accordion-item")}),t.forEach(r=>{r.classList.add("accordion-header"),r.classList.add("accordion-button"),r.classList.add("h4")}),!a.classList.contains("accordion--keep-open")){const r=a.querySelectorAll(":scope > details");r.forEach(s=>{s.addEventListener("click",()=>{r.forEach(i=>{i!==s&&i.removeAttribute("open")})})})}}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"accordion"});let Xe=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const o=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${o}/css/core.min.css`,r=document.createElement("template");r.innerHTML=`
|
|
53
53
|
<style>
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
<slot></slot>
|
|
61
61
|
</div>
|
|
62
62
|
`,this.shadowRoot.appendChild(r.content.cloneNode(!0))}connectedCallback(){Ze(this)}};const sr="";window.customElements.get("iam-accordion")||window.customElements.define("iam-accordion",Xe);const Je={name:"Accordion",props:{},mounted(){}},Qe={ref:"wrapper"};function et(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("iam-accordion",Qe,[e.renderSlot(a.$slots,"default")],512)}const tt=k(Je,[["render",et]]),at={name:"AccordionItem",props:{title:{type:String,required:!0},titlecolour:{type:String,required:!1},badge:{type:[Number,String],required:!1},badgecolour:{type:String,required:!1,default:"light"},lazy:{type:Boolean,required:!1}},computed:{createID(){return a=>`${be(a)}`}},data(){return{show:!this.lazy}}},ot=["id"],rt=["classList"];function nt(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("details",{id:i.createID(t.title)},[e.createElementVNode("summary",{classList:`${t.titlecolour?`bg-${t.titlecolour}`:""}`},[e.createTextVNode(e.toDisplayString(t.title),1),t.badge?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(`badge bg-${t.badgecolour}`)},e.toDisplayString(t.badge),3)):e.createCommentVNode("",!0)],8,rt),e.renderSlot(a.$slots,"default")],8,ot)}const it=k(at,[["render",nt]]),st={name:"Header",props:{title:{type:String,required:!0},image:{type:String,required:!1},background:{type:String,default:"light",required:!1}}},lt={class:"container"},ct={class:"row"},dt={class:"col-sm-6"},mt={class:"pt-5 pb-3 px-4"},ut={class:"col-sm-6 col-md-5 ms-auto"},ht=["src"];function pt(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("div",lt,[e.createElementVNode("div",{class:e.normalizeClass("bg-"+t.background+" mb-4")},[e.createElementVNode("div",ct,[e.createElementVNode("div",dt,[e.createElementVNode("div",mt,[e.createElementVNode("h2",null,e.toDisplayString(t.title),1),e.renderSlot(a.$slots,"default")])]),e.createElementVNode("div",ut,[t.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.image,alt:"",class:"h-100 w-100 object-cover"},null,8,ht)):e.createCommentVNode("",!0)])])],2)])}const ft=k(st,[["render",pt]]),bt={name:"Card",mounted(){this.$nextTick(function(){Promise.resolve().then(()=>ar).then(a=>{window.customElements.get("iam-card")||window.customElements.define("iam-card",a.default)}).catch(a=>{console.log(a.message)})})}};function yt(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("iam-card",null,[e.renderSlot(a.$slots,"default")])}const G=k(bt,[["render",yt]]);function gt(a){var o;let t=a.querySelector(".carousel__inner"),r=a.querySelectorAll(".carousel__item").length;a.getAttribute("data-cols");let s=a.getAttribute("data-sm-cols"),i=a.getAttribute("data-md-cols");a.querySelector(".carousel__controls a").classList.add("active"),t.addEventListener("scroll",function(n){clearTimeout(o),o=setTimeout(function(){let l=t.clientWidth,d=t.scrollWidth,c=t.scrollLeft,u=Math.round(c/d*r)+1,p=a.querySelector(".carousel__item:last-child").offsetLeft;Array.from(a.querySelectorAll(".carousel__controls a")).forEach((m,h)=>{m.classList.remove("active")}),a.querySelector(".control-"+u).classList.add("active"),u==1?a.querySelector(".btn-prev").setAttribute("disabled","disabled"):a.querySelector(".btn-prev").removeAttribute("disabled"),t.scrollLeft+l>p?a.querySelector(".btn-next").setAttribute("disabled","disabled"):a.querySelector(".btn-next").removeAttribute("disabled")},100)},!1),a.addEventListener("click",function(n){for(var l=n.target;l&&l!=this;l=l.parentNode)if(l.matches(".carousel__controls a")){n.preventDefault(),Array.from(a.querySelectorAll(".carousel__controls a")).forEach((c,u)=>{c.classList.remove("active")}),l.classList.add("active");const d=document.querySelector(l.getAttribute("href"));t.scroll({top:0,left:d.offsetLeft,behavior:"smooth"});break}},!1),a.addEventListener("click",function(n){for(var l=n.target;l&&l!=this;l=l.parentNode)if(l.matches(".btn-next, .btn-prev")){n.preventDefault();let d=l.classList.contains("btn-prev")?t.scrollLeft-t.clientWidth:t.scrollLeft+t.clientWidth;t.scroll({top:0,left:d,behavior:"smooth"});break}},!1),r==1&&a.classList.add("hide-btns"),s>=r&&a.classList.add("hide-sm-btns"),i>=r&&a.classList.add("hide-md-btns")}const lr="",_t={components:{Card:G},name:"Carousel",data(){return{id:null}},props:{items:{type:Array,required:!1},cols:{type:Number,required:!1,default:1},smcols:{type:Number,required:!1,default:1},mdcols:{type:Number,required:!1,default:3},gap:{type:Number,required:!1,default:4},cardtype:{type:String,required:!1},cardclass:{type:String,required:!1},btntype:{type:String,required:!1},titleclass:{type:String,required:!1},ctatext:{type:String,required:!1},hidectatext:{type:Boolean,required:!1,default:!1},colclass:{type:String,required:!1},type:{type:String,required:!1}},computed:{content(){return a=>`${a.image?`<img src="${a.image}" alt="" />`:""}${a.content?a.content:""}`}},mounted(){this.id=this._uid,this.$nextTick(function(){gt(this.$refs.wrapper)})}},kt=["id","data-cols","data-sm-cols","data-md-cols"],wt={class:"carousel__wrapper"},At={class:"carousel__inner"},St=["id"],Et=["innerHTML","id"],Lt=["href"],$t=e.createElementVNode("button",{class:"btn btn-prev","data-go":"0",disabled:""},"Prev",-1),vt=e.createElementVNode("button",{class:"btn btn-next","data-go":"2"},"Next",-1);function qt(a,o,t,r,s,i){const n=e.resolveComponent("Card");return e.openBlock(),e.createElementBlock("div",{class:"container carousel",id:"carousel"+s.id,ref:"wrapper","data-cols":t.cols,"data-sm-cols":t.smcols,"data-md-cols":t.mdcols},[e.renderSlot(a.$slots,"default"),e.createElementVNode("div",wt,[e.createElementVNode("div",At,[t.type=="card"?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(`row row-cols-${t.cols} row-cols-sm-${t.smcols} row-cols-md-${t.mdcols} ${t.gap?`g-${t.gap}`:""}`)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(`col carousel__item${t.colclass?` ${t.colclass}`:""}`),key:d,id:"carousel"+s.id+"slide"+(d+1)},[e.createVNode(n,e.mergeProps(l,{class:t.cardclass,type:t.cardtype,btnyype:t.btntype,titleclass:t.titleclass,ctatext:t.ctatext,hidectatext:t.hidectatext}),null,16,["class","type","btnyype","titleclass","ctatext","hidectatext"])],10,St))),128))],2)):e.createCommentVNode("",!0),t.type!="card"?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(`row row-cols-${t.cols} row-cols-sm-${t.smcols} row-cols-md-${t.mdcols} ${t.gap?`g-${t.gap}`:""}`)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(`col carousel__item${t.colclass?` ${t.colclass}`:""}`),key:d,innerHTML:i.content(l),id:"carousel"+s.id+"slide"+(d+1)},null,10,Et))),128))],2)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(`carousel__controls cols-${t.cols} cols-sm-${t.smcols} cols-md-${t.mdcols}`)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(l,d)=>(e.openBlock(),e.createElementBlock("a",{key:d,href:"#carousel"+s.id+"slide"+(d+1),class:e.normalizeClass(`control-${d+1}`)},"Slide "+e.toDisplayString(d+1),11,Lt))),128))],2),$t,vt])],8,kt)}const xt=k(_t,[["render",qt]]);/*!
|
|
63
|
-
* iamKey v3.7.9
|
|
63
|
+
* iamKey v3.7.9
|
|
64
64
|
* Copyright 2022-2023 iamproperty
|
|
65
65
|
*/window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"header"});class Nt extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const o=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${o}/css/core.min.css`,r=document.createElement("template");r.innerHTML=`
|
|
66
66
|
<style>
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
</picture>
|
|
85
85
|
</div>
|
|
86
86
|
`,this.shadowRoot.appendChild(r.content.cloneNode(!0))}connectedCallback(){this.classList.add("loaded");const o=this.shadowRoot.querySelector("picture"),t=this.shadowRoot.querySelector("picture source");this.hasAttribute("image")?t.setAttribute("srcset",this.getAttribute("image")):o.remove()}}const Bt={name:"Header",props:{title:{type:String,required:!0},image:{type:String,required:!1}},mounted(){this.$nextTick(function(){window.customElements.get("iam-header")||window.customElements.define("iam-header",Nt)})}},Tt=["image"],Ct=["innerHTML"];function Vt(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("iam-header",{class:"bg-secondary",image:t.image},[e.renderSlot(a.$slots,"breadcrumb"),t.title?(e.openBlock(),e.createElementBlock("h1",{key:0,innerHTML:t.title},null,8,Ct)):e.createCommentVNode("",!0),e.renderSlot(a.$slots,"default")],8,Tt)}const Mt=k(Bt,[["render",Vt]]);function Ht(a){var o;const t=a.querySelector(".testimonial__images"),r=t.querySelectorAll("img").length;if(r==1)return!1;a.classList.add("testimonial--multi");const s=function(i){const n=a.querySelector(".btn-next"),l=a.querySelector(".btn-prev");n.setAttribute("data-go",i+1),l.setAttribute("data-go",i-1),n.removeAttribute("disabled"),l.removeAttribute("disabled"),i==1?l.setAttribute("disabled",!0):i==r&&n.setAttribute("disabled",!0)};t.addEventListener("scroll",function(i){clearTimeout(o),o=setTimeout(function(){let n=t.scrollWidth,l=t.scrollHeight,d=t.scrollLeft,c=t.scrollTop,u=Math.round(d/n*r)+1;d==0&&c!=0&&(u=Math.round(c/l*r)+1),a.setAttribute("data-show",u),s(u)},300)},!1),a.addEventListener("click",function(i){for(var n=i.target;n&&n!=this;n=n.parentNode)if(n.matches("[data-go]")){let l=parseInt(n.getAttribute("data-go")),d=0,c=0,u=t.scrollWidth,p=t.scrollHeight;u>p?c=Math.floor(u*((l-1)/r)):d=Math.floor(p*((l-1)/r)),t.scroll({top:d,left:c,behavior:"smooth"});break}},!1)}const cr="",Dt={name:"Testimonial",props:{items:{type:Array,required:!0},background:{type:String,default:"light",required:!1}},mounted(){Ht(this.$refs.wrapper)}},zt={class:"container testimonial mb-5","data-show":"1",ref:"wrapper"},Rt={class:"row"},Pt={class:"col-md-5 position-relative"},Ft={class:"testimonial__images"},It=["src"],jt=e.createElementVNode("div",{class:"testimonial__controls"},[e.createElementVNode("button",{"data-go":"0",disabled:"",class:"btn-prev"},"Previous"),e.createElementVNode("button",{"data-go":"2",class:"btn-next"},"Next")],-1),Ot={class:"col-md-7"},Ut=e.createElementVNode("h2",null,"What our customers think…",-1),Wt={class:"testimonial__content"},Gt=["innerHTML"],Kt=["innerHTML"],Yt={class:"testimonial__after"},Zt=e.createElementVNode("span",{class:"circle circle--dots d-none d-md-block"},null,-1);function Xt(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("div",zt,[e.createElementVNode("div",{class:e.normalizeClass("bg-"+t.background)},[e.createElementVNode("div",Rt,[e.createElementVNode("div",Pt,[e.createElementVNode("div",Ft,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(n,l)=>(e.openBlock(),e.createElementBlock("img",{key:l,src:n.image?n.image:"data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==",alt:"",class:e.normalizeClass("h-100 w-100 object-cover"+(n.image?"":" opacity-0"))},null,10,It))),128))]),jt]),e.createElementVNode("div",Ot,[Ut,e.createElementVNode("div",Wt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(n,l)=>(e.openBlock(),e.createElementBlock("blockquote",{key:l,class:e.normalizeClass(n.class)},[e.createElementVNode("div",{innerHTML:n.quote},null,8,Gt),e.createElementVNode("cite",{innerHTML:n.cite},null,8,Kt)],2))),128))]),e.createElementVNode("div",Yt,[e.renderSlot(a.$slots,"default")])])]),Zt],2)],512)}const Jt=k(Dt,[["render",Xt]]),dr="",Qt={components:{Input:q},name:"PropertySearchbar",props:{formaction:{type:String,required:!1},formmethod:{type:String,required:!1},location:{type:String,required:!1},locations:{type:Array,required:!1},distances:{type:Array,required:!1,default(){return[{value:"0.25",display:"+¼ mi"},{value:"0.5",display:"+½ mi"},{value:"1",display:"+1 mi"},{value:"2",display:"+2 mi"},{value:"3",display:"+3 mi"},{value:"4",display:"+4 mi"},{value:"5",display:"+5 mi"}]}},pricemin:{type:Array,required:!1,default(){return[{value:"0",display:"No min"},{value:"50000",display:"£50k min"},{value:"75000",display:"£75k min"},{value:"100000",display:"£100k min"},{value:"150000",display:"£150k min"},{value:"200000",display:"£200k min"},{value:"250000",display:"£250k min"}]}},pricemax:{type:Array,required:!1,default(){return[{value:"any",display:"No max"},{value:"50000",display:"£50k max"},{value:"75000",display:"£75k max"},{value:"100000",display:"£100k max"},{value:"150000",display:"£150k max"},{value:"200000",display:"£200k max"},{value:"250000",display:"£250k max"}]}},bedsmin:{type:Array,required:!1,default(){return[{value:"any",display:"No min"},{value:"0",display:"Studio min"},{value:"1",display:"1 bed min"},{value:"2",display:"2 beds min"},{value:"3",display:"3 beds min"},{value:"4",display:"4 beds min"},{value:"5",display:"5 beds min"},{value:"6",display:"6 beds min"}]}},bedsmax:{type:Array,required:!1,default(){return[{value:"any",display:"No max"},{value:"0",display:"Studio max"},{value:"1",display:"1 bed max"},{value:"2",display:"2 beds max"},{value:"3",display:"3 beds max"},{value:"4",display:"4 beds max"},{value:"5",display:"5 beds max"},{value:"6",display:"6 beds max"}]}},propertytypes:{type:Array,required:!1,default(){return[{value:"all",display:"Show all"},{value:"Bungalow",display:"Bungalow"},{value:"Character Property",display:"Character Property"},{value:"Commercial Property",display:"Commercial Property"},{value:"Flat / Apartment",display:"Flat / Apartment"},{value:"Garage / Parking",display:"Garage / Parking"},{value:"Guest House / Hotel",display:"Guest House / Hotel"},{value:"House",display:"House"},{value:"House / Flat Share",display:"House / Flat Share"},{value:"Land",display:"Land"},{value:"Mobile / Park Home",display:"Mobile / Park Home"},{value:"Private Halls",display:"Private Halls"},{value:"Retirement Property",display:"Retirement Property"}]}}},data(){return{locationSave:""}},methods:{locationKeyup:function(a){this.$emit("locationKeyup",a)}},computed:{locationSet:{get(){return this.locationSave?this.locationSave:this.location},set(a){this.locationSave=a,this.$emit("input",a)}},locationsList(){return()=>this.locations?this.locations:[{value:"Newcastle"}]}}},ea={class:"container",ref:"wrapper"},ta={class:"property-searchbar"},aa=["action","method"],oa={class:"col-12 col-md-3"},ra={class:"col-12 col-md"},na=e.createElementVNode("span",{class:"form-label d-none d-md-block"},"Price range",-1),ia={class:"row","data-input-range":""},sa={class:"col-12 col-md"},la=e.createElementVNode("span",{class:"form-label d-none d-md-block"},"Number of beds",-1),ca={class:"row","data-input-range":""},da={class:"col-12 col-md-2"},ma=e.createElementVNode("div",{class:"col-12 col-md mw-md-fit-content d-flex property-searchbar__btn"},[e.createElementVNode("button",{class:"btn w-100 me-0",type:"submit",value:"submit"},"Search")],-1);function ua(a,o,t,r,s,i){const n=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",ea,[e.renderSlot(a.$slots,"default"),e.createElementVNode("div",ta,[e.createElementVNode("form",{class:"row",action:t.formaction,method:t.formmethod},[e.createElementVNode("fieldset",oa,[e.createVNode(n,{inputClass:"input--locations",modelValue:i.locationSet,"onUpdate:modelValue":o[0]||(o[0]=l=>i.locationSet=l),label:"Location",id:"location",options:i.locationsList(),required:"",placeholder:"i.e. Newcastle or NE1",onKeyupEvent:o[1]||(o[1]=l=>i.locationKeyup(...arguments)),ref:"search"},null,8,["modelValue","options"]),e.createVNode(n,{class:"select--miles",label:"Miles",id:"miles",type:"select",options:t.distances},null,8,["options"])]),e.createElementVNode("fieldset",ra,[na,e.createElementVNode("div",ia,[e.createVNode(n,{class:"col-6",label:"Minimum price",id:"price-min","data-min":"true",type:"select",options:t.pricemin},null,8,["options"]),e.createVNode(n,{class:"col-6",label:"Maximum price",id:"price-max","data-max":"true",type:"select",options:t.pricemax},null,8,["options"])])]),e.createElementVNode("fieldset",sa,[la,e.createElementVNode("div",ca,[e.createVNode(n,{class:"col-6",label:"Minimum beds",id:"beds-min","data-min":"true",type:"select",options:t.bedsmin},null,8,["options"]),e.createVNode(n,{class:"col-6",label:"Maximum beds",id:"beds-max","data-max":"true",type:"select",options:t.bedsmax},null,8,["options"])])]),e.createElementVNode("fieldset",da,[e.createVNode(n,{label:"Property type",id:"property-type",type:"select",options:t.propertytypes},null,8,["options"])]),ma],8,aa)]),e.renderSlot(a.$slots,"after")],512)}const ha=k(Qt,[["render",ua]]),pa=a=>{Array.from(a.querySelectorAll("details")).forEach((o,t)=>{o.addEventListener("mouseenter",function(r){window.matchMedia("(min-width: 62em)").matches&&o.setAttribute("open","true")},!1),o.addEventListener("mouseleave",function(r){window.matchMedia("(min-width: 62em)").matches&&o.removeAttribute("open")},!1)}),"IntersectionObserver"in window&&new IntersectionObserver(([t])=>t.target.classList.toggle("is-stuck",t.intersectionRatio<1),{threshold:[1]}).observe(a)},mr="",fa={components:{Input:q,Logo:P},name:"Nav",props:{logo:{type:String,required:!1},logotext:{type:String,required:!1},logopath:{type:String,required:!1},search:{type:String,required:!1},btnlink:{type:String,required:!1},btntext:{type:String,required:!1},propertylink:{type:String,required:!1},movebutlerlink:{type:String,required:!1},iamsoldlink:{type:String,required:!1}},data(){return{locationSave:""}},methods:{subIsActive(a){return(Array.isArray(a)?a:[a]).some(t=>this.$route.path.indexOf(t)===0)}},computed:{hasLogoSlot(){return!!this.$slots.logo},hasSecondarySlot(){return!!this.$slots.secondary},hasSearchSlot(){return!!this.$slots.search},hasAccountSlot(){return!!this.$slots.account},isMarketplace(){return!1}},mounted(){this.$nextTick(function(){pa(this.$refs.wrapper)})}},ba=e.createElementVNode("input",{type:"checkbox",name:"showMenu",id:"showMenu",class:"d-none"},null,-1),ya=e.createElementVNode("input",{type:"checkbox",name:"showSearch",id:"showSearch",class:"d-none"},null,-1),ga=e.createElementVNode("input",{type:"checkbox",name:"showAccount",id:"showAccount",class:"d-none"},null,-1),_a={class:"nav__mobile-bar"},ka={class:"container"},wa={class:"row"},Aa={key:0,class:"col mw-md-fit-content nav__logo"},Sa={key:1,class:"col mw-md-fit-content nav__logo"},Ea={href:"/",class:"text-decoration-none mb-0"},La=e.createElementVNode("div",{class:"col mw-fit-content d-md-none flex-row align-items-center nav__menu-btn"},[e.createElementVNode("label",{for:"showMenu"},"Menu")],-1),$a={class:"nav__inner"},va={class:"container"},qa={class:"row"},xa={key:0,class:"col mw-md-fit-content nav__logo"},Na={key:1,class:"col mw-md-fit-content nav__logo"},Ba={href:"/",class:"text-decoration-none mb-0"},Ta={key:2,class:"col mw-fit-content nav__search-btn flex-row align-items-center"},Ca=[e.createElementVNode("label",{for:"showSearch"},[e.createElementVNode("svg",{class:"icon",viewBox:"0 0 32 32"},[e.createElementVNode("title",null,"Search"),e.createElementVNode("ellipse",{cx:"14.92",cy:"13.81",rx:"11.92",ry:"11.81",class:"icon__outline"}),e.createElementVNode("line",{x1:"22.68",y1:"22.75",x2:"30",y2:"30",class:"icon__outline"})])],-1)],Va=e.createElementVNode("div",{class:"col mw-fit-content d-md-none flex-row align-items-center nav__menu-btn"},[e.createElementVNode("label",{for:"showMenu"},"Menu")],-1),Ma={class:"col-12 col-md nav__menu ms-auto flex-row align-items-center"},Ha={key:3,class:"col nav__account-btn flex-row align-items-center"},Da=[e.createElementVNode("label",{for:"showAccount"},[e.createElementVNode("svg",{class:"icon",viewBox:"0 0 28 28"},[e.createElementVNode("path",{d:"M14,28a13.861,13.861,0,0,1-9.268-3.533l-.023.047-.721-.738L3.62,23.4l.012-.023a14,14,0,1,1,20.735,0l.012.023-.367.377-.722.738-.024-.045A13.855,13.855,0,0,1,14,28Zm0-9.58a10.5,10.5,0,0,0-1.368.092c-.085.012-.17.03-.252.047-.061.013-.124.026-.187.037l-.077.013c-.266.047-.54.095-.8.165-.108.029-.215.065-.318.1-.063.022-.125.043-.188.063l-.08.026c-.223.071-.454.144-.671.234-.125.05-.245.11-.362.168l-.146.072-.045.021c-.208.1-.423.2-.623.312-.131.074-.257.158-.379.239l-.106.07-.068.044c-.176.114-.359.232-.528.359-.137.1-.267.218-.393.327l-.054.047c-.174.15-.355.306-.519.47-.132.134-.258.277-.38.416l-.018.021c-.16.184-.3.35-.437.527-.12.161-.23.33-.337.494-.076.117-.146.238-.214.356a12.495,12.495,0,0,0,17.109,0l-.022-.037c-.061-.1-.125-.212-.192-.315-.1-.156-.214-.333-.338-.5-.141-.188-.293-.363-.436-.526-.113-.13-.253-.292-.4-.438-.161-.162-.337-.314-.517-.468l-.08-.069c-.118-.1-.24-.209-.368-.307-.183-.137-.379-.264-.568-.387l-.026-.017-.106-.07c-.125-.083-.251-.166-.381-.24-.207-.118-.429-.222-.643-.322l-.024-.011-.152-.074c-.116-.057-.235-.116-.356-.165-.214-.087-.438-.159-.656-.229l-.1-.031c-.066-.021-.132-.043-.2-.066-.1-.035-.2-.07-.309-.1-.264-.07-.538-.118-.8-.165l-.078-.014c-.063-.011-.126-.024-.187-.037-.082-.017-.167-.035-.252-.047A10.483,10.483,0,0,0,14,18.421Zm0-1.473a11.871,11.871,0,0,1,1.54.1c.1.013.192.033.284.052.069.014.139.028.209.04.34.058.672.118,1,.2.14.036.278.082.412.127l.151.05c.309.1.587.188.859.3.148.059.293.127.433.194l.13.061c.306.142.553.266.775.389.188.107.368.22.535.328.26.166.489.322.7.478.156.117.316.244.49.389.209.176.412.361.622.567.156.154.3.293.43.443.209.23.4.472.542.657l.051.066c.1.134.21.272.308.416.021.031.045.061.068.09a1.267,1.267,0,0,1,.085.117,12.525,12.525,0,1,0-19.24,0c.026-.04.056-.078.084-.114s.05-.064.073-.1c.1-.141.2-.278.3-.409l.046-.059c.2-.264.378-.478.555-.672.137-.152.281-.3.417-.43.215-.21.422-.4.635-.578.18-.15.332-.271.479-.381.208-.155.433-.31.709-.486.174-.111.346-.219.526-.319.274-.153.55-.285.783-.393l.112-.053c.144-.069.293-.14.445-.2.282-.113.578-.208.864-.3l.159-.052c.132-.044.265-.088.4-.124.331-.087.675-.148,1-.2.068-.012.137-.026.2-.039.094-.019.191-.039.288-.052A11.827,11.827,0,0,1,14,16.948Z",transform:"translate(0 -0.001)"}),e.createElementVNode("path",{d:"M5.2,10.4a5.2,5.2,0,1,1,5.2-5.2A5.206,5.206,0,0,1,5.2,10.4Zm0-8.915A3.714,3.714,0,1,0,8.915,5.2,3.719,3.719,0,0,0,5.2,1.486Z",transform:"translate(8.8 4.8)"})]),e.createElementVNode("span",null,"My account")],-1)],za={key:4,class:"col-12 col-md nav__btn mw-md-fit-content flex-row align-items-center"},Ra=["href","innerHTML"],Pa={key:0,class:"nav__menu--secondary"},Fa={class:"container"},Ia={key:1,class:"nav__menu--search"},ja={class:"bg-gradient pt-4"},Oa={class:"container"},Ua={key:0,class:"nav__menu--account"},Wa={class:"container"},Ga={class:"row mb-4"},Ka={key:0,class:"col mw-md-fit-content nav__logo"},Ya={key:1,class:"col mw-md-fit-content nav__logo"},Za={href:"/",class:"text-decoration-none mb-0"},Xa=e.createElementVNode("div",{class:"col mw-fit-content d-md-none flex-row align-items-center nav__menu-btn"},[e.createElementVNode("label",{for:"showAccount"},"Account")],-1),Ja={class:"container"},Qa=e.createElementVNode("span",{class:"nav__bg"},null,-1);function eo(a,o,t,r,s,i){const n=e.resolveComponent("Logo");return e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(`nav${i.hasSecondarySlot?" has-secondary":""}`),ref:"wrapper"},[ba,ya,ga,e.createElementVNode("div",_a,[e.createElementVNode("div",ka,[e.createElementVNode("div",wa,[i.hasLogoSlot?(e.openBlock(),e.createElementBlock("div",Aa,[e.renderSlot(a.$slots,"logo")])):(e.openBlock(),e.createElementBlock("div",Sa,[e.createElementVNode("a",Ea,[e.createVNode(n,{id:t.logo,path:t.logopath,desc:t.logotext,class:"pb-0"},null,8,["id","path","desc"])])])),La])])]),e.createElementVNode("div",$a,[e.createElementVNode("div",va,[e.createElementVNode("div",qa,[i.hasLogoSlot?(e.openBlock(),e.createElementBlock("div",xa,[e.renderSlot(a.$slots,"logo")])):(e.openBlock(),e.createElementBlock("div",Na,[e.createElementVNode("a",Ba,[e.createVNode(n,{id:t.logo,path:t.logopath,desc:t.logotext,class:"pb-0"},null,8,["id","path","desc"])])])),i.hasSearchSlot?(e.openBlock(),e.createElementBlock("div",Ta,Ca)):e.createCommentVNode("",!0),Va,e.createElementVNode("div",Ma,[e.renderSlot(a.$slots,"default")]),i.hasAccountSlot?(e.openBlock(),e.createElementBlock("div",Ha,Da)):e.createCommentVNode("",!0),t.btnlink?(e.openBlock(),e.createElementBlock("div",za,[e.createElementVNode("a",{href:t.btnlink,class:"btn me-0",innerHTML:t.btntext},null,8,Ra)])):e.createCommentVNode("",!0)])]),i.hasSecondarySlot?(e.openBlock(),e.createElementBlock("div",Pa,[e.createElementVNode("div",Fa,[e.renderSlot(a.$slots,"secondary")])])):e.createCommentVNode("",!0),i.hasSearchSlot?(e.openBlock(),e.createElementBlock("div",Ia,[e.createElementVNode("div",ja,[e.createElementVNode("div",Oa,[e.renderSlot(a.$slots,"search")])])])):e.createCommentVNode("",!0)]),i.hasAccountSlot?(e.openBlock(),e.createElementBlock("div",Ua,[e.createElementVNode("div",Wa,[e.createElementVNode("div",Ga,[i.hasLogoSlot?(e.openBlock(),e.createElementBlock("div",Ka,[e.renderSlot(a.$slots,"logo")])):(e.openBlock(),e.createElementBlock("div",Ya,[e.createElementVNode("a",Za,[e.createVNode(n,{id:t.logo,path:t.logopath,desc:t.logotext,class:"pb-0"},null,8,["id","path","desc"])])])),Xa])]),e.createElementVNode("div",Ja,[e.renderSlot(a.$slots,"account")])])):e.createCommentVNode("",!0),Qa],2)}const to=k(fa,[["render",eo]]),pr="",ao={name:"Stepper",props:{label:{type:String,required:!1},endlabel:{type:String,required:!1,default:"Complete"}}},oo={class:"container"},ro=["aria-label"],no={key:0,class:"h6 stepper__start"},io={class:"list-unstyled"},so={class:"h6 stepper__end"};function lo(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("div",oo,[e.createElementVNode("nav",{class:"stepper","aria-label":t.label?t.label:"Progress"},[t.label?(e.openBlock(),e.createElementBlock("span",no,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),e.createElementVNode("ol",io,[e.renderSlot(a.$slots,"default")]),e.createElementVNode("span",so,e.toDisplayString(t.endlabel),1)],8,ro)])}const co=k(ao,[["render",lo]]),mo={name:"Stepper",props:{url:{type:String,required:!1},status:{type:String,required:!1},current:{type:String,required:!1}}},uo=["href","aria-current"],ho={key:0,class:"visually-hidden"};function po(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("li",null,[e.createElementVNode("a",{href:t.url,class:e.normalizeClass(`${t.status?"bg-"+t.status:""}${typeof t.current<"u"?"current":""}`),"aria-current":typeof t.current<"u"},[e.createElementVNode("span",null,[e.renderSlot(a.$slots,"default")]),t.status?(e.openBlock(),e.createElementBlock("em",ho," - status: "+e.toDisplayString(t.status),1)):e.createCommentVNode("",!0)],10,uo)])}const fo=k(mo,[["render",po]]);/*!
|
|
87
|
-
* iamKey v3.7.9
|
|
87
|
+
* iamKey v3.7.9
|
|
88
88
|
* Copyright 2022-2023 iamproperty
|
|
89
89
|
*/const bo=function(a){const o=a.querySelectorAll(":scope > details");a.querySelectorAll(":scope > details > summary");let t=a.querySelector(":scope > .tabs__links");a.shadowRoot&&a.shadowRoot.querySelector(".tabs__links")&&(t=a.shadowRoot.querySelector(".tabs__links")),t||(t=document.createElement("div"),t.classList.add("tabs__links"),a.prepend(t)),o.forEach((r,s)=>{let i=r.querySelector(":scope > summary");i.classList.add("visually-hidden");let n=document.createElement("button");r.hasAttribute("id")&&(n=document.createElement("a"),n.setAttribute("href",`#${r.getAttribute("id")}`)),r.hasAttribute("open")&&n.setAttribute("aria-pressed",!0),n.innerHTML=`${i.innerText}`,n.classList.add("link"),n.setAttribute("data-index",s),n.setAttribute("tabindex","-1"),t.appendChild(n)})},yo=function(a){let o=a.querySelectorAll(":scope > details"),t=a.querySelectorAll(":scope > details > summary"),r=a.querySelectorAll(":scope .tabs__links > .link");a.shadowRoot&&(r=a.shadowRoot.querySelectorAll(".tabs__links > .link")),r.forEach(s=>{s.addEventListener("click",i=>{i.preventDefault(),r.forEach(n=>{let l=n==s;n.setAttribute("aria-pressed",l)}),o.forEach((n,l)=>{let d=s.getAttribute("data-index")==l;d?n.setAttribute("open",d):n.removeAttribute("open")}),s.hasAttribute("href")&&history.pushState(void 0,void 0,s.getAttribute("href")),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openTab",tabTitle:s.textContent})})}),t.forEach((s,i)=>{s.addEventListener("focus",n=>{r.forEach(l=>{l.classList.remove("focus")}),r[i].classList.add("focus")}),s.addEventListener("click",n=>{n.preventDefault(),r[i].click()})})},go=function(a){let o=a.querySelectorAll(":scope > details"),t=a.querySelectorAll(":scope > .tabs__links > button, .tabs__links > a");a.shadowRoot&&(t=a.shadowRoot.querySelectorAll(".tabs__links > button, .tabs__links > a")),location.hash&&a.querySelector(`.tabs__links [href="${location.hash}"]`)?(a.querySelector(`[href="${location.hash}"]`).setAttribute("open",!0),a.querySelector(`details[id="${location.hash.replace("#","")}"]`).setAttribute("open",!0)):a.querySelector("details[open]")||(o[0].setAttribute("open",!0),t[0].setAttribute("aria-pressed",!0))},_o=function(a){bo(a),yo(a),go(a)};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"tabs"});class ko extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const o=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${o}/css/core.min.css`,r=document.createElement("template");r.innerHTML=`
|
|
90
90
|
<style>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<slot></slot>
|
|
102
102
|
</div>
|
|
103
103
|
`,this.shadowRoot.appendChild(r.content.cloneNode(!0))}connectedCallback(){let o=this.classList.toString().replace("container","");this.shadowRoot.querySelector(".tabs").setAttribute("class",`tabs ${o}`),_o(this)}}const fr="";window.customElements.get("iam-tabs")||window.customElements.define("iam-tabs",ko);const wo={name:"Tabs"},Ao={ref:"wrapper"};function So(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("iam-tabs",Ao,[e.renderSlot(a.$slots,"default")],512)}const Eo=k(wo,[["render",So]]),Lo={name:"Tab",props:{title:{type:String,required:!0},lazy:{type:Boolean,required:!1}},data(){return{show:!this.lazy}},watch:{show(a,o){console.log(a)}}},$o={class:"tab"},vo=["innerHTML"];function qo(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("details",$o,[e.createElementVNode("summary",{innerHTML:t.title},null,8,vo),e.renderSlot(a.$slots,"default")])}const xo=k(Lo,[["render",qo]]);let K=V.props;K.fields.required=!1;const No={components:{Table:V,Input:q},data(){return{itemsData:[...this.items]}},methods:{submitForm:function(a){console.log(this);const o=new FormData(a.target);let t=new Date;const r=t.getFullYear();let s=t.getMonth()+1,i=t.getDate();i<10&&(i="0"+i),s<10&&(s="0"+s),t=i+"/"+s+"/"+r,this.itemsData.unshift({date_added:t,user:o.get("user"),note:o.get("addNote")}),this.$emit("formSubmitted",a)}},name:"NoteFeed",props:{user:{type:String,required:!0},...K,title:{type:String,required:!1},method:{type:String,required:!1,default:"post"},action:{type:String,required:!1}}},Bo={class:"container note-feed mb-2"},To=["innerHTML"],Co=["action","method"],Vo=["value"],Mo=e.createElementVNode("button",{class:"btn btn-tertiary"},"Submit note",-1);function Ho(a,o,t,r,s,i){const n=e.resolveComponent("Table"),l=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",Bo,[t.title?(e.openBlock(),e.createElementBlock("span",{key:0,class:"h3",innerHTML:t.title},null,8,To)):e.createCommentVNode("",!0),e.createVNode(n,e.mergeProps({fields:[{key:"date_added"},{key:"user"},{key:"note"}],items:s.itemsData},a.$props,{class:"mb-0"}),null,16,["items"]),e.createElementVNode("form",{action:t.action,method:t.method,onSubmit:o[0]||(o[0]=e.withModifiers(d=>i.submitForm(...arguments),["prevent"]))},[e.createElementVNode("input",{type:"hidden",value:t.user,name:"user"},null,8,Vo),e.createVNode(l,{id:"addNote",type:"textarea",label:"Add note",required:"",class:"mw-100"}),Mo],40,Co)])}const Do=k(No,[["render",Ho]]);/*!
|
|
104
|
-
* iamKey v3.7.9
|
|
104
|
+
* iamKey v3.7.9
|
|
105
105
|
* Copyright 2022-2023 iamproperty
|
|
106
106
|
*/function zo(a,o){function t(r,s){let i=!1,n=s.getAttribute("name");n.includes("[]")&&(n=n.replace("[]",`[${s.value}]`));let l=r.querySelector(`[data-name="${n}"]`);l&&s.getAttribute("type")=="checkbox"&&(i=!0);let d=s.getAttribute("data-filter-text");if(l||(l=document.createElement("button"),r.appendChild(l)),l.setAttribute("type","button"),l.classList.add("filter"),l.setAttribute("data-name",n),l.innerHTML=d.replace("$value",s.value),(!s.value||i)&&l.remove(),s.parentNode.closest("[data-filter-text]")){let c=s.parentNode.closest("[data-filter-text]"),u=!0;if(n="",c.querySelectorAll("input").forEach((p,m)=>{let h=p.getAttribute("name");if(n+=`${m!=0?",":""}${h}`,r.querySelector(`[data-name="${h}"]`)&&r.querySelector(`[data-name="${h}"]`).remove(),p.value){let f=document.createElement("button");f.setAttribute("type","button"),f.classList.add("filter"),f.setAttribute("data-name",h),f.innerHTML=d.replace("$value",p.value),r.appendChild(f)}else u=!1}),r.querySelector(`[data-name="${n}"]`)&&r.querySelector(`[data-name="${n}"]`).remove(),u){let p=c.getAttribute("data-filter-text");c.querySelectorAll("input").forEach((h,f)=>{let _=h.getAttribute("name");r.querySelector(`[data-name="${_}"]`)&&r.querySelector(`[data-name="${_}"]`).remove(),p=p.replace(`$${f+1}`,h.value)});let m=document.createElement("button");m.setAttribute("type","button"),m.classList.add("filter"),m.setAttribute("data-name",n),m.innerHTML=p,r.appendChild(m)}}}Array.from(a.querySelectorAll('input[type="checkbox"]:checked')).forEach((r,s)=>{t(o,r)}),a.addEventListener("change",function(r){if(r&&r.target instanceof HTMLElement&&r.target.closest("input[data-filter-text]")){let s=r.target.closest("input[data-filter-text]");t(o,s)}},!1),o.addEventListener("click",function(r){if(r&&r.target instanceof HTMLElement&&r.target.closest(".filter")){let n=r.target.closest(".filter"),l=n.getAttribute("data-name").split(",");for(var s=0;s<l.length;s++){let d=l[s],c=`[name="${d}"]`;d.match(/\[(.*)\]/)&&(d.replace(/\[(.*)\]/,"[]"),c=`[value="${d.replace(/.*\[(.*)\]/,"$1")}"]`);let u=a.querySelectorAll(c);for(var i=0;i<u.length;i++){let p=u[i];if(p.getAttribute("type")!="radio"&&p.getAttribute("type")!="checkbox")p.value="";else{p.checked=!1;var r=new Event("force");p.closest("form").dispatchEvent(r)}}}n.remove()}},!1)}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"Applied Filters"});class Ro extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const o=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${o}/css/core.min.css`;let r=this.classList.toString();const s=document.createElement("template");s.innerHTML=`
|
|
107
107
|
<style>
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
<div class="applied-filters ${r}"></div>
|
|
114
114
|
<slot></slot>
|
|
115
115
|
`,this.shadowRoot.appendChild(s.content.cloneNode(!0))}connectedCallback(){zo(this,this.shadowRoot.querySelector(".applied-filters"))}}window.customElements.get("iam-applied-filters")||window.customElements.define("iam-applied-filters",Ro);const Po={name:"Header"};function Fo(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("iam-applied-filters",null,[e.renderSlot(a.$slots,"default")])}const Io=k(Po,[["render",Fo]]);/*!
|
|
116
|
-
* iamKey v3.7.9
|
|
116
|
+
* iamKey v3.7.9
|
|
117
117
|
* Copyright 2022-2023 iamproperty
|
|
118
118
|
*/function jo(a,o){Oo(a,o)}function Oo(a,o){var t;o.addEventListener("keyup",r=>{clearTimeout(t),t=setTimeout(function(){Y(a,o.value)},500)}),o.addEventListener("change",r=>{clearTimeout(t),Y(a,o.value)})}const Y=function(a,o){Array.from(a.querySelectorAll(":scope > li")).forEach((t,r)=>{let s=t.textContent.toLowerCase();t.classList.add("d-none"),s.includes(o.toLowerCase())&&t.classList.remove("d-none")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"Filtered list",value:o})};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"filterlist"});class Uo extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const o=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",t=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${o}/css/core.min.css`,r=document.createElement("template");r.innerHTML=`
|
|
119
119
|
<style>
|
|
@@ -155,7 +155,7 @@
|
|
|
155
155
|
${this.hasAttribute("data-dismiss")?'<div class="notification__dismiss"><button data-dismiss-button>Dismiss</button></div>':""}
|
|
156
156
|
</div>
|
|
157
157
|
`,this.shadowRoot.appendChild(i.content.cloneNode(!0))}connectedCallback(){const o=this.shadowRoot.querySelector("[data-dismiss-button]"),t=this.hasAttribute("data-status")?this.getAttribute("data-status"):"white";this.hasAttribute("data-type")?this.classList.add(`bg-${t}`):this.classList.add(`colour-${t}`);const r=this;if(!this.querySelector("i"))switch(t){case"danger":this.innerHTML+='<i class="fa-solid fa-circle-exclamation" aria-hidden="true" slot="icon"></i>';break;case"warning":this.innerHTML+='<i class="fa-solid fa-triangle-exclamation" aria-hidden="true" slot="icon"></i>';break;case"success":this.innerHTML+='<i class="fa-solid fa-check-circle" aria-hidden="true" slot="icon"></i>';break;default:this.innerHTML+='<i class="fa-solid fa-circle-info" aria-hidden="true" slot="icon"></i>'}Yo(r),o&&o.addEventListener("click",function(s){M(r)},!1)}}const Jo={name:"Notification",props:{},created(){this.$nextTick(function(){window.customElements.get("iam-notification")||window.customElements.define("iam-notification",Xo)})}};function Qo(a,o,t,r,s,i){return e.openBlock(),e.createElementBlock("iam-notification",null,[e.renderSlot(a.$slots,"default")])}const er=k(Jo,[["render",Qo]]);/*!
|
|
158
|
-
* iamKey v3.7.9
|
|
158
|
+
* iamKey v3.7.9
|
|
159
159
|
* Copyright 2022-2023 iamproperty
|
|
160
160
|
*/window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"Card"});class tr extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),this.querySelector('[class*="fa-"]')&&this.classList.add("card--has-icon");let o=this.classList.toString();const t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",r=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${t}/css/core.min.css`,s=document.createElement("template");s.innerHTML=`
|
|
161
161
|
<style>
|
|
@@ -173,4 +173,4 @@
|
|
|
173
173
|
</div>
|
|
174
174
|
${this.hasAttribute("data-cta")?`<div class="card__footer"><span class="link">${this.getAttribute("data-cta")}</span></div>`:""}
|
|
175
175
|
</div>
|
|
176
|
-
`,this.shadowRoot.appendChild(s.content.cloneNode(!0))}connectedCallback(){this.classList.add("loaded");const o=this.parentNode.closest("a, button, label"),t=this.shadowRoot.querySelector(".card");o.setAttribute("tabindex","-1"),o.matches("label[for]")&&(document.getElementById(o.getAttribute("for")).checked?t.classList.add("checked"):t.classList.remove("checked")),t.addEventListener("click",r=>{if(o.matches("label[for]")){r.stopPropagation(),r.preventDefault();const s=document.getElementById(o.getAttribute("for")),i=s.getAttribute("name"),n=s.getAttribute("id");Array.from(document.querySelectorAll(`[name="${i}"]:not([id="${n}"])`)).forEach((l,d)=>{document.querySelector(`[for="${l.getAttribute("id")}"] iam-card`).dispatchEvent(new Event("inactive"))}),o.click(),s.checked?t.classList.add("checked"):t.classList.remove("checked")}}),this.addEventListener("inactive",r=>{t.classList.remove("checked")}),t.addEventListener("keydown",r=>{switch(r.keyCode){case 32:case 13:if(o.matches("label[for]")){r.stopPropagation(),r.preventDefault();const s=document.getElementById(o.getAttribute("for")),i=s.getAttribute("name"),n=s.getAttribute("id");Array.from(document.querySelectorAll(`[name="${i}"]:not([id="${n}"])`)).forEach((l,d)=>{document.querySelector(`[for="${l.getAttribute("id")}"] iam-card`).dispatchEvent(new Event("inactive"))}),o.click(),s.checked?t.classList.add("checked"):t.classList.remove("checked")}else o.click();break}})}static get observedAttributes(){return["data-total","class"]}attributeChangedCallback(o,t,r){switch(o){case"data-total":{this.shadowRoot.querySelector(".card__total").innerHTML=r;break}case"class":{let s=this.classList.toString();this.querySelector('[class*="fa-"]')&&(s+=" card--has-icon"),this.shadowRoot.querySelector(".card").setAttribute("class",`card ${s}`);break}}}}const ar=Object.freeze(Object.defineProperty({__proto__:null,default:tr},Symbol.toStringTag,{value:"Module"}));y.Accordion=tt,y.AccordionItem=it,y.AppliedFilters=Io,y.Banner=ft,y.Card=G,y.Carousel=xt,y.FileUpload=Ye,y.Filterlist=Ko,y.Header=Mt,y.Input=q,y.Logo=P,y.Nav=to,y.NoteFeed=Do,y.Notification=er,y.PropertySearchbar=ha,y.Step=fo,y.Stepper=co,y.Tab=xo,y.Table=V,y.Tabs=Eo,y.Testimonial=Jt,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|
|
176
|
+
`,this.shadowRoot.appendChild(s.content.cloneNode(!0))}connectedCallback(){this.classList.add("loaded");const o=this.parentNode.closest("a, button, label"),t=this.shadowRoot.querySelector(".card");o.setAttribute("tabindex","-1"),o.matches("label[for]")&&(document.getElementById(o.getAttribute("for")).checked?t.classList.add("checked"):t.classList.remove("checked")),t.addEventListener("click",r=>{if(o.matches("label[for]")){r.stopPropagation(),r.preventDefault();const s=document.getElementById(o.getAttribute("for")),i=s.getAttribute("name"),n=s.getAttribute("id");Array.from(document.querySelectorAll(`[name="${i}"][type="radio"]:not([id="${n}"])`)).forEach((l,d)=>{document.querySelector(`[for="${l.getAttribute("id")}"] iam-card`).dispatchEvent(new Event("inactive"))}),o.click(),s.checked?t.classList.add("checked"):t.classList.remove("checked")}}),this.addEventListener("inactive",r=>{t.classList.remove("checked")}),t.addEventListener("keydown",r=>{switch(r.keyCode){case 32:case 13:if(o.matches("label[for]")){r.stopPropagation(),r.preventDefault();const s=document.getElementById(o.getAttribute("for")),i=s.getAttribute("name"),n=s.getAttribute("id");Array.from(document.querySelectorAll(`[name="${i}"]:not([id="${n}"])`)).forEach((l,d)=>{document.querySelector(`[for="${l.getAttribute("id")}"] iam-card`).dispatchEvent(new Event("inactive"))}),o.click(),s.checked?t.classList.add("checked"):t.classList.remove("checked")}else o.click();break}})}static get observedAttributes(){return["data-total","class"]}attributeChangedCallback(o,t,r){switch(o){case"data-total":{this.shadowRoot.querySelector(".card__total").innerHTML=r;break}case"class":{let s=this.classList.toString();this.querySelector('[class*="fa-"]')&&(s+=" card--has-icon"),this.shadowRoot.querySelector(".card").setAttribute("class",`card ${s}`);break}}}}const ar=Object.freeze(Object.defineProperty({__proto__:null,default:tr},Symbol.toStringTag,{value:"Module"}));y.Accordion=tt,y.AccordionItem=it,y.AppliedFilters=Io,y.Banner=ft,y.Card=G,y.Carousel=xt,y.FileUpload=Ye,y.Filterlist=Ko,y.Header=Mt,y.Input=q,y.Logo=P,y.Nav=to,y.NoteFeed=Do,y.Notification=er,y.PropertySearchbar=ha,y.Step=fo,y.Stepper=co,y.Tab=xo,y.Table=V,y.Tabs=Eo,y.Testimonial=Jt,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"name": "iamproperty"
|
|
6
6
|
},
|
|
7
7
|
"private": false,
|
|
8
|
-
"version": "3.7.9
|
|
8
|
+
"version": "3.7.9",
|
|
9
9
|
"scripts": {
|
|
10
10
|
"bootstrap": "copyfiles -u 2 node_modules/bootstrap/**/* assets/bootstrap",
|
|
11
11
|
"dev": "npm run copy && node local_modules/delete-assets.js && vite --host",
|