@excom/valence 0.1.0
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/.rush/temp/chunked-rush-logs/valence.apply-exports.chunks.jsonl +1 -0
- package/.rush/temp/chunked-rush-logs/valence.build_package-metas.chunks.jsonl +1 -0
- package/.rush/temp/operation/apply-exports/all.log +1 -0
- package/.rush/temp/operation/apply-exports/log-chunks.jsonl +1 -0
- package/.rush/temp/operation/apply-exports/state.json +3 -0
- package/.rush/temp/operation/build_package-metas/all.log +1 -0
- package/.rush/temp/operation/build_package-metas/log-chunks.jsonl +1 -0
- package/.rush/temp/operation/build_package-metas/state.json +3 -0
- package/.rush/temp/shrinkwrap-deps.json +3 -0
- package/basic-vars.css +395 -0
- package/basic.css +3 -0
- package/package.json +35 -0
- package/rush-logs/valence.apply-exports.cache.log +1 -0
- package/rush-logs/valence.apply-exports.log +1 -0
- package/rush-logs/valence.build_package-metas.cache.log +1 -0
- package/rush-logs/valence.build_package-metas.log +1 -0
- package/src/aliases.css +125 -0
- package/src/apply.css +54 -0
- package/src/components/accordion.css +134 -0
- package/src/components/card.css +54 -0
- package/src/components/dropdown.css +235 -0
- package/src/components/group.css +119 -0
- package/src/components/loading.css +41 -0
- package/src/components/modal.css +172 -0
- package/src/components/nav.css +198 -0
- package/src/components/popover.css +83 -0
- package/src/components/progress.css +88 -0
- package/src/components/tooltip.css +209 -0
- package/src/content/button.css +184 -0
- package/src/content/code.css +68 -0
- package/src/content/embedded.css +49 -0
- package/src/content/figure.css +17 -0
- package/src/content/link.css +79 -0
- package/src/content/misc.css +29 -0
- package/src/content/table.css +144 -0
- package/src/content/typography.css +218 -0
- package/src/forms/basics.css +415 -0
- package/src/forms/checkbox-radio-switch.css +163 -0
- package/src/forms/input-color.css +27 -0
- package/src/forms/input-date.css +66 -0
- package/src/forms/input-file.css +37 -0
- package/src/forms/input-range.css +109 -0
- package/src/forms/input-search.css +52 -0
- package/src/layout/abstract.css +9 -0
- package/src/layout/container.css +43 -0
- package/src/layout/document.css +45 -0
- package/src/layout/grid.css +24 -0
- package/src/layout/landmarks.css +54 -0
- package/src/layout/overflow-auto.css +33 -0
- package/src/layout/section.css +10 -0
- package/src/mixins.basic.css +308 -0
- package/src/mixins.default.css +49 -0
- package/src/util.default.css +55 -0
- package/src/utilities/accessibility.css +69 -0
- package/src/utilities/opt-outs.css +32 -0
- package/support/demos/accordion.html +18 -0
- package/support/demos/aliases.html +6 -0
- package/support/demos/button.html +14 -0
- package/support/demos/card.html +8 -0
- package/support/demos/checkboxes.html +22 -0
- package/support/demos/code.html +6 -0
- package/support/demos/container.html +15 -0
- package/support/demos/css-variables.html +14 -0
- package/support/demos/dropdown.html +17 -0
- package/support/demos/embedded.html +7 -0
- package/support/demos/forms.html +18 -0
- package/support/demos/grid.html +13 -0
- package/support/demos/group.html +14 -0
- package/support/demos/input.html +11 -0
- package/support/demos/landmarks.html +20 -0
- package/support/demos/link.html +7 -0
- package/support/demos/loading.html +5 -0
- package/support/demos/modal.html +18 -0
- package/support/demos/nav.html +39 -0
- package/support/demos/opt-outs.html +8 -0
- package/support/demos/overflow-auto.html +12 -0
- package/support/demos/popover.html +6 -0
- package/support/demos/progress.html +4 -0
- package/support/demos/range.html +6 -0
- package/support/demos/schemes.html +12 -0
- package/support/demos/select.html +13 -0
- package/support/demos/table.html +18 -0
- package/support/demos/textarea.html +7 -0
- package/support/demos/tooltip.html +7 -0
- package/support/demos/typography.html +18 -0
- package/support/docs/ACCORDION.md +26 -0
- package/support/docs/ALIASES.md +35 -0
- package/support/docs/BUTTON.md +28 -0
- package/support/docs/CARD.md +23 -0
- package/support/docs/CHECKBOXES.md +21 -0
- package/support/docs/CODE.md +18 -0
- package/support/docs/CONTAINER.md +24 -0
- package/support/docs/CSS_VARIABLES.md +44 -0
- package/support/docs/DROPDOWN.md +22 -0
- package/support/docs/EMBEDDED.md +18 -0
- package/support/docs/FORMS.md +44 -0
- package/support/docs/GRID.md +19 -0
- package/support/docs/GROUP.md +24 -0
- package/support/docs/INPUT.md +26 -0
- package/support/docs/LANDMARKS.md +25 -0
- package/support/docs/LINK.md +23 -0
- package/support/docs/LOADING.md +15 -0
- package/support/docs/MODAL.md +36 -0
- package/support/docs/NAV.md +25 -0
- package/support/docs/OPT_OUTS.md +31 -0
- package/support/docs/OVERFLOW_AUTO.md +15 -0
- package/support/docs/POPOVER.md +19 -0
- package/support/docs/PROGRESS.md +14 -0
- package/support/docs/RANGE.md +16 -0
- package/support/docs/README.md +70 -0
- package/support/docs/SCHEMES.md +20 -0
- package/support/docs/SELECT.md +18 -0
- package/support/docs/TABLE.md +29 -0
- package/support/docs/TEXTAREA.md +16 -0
- package/support/docs/THEMES.md +39 -0
- package/support/docs/TOOLTIP.md +18 -0
- package/support/docs/TYPOGRAPHY.md +29 -0
- package/support/docs-sections.json +45 -0
- package/support/flat-vars.css +197 -0
- package/support/flat.css +4 -0
- package/support/package-meta.json +1820 -0
- package/support/paper-vars.css +203 -0
- package/support/paper.css +4 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Modal (<dialog>)
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
@custom-selector :--dialog-close .close, :is(:--link, :--button)[rel="prev"];
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Close control — `.close` or `:--button` / `:--link` with `rel="prev"`
|
|
9
|
+
* Renders the theme close icon (empty content).
|
|
10
|
+
* @cssclass close
|
|
11
|
+
*/
|
|
12
|
+
@define-mixin modal-close-control {
|
|
13
|
+
--v-modal-close-icon-size: calc(1rem * var(--v-line-height));
|
|
14
|
+
display: block;
|
|
15
|
+
float: right;
|
|
16
|
+
width: var(--v-modal-close-icon-size);
|
|
17
|
+
height: var(--v-modal-close-icon-size);
|
|
18
|
+
margin: calc(var(--v-spacing) * -1) 0 var(--v-spacing) auto;
|
|
19
|
+
padding: 0;
|
|
20
|
+
border: none;
|
|
21
|
+
background-image: var(--v-icon-close);
|
|
22
|
+
background-position: center;
|
|
23
|
+
/* Scale icon to line-height, cap at 1.25rem */
|
|
24
|
+
background-size: auto min(var(--v-modal-close-icon-size), 1.25rem);
|
|
25
|
+
background-repeat: no-repeat;
|
|
26
|
+
background-color: transparent;
|
|
27
|
+
opacity: 0.5;
|
|
28
|
+
|
|
29
|
+
transition: opacity var(--v-transition);
|
|
30
|
+
|
|
31
|
+
&:is([aria-current]:not([aria-current="false"]), :hover, :active, :focus) {
|
|
32
|
+
opacity: 1;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Dimmer for `dialog::backdrop` and `:--dialog-backdrop-aliases`
|
|
38
|
+
* (`[role="presentation"]` / `.tag-backdrop`): dialog child or drawer sibling.
|
|
39
|
+
*/
|
|
40
|
+
@define-mixin modal-backdrop {
|
|
41
|
+
display: block;
|
|
42
|
+
backdrop-filter: var(--v-modal-overlay-backdrop-filter);
|
|
43
|
+
background-color: var(--v-modal-overlay-background-color);
|
|
44
|
+
pointer-events: auto;
|
|
45
|
+
top: 0;
|
|
46
|
+
right: 0;
|
|
47
|
+
bottom: 0;
|
|
48
|
+
left: 0;
|
|
49
|
+
z-index: -1;
|
|
50
|
+
position: fixed;
|
|
51
|
+
overscroll-behavior: contain;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
@define-mixin modal-inner {
|
|
55
|
+
width: 100%;
|
|
56
|
+
max-height: calc(100vh - var(--v-spacing) * 2);
|
|
57
|
+
/* mobile browsers: the visible viewport, not the one under the URL bar */
|
|
58
|
+
max-height: calc(100dvh - var(--v-spacing) * 2);
|
|
59
|
+
margin: var(--v-spacing);
|
|
60
|
+
overflow: auto;
|
|
61
|
+
|
|
62
|
+
@media (min-width: 576px) {
|
|
63
|
+
max-width: 510px;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
@media (min-width: 768px) {
|
|
67
|
+
max-width: 700px;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
@mixin abstract-wrapper {
|
|
71
|
+
> :--header {
|
|
72
|
+
> * {
|
|
73
|
+
margin-bottom: 0;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
> :--dialog-close {
|
|
77
|
+
@mixin modal-close-control;
|
|
78
|
+
margin: 0;
|
|
79
|
+
margin-left: var(--v-spacing);
|
|
80
|
+
padding: 0;
|
|
81
|
+
float: right;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
> :--footer {
|
|
86
|
+
text-align: right;
|
|
87
|
+
|
|
88
|
+
:--button {
|
|
89
|
+
margin-bottom: 0;
|
|
90
|
+
|
|
91
|
+
&:not(:first-of-type) {
|
|
92
|
+
margin-left: calc(var(--v-spacing) * 0.5);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
@mixin abstract-wrapper {
|
|
99
|
+
> :--dialog-close {
|
|
100
|
+
@mixin modal-close-control;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
@define-mixin module-modal {
|
|
106
|
+
:root,
|
|
107
|
+
:host {
|
|
108
|
+
--v-scrollbar-width: 0px;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
:where(:has(> :--dialog.absolute)) {
|
|
112
|
+
/* Lowest specificity */
|
|
113
|
+
position: relative;
|
|
114
|
+
height: 600px;
|
|
115
|
+
width: 600px;
|
|
116
|
+
background-color: red;
|
|
117
|
+
}
|
|
118
|
+
:--dialog.absolute {
|
|
119
|
+
position: absolute;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
:is(dialog)::backdrop,
|
|
123
|
+
:--dialog > :--dialog-backdrop-aliases {
|
|
124
|
+
@mixin modal-backdrop;
|
|
125
|
+
&:is(.absolute::backdrop),
|
|
126
|
+
&:is(.absolute > :--dialog-backdrop-aliases) {
|
|
127
|
+
position: absolute;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
:is(dialog:modal),
|
|
131
|
+
:--dialog:has(> :--dialog-backdrop-aliases) {
|
|
132
|
+
/* Dialog scroll stays in the dialog, not the page behind it */
|
|
133
|
+
overscroll-behavior: contain;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
:--dialog {
|
|
137
|
+
display: flex;
|
|
138
|
+
z-index: 999;
|
|
139
|
+
position: fixed;
|
|
140
|
+
top: 0;
|
|
141
|
+
right: 0;
|
|
142
|
+
bottom: 0;
|
|
143
|
+
left: 0;
|
|
144
|
+
align-items: center;
|
|
145
|
+
justify-content: center;
|
|
146
|
+
width: inherit;
|
|
147
|
+
min-width: 100%;
|
|
148
|
+
height: inherit;
|
|
149
|
+
min-height: 100%;
|
|
150
|
+
padding: 0;
|
|
151
|
+
border: 0;
|
|
152
|
+
color: var(--v-color);
|
|
153
|
+
background-color: transparent;
|
|
154
|
+
pointer-events: none;
|
|
155
|
+
> * {
|
|
156
|
+
pointer-events: auto;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
/* Content */
|
|
160
|
+
@mixin abstract-wrapper {
|
|
161
|
+
> :--article {
|
|
162
|
+
@mixin modal-inner;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
/* Closed state */
|
|
167
|
+
&:not(:--dialog--open) {
|
|
168
|
+
display: none;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
/* TODO: modal animations */
|
|
172
|
+
}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Nav. Reboot from sanitize.css v13.0.0 (CC0).
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
@define-mixin module-nav {
|
|
6
|
+
/* Keep VoiceOver list semantics in Safari (opinionated) */
|
|
7
|
+
:where(:--nav :--li)::before {
|
|
8
|
+
float: left;
|
|
9
|
+
content: "\200B";
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
:--nav {
|
|
13
|
+
justify-content: space-between;
|
|
14
|
+
overflow: visible;
|
|
15
|
+
&,
|
|
16
|
+
:--list {
|
|
17
|
+
display: flex;
|
|
18
|
+
}
|
|
19
|
+
:--list {
|
|
20
|
+
align-items: center;
|
|
21
|
+
margin-bottom: 0;
|
|
22
|
+
padding: 0;
|
|
23
|
+
list-style: none;
|
|
24
|
+
|
|
25
|
+
&:first-of-type {
|
|
26
|
+
margin-left: calc(var(--v-nav-element-spacing-horizontal) * -1);
|
|
27
|
+
}
|
|
28
|
+
&:last-of-type {
|
|
29
|
+
margin-right: calc(var(--v-nav-element-spacing-horizontal) * -1);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
:--li {
|
|
34
|
+
display: inline-block;
|
|
35
|
+
margin: 0;
|
|
36
|
+
padding: var(--v-nav-element-spacing-vertical)
|
|
37
|
+
var(--v-nav-element-spacing-horizontal);
|
|
38
|
+
|
|
39
|
+
:where(:--link) {
|
|
40
|
+
display: inline-block;
|
|
41
|
+
margin: calc(var(--v-nav-link-spacing-vertical) * -1)
|
|
42
|
+
calc(var(--v-nav-link-spacing-horizontal) * -1);
|
|
43
|
+
padding: var(--v-nav-link-spacing-vertical)
|
|
44
|
+
var(--v-nav-link-spacing-horizontal);
|
|
45
|
+
border-radius: var(--v-border-radius);
|
|
46
|
+
|
|
47
|
+
&:not(:hover) {
|
|
48
|
+
text-decoration: none;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* Minimal support for buttons and form elements */
|
|
53
|
+
:--button,
|
|
54
|
+
input:not(
|
|
55
|
+
[type="checkbox"],
|
|
56
|
+
[type="radio"],
|
|
57
|
+
[type="range"],
|
|
58
|
+
[type="file"]
|
|
59
|
+
),
|
|
60
|
+
select {
|
|
61
|
+
height: auto;
|
|
62
|
+
margin-right: inherit;
|
|
63
|
+
margin-bottom: 0;
|
|
64
|
+
margin-left: inherit;
|
|
65
|
+
padding: calc(
|
|
66
|
+
var(--v-nav-link-spacing-vertical) - (var(--v-border-width) * 2)
|
|
67
|
+
)
|
|
68
|
+
var(--v-nav-link-spacing-horizontal);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/* Breadcrumb */
|
|
73
|
+
&[aria-label="breadcrumb"] {
|
|
74
|
+
align-items: center;
|
|
75
|
+
justify-content: start;
|
|
76
|
+
|
|
77
|
+
& :--list :--li {
|
|
78
|
+
&:not(:first-child) {
|
|
79
|
+
margin-inline-start: var(--v-nav-link-spacing-horizontal);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
:--link {
|
|
83
|
+
margin: calc(var(--v-nav-link-spacing-vertical) * -1) 0;
|
|
84
|
+
margin-inline-start: calc(var(--v-nav-link-spacing-horizontal) * -1);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
&:not(:last-child) {
|
|
88
|
+
&::after {
|
|
89
|
+
display: inline-block;
|
|
90
|
+
position: absolute;
|
|
91
|
+
width: calc(var(--v-nav-link-spacing-horizontal) * 4);
|
|
92
|
+
margin: 0 calc(var(--v-nav-link-spacing-horizontal) * -1);
|
|
93
|
+
content: var(--v-nav-breadcrumb-divider);
|
|
94
|
+
color: var(--v-muted-color);
|
|
95
|
+
text-align: center;
|
|
96
|
+
text-decoration: none;
|
|
97
|
+
white-space: nowrap;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/* Minimal support for aria-current */
|
|
103
|
+
& :--link[aria-current]:not([aria-current="false"]) {
|
|
104
|
+
background-color: transparent;
|
|
105
|
+
color: inherit;
|
|
106
|
+
text-decoration: none;
|
|
107
|
+
pointer-events: none;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/* Vertical Nav */
|
|
113
|
+
:--aside {
|
|
114
|
+
display: block;
|
|
115
|
+
|
|
116
|
+
:--nav,
|
|
117
|
+
:--list,
|
|
118
|
+
:--li {
|
|
119
|
+
display: block;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
:--li {
|
|
123
|
+
padding: calc(var(--v-nav-element-spacing-vertical) * 0.5)
|
|
124
|
+
var(--v-nav-element-spacing-horizontal);
|
|
125
|
+
|
|
126
|
+
:--link {
|
|
127
|
+
display: block;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/* Minimal support for links as buttons */
|
|
131
|
+
:--button {
|
|
132
|
+
margin: inherit;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/* Tree. Should be placed on list elements. */
|
|
138
|
+
:--list:--tree {
|
|
139
|
+
border-left: var(--v-border-width) solid var(--v-muted-border-color);
|
|
140
|
+
margin: 0 !important;
|
|
141
|
+
padding: 0 !important;
|
|
142
|
+
:--li {
|
|
143
|
+
margin: 0 !important;
|
|
144
|
+
padding: calc(var(--v-nav-element-spacing-vertical) * 0.25) 0 !important;
|
|
145
|
+
:--list:--tree {
|
|
146
|
+
/* sub-tree margin */
|
|
147
|
+
margin-left: calc(
|
|
148
|
+
var(--v-nav-element-spacing-horizontal) * 1.5
|
|
149
|
+
) !important;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
:--link,
|
|
153
|
+
:--details :--summary {
|
|
154
|
+
margin: 0;
|
|
155
|
+
padding: 0;
|
|
156
|
+
margin-left: calc(var(--v-border-width) * -1);
|
|
157
|
+
padding-left: calc(var(--v-nav-element-spacing-horizontal) * 1.5);
|
|
158
|
+
}
|
|
159
|
+
:--link {
|
|
160
|
+
border-left: var(--v-border-width) solid transparent;
|
|
161
|
+
border-radius: 0;
|
|
162
|
+
font-weight: 400;
|
|
163
|
+
transition:
|
|
164
|
+
background-color var(--v-transition),
|
|
165
|
+
color var(--v-transition),
|
|
166
|
+
box-shadow var(--v-transition),
|
|
167
|
+
border-color var(--v-transition),
|
|
168
|
+
font-weight var(--v-transition),
|
|
169
|
+
-webkit-text-decoration var(--v-transition);
|
|
170
|
+
&:hover {
|
|
171
|
+
border-color: var(--v-secondary-underline);
|
|
172
|
+
}
|
|
173
|
+
&[aria-current] {
|
|
174
|
+
border-color: var(--v-primary);
|
|
175
|
+
color: var(--v-primary-hover);
|
|
176
|
+
font-weight: 600;
|
|
177
|
+
&:hover {
|
|
178
|
+
text-decoration: none;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/* Breadcrumb RTL */
|
|
185
|
+
[dir="rtl"] {
|
|
186
|
+
:--nav {
|
|
187
|
+
&[aria-label="breadcrumb"] {
|
|
188
|
+
& :--list :--li {
|
|
189
|
+
&:not(:last-child) {
|
|
190
|
+
::after {
|
|
191
|
+
content: "\\";
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Popover (`[popover]`).
|
|
3
|
+
*
|
|
4
|
+
* Override UA `position: fixed` centering with `position: absolute`,
|
|
5
|
+
* tethered via `position-anchor: auto` (implicit anchor from
|
|
6
|
+
* `popovertarget` / `showPopover({ source })`). `[data-placement]`
|
|
7
|
+
* picks the side (default: top).
|
|
8
|
+
*
|
|
9
|
+
* <button popovertarget="tip">...</button>
|
|
10
|
+
* <div id="tip" popover data-placement="bottom">Bubble content</div>
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
@define-mixin module-popover {
|
|
14
|
+
*:has(> :--popover) {
|
|
15
|
+
anchor-scope: --v-popover-anchor;
|
|
16
|
+
anchor-name: --v-popover-anchor;
|
|
17
|
+
}
|
|
18
|
+
:--popover {
|
|
19
|
+
/* Override UA: position: fixed; inset: 0; margin: auto; */
|
|
20
|
+
position: absolute;
|
|
21
|
+
inset: auto;
|
|
22
|
+
margin: 0;
|
|
23
|
+
position-anchor: --v-popover-anchor;
|
|
24
|
+
|
|
25
|
+
z-index: 1;
|
|
26
|
+
max-width: min(
|
|
27
|
+
var(--v-popover-max-width),
|
|
28
|
+
calc(100vw - var(--v-spacing) * 2)
|
|
29
|
+
);
|
|
30
|
+
padding: var(--v-spacing);
|
|
31
|
+
border: 1px solid var(--v-popover-border-color);
|
|
32
|
+
border-radius: var(--v-border-radius);
|
|
33
|
+
background: var(--v-popover-background-color);
|
|
34
|
+
color: var(--v-popover-color);
|
|
35
|
+
box-shadow: var(--v-popover-box-shadow);
|
|
36
|
+
font-size: var(--v-font-size);
|
|
37
|
+
font-weight: normal;
|
|
38
|
+
text-wrap: pretty;
|
|
39
|
+
overflow-wrap: break-word;
|
|
40
|
+
opacity: 0;
|
|
41
|
+
|
|
42
|
+
transition:
|
|
43
|
+
display var(--v-transition) allow-discrete,
|
|
44
|
+
overlay var(--v-transition) allow-discrete,
|
|
45
|
+
opacity var(--v-transition);
|
|
46
|
+
|
|
47
|
+
&:--popover--open {
|
|
48
|
+
opacity: 1;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@starting-style {
|
|
52
|
+
&:--popover--open {
|
|
53
|
+
opacity: 0;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
&::backdrop {
|
|
58
|
+
display: none;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/* Default + explicit top */
|
|
62
|
+
&:not([data-placement]),
|
|
63
|
+
&[data-placement="top"] {
|
|
64
|
+
position-area: top;
|
|
65
|
+
margin-bottom: calc(var(--v-spacing) * 0.5);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
&[data-placement="bottom"] {
|
|
69
|
+
position-area: bottom;
|
|
70
|
+
margin-top: calc(var(--v-spacing) * 0.5);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
&[data-placement="left"] {
|
|
74
|
+
position-area: left;
|
|
75
|
+
margin-right: calc(var(--v-spacing) * 0.5);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
&[data-placement="right"] {
|
|
79
|
+
position-area: right;
|
|
80
|
+
margin-left: calc(var(--v-spacing) * 0.5);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Progress
|
|
3
|
+
*
|
|
4
|
+
* Reboot from normalize.css v8.0.1 (MIT) and sanitize.css v13.0.0 (CC0).
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
@define-mixin module-progress {
|
|
8
|
+
/* 1. Display in Edge 18- / IE
|
|
9
|
+
2. Vertical-align in Chrome, Edge, Firefox */
|
|
10
|
+
:--progress {
|
|
11
|
+
display: inline-block; /* 1 */
|
|
12
|
+
vertical-align: baseline; /* 2 */
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
:--progress {
|
|
16
|
+
-webkit-appearance: none;
|
|
17
|
+
-moz-appearance: none;
|
|
18
|
+
|
|
19
|
+
display: inline-block;
|
|
20
|
+
appearance: none;
|
|
21
|
+
width: 100%;
|
|
22
|
+
height: 0.5rem;
|
|
23
|
+
margin-bottom: calc(var(--v-spacing) * 0.5);
|
|
24
|
+
overflow: hidden;
|
|
25
|
+
|
|
26
|
+
border: 0;
|
|
27
|
+
border-radius: var(--v-border-radius);
|
|
28
|
+
background-color: var(--v-progress-background-color);
|
|
29
|
+
|
|
30
|
+
/* IE10 uses `color` to set the bar background-color */
|
|
31
|
+
color: var(--v-progress-color);
|
|
32
|
+
|
|
33
|
+
&::-webkit-progress-bar {
|
|
34
|
+
border-radius: var(--v-border-radius);
|
|
35
|
+
background: none;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/* Indeterminate state */
|
|
39
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
40
|
+
&:--progress--indeterminate {
|
|
41
|
+
background: var(--v-progress-background-color)
|
|
42
|
+
linear-gradient(
|
|
43
|
+
to right,
|
|
44
|
+
var(--v-progress-color) 30%,
|
|
45
|
+
var(--v-progress-background-color) 30%
|
|
46
|
+
)
|
|
47
|
+
top left / 150% 150% no-repeat;
|
|
48
|
+
animation: progress-indeterminate 1s linear infinite;
|
|
49
|
+
|
|
50
|
+
&:--progress-bar {
|
|
51
|
+
background-color: transparent;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/* PSEUDO ELEMENTS NOT COMPATIBLE WITH CUSTOM SELECTORS. */
|
|
57
|
+
:is(progress):--progress--value::-webkit-progress-value,
|
|
58
|
+
:is(progress):--progress--value::-moz-progress-bar,
|
|
59
|
+
:is(:--progress-aliases):--progress--value::before {
|
|
60
|
+
background-color: var(--v-progress-color);
|
|
61
|
+
transition: inline-size var(--v-transition);
|
|
62
|
+
}
|
|
63
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
64
|
+
:is(progress):indeterminate::-webkit-progress-value,
|
|
65
|
+
:is(progress):indeterminate::-moz-progress-bar,
|
|
66
|
+
:is(:--progress-aliases):not(:--progress--value)::before {
|
|
67
|
+
background-color: transparent;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[dir="rtl"] {
|
|
72
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
73
|
+
:--progress--indeterminate {
|
|
74
|
+
animation-direction: reverse;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
@keyframes progress-indeterminate {
|
|
80
|
+
0% {
|
|
81
|
+
background-position: 200% 0;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
100% {
|
|
85
|
+
background-position: -200% 0;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|