@iamproperty/components 4.0.0 → 4.1.0-beta-2
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.
- package/assets/css/components/actionbar-global.css +1 -1
- package/assets/css/components/actionbar-global.css.map +1 -1
- package/assets/css/components/actionbar.css +1 -1
- package/assets/css/components/actionbar.css.map +1 -1
- package/assets/css/components/admin-panel.css +1 -1
- package/assets/css/components/admin-panel.css.map +1 -1
- package/assets/css/components/card-global.css +1 -1
- package/assets/css/components/card-global.css.map +1 -1
- package/assets/css/components/card.css +1 -1
- package/assets/css/components/card.css.map +1 -1
- package/assets/css/components/charts.css.map +1 -1
- package/assets/css/components/collapsible-side.css.map +1 -1
- package/assets/css/components/dialog.css +1 -1
- package/assets/css/components/dialog.css.map +1 -1
- package/assets/css/components/fileupload.css.map +1 -1
- package/assets/css/components/forms.css +1 -1
- package/assets/css/components/forms.css.map +1 -1
- package/assets/css/components/header.css.map +1 -1
- package/assets/css/components/lists.css.map +1 -1
- package/assets/css/components/nav-global.css +1 -1
- package/assets/css/components/nav-global.css.map +1 -1
- package/assets/css/components/nav.css.map +1 -1
- package/assets/css/components/nav.old.css.map +1 -1
- package/assets/css/components/notification.css.map +1 -1
- package/assets/css/components/pagination.css.map +1 -1
- package/assets/css/components/property-searchbar.css.map +1 -1
- package/assets/css/components/table.css +1 -1
- package/assets/css/components/table.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.js +45 -0
- package/assets/js/components/actionbar/actionbar.component.min.js +4 -4
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +3 -3
- package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
- package/assets/js/components/card/card.component.js +9 -1
- package/assets/js/components/card/card.component.min.js +7 -5
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/nav/nav.component.min.js +1 -1
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +1 -1
- package/assets/js/components/table/table.component.js +3 -0
- package/assets/js/components/table/table.component.min.js +10 -10
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/dynamic.min.js +4 -4
- package/assets/js/dynamic.min.js.map +1 -1
- package/assets/js/modules/applied-filters.js +3 -3
- package/assets/js/modules/dialogs.js +17 -1
- package/assets/js/modules/table.js +68 -13
- package/assets/js/scripts.bundle.js +15 -13
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/sass/_corefiles.scss +0 -1
- package/assets/sass/_func.scss +1 -0
- package/assets/sass/_functions/mixins.scss +22 -0
- package/assets/sass/components/actionbar-global.scss +69 -7
- package/assets/sass/components/actionbar.scss +20 -8
- package/assets/sass/components/admin-panel.scss +47 -2
- package/assets/sass/components/card-global.scss +53 -1
- package/assets/sass/components/card.scss +14 -12
- package/assets/sass/components/charts.scss +1 -1
- package/assets/sass/components/collapsible-side.scss +1 -1
- package/assets/sass/components/dialog.scss +50 -53
- package/assets/sass/components/fileupload.scss +1 -1
- package/assets/sass/components/forms.scss +99 -89
- package/assets/sass/components/nav-global.scss +15 -9
- package/assets/sass/components/nav.scss +9 -10
- package/assets/sass/components/notification.scss +1 -1
- package/assets/sass/components/table.scss +85 -4
- package/assets/sass/core.scss +1 -0
- package/assets/sass/error.scss +2 -1
- package/assets/sass/foundations/root.scss +3 -3
- package/assets/sass/main.scss +4 -3
- package/assets/ts/components/actionbar/actionbar.component.ts +67 -2
- package/assets/ts/components/card/card.component.ts +12 -2
- package/assets/ts/components/table/table.component.ts +4 -0
- package/assets/ts/modules/applied-filters.ts +6 -5
- package/assets/ts/modules/dialogs.ts +23 -1
- package/assets/ts/modules/table.ts +82 -13
- package/dist/components.es.js +900 -828
- package/dist/components.umd.js +55 -53
- package/package.json +1 -1
|
@@ -16,7 +16,7 @@ label {
|
|
|
16
16
|
// #endregion
|
|
17
17
|
|
|
18
18
|
// #region input field
|
|
19
|
-
:is(input,textarea,output,select) {
|
|
19
|
+
:is(input:not([type="checkbox"]):not([type="radio"]),textarea,output,select) {
|
|
20
20
|
display: block;
|
|
21
21
|
width: 100%;
|
|
22
22
|
max-width: $content-max-width;
|
|
@@ -192,111 +192,117 @@ div:has(> label:first-child):has(> input):has(> :is(.form-control-inline,.input-
|
|
|
192
192
|
|
|
193
193
|
// #region prefix
|
|
194
194
|
:is(.prefix, .suffix) {
|
|
195
|
-
display:
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
font-size: var(--input-fs, #{rem(16)});
|
|
199
|
-
line-height: var(--input-lh, #{rem(20)});
|
|
200
|
-
color: var(--colour-body);
|
|
201
|
-
background-color: var(--colour-primary-theme);
|
|
202
|
-
border: 2px solid var(--colour-primary);
|
|
203
|
-
color: var(--colour-white);
|
|
204
|
-
margin-bottom: 1rem;
|
|
205
|
-
border-end-start-radius: rem(8);
|
|
206
|
-
border-start-start-radius: rem(8);
|
|
207
|
-
min-width: calc(#{rem(20 + 12 + 12)} + 4px);
|
|
208
|
-
overflow: hidden;
|
|
209
|
-
white-space: nowrap;
|
|
210
|
-
text-align: center;
|
|
211
|
-
text-overflow: ellipsis;
|
|
212
|
-
position: relative;
|
|
213
|
-
|
|
214
|
-
min-height: calc(var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) + var(--input-lh, #{rem(20)}) + 4px);
|
|
215
|
-
max-height: calc(var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) + var(--input-lh, #{rem(20)}) + 4px);
|
|
216
|
-
|
|
195
|
+
display: none;
|
|
196
|
+
}
|
|
197
|
+
@supports selector(:has(*)) {
|
|
217
198
|
|
|
218
|
-
|
|
199
|
+
:is(.prefix, .suffix) {
|
|
219
200
|
display: inline-block;
|
|
220
|
-
|
|
221
|
-
|
|
201
|
+
width: auto;
|
|
202
|
+
padding: var(--input-padding-block, #{rem(12)}) var(--input-padding-block, #{rem(16)});
|
|
203
|
+
font-size: var(--input-fs, #{rem(16)});
|
|
204
|
+
line-height: var(--input-lh, #{rem(20)});
|
|
205
|
+
color: var(--colour-body);
|
|
206
|
+
background-color: var(--colour-primary-theme);
|
|
207
|
+
border: 2px solid var(--colour-primary);
|
|
208
|
+
color: var(--colour-white);
|
|
209
|
+
margin-bottom: 1rem;
|
|
210
|
+
border-end-start-radius: rem(8);
|
|
211
|
+
border-start-start-radius: rem(8);
|
|
212
|
+
min-width: calc(#{rem(20 + 12 + 12)} + 4px);
|
|
213
|
+
overflow: hidden;
|
|
214
|
+
white-space: nowrap;
|
|
215
|
+
text-align: center;
|
|
216
|
+
text-overflow: ellipsis;
|
|
217
|
+
position: relative;
|
|
218
|
+
|
|
219
|
+
min-height: calc(var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) + var(--input-lh, #{rem(20)}) + 4px);
|
|
220
|
+
max-height: calc(var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) + var(--input-lh, #{rem(20)}) + 4px);
|
|
222
221
|
|
|
223
|
-
&[class*="fa-"] {
|
|
224
|
-
width: calc(#{rem(20 + 12 + 12)} + 4px);
|
|
225
|
-
padding-inline: 0;
|
|
226
|
-
}
|
|
227
222
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
cursor: pointer;
|
|
233
|
-
}
|
|
223
|
+
&:after {
|
|
224
|
+
display: inline-block;
|
|
225
|
+
max-width: rem(20);
|
|
226
|
+
}
|
|
234
227
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
228
|
+
&[class*="fa-"] {
|
|
229
|
+
width: calc(#{rem(20 + 12 + 12)} + 4px);
|
|
230
|
+
padding-inline: 0;
|
|
231
|
+
}
|
|
238
232
|
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
select:has(option:nth-child(7):checked) ~ span:nth-of-type(7),
|
|
246
|
-
select:has(option:nth-child(8):checked) ~ span:nth-of-type(8),
|
|
247
|
-
select:has(option:nth-child(9):checked) ~ span:nth-of-type(9),
|
|
248
|
-
select:has(option:nth-child(10):checked) ~ span:nth-of-type(10) {
|
|
233
|
+
select {
|
|
234
|
+
position: absolute;
|
|
235
|
+
inset: 0;
|
|
236
|
+
opacity: 0;
|
|
237
|
+
cursor: pointer;
|
|
238
|
+
}
|
|
249
239
|
|
|
250
|
-
|
|
251
|
-
|
|
240
|
+
span {
|
|
241
|
+
display: none;
|
|
242
|
+
}
|
|
252
243
|
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
244
|
+
select:has(option:nth-child(1):checked) ~ span:nth-of-type(1),
|
|
245
|
+
select:has(option:nth-child(2):checked) ~ span:nth-of-type(2),
|
|
246
|
+
select:has(option:nth-child(3):checked) ~ span:nth-of-type(3),
|
|
247
|
+
select:has(option:nth-child(4):checked) ~ span:nth-of-type(4),
|
|
248
|
+
select:has(option:nth-child(5):checked) ~ span:nth-of-type(5),
|
|
249
|
+
select:has(option:nth-child(6):checked) ~ span:nth-of-type(6),
|
|
250
|
+
select:has(option:nth-child(7):checked) ~ span:nth-of-type(7),
|
|
251
|
+
select:has(option:nth-child(8):checked) ~ span:nth-of-type(8),
|
|
252
|
+
select:has(option:nth-child(9):checked) ~ span:nth-of-type(9),
|
|
253
|
+
select:has(option:nth-child(10):checked) ~ span:nth-of-type(10) {
|
|
254
|
+
|
|
255
|
+
display: block;
|
|
256
|
+
}
|
|
260
257
|
|
|
261
|
-
|
|
262
|
-
|
|
258
|
+
select ~ span:after {
|
|
259
|
+
content: " \f078";
|
|
260
|
+
font-family: "Font Awesome 6 Pro";
|
|
261
|
+
font-size: 0.8em;
|
|
262
|
+
display: inline-block;
|
|
263
|
+
padding-left: 1em;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
select:focus-visible ~ span:after {
|
|
267
|
+
content: "\f077";
|
|
268
|
+
}
|
|
263
269
|
}
|
|
264
|
-
}
|
|
265
270
|
|
|
266
|
-
.prefix {
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
}
|
|
271
|
+
.prefix {
|
|
272
|
+
|
|
273
|
+
border-right: none;
|
|
274
|
+
}
|
|
270
275
|
|
|
271
|
-
.suffix {
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
}
|
|
276
|
+
.suffix {
|
|
277
|
+
|
|
278
|
+
border-left: none;
|
|
279
|
+
border-end-start-radius: 0;
|
|
280
|
+
border-start-start-radius: 0;
|
|
281
|
+
border-start-end-radius: rem(8)!important;
|
|
282
|
+
border-end-end-radius: rem(8)!important;
|
|
283
|
+
order: 2;
|
|
284
|
+
}
|
|
280
285
|
|
|
281
|
-
.prefix span {
|
|
282
|
-
|
|
286
|
+
.prefix span {
|
|
287
|
+
display: none;
|
|
283
288
|
|
|
284
|
-
|
|
285
|
-
|
|
289
|
+
small {
|
|
290
|
+
font-size: 0.8em;
|
|
291
|
+
}
|
|
286
292
|
}
|
|
287
|
-
}
|
|
288
293
|
|
|
289
|
-
.prefix ~ :is(input,textarea,output) {
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
}
|
|
294
|
+
.prefix ~ :is(input,textarea,output) {
|
|
295
|
+
|
|
296
|
+
border-end-start-radius: 0;
|
|
297
|
+
border-start-start-radius: 0;
|
|
298
|
+
}
|
|
294
299
|
|
|
295
|
-
.suffix ~ :is(input,textarea,output) {
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
+
.suffix ~ :is(input,textarea,output) {
|
|
301
|
+
order: 1;
|
|
302
|
+
|
|
303
|
+
border-start-end-radius: 0;
|
|
304
|
+
border-end-end-radius: 0;
|
|
305
|
+
}
|
|
300
306
|
}
|
|
301
307
|
// #endregion
|
|
302
308
|
|
|
@@ -379,6 +385,8 @@ $icon-tick: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' view
|
|
|
379
385
|
// #endregion
|
|
380
386
|
|
|
381
387
|
// #region radio/checkbox field
|
|
388
|
+
@supports selector(:has(*)) {
|
|
389
|
+
|
|
382
390
|
input:is([type="radio"],[type="checkbox"]) {
|
|
383
391
|
position: absolute;
|
|
384
392
|
top: 0;
|
|
@@ -629,6 +637,8 @@ input[type="checkbox"][disabled]:checked + label {
|
|
|
629
637
|
border-color: #E0E0E0!important;
|
|
630
638
|
}
|
|
631
639
|
}
|
|
640
|
+
|
|
641
|
+
}
|
|
632
642
|
// #endregion
|
|
633
643
|
|
|
634
644
|
// #region Conditional reveal
|
|
@@ -10,11 +10,17 @@ body:has(iam-nav.open:not(.nav--sticky):not(.nav--xs-sticky)) {
|
|
|
10
10
|
body {
|
|
11
11
|
|
|
12
12
|
--nav-height: #{rem(96)};
|
|
13
|
+
--sticky-padding: 0px;
|
|
13
14
|
|
|
14
15
|
&:has(iam-nav a[slot="secondary"]){
|
|
15
16
|
|
|
16
17
|
--nav-height: #{rem(96 + 40)};
|
|
17
18
|
}
|
|
19
|
+
|
|
20
|
+
&:has(iam-nav.nav--sticky) {
|
|
21
|
+
|
|
22
|
+
--sticky-padding: var(--nav-height);
|
|
23
|
+
}
|
|
18
24
|
}
|
|
19
25
|
|
|
20
26
|
// #region Create the correct padding top of the page
|
|
@@ -110,7 +116,7 @@ iam-nav {
|
|
|
110
116
|
text-decoration: none;
|
|
111
117
|
}
|
|
112
118
|
|
|
113
|
-
a:not([slot="logo"]):not(:has(iam-card)) {
|
|
119
|
+
a:not([slot="logo"]):not(.btn):not(:has(iam-card)) {
|
|
114
120
|
|
|
115
121
|
text-decoration: none;
|
|
116
122
|
|
|
@@ -165,7 +171,7 @@ iam-nav details {
|
|
|
165
171
|
|
|
166
172
|
background-color: var(--colour-canvas);
|
|
167
173
|
|
|
168
|
-
@
|
|
174
|
+
@include light-mode() {
|
|
169
175
|
background-color: #EEEEEE;
|
|
170
176
|
}
|
|
171
177
|
|
|
@@ -180,9 +186,9 @@ iam-nav details {
|
|
|
180
186
|
background-color: var(--colour-white);
|
|
181
187
|
|
|
182
188
|
|
|
183
|
-
@
|
|
189
|
+
@include dark-mode() {
|
|
184
190
|
|
|
185
|
-
|
|
191
|
+
background-color: var(--colour-canvas-2);
|
|
186
192
|
}
|
|
187
193
|
display:block;
|
|
188
194
|
border: none;
|
|
@@ -378,11 +384,11 @@ iam-nav details {
|
|
|
378
384
|
box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.11);
|
|
379
385
|
|
|
380
386
|
|
|
381
|
-
@
|
|
387
|
+
@include light-mode() {
|
|
382
388
|
background: var(--colour-white);
|
|
383
389
|
@include reset-colours();
|
|
384
390
|
}
|
|
385
|
-
@
|
|
391
|
+
@include dark-mode() {
|
|
386
392
|
|
|
387
393
|
@include invert-colours();
|
|
388
394
|
}
|
|
@@ -393,7 +399,7 @@ iam-nav details {
|
|
|
393
399
|
|
|
394
400
|
background: var(--colour-canvas-2);
|
|
395
401
|
|
|
396
|
-
@
|
|
402
|
+
@include light-mode() {
|
|
397
403
|
background: #EEEEEE;
|
|
398
404
|
}
|
|
399
405
|
a {
|
|
@@ -426,7 +432,7 @@ iam-nav details {
|
|
|
426
432
|
&[open] > div:not(:has(details)) {
|
|
427
433
|
background: var(--colour-canvas);
|
|
428
434
|
|
|
429
|
-
@
|
|
435
|
+
@include light-mode() {
|
|
430
436
|
background: var(--colour-white);
|
|
431
437
|
--colour-canvas-2: white;
|
|
432
438
|
}
|
|
@@ -489,7 +495,7 @@ iam-nav details {
|
|
|
489
495
|
}
|
|
490
496
|
}
|
|
491
497
|
|
|
492
|
-
a:not([slot="logo"]):not(:has(iam-card)) {
|
|
498
|
+
a:not([slot="logo"]):not(.btn):not(:has(iam-card)) {
|
|
493
499
|
|
|
494
500
|
font-size: 1rem;
|
|
495
501
|
line-height: rem(24);
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
}
|
|
99
99
|
|
|
100
100
|
.btn {
|
|
101
|
-
@
|
|
101
|
+
@include light-mode() {
|
|
102
102
|
|
|
103
103
|
@include reset-colours();
|
|
104
104
|
|
|
@@ -188,13 +188,13 @@
|
|
|
188
188
|
flex-shrink: 0;
|
|
189
189
|
}
|
|
190
190
|
|
|
191
|
-
@
|
|
191
|
+
@include dark-mode() {
|
|
192
192
|
--colour-link: var(--colour-white);
|
|
193
193
|
@include invert-colours();
|
|
194
194
|
}
|
|
195
195
|
|
|
196
196
|
// The menu is always white unless in dark mode
|
|
197
|
-
@
|
|
197
|
+
@include light-mode() {
|
|
198
198
|
|
|
199
199
|
background-color: var(--colour-white);
|
|
200
200
|
@include reset-colours();
|
|
@@ -242,7 +242,7 @@
|
|
|
242
242
|
flex-grow: 1;
|
|
243
243
|
position: relative;
|
|
244
244
|
|
|
245
|
-
@
|
|
245
|
+
@include light-mode() {
|
|
246
246
|
background-color: #EEEEEE;
|
|
247
247
|
}
|
|
248
248
|
|
|
@@ -393,14 +393,13 @@
|
|
|
393
393
|
left: 0;
|
|
394
394
|
width: 100%;
|
|
395
395
|
|
|
396
|
-
@
|
|
396
|
+
@include light-mode(){
|
|
397
397
|
|
|
398
398
|
background-color: #EEEEEE;
|
|
399
399
|
@include reset-colours();
|
|
400
400
|
}
|
|
401
401
|
|
|
402
|
-
@
|
|
403
|
-
|
|
402
|
+
@include dark-mode() {
|
|
404
403
|
|
|
405
404
|
@include invert-colours();
|
|
406
405
|
}
|
|
@@ -494,7 +493,7 @@
|
|
|
494
493
|
|
|
495
494
|
background: #E6EAEC!important;
|
|
496
495
|
|
|
497
|
-
@
|
|
496
|
+
@include dark-mode() {
|
|
498
497
|
|
|
499
498
|
background: var(--colour-canvas-2)!important;
|
|
500
499
|
}
|
|
@@ -564,13 +563,13 @@
|
|
|
564
563
|
flex-shrink: 0;
|
|
565
564
|
}
|
|
566
565
|
|
|
567
|
-
@
|
|
566
|
+
@include dark-mode() {
|
|
568
567
|
--colour-link: var(--colour-white);
|
|
569
568
|
@include invert-colours();
|
|
570
569
|
}
|
|
571
570
|
|
|
572
571
|
// The menu is always white unless in dark mode
|
|
573
|
-
@
|
|
572
|
+
@include light-mode() {
|
|
574
573
|
|
|
575
574
|
background-color: var(--colour-white);
|
|
576
575
|
@include reset-colours();
|
|
@@ -76,7 +76,7 @@ tr td[colspan="100%"]:first-child:last-child span {
|
|
|
76
76
|
@container (width >= 60em) {
|
|
77
77
|
thead {
|
|
78
78
|
|
|
79
|
-
th {
|
|
79
|
+
th:not(:empty) {
|
|
80
80
|
white-space: nowrap;
|
|
81
81
|
min-width: #{$td-mw};
|
|
82
82
|
}
|
|
@@ -136,12 +136,17 @@ table.border-0 {
|
|
|
136
136
|
margin-bottom: 0;
|
|
137
137
|
|
|
138
138
|
td:has(input[type="checkbox"]) {
|
|
139
|
-
width: rem(
|
|
140
|
-
min-width: rem(
|
|
141
|
-
max-width: rem(
|
|
139
|
+
width: rem(40);
|
|
140
|
+
min-width: rem(40);
|
|
141
|
+
max-width: rem(40);
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
+
@media screen and (prefers-color-scheme: dark) {
|
|
146
|
+
|
|
147
|
+
background: var(--colour-canvas-2);
|
|
148
|
+
}
|
|
149
|
+
|
|
145
150
|
@media (forced-colors: active) {
|
|
146
151
|
--wrapper-padding: 0;
|
|
147
152
|
background: var(--colour-canvas-2);
|
|
@@ -170,6 +175,11 @@ table.border-0 {
|
|
|
170
175
|
margin-right: -1.5rem;
|
|
171
176
|
margin-bottom: 0;
|
|
172
177
|
background: white;
|
|
178
|
+
|
|
179
|
+
@media screen and (prefers-color-scheme: dark) {
|
|
180
|
+
|
|
181
|
+
background: var(--colour-canvas-2);
|
|
182
|
+
}
|
|
173
183
|
}
|
|
174
184
|
|
|
175
185
|
|
|
@@ -381,7 +391,13 @@ table.border-0 {
|
|
|
381
391
|
margin-left: rem(-40);
|
|
382
392
|
min-height: var(--row-height);
|
|
383
393
|
text-align: right;
|
|
394
|
+
background: linear-gradient(90deg, transparent 0%, white 1.25rem);
|
|
395
|
+
cursor: default;
|
|
396
|
+
|
|
397
|
+
@media screen and (prefers-color-scheme: dark) {
|
|
398
|
+
|
|
384
399
|
background: linear-gradient(90deg, transparent 0%, var(--colour-canvas-2) 1.25rem);
|
|
400
|
+
}
|
|
385
401
|
|
|
386
402
|
&:after {
|
|
387
403
|
bottom: 0;
|
|
@@ -622,3 +638,68 @@ table {
|
|
|
622
638
|
color: var(--colour-primary);
|
|
623
639
|
}
|
|
624
640
|
}
|
|
641
|
+
|
|
642
|
+
// #region Table with actionbar
|
|
643
|
+
|
|
644
|
+
iam-table {
|
|
645
|
+
|
|
646
|
+
td:has([type="checkbox"]){
|
|
647
|
+
position: static!important;
|
|
648
|
+
width: rem(40);
|
|
649
|
+
}
|
|
650
|
+
|
|
651
|
+
input:is([type="radio"],[type="checkbox"]) + label {
|
|
652
|
+
padding-left: 0!important;
|
|
653
|
+
margin: 0!important;
|
|
654
|
+
|
|
655
|
+
&:before,
|
|
656
|
+
&:after {
|
|
657
|
+
top: 0!important;
|
|
658
|
+
}
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
table:has([type="checkbox"]:checked) tr:has([type="checkbox"]){
|
|
662
|
+
|
|
663
|
+
cursor: pointer;
|
|
664
|
+
|
|
665
|
+
&:is(:hover, :focus) {
|
|
666
|
+
|
|
667
|
+
background: var(--hover-background);
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
td {
|
|
671
|
+
background: transparent;
|
|
672
|
+
}
|
|
673
|
+
|
|
674
|
+
[type="checkbox"] {
|
|
675
|
+
width: 100%;
|
|
676
|
+
height: 100%;
|
|
677
|
+
max-height: var(--row-height);
|
|
678
|
+
max-width: 100%;
|
|
679
|
+
cursor: pointer;
|
|
680
|
+
pointer-events: all;
|
|
681
|
+
top: auto;
|
|
682
|
+
margin: 0;
|
|
683
|
+
margin-top: -0.75rem;
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
@container (width < 23.4375em) {
|
|
690
|
+
|
|
691
|
+
iam-table:has([slot="before"]) {
|
|
692
|
+
|
|
693
|
+
iam-actionbar {
|
|
694
|
+
background-color: #e6eaec;
|
|
695
|
+
}
|
|
696
|
+
.actionbar__sticky + * {
|
|
697
|
+
margin-top: 0!important;
|
|
698
|
+
}
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
.table__wrapper.has-actionbar {
|
|
702
|
+
margin-top: calc(-100vh - -6.75rem)!important;
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
// #endregion
|
package/assets/sass/core.scss
CHANGED
package/assets/sass/error.scss
CHANGED
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
// Dark mode; functional colours get updated
|
|
42
|
-
@
|
|
42
|
+
@include dark-mode() {
|
|
43
43
|
:root {
|
|
44
44
|
|
|
45
45
|
@each $color, $value in $dark-mode-colors {
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
@
|
|
52
|
+
@include light-mode() {
|
|
53
53
|
|
|
54
54
|
// Reset the colours of lighter backgrounds to make sure they aren't over written by dark mode. Some other tweaks to colours are applied
|
|
55
55
|
[class*="bg-"]:not(.bg-primary):not(.bg-dark):not(.bg-danger):not(.bg-white):not(.bg-canvas):not(.bg-canvas-2):not(.invert-colours) {
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
@
|
|
75
|
+
@include dark-mode() {
|
|
76
76
|
|
|
77
77
|
// Reset the colours of lighter backgrounds to make sure they aren't over written by dark mode. Some other tweaks to colours are applied
|
|
78
78
|
[class*="bg-"]:not(.bg-canvas):not(.bg-canvas-2) {
|
package/assets/sass/main.scss
CHANGED
|
@@ -132,6 +132,43 @@ class iamActionbar extends HTMLElement {
|
|
|
132
132
|
});
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
|
+
|
|
136
|
+
// Wtach div for the select inputs
|
|
137
|
+
if(this.hasAttribute('data-select-watch')){
|
|
138
|
+
|
|
139
|
+
const element = document.getElementById(this.getAttribute('data-select-watch'));
|
|
140
|
+
element.setAttribute('data-select-container','true');
|
|
141
|
+
Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input,index) => {
|
|
142
|
+
input.parentElement.setAttribute('slot','checkbox');
|
|
143
|
+
});
|
|
144
|
+
element.addEventListener('change',(event) => {
|
|
145
|
+
|
|
146
|
+
if (event && event.target instanceof HTMLElement && event.target.closest('[type="checkbox"]')){
|
|
147
|
+
|
|
148
|
+
let count = element.querySelectorAll('input[type="checkbox"]').length;
|
|
149
|
+
let countChecked = element.querySelectorAll('input[type="checkbox"]:checked').length;
|
|
150
|
+
that.setAttribute('data-selected', count == countChecked ? "all" : countChecked);
|
|
151
|
+
|
|
152
|
+
let input = event.target.closest('[type="checkbox"]');
|
|
153
|
+
|
|
154
|
+
if(countChecked){
|
|
155
|
+
Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input,index) => {
|
|
156
|
+
|
|
157
|
+
if(input.closest('iam-card'))
|
|
158
|
+
input.closest('iam-card').setAttribute('data-selected','true');
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input,index) => {
|
|
163
|
+
|
|
164
|
+
if(input.closest('iam-card'))
|
|
165
|
+
input.closest('iam-card').removeAttribute('data-selected');
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
};
|
|
170
|
+
});
|
|
171
|
+
}
|
|
135
172
|
// #endregion
|
|
136
173
|
|
|
137
174
|
// #region switchviews
|
|
@@ -385,8 +422,36 @@ class iamActionbar extends HTMLElement {
|
|
|
385
422
|
|
|
386
423
|
if(selectAll)
|
|
387
424
|
setSelectAllInput(selectAll, newVal);
|
|
388
|
-
|
|
389
|
-
|
|
425
|
+
|
|
426
|
+
const event = new CustomEvent("selected", { detail: { selected: newVal } });
|
|
427
|
+
this.dispatchEvent(event);
|
|
428
|
+
|
|
429
|
+
if(newVal == "all" && this.hasAttribute('data-select-watch')){
|
|
430
|
+
|
|
431
|
+
const element = document.getElementById(this.getAttribute('data-select-watch'));
|
|
432
|
+
|
|
433
|
+
Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input,index) => {
|
|
434
|
+
|
|
435
|
+
input.checked = true;
|
|
436
|
+
|
|
437
|
+
if(input.closest('iam-card'))
|
|
438
|
+
input.closest('iam-card').setAttribute('data-selected','true');
|
|
439
|
+
});
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
if(newVal == "0" && this.hasAttribute('data-select-watch')){
|
|
443
|
+
|
|
444
|
+
const element = document.getElementById(this.getAttribute('data-select-watch'));
|
|
445
|
+
|
|
446
|
+
Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input,index) => {
|
|
447
|
+
|
|
448
|
+
input.checked = false;
|
|
449
|
+
|
|
450
|
+
if(input.closest('iam-card'))
|
|
451
|
+
input.closest('iam-card').removeAttribute('data-selected','true');
|
|
452
|
+
});
|
|
453
|
+
}
|
|
454
|
+
|
|
390
455
|
break;
|
|
391
456
|
}
|
|
392
457
|
}
|