@iamproperty/components 7.1.0--beta5 → 7.1.0--beta7

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 (100) hide show
  1. package/assets/css/components/actionbar.css.map +1 -1
  2. package/assets/css/components/actionbar.global.css.map +1 -1
  3. package/assets/css/components/barchart.component.css +1 -1
  4. package/assets/css/components/barchart.component.css.map +1 -1
  5. package/assets/css/components/card.component.css.map +1 -1
  6. package/assets/css/components/carousel.component.css.map +1 -1
  7. package/assets/css/components/carousel.config.css.map +1 -1
  8. package/assets/css/components/charts.module.css +1 -1
  9. package/assets/css/components/charts.module.css.map +1 -1
  10. package/assets/css/components/collapsible-side.css.map +1 -1
  11. package/assets/css/components/header.css.map +1 -1
  12. package/assets/css/components/marketing.css.map +1 -1
  13. package/assets/css/components/multi-step.component.css.map +1 -1
  14. package/assets/css/components/multiselect.css +1 -1
  15. package/assets/css/components/multiselect.css.map +1 -1
  16. package/assets/css/components/multiselect.preload.css.map +1 -1
  17. package/assets/css/components/nav.css.map +1 -1
  18. package/assets/css/components/nav.docs.css.map +1 -1
  19. package/assets/css/components/nav.global.css.map +1 -1
  20. package/assets/css/components/nav.old.css.map +1 -1
  21. package/assets/css/components/nav.preload.css.map +1 -1
  22. package/assets/css/components/notification.css.map +1 -1
  23. package/assets/css/components/pagination.css.map +1 -1
  24. package/assets/css/components/property-searchbar.css.map +1 -1
  25. package/assets/css/components/snapshot.css.map +1 -1
  26. package/assets/css/components/stepper.css.map +1 -1
  27. package/assets/css/components/table.global.css.map +1 -1
  28. package/assets/css/components/tabs.css +1 -1
  29. package/assets/css/components/tabs.css.map +1 -1
  30. package/assets/css/components/testimonial.css.map +1 -1
  31. package/assets/css/components/timeline.css.map +1 -1
  32. package/assets/css/core.min.css +1 -1
  33. package/assets/css/core.min.css.map +1 -1
  34. package/assets/css/style.min.css +1 -1
  35. package/assets/css/style.min.css.map +1 -1
  36. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  37. package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
  38. package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
  39. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  40. package/assets/js/components/barchart/barchart.component.min.js +4 -4
  41. package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
  42. package/assets/js/components/card/card.component.min.js +1 -1
  43. package/assets/js/components/carousel/carousel.component.min.js +1 -1
  44. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  45. package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
  46. package/assets/js/components/filter-card/filter-card.component.min.js +1 -1
  47. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  48. package/assets/js/components/header/header.component.min.js +1 -1
  49. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  50. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  51. package/assets/js/components/multiselect/multiselect.component.js +5 -0
  52. package/assets/js/components/multiselect/multiselect.component.min.js +3 -3
  53. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  54. package/assets/js/components/nav/nav.component.min.js +1 -1
  55. package/assets/js/components/notification/notification.component.min.js +1 -1
  56. package/assets/js/components/pagination/pagination.component.min.js +1 -1
  57. package/assets/js/components/record-card/record-card.component.min.js +1 -1
  58. package/assets/js/components/search/search.component.min.js +1 -1
  59. package/assets/js/components/slider/slider.component.min.js +1 -1
  60. package/assets/js/components/table/table.component.js +4 -2
  61. package/assets/js/components/table/table.component.min.js +2 -2
  62. package/assets/js/components/table/table.component.min.js.map +1 -1
  63. package/assets/js/components/tabs/tabs.component.min.js +4 -4
  64. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  65. package/assets/js/components/video-card/video-card.component.min.js +1 -1
  66. package/assets/js/components.bundle.js +1 -1
  67. package/assets/js/modules/chart.module.js +19 -5
  68. package/assets/js/modules/tabs.js +12 -22
  69. package/assets/js/scripts.bundle.js +1 -1
  70. package/assets/js/scripts.bundle.min.js +1 -1
  71. package/assets/sass/_bs_grid.scss +36 -0
  72. package/assets/sass/_corefiles.scss +1 -18
  73. package/assets/sass/_func.scss +2 -4
  74. package/assets/sass/_functions/mixins.scss +0 -39
  75. package/assets/sass/_functions/utility-mixins.scss +1433 -0
  76. package/assets/sass/{foundations/grid.scss → _grid.scss} +83 -83
  77. package/assets/sass/_utilities.scss +26 -118
  78. package/assets/sass/_utility-mixins.scss +32 -0
  79. package/assets/sass/components/barchart.component.scss +2 -0
  80. package/assets/sass/components/charts.module.scss +29 -2
  81. package/assets/sass/components/multiselect.scss +1 -1
  82. package/assets/sass/components/tabs.scss +2 -3
  83. package/assets/sass/core.scss +3 -1
  84. package/assets/sass/elements/admin-panel.scss +62 -9
  85. package/assets/sass/elements/container.scss +33 -0
  86. package/assets/sass/email.scss +4 -0
  87. package/assets/sass/error.scss +4 -0
  88. package/assets/sass/helpers/line-clamp.scss +0 -23
  89. package/assets/sass/main.scss +4 -1
  90. package/assets/ts/components/multiselect/multiselect.component.ts +5 -0
  91. package/assets/ts/components/table/table.component.ts +8 -5
  92. package/assets/ts/modules/chart.module.ts +24 -5
  93. package/assets/ts/modules/tabs.ts +11 -23
  94. package/dist/components.es.js +11 -11
  95. package/dist/components.umd.js +14 -14
  96. package/dist/style.css +1 -1
  97. package/package.json +1 -1
  98. package/assets/sass/components.reset.scss +0 -8
  99. package/assets/sass/foundations/bs_grid.scss +0 -32
  100. /package/assets/sass/_functions/{utilities.scss → bs_utilities.scss} +0 -0
