@iamproperty/components 5.6.1-beta4 → 5.6.1-beta6

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 (56) hide show
  1. package/assets/css/components/fileupload.css +1 -1
  2. package/assets/css/components/fileupload.css.map +1 -1
  3. package/assets/css/components/multiselect.css +1 -1
  4. package/assets/css/components/multiselect.css.map +1 -1
  5. package/assets/css/components/table.global.css +1 -1
  6. package/assets/css/components/table.global.css.map +1 -1
  7. package/assets/css/core.min.css +1 -1
  8. package/assets/css/core.min.css.map +1 -1
  9. package/assets/css/style.min.css +1 -1
  10. package/assets/css/style.min.css.map +1 -1
  11. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  12. package/assets/js/components/actionbar/actionbar.component.min.js +3 -3
  13. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  14. package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
  15. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  16. package/assets/js/components/card/card.component.min.js +1 -1
  17. package/assets/js/components/carousel/carousel.component.min.js +1 -1
  18. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  19. package/assets/js/components/fileupload/fileupload.component.js +1 -1
  20. package/assets/js/components/fileupload/fileupload.component.min.js +6 -6
  21. package/assets/js/components/fileupload/fileupload.component.min.js.map +1 -1
  22. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  23. package/assets/js/components/header/header.component.min.js +1 -1
  24. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  25. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  26. package/assets/js/components/multiselect/multiselect.component.js +2 -1
  27. package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
  28. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  29. package/assets/js/components/nav/nav.component.min.js +1 -1
  30. package/assets/js/components/notification/notification.component.min.js +1 -1
  31. package/assets/js/components/pagination/pagination.component.min.js +1 -1
  32. package/assets/js/components/search/search.component.min.js +1 -1
  33. package/assets/js/components/slider/slider.component.min.js +1 -1
  34. package/assets/js/components/table/table.component.min.js +5 -5
  35. package/assets/js/components/table/table.component.min.js.map +1 -1
  36. package/assets/js/components/tabs/tabs.component.min.js +1 -1
  37. package/assets/js/dynamic.min.js +2 -2
  38. package/assets/js/dynamic.min.js.map +1 -1
  39. package/assets/js/modules/dialogs.js +1 -1
  40. package/assets/js/modules/fileupload.js +2 -9
  41. package/assets/js/scripts.bundle.js +2 -2
  42. package/assets/js/scripts.bundle.js.map +1 -1
  43. package/assets/js/scripts.bundle.min.js +2 -2
  44. package/assets/js/scripts.bundle.min.js.map +1 -1
  45. package/assets/sass/_components.scss +40 -0
  46. package/assets/sass/components/fileupload.scss +1 -0
  47. package/assets/sass/components/multiselect.scss +5 -1
  48. package/assets/sass/components/table.global.scss +0 -17
  49. package/assets/ts/components/fileupload/fileupload.component.ts +1 -1
  50. package/assets/ts/components/multiselect/multiselect.component.ts +2 -1
  51. package/assets/ts/modules/dialogs.ts +1 -1
  52. package/assets/ts/modules/fileupload.ts +3 -14
  53. package/dist/components.es.js +508 -578
  54. package/dist/components.umd.js +54 -50
  55. package/package.json +1 -1
  56. package/src/components/FileUpload/FileUpload.vue +29 -6
@@ -40,4 +40,44 @@ iam-search .optional-text {
40
40
  .tabs {
41
41
  --tabs-gradient: linear-gradient(90deg, rgba(38,38,38,0), rgba(38,38,38,1));
42
42
  }
43
+ }
44
+
45
+ // Table dark mode support
46
+ iam-table {
47
+
48
+ tbody tr {
49
+
50
+ @include dark-mode(){
51
+
52
+ --hover-background: var(--colour-canvas);
53
+
54
+ &:is(:hover,:focus-within,.hover) {
55
+ background: var(--row-bg);
56
+ }
57
+ }
58
+ }
59
+ }
60
+
61
+ @container (width > 23.4375em) {
62
+
63
+ iam-table.table--cta:not(.table--loading):not(:has(tr:first-child td:first-child:last-child)) {
64
+
65
+ tr > *:not(:first-child):last-child {
66
+
67
+ @media screen and (prefers-color-scheme: dark) {
68
+
69
+ background: linear-gradient(90deg, transparent 0%, var(--row-bg) 1.25rem);
70
+ }
71
+ }
72
+ }
73
+ }
74
+
75
+ iam-table {
76
+
77
+ tr:has([type="checkbox"]:checked){
78
+
79
+ @include dark-mode(){
80
+ --row-bg: #000000;
81
+ }
82
+ }
43
83
  }
@@ -130,6 +130,7 @@
130
130
  user-select: none;
131
131
  max-width: 100%;
132
132
  min-width: 100%;
133
+ margin-bottom: 1rem;
133
134
 
