@iamproperty/components 7.8.2--beta8 → 7.8.2--beta9

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 (148) hide show
  1. package/assets/css/components/actionbar.component.css +1 -1
  2. package/assets/css/components/actionbar.component.css.map +1 -1
  3. package/assets/css/components/address-lookup.component.css +1 -1
  4. package/assets/css/components/address-lookup.component.css.map +1 -1
  5. package/assets/css/components/banner.component.css +1 -1
  6. package/assets/css/components/banner.component.css.map +1 -1
  7. package/assets/css/components/barchart.component.css +1 -1
  8. package/assets/css/components/barchart.component.css.map +1 -1
  9. package/assets/css/components/branch-selector.css +1 -1
  10. package/assets/css/components/branch-selector.css.map +1 -1
  11. package/assets/css/components/calendar.component.css +1 -1
  12. package/assets/css/components/calendar.component.css.map +1 -1
  13. package/assets/css/components/card.component.css +1 -1
  14. package/assets/css/components/card.component.css.map +1 -1
  15. package/assets/css/components/carousel.component.css +1 -1
  16. package/assets/css/components/carousel.component.css.map +1 -1
  17. package/assets/css/components/charts.module.css +1 -1
  18. package/assets/css/components/charts.module.css.map +1 -1
  19. package/assets/css/components/collapsible-side.css +1 -1
  20. package/assets/css/components/collapsible-side.css.map +1 -1
  21. package/assets/css/components/config.component.css +1 -1
  22. package/assets/css/components/config.component.css.map +1 -1
  23. package/assets/css/components/doughnutchart.component.css +1 -1
  24. package/assets/css/components/doughnutchart.component.css.map +1 -1
  25. package/assets/css/components/fileupload.css +1 -1
  26. package/assets/css/components/fileupload.css.map +1 -1
  27. package/assets/css/components/modal.component.css +1 -1
  28. package/assets/css/components/modal.component.css.map +1 -1
  29. package/assets/css/components/multi-step-modal.component.css +1 -1
  30. package/assets/css/components/multi-step-modal.component.css.map +1 -1
  31. package/assets/css/components/multiselect.css +1 -1
  32. package/assets/css/components/multiselect.css.map +1 -1
  33. package/assets/css/components/nav-standalone.component.css +1 -1
  34. package/assets/css/components/nav-standalone.component.css.map +1 -1
  35. package/assets/css/components/nav.component.css +1 -1
  36. package/assets/css/components/nav.component.css.map +1 -1
  37. package/assets/css/components/nav.global.css +1 -1
  38. package/assets/css/components/nav.global.css.map +1 -1
  39. package/assets/css/components/notification.css +1 -1
  40. package/assets/css/components/notification.css.map +1 -1
  41. package/assets/css/components/pagination.css +1 -1
  42. package/assets/css/components/pagination.css.map +1 -1
  43. package/assets/css/components/search.component.css +1 -1
  44. package/assets/css/components/search.component.css.map +1 -1
  45. package/assets/css/components/split-button.component.css +1 -1
  46. package/assets/css/components/split-button.component.css.map +1 -1
  47. package/assets/css/components/tabs.component.css +1 -1
  48. package/assets/css/components/tabs.component.css.map +1 -1
  49. package/assets/css/components/video-card.component.css +1 -1
  50. package/assets/css/components/video-card.component.css.map +1 -1
  51. package/assets/css/components/video-modal.component.css +1 -1
  52. package/assets/css/components/video-modal.component.css.map +1 -1
  53. package/assets/css/components/video.component.css +1 -1
  54. package/assets/css/components/video.component.css.map +1 -1
  55. package/assets/css/core.min.css +1 -1
  56. package/assets/css/core.min.css.map +1 -1
  57. package/assets/css/elements/buttons--global.css +1 -1
  58. package/assets/css/elements/buttons--global.css.map +1 -1
  59. package/assets/css/elements/buttons.css +1 -1
  60. package/assets/css/elements/buttons.css.map +1 -1
  61. package/assets/css/style.min.css +1 -1
  62. package/assets/css/style.min.css.map +1 -1
  63. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  64. package/assets/js/components/actionbar/actionbar.component.min.js +2 -2
  65. package/assets/js/components/address-lookup/address-lookup.component.min.js +2 -2
  66. package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
  67. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  68. package/assets/js/components/banner/banner.component.min.js +2 -2
  69. package/assets/js/components/barchart/barchart.component.min.js +2 -2
  70. package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
  71. package/assets/js/components/bone/bone.component.min.js +1 -1
  72. package/assets/js/components/branch-selector/branch-selector.component.min.js +2 -2
  73. package/assets/js/components/button/button.component.min.js +1 -1
  74. package/assets/js/components/calendar/calendar.component.min.js +2 -2
  75. package/assets/js/components/card/card.component.min.js +2 -2
  76. package/assets/js/components/carousel/carousel.component.min.js +2 -2
  77. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +2 -2
  78. package/assets/js/components/config/config.component.min.js +2 -2
  79. package/assets/js/components/content/content.component.min.js +1 -1
  80. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  81. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +4 -4
  82. package/assets/js/components/fileupload/fileupload.component.min.js +2 -2
  83. package/assets/js/components/filter-card/filter-card.component.min.js +1 -1
  84. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  85. package/assets/js/components/form/form.component.min.js +1 -1
  86. package/assets/js/components/header/header.component.min.js +1 -1
  87. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  88. package/assets/js/components/input/input.component.min.js +1 -1
  89. package/assets/js/components/input-range/input-range.component.min.js +1 -1
  90. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  91. package/assets/js/components/menu/menu.component.min.js +1 -1
  92. package/assets/js/components/milestone/milestone.component.min.js +1 -1
  93. package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
  94. package/assets/js/components/modal/modal.component.min.js +2 -2
  95. package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
  96. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +3 -3
  97. package/assets/js/components/multiselect/multiselect.component.js +5 -2
  98. package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
  99. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  100. package/assets/js/components/nav/nav.component.min.js +6 -6
  101. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  102. package/assets/js/components/nav-standalone/nav-standalone.component.min.js +7 -7
  103. package/assets/js/components/nav-standalone/nav-standalone.component.min.js.map +1 -1
  104. package/assets/js/components/notification/notification.component.min.js +2 -2
  105. package/assets/js/components/pagination/pagination.component.min.js +2 -2
  106. package/assets/js/components/password/password.component.min.js +1 -1
  107. package/assets/js/components/popover/popover.component.min.js +1 -1
  108. package/assets/js/components/rank/rank.component.min.js +1 -1
  109. package/assets/js/components/rankings/rankings.component.min.js +1 -1
  110. package/assets/js/components/rating/rating.component.min.js +1 -1
  111. package/assets/js/components/record-card/record-card.component.min.js +1 -1
  112. package/assets/js/components/search/search.component.min.js +2 -2
  113. package/assets/js/components/skeleton/skeleton.component.min.js +1 -1
  114. package/assets/js/components/slider/slider.component.min.js +1 -1
  115. package/assets/js/components/split-button/split-button.component.min.js +2 -2
  116. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +2 -2
  117. package/assets/js/components/std-nav/std-nav.component.js +9 -2
  118. package/assets/js/components/std-nav/std-nav.component.min.js +5 -5
  119. package/assets/js/components/std-nav/std-nav.component.min.js.map +1 -1
  120. package/assets/js/components/table/table.component.min.js +1 -1
  121. package/assets/js/components/table-ajax/table-ajax.component.min.js +1 -1
  122. package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
  123. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
  124. package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
  125. package/assets/js/components/tabs/tabs.component.min.js +3 -3
  126. package/assets/js/components/tag/tag.component.min.js +2 -2
  127. package/assets/js/components/tag/tag.component.min.js.map +1 -1
  128. package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
  129. package/assets/js/components/video/video.component.min.js +5 -5
  130. package/assets/js/components/video-card/video-card.component.min.js +2 -2
  131. package/assets/js/components/video-modal/video-modal.component.min.js +2 -2
  132. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  133. package/assets/js/modules/dropdown.js +1 -0
  134. package/assets/js/modules/nav.js +3 -0
  135. package/assets/js/scripts.bundle.js +1 -1
  136. package/assets/js/scripts.bundle.min.js +1 -1
  137. package/assets/sass/components/charts.module.scss +1 -1
  138. package/assets/sass/components/doughnutchart.component.scss +5 -3
  139. package/assets/sass/components/nav.global.scss +122 -101
  140. package/assets/sass/components/search.component.scss +1 -1
  141. package/assets/sass/elements/buttons--global.css +4 -1
  142. package/assets/ts/components/multiselect/multiselect.component.ts +5 -2
  143. package/assets/ts/components/std-nav/std-nav.component.ts +12 -1
  144. package/assets/ts/modules/dropdown.ts +3 -2
  145. package/assets/ts/modules/nav.ts +4 -0
  146. package/dist/components.es.js +675 -675
  147. package/dist/components.umd.js +35 -35
  148. package/package.json +1 -1
