@iamproperty/components 7.6.4--beta6 → 7.6.4--beta8

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 (164) 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/actionbar.global.css +1 -1
  4. package/assets/css/components/actionbar.global.css.map +1 -1
  5. package/assets/css/components/address-lookup.component.css +1 -1
  6. package/assets/css/components/address-lookup.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/calendar.component.css +1 -1
  10. package/assets/css/components/calendar.component.css.map +1 -1
  11. package/assets/css/components/card.component.css +1 -1
  12. package/assets/css/components/card.component.css.map +1 -1
  13. package/assets/css/components/carousel.component.css +1 -1
  14. package/assets/css/components/carousel.component.css.map +1 -1
  15. package/assets/css/components/collapsible-side.css +1 -1
  16. package/assets/css/components/collapsible-side.css.map +1 -1
  17. package/assets/css/components/config.component.css +1 -0
  18. package/assets/css/components/config.component.css.map +1 -0
  19. package/assets/css/components/content.component.css +1 -1
  20. package/assets/css/components/content.component.css.map +1 -1
  21. package/assets/css/components/doughnutchart.component.css +1 -1
  22. package/assets/css/components/doughnutchart.component.css.map +1 -1
  23. package/assets/css/components/fileupload.css +1 -1
  24. package/assets/css/components/fileupload.css.map +1 -1
  25. package/assets/css/components/modal.component.css +1 -1
  26. package/assets/css/components/modal.component.css.map +1 -1
  27. package/assets/css/components/multi-step-modal.component.css +1 -1
  28. package/assets/css/components/multi-step-modal.component.css.map +1 -1
  29. package/assets/css/components/multiselect.css +1 -1
  30. package/assets/css/components/multiselect.css.map +1 -1
  31. package/assets/css/components/nav.component.css +1 -1
  32. package/assets/css/components/nav.component.css.map +1 -1
  33. package/assets/css/components/nav.global.css +1 -1
  34. package/assets/css/components/nav.global.css.map +1 -1
  35. package/assets/css/components/notification.css +1 -1
  36. package/assets/css/components/notification.css.map +1 -1
  37. package/assets/css/components/pagination.css +1 -1
  38. package/assets/css/components/pagination.css.map +1 -1
  39. package/assets/css/components/slider.css +1 -1
  40. package/assets/css/components/slider.css.map +1 -1
  41. package/assets/css/components/split-button.component.css +1 -1
  42. package/assets/css/components/split-button.component.css.map +1 -1
  43. package/assets/css/components/table-basic.component.css +1 -1
  44. package/assets/css/components/table-basic.component.css.map +1 -1
  45. package/assets/css/components/table-basic.global.css +1 -1
  46. package/assets/css/components/table-basic.global.css.map +1 -1
  47. package/assets/css/components/table.component.css +1 -1
  48. package/assets/css/components/table.component.css.map +1 -1
  49. package/assets/css/components/table.global.css +1 -1
  50. package/assets/css/components/table.global.css.map +1 -1
  51. package/assets/css/components/tabs.component.css +1 -1
  52. package/assets/css/components/tabs.component.css.map +1 -1
  53. package/assets/css/components/tag.component.css +1 -1
  54. package/assets/css/components/tag.component.css.map +1 -1
  55. package/assets/css/components/video-modal.component.css +1 -1
  56. package/assets/css/components/video-modal.component.css.map +1 -1
  57. package/assets/css/core.min.css +1 -1
  58. package/assets/css/core.min.css.map +1 -1
  59. package/assets/css/style.min.css +1 -1
  60. package/assets/css/style.min.css.map +1 -1
  61. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  62. package/assets/js/components/actionbar/actionbar.component.js +7 -6
  63. package/assets/js/components/actionbar/actionbar.component.min.js +5 -5
  64. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  65. package/assets/js/components/address-lookup/address-lookup.component.js +11 -1
  66. package/assets/js/components/address-lookup/address-lookup.component.min.js +4 -4
  67. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  68. package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
  69. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  70. package/assets/js/components/barchart/barchart.component.min.js +2 -2
  71. package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
  72. package/assets/js/components/calendar/calendar.component.min.js +2 -2
  73. package/assets/js/components/card/card.component.min.js +2 -2
  74. package/assets/js/components/carousel/carousel.component.min.js +3 -3
  75. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +2 -2
  76. package/assets/js/components/config/config.component.js +532 -0
  77. package/assets/js/components/config/config.component.min.js +59 -0
  78. package/assets/js/components/config/config.component.min.js.map +1 -0
  79. package/assets/js/components/content/content.component.min.js +4 -4
  80. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  81. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +2 -2
  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 +4 -4
  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 +4 -4
  97. package/assets/js/components/multiselect/multiselect.component.min.js +2 -2
  98. package/assets/js/components/nav/nav.component.min.js +3 -3
  99. package/assets/js/components/notification/notification.component.js +69 -30
  100. package/assets/js/components/notification/notification.component.min.js +5 -5
  101. package/assets/js/components/notification/notification.component.min.js.map +1 -1
  102. package/assets/js/components/pagination/pagination.component.min.js +2 -2
  103. package/assets/js/components/password/password.component.min.js +1 -1
  104. package/assets/js/components/popover/popover.component.min.js +1 -1
  105. package/assets/js/components/rank/rank.component.min.js +1 -1
  106. package/assets/js/components/rankings/rankings.component.min.js +1 -1
  107. package/assets/js/components/rating/rating.component.min.js +1 -1
  108. package/assets/js/components/record-card/record-card.component.min.js +1 -1
  109. package/assets/js/components/search/search.component.min.js +1 -1
  110. package/assets/js/components/slider/slider.component.min.js +2 -2
  111. package/assets/js/components/split-button/split-button.component.min.js +5 -5
  112. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +5 -5
  113. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
  114. package/assets/js/components/table/table.component.min.js +8 -6
  115. package/assets/js/components/table/table.component.min.js.map +1 -1
  116. package/assets/js/components/table-ajax/table-ajax.component.min.js +8 -6
  117. package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
  118. package/assets/js/components/table-basic/table-basic.component.min.js +7 -5
  119. package/assets/js/components/table-basic/table-basic.component.min.js.map +1 -1
  120. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +8 -6
  121. package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
  122. package/assets/js/components/table-submit/table-submit.component.min.js +8 -6
  123. package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
  124. package/assets/js/components/tabs/tabs.component.min.js +3 -3
  125. package/assets/js/components/tag/tag.component.min.js +2 -2
  126. package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
  127. package/assets/js/components/video-card/video-card.component.min.js +1 -1
  128. package/assets/js/components/video-modal/video-modal.component.min.js +2 -2
  129. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  130. package/assets/js/modules/integration-tests.js +402 -0
  131. package/assets/js/modules/table.js +17 -1
  132. package/assets/js/scripts.bundle.js +5 -2
  133. package/assets/js/scripts.bundle.js.map +1 -1
  134. package/assets/js/scripts.bundle.min.js +2 -2
  135. package/assets/js/scripts.bundle.min.js.map +1 -1
  136. package/assets/js/scripts.js +11 -0
  137. package/assets/sass/components/actionbar.component.scss +13 -4
  138. package/assets/sass/components/actionbar.global.scss +8 -0
  139. package/assets/sass/components/config.component.scss +235 -0
  140. package/assets/sass/components/modal.component.scss +1 -0
  141. package/assets/sass/components/nav.global.scss +9 -5
  142. package/assets/sass/components/notification.scss +4 -14
  143. package/assets/sass/components/table-basic.component.scss +3 -0
  144. package/assets/sass/components/table-basic.global.scss +128 -6
  145. package/assets/sass/components/table.global.scss +153 -0
  146. package/assets/sass/elements/button__group.css +57 -16
  147. package/assets/sass/elements/buttons--compact.scss +2 -2
  148. package/assets/sass/elements/buttons--special.scss +1 -1
  149. package/assets/sass/elements/label.scss +4 -0
  150. package/assets/sass/elements/progress.scss +2 -2
  151. package/assets/sass/foundations/root.scss +0 -4
  152. package/assets/ts/components/actionbar/actionbar.component.ts +7 -6
  153. package/assets/ts/components/address-lookup/address-lookup.component.ts +16 -1
  154. package/assets/ts/components/config/config.component.ts +699 -0
  155. package/assets/ts/components/notification/notification.component.ts +98 -47
  156. package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +1 -0
  157. package/assets/ts/modules/integration-tests.ts +526 -0
  158. package/assets/ts/modules/table.ts +22 -1
  159. package/assets/ts/scripts.ts +14 -0
  160. package/dist/components.es.js +29 -29
  161. package/dist/components.umd.js +281 -214
  162. package/package.json +2 -2
  163. package/src/components/Config/Config.vue +23 -0
  164. package/src/components/Header/Header.vue +1 -1