@@ -2,5 +2,8 @@
2
2
 
3
3
  @use '_fonts';
4
4
  @use '_corefiles';
5
- @import '_components';
5
+ @import '_grid';
6
+ @import '_bs_grid';
7
+ @import '_utilities';
8
+ @import '_utility-mixins';
6
9
  @import '_print';
@@ -165,6 +165,11 @@ class iamMultiselect extends HTMLElement {
165
165
  setItem(checkbox);
166
166
 
167
167
  search.focus();
168
+ clearTimeout(hoverTimeout);
169
+ multiselect.classList.add('hover');
170
+ hoverTimeout = setTimeout(function () {
171
+ multiselect.classList.remove('hover');
172
+ }, 5000);
168
173
  }
169
174
  });
170
175
 
@@ -168,11 +168,14 @@ class iamTable extends HTMLElement {
168
168
  });
169
169
 
170
170
  Array.from(this.table.querySelectorAll('tbody tr')).forEach((row, index) => {
171
- const rowID = `row${uniqueID(index)}`;
172
- row.insertAdjacentHTML(
173
- 'afterbegin',
174
- `<td class="td--fixed selectrow selected"><input type="checkbox" name="row" id="${rowID}" ${row.hasAttribute('data-selected') ? `checked="true"` : ''}/><label for="${rowID}"><span class="visually-hidden">Select row</span></label></td>`
175
- );
171
+
172
+ if(!row.querySelector('.selectrow')){
173
+ const rowID = `row${uniqueID(index)}`;
174
+ row.insertAdjacentHTML(
175
+ 'afterbegin',
176
+ `<td class="td--fixed selectrow selected"><input type="checkbox" name="row" id="${rowID}" ${row.hasAttribute('data-selected') ? `checked="true"` : ''}/><label for="${rowID}"><span class="visually-hidden">Select row</span></label></td>`
177
+ );
178
+ }
176
179
  });
177
180
 
