@iamproperty/components 3.9.0-beta-1 → 4.1.0-beta

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.
Files changed (98) hide show
  1. package/assets/css/components/actionbar-global.css +1 -1
  2. package/assets/css/components/actionbar-global.css.map +1 -1
  3. package/assets/css/components/actionbar.css +1 -1
  4. package/assets/css/components/actionbar.css.map +1 -1
  5. package/assets/css/components/admin-panel.css +1 -1
  6. package/assets/css/components/admin-panel.css.map +1 -1
  7. package/assets/css/components/card-global.css +1 -1
  8. package/assets/css/components/card-global.css.map +1 -1
  9. package/assets/css/components/card.css +1 -1
  10. package/assets/css/components/card.css.map +1 -1
  11. package/assets/css/components/charts.css.map +1 -1
  12. package/assets/css/components/collapsible-side.css +1 -0
  13. package/assets/css/components/collapsible-side.css.map +1 -0
  14. package/assets/css/components/dialog.css +1 -1
  15. package/assets/css/components/dialog.css.map +1 -1
  16. package/assets/css/components/fileupload.css.map +1 -1
  17. package/assets/css/components/header.css.map +1 -1
  18. package/assets/css/components/lists.css.map +1 -1
  19. package/assets/css/components/nav-global.css +1 -1
  20. package/assets/css/components/nav-global.css.map +1 -1
  21. package/assets/css/components/nav.css.map +1 -1
  22. package/assets/css/components/nav.old.css.map +1 -1
  23. package/assets/css/components/notification.css.map +1 -1
  24. package/assets/css/components/pagination.css.map +1 -1
  25. package/assets/css/components/property-searchbar.css.map +1 -1
  26. package/assets/css/components/table.css +1 -1
  27. package/assets/css/components/table.css.map +1 -1
  28. package/assets/css/core.min.css +1 -1
  29. package/assets/css/core.min.css.map +1 -1
  30. package/assets/css/style.min.css +1 -1
  31. package/assets/css/style.min.css.map +1 -1
  32. package/assets/js/components/accordion/accordion.component.min.js +2 -2
  33. package/assets/js/components/actionbar/actionbar.component.js +45 -0
  34. package/assets/js/components/actionbar/actionbar.component.min.js +4 -4
  35. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  36. package/assets/js/components/applied-filters/applied-filters.component.min.js +3 -3
  37. package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
  38. package/assets/js/components/card/card.component.js +9 -1
  39. package/assets/js/components/card/card.component.min.js +7 -5
  40. package/assets/js/components/card/card.component.min.js.map +1 -1
  41. package/assets/js/components/collapsible-side/collapsible-side.component.js +96 -0
  42. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +27 -0
  43. package/assets/js/components/collapsible-side/collapsible-side.component.min.js.map +1 -0
  44. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  45. package/assets/js/components/header/header.component.min.js +1 -1
  46. package/assets/js/components/nav/nav.component.min.js +1 -1
  47. package/assets/js/components/notification/notification.component.min.js +1 -1
  48. package/assets/js/components/pagination/pagination.component.min.js +1 -1
  49. package/assets/js/components/table/table.component.js +3 -0
  50. package/assets/js/components/table/table.component.min.js +10 -10
  51. package/assets/js/components/table/table.component.min.js.map +1 -1
  52. package/assets/js/components/tabs/tabs.component.min.js +1 -1
  53. package/assets/js/dynamic.min.js +3 -3
  54. package/assets/js/dynamic.min.js.map +1 -1
  55. package/assets/js/modules/applied-filters.js +3 -3
  56. package/assets/js/modules/dialogs.js +12 -0
  57. package/assets/js/modules/helpers.js +0 -13
  58. package/assets/js/modules/table.js +68 -13
  59. package/assets/js/scripts.bundle.js +15 -13
  60. package/assets/js/scripts.bundle.js.map +1 -1
  61. package/assets/js/scripts.bundle.min.js +2 -2
  62. package/assets/js/scripts.bundle.min.js.map +1 -1
  63. package/assets/sass/_corefiles.scss +0 -1
  64. package/assets/sass/_func.scss +1 -0
  65. package/assets/sass/_functions/mixins.scss +22 -0
  66. package/assets/sass/components/actionbar-global.scss +69 -7
  67. package/assets/sass/components/actionbar.scss +13 -7
  68. package/assets/sass/components/admin-panel.scss +47 -2
  69. package/assets/sass/components/card-global.scss +46 -1
  70. package/assets/sass/components/card.scss +14 -12
  71. package/assets/sass/components/charts.scss +1 -1
  72. package/assets/sass/components/collapsible-side.scss +327 -0
  73. package/assets/sass/components/dialog.scss +6 -23
  74. package/assets/sass/components/fileupload.scss +1 -1
  75. package/assets/sass/components/nav-global.scss +26 -9
  76. package/assets/sass/components/nav.scss +9 -10
  77. package/assets/sass/components/notification.scss +1 -1
  78. package/assets/sass/components/table.scss +85 -4
  79. package/assets/sass/core.scss +1 -0
  80. package/assets/sass/error.scss +2 -1
  81. package/assets/sass/foundations/root.scss +3 -3
  82. package/assets/sass/main.scss +4 -3
  83. package/assets/ts/components/actionbar/actionbar.component.ts +67 -2
  84. package/assets/ts/components/card/card.component.ts +12 -2
  85. package/assets/ts/components/collapsible-side/README.md +38 -0
  86. package/assets/ts/components/collapsible-side/collapsible-side.component.ts +134 -0
  87. package/assets/ts/components/table/table.component.ts +4 -0
  88. package/assets/ts/modules/applied-filters.ts +6 -5
  89. package/assets/ts/modules/dialogs.ts +17 -0
  90. package/assets/ts/modules/helpers.ts +0 -17
  91. package/assets/ts/modules/table.ts +82 -13
  92. package/dist/components.es.js +1414 -836
  93. package/dist/components.umd.js +134 -38
  94. package/dist/style.css +1 -1
  95. package/package.json +1 -1
  96. package/src/components/CollapsibleSideMenu/CollapsibleSideMenu.vue +20 -0
  97. package/src/components/CollapsibleSideMenu/README.md +23 -0
  98. package/src/index.js +8 -0