@@ -3,6 +3,7 @@
3
3
  @use '../elements/prefix.scss' as *;
4
4
  @use '../elements/forms.scss' as *;
5
5
  @use '../elements/buttons.scss' as *;
6
+ @use '../elements/badge-tag.scss' as *;
6
7
  @use '../elements/dialog.scss' as *;
7
8
  @use '../elements/popover.scss' as *;
8
9
 
@@ -42,6 +43,14 @@ slot[name='selectall'] {
42
43
  }
43
44
  }
44
45
 
46
+ :host([data-view="square"]) .views [data-view="square"],
47
+ :host([data-view="list"]) .views [data-view="list"],
48
+ :host([data-view="small"]) .views [data-view="small"] {
49
+
50
+ background: #e9f9fd;
51
+ outline: 1px solid #1ebee6;
52
+ }
53
+
45
54
  .selectall,
46
55
  slot[name='selectall'] {
47
56
  width: 2.5rem;
@@ -69,7 +78,7 @@ slot[name='selectall'] {
69
78
  :is(.actionbar, .actionbar--selected, .actionbar--search) {
70
79
  border-top-left-radius: var(--actionbar-radius, #{rem(10)});
71
80
  border-top-right-radius: var(--actionbar-radius, #{rem(10)});
72
- padding: 0 1.5rem;
81
+ padding: 0 1rem;
73
82
  flex-wrap: nowrap;
74
83
  justify-content: flex-end;
75
84
  align-items: center;
@@ -81,7 +90,7 @@ slot[name='selectall'] {
81
90
  }
82
91
 
83
92
  @media screen and (min-width: 36em) {
84
- padding: 0 2rem;
93
+ padding: 0 1.5rem;
85
94
  }
86
95
  }
87
96
 
@@ -361,6 +370,8 @@ slot[name='selectall'] {
361
370
  height: 1rem;
362
371
  width: 1rem;
363
372
  border-radius: 50%;
373
+ mask-image:unset;
374
+ -webkit-mask-image:unset;
364
375
  }
365
376
  }
366
377
 
@@ -407,6 +418,4 @@ slot[name="filters"]{
407
418
  }
408
419
  }
409
420
 
410
-
411
-
412
421
  // #endregion
@@ -105,3 +105,11 @@ iam-actionbar:has(.selectall input:checked) {
105
105
  --selectall-actionbar-opactiy: 0;
106
106
  --selectall-action-pe: none;
107
107
  }
108
+
109
+ // #region filters
110
+
111
+ iam-actionbar [slot="filters"]:not(:has(+[slot="filters"])) {
112
+ margin-inline-end: auto!important;
113
+ }
114
+
115
+ // #endregion
@@ -0,0 +1,235 @@
1
+ @use '../_func.scss' as *;
2
+
3
+ @use '../_grid' as *;
4
+
5
+ @use '../elements/forms' as *;
6
+ @use '../elements/admin-panel' as *;
7
+
8
+ @use '../elements/type' as *;
9
+ @use '../elements/buttons' as *;
10
+ @use '../utilities/margins';
11
+ @use '../utilities/paddings';
12
+ @use '../utilities/colours.scss';
13
+ @use '../utilities/visually-hidden.scss';
14
+
15
+ @use '../utilities/font-awesome-iso-fallbacks.scss';
16
+
17
+ *,
18
+ *::before,
19
+ *::after {
20
+ box-sizing: border-box;
21
+ }
22
+
23
+ :host {
24
+ display: block!important;
25
+ }
26
+
27
+ // #region enable icons
28
+ .fa-chevron-up {
29
+ --fa: "\f077";
30
+ }
31
+
32
+ .fa-chevron-down {
33
+ --fa: "\f078";
34
+ }
35
+
36
+ .fa-trash {
37
+ --fa: "\f1f8";
38
+ }
39
+
40
+ .fa-plus {
41
+ --fa: "\2b";
42
+ }
43
+
44
+ .fa-pen-to-square {
45
+ --fa: "\f044";
46
+ }
47
+
48
+ .fa-floppy-disk {
49
+
50
+ --fa: "\f0c7";
51
+ }
52
+
53
+ [class*="fa-"]{
54
+
55
+ &:before {
56
+ content: var(--fa);
57
+ font-weight: 600;
58
+ font-family: "Font Awesome 6 Pro";
59
+ }
60
+ }
61
+ // #endregion
62
+
63
+ // #region basic structure
64
+
65
+ #wrapper {
66
+ container-type: inline-size;
67
+ display: flex;
68
+ flex-direction: column;
69
+
70
+ .admin-panel {
71
+ order: 1;
72
+ justify-content: flex-end;
73
+ display: flex;
74
+ max-width: fit-content;
75
+ gap: 0.75rem;
76
+ padding: 1rem;
77
+
78
+ > * {
79
+ margin: 0;
80
+ }
81
+ }
82
+
83
+ #items {
84
+ order: 2;
85
+ display: block!important;
86
+ }
87
+ }
88
+ // #endregion
89
+
90
+ // #region buckets
91
+ #buckets {
92
+
93
+ display: block!important;
94
+ }
95
+
96
+ .bucket {
97
+ display: block;
98
+ min-height: 10rem;
99
+ background-color: blue;
100
+ margin-bottom: 2rem;
101
+ padding: 1rem;
102
+ }
103
+
104
+ .bucket:empty {
105
+ display: block;
106
+ min-height: 10rem;
107
+ background-color: red;
108
+ margin-bottom: 2rem;
109
+ padding: 1rem;
110
+ }
111
+
112
+ .bucket__wrapper {
113
+
114
+ padding-right: 10.25rem;
115
+ position: relative;
116
+ border-bottom: 1px solid var(--colour-border);
117
+ margin-bottom: 2rem;
118
+ padding-bottom: 1rem;
119
+
120
+ > .btn__group {
121
+ position: absolute;
122
+ top: 0.25rem;
123
+ right: 0;
124
+ gap: 0;
125
+ padding: 0;
126
+ }
127
+ }
128
+ // #endregion
129
+
130
+ // #region item
131
+ #items [data-bucket] {
132
+
133
+ display: block;
134
+
135
+ form {
136
+ --btns-width: 2.5rem;
137
+ --col-size: calc((100% - (var(--gap) * 11)) / 12);
138
+ column-gap: var(--gap);
139
+ grid-column: var(--col-start, col-1-start) / var(--col-end, col-12-end);
140
+ grid-template-columns: [content-start col-1-start] var(--col-size) [col-1-end col-2-start] var(--col-size) [col-2-end col-3-start] var(--col-size) [col-3-end col-4-start] var(--col-size) [col-4-end col-5-start] var(--col-size) [col-5-end col-6-start] var(--col-size) [col-6-end col-7-start] var(--col-size) [col-7-end col-8-start] var(--col-size) [col-8-end col-9-start] var(--col-size) [col-9-end col-10-start] var(--col-size) [col-10-end col-11-start] var(--col-size) [col-11-end col-12-start] var(--col-size) [col-12-end content-end];
141
+
142
+ padding-right: calc(var(--btns-width) + 0.5rem);
143
+ position: relative;
144
+
145
+ .btn__group {
146
+ position: absolute;
147
+ top: 0.25rem;
148
+ right: 0;
149
+ gap: 0;
150
+ width: var(--btns-width);
151
+ padding-top: 1.75rem;
152
+ margin: 0;
153
+
154
+ .btn:not(.fa-trash){
155
+ display: none;
156
+ }
157
+ }
158
+
159
+ &:not(:where(main)):has(>[class*=col-]) {
160
+ .btn__group {
161
+ left: 100%;
162
+ margin-left: 0.5rem;
163
+ right: auto;
164
+ }
165
+ }
166
+ }
167
+ }
168
+
169
+ :host([data-order]) #items [data-bucket] form {
170
+
171
+ --btns-width: 10rem;
172
+
173
+ .btn:not(.fa-trash) {
174
+ display: inline-block;
175
+ }
176
+ }
177
+ // #endregion
178
+
179
+ // #region criteria
180
+ .criteria {
181
+ display: flex;
182
+ gap: 1rem;
183
+ padding-right: 5.25rem;
184
+ position: relative;
185
+
186
+ .btn__group {
187
+ position: absolute;
188
+ top: 0.25rem;
189
+ right: 0;
190
+ gap: 0;
191
+ padding: 0;
192
+ }
193
+
194
+ label {
195
+ flex-grow: 1;
196
+ }
197
+ label:nth-child(2) {
198
+ flex-grow: 0;
199
+ }
200
+ }
201
+ // #endregion
202
+
203
+ // #region expand criteria
204
+ .bucket__wrapper:not(.bucket--expanded) {
205
+ > label > span { // TODO add a selector if the input matches the only criteria item
206
+ display: none;
207
+ }
208
+ .criteria {
209
+ display: none;
210
+ }
211
+ .criteria label:nth-child(3):has(:disabled){
212
+ display: none;
213
+ }
214
+ }
215
+
216
+ .bucket__wrapper.bucket--expanded {
217
+
218
+ .btn__group .fa-pen-to-square {
219
+ --fa: "\e0a6";
220
+ }
221
+ }
222
+ // #endregion
223
+
224
+ // #region Disable top and bottom buttons
225
+
226
+ #buckets .bucket__wrapper:first-child .btn__group [data-direction="up"],
227
+ #buckets .bucket__wrapper:last-child .btn__group [data-direction="down"],
228
+ [data-bucket] form:first-child .btn__group [data-direction="up"],
229
+ [data-bucket] form:last-child .btn__group [data-direction="down"] {
230
+
231
+ opacity: 0.6;
232
+ pointer-events: none;
233
+ }
234
+
235
+ // #endregion
@@ -238,6 +238,7 @@
238
238
  display: flex;
