@iamproperty/components 7.5.1--beta9 → 7.5.1--beta11
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.component.css +1 -1
- package/assets/css/components/actionbar.component.css.map +1 -1
- package/assets/css/components/actionbar.global.css.map +1 -1
- package/assets/css/components/address-lookup.component.css +1 -1
- package/assets/css/components/address-lookup.component.css.map +1 -1
- package/assets/css/components/applied-filters.css.map +1 -1
- package/assets/css/components/barchart.component.css +1 -1
- package/assets/css/components/barchart.component.css.map +1 -1
- package/assets/css/components/calendar.component.css +1 -1
- package/assets/css/components/calendar.component.css.map +1 -1
- package/assets/css/components/calendar.config.css.map +1 -1
- package/assets/css/components/card.component.css +1 -1
- package/assets/css/components/card.component.css.map +1 -1
- package/assets/css/components/carousel.component.css +1 -1
- package/assets/css/components/carousel.component.css.map +1 -1
- package/assets/css/components/carousel.config.css.map +1 -1
- package/assets/css/components/charts.config.css.map +1 -1
- package/assets/css/components/collapsible-side.css +1 -1
- package/assets/css/components/collapsible-side.css.map +1 -1
- package/assets/css/components/content.component.css +1 -1
- package/assets/css/components/content.component.css.map +1 -1
- package/assets/css/components/doughnutchart.component.css +1 -1
- package/assets/css/components/doughnutchart.component.css.map +1 -1
- package/assets/css/components/fileupload.css +1 -1
- package/assets/css/components/fileupload.css.map +1 -1
- package/assets/css/components/header.css.map +1 -1
- package/assets/css/components/inline-edit.css.map +1 -1
- package/assets/css/components/inline-edit.preload.css.map +1 -1
- package/assets/css/components/marketing.component.css.map +1 -1
- package/assets/css/components/menu.component.css +1 -1
- package/assets/css/components/menu.component.css.map +1 -1
- package/assets/css/components/menu.global.css.map +1 -1
- package/assets/css/components/modal.component.css +1 -1
- package/assets/css/components/modal.component.css.map +1 -1
- package/assets/css/components/multi-step-modal.component.css +1 -1
- package/assets/css/components/multi-step-modal.component.css.map +1 -1
- package/assets/css/components/multi-step-modal.global.css.map +1 -1
- package/assets/css/components/multi-step.component.css.map +1 -1
- package/assets/css/components/multiselect.css +1 -1
- package/assets/css/components/multiselect.css.map +1 -1
- package/assets/css/components/multiselect.preload.css.map +1 -1
- package/assets/css/components/nav.component.css +1 -1
- package/assets/css/components/nav.component.css.map +1 -1
- package/assets/css/components/nav.docs.css.map +1 -1
- package/assets/css/components/nav.global.css.map +1 -1
- package/assets/css/components/nav.preload.css.map +1 -1
- package/assets/css/components/notification.css.map +1 -1
- package/assets/css/components/pagination.css +1 -1
- package/assets/css/components/pagination.css.map +1 -1
- package/assets/css/components/popover.component.css +1 -0
- package/assets/css/components/popover.component.css.map +1 -0
- package/assets/css/components/property-searchbar.css.map +1 -1
- package/assets/css/components/rank.component.css.map +1 -1
- package/assets/css/components/rankings.component.css.map +1 -1
- package/assets/css/components/rankings.global.css.map +1 -1
- package/assets/css/components/slider.css +1 -1
- package/assets/css/components/slider.css.map +1 -1
- package/assets/css/components/snapshot.css.map +1 -1
- package/assets/css/components/split-button.component.css +1 -1
- package/assets/css/components/split-button.component.css.map +1 -1
- package/assets/css/components/stepper.css.map +1 -1
- package/assets/css/components/table-basic.component.css.map +1 -1
- package/assets/css/components/table-basic.global.css +1 -1
- package/assets/css/components/table-basic.global.css.map +1 -1
- package/assets/css/components/table.component.css.map +1 -1
- package/assets/css/components/table.global.css +1 -1
- package/assets/css/components/table.global.css.map +1 -1
- package/assets/css/components/tabs.component.css +1 -1
- package/assets/css/components/tabs.component.css.map +1 -1
- package/assets/css/components/tabs.config.css.map +1 -1
- package/assets/css/components/testimonial.css.map +1 -1
- package/assets/css/components/timeline.css.map +1 -1
- package/assets/css/components/tooltip.component.css +1 -0
- package/assets/css/components/tooltip.component.css.map +1 -0
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/mobile-core.min.css +1 -1
- package/assets/css/mobile-core.min.css.map +1 -1
- package/assets/css/mobile.min.css +1 -1
- package/assets/css/mobile.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.min.js +5 -5
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.min.js +4 -4
- package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.min.js +3 -3
- package/assets/js/components/advanced-select/advanced-select.component.min.js.map +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +4 -4
- package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
- package/assets/js/components/barchart/barchart.component.min.js +2 -2
- package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
- package/assets/js/components/calendar/calendar.component.min.js +4 -4
- package/assets/js/components/card/card.component.min.js +6 -6
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/carousel/carousel.component.min.js +4 -4
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +2 -2
- package/assets/js/components/content/content.component.min.js +2 -2
- package/assets/js/components/darkmode/darkmode.component.js +5 -1
- package/assets/js/components/darkmode/darkmode.component.min.js +2 -2
- package/assets/js/components/darkmode/darkmode.component.min.js.map +1 -1
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js +7 -7
- package/assets/js/components/fileupload/fileupload.component.min.js +3 -3
- package/assets/js/components/filter-card/filter-card.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/inline-edit/inline-edit.component.min.js +1 -1
- package/assets/js/components/input/input.component.js +82 -1
- package/assets/js/components/input/input.component.min.js +4 -4
- package/assets/js/components/input/input.component.min.js.map +1 -1
- package/assets/js/components/input-range/input-range.component.min.js +1 -1
- package/assets/js/components/marketing/marketing.component.min.js +1 -1
- package/assets/js/components/menu/menu.component.js +1 -0
- package/assets/js/components/menu/menu.component.min.js +4 -4
- package/assets/js/components/menu/menu.component.min.js.map +1 -1
- package/assets/js/components/milestone/milestone.component.min.js +1 -1
- package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
- package/assets/js/components/modal/modal.component.min.js +4 -4
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +4 -4
- package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
- package/assets/js/components/nav/nav.component.min.js +2 -2
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +2 -2
- package/assets/js/components/password/password.component.min.js +1 -1
- package/assets/js/components/popover/popover.component.js +36 -0
- package/assets/js/components/popover/popover.component.min.js +13 -0
- package/assets/js/components/popover/popover.component.min.js.map +1 -0
- package/assets/js/components/rank/rank.component.min.js +1 -1
- package/assets/js/components/rankings/rankings.component.min.js +1 -1
- package/assets/js/components/record-card/record-card.component.min.js +1 -1
- package/assets/js/components/search/search.component.min.js +5 -5
- package/assets/js/components/search/search.component.min.js.map +1 -1
- package/assets/js/components/slider/slider.component.min.js +2 -2
- package/assets/js/components/split-button/split-button.component.min.js +4 -4
- package/assets/js/components/split-button/split-button.component.min.js.map +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.js +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +7 -7
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
- package/assets/js/components/table/table.component.min.js +6 -6
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/table-ajax/table-ajax.component.min.js +6 -6
- package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
- package/assets/js/components/table-basic/table-basic.component.js +1 -1
- package/assets/js/components/table-basic/table-basic.component.min.js +4 -4
- package/assets/js/components/table-basic/table-basic.component.min.js.map +1 -1
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js +6 -6
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
- package/assets/js/components/table-submit/table-submit.component.min.js +5 -5
- package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +4 -4
- package/assets/js/components/tooltip/tooltip.component.js +68 -0
- package/assets/js/components/tooltip/tooltip.component.min.js +14 -0
- package/assets/js/components/tooltip/tooltip.component.min.js.map +1 -0
- package/assets/js/components/video-card/video-card.component.min.js +1 -1
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/modules/advanced-select.js +6 -0
- package/assets/js/modules/applied-filters.js +8 -2
- package/assets/js/modules/table.js +49 -164
- package/assets/js/scripts.bundle.js +1 -1
- package/assets/js/scripts.bundle.min.js +1 -1
- package/assets/sass/_elements.scss +5 -0
- package/assets/sass/_functions/mixins.scss +53 -0
- package/assets/sass/components/actionbar.component.scss +8 -1
- package/assets/sass/components/address-lookup.component.scss +1 -0
- package/assets/sass/components/menu.component.scss +7 -5
- package/assets/sass/components/popover.component.scss +28 -0
- package/assets/sass/components/table-basic.global.scss +5 -7
- package/assets/sass/components/tooltip.component.scss +120 -0
- package/assets/sass/elements/buttons--special.scss +45 -0
- package/assets/sass/elements/buttons.scss +6 -0
- package/assets/sass/elements/dialog.scss +8 -7
- package/assets/sass/elements/feature.scss +53 -0
- package/assets/sass/elements/forms.scss +10 -187
- package/assets/sass/elements/input.scss +177 -0
- package/assets/sass/elements/links.scss +7 -1
- package/assets/sass/elements/popover.scss +3 -2
- package/assets/ts/components/darkmode/darkmode.component.ts +6 -2
- package/assets/ts/components/input/input.component.ts +109 -1
- package/assets/ts/components/menu/menu.component.ts +1 -0
- package/assets/ts/components/popover/popover.component.ts +50 -0
- package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +1 -1
- package/assets/ts/components/table-basic/table-basic.component.ts +1 -1
- package/assets/ts/components/tooltip/tooltip.component.ts +98 -0
- package/assets/ts/modules/advanced-select.ts +8 -0
- package/assets/ts/modules/applied-filters.ts +12 -1
- package/assets/ts/modules/table.ts +15 -161
- package/dist/components.es.js +493 -563
- package/dist/components.umd.js +224 -201
- package/package.json +5 -5
- package/src/components/Filterlist/Filterlist.vue +0 -12
- package/src/components/Popover/Popover.vue +22 -0
- package/src/components/Tooltip/Tooltip.vue +22 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
@use '../_func.scss' as *;
|
|
2
|
+
|
|
3
|
+
*,
|
|
4
|
+
*::before,
|
|
5
|
+
*::after {
|
|
6
|
+
box-sizing: border-box;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
@layer components {
|
|
10
|
+
|
|
11
|
+
:host {
|
|
12
|
+
display: inline;
|
|
13
|
+
position: relative;
|
|
14
|
+
text-decoration: underline;
|
|
15
|
+
text-decoration-style: dashed;
|
|
16
|
+
text-underline-offset: 0.2em;
|
|
17
|
+
overflow-anchor: none;
|
|
18
|
+
cursor: pointer;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.tooltip__anchor {
|
|
22
|
+
|
|
23
|
+
anchor-name: --anchor;
|
|
24
|
+
position: absolute;
|
|
25
|
+
display: block;
|
|
26
|
+
inset: 0;
|
|
27
|
+
height: 100%;
|
|
28
|
+
width: 100%;
|
|
29
|
+
min-width: 1rem;
|
|
30
|
+
left: auto;
|
|
31
|
+
right: 0;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
:host(:empty) .tooltip__anchor{
|
|
35
|
+
|
|
36
|
+
height: 1rem;
|
|
37
|
+
width: 1rem;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
:host(:empty) .tooltip__anchor:after {
|
|
41
|
+
font-family: "Font Awesome 6 Pro";
|
|
42
|
+
font-weight: 900;
|
|
43
|
+
content: "\f059";
|
|
44
|
+
display: block;
|
|
45
|
+
margin: 0;
|
|
46
|
+
line-height: 1;
|
|
47
|
+
color: var(--colour-primary);
|
|
48
|
+
position: absolute;
|
|
49
|
+
top: 50%;
|
|
50
|
+
left: 50%;
|
|
51
|
+
translate: -50% -50%;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.tooltip__content {
|
|
55
|
+
position: fixed;
|
|
56
|
+
position-anchor: --anchor;
|
|
57
|
+
position-area: center end;
|
|
58
|
+
position-try-fallbacks: bottom span-all, top span-all, start;
|
|
59
|
+
|
|
60
|
+
container-type: anchored;
|
|
61
|
+
max-width: #{rem(270)};
|
|
62
|
+
background: var(--colour-primary);
|
|
63
|
+
color: var(--colour-white);
|
|
64
|
+
padding: rem(24);
|
|
65
|
+
border: none;
|
|
66
|
+
border-radius: 0.5rem;
|
|
67
|
+
box-shadow: 0px 2px 9px rgba(0, 0, 0, 0.11);
|
|
68
|
+
margin: 0.75rem;
|
|
69
|
+
overflow: visible;
|
|
70
|
+
|
|
71
|
+
> strong:first-child {
|
|
72
|
+
display: block;
|
|
73
|
+
padding-bottom: 1rem;
|
|
74
|
+
color: inherit;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
@include media-breakpoint-up(sm, $mobileOnly) {
|
|
78
|
+
max-width: #{rem(335)};
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
@include media-breakpoint-up(md, $mobileOnly) {
|
|
82
|
+
max-width: #{rem(360)};
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
&::after {
|
|
86
|
+
content: '';
|
|
87
|
+
position: absolute;
|
|
88
|
+
bottom: 50%;
|
|
89
|
+
left: -0.45rem;
|
|
90
|
+
transform: translate(-50%, 0);
|
|
91
|
+
border-width: 0.5rem;
|
|
92
|
+
border-style: solid;
|
|
93
|
+
border-color: transparent var(--colour-primary) transparent transparent;
|
|
94
|
+
margin-bottom: -0.5rem;
|
|
95
|
+
|
|
96
|
+
@container anchored(fallback: top span-all) {
|
|
97
|
+
|
|
98
|
+
left: 50%;
|
|
99
|
+
bottom: auto;
|
|
100
|
+
top: 100%;
|
|
101
|
+
border-color: var(--colour-primary) transparent transparent transparent;
|
|
102
|
+
margin-bottom: -1px;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
@container anchored(fallback: bottom span-all) {
|
|
106
|
+
|
|
107
|
+
top: auto;
|
|
108
|
+
bottom: 100%;
|
|
109
|
+
left: 50%;
|
|
110
|
+
border-color: transparent transparent var(--colour-primary) transparent;
|
|
111
|
+
margin-bottom: -1px;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
@container anchored(fallback: start) {
|
|
115
|
+
|
|
116
|
+
display: none;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
@use '../_func' as *;
|
|
2
|
+
|
|
3
|
+
$layers: 'true' !default;
|
|
4
|
+
$mobileOnly: 'false' !default;
|
|
5
|
+
$darkMode: 'true' !default;
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
// #region btn compact
|
|
9
|
+
.btn[popovertarget] {
|
|
10
|
+
|
|
11
|
+
position: relative;
|
|
12
|
+
anchor-name: --button2;
|
|
13
|
+
|
|
14
|
+
> .fa-chevron-down {
|
|
15
|
+
display: none;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
&:after {
|
|
19
|
+
content: '';
|
|
20
|
+
|
|
21
|
+
display: inline-block;
|
|
22
|
+
margin-left: 1em;
|
|
23
|
+
|
|
24
|
+
height: 0.8em;
|
|
25
|
+
width: 0.8em;
|
|
26
|
+
z-index: var(--index-focus);
|
|
27
|
+
background: currentColor;
|
|
28
|
+
mask-image: var(--icon-arrow);
|
|
29
|
+
mask-size: 100%;
|
|
30
|
+
mask-repeat: no-repeat;
|
|
31
|
+
mask-position: 50% 50%;
|
|
32
|
+
-webkit-mask-image: var(--icon-arrow);
|
|
33
|
+
-webkit-mask-size: 100%;
|
|
34
|
+
-webkit-mask-repeat: no-repeat;
|
|
35
|
+
-webkit-mask-position: 50% 50%;
|
|
36
|
+
|
|
37
|
+
transform: rotate(90deg);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
&[aria-pressed]:after {
|
|
41
|
+
transform: rotate(270deg);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// #endregion
|
|
@@ -12,7 +12,8 @@ $darkMode: 'true' !default;
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
// #region Default styling of both modals
|
|
15
|
-
dialog
|
|
15
|
+
dialog,
|
|
16
|
+
[popover] {
|
|
16
17
|
--dialog-padding: #{rem(24)};
|
|
17
18
|
|
|
18
19
|
--mh-padding-inline: var(--dialog-padding);
|
|
@@ -42,13 +43,15 @@ $darkMode: 'true' !default;
|
|
|
42
43
|
overscroll-behavior: contain;
|
|
43
44
|
}
|
|
44
45
|
|
|
45
|
-
dialog[open]
|
|
46
|
+
dialog[open],
|
|
47
|
+
[popover]:popover-open {
|
|
46
48
|
display: flex;
|
|
47
49
|
flex-direction: column;
|
|
48
50
|
}
|
|
49
51
|
|
|
50
52
|
// TODO: when the old modals are depreciated this selector can be simplified
|
|
51
|
-
*:not(.dialog__wrapper) > dialog[open]
|
|
53
|
+
*:not(.dialog__wrapper) > dialog[open],
|
|
54
|
+
*:not(.dialog__wrapper) > [popover]:popover-open {
|
|
52
55
|
|
|
53
56
|
overflow-y: auto;
|
|
54
57
|
width: 90vw;
|
|
@@ -59,8 +62,8 @@ $darkMode: 'true' !default;
|
|
|
59
62
|
overscroll-behavior: contain;
|
|
60
63
|
|
|
61
64
|
@include media-breakpoint-up(sm, $mobileOnly) {
|
|
62
|
-
|
|
63
|
-
padding: var(--dialog-padding);
|
|
65
|
+
//--dialog-padding: #{rem(32)};
|
|
66
|
+
//padding: var(--dialog-padding);
|
|
64
67
|
min-width: rem(335);
|
|
65
68
|
width: fit-content;
|
|
66
69
|
max-width: rem(686);
|
|
@@ -75,11 +78,9 @@ $darkMode: 'true' !default;
|
|
|
75
78
|
}
|
|
76
79
|
// #endregion
|
|
77
80
|
|
|
78
|
-
|
|
79
81
|
details.bg-light {
|
|
80
82
|
margin-inline: calc(var(--dialog-padding) * -1);
|
|
81
83
|
padding-inline: var(--dialog-padding);
|
|
82
84
|
}
|
|
83
85
|
|
|
84
86
|
}
|
|
85
|
-
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
@use '../_func' as *;
|
|
2
|
+
|
|
3
|
+
$layers: 'true' !default;
|
|
4
|
+
$mobileOnly: 'false' !default;
|
|
5
|
+
$darkMode: 'true' !default;
|
|
6
|
+
|
|
7
|
+
@include layer('elements', $layers) {
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
.feature {
|
|
11
|
+
|
|
12
|
+
background-color: var(--colour-canvas-2);
|
|
13
|
+
border: 1px solid var(--colour-border);
|
|
14
|
+
border-radius: 0.5rem;
|
|
15
|
+
padding: 1rem 1rem 1rem 1rem;
|
|
16
|
+
|
|
17
|
+
strong {
|
|
18
|
+
display: block;
|
|
19
|
+
padding-bottom: 0.2em;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.feature[class*="fa-"] {
|
|
24
|
+
|
|
25
|
+
padding-left: 4rem;
|
|
26
|
+
position: relative;
|
|
27
|
+
|
|
28
|
+
&:before {
|
|
29
|
+
position: absolute;
|
|
30
|
+
inset: 1rem;
|
|
31
|
+
content: var(--fa);
|
|
32
|
+
font-family: "Font Awesome 6 Pro";
|
|
33
|
+
display: block;
|
|
34
|
+
|
|
35
|
+
background-color: var(--colour-success);
|
|
36
|
+
border-radius: 50%;
|
|
37
|
+
padding: 0;
|
|
38
|
+
height: 2rem;
|
|
39
|
+
line-height: 2rem;
|
|
40
|
+
width: 2rem;
|
|
41
|
+
text-align: center;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.feature[class*="fa-rocket"] {
|
|
46
|
+
|
|
47
|
+
&:before {
|
|
48
|
+
|
|
49
|
+
padding-right: 0.1rem;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
}
|
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
|
|
4
4
|
@use '../_func' as *;
|
|
5
5
|
|
|
6
|
+
@use './input' as *;
|
|
7
|
+
|
|
8
|
+
|
|
6
9
|
$icon-error: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'><!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d='M256 32a224 224 0 1 1 0 448 224 224 0 1 1 0-448zm0 480A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c-8.8 0-16 7.2-16 16V272c0 8.8 7.2 16 16 16s16-7.2 16-16V144c0-8.8-7.2-16-16-16zm24 224a24 24 0 1 0 -48 0 24 24 0 1 0 48 0z' fill='#dc3545'/></svg>");
|
|
7
10
|
|
|
8
11
|
$icon-tick: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d='M441 103c9.4 9.4 9.4 24.6 0 33.9L177 401c-9.4 9.4-24.6 9.4-33.9 0L7 265c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l119 119L407 103c9.4-9.4 24.6-9.4 33.9 0z' fill='#0f9d58' /></svg>");
|
|
@@ -20,8 +23,6 @@ $optionalText: 'true' !default;
|
|
|
20
23
|
}
|
|
21
24
|
|
|
22
25
|
// 1. Remove the margin in Firefox and Safari
|
|
23
|
-
|
|
24
|
-
input,
|
|
25
26
|
select,
|
|
26
27
|
optgroup,
|
|
27
28
|
textarea {
|
|
@@ -50,26 +51,7 @@ $optionalText: 'true' !default;
|
|
|
50
51
|
}
|
|
51
52
|
}
|
|
52
53
|
|
|
53
|
-
|
|
54
|
-
// See https://stackoverflow.com/a/54997118
|
|
55
|
-
|
|
56
|
-
[list]:not([type='date']):not([type='datetime-local']):not([type='month']):not([type='week']):not(
|
|
57
|
-
[type='time']
|
|
58
|
-
)::-webkit-calendar-picker-indicator {
|
|
59
|
-
display: none !important;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
|
|
63
|
-
// controls in Android 4.
|
|
64
|
-
// 2. Correct the inability to style clickable types in iOS and Safari.
|
|
65
|
-
// 3. Opinionated: add "hand" cursor to non-disabled button elements.
|
|
66
|
-
|
|
67
|
-
// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
|
|
68
|
-
|
|
69
|
-
::-moz-focus-inner {
|
|
70
|
-
padding: 0;
|
|
71
|
-
border-style: none;
|
|
72
|
-
}
|
|
54
|
+
|
|
73
55
|
|
|
74
56
|
// 1. Textareas should really only resize vertically so they don't break their (horizontal) containers.
|
|
75
57
|
|
|
@@ -91,97 +73,6 @@ $optionalText: 'true' !default;
|
|
|
91
73
|
border: 0; // 2
|
|
92
74
|
}
|
|
93
75
|
|
|
94
|
-
// 1. By using `float: left`, the legend will behave like a block element.
|
|
95
|
-
// This way the border of a fieldset wraps around the legend if present.
|
|
96
|
-
// 2. Fix wrapping bug.
|
|
97
|
-
// See https://github.com/twbs/bootstrap/issues/29712
|
|
98
|
-
|
|
99
|
-
legend {
|
|
100
|
-
float: left; // 1
|
|
101
|
-
width: 100%;
|
|
102
|
-
padding: 0;
|
|
103
|
-
margin-bottom: $legend-margin-bottom;
|
|
104
|
-
@include font-size($legend-font-size);
|
|
105
|
-
font-weight: $legend-font-weight;
|
|
106
|
-
line-height: inherit;
|
|
107
|
-
|
|
108
|
-
+ * {
|
|
109
|
-
clear: left; // 2
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
// Fix height of inputs with a type of datetime-local, date, month, week, or time
|
|
114
|
-
// See https://github.com/twbs/bootstrap/issues/18842
|
|
115
|
-
|
|
116
|
-
::-webkit-datetime-edit-fields-wrapper,
|
|
117
|
-
::-webkit-datetime-edit-text,
|
|
118
|
-
::-webkit-datetime-edit-minute,
|
|
119
|
-
::-webkit-datetime-edit-hour-field,
|
|
120
|
-
::-webkit-datetime-edit-day-field,
|
|
121
|
-
::-webkit-datetime-edit-month-field,
|
|
122
|
-
::-webkit-datetime-edit-year-field {
|
|
123
|
-
padding: 0;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
::-webkit-inner-spin-button {
|
|
127
|
-
height: auto;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
// 1. Correct the outline style in Safari.
|
|
131
|
-
// 2. This overrides the extra rounded corners on search inputs in iOS so that our
|
|
132
|
-
// `.form-control` class can properly style them. Note that this cannot simply
|
|
133
|
-
// be added to `.form-control` as it's not specific enough. For details, see
|
|
134
|
-
// https://github.com/twbs/bootstrap/issues/11586.
|
|
135
|
-
|
|
136
|
-
[type='search'] {
|
|
137
|
-
outline-offset: -2px; // 1
|
|
138
|
-
-webkit-appearance: textfield; // 2
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
// 1. A few input types should stay LTR
|
|
142
|
-
// See https://rtlstyling.com/posts/rtl-styling#form-inputs
|
|
143
|
-
// 2. RTL only output
|
|
144
|
-
// See https://rtlcss.com/learn/usage-guide/control-directives/#raw
|
|
145
|
-
|
|
146
|
-
/* rtl:raw:
|
|
147
|
-
[type="tel"],
|
|
148
|
-
[type="url"],
|
|
149
|
-
[type="email"],
|
|
150
|
-
[type="number"] {
|
|
151
|
-
direction: ltr;
|
|
152
|
-
}
|
|
153
|
-
*/
|
|
154
|
-
|
|
155
|
-
// Remove the inner padding in Chrome and Safari on macOS.
|
|
156
|
-
|
|
157
|
-
::-webkit-search-decoration {
|
|
158
|
-
-webkit-appearance: none;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
// Remove padding around color pickers in webkit browsers
|
|
162
|
-
|
|
163
|
-
::-webkit-color-swatch-wrapper {
|
|
164
|
-
padding: 0;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
::-moz-color-swatch {
|
|
168
|
-
border-radius: 0;
|
|
169
|
-
border: none;
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
::-webkit-color-swatch {
|
|
173
|
-
border-radius: 0;
|
|
174
|
-
border: none;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
// 1. Inherit font family and line height for file input buttons
|
|
178
|
-
// 2. Correct the inability to style clickable types in iOS and Safari.
|
|
179
|
-
|
|
180
|
-
::file-selector-button {
|
|
181
|
-
font: inherit; // 1
|
|
182
|
-
-webkit-appearance: button; // 2
|
|
183
|
-
}
|
|
184
|
-
|
|
185
76
|
// Correct element displays
|
|
186
77
|
|
|
187
78
|
output {
|
|
@@ -232,73 +123,13 @@ $optionalText: 'true' !default;
|
|
|
232
123
|
|
|
233
124
|
// #region input field
|
|
234
125
|
:is(
|
|
235
|
-
input:not([type='checkbox']):not([type='radio']):not([type='file']):not([type='range']),
|
|
236
|
-
textarea,
|
|
237
|
-
output,
|
|
238
126
|
select:not(.select--minimal, .btn)
|
|
239
127
|
) {
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
display: block;
|
|
243
|
-
width: 100%;
|
|
244
|
-
padding: var(--input-padding-block, #{rem(12)}) var(--input-padding-inline, #{rem(16)});
|
|
245
|
-
font-size: var(--input-fs, #{rem(16)});
|
|
246
|
-
line-height: var(--input-lh, #{rem(20)});
|
|
247
|
-
color: var(--colour-heading);
|
|
248
|
-
background-color: var(--colour-canvas-2);
|
|
249
|
-
background-clip: padding-box;
|
|
250
|
-
border: 2px solid var(--colour-primary);
|
|
251
|
-
appearance: none; // Fix appearance for date inputs in Safari
|
|
252
|
-
border-radius: rem(8);
|
|
253
|
-
margin-bottom: rem(24);
|
|
254
|
-
min-height: calc(
|
|
255
|
-
var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) + var(--input-lh, #{rem(20)}) +
|
|
256
|
-
4px
|
|
257
|
-
);
|
|
258
|
-
max-height: calc(
|
|
259
|
-
var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) + var(--input-lh, #{rem(20)}) +
|
|
260
|
-
4px
|
|
261
|
-
);
|
|
262
|
-
|
|
263
|
-
&:is(textarea) {
|
|
264
|
-
max-height: 100%;
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
// Customize the `:focus` state to imitate native WebKit styles.
|
|
268
|
-
&:is(:focus, .focus):not(:disabled) {
|
|
269
|
-
border-color: var(--colour-info);
|
|
270
|
-
outline: 0;
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
&:is(:focus, .focus):not(:disabled):not(:invalid) {
|
|
274
|
-
box-shadow: 0 0 0 0.1rem rgba(30, 190, 230, 0.25);
|
|
275
|
-
}
|
|
276
|
-
// Add some height to date inputs on iOS
|
|
277
|
-
// https://github.com/twbs/bootstrap/issues/23307
|
|
278
|
-
// TODO: we can remove this workaround once https://bugs.webkit.org/show_bug.cgi?id=198959 is resolved
|
|
279
|
-
&::-webkit-date-and-time-value {
|
|
280
|
-
// Multiply line-height by 1em if it has no unit
|
|
281
|
-
height: if(math.unit($input-line-height) == '', $input-line-height * 1em, $input-line-height);
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
// Disabled inputs
|
|
285
|
-
&:disabled {
|
|
286
|
-
background-color: #ccd6d8;
|
|
287
|
-
opacity: 0.4;
|
|
288
|
-
cursor: not-allowed;
|
|
289
|
-
}
|
|
128
|
+
|
|
129
|
+
@include input();
|
|
290
130
|
}
|
|
291
131
|
|
|
292
|
-
input[type='color'] {
|
|
293
|
-
|
|
294
|
-
padding: 0!important;
|
|
295
|
-
max-width: 3rem!important;
|
|
296
|
-
}
|
|
297
|
-
|
|
298
132
|
[disabled] :is(
|
|
299
|
-
input:not([type='checkbox']):not([type='radio']):not([type='file']):not([type='range']),
|
|
300
|
-
textarea,
|
|
301
|
-
output,
|
|
302
133
|
select:not(.select--minimal, .btn)
|
|
303
134
|
) {
|
|
304
135
|
background-color: #ccd6d8;
|
|
@@ -312,18 +143,6 @@ $optionalText: 'true' !default;
|
|
|
312
143
|
cursor: not-allowed;
|
|
313
144
|
pointer-events: none;
|
|
314
145
|
}
|
|
315
|
-
|
|
316
|
-
:is(input:not([type='checkbox']):not([type='radio']):not([type='file']):not([type='range'])) {
|
|
317
|
-
max-width: $input-max-width;
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
textarea {
|
|
321
|
-
--textarea-height-scale: 3;
|
|
322
|
-
min-height: calc(
|
|
323
|
-
var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) +
|
|
324
|
-
(var(--input-lh, #{rem(20)}) * var(--textarea-height-scale)) + 4px
|
|
325
|
-
) !important;
|
|
326
|
-
}
|
|
327
146
|
// #endregion
|
|
328
147
|
|
|
329
148
|
// #region legend
|
|
@@ -1221,6 +1040,10 @@ $optionalText: 'true' !default;
|
|
|
1221
1040
|
}
|
|
1222
1041
|
}
|
|
1223
1042
|
|
|
1043
|
+
&:has(input:is([name$="Alt"]):not([data-value],[data-placeholder])) .empty {
|
|
1044
|
+
display: none;
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1224
1047
|
label:after,
|
|
1225
1048
|
.hint-text {
|
|
1226
1049
|
position: absolute;
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
@use 'sass:math';
|
|
3
|
+
|
|
4
|
+
@use '../_func' as *;
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@layer elements {
|
|
8
|
+
|
|
9
|
+
input {
|
|
10
|
+
margin: 0; // 1
|
|
11
|
+
font-family: inherit;
|
|
12
|
+
@include font-size(inherit);
|
|
13
|
+
line-height: inherit;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// Remove the dropdown arrow only from text type inputs built with datalists in Chrome.
|
|
17
|
+
// See https://stackoverflow.com/a/54997118
|
|
18
|
+
|
|
19
|
+
[list]:not([type='date']):not([type='datetime-local']):not([type='month']):not([type='week']):not(
|
|
20
|
+
[type='time']
|
|
21
|
+
)::-webkit-calendar-picker-indicator {
|
|
22
|
+
display: none !important;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
|
|
26
|
+
// controls in Android 4.
|
|
27
|
+
// 2. Correct the inability to style clickable types in iOS and Safari.
|
|
28
|
+
// 3. Opinionated: add "hand" cursor to non-disabled button elements.
|
|
29
|
+
|
|
30
|
+
// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
|
|
31
|
+
|
|
32
|
+
::-moz-focus-inner {
|
|
33
|
+
padding: 0;
|
|
34
|
+
border-style: none;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// 1. By using `float: left`, the legend will behave like a block element.
|
|
38
|
+
// This way the border of a fieldset wraps around the legend if present.
|
|
39
|
+
// 2. Fix wrapping bug.
|
|
40
|
+
// See https://github.com/twbs/bootstrap/issues/29712
|
|
41
|
+
|
|
42
|
+
legend {
|
|
43
|
+
float: left; // 1
|
|
44
|
+
width: 100%;
|
|
45
|
+
padding: 0;
|
|
46
|
+
margin-bottom: $legend-margin-bottom;
|
|
47
|
+
@include font-size($legend-font-size);
|
|
48
|
+
font-weight: $legend-font-weight;
|
|
49
|
+
line-height: inherit;
|
|
50
|
+
|
|
51
|
+
+ * {
|
|
52
|
+
clear: left; // 2
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Fix height of inputs with a type of datetime-local, date, month, week, or time
|
|
57
|
+
// See https://github.com/twbs/bootstrap/issues/18842
|
|
58
|
+
|
|
59
|
+
::-webkit-datetime-edit-fields-wrapper,
|
|
60
|
+
::-webkit-datetime-edit-text,
|
|
61
|
+
::-webkit-datetime-edit-minute,
|
|
62
|
+
::-webkit-datetime-edit-hour-field,
|
|
63
|
+
::-webkit-datetime-edit-day-field,
|
|
64
|
+
::-webkit-datetime-edit-month-field,
|
|
65
|
+
::-webkit-datetime-edit-year-field {
|
|
66
|
+
padding: 0;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
::-webkit-inner-spin-button {
|
|
70
|
+
height: auto;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
// 1. Correct the outline style in Safari.
|
|
74
|
+
// 2. This overrides the extra rounded corners on search inputs in iOS so that our
|
|
75
|
+
// `.form-control` class can properly style them. Note that this cannot simply
|
|
76
|
+
// be added to `.form-control` as it's not specific enough. For details, see
|
|
77
|
+
// https://github.com/twbs/bootstrap/issues/11586.
|
|
78
|
+
|
|
79
|
+
[type='search'] {
|
|
80
|
+
outline-offset: -2px; // 1
|
|
81
|
+
-webkit-appearance: textfield; // 2
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// 1. A few input types should stay LTR
|
|
85
|
+
// See https://rtlstyling.com/posts/rtl-styling#form-inputs
|
|
86
|
+
// 2. RTL only output
|
|
87
|
+
// See https://rtlcss.com/learn/usage-guide/control-directives/#raw
|
|
88
|
+
|
|
89
|
+
/* rtl:raw:
|
|
90
|
+
[type="tel"],
|
|
91
|
+
[type="url"],
|
|
92
|
+
[type="email"],
|
|
93
|
+
[type="number"] {
|
|
94
|
+
direction: ltr;
|
|
95
|
+
}
|
|
96
|
+
*/
|
|
97
|
+
|
|
98
|
+
// Remove the inner padding in Chrome and Safari on macOS.
|
|
99
|
+
|
|
100
|
+
::-webkit-search-decoration {
|
|
101
|
+
-webkit-appearance: none;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Remove padding around color pickers in webkit browsers
|
|
105
|
+
|
|
106
|
+
::-webkit-color-swatch-wrapper {
|
|
107
|
+
padding: 0;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
::-moz-color-swatch {
|
|
111
|
+
border-radius: 0;
|
|
112
|
+
border: none;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
::-webkit-color-swatch {
|
|
116
|
+
border-radius: 0;
|
|
117
|
+
border: none;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// 1. Inherit font family and line height for file input buttons
|
|
121
|
+
// 2. Correct the inability to style clickable types in iOS and Safari.
|
|
122
|
+
|
|
123
|
+
::file-selector-button {
|
|
124
|
+
font: inherit; // 1
|
|
125
|
+
-webkit-appearance: button; // 2
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
// #region input field
|
|
132
|
+
:is(
|
|
133
|
+
input:not([type='checkbox']):not([type='radio']):not([type='file']):not([type='range']),
|
|
134
|
+
textarea,
|
|
135
|
+
output
|
|
136
|
+
) {
|
|
137
|
+
@include input();
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
input[type='color'] {
|
|
141
|
+
|
|
142
|
+
padding: 0!important;
|
|
143
|
+
max-width: 3rem!important;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
[disabled] :is(
|
|
147
|
+
input:not([type='checkbox']):not([type='radio']):not([type='file']):not([type='range']),
|
|
148
|
+
textarea,
|
|
149
|
+
output,
|
|
150
|
+
select:not(.select--minimal, .btn)
|
|
151
|
+
) {
|
|
152
|
+
background-color: #ccd6d8;
|
|
153
|
+
opacity: 0.4;
|
|
154
|
+
cursor: not-allowed;
|
|
155
|
+
pointer-events: none;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
[disabled] label {
|
|
159
|
+
|
|
160
|
+
cursor: not-allowed;
|
|
161
|
+
pointer-events: none;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
:is(input:not([type='checkbox']):not([type='radio']):not([type='file']):not([type='range'])) {
|
|
165
|
+
max-width: $input-max-width;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
textarea {
|
|
169
|
+
--textarea-height-scale: 3;
|
|
170
|
+
min-height: calc(
|
|
171
|
+
var(--input-padding-block, #{rem(12)}) + var(--input-padding-block, #{rem(12)}) +
|
|
172
|
+
(var(--input-lh, #{rem(20)}) * var(--textarea-height-scale)) + 4px
|
|
173
|
+
) !important;
|
|
174
|
+
}
|
|
175
|
+
// #endregion
|
|
176
|
+
|
|
177
|
+
}
|