134
135
  &.focus {
135
136
 
@@ -127,12 +127,16 @@ button {
127
127
  }
128
128
 
129
129
 
130
-
131
130
  .wrapper:is(:focus-within) .dropdown {
132
131
 
133
132
  display: var(--display-panel, none);
134
133
  }
135
134
 
135
+ .wrapper .dropdown:hover {
136
+
137
+ display: var(--display-panel, none);
138
+ }
139
+
136
140
 
137
141
  // Inline edit
138
142
  :host-context(:focus-within) {
@@ -23,15 +23,6 @@ iam-table {
23
23
  --row-bg: var(--hover-background);
24
24
  background: var(--row-bg);
25
25
  }
26
-
27
- @include dark-mode(){
28
-
29
- --hover-background: var(--colour-canvas);
30
-
31
- &:is(:hover,:focus-within,.hover) {
32
- background: var(--row-bg);
33
- }
34
- }
35
26
  }
36
27
 
37
28
  &[data-expandable] [data-expand-button][aria-expanded] {
@@ -219,10 +210,6 @@ iam-table {
219
210
  cursor: default;
220
211
  padding-bottom: 0;
221
212
 
222
- @media screen and (prefers-color-scheme: dark) {
223
-
224
- background: linear-gradient(90deg, transparent 0%, var(--row-bg) 1.25rem);
225
- }
226
213
  a {
227
214
  white-space: nowrap;
228
215
  padding-right: 0.2rem;
@@ -434,10 +421,6 @@ iam-table {
434
421
 
435
422
  tr:has([type="checkbox"]:checked){
436
423
  --row-bg: #E0E0E0;
437
-
438
- @include dark-mode(){
439
- --row-bg: #000000;
440
- }
441
424
  }
442
425
  }
443
426
 
@@ -28,7 +28,7 @@ class iamFileupload extends HTMLElement {
28
28
  <div class="file-upload">
29
29
  <span class="file-upload__title">Upload file</span>
30
30
  <p class="helper-text"><slot name="helper"></slot></p>
31
- <button class="btn btn-primary"><slot name="btn"></slot> Upload ${this.hasAttribute('data-filetype') ? this.getAttribute('data-filetype') : 'file'}</button>
31
+ <button class="btn btn-primary" type="button"><slot name="btn"></slot> Upload ${this.hasAttribute('data-filetype') ? this.getAttribute('data-filetype') : 'file'}</button>
32
32
  <div class="drop-area"></div>
33
33
  <hr/>
34
34
  <slot></slot>
@@ -142,8 +142,9 @@ class iamMultiselect extends HTMLElement {
142
142
 
143
143
  let checkbox = label.querySelector('input');
144
144
  let searchValue = checkbox.value;
145
+ let labelText = label.textContent;
145
146
 
146
- if(searchValue.toLowerCase().includes(search.value.toLowerCase())){
147
+ if(searchValue.toLowerCase().includes(search.value.toLowerCase()) || labelText.toLowerCase().includes(search.value.toLowerCase())){
147
148
  label.removeAttribute('slot')
148
149
  }
149
150
  else {
@@ -111,7 +111,7 @@ const extendDialogs = (body) => {
111
111
 
112
112
  if (event.clientX < dialogDimensions.left || event.clientX > dialogDimensions.right || event.clientY < dialogDimensions.top || event.clientY > dialogDimensions.bottom) {
113
113
 
114
- if(!event.target.closest('input[type="radio"]')) // Weird bug when interacting with radio input fields within dialogs cuases it to close
114
+ if(!event.target.closest('input[type="radio"]') && !event.target.closest('input[type="file"]') && !event.target.closest('iam-fileupload')) // Weird bug when interacting with radio input fields within dialogs cuases it to close
115
115
  dialog.close()
116
116
 
117
117
  window.dataLayer = window.dataLayer || [];
@@ -50,6 +50,9 @@ function fileupload(fileupload: Element, wrapper: Element) {
50
50
 
51
51
  const changeEvent = new Event('change');
52
52
  input.dispatchEvent(changeEvent);
53
+
54
+ const elementChangeEvent = new Event('elementChange');
55
+ fileupload.dispatchEvent(elementChangeEvent);
53
56
  }
54
57
  });
55
58
 
@@ -121,20 +124,6 @@ function fileupload(fileupload: Element, wrapper: Element) {
121
124
  filesWrapper.innerHTML += `<span class="file">${filename} <button data-file="${filename}">Remove</button></span>`;
122
125
  }
123
126
 
124
-
125
- // Change the filename
126
- wrapper.addEventListener('click', (event) => {
127
-
128
- if (event && event.target instanceof HTMLElement && event.target.closest('.btn-primary')){
129
-
130
- const button = event.target.closest('.btn-primary');
131
-
132
- // If the input allows multiples then use the buffer clone input
133
- const inputTrigger = input.hasAttribute('multiple') ? cloneInput : input;
134
-
135
- inputTrigger.click();
136
- }
137
- });
138
127
  }
139
128
 
140
129
  export default fileupload;