239
239
  justify-content: center;
240
240
  padding-top: 2rem;
241
+ margin-bottom: 0;
241
242
  }
242
243
  }
243
244
 
@@ -136,11 +136,11 @@ nav:has(iam-nav.nav--sticky) {
136
136
  left: 0;
137
137
  right: 0;
138
138
  z-index: 9999;
139
- transition: transform 1s;
140
139
 
141
140
  iam-nav {
142
141
  position: fixed;
143
142
  outline: 2px solid #eeeeee;
143
+ transition: margin 1s;
144
144
  }
145
145
  }
146
146
 
@@ -148,6 +148,7 @@ nav:has(iam-nav.nav--sticky) {
148
148
  body:has(iam-nav.open:not(.nav--xs-sticky,.demo-open)) {
149
149
  max-height: 100vh;
150
150
  overflow: hidden;
151
+ margin-top: 0rem;
151
152
  }
152
153
 
153
154
  nav:has(iam-nav.nav--xs-sticky) {
@@ -156,7 +157,7 @@ nav:has(iam-nav.nav--sticky) {
156
157
  left: 0;
157
158
  right: 0;
158
159
  z-index: 9999;
159
- transition: transform 1s;
160
+ transition: margin 1s;
160
161
 
161
162
  iam-nav {
162
163
  position: fixed;
@@ -164,7 +165,8 @@ nav:has(iam-nav.nav--sticky) {
164
165
  }
165
166
 
166
167
  body[data-direction='down'].past100 nav:has(.nav--xs-sticky) {
167
- transform: translate(0, -110%);
168
+
169
+ margin-top: -8rem;
168
170
  }
169
171
  }
170
172
 
@@ -175,8 +177,10 @@ nav:has(iam-nav.nav--sticky) {
175
177
  }
176
178
  }
177
179
 
178
- body[data-direction='down'].past100 nav:has(.nav--sticky) {
179
- transform: translate(0, -110%);
180
+ body[data-direction='down'].past100 nav:has(.nav--sticky) .nav--sticky{
181
+ //transform: translate(0, -100%);
182
+
183
+ margin-top: -8rem;
180
184
  }
181
185
 
182
186
  // #endregion
@@ -33,22 +33,12 @@
33
33
  }
34
34
 
35
35
 
36
- :host(.colour-warning),
37
- .iam-notification.colour-warning {
38
- background: var(--colour-notification-warning-bg);
36
+ :host([class*="colour-"]) {
37
+
38
+ --bg-colour: color-mix(in oklab, var(--colour), #ffffff 80%) !important;
39
+ background: light-dark(var(--bg-colour),var(--colour-canvas-2));
39
40
  }
40
41
 
41
- :host(.colour-danger),
42
- .iam-notification.colour-danger {
43
-
44
- background: var(--colour-notification-danger-bg);
45
- }
46
-
47
- :host(.colour-success),
48
- .iam-notification.colour-success {
49
-
50
- background: var(--colour-notification-success-bg);
51
- }
52
42
 
53
43
  :host(.bg-white),
54
44
  .iam-notification.bg-white {
@@ -77,6 +77,9 @@
77
77
  max-height: none !important;
78
78
  }
79
79
 
80
+ ::slotted(*) {
81
+ margin-inline: 1.5rem;
82
+ }
80
83
  ::slotted(table) {
81
84
  overflow: visible !important;
82
85
  margin-inline: 1.5rem;
@@ -6,6 +6,7 @@ $selector: 'iam-table, iam-table-basic, iam-table-no-submit, iam-table-submit, i
6
6
 
7
7
  // #region Basic table stuff
8
8
 
9
+ @layer components {
9
10
  :is(#{$selector}) {
10
11
  --hover-background: var(--colour-light);
11
12
  --row-bg: var(--colour-canvas-2);
@@ -89,16 +90,21 @@ $selector: 'iam-table, iam-table-basic, iam-table-no-submit, iam-table-submit, i
89
90
  --compact-size: 2rem;
90
91
 
91
92
  &:before {
93
+ --fa: '\f055'!important;
92
94
  font-family: 'Font Awesome 6 Pro';
93
- content: '\f055';
95
+ display: block!important;
96
+
94
97
  font-weight: 300 !important;
95
98
  font-size: rem(28);
96
99
  line-height: var(--compact-size) !important;
97
100
  }
98
101
 
102
+ &[aria-expanded] {
103
+ --fa: '\f056'!important;
104
+ }
99
105
  &[aria-expanded] {
100
106
  &:before {
101
- content: '\f056';
107
+ --fa: '\f056'!important;
102
108
  font-weight: 900 !important;
103
109
  }
104
110
  }
@@ -390,13 +396,13 @@ table {
390
396
  padding-top: 0;
391
397
  }
392
398
  :is(#{$selector}).table--fullwidth iam-actionbar {
393
- margin: -2rem -2rem 2rem -2rem;
399
+ margin: -2rem -1.5rem 2rem -1.5rem;
394
400
  box-shadow: none;
395
401
  border-radius: 0;
396
402
  }
397
403
 
398
404
  :is(#{$selector}).table--fullwidth iam-actionbar:has(+ table input:checked) {
399
- margin: -2rem -2rem 2rem -2rem;
405
+ margin: -2rem -1.5rem 2rem -1.5rem;
400
406
  box-shadow: none;
401
407
  border-radius: 0;
402
408
  background-color: #e6eaec;
@@ -447,8 +453,8 @@ table {
447
453
  @container (width > 36em) {
448
454
  :is(#{$selector}).table--fullwidth iam-actionbar,
449
455
  :is(#{$selector}) iam-actionbar {
450
- margin-left: -2rem;
451
- margin-right: -2rem;
456
+ margin-left: -1.5rem;
457
+ margin-right: -1.5rem;
452
458
  margin-top: -2rem;
453
459
  margin-bottom: 2rem;
454
460
  }
@@ -470,6 +476,33 @@ table {
470
476
  }
471
477
  }
472
478
 
479
+ td:not(.selectrow) input:is([type='radio'], [type='checkbox']) + label:not(.radio--tick) {
480
+
481
+ &:before,
482
+ &:after {
483
+ top: 0 !important;
484
+ left: 0.25rem !important;
485
+ --border-radius: 0.25rem;
486
+ }
487
+ }
488
+
489
+ td:not(.selectrow):has(label:not(.radio--tick) input:is([type='radio'], [type='checkbox'])) + td {
490
+
491
+ border-top: 0;
492
+ }
493
+ td:not(.selectrow) label:not(.radio--tick):has(input:is([type='radio'], [type='checkbox'])) {
494
+
495
+ padding-inline: 0;
496
+ margin-right: 0;
497
+
498
+ &:before,
499
+ &:after {
500
+ top: 0 !important;
501
+ left: 0.25rem !important;
502
+ --border-radius: 0.25rem;
503
+ }
504
+ }
505
+
473
506
  &:has([type='checkbox']:checked) table{
474
507
  overflow: hidden;
475
508
  }
@@ -531,4 +564,93 @@ table {
531
564
  }
532
565
  }
533
566
  }
567
+ }
568
+ // #endregion
569
+
570
+
571
+ // #region Highlighted row
572
+ :is(#{$selector}):not(.table--fullwidth) {
573
+
574
+
575
+ tr:has(td label input:is([type="checkbox"])):has(+ .tr--highlight) td {
576
+
577
+ padding-bottom: 1.5rem;
578
+ }
579
+
580
+ .tr--highlight {
581
+ --row-bg: var(--colour-success);
582
+ --padding-block: 0.5rem;
583
+
584
+ td:has(i) {
585
+ color: var(--colour-primary-theme);
586
+ padding-left: 0.5rem;
587
+ font-style: italic;
588
+ position: relative;
589
+ padding-left: 2.5rem;
590
+ padding-right: 2rem;
591
+ padding-block: var(--padding-block);
592
+
593
+ i {
594
+ position: absolute;
595
+ top: 0.5rem;
596
+ left: 1rem;
597
+ }
598
+ }
599
+ }
600
+
601
+ tr:has(td label input:is([type="checkbox"])) + .tr--highlight td:has(i){
602
+
603
+ padding-left: 4.5rem;
604
+
605
+ i {
606
+ left: 3rem;
607
+ }
608
+ }
609
+
610
+
611
+ tr:has(+ .tr--highlight) {
612
+ border-bottom: 0;
613
+ }
614
+
615
+ @container (width < 23.4375em) {
616
+ .tr--highlight {
617
+ display: none;
618
+ }
619
+ tr[data-highlight]:before {
620
+
621
+ font-family: 'Font Awesome 6 Pro';
622
+ content: '\f005';
623
+ font-weight: bold;
624
+ position: absolute;
625
+ left: 1rem;
626
+ z-index: 99;
627
+ top: anchor(--my-anchor top);
628
+ left: anchor(--my-anchor left);
629
+ margin-top: 1rem;
630
+ margin-left: 2rem;
631
+ position-anchor: --my-anchor;
632
+ color: var(--colour-primary-theme);
633
+ }
634
+ tr[data-highlight]:after {
635
+ content: attr(data-highlight);
636
+ background: var(--colour-success);
637
+ color: var(--colour-primary-theme);
638
+ display: block;
639
+ width: calc(100% + 4rem);
640
+ margin-top: 0.5rem;
641
+ margin-inline: -2rem;
642
+ padding-inline: 2rem;
643
+ margin-bottom: -2rem;
644
+ padding-block: 1rem;
645
+
646
+ border-bottom-left-radius: 0.5rem;
647
+ border-bottom-right-radius: 0.5rem;
648
+
649
+ font-style: italic;
650
+ padding-left: 3.5rem;
651
+
652
+ anchor-name: --my-anchor;
653
+ }
654
+ }
655
+ }
534
656
  // #endregion