@@ -188,134 +188,130 @@ body[data-direction='down'].past100 nav:has(.nav--sticky) .nav--sticky{
188
188
  /* #endregion */
189
189
 
190
190
  /* #region mobile and tablet mega menu */
191
- :is(iam-nav,.iam-nav) details {
192
- @media screen and (max-width: 62em) {
191
+
192
+ @mixin mobileMenu(){
193
+ background-color: #eeeeee;
194
+ margin-left: -1.5rem;
195
+ margin-right: -1.5rem;
196
+ padding-inline: 1.5rem;
197
+ width: auto;
198
+ position: relative;
199
+
200
+ summary {
201
+ background-color: var(--colour-canvas-2);
202
+ display: block;
203
+ border: none;
204
+ color: var(--colour-link);
205
+ margin: 0;
193
206
 
194
207
  margin-left: -1.5rem;
195
208
  margin-right: -1.5rem;
196
- padding-inline: 1.5rem;
197
- width: auto;
209
+ padding: 1.5rem 4rem 1.5rem 1.5rem;
210
+ font-size: 1rem;
211
+ line-height: 1.5rem;
212
+ min-height: 1.5rem;
198
213
  position: relative;
214
+ font-weight: normal;
199
215
 
200
- .section [data-title].section-title {
216
+ &:after {
217
+ content: '\f055';
218
+ display: block;
219
+ font-size: 1.5rem;
220
+ font-weight: 300;
221
+ position: absolute;
222
+ top: 1.5rem;
223
+ right: 1.5rem;
224
+ font-family: var(--fa-family-classic);
225
+ line-height: 1em;
226
+ }
227
+ }
201
228
 
202
- color: var(--colour-body) !important;
203
- font-size: 1rem;
204
- font-weight: normal;
205
- font-weight: normal;
229
+ &[open] > summary:after {
230
+ content: '\f056';
231
+ font-weight: bold;
232
+ }
233
+
234
+ a {
235
+ text-decoration: none;
236
+ display: block;
237
+ border: none;
238
+ color: var(--colour-link);
239
+ margin: 0;
240
+ margin-left: 3rem!important;
241
+ padding: 1.5rem 0 1.5rem 0;
242
+ font-size: 1rem;
243
+ line-height: 1.5rem;
244
+ min-height: 1.5rem;
245
+ position: relative;
246
+ font-weight: normal;
247
+
248
+ &:after {
249
+ background: var(--colour-border) !important;
250
+ top: calc(100% - 2px) !important;
251
+ width: 100% !important;
206
252
  }
253
+ }
207
254
 
208
- summary {
209
- background-color: var(--colour-canvas-2);
255
+ &:after {
256
+ content: '';
257
+ position: absolute;
258
+ top: calc(100% - 2px);
259
+ left: 1.5rem;
260
+ height: 2px;
261
+ width: calc(100% - 3rem);
262
+ display: block;
263
+ height: 2px;
264
+ background-color: var(--colour-border) !important;
265
+ }
266
+ }
210
267
 
211
- /*
212
- @container style(--theme: dark) {
213
- background-color: var(--colour-canvas-2);
214
- }
215
- */
216
- display: block;
217
- border: none;
218
- color: var(--colour-link);
219
- margin: 0;
268
+ @media screen and (max-width: 62em) {
220
269
 
221
- margin-left: -1.5rem;
222
- margin-right: -1.5rem;
223
- padding: 1.5rem 4rem 1.5rem 1.5rem;
224
- font-size: 1rem;
225
- line-height: 1.5rem;
226
- min-height: 1.5rem;
227
- position: relative;
228
- font-weight: normal;
270
+ :is(iam-nav,.iam-nav) details {
229
271
 
230
- &:after {
231
- content: '\f055';
232
- display: block;
233
- font-size: 1.5rem;
234
- font-weight: 300;
235
- position: absolute;
236
- top: 1.5rem;
237
- right: 1.5rem;
238
- font-family: var(--fa-family-classic);
239
- line-height: 1em;
240
- }
241
- }
272
+ @include mobileMenu();
273
+ }
242
274
 
243
- &[open] > summary:after {
244
- content: '\f056';
245
- font-weight: bold;
275
+ /* secondary menus */
276
+ :is(iam-nav,.iam-nav) > details[slot="secondary"] {
277
+
278
+ background-color: transparent;
279
+
280
+ summary {
281
+ background-color: transparent;
246
282
  }
283
+ }
247
284
 
248
- a {
249
- text-decoration: none;
250
- display: block;
251
- border: none;
252
- color: var(--colour-link);
253
- margin: 0;
254
- margin-left: 3rem!important;
255
- padding: 1.5rem 0 1.5rem 0;
256
- font-size: 1rem;
257
- line-height: 1.5rem;
258
- min-height: 1.5rem;
259
- position: relative;
260
- font-weight: normal;
285
+ /* sub menus */
286
+ :is(iam-nav,.iam-nav) {
287
+ --mobDetails: 'true';
261
288
 
262
- &:after {
263
- background: var(--colour-border) !important;
264
- top: calc(100% - 2px) !important;
265
- width: 100% !important;
266
- }
267
- }
289
+
290
+ details .section [data-title].section-title {
268
291
 
269
- /* Hide cards */
270
- a:has(iam-card) {
271
- display: none !important;
292
+ color: var(--colour-body) !important;
293
+ font-size: 1rem;
294
+ font-weight: normal;
295
+ font-weight: normal;
272
296
  }
273
297
 
274
- > div .lead {
298
+ details > div .lead {
275
299
 
276
300
  padding: 1rem 0 0 3rem!important;
277
301
  }
278
302
 
279
- > div a:last-child {
303
+ details > div a:last-child {
280
304
  margin-bottom: 0 !important;
281
305
  }
282
306
 
283
- > div a:last-child:after {
307
+ details > div a:last-child:after {
284
308
  display: none;
285
309
  }
286
310
 
287
- &:after {
288
- content: '';
289
- position: absolute;
290
- top: calc(100% - 2px);
291
- left: 1.5rem;
292
- height: 2px;
293
- width: calc(100% - 3rem);
294
- display: block;
295
- height: 2px;
296
- background-color: var(--colour-border) !important;
297
- }
298
-
299
- /* secondary nav */
300
-
301
- &[slot="secondary"] {
302
- background-color: transparent;
303
-
304
- summary {
305
- background-color: transparent;
306
- }
311
+ /* Hide cards */
312
+ details a:has(iam-card) {
313
+ display: none !important;
307
314
  }
308
- }
309
- }
310
- @media screen and (max-width: 62em) {
311
-
312
- :is(iam-nav,.iam-nav) details {
313
-
314
- background-color: #eeeeee;
315
- }
316
- :is(iam-nav,.iam-nav) {
317
- --mobDetails: 'true';
318
-
319
315
  /* Sub details */
320
316
  details details {
321
317
  &:after {
@@ -385,10 +381,35 @@ body[data-direction='down'].past100 nav:has(.nav--sticky) .nav--sticky{
385
381
 
386
382
  /* #endregion */
387
383
 
384
+ /* maintain the mobile mega menu for the account menu on desktop */
385
+ :is(iam-nav,.iam-nav) > details[slot="account"] {
386
+
387
+
388
+ @include mobileMenu();
389
+
390
+ @media screen and (min-width: 36em) {
391
+ padding-right: 2.5rem;
392
+ margin-right: -2.5rem;
393
+
394
+ &:after {
395
+ width: calc(100% - 4rem);
396
+ }
397
+
398
+ summary {
399
+ padding-right: 2.5rem;
400
+ margin-right: -2.5rem;
401
+
402
+ &:after {
403
+ right: 2.5rem;
404
+ }
405
+ }
406
+ }
407
+ }
408
+
409
+
388
410
  /* #region Desktop mega menu */
389
411
  @media screen and (min-width: 62em) {
390
- :is(iam-nav,.iam-nav) > details:not([slot="secondary"]),
391
- :is(iam-nav,.iam-nav) *:not(.nav--menu) > details:not([slot="secondary"]) {
412
+ :is(iam-nav,.iam-nav) > details:not([slot="secondary"]):not([slot="account"]) {
392
413
  width: auto;
393
414
 
394
415
  > summary {
@@ -72,7 +72,7 @@
72
72
  display: none;
73
73
 
74
74
  &:not(:hover, :focus) {
75
- border-color: transparent!important;
75
+ outline-color: transparent!important;
76
76
  background-color: transparent!important;
77
77
  }
78
78
  }
@@ -51,9 +51,12 @@
51
51
  background 0.5s,
52
52
  color 0.5s;
53
53
  height: auto;
54
- max-width: fit-content;
54
+ width: fit-content;
55
+ max-width: 100%;
55
56
  appearance: none;
56
57
  white-space: nowrap;
58
+ text-overflow: ellipsis;
59
+ overflow: hidden;
57
60
 
58
61
  @media screen and (min-width: 36em) {
59
62
  --btn-margin: 1.5rem;
@@ -131,7 +131,10 @@ class iamMultiselect extends HTMLElement {
131
131
 
132
132
  search.addEventListener('input', () => {
133
133
 
134
- if (multiselect.hasAttribute('data-url') && search.value.length == minLength) {
134
+ if(multiselect.hasAttribute('data-url') && search.value.length == 0){
135
+
136
+ search.innerHTML = '';
137
+ } else if (multiselect.hasAttribute('data-url') && search.value.length == minLength) {
135
138
 
136
139
  searchAjax(multiselect, search, filterList);
137
140
  } else {
@@ -205,7 +208,7 @@ class iamMultiselect extends HTMLElement {
205
208
  }
206
209
  else{
207
210
 
208
- multiselect.classList.remove('hover');
211
+ //multiselect.classList.remove('hover');
209
212
  }
210
213
  }
211
214
  });
@@ -22,7 +22,18 @@ class iamSTDNav extends HTMLElement {
22
22
  <a href="https://my.iamproperty.com/ic/dashboard" slot="secondary">movebutler</a>
23
23
  <a href="https://my.iamproperty.com/auction" slot="secondary">iamsold</a>`;
24
24
 
25
- document.querySelector(`a[href*='${window.location.hostname}'][slot="secondary"]`)?.classList.add('selected');
25
+ nav.querySelector(`a[href*='${window.location.hostname}'][slot="secondary"]`)?.classList.add('selected');
26
+
27
+ /* For local environments */
28
+ if(this.hasAttribute('data-product') && this.getAttribute('data-product') == "movebutler")
29
+ nav.querySelector(`a[href='https://my.iamproperty.com/ic/dashboard'][slot="secondary"]`)?.classList.add('selected');
30
+
31
+ if(this.hasAttribute('data-product') && this.getAttribute('data-product') == "crm")
32
+ nav.querySelector(`a[href='https://crm.iamproperty.com/MyDay'][slot="secondary"]`)?.classList.add('selected');
33
+
34
+ if(this.hasAttribute('data-product') && this.getAttribute('data-product') == "iamsold")
35
+ nav.querySelector(`a[href='https://my.iamproperty.com/auction'][slot="secondary"]`)?.classList.add('selected');
36
+
26
37
  }
27
38
  return;
28
39
  }
@@ -59,6 +59,7 @@ export const searchAjax = async (component, search, callback): any => {
59
59
  .then((response) => {
60
60
 
61
61
  let items = '';
62
+ component.innerHTML = '';
62
63
 
63
64
  for (let i = 0; i < response['data'].length; i++) {
64
65
 
@@ -67,7 +68,7 @@ export const searchAjax = async (component, search, callback): any => {
67
68
  }
68
69
 
69
70
  component.insertAdjacentHTML('beforeend', `${items}`);
70
-
71
+
71
72
  callback(component, search);
72
73
  return response;
73
74
  });
@@ -93,7 +94,7 @@ export const setTag = (tag):void => {
93
94
  if(!tags.includes(tag.textContent)){
94
95
 
95
96
  tags.push(tag.textContent);
96
-
97
+
97
98
  localStorage.setItem('tags-'+inputName,JSON.stringify(tags));
98
99
  }
99
100
 
@@ -230,6 +230,10 @@ export const megaMenusEvents = (component,menu,menuButton,accountMenu,accountMen
230
230
  const summary = event.target.closest('summary');
231
231
  const details = summary.closest('details');
232
232
 
233
+ if(details.hasAttribute('slot') && details.getAttribute('slot') == "account"){
234
+ return false;
235
+ }
236
+
233
237
  if (window.innerWidth > 992 && !event.target.closest('.nav--menu')) {
234
238
 
235
239