178
181
  this.table.addEventListener('change', (event) => {
@@ -232,14 +232,29 @@ export const setCellData = function (chartElement: any, table: any) {
232
232
  let rowValue = 0;
233
233
  // Set the data numeric value if not set
234
234
  Array.from(tr.querySelectorAll('td:not(:first-child)')).forEach((td: any) => {
235
- const value = parseFloat(td.textContent.replace('£', '').replace('%', '').replace(',', ''));
235
+ // Ignore the buttons and links inside
236
+ const copyTD = td.cloneNode(true);
237
+ Array.from(copyTD.querySelectorAll('*')).forEach((element: any) => {
238
+ element.remove();
239
+ });
240
+
241
+ const value = parseFloat(copyTD.textContent.replace('£', '').replace('%', '').replace(',', ''));
236
242
 
237
243
  td.setAttribute('data-numeric', value);
238
- td.setAttribute('data-value', td.textContent);
244
+ td.setAttribute('data-value', copyTD.textContent);
239
245
 
240
246
  const display = getComputedStyle(td).display;
241
247
 
242
248
  if (display != 'none') rowValue += value;
249
+
250
+ Array.from(td.querySelectorAll('a, button')).forEach((element: any, index: number) => {
251
+ if (index == 0) {
252
+ element.insertAdjacentHTML('beforeBegin', '<hr/>');
253
+ }
254
+
255
+ element.classList.add('btn');
256
+ element.classList.add('btn-tertiary');
257
+ });
243
258
  });
244
259
 
245
260
  tr.setAttribute('data-numeric', rowValue);
@@ -323,9 +338,13 @@ export const setLongestValue = function (chartOuter: any) {
323
338
  const table = chartOuter.querySelector('.chart table');
324
339
 
325
340
  let longestValue = '';
326
- Array.from(table.querySelectorAll('tbody tr td:not(:first-child) span')).forEach((td: any) => {
327
- if (typeof td.textContent != 'undefined' && td.textContent.length > longestValue.length)
328
- longestValue = td.textContent;
341
+ Array.from(table.querySelectorAll('tbody tr td:not(:first-child)')).forEach((td: any) => {
342
+ if (
343
+ typeof td.getAttribute('data-value') != 'undefined' &&
344
+ td.getAttribute('data-value').length > longestValue.length
345
+ ) {
346
+ longestValue = td.getAttribute('data-value');
347
+ }
329
348
  });
330
349
  chartWrapper.setAttribute('data-longest-value', longestValue);
331
350
  };
@@ -80,9 +80,7 @@ export const setTabsEventHandlers = function (tabsElement: Element) {
80
80
  button.addEventListener('click', (e) => {
81
81
  e.preventDefault();
82
82
 
83
- if (window.isScrolling) return;
84
-
85
- if (!window.triggered) window.isClicked = true;
83
+ window.isClicked = true;
86
84
 
87
85
  if (button.classList.contains('disabled')) return false;
88
86
 
@@ -105,9 +103,9 @@ export const setTabsEventHandlers = function (tabsElement: Element) {
105
103
  });
106
104
 
107
105
  if (button.matches(':last-child')) {
108
- nextButton.setAttribute('disabled', 'disabled');
106
+ nextButton?.setAttribute('disabled', 'disabled');
109
107
  } else {
110
- nextButton.removeAttribute('disabled');
108
+ nextButton?.removeAttribute('disabled');
111
109
  }
112
110
 
113
111
  // Data layer Open Event
@@ -119,23 +117,10 @@ export const setTabsEventHandlers = function (tabsElement: Element) {
119
117
  });
120
118
  });
121
119
 
122
- buttonWrapper.addEventListener('scroll', (event) => {
123
- if (window.isScrolling) return;
124
-
125
- clearTimeout(scrollTimeout);
126
- window.isScrolling = true;
127
- });
128
-
129
120
  buttonWrapper.addEventListener('scrollend', (event) => {
130
- window.isScrolling = false;
131
121
  clearTimeout(scrollTimeout);
132
122
 
133
123
  scrollTimeout = setTimeout(function () {
134
- if (window.isClicked) {
135
- window.isClicked = false;
136
- return false;
137
- }
138
-
139
124
  let buttonToClick = buttons[0];
140
125
  let closestOffset = Math.abs(buttonToClick.getBoundingClientRect().left);
141
126
 
@@ -146,11 +131,14 @@ export const setTabsEventHandlers = function (tabsElement: Element) {
146
131
  }
147
132
  });
148
133
 
149
- window.triggered = true;
134
+ if (window.isClicked) {
135
+ window.isClicked = false;
136
+ return false;
137
+ } else {
138
+ buttonToClick.click();
139
+ }
150
140
  buttonToClick.focus();
151
- buttonToClick.click();
152
- window.triggered = false;
153
- }, 200);
141
+ }, 500);
154
142
  });
155
143
 
156
144
  // Make sure we dont loose existing summary functionality
@@ -161,7 +149,7 @@ export const setTabsEventHandlers = function (tabsElement: Element) {
161
149
  });
162
150
  });
163
151
 
