@marigold/system 0.2.0 → 0.3.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/CHANGELOG.md +95 -0
- package/dist/Box.d.ts +14 -0
- package/dist/Global.d.ts +2 -0
- package/dist/SVG.d.ts +6 -0
- package/dist/index.d.ts +6 -4
- package/dist/normalize.d.ts +101 -67
- package/dist/system.cjs.development.js +299 -294
- package/dist/system.cjs.development.js.map +1 -1
- package/dist/system.cjs.production.min.js +1 -1
- package/dist/system.cjs.production.min.js.map +1 -1
- package/dist/system.esm.js +291 -289
- package/dist/system.esm.js.map +1 -1
- package/dist/theme.d.ts +136 -0
- package/dist/types.d.ts +1 -2
- package/dist/useTheme.d.ts +11 -5
- package/dist/variant.d.ts +29 -0
- package/package.json +4 -5
- package/src/Box.test.tsx +308 -0
- package/src/Box.tsx +199 -0
- package/src/Colors.stories.mdx +332 -456
- package/src/Global.test.tsx +57 -0
- package/src/Global.tsx +34 -0
- package/src/SVG.stories.mdx +55 -0
- package/src/SVG.test.tsx +82 -0
- package/src/SVG.tsx +24 -0
- package/src/index.ts +6 -4
- package/src/normalize.test.tsx +9 -36
- package/src/normalize.ts +51 -82
- package/src/theme.ts +157 -0
- package/src/types.ts +0 -2
- package/src/useTheme.test.tsx +22 -14
- package/src/useTheme.tsx +37 -9
- package/src/variant.test.ts +93 -0
- package/src/variant.ts +54 -0
- package/dist/Element.d.ts +0 -8
- package/dist/cache.d.ts +0 -4
- package/dist/reset.d.ts +0 -24
- package/dist/useClassname.d.ts +0 -2
- package/dist/useStyles.d.ts +0 -15
- package/src/Element.test.tsx +0 -203
- package/src/Element.tsx +0 -59
- package/src/cache.ts +0 -4
- package/src/reset.ts +0 -108
- package/src/useClassname.test.tsx +0 -70
- package/src/useClassname.ts +0 -23
- package/src/useStyles.stories.mdx +0 -24
- package/src/useStyles.test.tsx +0 -286
- package/src/useStyles.ts +0 -63
package/dist/system.esm.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { jsx } from '@emotion/react';
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
export { cache } from '@emotion/css';
|
|
1
|
+
import { jsx, ThemeProvider as ThemeProvider$1, Global as Global$1 } from '@emotion/react';
|
|
2
|
+
import { css as css$1 } from '@theme-ui/css';
|
|
3
|
+
import React, { forwardRef, useContext, useCallback, createContext } from 'react';
|
|
4
|
+
import { getNormalizedStyles as getNormalizedStyles$1 } from '@marigold/system';
|
|
6
5
|
|
|
7
6
|
function _extends() {
|
|
8
7
|
_extends = Object.assign || function (target) {
|
|
@@ -40,351 +39,354 @@ function _objectWithoutPropertiesLoose(source, excluded) {
|
|
|
40
39
|
var base = {
|
|
41
40
|
boxSizing: 'border-box',
|
|
42
41
|
margin: 0,
|
|
43
|
-
|
|
44
|
-
minWidth: 0,
|
|
45
|
-
fontSize: '100%',
|
|
46
|
-
fontFamily: 'inherit',
|
|
47
|
-
verticalAlign: 'baseline',
|
|
48
|
-
WebkitTapHighlightColor: 'transparent'
|
|
49
|
-
}; // Content
|
|
50
|
-
// ---------------
|
|
51
|
-
|
|
52
|
-
var block = {
|
|
53
|
-
display: 'block'
|
|
54
|
-
};
|
|
55
|
-
var list = {// empty
|
|
42
|
+
minWidth: 0
|
|
56
43
|
};
|
|
57
|
-
var table = {
|
|
58
|
-
borderCollapse: 'collapse',
|
|
59
|
-
borderSpacing: 0
|
|
60
|
-
}; // Typography
|
|
61
|
-
// ---------------
|
|
62
44
|
|
|
63
|
-
var a = {
|
|
64
|
-
textDecoration: 'none'
|
|
65
|
-
|
|
66
|
-
};
|
|
67
|
-
var quote = {
|
|
68
|
-
quotes: 'none',
|
|
69
|
-
selectors: {
|
|
70
|
-
'&:before, &:after': {
|
|
71
|
-
content: "''"
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}; // Form Elements
|
|
75
|
-
// ---------------
|
|
45
|
+
var a = /*#__PURE__*/_extends({}, base, {
|
|
46
|
+
textDecoration: 'none'
|
|
47
|
+
});
|
|
76
48
|
|
|
77
|
-
var
|
|
49
|
+
var text = /*#__PURE__*/_extends({}, base, {
|
|
50
|
+
overflowWrap: 'break-word'
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
var media = /*#__PURE__*/_extends({}, base, {
|
|
54
|
+
display: 'block',
|
|
55
|
+
maxWidth: '100%'
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
var button = /*#__PURE__*/_extends({}, base, {
|
|
78
59
|
display: 'block',
|
|
79
60
|
appearance: 'none',
|
|
61
|
+
font: 'inherit',
|
|
80
62
|
background: 'transparent',
|
|
81
|
-
textAlign: 'center'
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
var input = {
|
|
63
|
+
textAlign: 'center'
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
var input = /*#__PURE__*/_extends({}, base, {
|
|
85
67
|
display: 'block',
|
|
86
68
|
appearance: 'none',
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
69
|
+
font: 'inherit',
|
|
70
|
+
'&::-ms-clear': {
|
|
71
|
+
display: 'none'
|
|
72
|
+
},
|
|
73
|
+
'&::-webkit-search-cancel-button': {
|
|
74
|
+
WebkitAppearance: 'none'
|
|
94
75
|
}
|
|
95
|
-
};
|
|
96
|
-
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
var select = /*#__PURE__*/_extends({}, base, {
|
|
97
79
|
display: 'block',
|
|
98
80
|
appearance: 'none',
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
}
|
|
81
|
+
font: 'inherit',
|
|
82
|
+
'&::-ms-expand': {
|
|
83
|
+
display: 'none'
|
|
103
84
|
}
|
|
104
|
-
};
|
|
105
|
-
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
var textarea = /*#__PURE__*/_extends({}, base, {
|
|
106
88
|
display: 'block',
|
|
107
|
-
appearance: 'none'
|
|
108
|
-
|
|
89
|
+
appearance: 'none',
|
|
90
|
+
font: 'inherit'
|
|
91
|
+
}); // Normalize
|
|
109
92
|
// ---------------
|
|
110
93
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
aside: block,
|
|
114
|
-
details: block,
|
|
115
|
-
figcaption: block,
|
|
116
|
-
figure: block,
|
|
117
|
-
footer: block,
|
|
118
|
-
header: block,
|
|
119
|
-
hgroup: block,
|
|
120
|
-
menu: block,
|
|
121
|
-
nav: block,
|
|
122
|
-
section: block,
|
|
123
|
-
ul: list,
|
|
124
|
-
ol: list,
|
|
125
|
-
blockquote: quote,
|
|
126
|
-
q: quote,
|
|
127
|
-
a: a,
|
|
94
|
+
|
|
95
|
+
var normalize = {
|
|
128
96
|
base: base,
|
|
129
|
-
|
|
97
|
+
a: a,
|
|
98
|
+
p: text,
|
|
99
|
+
h1: text,
|
|
100
|
+
h2: text,
|
|
101
|
+
h3: text,
|
|
102
|
+
h4: text,
|
|
103
|
+
h5: text,
|
|
104
|
+
h6: text,
|
|
105
|
+
img: media,
|
|
106
|
+
picture: media,
|
|
107
|
+
video: media,
|
|
108
|
+
canvas: media,
|
|
109
|
+
svg: media,
|
|
130
110
|
select: select,
|
|
131
111
|
button: button,
|
|
132
112
|
textarea: textarea,
|
|
133
113
|
input: input
|
|
134
114
|
};
|
|
115
|
+
/**
|
|
116
|
+
* Type-safe helper to get normalization. If no normalization is found,
|
|
117
|
+
* returns the *base* normalization.
|
|
118
|
+
*/
|
|
119
|
+
|
|
120
|
+
var getNormalizedStyles = function getNormalizedStyles(val) {
|
|
121
|
+
return typeof val === 'string' && val in normalize ? normalize[val] // Typescript doesn't infer this correctly
|
|
122
|
+
: normalize.base;
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
var _excluded = ["disabled"];
|
|
135
126
|
|
|
136
|
-
var
|
|
137
|
-
return
|
|
127
|
+
var isNil = function isNil(value) {
|
|
128
|
+
return value === null || value === undefined;
|
|
138
129
|
};
|
|
139
130
|
/**
|
|
140
|
-
*
|
|
131
|
+
* Ensures that the `val` is an array. Will return an empty array if `val` is falsy.
|
|
141
132
|
*/
|
|
142
133
|
|
|
143
134
|
|
|
144
|
-
var
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Try to find the reset style for a HTML element. If the element
|
|
154
|
-
* is not included return empty styles.
|
|
155
|
-
*/
|
|
135
|
+
var ensureArray = function ensureArray(val) {
|
|
136
|
+
return isNil(val) ? [] : Array.isArray(val) ? val : [val];
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* Removes trailing dot from variant, if necessary. This is necessary to support
|
|
140
|
+
* `__default` styles. See https://github.com/system-ui/theme-ui/pull/951
|
|
141
|
+
*/
|
|
156
142
|
|
|
143
|
+
var ensureVariantDefault = function ensureVariantDefault(val) {
|
|
144
|
+
return val.replace(/\.$/, '');
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Ensures that the `variant` is an array and supports the `__default` key.
|
|
148
|
+
*/
|
|
157
149
|
|
|
158
|
-
|
|
150
|
+
var ensureArrayVariant = function ensureArrayVariant(variant) {
|
|
151
|
+
return ensureArray(variant).map(ensureVariantDefault);
|
|
159
152
|
};
|
|
153
|
+
/**
|
|
154
|
+
* Appends given `state` to a `variant`.
|
|
155
|
+
*/
|
|
160
156
|
|
|
161
|
-
var
|
|
162
|
-
|
|
163
|
-
var theme = useContext(Context);
|
|
164
|
-
var css$1 = useCallback(function (style) {
|
|
165
|
-
return css(style)(theme);
|
|
166
|
-
}, [theme]);
|
|
167
|
-
return {
|
|
168
|
-
theme: theme,
|
|
169
|
-
css: css$1
|
|
170
|
-
};
|
|
157
|
+
var appendVariantState = function appendVariantState(variant, state) {
|
|
158
|
+
return ensureVariantDefault(variant) + ".:" + state;
|
|
171
159
|
};
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
160
|
+
/**
|
|
161
|
+
* Create a variant array from a `variant` and `state` containing
|
|
162
|
+
* passed states, if they are truthy.
|
|
163
|
+
*/
|
|
164
|
+
|
|
165
|
+
var conditional = function conditional(variant, _ref) {
|
|
166
|
+
var _ref$disabled = _ref.disabled,
|
|
167
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
168
|
+
states = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
169
|
+
|
|
170
|
+
var entries = [].concat(Object.entries(states), [['disabled', disabled]]);
|
|
171
|
+
var stateVariants = entries.filter(function (_ref2) {
|
|
172
|
+
var val = _ref2[1];
|
|
173
|
+
return Boolean(val);
|
|
174
|
+
}).map(function (_ref3) {
|
|
175
|
+
var key = _ref3[0];
|
|
176
|
+
return appendVariantState(variant, key);
|
|
177
|
+
});
|
|
178
|
+
return [variant].concat(stateVariants);
|
|
178
179
|
};
|
|
179
180
|
|
|
180
|
-
var _excluded = ["as", "
|
|
181
|
+
var _excluded$1 = ["as", "children", "__baseCSS", "variant", "css", "display", "height", "width", "minWidth", "maxWidth", "position", "top", "bottom", "right", "left", "zIndex", "p", "px", "py", "pt", "pb", "pl", "pr", "m", "mx", "my", "mt", "mb", "ml", "mr", "flexDirection", "flexWrap", "flexShrink", "flexGrow", "alignItems", "justifyContent", "bg", "border", "borderRadius", "boxShadow", "opacity", "overflow", "transition"];
|
|
181
182
|
/**
|
|
182
|
-
*
|
|
183
|
+
* Check if there is any falsy value or empty object
|
|
183
184
|
*/
|
|
184
185
|
|
|
185
186
|
var isNotEmpty = function isNotEmpty(val) {
|
|
186
187
|
return !(val && Object.keys(val).length === 0 && val.constructor === Object);
|
|
187
188
|
};
|
|
188
|
-
/**
|
|
189
|
-
* Get the normalized base styles
|
|
190
|
-
*/
|
|
191
189
|
|
|
192
|
-
|
|
193
|
-
var
|
|
194
|
-
|
|
195
|
-
var _ref$as = _ref.as,
|
|
196
|
-
as = _ref$as === void 0 ? 'div' : _ref$as,
|
|
197
|
-
_ref$css = _ref.css,
|
|
198
|
-
styles = _ref$css === void 0 ? {} : _ref$css,
|
|
190
|
+
var createThemedStyle = function createThemedStyle(_ref) {
|
|
191
|
+
var as = _ref.as,
|
|
192
|
+
__baseCSS = _ref.__baseCSS,
|
|
199
193
|
variant = _ref.variant,
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
194
|
+
styles = _ref.styles,
|
|
195
|
+
css = _ref.css;
|
|
196
|
+
return function (theme) {
|
|
197
|
+
return [getNormalizedStyles(as), css$1(__baseCSS)(theme)].concat(ensureArrayVariant(variant).map(function (v) {
|
|
198
|
+
return css$1({
|
|
199
|
+
variant: v
|
|
200
|
+
})(theme);
|
|
201
|
+
}), [css$1(styles)(theme), css$1(css)(theme)]).filter(isNotEmpty);
|
|
202
|
+
};
|
|
203
|
+
};
|
|
208
204
|
|
|
205
|
+
var Box = /*#__PURE__*/forwardRef(function (_ref2, ref) {
|
|
206
|
+
var _ref2$as = _ref2.as,
|
|
207
|
+
as = _ref2$as === void 0 ? 'div' : _ref2$as,
|
|
208
|
+
children = _ref2.children,
|
|
209
|
+
__baseCSS = _ref2.__baseCSS,
|
|
210
|
+
variant = _ref2.variant,
|
|
211
|
+
_ref2$css = _ref2.css,
|
|
212
|
+
css = _ref2$css === void 0 ? {} : _ref2$css,
|
|
213
|
+
display = _ref2.display,
|
|
214
|
+
height = _ref2.height,
|
|
215
|
+
width = _ref2.width,
|
|
216
|
+
minWidth = _ref2.minWidth,
|
|
217
|
+
maxWidth = _ref2.maxWidth,
|
|
218
|
+
position = _ref2.position,
|
|
219
|
+
top = _ref2.top,
|
|
220
|
+
bottom = _ref2.bottom,
|
|
221
|
+
right = _ref2.right,
|
|
222
|
+
left = _ref2.left,
|
|
223
|
+
zIndex = _ref2.zIndex,
|
|
224
|
+
p = _ref2.p,
|
|
225
|
+
px = _ref2.px,
|
|
226
|
+
py = _ref2.py,
|
|
227
|
+
pt = _ref2.pt,
|
|
228
|
+
pb = _ref2.pb,
|
|
229
|
+
pl = _ref2.pl,
|
|
230
|
+
pr = _ref2.pr,
|
|
231
|
+
m = _ref2.m,
|
|
232
|
+
mx = _ref2.mx,
|
|
233
|
+
my = _ref2.my,
|
|
234
|
+
mt = _ref2.mt,
|
|
235
|
+
mb = _ref2.mb,
|
|
236
|
+
ml = _ref2.ml,
|
|
237
|
+
mr = _ref2.mr,
|
|
238
|
+
flexDirection = _ref2.flexDirection,
|
|
239
|
+
flexWrap = _ref2.flexWrap,
|
|
240
|
+
flexShrink = _ref2.flexShrink,
|
|
241
|
+
flexGrow = _ref2.flexGrow,
|
|
242
|
+
alignItems = _ref2.alignItems,
|
|
243
|
+
justifyContent = _ref2.justifyContent,
|
|
244
|
+
bg = _ref2.bg,
|
|
245
|
+
border = _ref2.border,
|
|
246
|
+
borderRadius = _ref2.borderRadius,
|
|
247
|
+
boxShadow = _ref2.boxShadow,
|
|
248
|
+
opacity = _ref2.opacity,
|
|
249
|
+
overflow = _ref2.overflow,
|
|
250
|
+
transition = _ref2.transition,
|
|
251
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$1);
|
|
209
252
|
|
|
210
|
-
var variants = Array.isArray(variant) ? variant.map(function (v) {
|
|
211
|
-
return {
|
|
212
|
-
variant: v
|
|
213
|
-
};
|
|
214
|
-
}) : [{
|
|
215
|
-
variant: variant
|
|
216
|
-
}];
|
|
217
253
|
return jsx(as, _extends({}, props, {
|
|
218
|
-
css:
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
254
|
+
css: createThemedStyle({
|
|
255
|
+
as: as,
|
|
256
|
+
__baseCSS: __baseCSS,
|
|
257
|
+
variant: variant,
|
|
258
|
+
css: css,
|
|
259
|
+
styles: {
|
|
260
|
+
display: display,
|
|
261
|
+
height: height,
|
|
262
|
+
width: width,
|
|
263
|
+
minWidth: minWidth,
|
|
264
|
+
maxWidth: maxWidth,
|
|
265
|
+
position: position,
|
|
266
|
+
top: top,
|
|
267
|
+
bottom: bottom,
|
|
268
|
+
right: right,
|
|
269
|
+
left: left,
|
|
270
|
+
zIndex: zIndex,
|
|
271
|
+
p: p,
|
|
272
|
+
px: px,
|
|
273
|
+
py: py,
|
|
274
|
+
pt: pt,
|
|
275
|
+
pb: pb,
|
|
276
|
+
pl: pl,
|
|
277
|
+
pr: pr,
|
|
278
|
+
m: m,
|
|
279
|
+
mx: mx,
|
|
280
|
+
my: my,
|
|
281
|
+
mt: mt,
|
|
282
|
+
mb: mb,
|
|
283
|
+
ml: ml,
|
|
284
|
+
mr: mr,
|
|
285
|
+
flexDirection: flexDirection,
|
|
286
|
+
flexWrap: flexWrap,
|
|
287
|
+
flexShrink: flexShrink,
|
|
288
|
+
flexGrow: flexGrow,
|
|
289
|
+
alignItems: alignItems,
|
|
290
|
+
justifyContent: justifyContent,
|
|
291
|
+
bg: bg,
|
|
292
|
+
border: border,
|
|
293
|
+
borderRadius: borderRadius,
|
|
294
|
+
boxShadow: boxShadow,
|
|
295
|
+
opacity: opacity,
|
|
296
|
+
overflow: overflow,
|
|
297
|
+
transition: transition
|
|
298
|
+
}
|
|
299
|
+
}),
|
|
222
300
|
ref: ref
|
|
223
301
|
}), children);
|
|
224
302
|
});
|
|
225
303
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
return val && Object.keys(val).length === 0 && val.constructor === Object;
|
|
230
|
-
};
|
|
231
|
-
|
|
232
|
-
var useClassname = function useClassname() {
|
|
233
|
-
var _useTheme = useTheme(),
|
|
234
|
-
css = _useTheme.css;
|
|
304
|
+
/**
|
|
305
|
+
* @internal
|
|
306
|
+
*/
|
|
235
307
|
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
308
|
+
var __defaultTheme = {};
|
|
309
|
+
var InternalContext = /*#__PURE__*/createContext(__defaultTheme);
|
|
310
|
+
var useTheme = function useTheme() {
|
|
311
|
+
var theme = useContext(InternalContext);
|
|
312
|
+
/**
|
|
313
|
+
* We cast the theme here to `any` since our subset is not
|
|
314
|
+
* compatible with the typings of `theme-ui`, since they
|
|
315
|
+
* also support arrays as scale values, while we don't.
|
|
316
|
+
*/
|
|
239
317
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
return isEmpty(themedStyle) ? '' : css$1(themedStyle);
|
|
248
|
-
}).join(' ');
|
|
318
|
+
var css = useCallback(function (style) {
|
|
319
|
+
return css$1(style)(theme);
|
|
320
|
+
}, [theme]);
|
|
321
|
+
return {
|
|
322
|
+
theme: theme,
|
|
323
|
+
css: css
|
|
324
|
+
};
|
|
249
325
|
};
|
|
326
|
+
function ThemeProvider(_ref) {
|
|
327
|
+
var theme = _ref.theme,
|
|
328
|
+
children = _ref.children;
|
|
329
|
+
return React.createElement(ThemeProvider$1, {
|
|
330
|
+
theme: theme
|
|
331
|
+
}, React.createElement(InternalContext.Provider, {
|
|
332
|
+
value: theme
|
|
333
|
+
}, children));
|
|
334
|
+
}
|
|
250
335
|
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
minWidth: 0,
|
|
256
|
-
fontSize: '100%',
|
|
257
|
-
font: 'inherit',
|
|
258
|
-
verticalAlign: 'baseline',
|
|
259
|
-
WebkitTapHighlightColor: 'transparent'
|
|
260
|
-
}); // Content
|
|
261
|
-
// ---------------
|
|
262
|
-
|
|
263
|
-
var block$1 = /*#__PURE__*/css$1({
|
|
264
|
-
display: 'block'
|
|
265
|
-
});
|
|
266
|
-
var list$1 = /*#__PURE__*/css$1({// empty
|
|
267
|
-
});
|
|
268
|
-
var table$1 = /*#__PURE__*/css$1({
|
|
269
|
-
borderCollapse: 'collapse',
|
|
270
|
-
borderSpacing: 0
|
|
271
|
-
}); // Typography
|
|
272
|
-
// ---------------
|
|
336
|
+
/**
|
|
337
|
+
* CSS snippet and idea from:
|
|
338
|
+
* https://css-tricks.com/revisiting-prefers-reduced-motion-the-reduced-motion-media-query/
|
|
339
|
+
*/
|
|
273
340
|
|
|
274
|
-
var
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
selectors: {
|
|
281
|
-
'&:before, &:after': {
|
|
282
|
-
content: "''"
|
|
341
|
+
var reduceMotionStyles = {
|
|
342
|
+
'@media screen and (prefers-reduced-motion: reduce), (update: slow)': {
|
|
343
|
+
'*': {
|
|
344
|
+
animationDuration: '0.001ms !important',
|
|
345
|
+
animationIterationCount: '1 !important',
|
|
346
|
+
transitionDuration: '0.001ms !important'
|
|
283
347
|
}
|
|
284
348
|
}
|
|
285
|
-
}
|
|
286
|
-
|
|
349
|
+
};
|
|
350
|
+
var Global = function Global() {
|
|
351
|
+
var _useTheme = useTheme(),
|
|
352
|
+
css = _useTheme.css;
|
|
287
353
|
|
|
288
|
-
var
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
textAlign: 'center',
|
|
293
|
-
touchAction: 'manipulation'
|
|
294
|
-
});
|
|
295
|
-
var input$1 = /*#__PURE__*/css$1({
|
|
296
|
-
display: 'block',
|
|
297
|
-
appearance: 'none',
|
|
298
|
-
selectors: {
|
|
299
|
-
'&::-ms-clear': {
|
|
300
|
-
display: 'none'
|
|
354
|
+
var styles = css({
|
|
355
|
+
html: {
|
|
356
|
+
height: '100%',
|
|
357
|
+
variant: 'root.html'
|
|
301
358
|
},
|
|
302
|
-
|
|
303
|
-
|
|
359
|
+
body: {
|
|
360
|
+
height: '100%',
|
|
361
|
+
lineHeight: 1.5,
|
|
362
|
+
WebkitFontSmoothing: 'antialiased',
|
|
363
|
+
variant: 'root.body'
|
|
304
364
|
}
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
'&::-ms-expand': {
|
|
312
|
-
display: 'none'
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
});
|
|
316
|
-
var textarea$1 = /*#__PURE__*/css$1({
|
|
317
|
-
display: 'block',
|
|
318
|
-
appearance: 'none'
|
|
319
|
-
}); // Reset
|
|
320
|
-
// ---------------
|
|
321
|
-
|
|
322
|
-
var reset$1 = {
|
|
323
|
-
article: block$1,
|
|
324
|
-
aside: block$1,
|
|
325
|
-
details: block$1,
|
|
326
|
-
figcaption: block$1,
|
|
327
|
-
figure: block$1,
|
|
328
|
-
footer: block$1,
|
|
329
|
-
header: block$1,
|
|
330
|
-
hgroup: block$1,
|
|
331
|
-
menu: block$1,
|
|
332
|
-
nav: block$1,
|
|
333
|
-
section: block$1,
|
|
334
|
-
ul: list$1,
|
|
335
|
-
ol: list$1,
|
|
336
|
-
blockquote: quote$1,
|
|
337
|
-
q: quote$1,
|
|
338
|
-
a: a$1,
|
|
339
|
-
base: base$1,
|
|
340
|
-
table: table$1,
|
|
341
|
-
select: select$1,
|
|
342
|
-
button: button$1,
|
|
343
|
-
textarea: textarea$1,
|
|
344
|
-
input: input$1
|
|
365
|
+
});
|
|
366
|
+
return React.createElement(Global$1, {
|
|
367
|
+
styles: _extends({
|
|
368
|
+
reduceMotionStyles: reduceMotionStyles
|
|
369
|
+
}, styles)
|
|
370
|
+
});
|
|
345
371
|
};
|
|
346
372
|
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
* We check the passed className if it already includes the reset styles so no
|
|
364
|
-
* duplicates are applied.
|
|
365
|
-
*/
|
|
366
|
-
var baseClassName = className.includes(reset$1.base) ? '' : reset$1.base;
|
|
367
|
-
var resetClassName = typeof element === 'string' ? className.includes(reset$1[element]) ? '' : reset$1[element] : '';
|
|
368
|
-
/**
|
|
369
|
-
* Get variant styles (from theme).
|
|
370
|
-
*/
|
|
371
|
-
|
|
372
|
-
var variants = Array.isArray(variant) ? variant.map(function (v) {
|
|
373
|
-
return {
|
|
374
|
-
variant: v
|
|
375
|
-
};
|
|
376
|
-
}) : [{
|
|
377
|
-
variant: variant
|
|
378
|
-
}];
|
|
379
|
-
var variantsClassName = useClassname.apply(void 0, variants);
|
|
380
|
-
/**
|
|
381
|
-
* Custom styles are applied "on runtime". They are usually controlled via component
|
|
382
|
-
* props and can change between component instances.
|
|
383
|
-
*/
|
|
384
|
-
|
|
385
|
-
var customClassName = useClassname(styles);
|
|
386
|
-
return [baseClassName, resetClassName, variantsClassName, customClassName, className].filter(Boolean).join(' ');
|
|
373
|
+
var _excluded$2 = ["size", "children"];
|
|
374
|
+
var css = /*#__PURE__*/getNormalizedStyles$1('svg');
|
|
375
|
+
var SVG = function SVG(_ref) {
|
|
376
|
+
var _ref$size = _ref.size,
|
|
377
|
+
size = _ref$size === void 0 ? 24 : _ref$size,
|
|
378
|
+
children = _ref.children,
|
|
379
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
380
|
+
|
|
381
|
+
return jsx('svg', _extends({
|
|
382
|
+
width: size,
|
|
383
|
+
height: size,
|
|
384
|
+
viewBox: '0 0 24 24',
|
|
385
|
+
fill: 'currentcolor'
|
|
386
|
+
}, props, {
|
|
387
|
+
css: css
|
|
388
|
+
}), children);
|
|
387
389
|
};
|
|
388
390
|
|
|
389
|
-
export {
|
|
391
|
+
export { Box, Global, SVG, ThemeProvider, __defaultTheme, appendVariantState, conditional, ensureArray, ensureArrayVariant, ensureVariantDefault, getNormalizedStyles, normalize, useTheme };
|
|
390
392
|
//# sourceMappingURL=system.esm.js.map
|