@@ -1,10 +1,10 @@
1
- import { openBlock as d, createElementBlock as u, normalizeClass as L, createElementVNode as f, toDisplayString as q, createCommentVNode as _, Fragment as H, renderList as M, renderSlot as A, withDirectives as R, mergeProps as C, vModelDynamic as G, vModelText as mt, vModelSelect as ht, createTextVNode as ft, resolveComponent as I, createVNode as T, withModifiers as pt } from "vue";
2
- const w = (e, a) => {
1
+ import { openBlock as h, createElementBlock as p, normalizeClass as k, createElementVNode as g, toDisplayString as x, createCommentVNode as A, Fragment as M, renderList as H, renderSlot as S, withDirectives as D, mergeProps as N, vModelDynamic as Y, vModelText as pt, vModelSelect as bt, createTextVNode as ft, resolveComponent as z, createVNode as C, withModifiers as gt } from "vue";
2
+ const _ = (e, a) => {
3
3
  const t = e.__vccOpts || e;
4
- for (const [i, o] of a)
5
- t[i] = o;
4
+ for (const [s, o] of a)
5
+ t[s] = o;
6
6
  return t;
7
- }, bt = {
7
+ }, yt = {
8
8
  name: "Logo",
9
9
  props: {
10
10
  id: {
@@ -29,427 +29,462 @@ const w = (e, a) => {
29
29
  return "brand brand--" + this.id;
30
30
  }
31
31
  }
32
- }, yt = ["xlink:href"], gt = ["innerHTML"];
33
- function vt(e, a, t, i, o, s) {
34
- return d(), u("div", {
35
- class: L(s.className)
32
+ }, vt = ["xlink:href"], wt = ["innerHTML"];
33
+ function At(e, a, t, s, o, i) {
34
+ return h(), p("div", {
35
+ class: k(i.className)
36
36
  }, [
37
- (d(), u("svg", null, [
38
- f("title", null, "iam " + q(t.id), 1),
39
- f("use", {
40
- "xlink:href": t.path + s.src
41
- }, null, 8, yt)
37
+ (h(), p("svg", null, [
38
+ g("title", null, "iam " + x(t.id), 1),
39
+ g("use", {
40
+ "xlink:href": t.path + i.src
41
+ }, null, 8, vt)
42
42
  ])),
43
- t.desc ? (d(), u("span", {
43
+ t.desc ? (h(), p("span", {
44
44
  key: 0,
45
45
  innerHTML: t.desc
46
- }, null, 8, gt)) : _("", !0)
46
+ }, null, 8, wt)) : A("", !0)
47
47
  ], 2);
48
48
  }
49
- const Ar = /* @__PURE__ */ w(bt, [["render", vt]]);
49
+ const Gr = /* @__PURE__ */ _(yt, [["render", At]]);
50
50
  /*!
51
- * iamKey v3.9.0-beta-1
51
+ * iamKey v4.1.0-beta
52
52
  * Copyright 2022-2023 iamproperty
53
53
  */
54
54
  const _t = function(e) {
55
55
  return typeof e != "string" ? !1 : !isNaN(e) && !isNaN(parseFloat(e));
56
- }, At = (e, a) => String(e).padStart(a, "0"), wt = (e) => e.charAt(0).toUpperCase() + e.slice(1), F = function(e, a) {
56
+ }, Lt = (e, a) => String(e).padStart(a, "0"), St = (e) => e.charAt(0).toUpperCase() + e.slice(1), B = function(e, a) {
57
57
  if (!e.getAttribute("data-pages"))
58
58
  return !1;
59
59
  e.getAttribute("data-page") || e.setAttribute("data-page", 1);
60
- let t = e.getAttribute("data-page"), i = e.getAttribute("data-pages"), o = e.getAttribute("data-total"), s = e.getAttribute("data-show"), r = e.getAttribute("data-increment");
61
- if (i <= 1)
60
+ let t = e.getAttribute("data-page"), s = e.getAttribute("data-pages"), o = e.getAttribute("data-total"), i = e.getAttribute("data-show"), r = e.getAttribute("data-increment");
61
+ if (s <= 1)
62
62
  return a.innerHTML = "", !1;
63
- let l = "";
64
- for (let c = 1; c <= i; c++)
65
- c == t ? l += `<li class="page-item active" aria-current="page"><span class="page-link">${c}</span></li>` : l += `<li class="page-item"><a href="?page=${c}" class="page-link" data-page="${c}">${c}</a></li>`;
63
+ let n = "";
64
+ for (let c = 1; c <= s; c++)
65
+ c == t ? n += `<li class="page-item active" aria-current="page"><span class="page-link">${c}</span></li>` : n += `<li class="page-item"><a href="?page=${c}" class="page-link" data-page="${c}">${c}</a></li>`;
66
66
  return a.innerHTML = `<ul class="pagination mb-0 d-none d-sm-flex">
67
67
  ${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>`}
68
- ${l}
69
- ${t == i ? '<li class="page-item disabled"><span class="page-link">Next</span></li>' : `<li class="page-item"><a href="?page=${parseInt(t) + 1}" class="page-link" data-page="${parseInt(t) + 1}">Next</a></li>`}
68
+ ${n}
69
+ ${t == s ? '<li class="page-item disabled"><span class="page-link">Next</span></li>' : `<li class="page-item"><a href="?page=${parseInt(t) + 1}" class="page-link" data-page="${parseInt(t) + 1}">Next</a></li>`}
70
70
  </ul>`, a.innerHTML += `<div class="d-sm-none text-center">
71
- <span class="d-block pb-2">You've viewed ${s} of ${o} results</span>
72
- <a href="?show=${parseInt(s) + parseInt(r)}" class="btn btn-primary w-100 m-0" data-show="${parseInt(s) + parseInt(r)}">Load more results</a>
71
+ <span class="d-block pb-2">You've viewed ${i} of ${o} results</span>
72
+ <a href="?show=${parseInt(i) + parseInt(r)}" class="btn btn-primary w-100 m-0" data-show="${parseInt(i) + parseInt(r)}">Load more results</a>
73
73
  </div>`, !0;
74
74
  };
75
- var Lt = function(e, a, t, i) {
76
- function o(s) {
77
- return s instanceof t ? s : new t(function(r) {
78
- r(s);
75
+ var kt = function(e, a, t, s) {
76
+ function o(i) {
77
+ return i instanceof t ? i : new t(function(r) {
78
+ r(i);
79
79
  });
80
80
  }
81
- return new (t || (t = Promise))(function(s, r) {
82
- function l(h) {
81
+ return new (t || (t = Promise))(function(i, r) {
82
+ function n(m) {
83
83
  try {
84
- n(i.next(h));
85
- } catch (p) {
86
- r(p);
84
+ l(s.next(m));
85
+ } catch (d) {
86
+ r(d);
87
87
  }
88
88
  }
89
- function c(h) {
89
+ function c(m) {
90
90
  try {
91
- n(i.throw(h));
92
- } catch (p) {
93
- r(p);
91
+ l(s.throw(m));
92
+ } catch (d) {
93
+ r(d);
94
94
  }
95
95
  }
96
- function n(h) {
97
- h.done ? s(h.value) : o(h.value).then(l, c);
96
+ function l(m) {
97
+ m.done ? i(m.value) : o(m.value).then(n, c);
98
98
  }
99
- n((i = i.apply(e, a || [])).next());
99
+ l((s = s.apply(e, a || [])).next());
100
100
  });
101
101
  };
102
- const tt = (e) => {
102
+ const at = (e) => {
103
103
  const a = Array.from(e.querySelectorAll("thead th"));
104
- Array.from(e.querySelectorAll("tbody tr")).forEach((t, i) => {
105
- const o = Array.from(t.querySelectorAll("th, td")), s = ["0", "low", "medium", "high", "unknown", "n/a", "pending", "verified", "due", "overdue", "incomplete", "complete", "completed", "approval required", "upcoming", "requires approval", "to do", "on track", "not started", "warning", "error"];
106
- o.forEach((r, l) => {
107
- const c = a[l];
104
+ Array.from(e.querySelectorAll("tbody tr")).forEach((t, s) => {
105
+ const o = Array.from(t.querySelectorAll("th, td")), i = ["0", "low", "medium", "high", "unknown", "n/a", "pending", "verified", "due", "overdue", "incomplete", "complete", "completed", "approval required", "upcoming", "requires approval", "to do", "on track", "not started", "warning", "error"];
106
+ o.forEach((r, n) => {
107
+ const c = a[n];
108
108
  if (typeof c < "u") {
109
- let n = document.createElement("div");
110
- n.innerHTML = c.innerHTML;
111
- let h = n.textContent || n.innerText || "";
112
- r.setAttribute("data-label", h), c.hasAttribute("data-td-class") && r.setAttribute("class", c.getAttribute("data-td-class")), c.hasAttribute("data-format") && (r.setAttribute("data-format", c.getAttribute("data-format")), r.innerHTML = Y(c.getAttribute("data-format"), r.textContent.trim())), s.includes(r.textContent.trim().toLowerCase()) && r.setAttribute("data-content", r.textContent.trim().toLowerCase());
109
+ let l = document.createElement("div");
110
+ l.innerHTML = c.innerHTML;
111
+ let m = l.textContent || l.innerText || "";
112
+ r.setAttribute("data-label", m), c.hasAttribute("data-td-class") && r.setAttribute("class", c.getAttribute("data-td-class")), c.hasAttribute("data-format") && (r.setAttribute("data-format", c.getAttribute("data-format")), r.innerHTML = K(c.getAttribute("data-format"), r.textContent.trim())), i.includes(r.textContent.trim().toLowerCase()) && r.setAttribute("data-content", r.textContent.trim().toLowerCase());
113
113
  }
114
114
  });
115
115
  });
116
- }, St = (e) => {
116
+ }, qt = (e) => {
117
117
  let a = 0;
118
- return Array.from(e.querySelectorAll("tbody tr")).forEach((t, i) => {
119
- let o = window.getComputedStyle(document.querySelector("html")), s = t.querySelector(":scope > *:last-child > *:first-child");
120
- if (s) {
121
- s.classList.add("text-nowrap");
122
- let r = s.offsetWidth / parseFloat(o.fontSize);
118
+ return Array.from(e.querySelectorAll("tbody tr")).forEach((t, s) => {
119
+ let o = window.getComputedStyle(document.querySelector("html")), i = t.querySelector(":scope > *:last-child > *:first-child");
120
+ if (i) {
121
+ i.classList.add("text-nowrap");
122
+ let r = i.offsetWidth / parseFloat(o.fontSize);
123
123
  r += 1.7, a = a > r ? a : r;
124
124
  }
125
125
  }), a;
126
- }, kt = (e) => {
126
+ }, $t = (e) => {
127
127
  if (e.closest(".table--fullwidth") || e.querySelectorAll("thead tr th").length < 4)
128
128
  return !1;
129
129
  Array.from(e.querySelectorAll("tbody tr")).forEach((a, t) => {
130
- let i = a.querySelector(":scope > :is(td,th):first-child"), o = i.textContent;
130
+ let s = a.querySelector(":scope > :is(td,th):first-child"), o = s.textContent;
131
131
  if (o != "")
132
- i.innerHTML = `<span class="td__content">${o}</span><button type="button" class="d-none">${o}</button>`;
132
+ s.innerHTML = `<span class="td__content">${o}</span><button type="button" class="d-none">${o}</button>`;
133
133
  else {
134
- let s = a.querySelector(":scope > :is(td,th):nth-child(2)"), r = s.textContent;
135
- s.innerHTML = `<span class="td__content">${r}</span><button type="button" class="d-none">${r}</button>`;
134
+ let i = a.querySelector(":scope > :is(td,th):nth-child(2)"), r = i.textContent;
135
+ i.innerHTML = `<span class="td__content">${r}</span><button type="button" class="d-none">${r}</button>`;
136
136
  }
137
137
  });
138
- }, qt = (e) => {
138
+ }, xt = (e) => {
139
139
  e.addEventListener("click", (a) => {
140
140
  if (a && a.target instanceof HTMLElement && a.target.closest("tr > :is(td,th):first-child button")) {
141
- let t = a.target.closest("tr > :is(td,th):first-child button"), i = t.parentNode.closest("tr");
142
- i.getAttribute("data-view") == "full" ? i.setAttribute("data-view", "default") : i.setAttribute("data-view", "full"), t.blur();
141
+ let t = a.target.closest("tr > :is(td,th):first-child button"), s = t.parentNode.closest("tr");
142
+ s.getAttribute("data-view") == "full" ? s.setAttribute("data-view", "default") : s.setAttribute("data-view", "full"), t.blur();
143
143
  }
144
144
  });
145
- }, et = (e, a) => {
145
+ }, rt = (e, a) => {
146
146
  let t = a.querySelector("[data-search]");
147
147
  if (!t)
148
148
  return !1;
149
- const i = t.getAttribute("id"), o = t.getAttribute("data-search").split(",");
150
- let s = t.parentNode, r = {};
151
- o.forEach((l, c) => {
152
- Array.from(e.querySelectorAll('td[data-label="' + l.trim() + '"]')).forEach((n, h) => {
153
- n.querySelector(".td__content") ? r[n.querySelector(".td__content").textContent] = n.querySelector(".td__content").textContent : r[n.textContent] = n.textContent;
149
+ const s = t.getAttribute("id"), o = t.getAttribute("data-search").split(",");
150
+ let i = t.parentNode, r = {};
151
+ o.forEach((n, c) => {
152
+ Array.from(e.querySelectorAll('td[data-label="' + n.trim() + '"]')).forEach((l, m) => {
153
+ l.querySelector(".td__content") ? r[l.querySelector(".td__content").textContent] = l.querySelector(".td__content").textContent : r[l.textContent] = l.textContent;
154
154
  });
155
- }), t.setAttribute("list", `${i}_list`), t.setAttribute("autocomplete", "off"), s.querySelector("datalist") || (s.innerHTML += `<datalist id="${i}_list"></datalist>`), s.querySelector("datalist").innerHTML = `${Object.keys(r).map((l) => `<option value="${l}"></option>`).join("")}`;
156
- }, $t = (e, a, t, i, o) => {
157
- var s;
158
- let r = function(n = !1) {
159
- if (a.hasAttribute("data-ajax")) {
160
- if (!n) {
161
- let h = a.querySelector("[data-pagination]");
162
- h.value = 1, i.setAttribute("data-page", 1);
155
+ }), t.setAttribute("list", `${s}_list`), t.setAttribute("autocomplete", "off"), i.querySelector("datalist") || (i.innerHTML += `<datalist id="${s}_list"></datalist>`), i.querySelector("datalist").innerHTML = `${Object.keys(r).map((n) => `<option value="${n}"></option>`).join("")}`;
156
+ }, Et = (e, a, t, s, o) => {
157
+ var i;
158
+ let r = function(l, m = !1) {
159
+ if (a.classList.contains("processing"))
160
+ return !1;
161
+ if (l.type == "submit" && (a.classList.add("processing"), Array.from(a.querySelectorAll("[data-duplicate]")).forEach((d, f) => {
162
+ const b = d.getAttribute("data-duplicate"), u = document.getElementById(b), v = document.querySelector(`[for="${b}"] iam-card`);
163
+ if (u.checked != d.checked)
164
+ if (v) {
165
+ let q = new Event("click");
166
+ v.dispatchEvent(q);
167
+ } else
168
+ u.checked = d.checked;
169
+ }), a.classList.remove("processing")), a.hasAttribute("data-ajax")) {
170
+ if (!m) {
171
+ let d = a.querySelector("[data-pagination]");
172
+ d.value = 1, s.setAttribute("data-page", 1);
163
173
  }
164
- it(e, a, t, i);
174
+ ot(e, a, t, s);
165
175
  } else
166
- a.hasAttribute("data-submit") ? a.submit() : (K(e, a, i), F(i, t), B(e, a));
176
+ a.hasAttribute("data-submit") ? a.submit() : (G(e, a, s), B(s, t), F(e, a));
167
177
  if (a.hasAttribute("data-ajax-post")) {
168
- let h = new FormData(a), p = new URLSearchParams(h).toString();
169
- const y = new XMLHttpRequest();
170
- y.open("GET", `${window.location.href}?ajax=true&${p}`), y.send();
178
+ let d = new FormData(a), f = new URLSearchParams(d).toString();
179
+ const b = new XMLHttpRequest();
180
+ b.open("GET", `${window.location.href}?ajax=true&${f}`), b.send();
171
181
  }
172
182
  };
173
- a.addEventListener("keyup", (n) => {
174
- clearTimeout(s), n && n.target instanceof HTMLElement && n.target.closest("[data-search]") && (s = setTimeout(function() {
175
- r();
183
+ a.addEventListener("keyup", (l) => {
184
+ clearTimeout(i), l && l.target instanceof HTMLElement && l.target.closest("[data-search]") && (i = setTimeout(function() {
185
+ r(l);
176
186
  }, 500));
177
- }), a.addEventListener("change", (n) => {
178
- clearTimeout(s), n && n.target instanceof HTMLElement && n.target.closest("[data-sort]") && (a.hasAttribute("data-submit") || Q(e, a, o), r()), n && n.target instanceof HTMLElement && n.target.closest("[data-search]") && r(), n && n.target instanceof HTMLElement && n.target.closest("[data-filter][data-no-ajax]") ? (K(e, a, i), F(i, t), B(e, a)) : (n && n.target instanceof HTMLElement && n.target.closest("[data-filter]") && n.target.closest("form .dialog__wrapper > dialog") || n && n.target instanceof HTMLElement && n.target.closest("[data-filter]") && !n.target.closest("form dialog")) && r(), n && n.target instanceof HTMLElement && n.target.closest("[data-show]") && r(), n && n.target instanceof HTMLElement && n.target.closest("[data-mimic]") && r();
179
- }), a.addEventListener("click", (n) => {
180
- clearTimeout(s), n && n.target instanceof HTMLElement && n.target.closest('dialog button:not([type="button"])') && n.target.closest('dialog button:not([type="button"])').closest("dialog").close(), n && n.target instanceof HTMLElement && n.target.closest(".dialog__close") && (n.preventDefault(), n.stopPropagation()), n && n.target instanceof HTMLElement && n.target.closest("[data-clear]") && (a.reset(), a.hasAttribute("data-submit") || Q(e, a, o), r());
181
- }), a.addEventListener("submit", (n) => {
182
- clearTimeout(s), a.hasAttribute("data-submit") || n.preventDefault(), r();
183
- }), a.addEventListener("force", (n) => {
184
- r();
185
- }), a.addEventListener("paginate", (n) => {
186
- r(!0);
187
+ }), a.addEventListener("change", (l) => {
188
+ clearTimeout(i), l && l.target instanceof HTMLElement && l.target.closest("[data-sort]") && (a.hasAttribute("data-submit") || Q(e, a, o), r(l)), l && l.target instanceof HTMLElement && l.target.closest("[data-search]") && r(l), l && l.target instanceof HTMLElement && l.target.closest("[data-filter][data-no-ajax]") ? (G(e, a, s), B(s, t), F(e, a)) : (l && l.target instanceof HTMLElement && l.target.closest("[data-filter]") && l.target.closest("form .dialog__wrapper > dialog") || l && l.target instanceof HTMLElement && l.target.closest("[data-filter]") && !l.target.closest("form dialog")) && r(l), l && l.target instanceof HTMLElement && l.target.closest("[data-show]") && r(l), l && l.target instanceof HTMLElement && l.target.closest("[data-mimic]") && r(l);
189
+ }), a.addEventListener("click", (l) => {
190
+ if (clearTimeout(i), l && l.target instanceof HTMLElement && l.target.closest('dialog button:not([type="button"])') && l.target.closest('dialog button:not([type="button"])').closest("dialog").close(), l && l.target instanceof HTMLElement && l.target.closest(".dialog__close") && (l.preventDefault(), l.stopPropagation()), l && l.target instanceof HTMLElement && l.target.closest("[data-clear]")) {
191
+ a.classList.add("processing"), Array.from(a.querySelectorAll(".applied-filters")).forEach((d, f) => {
192
+ d.innerHTML = "";
193
+ });
194
+ let m = a.elements;
195
+ for (let d = 0; d < m.length; d++)
196
+ switch (m[d].type.toLowerCase() ? m[d].type.toLowerCase() : "text") {
197
+ case "text":
198
+ case "password":
199
+ case "textarea":
200
+ m[d].value = "";
201
+ break;
202
+ case "radio":
203
+ case "checkbox":
204
+ m[d].checked && (m[d].checked = !1);
205
+ break;
206
+ case "select-one":
207
+ case "select-multi":
208
+ m[d].selectedIndex = -1;
209
+ break;
210
+ }
211
+ Array.from(a.querySelectorAll("label iam-card")).forEach((d, f) => {
212
+ let b = new Event("click");
213
+ d.dispatchEvent(b);
214
+ }), a.classList.remove("processing"), a.hasAttribute("data-submit") || Q(e, a, o), r(l);
215
+ }
216
+ }), a.addEventListener("submit", (l) => {
217
+ clearTimeout(i), a.hasAttribute("data-submit") || l.preventDefault(), r(l);
218
+ }), a.addEventListener("force", (l) => {
219
+ r(l);
220
+ }), a.addEventListener("paginate", (l) => {
221
+ r(l, !0);
187
222
  });
188
- let l = [], c = [];
189
- Array.from(a.querySelectorAll("[data-mimic]")).forEach((n, h) => {
190
- let p = n.getAttribute("data-mimic");
191
- Array.from(document.querySelectorAll(`[name="${p}"]`)).forEach((y, b) => {
192
- let m = y.closest("form");
193
- l.includes(m) || l.push(m), c.includes(p) || c.push(p);
223
+ let n = [], c = [];
224
+ Array.from(a.querySelectorAll("[data-mimic]")).forEach((l, m) => {
225
+ let d = l.getAttribute("data-mimic");
226
+ Array.from(document.querySelectorAll(`[name="${d}"]`)).forEach((f, b) => {
227
+ let u = f.closest("form");
228
+ n.includes(u) || n.push(u), c.includes(d) || c.push(d);
194
229
  });
195
- }), l.forEach((n, h) => {
196
- const p = function() {
197
- let y = [], b = new FormData(n);
198
- for (const [m, S] of b)
199
- document.querySelector(`[data-mimic="${m}"]`) && !y.includes(m) ? (y.push(m), document.querySelector(`[data-mimic="${m}"]`).value = S) : document.querySelector(`[data-mimic="${m}"]`) && (document.querySelector(`[data-mimic="${m}"]`).value += "," + S);
200
- for (const m of y) {
201
- const S = new Event("force");
202
- a.dispatchEvent(S);
230
+ }), n.forEach((l, m) => {
231
+ const d = function() {
232
+ let f = [], b = new FormData(l);
233
+ for (const [u, v] of b)
234
+ document.querySelector(`[data-mimic="${u}"]`) && !f.includes(u) ? (f.push(u), document.querySelector(`[data-mimic="${u}"]`).value = v) : document.querySelector(`[data-mimic="${u}"]`) && (document.querySelector(`[data-mimic="${u}"]`).value += "," + v);
235
+ for (const u of f) {
236
+ const v = new Event("force");
237
+ a.dispatchEvent(v);
203
238
  }
204
- for (const m of c)
205
- if (!b.has(m) && n.querySelector(`[name="${m}"]`)) {
206
- document.querySelector(`[data-mimic="${m}"]`).value = "";
207
- const S = new Event("force");
208
- a.dispatchEvent(S);
239
+ for (const u of c)
240
+ if (!b.has(u) && l.querySelector(`[name="${u}"]`)) {
241
+ document.querySelector(`[data-mimic="${u}"]`).value = "";
242
+ const v = new Event("force");
243
+ a.dispatchEvent(v);
209
244
  }
210
245
  };
211
- n.addEventListener("force", (y) => {
212
- p();
213
- }), n.addEventListener("change", (y) => {
214
- p();
246
+ l.addEventListener("force", (f) => {
247
+ d();
248
+ }), l.addEventListener("change", (f) => {
249
+ d();
215
250
  });
216
251
  });
217
252
  }, Q = (e, a, t) => {
218
253
  if (a.getAttribute("data-ajax"))
219
254
  return !1;
220
- let i = e.querySelector("tbody"), o = a.querySelector("[data-sort]"), s = o.querySelector(`option:nth-child(${o.selectedIndex + 1})`), r = s.getAttribute("data-sort"), l = s.getAttribute("data-order"), c = s.getAttribute("data-format");
255
+ let s = e.querySelector("tbody"), o = a.querySelector("[data-sort]"), i = o.querySelector(`option:nth-child(${o.selectedIndex + 1})`), r = i.getAttribute("data-sort"), n = i.getAttribute("data-order"), c = i.getAttribute("data-format");
221
256
  if (!r)
222
- return i.innerHTML = t.innerHTML, tt(e), !1;
223
- let n = [];
224
- ["asc", "desc", "descending"].includes(l) || (n = l.split(","));
225
- let h = [];
226
- Array.from(i.querySelectorAll("tr")).forEach((y, b) => {
227
- let m = y.querySelector('td[data-label="' + r + '"], th[data-label="' + r + '"]').textContent.trim();
228
- y.querySelector('[data-label="' + r + '"] .td__content') && (m = y.querySelector('[data-label="' + r + '"] .td__content').textContent.trim()), n.length && n.includes(m) && (m = n.indexOf(m)), _t(m) && (m = At(m, 10)), c && c == "date" && (m = new Date(m));
229
- const S = { index: m, row: y };
230
- h.push(S);
231
- }), h.sort((y, b) => y.index > b.index ? 1 : -1), (l == "descending" || l == "desc") && (h = h.reverse());
232
- let p = "";
233
- h.forEach((y, b) => {
234
- p += y.row.outerHTML;
235
- }), i.innerHTML = p;
236
- }, K = (e, a, t) => {
257
+ return s.innerHTML = t.innerHTML, at(e), !1;
258
+ let l = [];
259
+ ["asc", "desc", "descending"].includes(n) || (l = n.split(","));
260
+ let m = [];
261
+ Array.from(s.querySelectorAll("tr")).forEach((f, b) => {
262
+ let u = f.querySelector('td[data-label="' + r + '"], th[data-label="' + r + '"]').textContent.trim();
263
+ f.querySelector('[data-label="' + r + '"] .td__content') && (u = f.querySelector('[data-label="' + r + '"] .td__content').textContent.trim()), l.length && l.includes(u) && (u = l.indexOf(u)), _t(u) && (u = Lt(u, 10)), c && c == "date" && (u = new Date(u));
264
+ const v = { index: u, row: f };
265
+ m.push(v);
266
+ }), m.sort((f, b) => f.index > b.index ? 1 : -1), (n == "descending" || n == "desc") && (m = m.reverse());
267
+ let d = "";
268
+ m.forEach((f, b) => {
269
+ d += f.row.outerHTML;
270
+ }), s.innerHTML = d;
271
+ }, G = (e, a, t) => {
237
272
  e.classList.remove("table--filtered");
238
- let i = rt(a), o = [], s = 0, r = a.querySelector("[data-pagination]") ? parseInt(a.querySelector("[data-pagination]").value) : 1, l = a.querySelector("[data-show]") ? parseInt(a.querySelector("[data-show]").value) : 15;
239
- if (Array.from(e.querySelectorAll("tbody tr")).forEach((n, h) => {
240
- n.classList.remove("filtered"), n.classList.remove("filtered--matched"), n.classList.remove("filtered--show"), n.removeAttribute("data-filtered-by");
273
+ let s = st(a), o = [], i = 0, r = a.querySelector("[data-pagination]") ? parseInt(a.querySelector("[data-pagination]").value) : 1, n = a.querySelector("[data-show]") ? parseInt(a.querySelector("[data-show]").value) : 15;
274
+ if (Array.from(e.querySelectorAll("tbody tr")).forEach((l, m) => {
275
+ l.classList.remove("filtered"), l.classList.remove("filtered--matched"), l.classList.remove("filtered--show"), l.removeAttribute("data-filtered-by");
241
276
  }), a.querySelector("[data-search]")) {
242
- let n = a.querySelector("[data-search]");
243
- a.querySelector("[data-search]").getAttribute("data-search").split(",").forEach((h, p) => {
244
- o.push({ column: `${h.trim()}`, value: `${n.value}` });
277
+ let l = a.querySelector("[data-search]");
278
+ a.querySelector("[data-search]").getAttribute("data-search").split(",").forEach((m, d) => {
279
+ o.push({ column: `${m.trim()}`, value: `${l.value}` });
245
280
  });
246
281
  }
247
- Array.from(a.querySelectorAll("[data-filter-count]")).forEach((n, h) => {
248
- n.innerHTML = "", n.parentNode.classList.remove("hover");
282
+ Array.from(a.querySelectorAll("[data-filter-count]")).forEach((l, m) => {
283
+ l.innerHTML = "", l.parentNode.classList.remove("hover");
249
284
  });
250
285
  let c = 0;
251
- Object.values(i).forEach((n, h) => {
252
- typeof n == "object" && Object.values(n).length ? c += Object.values(n).length : c++;
253
- }), c && Array.from(a.querySelectorAll("[data-filter-count]")).forEach((n, h) => {
254
- n.innerHTML += `(${c})`, n.parentNode.classList.add("hover");
286
+ Object.values(s).forEach((l, m) => {
287
+ typeof l == "object" && Object.values(l).length ? c += Object.values(l).length : c++;
288
+ }), c && Array.from(a.querySelectorAll("[data-filter-count]")).forEach((l, m) => {
289
+ l.innerHTML += `(${c})`, l.parentNode.classList.add("hover");
255
290
  }), e.classList.add("table--filtered");
256
- for (const [n, h] of Object.entries(i))
257
- Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((p, y) => {
291
+ for (const [l, m] of Object.entries(s))
292
+ Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((d, f) => {
258
293
  let b = !1;
259
- h.forEach((m, S) => {
260
- let $ = p.querySelector(`[data-label="${n}"]`);
261
- if (m && m == "$today")
262
- m = Y("date", /* @__PURE__ */ new Date());
263
- else if (m && m == "$yesterday") {
264
- let v = /* @__PURE__ */ new Date();
265
- v.setDate(v.getDate() - 1), m = Y("date", v);
266
- } else if (m && (m == "$thisWeek" || m == "$lastWeek")) {
267
- let v = /* @__PURE__ */ new Date(), x = new Date(v.setDate(v.getDate() - (v.getDay() - 1))), k = new Date(v.setDate(v.getDate() - v.getDay() + 7)), g = new Date($.textContent.toLowerCase());
268
- if (v.setHours(0, 0, 0, 0), x.setHours(0, 0, 0, 0), k.setHours(0, 0, 0, 0), g.setHours(0, 0, 0, 0), m == "$thisWeek")
269
- b = g >= x && g <= k;
294
+ m.forEach((u, v) => {
295
+ let q = d.querySelector(`[data-label="${l}"]`);
296
+ if (u && u == "$today")
297
+ u = K("date", /* @__PURE__ */ new Date());
298
+ else if (u && u == "$yesterday") {
299
+ let L = /* @__PURE__ */ new Date();
300
+ L.setDate(L.getDate() - 1), u = K("date", L);
301
+ } else if (u && (u == "$thisWeek" || u == "$lastWeek")) {
302
+ let L = /* @__PURE__ */ new Date(), E = new Date(L.setDate(L.getDate() - (L.getDay() - 1))), $ = new Date(L.setDate(L.getDate() - L.getDay() + 7)), w = new Date(q.textContent.toLowerCase());
303
+ if (L.setHours(0, 0, 0, 0), E.setHours(0, 0, 0, 0), $.setHours(0, 0, 0, 0), w.setHours(0, 0, 0, 0), u == "$thisWeek")
304
+ b = w >= E && w <= $;
270
305
  else {
271
- let O = new Date(x.setDate(x.getDate() - 7)), E = new Date(k.setDate(k.getDate() - 7));
272
- O.setHours(0, 0, 0, 0), E.setHours(0, 0, 0, 0), b = g >= O && g <= E;
306
+ let O = new Date(E.setDate(E.getDate() - 7)), T = new Date($.setDate($.getDate() - 7));
307
+ O.setHours(0, 0, 0, 0), T.setHours(0, 0, 0, 0), b = w >= O && w <= T;
273
308
  }
274
- } else if (m && m == "$thisMonth") {
275
- let v = /* @__PURE__ */ new Date(), x = v.getFullYear(), k = v.getMonth();
276
- var D = new Date(x, k, 1), z = new Date(x, k + 1, 0);
277
- let g = new Date($.textContent.toLowerCase());
278
- D.setHours(0, 0, 0, 0), z.setHours(0, 0, 0, 0), g.setHours(0, 0, 0, 0), b = g >= D && g <= z;
279
- } else if (m && m == "$lastMonth") {
280
- let v = /* @__PURE__ */ new Date(), x = v.getFullYear(), k = v.getMonth();
281
- var N = new Date(x, k - 1, 1), P = new Date(x, k, 0);
282
- let g = new Date($.textContent.toLowerCase());
283
- N.setHours(0, 0, 0, 0), P.setHours(0, 0, 0, 0), g.setHours(0, 0, 0, 0), b = g >= N && g <= P;
309
+ } else if (u && u == "$thisMonth") {
310
+ let L = /* @__PURE__ */ new Date(), E = L.getFullYear(), $ = L.getMonth();
311
+ var y = new Date(E, $, 1), I = new Date(E, $ + 1, 0);
312
+ let w = new Date(q.textContent.toLowerCase());
313
+ y.setHours(0, 0, 0, 0), I.setHours(0, 0, 0, 0), w.setHours(0, 0, 0, 0), b = w >= y && w <= I;
314
+ } else if (u && u == "$lastMonth") {
315
+ let L = /* @__PURE__ */ new Date(), E = L.getFullYear(), $ = L.getMonth();
316
+ var R = new Date(E, $ - 1, 1), P = new Date(E, $, 0);
317
+ let w = new Date(q.textContent.toLowerCase());
318
+ R.setHours(0, 0, 0, 0), P.setHours(0, 0, 0, 0), w.setHours(0, 0, 0, 0), b = w >= R && w <= P;
284
319
  }
285
- $ && $.textContent.toLowerCase().includes(m.toLowerCase()) && (b = !0);
286
- }), b || (p.classList.add("filtered"), p.setAttribute("data-filtered-by", n));
320
+ q && q.textContent.toLowerCase().includes(u.toLowerCase()) && (b = !0);
321
+ }), b || (d.classList.add("filtered"), d.setAttribute("data-filtered-by", l));
287
322
  });
288
- Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((n, h) => {
289
- let p = !(o.length > 0 && o[0].value.length >= 3);
290
- o.forEach((y, b) => {
291
- let m = n.querySelector(`[data-label="${y.column}"]`);
292
- m && y.value.length >= 3 && m.textContent.toLowerCase().includes(y.value.toLowerCase()) && (p = !0);
293
- }), p || n.classList.add("filtered");
294
- }), Array.from(e.querySelectorAll("tbody tr:not(.filtered")).forEach((n, h) => {
295
- s++, n.classList.add("filtered--matched"), Math.ceil(s / l) == parseInt(r) && n.classList.add("filtered--show");
296
- }), t && (t.setAttribute("data-page", r), t.setAttribute("data-pages", Math.ceil(s / l)), t.setAttribute("data-total", s), t.setAttribute("data-show", l));
297
- }, B = (e, a, t) => {
298
- Array.from(a.querySelectorAll("[data-query]")).forEach((i, o) => {
299
- let s = i.getAttribute("data-query"), r;
300
- if (s == "total")
323
+ Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).forEach((l, m) => {
324
+ let d = !(o.length > 0 && o[0].value.length >= 3);
325
+ o.forEach((f, b) => {
326
+ let u = l.querySelector(`[data-label="${f.column}"]`);
327
+ u && f.value.length >= 3 && u.textContent.toLowerCase().includes(f.value.toLowerCase()) && (d = !0);
328
+ }), d || l.classList.add("filtered");
329
+ }), Array.from(e.querySelectorAll("tbody tr:not(.filtered")).forEach((l, m) => {
330
+ i++, l.classList.add("filtered--matched"), Math.ceil(i / n) == parseInt(r) && l.classList.add("filtered--show");
331
+ }), t && (t.setAttribute("data-page", r), t.setAttribute("data-pages", Math.ceil(i / n)), t.setAttribute("data-total", i), t.setAttribute("data-show", n));
332
+ }, F = (e, a, t) => {
333
+ Array.from(a.querySelectorAll("[data-query]")).forEach((s, o) => {
334
+ let i = s.getAttribute("data-query"), r;
335
+ if (i == "total")
301
336
  t.hasAttribute("data-total") ? r = t.getAttribute("data-total") : r = (e.classList.contains("table--filtered"), e.querySelectorAll("tbody tr").length);
302
- else if (!s.includes(" == ") && s.includes(" & ")) {
303
- let l = s.split(" & "), c = "";
304
- l.forEach((n) => {
305
- c += `:not([data-filtered-by="${n}"])`;
337
+ else if (!i.includes(" == ") && i.includes(" & ")) {
338
+ let n = i.split(" & "), c = "";
339
+ n.forEach((l) => {
340
+ c += `:not([data-filtered-by="${l}"])`;
306
341
  }), r = Array.from(e.querySelectorAll(`tbody tr${c}`)).length;
307
- } else if (!s.includes(" == "))
308
- r = Array.from(e.querySelectorAll(`tbody tr:not([data-filtered-by="${s}"])`)).length;
309
- else if (s.includes(" && ")) {
310
- let l = s.split(" && ");
342
+ } else if (!i.includes(" == "))
343
+ r = Array.from(e.querySelectorAll(`tbody tr:not([data-filtered-by="${i}"])`)).length;
344
+ else if (i.includes(" && ")) {
345
+ let n = i.split(" && ");
311
346
  r = Array.from(e.querySelectorAll("tbody tr:not(.filtered)")).filter(function(c) {
312
- let n = !0;
313
- for (const [h, p] of Object.entries(l)) {
314
- let y = p.split(" == ");
315
- (!c.querySelector(`td[data-label="${y[0]}"]`) || c.querySelector(`td[data-label="${y[0]}"]`).textContent != `${y[1]}`) && (n = !1);
347
+ let l = !0;
348
+ for (const [m, d] of Object.entries(n)) {
349
+ let f = d.split(" == ");
350
+ (!c.querySelector(`td[data-label="${f[0]}"]`) || c.querySelector(`td[data-label="${f[0]}"]`).textContent != `${f[1]}`) && (l = !1);
316
351
  }
317
- return n;
352
+ return l;
318
353
  }).length;
319
354
  } else {
320
- let l = s.split(" == ");
321
- r = Array.from(e.querySelectorAll(`tbody tr.filtered--matched td[data-label="${l[0]}"], tbody tr[data-filtered-by="${l[0]}"] td[data-label="${l[0]}"]`)).filter(function(c) {
322
- return c.textContent === l[1];
355
+ let n = i.split(" == ");
356
+ r = Array.from(e.querySelectorAll(`tbody tr.filtered--matched td[data-label="${n[0]}"], tbody tr[data-filtered-by="${n[0]}"] td[data-label="${n[0]}"]`)).filter(function(c) {
357
+ return c.textContent === n[1];
323
358
  }).length;
324
359
  }
325
- i.hasAttribute("data-total") ? i.setAttribute("data-total", r) : i.innerHTML = r;
360
+ s.hasAttribute("data-total") ? s.setAttribute("data-total", r) : s.innerHTML = r;
326
361
  });
327
- }, xt = function(e, a, t, i) {
362
+ }, Tt = function(e, a, t, s) {
328
363
  t.addEventListener("click", (o) => {
329
364
  if (o && o.target instanceof HTMLElement && o.target.closest("[data-page]")) {
330
365
  o.preventDefault();
331
- let s = a.querySelector("[data-pagination]"), r = o.target.closest("[data-page]").getAttribute("data-page");
332
- if (s.value = r, i.setAttribute("data-page", r), a.dispatchEvent(new Event("paginate")), e.hasAttribute("data-show-history")) {
333
- const n = new URL(location);
334
- n.searchParams.set("page", r), history.pushState({ type: "pagination", form: a.getAttribute("id"), page: r }, "", n);
366
+ let i = a.querySelector("[data-pagination]"), r = o.target.closest("[data-page]").getAttribute("data-page");
367
+ if (i.value = r, s.setAttribute("data-page", r), a.dispatchEvent(new Event("paginate")), e.hasAttribute("data-show-history")) {
368
+ const l = new URL(location);
369
+ l.searchParams.set("page", r), history.pushState({ type: "pagination", form: a.getAttribute("id"), page: r }, "", l);
335
370
  }
336
- const l = -250, c = e.getBoundingClientRect().top + window.pageYOffset + l;
371
+ const n = -250, c = e.getBoundingClientRect().top + window.pageYOffset + n;
337
372
  window.scrollTo({ top: c, behavior: "smooth" });
338
373
  }
339
374
  if (o && o.target instanceof HTMLElement && o.target.closest("[data-show]")) {
340
375
  o.preventDefault();
341
- let s = a.querySelector("[data-show]"), r = o.target.closest("[data-show]").getAttribute("data-show");
342
- s.value = r, i.setAttribute("data-show", r), a.dispatchEvent(new Event("submit"));
376
+ let i = a.querySelector("[data-show]"), r = o.target.closest("[data-show]").getAttribute("data-show");
377
+ i.value = r, s.setAttribute("data-show", r), a.dispatchEvent(new Event("submit"));
343
378
  }
344
379
  });
345
- }, Et = (e, a) => {
380
+ }, Mt = (e, a) => {
346
381
  if (!e)
347
382
  return !1;
348
383
  e.addEventListener("click", (t) => {
349
- Tt(a);
384
+ Ht(a);
350
385
  });
351
- }, Tt = function(e) {
352
- for (var a = [], t = e.getElementsByTagName("tr"), i = 0; i < t.length; i++) {
353
- for (var o = t[i].querySelectorAll("td,th"), s = [], r = 0; r < o.length; r++)
354
- s.push(`"${o[r].textContent}"`);
355
- a.push(s.join(","));
386
+ }, Ht = function(e) {
387
+ for (var a = [], t = e.getElementsByTagName("tr"), s = 0; s < t.length; s++) {
388
+ for (var o = t[s].querySelectorAll("td,th"), i = [], r = 0; r < o.length; r++)
389
+ i.push(`"${o[r].textContent}"`);
390
+ a.push(i.join(","));
356
391
  }
357
392
  a = a.join(`
358
393
  `);
359
- let l = new Blob([a], { type: "text/csv" });
394
+ let n = new Blob([a], { type: "text/csv" });
360
395
  var c = document.createElement("a");
361
396
  c.download = "export.csv";
362
- var n = window.URL.createObjectURL(l);
363
- c.href = n, c.style.display = "none", document.body.appendChild(c), c.click(), document.body.removeChild(c);
364
- }, at = function(e, a, t, i) {
365
- if (tt(e), kt(e), B(e, a, i), i && i.classList.contains("table--cta")) {
397
+ var l = window.URL.createObjectURL(n);
398
+ c.href = l, c.style.display = "none", document.body.appendChild(c), c.click(), document.body.removeChild(c);
399
+ }, it = function(e, a, t, s) {
400
+ if (at(e), $t(e), F(e, a, s), s && s.classList.contains("table--cta")) {
366
401
  let o = function() {
367
- Array.from(e.querySelectorAll("tr")).forEach((r, l) => {
402
+ Array.from(e.querySelectorAll("tr")).forEach((r, n) => {
368
403
  let c = r.offsetHeight;
369
404
  r.style.setProperty("--row-height", `${c}px`);
370
405
  });
371
406
  };
372
- const s = St(e);
373
- i.style.setProperty("--cta-width", `${s}rem`), new ResizeObserver(o).observe(e);
407
+ const i = qt(e);
408
+ s.style.setProperty("--cta-width", `${i}rem`), new ResizeObserver(o).observe(e);
374
409
  }
375
- }, rt = function(e) {
410
+ }, st = function(e) {
376
411
  let a = new Object();
377
- return Array.from(e.querySelectorAll("[data-filter]")).forEach((t, i) => {
412
+ return Array.from(e.querySelectorAll("[data-filter]")).forEach((t, s) => {
378
413
  if (!(t.type == "radio" && !t.checked) && !(t.type == "checkbox" && !t.checked) && t && t.value) {
379
414
  let o = t.getAttribute("data-filter");
380
415
  a[o] || (a[o] = new Array()), a[o].push(t.value);
381
416
  }
382
417
  }), a;
383
- }, it = function(e, a, t, i) {
384
- return Lt(this, void 0, void 0, function* () {
385
- const o = (b, m, S) => m.split(/[\.\[\]\'\"]/).filter(($) => $).reduce(($, D) => $ ? $[D] : S, b);
386
- let s = new FormData(a), r = new URLSearchParams(s).toString(), l = e.querySelectorAll("thead tr th"), c = e.querySelector("tbody"), n = a.getAttribute("data-ajax");
387
- i.classList.add("table--loading");
388
- let h = rt(a);
389
- Array.from(a.querySelectorAll("[data-filter-count]")).forEach((b, m) => {
418
+ }, ot = function(e, a, t, s) {
419
+ return kt(this, void 0, void 0, function* () {
420
+ const o = (b, u, v) => u.split(/[\.\[\]\'\"]/).filter((q) => q).reduce((q, y) => q ? q[y] : v, b);
421
+ let i = new FormData(a), r = new URLSearchParams(i).toString(), n = e.querySelectorAll("thead tr th"), c = e.querySelector("tbody"), l = a.getAttribute("data-ajax");
422
+ s.classList.add("table--loading");
423
+ let m = st(a);
424
+ Array.from(a.querySelectorAll("[data-filter-count]")).forEach((b, u) => {
390
425
  b.innerHTML = "", b.parentNode.classList.remove("hover");
391
426
  });
392
- let p = 0;
393
- Object.values(h).forEach((b, m) => {
394
- typeof b == "object" && Object.values(b).length ? p += Object.values(b).length : p++;
395
- }), p && Array.from(a.querySelectorAll("[data-filter-count]")).forEach((b, m) => {
396
- b.innerHTML += `(${p})`, b.parentNode.classList.add("hover");
397
- }), window.controller || (window.controller = []), window.controller[n] && window.controller[n].abort(), window.controller[n] = new AbortController();
398
- const { signal: y } = controller[n];
427
+ let d = 0;
428
+ Object.values(m).forEach((b, u) => {
429
+ typeof b == "object" && Object.values(b).length ? d += Object.values(b).length : d++;
430
+ }), d && Array.from(a.querySelectorAll("[data-filter-count]")).forEach((b, u) => {
431
+ b.innerHTML += `(${d})`, b.parentNode.classList.add("hover");
432
+ }), window.controller || (window.controller = []), window.controller[l] && window.controller[l].abort(), window.controller[l] = new AbortController();
433
+ const { signal: f } = controller[l];
399
434
  try {
400
- yield fetch(n + "?" + r, { signal: y, method: "get", credentials: "same-origin", headers: new Headers({ "Content-Type": "application/json", Accept: "application/json", "X-Requested-With": "XMLHttpRequest" }) }).then((b) => b.json()).then((b) => {
401
- let m = a.hasAttribute("data-schema") ? a.getAttribute("data-schema") : "data", S = a.hasAttribute("data-schema-total") ? a.getAttribute("data-schema-total") : "meta.total", $ = a.hasAttribute("data-schema-page") ? a.getAttribute("data-schema-page") : "meta.current_page", D = o(b, S, 1), z = o(b, $, 1), N = o(b, m), P = i.hasAttribute("data-empty-msg") ? i.getAttribute("data-empty-msg") : "No results found";
402
- N ? (c.innerHTML = "", N.forEach((v, x) => {
403
- var k = document.createElement("tr");
404
- l.forEach((g, O) => {
405
- let E = "";
435
+ yield fetch(l + "?" + r, { signal: f, method: "get", credentials: "same-origin", headers: new Headers({ "Content-Type": "application/json", Accept: "application/json", "X-Requested-With": "XMLHttpRequest" }) }).then((b) => b.json()).then((b) => {
436
+ let u = a.hasAttribute("data-schema") ? a.getAttribute("data-schema") : "data", v = a.hasAttribute("data-schema-total") ? a.getAttribute("data-schema-total") : "meta.total", q = a.hasAttribute("data-schema-page") ? a.getAttribute("data-schema-page") : "meta.current_page", y = o(b, v, 1), I = o(b, q, 1), R = o(b, u), P = s.hasAttribute("data-empty-msg") ? s.getAttribute("data-empty-msg") : "No results found";
437
+ R ? (c.innerHTML = "", R.forEach((L, E) => {
438
+ var $ = document.createElement("tr");
439
+ n.forEach((w, O) => {
440
+ let T = "";
406
441
  var V = document.createElement("td");
407
- if (V.setAttribute("data-label", g.innerText), g.getAttribute("data-output")) {
408
- var U = g.getAttribute("data-output");
409
- E = U.replace(new RegExp(/{(.*?)}/, "gm"), function(lt) {
410
- return o(v, lt.replace("{", "").replace("}", ""));
442
+ if (V.setAttribute("data-label", w.innerText), w.getAttribute("data-output")) {
443
+ var W = w.getAttribute("data-output");
444
+ T = W.replace(new RegExp(/{(.*?)}/, "gm"), function(dt) {
445
+ return o(L, dt.replace("{", "").replace("}", ""));
411
446
  });
412
447
  }
413
- if (g.hasAttribute("data-output-array")) {
414
- var U = g.getAttribute("data-output");
415
- let ct = o(v, U.replace("{", "").replace("}", ""));
416
- E = "", ct.forEach((J, vr) => {
417
- let dt = g.getAttribute("data-output-array"), j = "";
418
- if (g.hasAttribute("data-output-array-property") && g.hasAttribute("data-output-array-transform")) {
419
- const W = o(J, g.getAttribute("data-output-array-property")), ut = JSON.parse(g.getAttribute("data-output-array-transform"))[W];
420
- j = dt.replace(`{${g.getAttribute("data-output-array-property")}}`, ut);
448
+ if (w.hasAttribute("data-output-array")) {
449
+ var W = w.getAttribute("data-output");
450
+ let ut = o(L, W.replace("{", "").replace("}", ""));
451
+ T = "", ut.forEach((J, Ur) => {
452
+ let mt = w.getAttribute("data-output-array"), j = "";
453
+ if (w.hasAttribute("data-output-array-property") && w.hasAttribute("data-output-array-transform")) {
454
+ const U = o(J, w.getAttribute("data-output-array-property")), ht = JSON.parse(w.getAttribute("data-output-array-transform"))[U];
455
+ j = mt.replace(`{${w.getAttribute("data-output-array-property")}}`, ht);
421
456
  }
422
- j = j.replace(new RegExp(/{(.*?)}/, "gm"), function(W) {
423
- return o(J, W.replace("{", "").replace("}", ""));
424
- }), E += j;
457
+ j = j.replace(new RegExp(/{(.*?)}/, "gm"), function(U) {
458
+ return o(J, U.replace("{", "").replace("}", ""));
459
+ }), T += j;
425
460
  });
426
461
  }
427
- g.hasAttribute("data-transform") && (E = JSON.parse(g.getAttribute("data-transform"))[E], !E && g.hasAttribute("data-default") && (E = g.getAttribute("data-default"))), V.innerHTML = E, k.appendChild(V);
428
- }), c.appendChild(k);
429
- }), et(e, a), i.setAttribute("data-total", parseInt(D)), i.setAttribute("data-page", parseInt(z)), i.setAttribute("data-pages", Math.ceil(i.getAttribute("data-total") / i.getAttribute("data-show"))), at(e, a, t, i), F(i, t), Array.from(a.querySelectorAll("[data-ajax-query]")).forEach((v, x) => {
430
- let k = o(b, v.getAttribute("data-ajax-query"), "");
431
- v.hasAttribute("data-total") ? v.setAttribute("data-total", k) : v.innerHTML = k;
432
- }), parseInt(D) == 0 && (c.innerHTML = `<tr><td colspan="100%"><span>${P}</span></td></tr>`), i.classList.remove("table--loading"), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "Ajax table loaded", url: n, formData: r })) : c.innerHTML = '<tr><td colspan="100%"><span>Error loading table</span></td></tr>';
462
+ w.hasAttribute("data-transform") && (T = JSON.parse(w.getAttribute("data-transform"))[T], !T && w.hasAttribute("data-default") && (T = w.getAttribute("data-default"))), V.innerHTML = T, $.appendChild(V);
463
+ }), c.appendChild($);
464
+ }), rt(e, a), s.setAttribute("data-total", parseInt(y)), s.setAttribute("data-page", parseInt(I)), s.setAttribute("data-pages", Math.ceil(s.getAttribute("data-total") / s.getAttribute("data-show"))), it(e, a, t, s), B(s, t), Array.from(a.querySelectorAll("[data-ajax-query]")).forEach((L, E) => {
465
+ let $ = o(b, L.getAttribute("data-ajax-query"), "");
466
+ L.hasAttribute("data-total") ? L.setAttribute("data-total", $) : L.innerHTML = $;
467
+ }), parseInt(y) == 0 && (c.innerHTML = `<tr><td colspan="100%"><span>${P}</span></td></tr>`), s.classList.remove("table--loading"), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "Ajax table loaded", url: l, formData: r })) : c.innerHTML = '<tr><td colspan="100%"><span>Error loading table</span></td></tr>';
433
468
  });
434
469
  } catch (b) {
435
470
  console.log(b);
436
471
  }
437
472
  });
438
- }, Y = (e, a) => {
473
+ }, K = (e, a) => {
439
474
  switch (e) {
440
475
  case "datetime":
441
476
  return new Date(a).toLocaleDateString("en-gb", { weekday: "short", year: "2-digit", month: "long", day: "numeric" }) + " " + new Date(a).toLocaleTimeString("en-gb", { hour: "2-digit", minute: "2-digit" });
442
477
  case "date":
443
478
  return new Date(a).toLocaleDateString("en-gb", { year: "2-digit", month: "long", day: "numeric" });
444
479
  case "capitalise":
445
- return a = wt(a);
480
+ return a = St(a);
446
481
  }
447
482
  };
448
- class Ht extends HTMLElement {
483
+ class Ct extends HTMLElement {
449
484
  constructor() {
450
485
  super(), this.attachShadow({ mode: "open" });
451
- const a = 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") : `${a}/css/core.min.css`, i = document.createElement("template");
452
- i.innerHTML = `
486
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
487
+ s.innerHTML = `
453
488
  <style>
454
489
  @import "${t}";
455
490
 
@@ -472,30 +507,30 @@ class Ht extends HTMLElement {
472
507
  </div>
473
508
  </div>
474
509
  <div class="table__pagination"></div>
475
- `, this.shadowRoot.appendChild(i.content.cloneNode(!0));
510
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
476
511
  }
477
512
  connectedCallback() {
478
513
  const a = new URLSearchParams(window.location.search);
479
514
  this.hasAttribute("data-total") || this.setAttribute("data-total", this.querySelectorAll("table tbody tr").length), this.hasAttribute("data-page") || this.setAttribute("data-page", a.has("page") ? a.get("page") : 1), this.hasAttribute("data-show") || this.setAttribute("data-show", 15), this.hasAttribute("data-increment") || this.setAttribute("data-increment", 15), this.setAttribute("data-pages", Math.ceil(this.getAttribute("data-total") / this.getAttribute("data-show")));
480
515
  let t = this.classList.toString();
481
- if (t = t.replace("table--cta", ""), t = t.replace("table--loading", ""), this.shadowRoot.querySelector(".table__wrapper").className += ` ${t}`, this.table = this.querySelector("table"), this.savedTableBody = this.table.querySelector("tbody").cloneNode(!0), this.pagination = this.shadowRoot.querySelector(".table__pagination"), this.classList.contains("table--cta") || this.shadowRoot.querySelector(".table--cta").classList.remove("table--cta"), this.form = document.createElement("form"), this.hasAttribute("data-filterby") ? this.form = document.querySelector(`#${this.getAttribute("data-filterby")}`) : this.table.parentNode.insertBefore(this.form, this.table.nextSibling), this.form.hasAttribute("data-ajax") && this.table.classList.add("table--ajax"), et(this.table, this.form), this.form.querySelector("[data-page]") || (this.form.innerHTML += `<input name="page" type="hidden" value="${this.getAttribute("data-page")}" data-pagination="true" />`), this.form.querySelector("[data-show]") || (this.form.innerHTML += `<input name="show" type="hidden" value="${this.getAttribute("data-show")}" data-show="true" />`), qt(this.table), $t(this.table, this.form, this.pagination, this, this.savedTableBody), xt(this.table, this.form, this.pagination, this), Et(this.shadowRoot.querySelector("[data-export]"), this.table), this.form.getAttribute("data-ajax") ? it(this.table, this.form, this.pagination, this) : (at(this.table, this.form, this.pagination, this), K(this.table, this.form, this), F(this, this.pagination), B(this.table, this.form)), this.shadowRoot.querySelector(".table__wrapper").addEventListener("scroll", (i) => {
516
+ if (t = t.replace("table--cta", ""), t = t.replace("table--loading", ""), this.shadowRoot.querySelector(".table__wrapper").className += ` ${t}`, this.querySelector(".actionbar__sticky") && this.shadowRoot.querySelector(".table__wrapper").classList.add("has-actionbar"), this.table = this.querySelector("table"), this.savedTableBody = this.table.querySelector("tbody").cloneNode(!0), this.pagination = this.shadowRoot.querySelector(".table__pagination"), this.classList.contains("table--cta") || this.shadowRoot.querySelector(".table--cta").classList.remove("table--cta"), this.form = document.createElement("form"), this.hasAttribute("data-filterby") ? this.form = document.querySelector(`#${this.getAttribute("data-filterby")}`) : this.table.parentNode.insertBefore(this.form, this.table.nextSibling), this.form.hasAttribute("data-ajax") && this.table.classList.add("table--ajax"), rt(this.table, this.form), this.form.querySelector("[data-page]") || (this.form.innerHTML += `<input name="page" type="hidden" value="${this.getAttribute("data-page")}" data-pagination="true" />`), this.form.querySelector("[data-show]") || (this.form.innerHTML += `<input name="show" type="hidden" value="${this.getAttribute("data-show")}" data-show="true" />`), xt(this.table), Et(this.table, this.form, this.pagination, this, this.savedTableBody), Tt(this.table, this.form, this.pagination, this), Mt(this.shadowRoot.querySelector("[data-export]"), this.table), this.form.getAttribute("data-ajax") ? ot(this.table, this.form, this.pagination, this) : (it(this.table, this.form, this.pagination, this), G(this.table, this.form, this), B(this, this.pagination), F(this.table, this.form)), this.shadowRoot.querySelector(".table__wrapper").addEventListener("scroll", (s) => {
482
517
  this.table.querySelector("dialog[open]") && (this.table.querySelector("dialog[open]").close(), this.table.querySelector(".dialog__wrapper > button.active").classList.remove("active"));
483
518
  }), this.querySelector("iam-actionbar[data-selectall]")) {
484
- const i = this.querySelector("iam-actionbar[data-selectall]");
485
- Array.from(this.table.querySelectorAll("thead tr")).forEach((o, s) => {
519
+ const s = this.querySelector("iam-actionbar[data-selectall]");
520
+ Array.from(this.table.querySelectorAll("thead tr")).forEach((o, i) => {
486
521
  o.insertAdjacentHTML("afterbegin", "<th></th>");
487
- }), Array.from(this.table.querySelectorAll("tbody tr")).forEach((o, s) => {
488
- o.insertAdjacentHTML("afterbegin", `<td class="selectrow"><input type="checkbox" name="row" id="row${s}"/><label for="row${s}"><span class="visually-hidden">Select row</span></label></td>`);
522
+ }), Array.from(this.table.querySelectorAll("tbody tr")).forEach((o, i) => {
523
+ o.insertAdjacentHTML("afterbegin", `<td class="selectrow"><input type="checkbox" name="row" id="row${i}"/><label for="row${i}"><span class="visually-hidden">Select row</span></label></td>`);
489
524
  }), this.table.addEventListener("change", (o) => {
490
525
  if (o && o.target instanceof HTMLElement && o.target.closest(".selectrow input")) {
491
- let s = this.table.querySelectorAll('.selectrow input[type="checkbox"]').length, r = this.table.querySelectorAll('.selectrow input[type="checkbox"]:checked').length;
492
- i.setAttribute("data-selected", s == r ? "all" : r), console.log(r);
526
+ let i = this.table.querySelectorAll('.selectrow input[type="checkbox"]').length, r = this.table.querySelectorAll('.selectrow input[type="checkbox"]:checked').length;
527
+ s.setAttribute("data-selected", i == r ? "all" : r), console.log(r);
493
528
  }
494
- }), i.addEventListener("selected", (o) => {
495
- console.log(o.detail.selected), o.detail.selected == "0" ? Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((s, r) => {
496
- s.checked = !1;
497
- }) : o.detail.selected == "all" && Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((s, r) => {
498
- s.checked = !0;
529
+ }), s.addEventListener("selected", (o) => {
530
+ console.log(o.detail.selected), o.detail.selected == "0" ? Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((i, r) => {
531
+ i.checked = !1;
532
+ }) : o.detail.selected == "all" && Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((i, r) => {
533
+ i.checked = !0;
499
534
  });
500
535
  });
501
536
  }
@@ -503,12 +538,12 @@ class Ht extends HTMLElement {
503
538
  static get observedAttributes() {
504
539
  return ["data-total", "data-pages", "data-page", "data-show"];
505
540
  }
506
- attributeChangedCallback(a, t, i) {
541
+ attributeChangedCallback(a, t, s) {
507
542
  }
508
543
  }
509
- const Mt = (e) => e.charAt(0).toUpperCase() + e.slice(1), Ct = (e) => e.replace(/_/g, " "), Dt = (e) => e.replace(/ /g, "_"), Nt = function(e) {
544
+ const Nt = (e) => e.charAt(0).toUpperCase() + e.slice(1), Rt = (e) => e.replace(/_/g, " "), Dt = (e) => e.replace(/ /g, "_"), It = function(e) {
510
545
  return e = e.toLowerCase(), e = Dt(e), e = e.replace(/\W/g, ""), e;
511
- }, Rt = {
546
+ }, Pt = {
512
547
  name: "Table",
513
548
  props: {
514
549
  items: {
@@ -522,42 +557,42 @@ const Mt = (e) => e.charAt(0).toUpperCase() + e.slice(1), Ct = (e) => e.replace(
522
557
  },
523
558
  computed: {
524
559
  cellHeading() {
525
- return (e) => `${Mt(Ct(e))}`;
560
+ return (e) => `${Nt(Rt(e))}`;
526
561
  }
527
562
  },
528
563
  created() {
529
564
  this.$nextTick(function() {
530
- window.customElements.get("iam-table") || window.customElements.define("iam-table", Ht);
565
+ window.customElements.get("iam-table") || window.customElements.define("iam-table", Ct);
531
566
  });
532
567
  },
533
568
  updated() {
534
569
  }
535
- }, zt = { key: 0 }, Pt = { key: 0 }, jt = ["data-row-id"], It = ["innerHTML"];
536
- function Ft(e, a, t, i, o, s) {
537
- return d(), u("iam-table", null, [
538
- t.fields ? (d(), u("table", zt, [
539
- f("thead", null, [
540
- f("tr", null, [
541
- (d(!0), u(H, null, M(t.fields, (r) => (d(), u("th", {
570
+ }, jt = { key: 0 }, zt = { key: 0 }, Bt = ["data-row-id"], Ft = ["innerHTML"];
571
+ function Ot(e, a, t, s, o, i) {
572
+ return h(), p("iam-table", null, [
573
+ t.fields ? (h(), p("table", jt, [
574
+ g("thead", null, [
575
+ g("tr", null, [
576
+ (h(!0), p(M, null, H(t.fields, (r) => (h(), p("th", {
542
577
  key: r.key
543
- }, q(s.cellHeading(r.key)), 1))), 128))
578
+ }, x(i.cellHeading(r.key)), 1))), 128))
544
579
  ])
545
580
  ]),
546
- t.items ? (d(), u("tbody", Pt, [
547
- (d(!0), u(H, null, M(t.items, (r, l) => (d(), u("tr", {
548
- key: l,
581
+ t.items ? (h(), p("tbody", zt, [
582
+ (h(!0), p(M, null, H(t.items, (r, n) => (h(), p("tr", {
583
+ key: n,
549
584
  "data-row-id": r.rowid
550
585
  }, [
551
- (d(!0), u(H, null, M(Object.fromEntries(Object.entries(r).filter(([c]) => c !== "rowid")), (c, n) => (d(), u("td", {
552
- key: n,
586
+ (h(!0), p(M, null, H(Object.fromEntries(Object.entries(r).filter(([c]) => c !== "rowid")), (c, l) => (h(), p("td", {
587
+ key: l,
553
588
  innerHTML: c
554
- }, null, 8, It))), 128))
555
- ], 8, jt))), 128))
556
- ])) : _("", !0)
557
- ])) : A(e.$slots, "default", { key: 1 })
589
+ }, null, 8, Ft))), 128))
590
+ ], 8, Bt))), 128))
591
+ ])) : A("", !0)
592
+ ])) : S(e.$slots, "default", { key: 1 })
558
593
  ]);
559
594
  }
560
- const st = /* @__PURE__ */ w(Rt, [["render", Ft]]), Bt = {
595
+ const nt = /* @__PURE__ */ _(Pt, [["render", Ot]]), Vt = {
561
596
  name: "Input",
562
597
  props: {
563
598
  value: {
@@ -745,188 +780,188 @@ const st = /* @__PURE__ */ w(Rt, [["render", Ft]]), Bt = {
745
780
  this.$emit("bus");
746
781
  }
747
782
  }
748
- }, Ot = ["for", "innerHTML", "title"], Vt = ["innerHTML"], Ut = ["innerHTML"], Wt = ["type", "name", "id", "pattern", "list"], Gt = ["type", "name", "id", "pattern"], Kt = {
783
+ }, Wt = ["for", "innerHTML", "title"], Ut = ["innerHTML"], Yt = ["innerHTML"], Gt = ["type", "name", "id", "pattern", "list"], Kt = ["type", "name", "id", "pattern"], Xt = {
749
784
  key: 5,
750
785
  class: "input-group"
751
- }, Yt = ["type", "name", "id", "pattern", "list"], Xt = { class: "input-group-text border-0 col-2 col-sm-1 px-0" }, Jt = {
786
+ }, Jt = ["type", "name", "id", "pattern", "list"], Qt = { class: "input-group-text border-0 col-2 col-sm-1 px-0" }, Zt = {
752
787
  key: 6,
753
788
  class: "input-group"
754
- }, Qt = ["type", "name", "id", "pattern", "list"], Zt = { class: "input-group-text flex-fill" }, te = ["type", "name", "id", "pattern"], ee = ["value"], ae = ["type", "name", "id"], re = ["for", "innerHTML"], ie = ["type", "name", "id"], se = ["for", "innerHTML"], oe = ["innerHTML"], ne = ["id"], le = ["value"];
755
- function ce(e, a, t, i, o, s) {
756
- return d(), u("div", {
757
- class: L(s.wrapperClass()),
789
+ }, te = ["type", "name", "id", "pattern", "list"], ee = { class: "input-group-text flex-fill" }, ae = ["type", "name", "id", "pattern"], re = ["value"], ie = ["type", "name", "id"], se = ["for", "innerHTML"], oe = ["type", "name", "id"], ne = ["for", "innerHTML"], le = ["innerHTML"], ce = ["id"], de = ["value"];
790
+ function ue(e, a, t, s, o, i) {
791
+ return h(), p("div", {
792
+ class: k(i.wrapperClass()),
758
793
  ref: "wrapper"
759
794
  }, [
760
- s.needsLabel() ? (d(), u("label", {
795
+ i.needsLabel() ? (h(), p("label", {
761
796
  key: 0,
762
- class: L(`form-label${t.labelclass ? ` ${t.labelclass}` : ""}`),
797
+ class: k(`form-label${t.labelclass ? ` ${t.labelclass}` : ""}`),
763
798
  for: t.id,
764
- innerHTML: s.displayLabel(),
799
+ innerHTML: i.displayLabel(),
765
800
  title: t.title
766
- }, null, 10, Ot)) : _("", !0),
767
- t.prefix ? (d(), u("span", {
801
+ }, null, 10, Wt)) : A("", !0),
802
+ t.prefix ? (h(), p("span", {
768
803
  key: 1,
769
- class: L(`prefix ${this.prefixClass} ${t.size ? `prefix-${t.size}` : ""}`),
804
+ class: k(`prefix ${this.prefixClass} ${t.size ? `prefix-${t.size}` : ""}`),
770
805
  innerHTML: t.prefix,
771
806
  role: "presentation"
772
- }, null, 10, Vt)) : _("", !0),
773
- t.suffix ? (d(), u("span", {
807
+ }, null, 10, Ut)) : A("", !0),
808
+ t.suffix ? (h(), p("span", {
774
809
  key: 2,
775
- class: L(`suffix ${this.suffixClass} ${t.size ? `suffix-${t.size}` : ""}`),
810
+ class: k(`suffix ${this.suffixClass} ${t.size ? `suffix-${t.size}` : ""}`),
776
811
  innerHTML: t.suffix,
777
812
  role: "presentation"
778
- }, null, 10, Ut)) : _("", !0),
779
- s.isInput() ? R((d(), u("input", C({
813
+ }, null, 10, Yt)) : A("", !0),
814
+ i.isInput() ? D((h(), p("input", N({
780
815
  key: 3,
781
- "onUpdate:modelValue": a[0] || (a[0] = (r) => s.inputVal = r),
816
+ "onUpdate:modelValue": a[0] || (a[0] = (r) => i.inputVal = r),
782
817
  class: `form-control${t.size ? ` form-control-${t.size}` : ""}${t.inputclass ? ` ${t.inputclass}` : ""}`,
783
818
  type: t.type,
784
819
  name: t.name ? t.name : t.id,
785
820
  id: t.id,
786
- pattern: s.needPattern(),
787
- list: s.hasOptions()
821
+ pattern: i.needPattern(),
822
+ list: i.hasOptions()
788
823
  }, e.$attrs, {
789
- onKeyup: a[1] || (a[1] = (...r) => s.inputKeyup && s.inputKeyup(...r))
790
- }), null, 16, Wt)), [
791
- [G, s.inputVal]
792
- ]) : _("", !0),
793
- t.type == "textarea" ? R((d(), u("textarea", C({
824
+ onKeyup: a[1] || (a[1] = (...r) => i.inputKeyup && i.inputKeyup(...r))
825
+ }), null, 16, Gt)), [
826
+ [Y, i.inputVal]
827
+ ]) : A("", !0),
828
+ t.type == "textarea" ? D((h(), p("textarea", N({
794
829
  key: 4,
795
- "onUpdate:modelValue": a[2] || (a[2] = (r) => s.inputVal = r),
830
+ "onUpdate:modelValue": a[2] || (a[2] = (r) => i.inputVal = r),
796
831
  class: `form-control${t.size ? ` form-control-${t.size}` : ""}${t.inputclass ? ` ${t.inputclass}` : ""}`,
797
832
  type: t.type,
798
833
  name: t.name ? t.name : t.id,
799
834
  id: t.id,
800
- pattern: s.needPattern()
801
- }, e.$attrs), null, 16, Gt)), [
802
- [mt, s.inputVal]
803
- ]) : _("", !0),
804
- t.type == "range" ? (d(), u("div", Kt, [
805
- R(f("input", C({
806
- "onUpdate:modelValue": a[3] || (a[3] = (r) => s.inputVal = r),
835
+ pattern: i.needPattern()
836
+ }, e.$attrs), null, 16, Kt)), [
837
+ [pt, i.inputVal]
838
+ ]) : A("", !0),
839
+ t.type == "range" ? (h(), p("div", Xt, [
840
+ D(g("input", N({
841
+ "onUpdate:modelValue": a[3] || (a[3] = (r) => i.inputVal = r),
807
842
  class: `form-range${t.inputclass ? ` ${t.inputclass}` : ""}`,
808
843
  type: t.type,
809
844
  name: t.name ? t.name : t.id,
810
845
  id: t.id,
811
- pattern: s.needPattern(),
812
- list: s.hasOptions()
813
- }, e.$attrs, { oninput: "this.nextElementSibling.value=this.value;" }), null, 16, Yt), [
814
- [G, s.inputVal]
846
+ pattern: i.needPattern(),
847
+ list: i.hasOptions()
848
+ }, e.$attrs, { oninput: "this.nextElementSibling.value=this.value;" }), null, 16, Jt), [
849
+ [Y, i.inputVal]
815
850
  ]),
816
- f("output", Xt, q(t.value), 1)
817
- ])) : _("", !0),
818
- t.type == "color" ? (d(), u("div", Jt, [
819
- R(f("input", C({
820
- "onUpdate:modelValue": a[4] || (a[4] = (r) => s.inputVal = r),
851
+ g("output", Qt, x(t.value), 1)
852
+ ])) : A("", !0),
853
+ t.type == "color" ? (h(), p("div", Zt, [
854
+ D(g("input", N({
855
+ "onUpdate:modelValue": a[4] || (a[4] = (r) => i.inputVal = r),
821
856
  class: `form-control form-control-color${t.inputclass ? ` ${t.inputclass}` : ""}`,
822
857
  type: t.type,
823
858
  name: t.name ? t.name : t.id,
824
859
  id: t.id,
825
- pattern: s.needPattern(),
826
- list: s.hasOptions()
827
- }, e.$attrs, { oninput: "this.nextElementSibling.value=this.value;" }), null, 16, Qt), [
828
- [G, s.inputVal]
860
+ pattern: i.needPattern(),
861
+ list: i.hasOptions()
862
+ }, e.$attrs, { oninput: "this.nextElementSibling.value=this.value;" }), null, 16, te), [
863
+ [Y, i.inputVal]
829
864
  ]),
830
- f("output", Zt, q(t.value ? e.vale : "#000000"), 1)
831
- ])) : _("", !0),
832
- t.type == "select" ? R((d(), u("select", C({
865
+ g("output", ee, x(t.value ? e.vale : "#000000"), 1)
866
+ ])) : A("", !0),
867
+ t.type == "select" ? D((h(), p("select", N({
833
868
  key: 7,
834
- "onUpdate:modelValue": a[5] || (a[5] = (r) => s.inputVal = r),
869
+ "onUpdate:modelValue": a[5] || (a[5] = (r) => i.inputVal = r),
835
870
  class: `form-select${t.size ? ` form-select-${t.size}` : ""}${t.inputclass ? ` ${t.inputclass}` : ""}`,
836
871
  type: t.type,
837
872
  name: t.id,
838
873
  id: t.id,
839
- pattern: s.needPattern()
874
+ pattern: i.needPattern()
840
875
  }, e.$attrs), [
841
- (d(!0), u(H, null, M(t.options, (r, l) => (d(), u("option", {
842
- key: l,
876
+ (h(!0), p(M, null, H(t.options, (r, n) => (h(), p("option", {
877
+ key: n,
843
878
  value: r.value
844
- }, q(r.display ? r.display : r.value), 9, ee))), 128))
845
- ], 16, te)), [
846
- [ht, s.inputVal]
847
- ]) : _("", !0),
848
- t.type == "checkbox" || t.type == "radio" ? (d(), u("input", C({
879
+ }, x(r.display ? r.display : r.value), 9, re))), 128))
880
+ ], 16, ae)), [
881
+ [bt, i.inputVal]
882
+ ]) : A("", !0),
883
+ t.type == "checkbox" || t.type == "radio" ? (h(), p("input", N({
849
884
  key: 8,
850
885
  class: "form-check-input",
851
886
  type: t.type,
852
887
  name: t.name ? t.name : t.id,
853
888
  id: t.id
854
- }, e.$attrs), null, 16, ae)) : _("", !0),
855
- t.type == "checkbox" || t.type == "radio" ? (d(), u("label", {
889
+ }, e.$attrs), null, 16, ie)) : A("", !0),
890
+ t.type == "checkbox" || t.type == "radio" ? (h(), p("label", {
856
891
  key: 9,
857
- class: L(`form-label form-check-label${t.labelclass ? ` ${t.labelclass}` : ""}`),
892
+ class: k(`form-label form-check-label${t.labelclass ? ` ${t.labelclass}` : ""}`),
858
893
  for: t.id,
859
894
  innerHTML: t.label
860
- }, null, 10, re)) : _("", !0),
861
- t.type == "checkbox-btn" || t.type == "radio-btn" ? (d(), u("input", C({
895
+ }, null, 10, se)) : A("", !0),
896
+ t.type == "checkbox-btn" || t.type == "radio-btn" ? (h(), p("input", N({
862
897
  key: 10,
863
898
  class: `btn-check${t.inputclass ? ` ${t.inputclass}` : ""}`,
864
899
  type: t.type.replace("-btn", ""),
865
900
  autocomplete: "off",
866
901
  name: t.name ? t.name : t.id,
867
902
  id: t.id
868
- }, e.$attrs), null, 16, ie)) : _("", !0),
869
- t.type == "checkbox-btn" || t.type == "radio-btn" ? (d(), u("label", {
903
+ }, e.$attrs), null, 16, oe)) : A("", !0),
904
+ t.type == "checkbox-btn" || t.type == "radio-btn" ? (h(), p("label", {
870
905
  key: 11,
871
- class: L(`btn${t.labelclass ? ` ${t.labelclass}` : ""}`),
906
+ class: k(`btn${t.labelclass ? ` ${t.labelclass}` : ""}`),
872
907
  for: t.id,
873
908
  innerHTML: t.label,
874
- onClick: a[6] || (a[6] = (...r) => s.clickEvent && s.clickEvent(...r))
875
- }, null, 10, se)) : _("", !0),
876
- A(e.$slots, "default"),
877
- t.errormsg ? (d(), u("span", {
909
+ onClick: a[6] || (a[6] = (...r) => i.clickEvent && i.clickEvent(...r))
910
+ }, null, 10, ne)) : A("", !0),
911
+ S(e.$slots, "default"),
912
+ t.errormsg ? (h(), p("span", {
878
913
  key: 12,
879
914
  class: "invalid-feedback mb-0",
880
915
  innerHTML: t.errormsg
881
- }, null, 8, oe)) : _("", !0),
882
- s.allowDatalist() ? (d(), u("datalist", {
916
+ }, null, 8, le)) : A("", !0),
917
+ i.allowDatalist() ? (h(), p("datalist", {
883
918
  key: 13,
884
919
  id: t.id + "-list"
885
920
  }, [
886
- (d(!0), u(H, null, M(t.options, (r, l) => (d(), u("option", {
887
- key: l,
921
+ (h(!0), p(M, null, H(t.options, (r, n) => (h(), p("option", {
922
+ key: n,
888
923
  value: r.value
889
- }, q(r.value), 9, le))), 128))
890
- ], 8, ne)) : _("", !0)
924
+ }, x(r.value), 9, de))), 128))
925
+ ], 8, ce)) : A("", !0)
891
926
  ], 2);
892
927
  }
893
- const ot = /* @__PURE__ */ w(Bt, [["render", ce]]);
894
- function de(e, a) {
895
- const t = a.querySelector(".files"), i = a.querySelector(".drop-area"), o = e.querySelector("input"), s = e.hasAttribute("data-maxsize") ? e.getAttribute("data-maxsize") : 0, r = o.cloneNode();
896
- i.append(r), a.addEventListener("click", (l) => {
897
- l && l.target instanceof HTMLElement && l.target.closest(".btn-primary") && (l.target.closest(".btn-primary"), (o.hasAttribute("multiple") ? r : o).click());
898
- }), a.addEventListener("click", (l) => {
899
- if (l && l.target instanceof HTMLElement && l.target.closest(".files button")) {
900
- const c = new DataTransfer(), { files: n } = o, h = l.target.closest(".files button");
901
- for (let y = 0; y < n.length; y++) {
902
- const b = n[y];
903
- b.name != h.getAttribute("data-file") && c.items.add(b);
928
+ const lt = /* @__PURE__ */ _(Vt, [["render", ue]]);
929
+ function me(e, a) {
930
+ const t = a.querySelector(".files"), s = a.querySelector(".drop-area"), o = e.querySelector("input"), i = e.hasAttribute("data-maxsize") ? e.getAttribute("data-maxsize") : 0, r = o.cloneNode();
931
+ s.append(r), a.addEventListener("click", (n) => {
932
+ n && n.target instanceof HTMLElement && n.target.closest(".btn-primary") && (n.target.closest(".btn-primary"), (o.hasAttribute("multiple") ? r : o).click());
933
+ }), a.addEventListener("click", (n) => {
934
+ if (n && n.target instanceof HTMLElement && n.target.closest(".files button")) {
935
+ const c = new DataTransfer(), { files: l } = o, m = n.target.closest(".files button");
936
+ for (let f = 0; f < l.length; f++) {
937
+ const b = l[f];
938
+ b.name != m.getAttribute("data-file") && c.items.add(b);
904
939
  }
905
940
  o.files = c.files;
906
- const p = new Event("change");
907
- o.dispatchEvent(p);
941
+ const d = new Event("change");
942
+ o.dispatchEvent(d);
908
943
  }
909
- }), r.addEventListener("change", (l) => {
944
+ }), r.addEventListener("change", (n) => {
910
945
  if (o.hasAttribute("multiple")) {
911
- const n = [...o.files, ...r.files];
912
- let h = [];
913
- const p = new DataTransfer();
914
- for (let y = 0; y < n.length; y++) {
915
- const b = n[y], m = b.size / 1e3;
916
- !h.includes(b.name) && (s == 0 || m < s) && p.items.add(b), h.push(b.name);
946
+ const l = [...o.files, ...r.files];
947
+ let m = [];
948
+ const d = new DataTransfer();
949
+ for (let f = 0; f < l.length; f++) {
950
+ const b = l[f], u = b.size / 1e3;
951
+ !m.includes(b.name) && (i == 0 || u < i) && d.items.add(b), m.push(b.name);
917
952
  }
918
- o.files = p.files;
953
+ o.files = d.files;
919
954
  } else
920
955
  o.files = r.files;
921
956
  const c = new Event("change");
922
957
  o.dispatchEvent(c);
923
- }), r.addEventListener("dragenter", (l) => {
958
+ }), r.addEventListener("dragenter", (n) => {
924
959
  r.classList.add("focus");
925
- }), r.addEventListener("dragleave", (l) => {
960
+ }), r.addEventListener("dragleave", (n) => {
926
961
  r.classList.remove("focus");
927
- }), r.addEventListener("drop", (l) => {
962
+ }), r.addEventListener("drop", (n) => {
928
963
  r.classList.remove("focus");
929
- }), o.addEventListener("change", (l) => {
964
+ }), o.addEventListener("change", (n) => {
930
965
  t.innerHTML = "";
931
966
  for (const c of o.files)
932
967
  t.innerHTML += `<span class="file">${c.name} <button data-file="${c.name}">Remove</button></span>`;
@@ -937,14 +972,14 @@ window.dataLayer.push({
937
972
  event: "customElementRegistered",
938
973
  element: "fileupload"
939
974
  });
940
- class ue extends HTMLElement {
975
+ class he extends HTMLElement {
941
976
  constructor() {
942
977
  super(), this.attachShadow({ mode: "open" });
943
- const a = 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") : `${a}/css/core.min.css`, i = `@import "${a}/css/components/fileupload.css";`, o = document.createElement("template");
978
+ const a = 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") : `${a}/css/core.min.css`, s = `@import "${a}/css/components/fileupload.css";`, o = document.createElement("template");
944
979
  o.innerHTML = `
945
980
  <style>
946
981
  @import "${t}";
947
- ${i}
982
+ ${s}
948
983
  ${this.hasAttribute("css") ? `@import "${this.getAttribute("css")}";` : ""}
949
984
  </style>
950
985
  <div class="file-upload">
@@ -960,11 +995,11 @@ class ue extends HTMLElement {
960
995
  }
961
996
  connectedCallback() {
962
997
  this.innerHTML += '<i class="fa-regular fa-arrow-up-from-bracket me-2" aria-hidden="true" slot="btn"></i>';
963
- const a = this.shadowRoot.querySelector(".file-upload"), t = this.querySelector("input"), i = this.shadowRoot.querySelector(".helper-text");
964
- i.innerHTML = `${this.hasAttribute("data-maxsize") ? `Max file size is ${this.getAttribute("data-maxsize")}kb. ` : ""}${t.hasAttribute("accept") ? `Supported file types are ${t.getAttribute("accept")}` : ""}`, de(this, a);
998
+ const a = this.shadowRoot.querySelector(".file-upload"), t = this.querySelector("input"), s = this.shadowRoot.querySelector(".helper-text");
999
+ s.innerHTML = `${this.hasAttribute("data-maxsize") ? `Max file size is ${this.getAttribute("data-maxsize")}kb. ` : ""}${t.hasAttribute("accept") ? `Supported file types are ${t.getAttribute("accept")}` : ""}`, me(this, a);
965
1000
  }
966
1001
  }
967
- const me = {
1002
+ const pe = {
968
1003
  name: "FileUpload",
969
1004
  props: {
970
1005
  maxfilesize: {
@@ -978,71 +1013,71 @@ const me = {
978
1013
  },
979
1014
  mounted() {
980
1015
  this.$nextTick(function() {
981
- window.customElements.get("iam-fileupload") || window.customElements.define("iam-fileupload", ue);
1016
+ window.customElements.get("iam-fileupload") || window.customElements.define("iam-fileupload", he);
982
1017
  });
983
1018
  }
984
1019
  };
985
- function he(e, a, t, i, o, s) {
986
- return d(), u("iam-fileupload", null, [
987
- A(e.$slots, "default")
1020
+ function be(e, a, t, s, o, i) {
1021
+ return h(), p("iam-fileupload", null, [
1022
+ S(e.$slots, "default")
988
1023
  ]);
989
1024
  }
990
- const wr = /* @__PURE__ */ w(me, [["render", he]]);
1025
+ const Kr = /* @__PURE__ */ _(pe, [["render", be]]);
991
1026
  /*!
992
- * iamKey v3.9.0-beta-1
1027
+ * iamKey v4.1.0-beta
993
1028
  * Copyright 2022-2023 iamproperty
994
1029
  */
995
1030
  function fe(e) {
996
1031
  let a = e.querySelectorAll("details"), t = e.querySelectorAll("summary");
997
- if (a.forEach((i) => {
998
- i.classList.add("accordion-item");
999
- }), t.forEach((i) => {
1000
- i.classList.add("accordion-header"), i.classList.add("accordion-button"), i.classList.add("h4");
1032
+ if (a.forEach((s) => {
1033
+ s.classList.add("accordion-item");
1034
+ }), t.forEach((s) => {
1035
+ s.classList.add("accordion-header"), s.classList.add("accordion-button"), s.classList.add("h4");
1001
1036
  }), !e.classList.contains("accordion--keep-open")) {
1002
- const i = e.querySelectorAll(":scope > details");
1003
- i.forEach((o) => {
1037
+ const s = e.querySelectorAll(":scope > details");
1038
+ s.forEach((o) => {
1004
1039
  o.addEventListener("click", () => {
1005
- i.forEach((s) => {
1006
- s !== o && s.removeAttribute("open");
1040
+ s.forEach((i) => {
1041
+ i !== o && i.removeAttribute("open");
1007
1042
  });
1008
1043
  });
1009
1044
  });
1010
1045
  }
1011
1046
  }
1012
1047
  window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "accordion" });
1013
- let pe = class extends HTMLElement {
1048
+ let ge = class extends HTMLElement {
1014
1049
  constructor() {
1015
1050
  super(), this.attachShadow({ mode: "open" });
1016
- const a = 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") : `${a}/css/core.min.css`, i = document.createElement("template");
1017
- i.innerHTML = `
1051
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
1052
+ s.innerHTML = `
1018
1053
  <style>
1019
1054
  @import "${t}";
1020
- \uFEFF:is(.accordion,iam-accordion){--accordion-indent: 0.75rem;--accordion-right-padding: 3rem;--accordion-y-padding: 1rem;--accordion-icon-size: 1.875rem;--accordion-icon-top: 0.75rem}@media screen and (min-width: 62em){:is(.accordion,iam-accordion){--accordion-right-padding: 6rem;--accordion-y-padding: 2rem;--accordion-icon-size: 3rem;--accordion-icon-top: 1.25rem}}.accordion-header{padding:var(--accordion-y-padding) var(--accordion-right-padding) var(--accordion-y-padding) var(--accordion-indent);color:var(--colour-heading);text-align:left;background-color:rgba(0,0,0,0);overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease;--marker-bg: var(--colour-secondary);cursor:pointer;position:relative;max-width:100%}@media(prefers-reduced-motion: reduce){.accordion-header{transition:none}}.accordion-header .badge{vertical-align:bottom;margin-left:.5em;margin-right:.5em;margin-bottom:.1em}.accordion-header:before,.accordion-header:after{content:"";position:absolute;right:var(--accordion-indent);top:var(--accordion-icon-top);margin-top:var(--accordion-icon-size-half);width:var(--accordion-icon-size);height:var(--accordion-icon-size)}.accordion-header:before{text-indent:100%;white-space:nowrap;overflow:hidden;background:var(--marker-bg);border-radius:100%}.accordion-header::after{background:currentColor;mask-image:var(--icon-arrow);mask-size:50%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:50%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;transition:transform .2s ease-in-out;transform:rotate(90deg)}@media(prefers-reduced-motion: reduce){.accordion-header::after{transition:none}}@media(forced-colors: active){.accordion-header::after{content:"►";mask-image:none;-webkit-mask-image:none}}.accordion-header:hover,.accordion-header:focus{--marker-bg: var(--colour-warning);color:var(--colour-hover)}.accordion-header:hover{z-index:var(--index-focus)}.accordion-header:focus{z-index:var(--index-focus);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}[open]>summary>.accordion-header{color:var(--colour-heading);background-color:rgba(0,0,0,0)}[open]>summary>.accordion-header::after{transform:rotate(-90deg)}.accordion-header[class*=bg-] .accordion-button{border-bottom:1px solid var(--colour-border);margin-bottom:-1px}.accordion-header[class*=bg-] .accordion-button:before{background:none !important}.accordion-header[class*=bg-]:hover .accordion-button{opacity:.8}.accordion-header[class*=bg-]+.accordion-body{padding-top:2rem}.accordion-header{margin-bottom:0}.accordion-item{background-color:rgba(0,0,0,0);border-bottom:1px solid var(--colour-border);margin-bottom:2rem}.accordion-item:first-of-type{border-top:1px solid var(--colour-border)}.accordion-item+.accordion-item{margin-top:-2rem}.accordion-item summary~*{text-align:left;padding:0 var(--accordion-indent)}.accordion--straight>details>summary:not([class*=bg-])>.accordion-button,.accordion--straight>details>.accordion-item summary~*{padding-left:0 !important}.accordion--straight .accordion-item summary~*{padding-right:0 !important}.accordion .accordion:first-child{padding-top:1rem}.accordion .accordion:last-child{padding-bottom:2rem}.accordion .accordion .accordion-button{padding:1rem 3rem 1rem var(--accordion-indent)}.accordion .accordion .accordion-button:before,.accordion .accordion .accordion-button:after{top:.75rem;height:2rem;width:2rem;right:.5rem}.accordion .accordion .accordion-button:before{background-color:var(--colour-light)}/*# sourceMappingURL=assets/css/components/accordion.css.map */
1055
+ :is(.accordion,iam-accordion){--accordion-indent: 0.75rem;--accordion-right-padding: 3rem;--accordion-y-padding: 1rem;--accordion-icon-size: 1.875rem;--accordion-icon-top: 0.75rem}@media screen and (min-width: 62em){:is(.accordion,iam-accordion){--accordion-right-padding: 6rem;--accordion-y-padding: 2rem;--accordion-icon-size: 3rem;--accordion-icon-top: 1.25rem}}.accordion-header{padding:var(--accordion-y-padding) var(--accordion-right-padding) var(--accordion-y-padding) var(--accordion-indent);color:var(--colour-heading);text-align:left;background-color:rgba(0,0,0,0);overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease;--marker-bg: var(--colour-secondary);cursor:pointer;position:relative;max-width:100%}@media(prefers-reduced-motion: reduce){.accordion-header{transition:none}}.accordion-header .badge{vertical-align:bottom;margin-left:.5em;margin-right:.5em;margin-bottom:.1em}.accordion-header:before,.accordion-header:after{content:"";position:absolute;right:var(--accordion-indent);top:var(--accordion-icon-top);margin-top:var(--accordion-icon-size-half);width:var(--accordion-icon-size);height:var(--accordion-icon-size)}.accordion-header:before{text-indent:100%;white-space:nowrap;overflow:hidden;background:var(--marker-bg);border-radius:100%}.accordion-header::after{background:currentColor;mask-image:var(--icon-arrow);mask-size:50%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:50%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;transition:transform .2s ease-in-out;transform:rotate(90deg)}@media(prefers-reduced-motion: reduce){.accordion-header::after{transition:none}}@media(forced-colors: active){.accordion-header::after{content:"►";mask-image:none;-webkit-mask-image:none}}.accordion-header:hover,.accordion-header:focus{--marker-bg: var(--colour-warning);color:var(--colour-hover)}.accordion-header:hover{z-index:var(--index-focus)}.accordion-header:focus{z-index:var(--index-focus);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}[open]>summary>.accordion-header{color:var(--colour-heading);background-color:rgba(0,0,0,0)}[open]>summary>.accordion-header::after{transform:rotate(-90deg)}.accordion-header[class*=bg-] .accordion-button{border-bottom:1px solid var(--colour-border);margin-bottom:-1px}.accordion-header[class*=bg-] .accordion-button:before{background:none !important}.accordion-header[class*=bg-]:hover .accordion-button{opacity:.8}.accordion-header[class*=bg-]+.accordion-body{padding-top:2rem}.accordion-header{margin-bottom:0}.accordion-item{background-color:rgba(0,0,0,0);border-bottom:1px solid var(--colour-border);margin-bottom:2rem}.accordion-item:first-of-type{border-top:1px solid var(--colour-border)}.accordion-item+.accordion-item{margin-top:-2rem}.accordion-item summary~*{text-align:left;padding:0 var(--accordion-indent)}.accordion--straight>details>summary:not([class*=bg-])>.accordion-button,.accordion--straight>details>.accordion-item summary~*{padding-left:0 !important}.accordion--straight .accordion-item summary~*{padding-right:0 !important}.accordion .accordion:first-child{padding-top:1rem}.accordion .accordion:last-child{padding-bottom:2rem}.accordion .accordion .accordion-button{padding:1rem 3rem 1rem var(--accordion-indent)}.accordion .accordion .accordion-button:before,.accordion .accordion .accordion-button:after{top:.75rem;height:2rem;width:2rem;right:.5rem}.accordion .accordion .accordion-button:before{background-color:var(--colour-light)}/*# sourceMappingURL=assets/css/components/accordion.css.map */
1021
1056
 
1022
1057
  ${this.hasAttribute("css") ? `@import "${this.getAttribute("css")}";` : ""}
1023
1058
  </style>
1024
1059
  <div class="accordion">
1025
1060
  <slot></slot>
1026
1061
  </div>
1027
- `, this.shadowRoot.appendChild(i.content.cloneNode(!0));
1062
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
1028
1063
  }
1029
1064
  connectedCallback() {
1030
1065
  fe(this);
1031
1066
  }
1032
1067
  };
1033
- window.customElements.get("iam-accordion") || window.customElements.define("iam-accordion", pe);
1034
- const be = {
1068
+ window.customElements.get("iam-accordion") || window.customElements.define("iam-accordion", ge);
1069
+ const ye = {
1035
1070
  name: "Accordion",
1036
1071
  props: {},
1037
1072
  mounted() {
1038
1073
  }
1039
- }, ye = { ref: "wrapper" };
1040
- function ge(e, a, t, i, o, s) {
1041
- return d(), u("iam-accordion", ye, [
1042
- A(e.$slots, "default")
1074
+ }, ve = { ref: "wrapper" };
1075
+ function we(e, a, t, s, o, i) {
1076
+ return h(), p("iam-accordion", ve, [
1077
+ S(e.$slots, "default")
1043
1078
  ], 512);
1044
1079
  }
1045
- const Sr = /* @__PURE__ */ w(be, [["render", ge]]), ve = {
1080
+ const Jr = /* @__PURE__ */ _(ye, [["render", we]]), Ae = {
1046
1081
  name: "AccordionItem",
1047
1082
  props: {
1048
1083
  title: {
@@ -1069,7 +1104,7 @@ const Sr = /* @__PURE__ */ w(be, [["render", ge]]), ve = {
1069
1104
  },
1070
1105
  computed: {
1071
1106
  createID() {
1072
- return (e) => `${Nt(e)}`;
1107
+ return (e) => `${It(e)}`;
1073
1108
  }
1074
1109
  },
1075
1110
  data() {
@@ -1077,24 +1112,24 @@ const Sr = /* @__PURE__ */ w(be, [["render", ge]]), ve = {
1077
1112
  show: !this.lazy
1078
1113
  };
1079
1114
  }
1080
- }, _e = ["id"], Ae = ["classList"];
1081
- function we(e, a, t, i, o, s) {
1082
- return d(), u("details", {
1083
- id: s.createID(t.title)
1115
+ }, _e = ["id"], Le = ["classList"];
1116
+ function Se(e, a, t, s, o, i) {
1117
+ return h(), p("details", {
1118
+ id: i.createID(t.title)
1084
1119
  }, [
1085
- f("summary", {
1120
+ g("summary", {
1086
1121
  classList: `${t.titlecolour ? `bg-${t.titlecolour}` : ""}`
1087
1122
  }, [
1088
- ft(q(t.title), 1),
1089
- t.badge ? (d(), u("span", {
1123
+ ft(x(t.title), 1),
1124
+ t.badge ? (h(), p("span", {
1090
1125
  key: 0,
1091
- class: L(`badge bg-${t.badgecolour}`)
1092
- }, q(t.badge), 3)) : _("", !0)
1093
- ], 8, Ae),
1094
- A(e.$slots, "default")
1126
+ class: k(`badge bg-${t.badgecolour}`)
1127
+ }, x(t.badge), 3)) : A("", !0)
1128
+ ], 8, Le),
1129
+ S(e.$slots, "default")
1095
1130
  ], 8, _e);
1096
1131
  }
1097
- const kr = /* @__PURE__ */ w(ve, [["render", we]]), Le = {
1132
+ const Qr = /* @__PURE__ */ _(Ae, [["render", Se]]), ke = {
1098
1133
  name: "Header",
1099
1134
  props: {
1100
1135
  title: {
@@ -1111,36 +1146,36 @@ const kr = /* @__PURE__ */ w(ve, [["render", we]]), Le = {
1111
1146
  required: !1
1112
1147
  }
1113
1148
  }
1114
- }, Se = { class: "container" }, ke = { class: "row" }, qe = { class: "col-sm-6" }, $e = { class: "pt-5 pb-3 px-4" }, xe = { class: "col-sm-6 col-md-5 ms-auto" }, Ee = ["src"];
1115
- function Te(e, a, t, i, o, s) {
1116
- return d(), u("div", Se, [
1117
- f("div", {
1118
- class: L("bg-" + t.background + " mb-4")
1149
+ }, qe = { class: "container" }, $e = { class: "row" }, xe = { class: "col-sm-6" }, Ee = { class: "pt-5 pb-3 px-4" }, Te = { class: "col-sm-6 col-md-5 ms-auto" }, Me = ["src"];
1150
+ function He(e, a, t, s, o, i) {
1151
+ return h(), p("div", qe, [
1152
+ g("div", {
1153
+ class: k("bg-" + t.background + " mb-4")
1119
1154
  }, [
1120
- f("div", ke, [
1121
- f("div", qe, [
1122
- f("div", $e, [
1123
- f("h2", null, q(t.title), 1),
1124
- A(e.$slots, "default")
1155
+ g("div", $e, [
1156
+ g("div", xe, [
1157
+ g("div", Ee, [
1158
+ g("h2", null, x(t.title), 1),
1159
+ S(e.$slots, "default")
1125
1160
  ])
1126
1161
  ]),
1127
- f("div", xe, [
1128
- t.image ? (d(), u("img", {
1162
+ g("div", Te, [
1163
+ t.image ? (h(), p("img", {
1129
1164
  key: 0,
1130
1165
  src: t.image,
1131
1166
  alt: "",
1132
1167
  class: "h-100 w-100 object-cover"
1133
- }, null, 8, Ee)) : _("", !0)
1168
+ }, null, 8, Me)) : A("", !0)
1134
1169
  ])
1135
1170
  ])
1136
1171
  ], 2)
1137
1172
  ]);
1138
1173
  }
1139
- const qr = /* @__PURE__ */ w(Le, [["render", Te]]), He = {
1174
+ const Zr = /* @__PURE__ */ _(ke, [["render", He]]), Ce = {
1140
1175
  name: "Card",
1141
1176
  mounted() {
1142
1177
  this.$nextTick(function() {
1143
- import("./card.component.min-6bef4efd.mjs").then((e) => {
1178
+ import("./card.component.min-b4b9b9e4.mjs").then((e) => {
1144
1179
  window.customElements.get("iam-card") || window.customElements.define("iam-card", e.default);
1145
1180
  }).catch((e) => {
1146
1181
  console.log(e.message);
@@ -1148,31 +1183,31 @@ const qr = /* @__PURE__ */ w(Le, [["render", Te]]), He = {
1148
1183
  });
1149
1184
  }
1150
1185
  };
1151
- function Me(e, a, t, i, o, s) {
1152
- return d(), u("iam-card", null, [
1153
- A(e.$slots, "default")
1186
+ function Ne(e, a, t, s, o, i) {
1187
+ return h(), p("iam-card", null, [
1188
+ S(e.$slots, "default")
1154
1189
  ]);
1155
1190
  }
1156
- const Ce = /* @__PURE__ */ w(He, [["render", Me]]);
1191
+ const Re = /* @__PURE__ */ _(Ce, [["render", Ne]]);
1157
1192
  function De(e) {
1158
1193
  var a;
1159
- let t = e.querySelector(".carousel__inner"), i = e.querySelectorAll(".carousel__item").length;
1194
+ let t = e.querySelector(".carousel__inner"), s = e.querySelectorAll(".carousel__item").length;
1160
1195
  e.getAttribute("data-cols");
1161
- let o = e.getAttribute("data-sm-cols"), s = e.getAttribute("data-md-cols");
1196
+ let o = e.getAttribute("data-sm-cols"), i = e.getAttribute("data-md-cols");
1162
1197
  e.querySelector(".carousel__controls a").classList.add("active"), t.addEventListener("scroll", function(r) {
1163
1198
  clearTimeout(a), a = setTimeout(function() {
1164
- let l = t.clientWidth, c = t.scrollWidth, n = t.scrollLeft, h = Math.round(n / c * i) + 1, p = e.querySelector(".carousel__item:last-child").offsetLeft;
1165
- Array.from(e.querySelectorAll(".carousel__controls a")).forEach((y, b) => {
1166
- y.classList.remove("active");
1167
- }), e.querySelector(".control-" + h).classList.add("active"), h == 1 ? e.querySelector(".btn-prev").setAttribute("disabled", "disabled") : e.querySelector(".btn-prev").removeAttribute("disabled"), t.scrollLeft + l > p ? e.querySelector(".btn-next").setAttribute("disabled", "disabled") : e.querySelector(".btn-next").removeAttribute("disabled");
1199
+ let n = t.clientWidth, c = t.scrollWidth, l = t.scrollLeft, m = Math.round(l / c * s) + 1, d = e.querySelector(".carousel__item:last-child").offsetLeft;
1200
+ Array.from(e.querySelectorAll(".carousel__controls a")).forEach((f, b) => {
1201
+ f.classList.remove("active");
1202
+ }), e.querySelector(".control-" + m).classList.add("active"), m == 1 ? e.querySelector(".btn-prev").setAttribute("disabled", "disabled") : e.querySelector(".btn-prev").removeAttribute("disabled"), t.scrollLeft + n > d ? e.querySelector(".btn-next").setAttribute("disabled", "disabled") : e.querySelector(".btn-next").removeAttribute("disabled");
1168
1203
  }, 100);
1169
1204
  }, !1), e.addEventListener("click", function(r) {
1170
- for (var l = r.target; l && l != this; l = l.parentNode)
1171
- if (l.matches(".carousel__controls a")) {
1172
- r.preventDefault(), Array.from(e.querySelectorAll(".carousel__controls a")).forEach((n, h) => {
1173
- n.classList.remove("active");
1174
- }), l.classList.add("active");
1175
- const c = document.querySelector(l.getAttribute("href"));
1205
+ for (var n = r.target; n && n != this; n = n.parentNode)
1206
+ if (n.matches(".carousel__controls a")) {
1207
+ r.preventDefault(), Array.from(e.querySelectorAll(".carousel__controls a")).forEach((l, m) => {
1208
+ l.classList.remove("active");
1209
+ }), n.classList.add("active");
1210
+ const c = document.querySelector(n.getAttribute("href"));
1176
1211
  t.scroll({
1177
1212
  top: 0,
1178
1213
  left: c.offsetLeft,
@@ -1181,10 +1216,10 @@ function De(e) {
1181
1216
  break;
1182
1217
  }
1183
1218
  }, !1), e.addEventListener("click", function(r) {
1184
- for (var l = r.target; l && l != this; l = l.parentNode)
1185
- if (l.matches(".btn-next, .btn-prev")) {
1219
+ for (var n = r.target; n && n != this; n = n.parentNode)
1220
+ if (n.matches(".btn-next, .btn-prev")) {
1186
1221
  r.preventDefault();
1187
- let c = l.classList.contains("btn-prev") ? t.scrollLeft - t.clientWidth : t.scrollLeft + t.clientWidth;
1222
+ let c = n.classList.contains("btn-prev") ? t.scrollLeft - t.clientWidth : t.scrollLeft + t.clientWidth;
1188
1223
  t.scroll({
1189
1224
  top: 0,
1190
1225
  left: c,
@@ -1192,11 +1227,11 @@ function De(e) {
1192
1227
  });
1193
1228
  break;
1194
1229
  }
1195
- }, !1), i == 1 && e.classList.add("hide-btns"), o >= i && e.classList.add("hide-sm-btns"), s >= i && e.classList.add("hide-md-btns");
1230
+ }, !1), s == 1 && e.classList.add("hide-btns"), o >= s && e.classList.add("hide-sm-btns"), i >= s && e.classList.add("hide-md-btns");
1196
1231
  }
1197
- const Ne = {
1232
+ const Ie = {
1198
1233
  components: {
1199
- Card: Ce
1234
+ Card: Re
1200
1235
  },
1201
1236
  name: "Carousel",
1202
1237
  data() {
@@ -1273,17 +1308,17 @@ const Ne = {
1273
1308
  De(this.$refs.wrapper);
1274
1309
  });
1275
1310
  }
1276
- }, Re = ["id", "data-cols", "data-sm-cols", "data-md-cols"], ze = { class: "carousel__wrapper" }, Pe = { class: "carousel__inner" }, je = ["id"], Ie = ["innerHTML", "id"], Fe = ["href"], Be = /* @__PURE__ */ f("button", {
1311
+ }, Pe = ["id", "data-cols", "data-sm-cols", "data-md-cols"], je = { class: "carousel__wrapper" }, ze = { class: "carousel__inner" }, Be = ["id"], Fe = ["innerHTML", "id"], Oe = ["href"], Ve = /* @__PURE__ */ g("button", {
1277
1312
  class: "btn btn-prev",
1278
1313
  "data-go": "0",
1279
1314
  disabled: ""
1280
- }, "Prev", -1), Oe = /* @__PURE__ */ f("button", {
1315
+ }, "Prev", -1), We = /* @__PURE__ */ g("button", {
1281
1316
  class: "btn btn-next",
1282
1317
  "data-go": "2"
1283
1318
  }, "Next", -1);
1284
- function Ve(e, a, t, i, o, s) {
1285
- const r = I("Card");
1286
- return d(), u("div", {
1319
+ function Ue(e, a, t, s, o, i) {
1320
+ const r = z("Card");
1321
+ return h(), p("div", {
1287
1322
  class: "container carousel",
1288
1323
  id: "carousel" + o.id,
1289
1324
  ref: "wrapper",
@@ -1291,19 +1326,19 @@ function Ve(e, a, t, i, o, s) {
1291
1326
  "data-sm-cols": t.smcols,
1292
1327
  "data-md-cols": t.mdcols
1293
1328
  }, [
1294
- A(e.$slots, "default"),
1295
- f("div", ze, [
1296
- f("div", Pe, [
1297
- t.type == "card" ? (d(), u("div", {
1329
+ S(e.$slots, "default"),
1330
+ g("div", je, [
1331
+ g("div", ze, [
1332
+ t.type == "card" ? (h(), p("div", {
1298
1333
  key: 0,
1299
- class: L(`row row-cols-${t.cols} row-cols-sm-${t.smcols} row-cols-md-${t.mdcols} ${t.gap ? `g-${t.gap}` : ""}`)
1334
+ class: k(`row row-cols-${t.cols} row-cols-sm-${t.smcols} row-cols-md-${t.mdcols} ${t.gap ? `g-${t.gap}` : ""}`)
1300
1335
  }, [
1301
- (d(!0), u(H, null, M(t.items, (l, c) => (d(), u("div", {
1302
- class: L(`col carousel__item${t.colclass ? ` ${t.colclass}` : ""}`),
1336
+ (h(!0), p(M, null, H(t.items, (n, c) => (h(), p("div", {
1337
+ class: k(`col carousel__item${t.colclass ? ` ${t.colclass}` : ""}`),
1303
1338
  key: c,
1304
1339
  id: "carousel" + o.id + "slide" + (c + 1)
1305
1340
  }, [
1306
- T(r, C(l, {
1341
+ C(r, N(n, {
1307
1342
  class: t.cardclass,
1308
1343
  type: t.cardtype,
1309
1344
  btnyype: t.btntype,
@@ -1311,45 +1346,45 @@ function Ve(e, a, t, i, o, s) {
1311
1346
  ctatext: t.ctatext,
1312
1347
  hidectatext: t.hidectatext
1313
1348
  }), null, 16, ["class", "type", "btnyype", "titleclass", "ctatext", "hidectatext"])
1314
- ], 10, je))), 128))
1315
- ], 2)) : _("", !0),
1316
- t.type != "card" ? (d(), u("div", {
1349
+ ], 10, Be))), 128))
1350
+ ], 2)) : A("", !0),
1351
+ t.type != "card" ? (h(), p("div", {
1317
1352
  key: 1,
1318
- class: L(`row row-cols-${t.cols} row-cols-sm-${t.smcols} row-cols-md-${t.mdcols} ${t.gap ? `g-${t.gap}` : ""}`)
1353
+ class: k(`row row-cols-${t.cols} row-cols-sm-${t.smcols} row-cols-md-${t.mdcols} ${t.gap ? `g-${t.gap}` : ""}`)
1319
1354
  }, [
1320
- (d(!0), u(H, null, M(t.items, (l, c) => (d(), u("div", {
1321
- class: L(`col carousel__item${t.colclass ? ` ${t.colclass}` : ""}`),
1355
+ (h(!0), p(M, null, H(t.items, (n, c) => (h(), p("div", {
1356
+ class: k(`col carousel__item${t.colclass ? ` ${t.colclass}` : ""}`),
1322
1357
  key: c,
1323
- innerHTML: s.content(l),
1358
+ innerHTML: i.content(n),
1324
1359
  id: "carousel" + o.id + "slide" + (c + 1)
1325
- }, null, 10, Ie))), 128))
1326
- ], 2)) : _("", !0)
1360
+ }, null, 10, Fe))), 128))
1361
+ ], 2)) : A("", !0)
1327
1362
  ]),
1328
- f("div", {
1329
- class: L(`carousel__controls cols-${t.cols} cols-sm-${t.smcols} cols-md-${t.mdcols}`)
1363
+ g("div", {
1364
+ class: k(`carousel__controls cols-${t.cols} cols-sm-${t.smcols} cols-md-${t.mdcols}`)
1330
1365
  }, [
1331
- (d(!0), u(H, null, M(t.items, (l, c) => (d(), u("a", {
1366
+ (h(!0), p(M, null, H(t.items, (n, c) => (h(), p("a", {
1332
1367
  key: c,
1333
1368
  href: "#carousel" + o.id + "slide" + (c + 1),
1334
- class: L(`control-${c + 1}`)
1335
- }, "Slide " + q(c + 1), 11, Fe))), 128))
1369
+ class: k(`control-${c + 1}`)
1370
+ }, "Slide " + x(c + 1), 11, Oe))), 128))
1336
1371
  ], 2),
1337
- Be,
1338
- Oe
1372
+ Ve,
1373
+ We
1339
1374
  ])
1340
- ], 8, Re);
1375
+ ], 8, Pe);
1341
1376
  }
1342
- const $r = /* @__PURE__ */ w(Ne, [["render", Ve]]);
1377
+ const ti = /* @__PURE__ */ _(Ie, [["render", Ue]]);
1343
1378
  /*!
1344
- * iamKey v3.9.0-beta-1
1379
+ * iamKey v4.1.0-beta
1345
1380
  * Copyright 2022-2023 iamproperty
1346
1381
  */
1347
1382
  window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "header" });
1348
- class Ue extends HTMLElement {
1383
+ class Ye extends HTMLElement {
1349
1384
  constructor() {
1350
1385
  super(), this.attachShadow({ mode: "open" });
1351
- const a = 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") : `${a}/css/core.min.css`, i = document.createElement("template");
1352
- i.innerHTML = `
1386
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
1387
+ s.innerHTML = `
1353
1388
  <style>
1354
1389
  @import "${t}";
1355
1390
  .header-banner{background:linear-gradient(180deg, var(--colour-secondary) 0, var(--colour-info) 100%);margin-bottom:2rem;position:relative;overflow:hidden;max-width:100% !important}@media screen and (min-width: 62em){.header-banner{min-height:29.375rem}}.header-banner>.container{padding-bottom:0;position:relative}.header-banner .breadcrumb{margin-top:1.5rem;margin-bottom:-0.5rem}@media screen and (min-width: 62em){.header-banner .breadcrumb{position:absolute;top:0;left:3.75rem}}.header-banner__inner{--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary-theme);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: var(--colour-canvas);--colour-btn-action-hover-bg: var(--colour-light);color:var(--colour-body);background:#fff;padding:2rem;margin:1.875rem 0;position:relative;z-index:var(--index-above)}.header-banner__inner .text-primary{color:var(--colour-primary) !important}@media screen and (min-width: 62em){.header-banner__inner{max-width:37.5rem;margin:7rem 0 5rem 0;padding:3.5rem 4rem}}.header-banner__inner>*:last-child{padding-bottom:0;margin-bottom:0}.header-banner picture img{display:none}@media screen and (min-width: 62em){.header-banner picture img{display:block;position:absolute;top:-0.5%;left:40%;height:101%;object-fit:cover;width:60%;pointer-events:none}}::slotted(.breadcrumb){margin-top:1.5rem !important;margin-bottom:-0.5rem !important}@media screen and (min-width: 62em){::slotted(.breadcrumb){position:absolute !important;top:0 !important;left:5.25rem !important}}::slotted(*:last-child){padding-bottom:0 !important;margin-bottom:0 !important}/*# sourceMappingURL=assets/css/components/header.css.map */
@@ -1370,7 +1405,7 @@ class Ue extends HTMLElement {
1370
1405
  <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="" lazy="" />
1371
1406
  </picture>
1372
1407
  </div>
1373
- `, this.shadowRoot.appendChild(i.content.cloneNode(!0));
1408
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
1374
1409
  }
1375
1410
  connectedCallback() {
1376
1411
  this.classList.add("loaded");
@@ -1378,7 +1413,7 @@ class Ue extends HTMLElement {
1378
1413
  this.hasAttribute("image") ? t.setAttribute("srcset", this.getAttribute("image")) : a.remove();
1379
1414
  }
1380
1415
  }
1381
- const We = {
1416
+ const Ge = {
1382
1417
  name: "Header",
1383
1418
  props: {
1384
1419
  title: {
@@ -1392,53 +1427,53 @@ const We = {
1392
1427
  },
1393
1428
  mounted() {
1394
1429
  this.$nextTick(function() {
1395
- window.customElements.get("iam-header") || window.customElements.define("iam-header", Ue);
1430
+ window.customElements.get("iam-header") || window.customElements.define("iam-header", Ye);
1396
1431
  });
1397
1432
  }
1398
- }, Ge = ["image"], Ke = ["innerHTML"];
1399
- function Ye(e, a, t, i, o, s) {
1400
- return d(), u("iam-header", {
1433
+ }, Ke = ["image"], Xe = ["innerHTML"];
1434
+ function Je(e, a, t, s, o, i) {
1435
+ return h(), p("iam-header", {
1401
1436
  class: "bg-secondary",
1402
1437
  image: t.image
1403
1438
  }, [
1404
- A(e.$slots, "breadcrumb"),
1405
- t.title ? (d(), u("h1", {
1439
+ S(e.$slots, "breadcrumb"),
1440
+ t.title ? (h(), p("h1", {
1406
1441
  key: 0,
1407
1442
  innerHTML: t.title
1408
- }, null, 8, Ke)) : _("", !0),
1409
- A(e.$slots, "default")
1410
- ], 8, Ge);
1443
+ }, null, 8, Xe)) : A("", !0),
1444
+ S(e.$slots, "default")
1445
+ ], 8, Ke);
1411
1446
  }
1412
- const xr = /* @__PURE__ */ w(We, [["render", Ye]]);
1413
- function Xe(e) {
1447
+ const ei = /* @__PURE__ */ _(Ge, [["render", Je]]);
1448
+ function Qe(e) {
1414
1449
  var a;
1415
- const t = e.querySelector(".testimonial__images"), i = t.querySelectorAll("img").length;
1416
- if (i == 1)
1450
+ const t = e.querySelector(".testimonial__images"), s = t.querySelectorAll("img").length;
1451
+ if (s == 1)
1417
1452
  return !1;
1418
1453
  e.classList.add("testimonial--multi");
1419
- const o = function(s) {
1420
- const r = e.querySelector(".btn-next"), l = e.querySelector(".btn-prev");
1421
- r.setAttribute("data-go", s + 1), l.setAttribute("data-go", s - 1), r.removeAttribute("disabled"), l.removeAttribute("disabled"), s == 1 ? l.setAttribute("disabled", !0) : s == i && r.setAttribute("disabled", !0);
1454
+ const o = function(i) {
1455
+ const r = e.querySelector(".btn-next"), n = e.querySelector(".btn-prev");
1456
+ r.setAttribute("data-go", i + 1), n.setAttribute("data-go", i - 1), r.removeAttribute("disabled"), n.removeAttribute("disabled"), i == 1 ? n.setAttribute("disabled", !0) : i == s && r.setAttribute("disabled", !0);
1422
1457
  };
1423
- t.addEventListener("scroll", function(s) {
1458
+ t.addEventListener("scroll", function(i) {
1424
1459
  clearTimeout(a), a = setTimeout(function() {
1425
- let r = t.scrollWidth, l = t.scrollHeight, c = t.scrollLeft, n = t.scrollTop, h = Math.round(c / r * i) + 1;
1426
- c == 0 && n != 0 && (h = Math.round(n / l * i) + 1), e.setAttribute("data-show", h), o(h);
1460
+ let r = t.scrollWidth, n = t.scrollHeight, c = t.scrollLeft, l = t.scrollTop, m = Math.round(c / r * s) + 1;
1461
+ c == 0 && l != 0 && (m = Math.round(l / n * s) + 1), e.setAttribute("data-show", m), o(m);
1427
1462
  }, 300);
1428
- }, !1), e.addEventListener("click", function(s) {
1429
- for (var r = s.target; r && r != this; r = r.parentNode)
1463
+ }, !1), e.addEventListener("click", function(i) {
1464
+ for (var r = i.target; r && r != this; r = r.parentNode)
1430
1465
  if (r.matches("[data-go]")) {
1431
- let l = parseInt(r.getAttribute("data-go")), c = 0, n = 0, h = t.scrollWidth, p = t.scrollHeight;
1432
- h > p ? n = Math.floor(h * ((l - 1) / i)) : c = Math.floor(p * ((l - 1) / i)), t.scroll({
1466
+ let n = parseInt(r.getAttribute("data-go")), c = 0, l = 0, m = t.scrollWidth, d = t.scrollHeight;
1467
+ m > d ? l = Math.floor(m * ((n - 1) / s)) : c = Math.floor(d * ((n - 1) / s)), t.scroll({
1433
1468
  top: c,
1434
- left: n,
1469
+ left: l,
1435
1470
  behavior: "smooth"
1436
1471
  });
1437
1472
  break;
1438
1473
  }
1439
1474
  }, !1);
1440
1475
  }
1441
- const Je = {
1476
+ const Ze = {
1442
1477
  name: "Testimonial",
1443
1478
  props: {
1444
1479
  items: {
@@ -1452,68 +1487,90 @@ const Je = {
1452
1487
  }
1453
1488
  },
1454
1489
  mounted() {
1455
- Xe(this.$refs.wrapper);
1490
+ Qe(this.$refs.wrapper);
1456
1491
  }
1457
- }, Qe = {
1492
+ }, ta = {
1458
1493
  class: "container testimonial mb-5",
1459
1494
  "data-show": "1",
1460
1495
  ref: "wrapper"
1461
- }, Ze = { class: "row" }, ta = { class: "col-md-5 position-relative" }, ea = { class: "testimonial__images" }, aa = ["src"], ra = /* @__PURE__ */ f("div", { class: "testimonial__controls" }, [
1462
- /* @__PURE__ */ f("button", {
1496
+ }, ea = { class: "row" }, aa = { class: "col-md-5 position-relative" }, ra = { class: "testimonial__images" }, ia = ["src"], sa = /* @__PURE__ */ g("div", { class: "testimonial__controls" }, [
1497
+ /* @__PURE__ */ g("button", {
1463
1498
  "data-go": "0",
1464
1499
  disabled: "",
1465
1500
  class: "btn-prev"
1466
1501
  }, "Previous"),
1467
- /* @__PURE__ */ f("button", {
1502
+ /* @__PURE__ */ g("button", {
1468
1503
  "data-go": "2",
1469
1504
  class: "btn-next"
1470
1505
  }, "Next")
1471
- ], -1), ia = { class: "col-md-7" }, sa = /* @__PURE__ */ f("h2", null, "What our customers think…", -1), oa = { class: "testimonial__content" }, na = ["innerHTML"], la = ["innerHTML"], ca = { class: "testimonial__after" }, da = /* @__PURE__ */ f("span", { class: "circle circle--dots d-none d-md-block" }, null, -1);
1472
- function ua(e, a, t, i, o, s) {
1473
- return d(), u("div", Qe, [
1474
- f("div", {
1475
- class: L("bg-" + t.background)
1506
+ ], -1), oa = { class: "col-md-7" }, na = /* @__PURE__ */ g("h2", null, "What our customers think…", -1), la = { class: "testimonial__content" }, ca = ["innerHTML"], da = ["innerHTML"], ua = { class: "testimonial__after" }, ma = /* @__PURE__ */ g("span", { class: "circle circle--dots d-none d-md-block" }, null, -1);
1507
+ function ha(e, a, t, s, o, i) {
1508
+ return h(), p("div", ta, [
1509
+ g("div", {
1510
+ class: k("bg-" + t.background)
1476
1511
  }, [
1477
- f("div", Ze, [
1478
- f("div", ta, [
1479
- f("div", ea, [
1480
- (d(!0), u(H, null, M(t.items, (r, l) => (d(), u("img", {
1481
- key: l,
1512
+ g("div", ea, [
1513
+ g("div", aa, [
1514
+ g("div", ra, [
1515
+ (h(!0), p(M, null, H(t.items, (r, n) => (h(), p("img", {
1516
+ key: n,
1482
1517
  src: r.image ? r.image : "data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==",
1483
1518
  alt: "",
1484
- class: L("h-100 w-100 object-cover" + (r.image ? "" : " opacity-0"))
1485
- }, null, 10, aa))), 128))
1519
+ class: k("h-100 w-100 object-cover" + (r.image ? "" : " opacity-0"))
1520
+ }, null, 10, ia))), 128))
1486
1521
  ]),
1487
- ra
1522
+ sa
1488
1523
  ]),
1489
- f("div", ia, [
1490
- sa,
1491
- f("div", oa, [
1492
- (d(!0), u(H, null, M(t.items, (r, l) => (d(), u("blockquote", {
1493
- key: l,
1494
- class: L(r.class)
1524
+ g("div", oa, [
1525
+ na,
1526
+ g("div", la, [
1527
+ (h(!0), p(M, null, H(t.items, (r, n) => (h(), p("blockquote", {
1528
+ key: n,
1529
+ class: k(r.class)
1495
1530
  }, [
1496
- f("div", {
1531
+ g("div", {
1497
1532
  innerHTML: r.quote
1498
- }, null, 8, na),
1499
- f("cite", {
1533
+ }, null, 8, ca),
1534
+ g("cite", {
1500
1535
  innerHTML: r.cite
1501
- }, null, 8, la)
1536
+ }, null, 8, da)
1502
1537
  ], 2))), 128))
1503
1538
  ]),
1504
- f("div", ca, [
1505
- A(e.$slots, "default")
1539
+ g("div", ua, [
1540
+ S(e.$slots, "default")
1506
1541
  ])
1507
1542
  ])
1508
1543
  ]),
1509
- da
1544
+ ma
1510
1545
  ], 2)
1511
1546
  ], 512);
1512
1547
  }
1513
- const Er = /* @__PURE__ */ w(Je, [["render", ua]]);
1514
- const ma = {
1548
+ const ai = /* @__PURE__ */ _(Ze, [["render", ha]]);
1549
+ const pa = {
1550
+ name: "Timeline",
1551
+ props: {
1552
+ image: {
1553
+ type: String,
1554
+ required: !1
1555
+ }
1556
+ }
1557
+ }, ba = { class: "timeline" }, fa = { class: "timeline__content" }, ga = ["src"];
1558
+ function ya(e, a, t, s, o, i) {
1559
+ return h(), p("div", ba, [
1560
+ g("div", fa, [
1561
+ S(e.$slots, "default")
1562
+ ]),
1563
+ t.image ? (h(), p("img", {
1564
+ key: 0,
1565
+ src: t.image,
1566
+ alt: ""
1567
+ }, null, 8, ga)) : A("", !0)
1568
+ ]);
1569
+ }
1570
+ const ri = /* @__PURE__ */ _(pa, [["render", ya]]);
1571
+ const va = {
1515
1572
  components: {
1516
- Input: ot
1573
+ Input: lt
1517
1574
  },
1518
1575
  name: "PropertySearchbar",
1519
1576
  props: {
@@ -1657,46 +1714,46 @@ const ma = {
1657
1714
  ];
1658
1715
  }
1659
1716
  }
1660
- }, ha = {
1717
+ }, wa = {
1661
1718
  class: "container",
1662
1719
  ref: "wrapper"
1663
- }, fa = { class: "property-searchbar" }, pa = ["action", "method"], ba = { class: "col-12 col-md-3" }, ya = { class: "col-12 col-md" }, ga = /* @__PURE__ */ f("span", { class: "form-label d-none d-md-block" }, "Price range", -1), va = {
1720
+ }, Aa = { class: "property-searchbar" }, _a = ["action", "method"], La = { class: "col-12 col-md-3" }, Sa = { class: "col-12 col-md" }, ka = /* @__PURE__ */ g("span", { class: "form-label d-none d-md-block" }, "Price range", -1), qa = {
1664
1721
  class: "row",
1665
1722
  "data-input-range": ""
1666
- }, _a = { class: "col-12 col-md" }, Aa = /* @__PURE__ */ f("span", { class: "form-label d-none d-md-block" }, "Number of beds", -1), wa = {
1723
+ }, $a = { class: "col-12 col-md" }, xa = /* @__PURE__ */ g("span", { class: "form-label d-none d-md-block" }, "Number of beds", -1), Ea = {
1667
1724
  class: "row",
1668
1725
  "data-input-range": ""
1669
- }, La = { class: "col-12 col-md-2" }, Sa = /* @__PURE__ */ f("div", { class: "col-12 col-md mw-md-fit-content d-flex property-searchbar__btn" }, [
1670
- /* @__PURE__ */ f("button", {
1726
+ }, Ta = { class: "col-12 col-md-2" }, Ma = /* @__PURE__ */ g("div", { class: "col-12 col-md mw-md-fit-content d-flex property-searchbar__btn" }, [
1727
+ /* @__PURE__ */ g("button", {
1671
1728
  class: "btn w-100 me-0",
1672
1729
  type: "submit",
1673
1730
  value: "submit"
1674
1731
  }, "Search")
1675
1732
  ], -1);
1676
- function ka(e, a, t, i, o, s) {
1677
- const r = I("Input");
1678
- return d(), u("div", ha, [
1679
- A(e.$slots, "default"),
1680
- f("div", fa, [
1681
- f("form", {
1733
+ function Ha(e, a, t, s, o, i) {
1734
+ const r = z("Input");
1735
+ return h(), p("div", wa, [
1736
+ S(e.$slots, "default"),
1737
+ g("div", Aa, [
1738
+ g("form", {
1682
1739
  class: "row",
1683
1740
  action: t.formaction,
1684
1741
  method: t.formmethod
1685
1742
  }, [
1686
- f("fieldset", ba, [
1687
- T(r, {
1743
+ g("fieldset", La, [
1744
+ C(r, {
1688
1745
  inputClass: "input--locations",
1689
- modelValue: s.locationSet,
1690
- "onUpdate:modelValue": a[0] || (a[0] = (l) => s.locationSet = l),
1746
+ modelValue: i.locationSet,
1747
+ "onUpdate:modelValue": a[0] || (a[0] = (n) => i.locationSet = n),
1691
1748
  label: "Location",
1692
1749
  id: "location",
1693
- options: s.locationsList(),
1750
+ options: i.locationsList(),
1694
1751
  required: "",
1695
1752
  placeholder: "i.e. Newcastle or NE1",
1696
- onKeyupEvent: a[1] || (a[1] = (l) => s.locationKeyup(...arguments)),
1753
+ onKeyupEvent: a[1] || (a[1] = (n) => i.locationKeyup(...arguments)),
1697
1754
  ref: "search"
1698
1755
  }, null, 8, ["modelValue", "options"]),
1699
- T(r, {
1756
+ C(r, {
1700
1757
  class: "select--miles",
1701
1758
  label: "Miles",
1702
1759
  id: "miles",
@@ -1704,10 +1761,10 @@ function ka(e, a, t, i, o, s) {
1704
1761
  options: t.distances
1705
1762
  }, null, 8, ["options"])
1706
1763
  ]),
1707
- f("fieldset", ya, [
1708
- ga,
1709
- f("div", va, [
1710
- T(r, {
1764
+ g("fieldset", Sa, [
1765
+ ka,
1766
+ g("div", qa, [
1767
+ C(r, {
1711
1768
  class: "col-6",
1712
1769
  label: "Minimum price",
1713
1770
  id: "price-min",
@@ -1715,7 +1772,7 @@ function ka(e, a, t, i, o, s) {
1715
1772
  type: "select",
1716
1773
  options: t.pricemin
1717
1774
  }, null, 8, ["options"]),
1718
- T(r, {
1775
+ C(r, {
1719
1776
  class: "col-6",
1720
1777
  label: "Maximum price",
1721
1778
  id: "price-max",
@@ -1725,10 +1782,10 @@ function ka(e, a, t, i, o, s) {
1725
1782
  }, null, 8, ["options"])
1726
1783
  ])
1727
1784
  ]),
1728
- f("fieldset", _a, [
1729
- Aa,
1730
- f("div", wa, [
1731
- T(r, {
1785
+ g("fieldset", $a, [
1786
+ xa,
1787
+ g("div", Ea, [
1788
+ C(r, {
1732
1789
  class: "col-6",
1733
1790
  label: "Minimum beds",
1734
1791
  id: "beds-min",
@@ -1736,7 +1793,7 @@ function ka(e, a, t, i, o, s) {
1736
1793
  type: "select",
1737
1794
  options: t.bedsmin
1738
1795
  }, null, 8, ["options"]),
1739
- T(r, {
1796
+ C(r, {
1740
1797
  class: "col-6",
1741
1798
  label: "Maximum beds",
1742
1799
  id: "beds-max",
@@ -1746,26 +1803,26 @@ function ka(e, a, t, i, o, s) {
1746
1803
  }, null, 8, ["options"])
1747
1804
  ])
1748
1805
  ]),
1749
- f("fieldset", La, [
1750
- T(r, {
1806
+ g("fieldset", Ta, [
1807
+ C(r, {
1751
1808
  label: "Property type",
1752
1809
  id: "property-type",
1753
1810
  type: "select",
1754
1811
  options: t.propertytypes
1755
1812
  }, null, 8, ["options"])
1756
1813
  ]),
1757
- Sa
1758
- ], 8, pa)
1814
+ Ma
1815
+ ], 8, _a)
1759
1816
  ]),
1760
- A(e.$slots, "after")
1817
+ S(e.$slots, "after")
1761
1818
  ], 512);
1762
1819
  }
1763
- const Tr = /* @__PURE__ */ w(ma, [["render", ka]]), qa = {
1820
+ const ii = /* @__PURE__ */ _(va, [["render", Ha]]), Ca = {
1764
1821
  components: {},
1765
1822
  name: "Nav",
1766
1823
  mounted() {
1767
1824
  this.$nextTick(function() {
1768
- import("./nav.component.min-93eb365a.mjs").then((e) => {
1825
+ import("./nav.component.min-5ca99e09.mjs").then((e) => {
1769
1826
  window.customElements.get("iam-nav") || window.customElements.define("iam-nav", e.default);
1770
1827
  }).catch((e) => {
1771
1828
  console.log(e.message);
@@ -1773,14 +1830,14 @@ const Tr = /* @__PURE__ */ w(ma, [["render", ka]]), qa = {
1773
1830
  });
1774
1831
  },
1775
1832
  methods: {}
1776
- }, $a = { ref: "wrapper" };
1777
- function xa(e, a, t, i, o, s) {
1778
- return d(), u("iam-nav", $a, [
1779
- A(e.$slots, "default")
1833
+ }, Na = { ref: "wrapper" };
1834
+ function Ra(e, a, t, s, o, i) {
1835
+ return h(), p("iam-nav", Na, [
1836
+ S(e.$slots, "default")
1780
1837
  ], 512);
1781
1838
  }
1782
- const Hr = /* @__PURE__ */ w(qa, [["render", xa]]);
1783
- const Ea = {
1839
+ const si = /* @__PURE__ */ _(Ca, [["render", Ra]]);
1840
+ const Da = {
1784
1841
  name: "Stepper",
1785
1842
  props: {
1786
1843
  label: {
@@ -1793,25 +1850,60 @@ const Ea = {
1793
1850
  default: "Complete"
1794
1851
  }
1795
1852
  }
1796
- }, Ta = { class: "container" }, Ha = ["aria-label"], Ma = {
1853
+ }, Ia = { class: "container" }, Pa = ["aria-label"], ja = {
1797
1854
  key: 0,
1798
1855
  class: "h6 stepper__start"
1799
- }, Ca = { class: "list-unstyled" }, Da = { class: "h6 stepper__end" };
1800
- function Na(e, a, t, i, o, s) {
1801
- return d(), u("div", Ta, [
1802
- f("nav", {
1856
+ }, za = { class: "list-unstyled" }, Ba = { class: "h6 stepper__end" };
1857
+ function Fa(e, a, t, s, o, i) {
1858
+ return h(), p("div", Ia, [
1859
+ g("nav", {
1803
1860
  class: "stepper",
1804
1861
  "aria-label": t.label ? t.label : "Progress"
1805
1862
  }, [
1806
- t.label ? (d(), u("span", Ma, q(t.label), 1)) : _("", !0),
1807
- f("ol", Ca, [
1808
- A(e.$slots, "default")
1863
+ t.label ? (h(), p("span", ja, x(t.label), 1)) : A("", !0),
1864
+ g("ol", za, [
1865
+ S(e.$slots, "default")
1809
1866
  ]),
1810
- f("span", Da, q(t.endlabel), 1)
1811
- ], 8, Ha)
1867
+ g("span", Ba, x(t.endlabel), 1)
1868
+ ], 8, Pa)
1812
1869
  ]);
1813
1870
  }
1814
- const Mr = /* @__PURE__ */ w(Ea, [["render", Na]]), Ra = {
1871
+ const oi = /* @__PURE__ */ _(Da, [["render", Fa]]);
1872
+ const Oa = {
1873
+ name: "Snapshot",
1874
+ props: {
1875
+ items: {
1876
+ type: Array,
1877
+ required: !0
1878
+ }
1879
+ }
1880
+ }, Va = {
1881
+ class: "container snapshot",
1882
+ ref: "wrapper"
1883
+ }, Wa = { class: "row" }, Ua = ["href"], Ya = { class: "lead snapshot__title" }, Ga = { class: "stat" };
1884
+ function Ka(e, a, t, s, o, i) {
1885
+ return h(), p("div", Va, [
1886
+ S(e.$slots, "default"),
1887
+ g("div", Wa, [
1888
+ (h(!0), p(M, null, H(t.items, (r, n) => (h(), p("div", {
1889
+ class: "col",
1890
+ key: n
1891
+ }, [
1892
+ r.link ? (h(), p("a", {
1893
+ key: 0,
1894
+ href: r.link
1895
+ }, "View " + x(r.title), 9, Ua)) : A("", !0),
1896
+ g("div", {
1897
+ class: k(`snapshot__item ${r.bg ? "bg-" + r.bg : ""}`)
1898
+ }, [
1899
+ g("span", Ya, x(r.title), 1),
1900
+ g("span", Ga, x(r.number), 1)
1901
+ ], 2)
1902
+ ]))), 128))
1903
+ ])
1904
+ ], 512);
1905
+ }
1906
+ const ni = /* @__PURE__ */ _(Oa, [["render", Ka]]), Xa = {
1815
1907
  name: "Stepper",
1816
1908
  props: {
1817
1909
  url: {
@@ -1827,72 +1919,72 @@ const Mr = /* @__PURE__ */ w(Ea, [["render", Na]]), Ra = {
1827
1919
  required: !1
1828
1920
  }
1829
1921
  }
1830
- }, za = ["href", "aria-current"], Pa = {
1922
+ }, Ja = ["href", "aria-current"], Qa = {
1831
1923
  key: 0,
1832
1924
  class: "visually-hidden"
1833
1925
  };
1834
- function ja(e, a, t, i, o, s) {
1835
- return d(), u("li", null, [
1836
- f("a", {
1926
+ function Za(e, a, t, s, o, i) {
1927
+ return h(), p("li", null, [
1928
+ g("a", {
1837
1929
  href: t.url,
1838
- class: L(`${t.status ? "bg-" + t.status : ""}${typeof t.current < "u" ? "current" : ""}`),
1930
+ class: k(`${t.status ? "bg-" + t.status : ""}${typeof t.current < "u" ? "current" : ""}`),
1839
1931
  "aria-current": typeof t.current < "u"
1840
1932
  }, [
1841
- f("span", null, [
1842
- A(e.$slots, "default")
1933
+ g("span", null, [
1934
+ S(e.$slots, "default")
1843
1935
  ]),
1844
- t.status ? (d(), u("em", Pa, " - status: " + q(t.status), 1)) : _("", !0)
1845
- ], 10, za)
1936
+ t.status ? (h(), p("em", Qa, " - status: " + x(t.status), 1)) : A("", !0)
1937
+ ], 10, Ja)
1846
1938
  ]);
1847
1939
  }
1848
- const Cr = /* @__PURE__ */ w(Ra, [["render", ja]]);
1940
+ const li = /* @__PURE__ */ _(Xa, [["render", Za]]);
1849
1941
  /*!
1850
- * iamKey v3.9.0-beta-1
1942
+ * iamKey v4.1.0-beta
1851
1943
  * Copyright 2022-2023 iamproperty
1852
1944
  */
1853
- const Ia = function(e) {
1945
+ const tr = function(e) {
1854
1946
  const a = e.querySelectorAll(":scope > details");
1855
1947
  e.querySelectorAll(":scope > details > summary");
1856
1948
  let t = e.querySelector(":scope > .tabs__links");
1857
- e.shadowRoot && e.shadowRoot.querySelector(".tabs__links") && (t = e.shadowRoot.querySelector(".tabs__links")), t || (t = document.createElement("div"), t.classList.add("tabs__links"), e.prepend(t)), a.forEach((i, o) => {
1858
- let s = i.querySelector(":scope > summary");
1859
- s.classList.add("visually-hidden");
1949
+ e.shadowRoot && e.shadowRoot.querySelector(".tabs__links") && (t = e.shadowRoot.querySelector(".tabs__links")), t || (t = document.createElement("div"), t.classList.add("tabs__links"), e.prepend(t)), a.forEach((s, o) => {
1950
+ let i = s.querySelector(":scope > summary");
1951
+ i.classList.add("visually-hidden");
1860
1952
  let r = document.createElement("button");
1861
- i.hasAttribute("id") && (r = document.createElement("a"), r.setAttribute("href", `#${i.getAttribute("id")}`)), i.hasAttribute("open") && r.setAttribute("aria-pressed", !0), r.innerHTML = `${s.innerText}`, r.classList.add("link"), r.setAttribute("data-index", o), r.setAttribute("tabindex", "-1"), t.appendChild(r);
1953
+ s.hasAttribute("id") && (r = document.createElement("a"), r.setAttribute("href", `#${s.getAttribute("id")}`)), s.hasAttribute("open") && r.setAttribute("aria-pressed", !0), r.innerHTML = `${i.innerText}`, r.classList.add("link"), r.setAttribute("data-index", o), r.setAttribute("tabindex", "-1"), t.appendChild(r);
1862
1954
  });
1863
- }, Fa = function(e) {
1864
- let a = e.querySelectorAll(":scope > details"), t = e.querySelectorAll(":scope > details > summary"), i = e.querySelectorAll(":scope .tabs__links > .link");
1865
- e.shadowRoot && (i = e.shadowRoot.querySelectorAll(".tabs__links > .link")), i.forEach((o) => {
1866
- o.addEventListener("click", (s) => {
1867
- s.preventDefault(), i.forEach((r) => {
1868
- let l = r == o;
1869
- r.setAttribute("aria-pressed", l);
1870
- }), a.forEach((r, l) => {
1871
- let c = o.getAttribute("data-index") == l;
1955
+ }, er = function(e) {
1956
+ let a = e.querySelectorAll(":scope > details"), t = e.querySelectorAll(":scope > details > summary"), s = e.querySelectorAll(":scope .tabs__links > .link");
1957
+ e.shadowRoot && (s = e.shadowRoot.querySelectorAll(".tabs__links > .link")), s.forEach((o) => {
1958
+ o.addEventListener("click", (i) => {
1959
+ i.preventDefault(), s.forEach((r) => {
1960
+ let n = r == o;
1961
+ r.setAttribute("aria-pressed", n);
1962
+ }), a.forEach((r, n) => {
1963
+ let c = o.getAttribute("data-index") == n;
1872
1964
  c ? r.setAttribute("open", c) : r.removeAttribute("open");
1873
1965
  }), o.hasAttribute("href") && history.pushState(void 0, void 0, o.getAttribute("href")), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "openTab", tabTitle: o.textContent });
1874
1966
  });
1875
- }), t.forEach((o, s) => {
1967
+ }), t.forEach((o, i) => {
1876
1968
  o.addEventListener("focus", (r) => {
1877
- i.forEach((l) => {
1878
- l.classList.remove("focus");
1879
- }), i[s].classList.add("focus");
1969
+ s.forEach((n) => {
1970
+ n.classList.remove("focus");
1971
+ }), s[i].classList.add("focus");
1880
1972
  }), o.addEventListener("click", (r) => {
1881
- r.preventDefault(), i[s].click();
1973
+ r.preventDefault(), s[i].click();
1882
1974
  });
1883
1975
  });
1884
- }, Ba = function(e) {
1976
+ }, ar = function(e) {
1885
1977
  let a = e.querySelectorAll(":scope > details"), t = e.querySelectorAll(":scope > .tabs__links > button, .tabs__links > a");
1886
1978
  e.shadowRoot && (t = e.shadowRoot.querySelectorAll(".tabs__links > button, .tabs__links > a")), location.hash && e.querySelector(`.tabs__links [href="${location.hash}"]`) ? (e.querySelector(`[href="${location.hash}"]`).setAttribute("open", !0), e.querySelector(`details[id="${location.hash.replace("#", "")}"]`).setAttribute("open", !0)) : e.querySelector("details[open]") || (a[0].setAttribute("open", !0), t[0].setAttribute("aria-pressed", !0));
1887
- }, Oa = function(e) {
1888
- Ia(e), Fa(e), Ba(e);
1979
+ }, rr = function(e) {
1980
+ tr(e), er(e), ar(e);
1889
1981
  };
1890
1982
  window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "tabs" });
1891
- class Va extends HTMLElement {
1983
+ let ir = class extends HTMLElement {
1892
1984
  constructor() {
1893
1985
  super(), this.attachShadow({ mode: "open" });
1894
- const a = 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") : `${a}/css/core.min.css`, i = document.createElement("template");
1895
- i.innerHTML = `
1986
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
1987
+ s.innerHTML = `
1896
1988
  <style>
1897
1989
  @import "${t}";
1898
1990
 
@@ -1906,23 +1998,23 @@ class Va extends HTMLElement {
1906
1998
  <div class="tabs__links"></div>
1907
1999
  <slot></slot>
1908
2000
  </div>
1909
- `, this.shadowRoot.appendChild(i.content.cloneNode(!0));
2001
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
1910
2002
  }
1911
2003
  connectedCallback() {
1912
2004
  let a = this.classList.toString().replace("container", "");
1913
- this.shadowRoot.querySelector(".tabs").setAttribute("class", `tabs ${a}`), Oa(this);
2005
+ this.shadowRoot.querySelector(".tabs").setAttribute("class", `tabs ${a}`), rr(this);
1914
2006
  }
1915
- }
1916
- window.customElements.get("iam-tabs") || window.customElements.define("iam-tabs", Va);
1917
- const Ua = {
2007
+ };
2008
+ window.customElements.get("iam-tabs") || window.customElements.define("iam-tabs", ir);
2009
+ const sr = {
1918
2010
  name: "Tabs"
1919
- }, Wa = { ref: "wrapper" };
1920
- function Ga(e, a, t, i, o, s) {
1921
- return d(), u("iam-tabs", Wa, [
1922
- A(e.$slots, "default")
2011
+ }, or = { ref: "wrapper" };
2012
+ function nr(e, a, t, s, o, i) {
2013
+ return h(), p("iam-tabs", or, [
2014
+ S(e.$slots, "default")
1923
2015
  ], 512);
1924
2016
  }
1925
- const Dr = /* @__PURE__ */ w(Ua, [["render", Ga]]), Ka = {
2017
+ const di = /* @__PURE__ */ _(sr, [["render", nr]]), lr = {
1926
2018
  name: "Tab",
1927
2019
  props: {
1928
2020
  title: {
@@ -1944,20 +2036,20 @@ const Dr = /* @__PURE__ */ w(Ua, [["render", Ga]]), Ka = {
1944
2036
  console.log(e);
1945
2037
  }
1946
2038
  }
1947
- }, Ya = { class: "tab" }, Xa = ["innerHTML"];
1948
- function Ja(e, a, t, i, o, s) {
1949
- return d(), u("details", Ya, [
1950
- f("summary", { innerHTML: t.title }, null, 8, Xa),
1951
- A(e.$slots, "default")
2039
+ }, cr = { class: "tab" }, dr = ["innerHTML"];
2040
+ function ur(e, a, t, s, o, i) {
2041
+ return h(), p("details", cr, [
2042
+ g("summary", { innerHTML: t.title }, null, 8, dr),
2043
+ S(e.$slots, "default")
1952
2044
  ]);
1953
2045
  }
1954
- const Nr = /* @__PURE__ */ w(Ka, [["render", Ja]]);
1955
- let nt = st.props;
1956
- nt.fields.required = !1;
1957
- const Qa = {
2046
+ const ui = /* @__PURE__ */ _(lr, [["render", ur]]);
2047
+ let ct = nt.props;
2048
+ ct.fields.required = !1;
2049
+ const mr = {
1958
2050
  components: {
1959
- Table: st,
1960
- Input: ot
2051
+ Table: nt,
2052
+ Input: lt
1961
2053
  },
1962
2054
  data() {
1963
2055
  return {
@@ -1970,9 +2062,9 @@ const Qa = {
1970
2062
  console.log(this);
1971
2063
  const a = new FormData(e.target);
1972
2064
  let t = /* @__PURE__ */ new Date();
1973
- const i = t.getFullYear();
1974
- let o = t.getMonth() + 1, s = t.getDate();
1975
- s < 10 && (s = "0" + s), o < 10 && (o = "0" + o), t = s + "/" + o + "/" + i, this.itemsData.unshift({
2065
+ const s = t.getFullYear();
2066
+ let o = t.getMonth() + 1, i = t.getDate();
2067
+ i < 10 && (i = "0" + i), o < 10 && (o = "0" + o), t = i + "/" + o + "/" + s, this.itemsData.unshift({
1976
2068
  date_added: t,
1977
2069
  user: a.get("user"),
1978
2070
  note: a.get("addNote")
@@ -1985,7 +2077,7 @@ const Qa = {
1985
2077
  type: String,
1986
2078
  required: !0
1987
2079
  },
1988
- ...nt,
2080
+ ...ct,
1989
2081
  title: {
1990
2082
  type: String,
1991
2083
  required: !1
@@ -2000,94 +2092,94 @@ const Qa = {
2000
2092
  required: !1
2001
2093
  }
2002
2094
  }
2003
- }, Za = { class: "container note-feed mb-2" }, tr = ["innerHTML"], er = ["action", "method"], ar = ["value"], rr = /* @__PURE__ */ f("button", { class: "btn btn-tertiary" }, "Submit note", -1);
2004
- function ir(e, a, t, i, o, s) {
2005
- const r = I("Table"), l = I("Input");
2006
- return d(), u("div", Za, [
2007
- t.title ? (d(), u("span", {
2095
+ }, hr = { class: "container note-feed mb-2" }, pr = ["innerHTML"], br = ["action", "method"], fr = ["value"], gr = /* @__PURE__ */ g("button", { class: "btn btn-tertiary" }, "Submit note", -1);
2096
+ function yr(e, a, t, s, o, i) {
2097
+ const r = z("Table"), n = z("Input");
2098
+ return h(), p("div", hr, [
2099
+ t.title ? (h(), p("span", {
2008
2100
  key: 0,
2009
2101
  class: "h3",
2010
2102
  innerHTML: t.title
2011
- }, null, 8, tr)) : _("", !0),
2012
- T(r, C({
2103
+ }, null, 8, pr)) : A("", !0),
2104
+ C(r, N({
2013
2105
  fields: [{ key: "date_added" }, { key: "user" }, { key: "note" }],
2014
2106
  items: o.itemsData
2015
2107
  }, e.$props, { class: "mb-0" }), null, 16, ["items"]),
2016
- f("form", {
2108
+ g("form", {
2017
2109
  action: t.action,
2018
2110
  method: t.method,
2019
- onSubmit: a[0] || (a[0] = pt((c) => s.submitForm(...arguments), ["prevent"]))
2111
+ onSubmit: a[0] || (a[0] = gt((c) => i.submitForm(...arguments), ["prevent"]))
2020
2112
  }, [
2021
- f("input", {
2113
+ g("input", {
2022
2114
  type: "hidden",
2023
2115
  value: t.user,
2024
2116
  name: "user"
2025
- }, null, 8, ar),
2026
- T(l, {
2117
+ }, null, 8, fr),
2118
+ C(n, {
2027
2119
  id: "addNote",
2028
2120
  type: "textarea",
2029
2121
  label: "Add note",
2030
2122
  required: "",
2031
2123
  class: "mw-100"
2032
2124
  }),
2033
- rr
2034
- ], 40, er)
2125
+ gr
2126
+ ], 40, br)
2035
2127
  ]);
2036
2128
  }
2037
- const Rr = /* @__PURE__ */ w(Qa, [["render", ir]]);
2129
+ const mi = /* @__PURE__ */ _(mr, [["render", yr]]);
2038
2130
  /*!
2039
- * iamKey v3.9.0-beta-1
2131
+ * iamKey v4.1.0-beta
2040
2132
  * Copyright 2022-2023 iamproperty
2041
2133
  */
2042
- function sr(e, a) {
2043
- function t(i, o) {
2044
- let s = !1, r = o.getAttribute("name");
2134
+ function vr(e, a) {
2135
+ function t(s, o) {
2136
+ let i = !1, r = o.getAttribute("name");
2045
2137
  r.includes("[]") && (r = r.replace("[]", `[${o.value}]`));
2046
- let l = i.querySelector(`[data-name="${r}"]`);
2047
- l && o.getAttribute("type") == "checkbox" && (s = !0);
2138
+ let n = s.querySelector(`[data-name="${r}"]`);
2139
+ n && o.getAttribute("type") == "checkbox" && (i = !0);
2048
2140
  let c = o.getAttribute("data-filter-text");
2049
- if (l || (l = document.createElement("button"), i.appendChild(l)), l.setAttribute("type", "button"), l.classList.add("filter"), l.setAttribute("data-name", r), l.innerHTML = c.replace("$value", o.value), (!o.value || s) && l.remove(), o.parentNode.closest("[data-filter-text]")) {
2050
- let n = o.parentNode.closest("[data-filter-text]"), h = !0;
2051
- if (r = "", n.querySelectorAll("input").forEach((p, y) => {
2052
- let b = p.getAttribute("name");
2053
- if (r += `${y != 0 ? "," : ""}${b}`, i.querySelector(`[data-name="${b}"]`) && i.querySelector(`[data-name="${b}"]`).remove(), p.value) {
2054
- let m = document.createElement("button");
2055
- m.setAttribute("type", "button"), m.classList.add("filter"), m.setAttribute("data-name", b), m.innerHTML = c.replace("$value", p.value), i.appendChild(m);
2141
+ if (n || (n = document.createElement("button"), s.appendChild(n)), n.setAttribute("type", "button"), n.classList.add("filter"), n.setAttribute("data-name", r), n.innerHTML = c.replace("$value", o.value), (!o.value || i) && n.remove(), o.parentNode.closest("[data-filter-text]")) {
2142
+ let l = o.parentNode.closest("[data-filter-text]"), m = !0;
2143
+ if (r = "", l.querySelectorAll("input").forEach((d, f) => {
2144
+ let b = d.getAttribute("name");
2145
+ if (r += `${f != 0 ? "," : ""}${b}`, s.querySelector(`[data-name="${b}"]`) && s.querySelector(`[data-name="${b}"]`).remove(), d.value) {
2146
+ let u = document.createElement("button");
2147
+ u.setAttribute("type", "button"), u.classList.add("filter"), u.setAttribute("data-name", b), u.innerHTML = c.replace("$value", d.value), s.appendChild(u);
2056
2148
  } else
2057
- h = !1;
2058
- }), i.querySelector(`[data-name="${r}"]`) && i.querySelector(`[data-name="${r}"]`).remove(), h) {
2059
- let p = n.getAttribute("data-filter-text");
2060
- n.querySelectorAll("input").forEach((b, m) => {
2061
- let S = b.getAttribute("name");
2062
- i.querySelector(`[data-name="${S}"]`) && i.querySelector(`[data-name="${S}"]`).remove(), p = p.replace(`$${m + 1}`, b.value);
2149
+ m = !1;
2150
+ }), s.querySelector(`[data-name="${r}"]`) && s.querySelector(`[data-name="${r}"]`).remove(), m) {
2151
+ let d = l.getAttribute("data-filter-text");
2152
+ l.querySelectorAll("input").forEach((b, u) => {
2153
+ let v = b.getAttribute("name");
2154
+ s.querySelector(`[data-name="${v}"]`) && s.querySelector(`[data-name="${v}"]`).remove(), d = d.replace(`$${u + 1}`, b.value);
2063
2155
  });
2064
- let y = document.createElement("button");
2065
- y.setAttribute("type", "button"), y.classList.add("filter"), y.setAttribute("data-name", r), y.innerHTML = p, i.appendChild(y);
2156
+ let f = document.createElement("button");
2157
+ f.setAttribute("type", "button"), f.classList.add("filter"), f.setAttribute("data-name", r), f.innerHTML = d, s.appendChild(f);
2066
2158
  }
2067
2159
  }
2068
2160
  }
2069
- Array.from(e.querySelectorAll('input[type="checkbox"]:checked')).forEach((i, o) => {
2070
- t(a, i);
2071
- }), e.addEventListener("change", function(i) {
2072
- if (i && i.target instanceof HTMLElement && i.target.closest("input[data-filter-text]")) {
2073
- let o = i.target.closest("input[data-filter-text]");
2161
+ Array.from(e.querySelectorAll('input[type="checkbox"]:checked')).forEach((s, o) => {
2162
+ t(a, s);
2163
+ }), e.addEventListener("change", function(s) {
2164
+ if (s && s.target instanceof HTMLElement && s.target.closest("input[data-filter-text]")) {
2165
+ let o = s.target.closest("input[data-filter-text]");
2074
2166
  t(a, o);
2075
2167
  }
2076
- }, !1), a.addEventListener("click", function(i) {
2077
- if (i && i.target instanceof HTMLElement && i.target.closest(".filter")) {
2078
- let r = i.target.closest(".filter"), l = r.getAttribute("data-name").split(",");
2079
- for (var o = 0; o < l.length; o++) {
2080
- let c = l[o], n = `[name="${c}"]`;
2081
- c.match(/\[(.*)\]/) && (c.replace(/\[(.*)\]/, "[]"), n = `[value="${c.replace(/.*\[(.*)\]/, "$1")}"]`);
2082
- let h = e.querySelectorAll(n);
2083
- for (var s = 0; s < h.length; s++) {
2084
- let p = h[s];
2085
- if (p.getAttribute("type") != "radio" && p.getAttribute("type") != "checkbox")
2086
- p.value = "";
2168
+ }), a.addEventListener("click", function(s) {
2169
+ if (s && s.target instanceof HTMLElement && s.target.closest(".filter")) {
2170
+ let r = s.target.closest(".filter"), n = r.getAttribute("data-name").split(",");
2171
+ for (var o = 0; o < n.length; o++) {
2172
+ let c = n[o], l = `[name="${c}"]`;
2173
+ c.match(/\[(.*)\]/) && (c.replace(/\[(.*)\]/, "[]"), l = `[value="${c.replace(/.*\[(.*)\]/, "$1")}"]`);
2174
+ let m = e.querySelectorAll(l);
2175
+ for (var i = 0; i < m.length; i++) {
2176
+ let d = m[i];
2177
+ if (d.getAttribute("type") != "radio" && d.getAttribute("type") != "checkbox")
2178
+ d.value = "";
2087
2179
  else {
2088
- p.checked = !1;
2089
- var i = new Event("force");
2090
- p.closest("form").dispatchEvent(i);
2180
+ d.checked = !1;
2181
+ var s = new Event("force");
2182
+ e.hasAttribute("data-nosubmit") || d.closest("form").dispatchEvent(s);
2091
2183
  }
2092
2184
  }
2093
2185
  }
@@ -2096,11 +2188,11 @@ function sr(e, a) {
2096
2188
  }, !1);
2097
2189
  }
2098
2190
  window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "Applied Filters" });
2099
- class or extends HTMLElement {
2191
+ let wr = class extends HTMLElement {
2100
2192
  constructor() {
2101
2193
  super(), this.attachShadow({ mode: "open" });
2102
2194
  const a = 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") : `${a}/css/core.min.css`;
2103
- let i = this.classList.toString();
2195
+ let s = this.classList.toString();
2104
2196
  const o = document.createElement("template");
2105
2197
  o.innerHTML = `
2106
2198
  <style>
@@ -2109,53 +2201,53 @@ class or extends HTMLElement {
2109
2201
 
2110
2202
  ${this.hasAttribute("css") ? `@import "${this.getAttribute("css")}";` : ""}
2111
2203
  </style>
2112
- <div class="applied-filters ${i}"></div>
2204
+ <div class="applied-filters ${s}"></div>
2113
2205
  <slot></slot>
2114
2206
  `, this.shadowRoot.appendChild(o.content.cloneNode(!0));
2115
2207
  }
2116
2208
  connectedCallback() {
2117
- sr(this, this.shadowRoot.querySelector(".applied-filters"));
2209
+ vr(this, this.shadowRoot.querySelector(".applied-filters"));
2118
2210
  }
2119
- }
2120
- window.customElements.get("iam-applied-filters") || window.customElements.define("iam-applied-filters", or);
2121
- const nr = {
2211
+ };
2212
+ window.customElements.get("iam-applied-filters") || window.customElements.define("iam-applied-filters", wr);
2213
+ const Ar = {
2122
2214
  name: "Header"
2123
2215
  };
2124
- function lr(e, a, t, i, o, s) {
2125
- return d(), u("iam-applied-filters", null, [
2126
- A(e.$slots, "default")
2216
+ function _r(e, a, t, s, o, i) {
2217
+ return h(), p("iam-applied-filters", null, [
2218
+ S(e.$slots, "default")
2127
2219
  ]);
2128
2220
  }
2129
- const zr = /* @__PURE__ */ w(nr, [["render", lr]]);
2221
+ const pi = /* @__PURE__ */ _(Ar, [["render", _r]]);
2130
2222
  /*!
2131
- * iamKey v3.9.0-beta-1
2223
+ * iamKey v4.1.0-beta
2132
2224
  * Copyright 2022-2023 iamproperty
2133
2225
  */
2134
- function cr(e, a) {
2135
- dr(e, a);
2226
+ function Lr(e, a) {
2227
+ Sr(e, a);
2136
2228
  }
2137
- function dr(e, a) {
2229
+ function Sr(e, a) {
2138
2230
  var t;
2139
- a.addEventListener("keyup", (i) => {
2231
+ a.addEventListener("keyup", (s) => {
2140
2232
  clearTimeout(t), t = setTimeout(function() {
2141
2233
  Z(e, a.value);
2142
2234
  }, 500);
2143
- }), a.addEventListener("change", (i) => {
2235
+ }), a.addEventListener("change", (s) => {
2144
2236
  clearTimeout(t), Z(e, a.value);
2145
2237
  });
2146
2238
  }
2147
2239
  const Z = function(e, a) {
2148
- Array.from(e.querySelectorAll(":scope > li")).forEach((t, i) => {
2240
+ Array.from(e.querySelectorAll(":scope > li")).forEach((t, s) => {
2149
2241
  let o = t.textContent.toLowerCase();
2150
2242
  t.classList.add("d-none"), o.includes(a.toLowerCase()) && t.classList.remove("d-none");
2151
2243
  }), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "Filtered list", value: a });
2152
2244
  };
2153
2245
  window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "filterlist" });
2154
- class ur extends HTMLElement {
2246
+ let kr = class extends HTMLElement {
2155
2247
  constructor() {
2156
2248
  super(), this.attachShadow({ mode: "open" });
2157
- const a = 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") : `${a}/css/core.min.css`, i = document.createElement("template");
2158
- i.innerHTML = `
2249
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
2250
+ s.innerHTML = `
2159
2251
  <style>
2160
2252
  @import "${t}";
2161
2253
  ${this.hasAttribute("css") ? `@import "${this.getAttribute("css")}";` : ""}
@@ -2182,24 +2274,24 @@ class ur extends HTMLElement {
2182
2274
  <div class="list__wrapper">
2183
2275
  <slot></slot>
2184
2276
  </div>
2185
- `, this.shadowRoot.appendChild(i.content.cloneNode(!0));
2277
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
2186
2278
  }
2187
2279
  connectedCallback() {
2188
2280
  let a = this.classList.toString();
2189
- this.shadowRoot.querySelector(".list__wrapper").setAttribute("class", `list__wrapper ${a}`), this.querySelector("i.fa-search") || (this.innerHTML += '<i class="fa fa-light fa-search" aria-hidden="true" slot="icon"></i>'), cr(this.querySelector("ul"), this.shadowRoot.querySelector("#search"));
2281
+ this.shadowRoot.querySelector(".list__wrapper").setAttribute("class", `list__wrapper ${a}`), this.querySelector("i.fa-search") || (this.innerHTML += '<i class="fa fa-light fa-search" aria-hidden="true" slot="icon"></i>'), Lr(this.querySelector("ul"), this.shadowRoot.querySelector("#search"));
2190
2282
  }
2191
- }
2192
- window.customElements.get("iam-filterlist") || window.customElements.define("iam-filterlist", ur);
2193
- const mr = {
2283
+ };
2284
+ window.customElements.get("iam-filterlist") || window.customElements.define("iam-filterlist", kr);
2285
+ const qr = {
2194
2286
  name: "Filter list"
2195
2287
  };
2196
- function hr(e, a, t, i, o, s) {
2197
- return d(), u("iam-filterlist", null, [
2198
- A(e.$slots, "default")
2288
+ function $r(e, a, t, s, o, i) {
2289
+ return h(), p("iam-filterlist", null, [
2290
+ S(e.$slots, "default")
2199
2291
  ]);
2200
2292
  }
2201
- const Pr = /* @__PURE__ */ w(mr, [["render", hr]]);
2202
- function fr(e) {
2293
+ const fi = /* @__PURE__ */ _(qr, [["render", $r]]);
2294
+ function xr(e) {
2203
2295
  if (e.hasAttribute("data-type") && e.getAttribute("data-type") == "toast") {
2204
2296
  let t = document.querySelector(".notification__holder");
2205
2297
  t || (t = document.createElement("div"), t.classList.add("notification__holder"), t.classList.add("container"), document.querySelector("body").appendChild(t)), e.closest(".notification__holder") || t.appendChild(e);
@@ -2208,22 +2300,22 @@ function fr(e) {
2208
2300
  event && event.target instanceof HTMLElement && event.target.closest("[data-dismiss-button]") && (t.preventDefault(), X(e));
2209
2301
  }, !1), e.hasAttribute("data-timeout")) {
2210
2302
  let t = e.getAttribute("data-timeout");
2211
- var a = new pr(function() {
2303
+ var a = new Er(function() {
2212
2304
  X(e);
2213
2305
  }, t);
2214
- e.addEventListener("mouseenter", (i) => {
2306
+ e.addEventListener("mouseenter", (s) => {
2215
2307
  a.pause();
2216
- }), e.addEventListener("mouseleave", (i) => {
2308
+ }), e.addEventListener("mouseleave", (s) => {
2217
2309
  a.resume();
2218
2310
  });
2219
2311
  }
2220
2312
  }
2221
- function pr(e, a) {
2222
- var t, i, o = a;
2313
+ function Er(e, a) {
2314
+ var t, s, o = a;
2223
2315
  this.pause = function() {
2224
- window.clearTimeout(t), o -= /* @__PURE__ */ new Date() - i;
2316
+ window.clearTimeout(t), o -= /* @__PURE__ */ new Date() - s;
2225
2317
  }, this.resume = function() {
2226
- i = /* @__PURE__ */ new Date(), window.clearTimeout(t), t = window.setTimeout(e, o);
2318
+ s = /* @__PURE__ */ new Date(), window.clearTimeout(t), t = window.setTimeout(e, o);
2227
2319
  }, this.resume();
2228
2320
  }
2229
2321
  const X = function(e) {
@@ -2234,18 +2326,18 @@ window.dataLayer.push({
2234
2326
  event: "customElementRegistered",
2235
2327
  element: "Notification"
2236
2328
  });
2237
- class br extends HTMLElement {
2329
+ class Tr extends HTMLElement {
2238
2330
  constructor() {
2239
2331
  super(), this.attachShadow({ mode: "open" });
2240
- const a = 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") : `${a}/css/core.min.css`, i = `@import "${a}/css/components/notification.css";`, o = this.querySelectorAll("a,button");
2241
- Array.from(o).forEach((r, l) => {
2332
+ const a = 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") : `${a}/css/core.min.css`, s = `@import "${a}/css/components/notification.css";`, o = this.querySelectorAll("a,button");
2333
+ Array.from(o).forEach((r, n) => {
2242
2334
  r.setAttribute("slot", "btns"), r.classList.add("link");
2243
2335
  }), (o.length || this.hasAttribute("data-dismiss")) && this.classList.add("notification--dismissable");
2244
- const s = document.createElement("template");
2245
- s.innerHTML = `
2336
+ const i = document.createElement("template");
2337
+ i.innerHTML = `
2246
2338
  <style>
2247
2339
  @import "${t}";
2248
- ${i}
2340
+ ${s}
2249
2341
  ${this.hasAttribute("data-css") ? `${this.getAttribute("data-css")}` : ""}
2250
2342
  </style>
2251
2343
 
@@ -2254,12 +2346,12 @@ class br extends HTMLElement {
2254
2346
  <div class="notification__inner"><div class="notification__text"><slot></slot></div>${o.length ? '<div class="notification__btns"><slot name="btns"></slot></div>' : ""}</div>
2255
2347
  ${this.hasAttribute("data-dismiss") ? '<div class="notification__dismiss"><button data-dismiss-button>Dismiss</button></div>' : ""}
2256
2348
  </div>
2257
- `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
2349
+ `, this.shadowRoot.appendChild(i.content.cloneNode(!0));
2258
2350
  }
2259
2351
  connectedCallback() {
2260
2352
  const a = this.shadowRoot.querySelector("[data-dismiss-button]"), t = this.hasAttribute("data-status") ? this.getAttribute("data-status") : "white";
2261
2353
  this.hasAttribute("data-type") ? this.classList.add(`bg-${t}`) : this.classList.add(`colour-${t}`);
2262
- const i = this;
2354
+ const s = this;
2263
2355
  if (!this.querySelector("i"))
2264
2356
  switch (t) {
2265
2357
  case "danger":
@@ -2274,46 +2366,532 @@ class br extends HTMLElement {
2274
2366
  default:
2275
2367
  this.innerHTML += '<i class="fa-solid fa-circle-info" aria-hidden="true" slot="icon"></i>';
2276
2368
  }
2277
- fr(i), a && a.addEventListener("click", function(o) {
2278
- X(i);
2369
+ xr(s), a && a.addEventListener("click", function(o) {
2370
+ X(s);
2279
2371
  }, !1);
2280
2372
  }
2281
2373
  }
2282
- const yr = {
2374
+ const Mr = {
2283
2375
  name: "Notification",
2284
2376
  props: {},
2285
2377
  created() {
2286
2378
  this.$nextTick(function() {
2287
- window.customElements.get("iam-notification") || window.customElements.define("iam-notification", br);
2379
+ window.customElements.get("iam-notification") || window.customElements.define("iam-notification", Tr);
2380
+ });
2381
+ }
2382
+ };
2383
+ function Hr(e, a, t, s, o, i) {
2384
+ return h(), p("iam-notification", null, [
2385
+ S(e.$slots, "default")
2386
+ ]);
2387
+ }
2388
+ const gi = /* @__PURE__ */ _(Mr, [["render", Hr]]);
2389
+ /*!
2390
+ * iamKey v4.1.0-beta
2391
+ * Copyright 2022-2023 iamproperty
2392
+ */
2393
+ const Cr = function(e) {
2394
+ typeof window.player < "u" && typeof window.player.pauseVideo == "function" && window.player.pauseVideo();
2395
+ var a = e.getAttribute("data-id"), t = e.getAttribute("id");
2396
+ if (typeof t > "u" || t == null) {
2397
+ var s = String.fromCharCode(65 + Math.floor(Math.random() * 26));
2398
+ t = s + Date.now(), e.setAttribute("id", t);
2399
+ }
2400
+ function o() {
2401
+ window.player = new YT.Player(t, { height: "100%", width: "100%", videoId: a, playerVars: { modestbranding: 1, playsinline: 1, rel: 0, showinfo: 0 }, events: { onReady: i, onStateChange: n } });
2402
+ }
2403
+ o();
2404
+ function i(c) {
2405
+ c.target.playVideo();
2406
+ }
2407
+ var r = !1;
2408
+ function n(c) {
2409
+ if (c.data == YT.PlayerState.PLAYING && !r) {
2410
+ var l = document.getElementById(t);
2411
+ l.classList.add("player-ready"), r = !0;
2412
+ }
2413
+ }
2414
+ }, Nr = (e) => (Array.from(e.querySelectorAll("dialog[open]")).forEach((a, t) => {
2415
+ a.closest(".dialog__wrapper") || (a.removeAttribute("open"), a.showModal(), a.focus(), tt(a));
2416
+ }), e.addEventListener("click", (a) => {
2417
+ if (a.target.tagName == "IAM-ACTIONBAR")
2418
+ return !1;
2419
+ if (a && a.target instanceof HTMLElement && a.target.closest("[data-modal]")) {
2420
+ const o = a.target.closest("[data-modal]"), i = o.hasAttribute("data-modal") ? o.getAttribute("data-modal") : o.getAttribute("data-filter"), r = document.querySelector(`dialog#${i}`);
2421
+ tt(r), r.showModal(), r.focus();
2422
+ let n = r.offsetWidth;
2423
+ r.setAttribute("style", `max-width: ${n}px;`), Array.from(r.querySelectorAll("[data-duplicate]")).forEach((c, l) => {
2424
+ const m = c.getAttribute("data-duplicate"), d = document.getElementById(m);
2425
+ if (c.checked != d.checked) {
2426
+ c.checked = d.checked;
2427
+ let f = new Event("change");
2428
+ c.dispatchEvent(f);
2429
+ }
2430
+ }), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "openModal", id: i });
2431
+ }
2432
+ if (a && a.target instanceof HTMLElement && a.target.closest("button.dialog__close")) {
2433
+ const o = a.target.closest("dialog[open]");
2434
+ a.preventDefault(), o.close(), Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((i, r) => {
2435
+ i.classList.remove("active");
2436
+ }), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "closeModal", id: o.getAttribute("id") });
2437
+ }
2438
+ if (a && a.target instanceof HTMLElement && a.target.closest('button[formmethod="dialog"]')) {
2439
+ const o = a.target.closest("dialog[open]");
2440
+ Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((i, r) => {
2441
+ i.classList.remove("active");
2442
+ }), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "closeModal", id: o.getAttribute("id") });
2443
+ }
2444
+ if (a && a.target instanceof HTMLElement && a.target.closest("dialog[open]")) {
2445
+ let o = a.target.closest("dialog[open]");
2446
+ var t = window.getComputedStyle(o);
2447
+ if (t.display === "contents" && (o = o.parentNode.closest("dialog[open]")), !o.querySelector(":scope > .mh-lg > form:last-child > button:last-child, :scope > .mh-lg > button:last-child") || o.classList.contains("dialog--multi")) {
2448
+ const i = o.getBoundingClientRect();
2449
+ (a.clientX < i.left || a.clientX > i.right || a.clientY < i.top || a.clientY > i.bottom) && (a.target.closest('input[type="radio"]') || o.close(), window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "closeModal", id: o.getAttribute("id") }));
2450
+ }
2451
+ }
2452
+ if (a && a.target instanceof HTMLElement && a.target.closest(".dialog__wrapper > button")) {
2453
+ a.stopPropagation();
2454
+ let o = a.target.closest(".dialog__wrapper > button"), i = a.target.closest(".dialog__wrapper > button").parentNode, r = "openPopover", n = i.querySelector(":scope > dialog");
2455
+ if (document.querySelector("*:not([data-keep-open]) > dialog[open]") && document.querySelector("*:not([data-keep-open]) > dialog[open]") != n && document.querySelector("*:not([data-keep-open]) > dialog[open]").close(), Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((d, f) => {
2456
+ d.classList.remove("active");
2457
+ }), n.hasAttribute("open"))
2458
+ n.close(), r = "closePopover", n.removeAttribute("style"), o.classList.remove("active");
2459
+ else {
2460
+ n.show(), o.classList.add("active");
2461
+ var s = o.getBoundingClientRect();
2462
+ let d = s.top, f = s.left;
2463
+ if (o.closest("iam-table")) {
2464
+ let b = o.closest("iam-table").parentNode.getBoundingClientRect();
2465
+ d -= b.top, f -= b.left;
2466
+ }
2467
+ n.classList.contains("dialog--fix") && n.setAttribute("style", `position:fixed;top: ${d}px; left: ${f}px; margin: 3rem 0 0 0;`);
2468
+ }
2469
+ let c = n.getBoundingClientRect(), l = c.bottom - window.scrollY, m = window.innerHeight - window.scrollY;
2470
+ if (l > m) {
2471
+ let d = n.hasAttribute("style") ? n.getAttribute("style") + " " : "";
2472
+ n.setAttribute("style", d + "transform: translate(0, calc(-100% - 4rem))"), c = n.getBoundingClientRect(), c.top - window.scrollY < 100 && n.removeAttribute("style");
2473
+ }
2474
+ window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: r, id: o.textContent });
2475
+ }
2476
+ a && a.target instanceof HTMLElement && !a.target.closest("dialog[open]") && !a.target.closest(".dialog__wrapper > button") && (document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]") && document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]").close(), Array.from(document.querySelectorAll(".dialog__wrapper:not([data-keep-open]) > button")).forEach((o, i) => {
2477
+ o.classList.remove("active");
2478
+ }));
2479
+ }), null), tt = (e) => {
2480
+ e.querySelector(":scope > .mh-lg > form:last-child > button:last-child, :scope > .mh-lg > button:last-child") && !e.classList.contains("dialog--multi") && e.addEventListener("cancel", (t) => {
2481
+ t.preventDefault();
2482
+ });
2483
+ let a = e.querySelector(".youtube-embed a");
2484
+ if (a && Cr(a), e.classList.contains("dialog--multi") && !e.querySelector(":scope > .steps") && Rr(e), !e.querySelector(":scope > .mh-lg") && !e.classList.contains("dialog--multi")) {
2485
+ e.innerHTML = `<div class="mh-lg">${e.innerHTML}</div>`;
2486
+ let t = e.querySelector(".mh-lg"), s = e.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");
2487
+ if (s) {
2488
+ let o = s.previousSibling;
2489
+ t.before(s), o && s.before(o);
2490
+ }
2491
+ }
2492
+ e.querySelector(":scope > button:first-child") || e.insertAdjacentHTML("afterbegin", '<button class="dialog__close">Close</button>');
2493
+ }, Rr = (e) => {
2494
+ let a = "", t = Array.from(e.querySelectorAll("fieldset[data-title]"));
2495
+ t.forEach((i, r) => {
2496
+ a += `<button data-title="${i.getAttribute("data-title")}" type="button" class="${r == 0 ? "active" : ""}" tabindex="-1">${i.getAttribute("data-title")}</button>`;
2497
+ const n = document.createElement("div");
2498
+ n.classList.add("btn--wrapper"), i.appendChild(n), r != 0 && (n.innerHTML += `<button data-title="${t[r - 1].getAttribute("data-title")}" class="btn btn-secondary mb-0" data-previous type="button">Previous</button>`), r != t.length - 1 && (n.innerHTML += `<button data-title="${t[r + 1].getAttribute("data-title")}" class="btn btn-primary mb-0" data-next type="button">Next</button>`), r == t.length - 1 && (n.innerHTML += `<button data-title="${t[r].getAttribute("data-title")}" class="btn btn-primary mb-0" data-next type="submit">Submit</button>`);
2499
+ }), e.insertAdjacentHTML("afterbegin", `<div class="steps bg-primary">${a}</div>`);
2500
+ let s = Array.from(e.querySelectorAll("fieldset.was-validated"));
2501
+ for (let i = 0; i < s.length; i++) {
2502
+ let r = s[i], n = r.getAttribute("data-title");
2503
+ if (r.querySelector(".is-invalid")) {
2504
+ Array.from(e.querySelectorAll(`[data-title="${n}"]`)).forEach((c, l) => {
2505
+ c.classList.add("active");
2506
+ });
2507
+ break;
2508
+ } else
2509
+ Array.from(e.querySelectorAll(`[data-title="${n}"]`)).forEach((c, l) => {
2510
+ c.classList.add("valid");
2511
+ });
2512
+ }
2513
+ e.addEventListener("invalid", function() {
2514
+ return function(i) {
2515
+ i.preventDefault();
2516
+ };
2517
+ }(), !0);
2518
+ function o(i) {
2519
+ const r = e.querySelector("fieldset.active") ? e.querySelector("fieldset.active") : e.querySelector("fieldset[data-title]"), n = r.getAttribute("data-title");
2520
+ let c = !0;
2521
+ if (r.classList.add("was-validated"), Array.from(r.querySelectorAll("input")).forEach((d, f) => {
2522
+ d.checkValidity() || (c = !1);
2523
+ }), c ? Array.from(e.querySelectorAll(`[data-title="${n}"]`)).forEach((d, f) => {
2524
+ d.classList.add("valid");
2525
+ }) : Array.from(e.querySelectorAll(`[data-title="${n}"]`)).forEach((d, f) => {
2526
+ d.classList.remove("valid");
2527
+ }), c || !i.hasAttribute("data-next")) {
2528
+ const d = e.querySelector(`fieldset[data-title="${i.getAttribute("data-title")}"]`), f = e.querySelector(`.steps button[data-title="${i.getAttribute("data-title")}"]`);
2529
+ Array.from(e.querySelectorAll("button")).forEach((b, u) => {
2530
+ b.classList.remove("active");
2531
+ }), Array.from(e.querySelectorAll("fieldset")).forEach((b, u) => {
2532
+ b.classList.remove("active");
2533
+ }), f.classList.add("active"), d.classList.add("active");
2534
+ }
2535
+ let l = Array.from(e.querySelectorAll("fieldset")).length, m = Array.from(e.querySelectorAll("fieldset.valid")).length;
2536
+ e.style.setProperty("--progress", `${m / (l - 1) * 100}%`);
2537
+ }
2538
+ e.addEventListener("keydown", (i) => {
2539
+ if (i && i.target instanceof HTMLElement && i.target.closest("button")) {
2540
+ const r = i.target.closest("button");
2541
+ i.keyCode == 13 && (i.preventDefault(), o(r));
2542
+ }
2543
+ i && i.target instanceof HTMLElement && i.target.closest("input") && i.target.closest("input").classList.remove("is-invalid");
2544
+ }), e.addEventListener("click", (i) => {
2545
+ if (i && i.target instanceof HTMLElement && i.target.closest("button[data-title]")) {
2546
+ const r = i.target.closest("button[data-title]");
2547
+ o(r);
2548
+ }
2549
+ return null;
2550
+ });
2551
+ };
2552
+ window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "action bar" });
2553
+ function et(e, a) {
2554
+ e && a == "all" ? (e.querySelector("input").indeterminate = !1, e.querySelector("input").checked = !0, e.querySelector("label").textContent = "Select all") : e && a == 0 ? (e.querySelector("input").indeterminate = !1, e.querySelector("input").checked = !1, e.querySelector("label").textContent = "Select all") : e && a ? (e.querySelector("input").indeterminate = !0, e.querySelector("input").checked = !1, e.querySelector("label").textContent = `${a} item${a > 1 ? "s" : ""} selected`) : e && (e.querySelector("input").checked = !1, e.querySelector("input").indeterminate = !1, e.querySelector("label").textContent = "Select all");
2555
+ }
2556
+ class Dr extends HTMLElement {
2557
+ constructor() {
2558
+ super(), this.attachShadow({ mode: "open" });
2559
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
2560
+ s.innerHTML = `
2561
+ <style>
2562
+ @import "${t}";
2563
+ .actionbar__wrapper{position:relative;z-index:10;height:4.25rem;container-type:inline-size}.views,.selectall{position:absolute !important;top:50%;left:1.5rem;transform:translate(0, -50%);z-index:10}@media screen and (min-width: 36em){.views,.selectall{left:2rem}}.views .btn-action:not(:last-child),.selectall .btn-action:not(:last-child){margin-right:0.25rem !important}.selectall{width:2.5rem;overflow:hidden}.selectall label{height:2.5rem}@media screen and (min-width: 36em){.selectall{width:auto;overflow:visible}}.actionbar [data-search]{display:none}:host([data-search]) .actionbar [data-search]{display:block;margin-left:1rem !important}:is(.actionbar,.actionbar--selected,.actionbar--search){border-top-left-radius:0.625rem;border-top-right-radius:0.625rem;padding:0 1.5rem;flex-wrap:nowrap;justify-content:flex-end;align-items:center;height:4.25rem;position:absolute;inset:0}@container (width > 23.4375em){:is(.actionbar,.actionbar--selected,.actionbar--search){padding:0 2rem}}.actionbar{display:flex}.actionbar--selected{background-color:var(--colour-canvas);display:flex;opacity:0;pointer-events:none}@media screen and (prefers-color-scheme: light){.actionbar--selected{background-color:#e6eaec}}.actionbar--search{background-color:var(--colour-canvas);display:flex;z-index:2;position:relative;opacity:0;pointer-events:none}@media screen and (prefers-color-scheme: light){.actionbar--search{background-color:#e6eaec}}.selectall:has(input:checked)~.actionbar,.selectall:has(input:indeterminate)~.actionbar{opacity:0;pointer-events:none}.selectall:has(input:checked)~.actionbar--selected,.selectall:has(input:indeterminate)~.actionbar--selected{opacity:1;pointer-events:all}.actionbar--search.show{opacity:1;pointer-events:all}.actionbar__wrapper:has(.actionbar--search.show)>*:not(.actionbar--search.show){opacity:0;pointer-events:none}::slotted(*:not([slot=overflow])){margin-top:0 !important;margin-bottom:0 !important;margin-left:1rem !important;margin-right:0 !important}::slotted(.btn:not(.btn-action)){order:2}::slotted([data-single]){pointer-events:none;opacity:.5}:host([data-selected="1"]) ::slotted([data-single]){pointer-events:all;opacity:1}::slotted(hr){height:2rem;color:#9d9d9d !important;width:1px;display:none}@container (width > 48em){::slotted(hr){display:block}}.safe-area{display:flex;flex-wrap:nowrap;justify-content:flex-end;align-items:center;width:13.125rem;overflow:visible;position:relative}@container (width > 23.4375em){.safe-area{width:28.125rem}}@container (width > 48em){.safe-area{width:46.875rem}}.safe-area .body{display:contents}:host([data-switchviews]) .safe-area{width:9rem}::slotted(.btn-compact[slot=selected-overflow]),::slotted(.btn-compact[slot=overflow]){max-width:none !important;text-indent:0 !important;width:auto !important;text-align:left !important;padding-left:0 !important;background:none !important;border:none !important}::slotted(.btn-compact[slot=selected-overflow]):before,::slotted(.btn-compact[slot=overflow]):before{position:static !important;line-height:inherit !important}.dialog__wrapper.dialog-overflow{margin-left:.5rem;margin-right:-0.5rem}.actionbar--search .btn{margin-left:-0.75rem !important;margin-right:auto !important}.search-wrapper{width:calc(100% - 3.25rem);max-width:21.875rem !important;margin:0 !important}@container (width > 48em){.search-wrapper{max-width:28.125rem !important}}.search-wrapper input{padding-top:0.5rem;padding-bottom:0.5rem;min-height:2.5rem !important;max-height:2.5rem !important}.search-wrapper :is(.prefix,.suffix){padding:0.5rem !important;min-height:2.5rem !important;max-height:2.5rem !important;min-width:2.5rem !important;max-width:2.5rem !important;line-height:1.5rem !important}/*# sourceMappingURL=assets/css/components/actionbar.css.map */
2564
+
2565
+ ${this.hasAttribute("css") ? `@import "${this.getAttribute("css")}";` : ""}
2566
+ </style>
2567
+ <link rel="stylesheet" href="https://kit.fontawesome.com/26fdbf0179.css" crossorigin="anonymous">
2568
+ <div class="actionbar__wrapper">
2569
+ <div class="actionbar">
2570
+ <div class="safe-area">
2571
+ <slot></slot>
2572
+ <div class="body">
2573
+ <div class="dialog__wrapper dialog__wrapper--right dialog-overflow d-none show">
2574
+ <button class="btn btn-secondary btn-compact fa-ellipsis-vertical m-0">More actions</button>
2575
+ <dialog class="dialog--list">
2576
+ <slot name="overflow"></slot>
2577
+ <slot name="menu"></slot>
2578
+ </dialog>
2579
+ </div>
2580
+ <button class="btn btn-secondary btn-compact btn-sm fa-search m-0" data-search="">Search</button>
2581
+ </div>
2582
+ </div>
2583
+ </div>
2584
+ <div class="actionbar--selected">
2585
+ <div class="safe-area">
2586
+ <slot name="selected"></slot>
2587
+ <div class="body">
2588
+ <div class="dialog__wrapper dialog__wrapper--right dialog-overflow d-none show">
2589
+ <button class="btn btn-secondary btn-compact fa-ellipsis-vertical m-0">More actions</button>
2590
+ <dialog class="dialog--list">
2591
+ <slot name="selected-overflow"></slot>
2592
+ </dialog>
2593
+ </div>
2594
+ </div>
2595
+ </div>
2596
+ </div>
2597
+ <div class="actionbar--search">
2598
+ <button data-search class="btn btn-compact fa-xmark-large btn-secondary m-0" >Close</button>
2599
+
2600
+ <div class="search-wrapper">
2601
+ <label for="search" class="visually-hidden">Input field label</label>
2602
+ <button class="suffix"><i class="fa-regular fa-search"></i></button>
2603
+ <input type="text" id="search" name="search" required="">
2604
+ </div>
2605
+
2606
+ </div>
2607
+ </div>
2608
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
2609
+ }
2610
+ connectedCallback() {
2611
+ let a = this;
2612
+ const t = this.shadowRoot.querySelector(".actionbar__wrapper");
2613
+ if (this.hasAttribute("data-selectall")) {
2614
+ t.insertAdjacentHTML("afterbegin", '<div class="selectall pb-0"><input type="checkbox" name="selectall" id="selectall"><label for="selectall" class="m-0">Select all</label></div>');
2615
+ let i = this.shadowRoot.querySelector(".selectall");
2616
+ this.hasAttribute("data-selected") && et(i, this.getAttribute("data-selected")), i.addEventListener("change", (n) => {
2617
+ n && n.target instanceof HTMLElement && n.target.closest("input") && (n.target.closest("input").checked ? this.setAttribute("data-selected", "all") : this.setAttribute("data-selected", 0));
2618
+ });
2619
+ let r = this.querySelector("button[data-cancel]");
2620
+ r && r.addEventListener("click", (n) => {
2621
+ this.setAttribute("data-selected", 0);
2622
+ });
2623
+ }
2624
+ if (this.hasAttribute("data-select-watch")) {
2625
+ const i = document.getElementById(this.getAttribute("data-select-watch"));
2626
+ i.setAttribute("data-select-container", "true"), Array.from(i.querySelectorAll('input[type="checkbox"]')).forEach((r, n) => {
2627
+ r.parentElement.setAttribute("slot", "checkbox");
2628
+ }), i.addEventListener("change", (r) => {
2629
+ if (r && r.target instanceof HTMLElement && r.target.closest('[type="checkbox"]')) {
2630
+ let n = i.querySelectorAll('input[type="checkbox"]').length, c = i.querySelectorAll('input[type="checkbox"]:checked').length;
2631
+ a.setAttribute("data-selected", n == c ? "all" : c), r.target.closest('[type="checkbox"]'), c ? Array.from(i.querySelectorAll('input[type="checkbox"]')).forEach((l, m) => {
2632
+ l.closest("iam-card") && l.closest("iam-card").setAttribute("data-selected", "true");
2633
+ }) : Array.from(i.querySelectorAll('input[type="checkbox"]')).forEach((l, m) => {
2634
+ l.closest("iam-card") && l.closest("iam-card").removeAttribute("data-selected");
2635
+ });
2636
+ }
2637
+ });
2638
+ }
2639
+ if (this.hasAttribute("data-switchviews")) {
2640
+ let i = "";
2641
+ this.getAttribute("data-switchviews").split(",").forEach((r, n) => {
2642
+ let c = "fa-grid-2";
2643
+ r == "list" ? c = "fa-grip-lines" : r == "small" && (c = "fa-bars"), i += `<button class="btn btn-action btn-compact mb-0 fa-regular ${c}">${r}</button>`;
2644
+ }), t.insertAdjacentHTML("afterbegin", `<div class="views m-0">${i}</div>`), this.shadowRoot.querySelector(".views").addEventListener("click", (r) => {
2645
+ if (r && r.target instanceof HTMLElement && r.target.closest(".btn-action")) {
2646
+ let n = r.target.closest(".btn-action");
2647
+ this.setAttribute("data-view", n.textContent);
2648
+ const c = new CustomEvent("switch-view", { detail: { view: n.textContent } });
2649
+ this.dispatchEvent(c);
2650
+ }
2651
+ });
2652
+ }
2653
+ const s = this.shadowRoot.querySelector(".actionbar--search");
2654
+ this.hasAttribute("data-search") && this.getAttribute("data-search") == "show" && s.classList.add("show"), this.shadowRoot.addEventListener("click", (i) => {
2655
+ i && i.target instanceof HTMLElement && i.target.closest("button[data-search]") && s.classList.toggle("show");
2656
+ }), s.addEventListener("keyup", (i) => {
2657
+ const r = new CustomEvent("search-keyup", { detail: { search: s.querySelector("input").value } });
2658
+ this.dispatchEvent(r);
2659
+ }), s.addEventListener("change", (i) => {
2660
+ const r = new CustomEvent("search-change", { detail: { search: s.querySelector("input").value } });
2661
+ this.dispatchEvent(r);
2662
+ }), s.addEventListener("click", (i) => {
2663
+ if (i && i.target instanceof HTMLElement && i.target.closest("button.suffix")) {
2664
+ const r = new CustomEvent("search-submit", { detail: { search: s.querySelector("input").value } });
2665
+ this.dispatchEvent(r);
2666
+ }
2667
+ }), Array.from(this.shadowRoot.querySelectorAll(".body")).forEach((i, r) => {
2668
+ Nr(i);
2669
+ });
2670
+ function o() {
2671
+ const i = t.scrollWidth, r = document.documentElement.scrollWidth;
2672
+ let n = 750, c = 16, l = a.hasAttribute("data-switchviews") ? 144 : 210, m = 1;
2673
+ r >= 992 && r <= 1280 ? m = r / 1280 : r >= 576 && r <= 1280 ? m = r / 768 : r < 576 && (m = r / 375), i >= 992 && i <= 1280 ? n = n * m : i >= 576 && i <= 1280 ? n = 450 * m : i < 576 && (n = l * m), c = c * m, i < 576 ? Array.from(a.querySelectorAll(":scope > .btn:not(.js-updated)")).forEach((d, f) => {
2674
+ d.className = d.className.replace(" btn-compact", " _btn-compact"), d.classList.add("btn-compact"), d.classList.add("js-updated");
2675
+ }) : Array.from(a.querySelectorAll(":scope > .btn.js-updated")).forEach((d, f) => {
2676
+ d.classList.remove("btn-compact"), d.classList.remove("js-updated"), d.className = d.className.replace(" _btn-compact", " btn-compact");
2677
+ }), Array.from(a.querySelectorAll("[slot]")).forEach((d, f) => {
2678
+ d.getAttribute("slot") == "overflow" && d.removeAttribute("slot"), d.getAttribute("slot") == "selected-overflow" && d.setAttribute("slot", "selected");
2679
+ }), Array.from(a.querySelectorAll(".show")).forEach((d, f) => {
2680
+ d.classList.remove("show");
2681
+ }), Array.from(a.shadowRoot.querySelectorAll(".safe-area")).forEach((d, f) => {
2682
+ let b = "overflow";
2683
+ d.querySelector("slot").hasAttribute("name") && d.querySelector("slot").getAttribute("name") == "selected" && (b = "selected-overflow");
2684
+ let u = d.querySelector("slot").assignedElements(), v = 44 * m;
2685
+ a.hasAttribute("data-search") && (v += 44 * m);
2686
+ for (let y = 0; y < u.length; y++)
2687
+ !u[y].classList.contains("btn-action") && !u[y].classList.contains("dialog__wrapper") && (v += u[y].offsetWidth, v += c);
2688
+ for (let y = 0; y < u.length; y++)
2689
+ if (u[y].classList.contains("dialog__wrapper") && (u[y].classList.add("show"), v += u[y].offsetWidth, v += c / 2, v - c / 2 > n)) {
2690
+ u[y].classList.remove("show");
2691
+ break;
2692
+ }
2693
+ for (let y = 0; y < u.length; y++)
2694
+ if (u[y].classList.contains("btn-action") && (u[y].classList.add("show"), v += u[y].offsetWidth, v += c / 2, v - c / 2 > n)) {
2695
+ u[y].classList.remove("show");
2696
+ break;
2697
+ }
2698
+ let q = d.querySelector(".dialog-overflow");
2699
+ q && q.classList.add("d-none");
2700
+ for (let y = 0; y < u.length; y++)
2701
+ (u[y].classList.contains("btn-action") || u[y].classList.contains("dialog__wrapper")) && (u[y].classList.contains("show") || (u[y].setAttribute("slot", b), q && q.classList.remove("d-none")));
2702
+ });
2703
+ }
2704
+ o(), new ResizeObserver(o).observe(t);
2705
+ }
2706
+ static get observedAttributes() {
2707
+ return ["data-selected"];
2708
+ }
2709
+ attributeChangedCallback(a, t, s) {
2710
+ switch (a) {
2711
+ case "data-selected": {
2712
+ let o = this.shadowRoot.querySelector(".selectall");
2713
+ o && et(o, s);
2714
+ const i = new CustomEvent("selected", { detail: { selected: s } });
2715
+ if (this.dispatchEvent(i), s == "all" && this.hasAttribute("data-select-watch")) {
2716
+ const r = document.getElementById(this.getAttribute("data-select-watch"));
2717
+ Array.from(r.querySelectorAll('input[type="checkbox"]')).forEach((n, c) => {
2718
+ n.checked = !0, n.closest("iam-card") && n.closest("iam-card").setAttribute("data-selected", "true");
2719
+ });
2720
+ }
2721
+ if (s == "0" && this.hasAttribute("data-select-watch")) {
2722
+ const r = document.getElementById(this.getAttribute("data-select-watch"));
2723
+ Array.from(r.querySelectorAll('input[type="checkbox"]')).forEach((n, c) => {
2724
+ n.checked = !1, n.closest("iam-card") && n.closest("iam-card").removeAttribute("data-selected", "true");
2725
+ });
2726
+ }
2727
+ break;
2728
+ }
2729
+ }
2730
+ }
2731
+ }
2732
+ window.customElements.get("iam-actionbar") || window.customElements.define("iam-actionbar", Dr);
2733
+ const Ir = {
2734
+ name: "Actionbar",
2735
+ props: {},
2736
+ mounted() {
2737
+ }
2738
+ };
2739
+ function Pr(e, a, t, s, o, i) {
2740
+ return h(), p("iam-actionbar", null, [
2741
+ S(e.$slots, "default")
2742
+ ]);
2743
+ }
2744
+ const yi = /* @__PURE__ */ _(Ir, [["render", Pr]]);
2745
+ /*!
2746
+ * iamKey v4.1.0-beta
2747
+ * Copyright 2022-2023 iamproperty
2748
+ */
2749
+ const jr = function(e, a) {
2750
+ if (!e.getAttribute("data-pages"))
2751
+ return !1;
2752
+ e.getAttribute("data-page") || e.setAttribute("data-page", 1);
2753
+ let t = e.getAttribute("data-page"), s = e.getAttribute("data-pages"), o = e.getAttribute("data-total"), i = e.getAttribute("data-show"), r = e.getAttribute("data-increment");
2754
+ if (s <= 1)
2755
+ return a.innerHTML = "", !1;
2756
+ let n = "";
2757
+ for (let c = 1; c <= s; c++)
2758
+ c == t ? n += `<li class="page-item active" aria-current="page"><span class="page-link">${c}</span></li>` : n += `<li class="page-item"><a href="?page=${c}" class="page-link" data-page="${c}">${c}</a></li>`;
2759
+ return a.innerHTML = `<ul class="pagination mb-0 d-none d-sm-flex">
2760
+ ${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>`}
2761
+ ${n}
2762
+ ${t == s ? '<li class="page-item disabled"><span class="page-link">Next</span></li>' : `<li class="page-item"><a href="?page=${parseInt(t) + 1}" class="page-link" data-page="${parseInt(t) + 1}">Next</a></li>`}
2763
+ </ul>`, a.innerHTML += `<div class="d-sm-none text-center">
2764
+ <span class="d-block pb-2">You've viewed ${i} of ${o} results</span>
2765
+ <a href="?show=${parseInt(i) + parseInt(r)}" class="btn btn-primary w-100 m-0" data-show="${parseInt(i) + parseInt(r)}">Load more results</a>
2766
+ </div>`, !0;
2767
+ };
2768
+ class zr extends HTMLElement {
2769
+ constructor() {
2770
+ super(), this.attachShadow({ mode: "open" });
2771
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
2772
+ s.innerHTML = `
2773
+ <style>
2774
+ @import "${t}";
2775
+
2776
+ ${this.hasAttribute("css") ? `@import "${this.getAttribute("css")}";` : ""}
2777
+ </style>
2778
+ <div class="pagination__wrapper d-none">
2779
+ </div>
2780
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
2781
+ }
2782
+ connectedCallback() {
2783
+ const a = new URLSearchParams(window.location.search);
2784
+ this.hasAttribute("data-total") || this.setAttribute("data-total", this.querySelectorAll("table tbody tr").length), this.hasAttribute("data-page") || this.setAttribute("data-page", a.has("page") ? a.get("page") : 1), this.hasAttribute("data-show") || this.setAttribute("data-show", a.has("show") ? a.get("show") : 15), this.hasAttribute("data-increment") || this.setAttribute("data-increment", 15), this.setAttribute("data-pages", Math.ceil(this.getAttribute("data-total") / this.getAttribute("data-show"))), jr(this, this.shadowRoot.querySelector(".pagination__wrapper")), this.shadowRoot.querySelector(".pagination__wrapper").classList.remove("d-none");
2785
+ }
2786
+ }
2787
+ const Br = {
2788
+ name: "Pagination",
2789
+ props: {},
2790
+ computed: {},
2791
+ created() {
2792
+ this.$nextTick(function() {
2793
+ window.customElements.get("iam-pagination") || window.customElements.define("iam-pagination", zr);
2288
2794
  });
2795
+ },
2796
+ updated() {
2797
+ }
2798
+ };
2799
+ function Fr(e, a, t, s, o, i) {
2800
+ return h(), p("iam-pagination");
2801
+ }
2802
+ const vi = /* @__PURE__ */ _(Br, [["render", Fr]]);
2803
+ /*!
2804
+ * iamKey v4.1.0-beta
2805
+ * Copyright 2022-2023 iamproperty
2806
+ */
2807
+ window.dataLayer = window.dataLayer || [], window.dataLayer.push({ event: "customElementRegistered", element: "collapsible side menu" });
2808
+ class Or extends HTMLElement {
2809
+ constructor() {
2810
+ super(), this.attachShadow({ mode: "open" });
2811
+ const a = 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") : `${a}/css/core.min.css`, s = document.createElement("template");
2812
+ s.innerHTML = `
2813
+ <style class="styles">
2814
+ @import "${t}";
2815
+ :host{--colour-border: #e9e9e9;--side-link-hover: var(--colour-canvas-2);display:block;min-height:calc(100vh - var(--nav-height));padding-top:0 !important;margin-inline:auto;max-width:80rem;overflow:hidden;position:relative}@media screen and (prefers-color-scheme: light){:host{--side-link-hover: #eeeeee}}.container{position:static;min-height:100%;padding-top:0 !important;padding-bottom:0 !important;padding-left:0 !important}@media screen and (min-width: 62em){.container{padding-left:5.25rem !important;overflow:hidden}}.side-menu{position:absolute;top:0;left:0;height:100%;min-height:calc(100vh - var(--nav-height));width:1.875rem;height:100%;background-color:var(--colour-canvas);transition:width 1s}.side-menu:before{content:"";position:absolute;top:0;right:0;height:100%;border-right:2px solid var(--colour-border)}@media screen and (min-width: 36em){.side-menu{left:0;width:2.5rem}}@media screen and (min-width: 62em){.side-menu{left:calc(50% - 34.75rem);margin-left:-5.25rem}.side-menu:after{content:"";position:absolute;top:0;height:100%;border-right:2px solid var(--colour-border);left:0;opacity:1;transition:all 1s;width:2.5rem;background:var(--colour-canvas)}.side-menu:not(.open).hover{width:21.5rem}.side-menu:not(.open).hover .btn[class*=fa-]:before{content:"" !important}}.side-menu .btn{position:absolute;top:2rem;right:0;margin-bottom:0;margin-right:-1.25rem;background-color:var(--colour-canvas-2);border:2px solid var(--colour-border);z-index:99}.side-menu:is(.open){width:calc(100% - var(--container-padding-x))}.side-menu:is(.open) .btn[class*=fa-]:before{content:"" !important}@media screen and (min-width: 36em){.side-menu:is(.open){width:23.875rem}}@media screen and (min-width: 62em){.side-menu:is(.open){width:21.5rem}.side-menu:is(.open) .btn{opacity:0;transition:opacity .5s}.side-menu:is(.open) .btn:is(:hover,:focus,:active){opacity:1}}.side-menu .side-menu-content{position:absolute;top:0;right:0;padding:2rem 2.5rem 0 0;width:21.9375rem;opacity:0;transition:opacity 1s;min-height:100%;overflow:auto;max-height:100%}.side-menu .side-menu-content .h3{padding-left:1.5rem}@media screen and (min-width: 36em){.side-menu .side-menu-content{width:23.875rem}.side-menu .side-menu-content .h3{padding-left:2.5rem}}@media screen and (min-width: 62em){.side-menu .side-menu-content{width:19rem}}.side-menu:not(.hover):not(.open) .side-menu-content.closed{display:none}.side-menu.open .side-menu-content{opacity:1}@media screen and (min-width: 62em){.side-menu.hover .side-menu-content{opacity:1}}::slotted(*[slot=menu]){padding-left:1.5rem}@media screen and (min-width: 36em){::slotted(*[slot=menu]){padding-left:2.5rem !important}}::slotted(hr){border-bottom:2px solid var(--colour-border) !important;margin-right:-2.5rem !important}::slotted(a[slot=menu]){display:block;display:block !important;line-height:1.25rem !important;padding:1rem 2.5rem 1rem 1.5rem !important;margin:0 !important;flex-shrink:0;font-size:1rem !important;font-weight:normal !important;text-decoration:none;border-bottom:2px solid var(--colour-border) !important;margin-right:-2.5rem !important;border-right:2px solid var(--colour-border) !important}@media screen and (min-width: 36em){::slotted(a[slot=menu]){padding-left:2.5rem !important}}::slotted(a[slot=menu]):after{display:none}::slotted(a[slot=menu]:where(:hover,:focus,.selected)){background-color:var(--side-link-hover) !important}::slotted(a[slot=menu]:active){background-color:var(--side-link-hover) !important;font-weight:bold !important}::slotted(a[slot=menu].selected){background-color:var(--side-link-hover) !important;font-weight:bold !important;margin-right:-2.5rem !important;position:relative;border-right:2px solid var(--colour-info) !important}::slotted(a[slot=menu].selected):before{content:"";position:absolute;top:0;right:0;height:calc(100% + 4px);margin-top:-2px;width:2px;border-right:2px solid var(--colour-info);margin-right:-2px}@media(forced-colors: active){::slotted(a[slot=menu].selected):before{border-right:10px solid var(--colour-info)}}.main-content{padding-top:1.5rem;padding-left:3.75rem}@media screen and (min-width: 36em){.main-content{padding-left:5rem}}@media screen and (min-width: 62em){.main-content{padding-top:2.5rem !important;padding-left:0}}.main-content>span.h3{padding-top:.75rem;border-bottom:2px solid var(--colour-border);margin-bottom:2.5rem !important}@media screen and (min-width: 62em){.main-content>span.h3{display:none}}::slotted(.main-content__title){border-bottom:2px solid var(--colour-border);margin-bottom:2.5rem !important;max-width:100% !important;display:block}@media screen and (min-width: 62em){.side-menu.open+.main-content{padding-left:18.75rem}::slotted(.main-content__title){display:none}}/*# sourceMappingURL=assets/css/components/collapsible-side.css.map */
2816
+
2817
+ ${this.hasAttribute("css") ? `@import "${this.getAttribute("css")}";` : ""}
2818
+ </style>
2819
+ <link rel="stylesheet" href="https://kit.fontawesome.com/26fdbf0179.css" crossorigin="anonymous">
2820
+ <div class="container">
2821
+
2822
+ <div class="side-menu">
2823
+ <button class="btn btn-compact fa-chevron-right btn-secondary btn-sm">Open or close Collapsible menu</button>
2824
+ <div class="side-menu-content closed">
2825
+ <slot name="menu"></slot>
2826
+ </div>
2827
+ </div>
2828
+
2829
+ <div class="main-content">
2830
+ <slot></slot>
2831
+ </div>
2832
+
2833
+ </div>
2834
+ `, this.shadowRoot.appendChild(s.content.cloneNode(!0));
2835
+ }
2836
+ connectedCallback() {
2837
+ const a = this.shadowRoot.querySelector(".side-menu"), t = this.shadowRoot.querySelector(".side-menu-content"), s = this.shadowRoot.querySelector(".main-content"), o = this.shadowRoot.querySelector(".side-menu > .btn");
2838
+ this.hasAttribute("data-css") && this.shadowRoot.querySelector(".styles").insertAdjacentHTML("beforeend", `@import "${this.getAttribute("data-css")}";`), this.hasAttribute("data-title") || this.setAttribute("data-title", "configuration"), t.insertAdjacentHTML("afterbegin", `<span class="h3">${this.getAttribute("data-title")}</span>`), s.insertAdjacentHTML("afterbegin", `<span class="h3">${this.getAttribute("data-title")}</span>`), this.querySelector(":scope > :is(h1,h2,h3,h4,h5,h6)") && (this.querySelector(":scope > :is(h1,h2,h3,h4,h5,h6)").classList.add("h4"), this.querySelector(":scope > :is(h1,h2,h3,h4,h5,h6)").classList.add("main-content__title")), o.addEventListener("click", (i) => {
2839
+ a.classList.contains("open") ? (a.classList.remove("open"), setTimeout(function() {
2840
+ t.classList.add("closed");
2841
+ }, 1e3), a.classList.add("pe-none"), setTimeout(function() {
2842
+ a.classList.remove("pe-none");
2843
+ }, 1e3)) : (t.classList.remove("closed"), setTimeout(function() {
2844
+ a.classList.add("open");
2845
+ }, 100));
2846
+ }), a.addEventListener("mouseenter", (i) => {
2847
+ window.innerWidth > 992 && (a.classList.contains("open") || t.classList.remove("closed"), a.classList.add("hover"));
2848
+ }), a.addEventListener("mousemove", (i) => {
2849
+ window.innerWidth > 992 && (a.classList.contains("open") || t.classList.remove("closed"));
2850
+ }), a.addEventListener("mouseleave", (i) => {
2851
+ window.innerWidth > 992 && (a.classList.remove("hover"), a.classList.contains("open") || setTimeout(function() {
2852
+ t.classList.add("closed");
2853
+ }, 1e3));
2854
+ });
2855
+ }
2856
+ }
2857
+ window.customElements.get("iam-collapsible-side") || window.customElements.define("iam-collapsible-side", Or);
2858
+ const Vr = {
2859
+ name: "CollapsibleSideMenu",
2860
+ props: {},
2861
+ mounted() {
2289
2862
  }
2290
2863
  };
2291
- function gr(e, a, t, i, o, s) {
2292
- return d(), u("iam-notification", null, [
2293
- A(e.$slots, "default")
2864
+ function Wr(e, a, t, s, o, i) {
2865
+ return h(), p("iam-collapsible-side", null, [
2866
+ S(e.$slots, "default")
2294
2867
  ]);
2295
2868
  }
2296
- const jr = /* @__PURE__ */ w(yr, [["render", gr]]);
2869
+ const wi = /* @__PURE__ */ _(Vr, [["render", Wr]]);
2297
2870
  export {
2298
- Sr as Accordion,
2299
- kr as AccordionItem,
2300
- zr as AppliedFilters,
2301
- qr as Banner,
2302
- Ce as Card,
2303
- $r as Carousel,
2304
- wr as FileUpload,
2305
- Pr as Filterlist,
2306
- xr as Header,
2307
- ot as Input,
2308
- Ar as Logo,
2309
- Hr as Nav,
2310
- Rr as NoteFeed,
2311
- jr as Notification,
2312
- Tr as PropertySearchbar,
2313
- Cr as Step,
2314
- Mr as Stepper,
2315
- Nr as Tab,
2316
- st as Table,
2317
- Dr as Tabs,
2318
- Er as Testimonial
2871
+ Jr as Accordion,
2872
+ Qr as AccordionItem,
2873
+ yi as Actionbar,
2874
+ pi as AppliedFilters,
2875
+ Zr as Banner,
2876
+ Re as Card,
2877
+ ti as Carousel,
2878
+ wi as CollapsibleSideMenu,
2879
+ Kr as FileUpload,
2880
+ fi as Filterlist,
2881
+ ei as Header,
2882
+ lt as Input,
2883
+ Gr as Logo,
2884
+ si as Nav,
2885
+ mi as NoteFeed,
2886
+ gi as Notification,
2887
+ vi as Pagination,
2888
+ ii as PropertySearchbar,
2889
+ ni as Snapshot,
2890
+ li as Step,
2891
+ oi as Stepper,
2892
+ ui as Tab,
2893
+ nt as Table,
2894
+ di as Tabs,
2895
+ ai as Testimonial,
2896
+ ri as Timeline
2319
2897
  };