164
- nextButton.addEventListener('click', (e) => {
152
+ nextButton?.addEventListener('click', (e) => {
165
153
  e.preventDefault();
166
154
 
167
155
  const currentTab = buttonWrapper.querySelector('[aria-pressed="true"]');
@@ -67,7 +67,7 @@ const qs = /* @__PURE__ */ m(U, [["render", G]]), Q = (t) => t.charAt(0).toUpper
67
67
  },
68
68
  created() {
69
69
  this.$nextTick(function() {
70
- import("./table.component.min-6b493200.mjs").then((t) => {
70
+ import("./table.component.min-627d6042.mjs").then((t) => {
71
71
  window.customElements.get("iam-table") || window.customElements.define("iam-table", t.default);
72
72
  }).catch((t) => {
73
73
  console.log(t.message);
@@ -455,7 +455,7 @@ const N = /* @__PURE__ */ m(ne, [["render", Se]]), xe = {
455
455
  },
456
456
  created() {
457
457
  this.$nextTick(function() {
458
- import("./fileupload.component.min-1dbf3314.mjs").then((t) => {
458
+ import("./fileupload.component.min-65045d16.mjs").then((t) => {
459
459
  window.customElements.get("iam-fileupload") || window.customElements.define("iam-fileupload", t.default);
460
460
  }).catch((t) => {
461
461
  console.log(t.message);
@@ -485,7 +485,7 @@ const qe = {
485
485
  props: {},
486
486
  mounted() {
487
487
  this.$nextTick(function() {
488
- import("./accordion.component.min-324631e7.mjs").then((t) => {
488
+ import("./accordion.component.min-ea3701c4.mjs").then((t) => {
489
489
  window.customElements.get("iam-accordion") || window.customElements.define("iam-accordion", t.default);
490
490
  }).catch((t) => {
491
491
  console.log(t.message);
@@ -594,7 +594,7 @@ const Ms = /* @__PURE__ */ m(Ne, [["render", Fe]]), ze = {
594
594
  name: "Card",
595
595
  created() {
596
596
  this.$nextTick(function() {
597
- import("./card.component.min-90af000b.mjs").then((t) => {
597
+ import("./card.component.min-9fa7f5be.mjs").then((t) => {
598
598
  window.customElements.get("iam-card") || window.customElements.define("iam-card", t.default);
599
599
  }).catch((t) => {
600
600
  console.log(t.message);
@@ -611,7 +611,7 @@ const Cs = /* @__PURE__ */ m(ze, [["render", Be]]), Oe = {
611
611
  name: "Header",
612
612
  mounted() {
613
613
  this.$nextTick(function() {
614
- import("./carousel.component.min-17b69bf9.mjs").then((t) => {
614
+ import("./carousel.component.min-8f0dbeb9.mjs").then((t) => {
615
615
  window.customElements.get("iam-carousel") || window.customElements.define("iam-carousel", t.default);
616
616
  }).catch((t) => {
617
617
  console.log(t.message);
@@ -638,7 +638,7 @@ const Ns = /* @__PURE__ */ m(Oe, [["render", Ue]]), We = {
638
638
  },
639
639
  mounted() {
640
640
  this.$nextTick(function() {
641
- import("./header.component.min-15c3843d.mjs").then((t) => {
641
+ import("./header.component.min-a9c35f90.mjs").then((t) => {
642
642
  window.customElements.get("iam-header") || window.customElements.define("iam-header", t.default);
643
643
  }).catch((t) => {
644
644
  console.log(t.message);
@@ -1043,7 +1043,7 @@ const Is = /* @__PURE__ */ m(ht, [["render", At]]), Lt = {
1043
1043
  name: "Nav",
1044
1044
  mounted() {
1045
1045
  this.$nextTick(function() {
1046
- import("./nav.component.min-f34cb3e2.mjs").then((t) => {
1046
+ import("./nav.component.min-4b5ea00c.mjs").then((t) => {
1047
1047
  window.customElements.get("iam-nav") || window.customElements.define("iam-nav", t.default);
1048
1048
  }).catch((t) => {
1049
1049
  console.log(t.message);
@@ -1163,7 +1163,7 @@ const Wt = {
1163
1163
  name: "Tabs",
1164
1164
  created() {
1165
1165
  this.$nextTick(function() {
1166
- import("./tabs.component.min-3269d21d.mjs").then((t) => {
1166
+ import("./tabs.component.min-fbdb72f4.mjs").then((t) => {
1167
1167
  window.customElements.get("iam-tabs") || window.customElements.define("iam-tabs", t.default);
1168
1168
  }).catch((t) => {
1169
1169
  console.log(t.message);
@@ -1310,7 +1310,7 @@ function os(t, s, e, i, r, a) {
1310
1310
  }
1311
1311
  const Ws = /* @__PURE__ */ m(ns, [["render", os]]);
1312
1312
  /*!
1313
- * iamKey v7.1.0--beta5
1313
+ * iamKey v7.1.0--beta7
1314
1314
  * Copyright 2022-2025 iamproperty
1315
1315
  */
1316
1316
  function ls(t, s) {
@@ -1477,7 +1477,7 @@ const Gs = /* @__PURE__ */ m(fs, [["render", bs]]), ys = {
1477
1477
  props: {},
1478
1478
  mounted() {
1479
1479
  this.$nextTick(function() {
1480
- import("./actionbar.component.min-373b72cd.mjs").then((t) => {
1480
+ import("./actionbar.component.min-f4d3c731.mjs").then((t) => {
1481
1481
  window.customElements.get("iam-actionbar") || window.customElements.define("iam-actionbar", t.default);
1482
1482
  }).catch((t) => {
1483
1483
  console.log(t.message);
@@ -1492,7 +1492,7 @@ function _s(t, s, e, i, r, a) {
1492
1492
  }
1493
1493
  const Qs = /* @__PURE__ */ m(ys, [["render", _s]]);
1494
1494
  /*!
1495
- * iamKey v7.1.0--beta5
1495
+ * iamKey v7.1.0--beta7
1496
1496
  * Copyright 2022-2025 iamproperty
1497
1497
  */
1498
1498
  class P extends HTMLElement {