@prom-ui/core 0.0.6 → 0.0.9
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/Body/package.json +1 -1
- package/Box/package.json +1 -1
- package/Button/package.json +1 -2
- package/Checkbox/index.d.ts +8 -0
- package/Checkbox/index.js +99 -0
- package/Checkbox/package.json +10 -0
- package/Checkbox/style.css +133 -0
- package/Flex/package.json +1 -1
- package/Grid/package.json +1 -1
- package/Icon/index.d.ts +12 -0
- package/Icon/index.js +79 -0
- package/Icon/package.json +9 -0
- package/Icon/style.css +46 -0
- package/Image/package.json +1 -1
- package/ImageEmoji/index.d.ts +9 -0
- package/ImageEmoji/index.js +89 -0
- package/ImageEmoji/package.json +9 -0
- package/Input/index.d.ts +23 -0
- package/Input/index.js +84 -0
- package/Input/package.json +9 -0
- package/Input/style.css +345 -0
- package/Line/package.json +1 -1
- package/Link/package.json +1 -1
- package/List/package.json +1 -1
- package/Picture/package.json +1 -1
- package/Rating/index.d.ts +9 -0
- package/Rating/index.js +101 -0
- package/Rating/package.json +9 -0
- package/Rating/style.css +26 -0
- package/Skeleton/index.d.ts +12 -0
- package/Skeleton/index.js +113 -0
- package/Skeleton/package.json +9 -0
- package/Skeleton/style.css +145 -0
- package/Spinner/index.d.ts +2 -1
- package/Spinner/package.json +1 -1
- package/Text/package.json +1 -1
- package/TextEmoji/index.d.ts +7 -0
- package/TextEmoji/index.js +87 -0
- package/TextEmoji/package.json +9 -0
- package/Tumbler/index.d.ts +8 -0
- package/Tumbler/index.js +98 -0
- package/Tumbler/package.json +10 -0
- package/Tumbler/style.css +118 -0
- package/package.json +10 -4
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
require("./style.css");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
6
|
+
|
|
7
|
+
var React = require('react');
|
|
8
|
+
var PropTypes = require('prop-types');
|
|
9
|
+
var evokit = require('evokit');
|
|
10
|
+
|
|
11
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
|
+
|
|
13
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
14
|
+
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
15
|
+
|
|
16
|
+
/******************************************************************************
|
|
17
|
+
Copyright (c) Microsoft Corporation.
|
|
18
|
+
|
|
19
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
20
|
+
purpose with or without fee is hereby granted.
|
|
21
|
+
|
|
22
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
23
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
24
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
25
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
26
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
27
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
28
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
29
|
+
***************************************************************************** */
|
|
30
|
+
|
|
31
|
+
var __assign = function() {
|
|
32
|
+
__assign = Object.assign || function __assign(t) {
|
|
33
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
34
|
+
s = arguments[i];
|
|
35
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
36
|
+
}
|
|
37
|
+
return t;
|
|
38
|
+
};
|
|
39
|
+
return __assign.apply(this, arguments);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
function __rest(s, e) {
|
|
43
|
+
var t = {};
|
|
44
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
45
|
+
t[p] = s[p];
|
|
46
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
47
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
48
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
49
|
+
t[p[i]] = s[p[i]];
|
|
50
|
+
}
|
|
51
|
+
return t;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
var css = {"ek-skeleton":"Skeleton__ek-skeleton___YQ77B","ek-skeleton_theme_grey":"Skeleton__ek-skeleton_theme_grey___fLU-I","skeleton-keyframes-wave":"Skeleton__skeleton-keyframes-wave___tx4t3","ek-skeleton_theme_black-100":"Skeleton__ek-skeleton_theme_black-100___7Lfmq","ek-skeleton_theme_white":"Skeleton__ek-skeleton_theme_white___HJ4sO","ek-skeleton_variant_text":"Skeleton__ek-skeleton_variant_text___8cqBE","ek-skeleton_variant_circle":"Skeleton__ek-skeleton_variant_circle___-y8Ac","ek-skeleton_variant_square":"Skeleton__ek-skeleton_variant_square___ER7Aa","ek-skeleton_variant_rect":"Skeleton__ek-skeleton_variant_rect___PqK20","ek-skeleton_align_left":"Skeleton__ek-skeleton_align_left___vFpty","ek-skeleton_align_center":"Skeleton__ek-skeleton_align_center___xLcUn","ek-skeleton_align_right":"Skeleton__ek-skeleton_align_right___YXQvi","ek-skeleton_opacity_0":"Skeleton__ek-skeleton_opacity_0___hV3fo","ek-skeleton_opacity_10":"Skeleton__ek-skeleton_opacity_10___SWeYg","ek-skeleton_opacity_20":"Skeleton__ek-skeleton_opacity_20___uh-KW","ek-skeleton_opacity_30":"Skeleton__ek-skeleton_opacity_30___o-fsf","ek-skeleton_opacity_40":"Skeleton__ek-skeleton_opacity_40___yQNnj","ek-skeleton_opacity_50":"Skeleton__ek-skeleton_opacity_50___8ChyF","ek-skeleton_opacity_60":"Skeleton__ek-skeleton_opacity_60___jPfCj","ek-skeleton_opacity_70":"Skeleton__ek-skeleton_opacity_70___yi2qY","ek-skeleton_opacity_80":"Skeleton__ek-skeleton_opacity_80___kUBbU","ek-skeleton_opacity_90":"Skeleton__ek-skeleton_opacity_90___C0qIh","ek-skeleton_opacity_100":"Skeleton__ek-skeleton_opacity_100___PYOu-"};
|
|
55
|
+
|
|
56
|
+
var SkeletonBlock = evokit.createBlock('div', 'skeleton', ['align', 'theme', 'variant', 'opacity'], {
|
|
57
|
+
css: css
|
|
58
|
+
});
|
|
59
|
+
var Skeleton = React__default["default"].memo(React.forwardRef(function (_a, ref) {
|
|
60
|
+
var align = _a.align,
|
|
61
|
+
height = _a.height,
|
|
62
|
+
opacity = _a.opacity,
|
|
63
|
+
style = _a.style,
|
|
64
|
+
theme = _a.theme,
|
|
65
|
+
variant = _a.variant,
|
|
66
|
+
width = _a.width,
|
|
67
|
+
props = __rest(_a, ["align", "height", "opacity", "style", "theme", "variant", "width"]);
|
|
68
|
+
|
|
69
|
+
var blockStyle = React__default["default"].useMemo(function () {
|
|
70
|
+
return __assign({
|
|
71
|
+
height: height,
|
|
72
|
+
width: width
|
|
73
|
+
}, style);
|
|
74
|
+
}, [height, width, style]);
|
|
75
|
+
return React__default["default"].createElement(SkeletonBlock, __assign({
|
|
76
|
+
"skeleton-align": align,
|
|
77
|
+
"skeleton-theme": theme,
|
|
78
|
+
"skeleton-variant": variant,
|
|
79
|
+
"skeleton-opacity": opacity,
|
|
80
|
+
style: blockStyle
|
|
81
|
+
}, props, {
|
|
82
|
+
ref: ref
|
|
83
|
+
}));
|
|
84
|
+
}));
|
|
85
|
+
Skeleton.defaultProps = {
|
|
86
|
+
align: 'left',
|
|
87
|
+
height: null,
|
|
88
|
+
opacity: null,
|
|
89
|
+
theme: 'grey',
|
|
90
|
+
variant: 'text',
|
|
91
|
+
width: null
|
|
92
|
+
};
|
|
93
|
+
Skeleton.propTypes = {
|
|
94
|
+
/** Выравнивание: */
|
|
95
|
+
align: PropTypes__default["default"].oneOf(['left', 'center', 'right']),
|
|
96
|
+
|
|
97
|
+
/** Устанавливает высоту: */
|
|
98
|
+
height: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
|
|
99
|
+
|
|
100
|
+
/** Устанавливает прозрачность в %: */
|
|
101
|
+
opacity: PropTypes__default["default"].oneOf([0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]),
|
|
102
|
+
|
|
103
|
+
/** Устанавливает тему: */
|
|
104
|
+
theme: PropTypes__default["default"].oneOf(['black-100', 'grey', 'white']),
|
|
105
|
+
|
|
106
|
+
/** Вариант отображения: */
|
|
107
|
+
variant: PropTypes__default["default"].oneOf(['text', 'circle', 'square']),
|
|
108
|
+
|
|
109
|
+
/** Устанавливает ширину: */
|
|
110
|
+
width: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string])
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
exports.Skeleton = Skeleton;
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
@-webkit-keyframes Skeleton__skeleton-keyframes-wave___tx4t3 {
|
|
2
|
+
0% {
|
|
3
|
+
transform: translateX(-100%);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
100% {
|
|
7
|
+
transform: translateX(100%);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
@keyframes Skeleton__skeleton-keyframes-wave___tx4t3 {
|
|
12
|
+
0% {
|
|
13
|
+
transform: translateX(-100%);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
100% {
|
|
17
|
+
transform: translateX(100%);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.Skeleton__ek-skeleton___YQ77B {
|
|
22
|
+
display: block;
|
|
23
|
+
clear: both;
|
|
24
|
+
line-height: 100%;
|
|
25
|
+
border-radius: var(--pds-round-m);
|
|
26
|
+
overflow: hidden;
|
|
27
|
+
pointer-events: none;
|
|
28
|
+
position: relative
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.Skeleton__ek-skeleton___YQ77B + .Skeleton__ek-skeleton___YQ77B {
|
|
32
|
+
margin-top: var(--pds-spacing-s);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.Skeleton__ek-skeleton___YQ77B::after {
|
|
36
|
+
position: absolute;
|
|
37
|
+
left: 0;
|
|
38
|
+
top: 0;
|
|
39
|
+
width: 100%;
|
|
40
|
+
height: 100%;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.Skeleton__ek-skeleton_theme_grey___fLU-I {
|
|
44
|
+
background-color: var(--black-100)
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.Skeleton__ek-skeleton_theme_grey___fLU-I::after {
|
|
48
|
+
content: "";
|
|
49
|
+
transform: translateX(-100%);
|
|
50
|
+
will-change: transform;
|
|
51
|
+
background-image:
|
|
52
|
+
linear-gradient(
|
|
53
|
+
to right,
|
|
54
|
+
var(--black-100) 0%,
|
|
55
|
+
var(--black-100) 20%,
|
|
56
|
+
var(--black-50) 50%,
|
|
57
|
+
var(--black-100) 80%,
|
|
58
|
+
var(--black-100) 100%
|
|
59
|
+
);
|
|
60
|
+
-webkit-animation: Skeleton__skeleton-keyframes-wave___tx4t3 1350ms linear infinite;
|
|
61
|
+
animation: Skeleton__skeleton-keyframes-wave___tx4t3 1350ms linear infinite;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.Skeleton__ek-skeleton_theme_black-100___7Lfmq {
|
|
65
|
+
background: var(--black-100);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.Skeleton__ek-skeleton_theme_white___HJ4sO {
|
|
69
|
+
background: var(--white);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.Skeleton__ek-skeleton_variant_text___8cqBE::before {
|
|
73
|
+
content: "\00a0";
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.Skeleton__ek-skeleton_variant_circle___-y8Ac {
|
|
77
|
+
border-radius: 50%;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.Skeleton__ek-skeleton_variant_circle___-y8Ac::before, .Skeleton__ek-skeleton_variant_square___ER7Aa::before {
|
|
81
|
+
content: "";
|
|
82
|
+
display: block;
|
|
83
|
+
padding-bottom: 100%;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.Skeleton__ek-skeleton_variant_rect___PqK20 {
|
|
87
|
+
border-radius: 0;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.Skeleton__ek-skeleton_align_left___vFpty {
|
|
91
|
+
margin-right: auto;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.Skeleton__ek-skeleton_align_center___xLcUn {
|
|
95
|
+
margin-left: auto;
|
|
96
|
+
margin-right: auto;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.Skeleton__ek-skeleton_align_right___YXQvi {
|
|
100
|
+
margin-left: auto;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.Skeleton__ek-skeleton_opacity_0___hV3fo {
|
|
104
|
+
opacity: 0;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.Skeleton__ek-skeleton_opacity_10___SWeYg {
|
|
108
|
+
opacity: .1;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.Skeleton__ek-skeleton_opacity_20___uh-KW {
|
|
112
|
+
opacity: .2;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.Skeleton__ek-skeleton_opacity_30___o-fsf {
|
|
116
|
+
opacity: .3;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.Skeleton__ek-skeleton_opacity_40___yQNnj {
|
|
120
|
+
opacity: .4;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.Skeleton__ek-skeleton_opacity_50___8ChyF {
|
|
124
|
+
opacity: .5;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.Skeleton__ek-skeleton_opacity_60___jPfCj {
|
|
128
|
+
opacity: .6;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.Skeleton__ek-skeleton_opacity_70___yi2qY {
|
|
132
|
+
opacity: .7;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.Skeleton__ek-skeleton_opacity_80___kUBbU {
|
|
136
|
+
opacity: .8;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.Skeleton__ek-skeleton_opacity_90___C0qIh {
|
|
140
|
+
opacity: .9;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.Skeleton__ek-skeleton_opacity_100___PYOu- {
|
|
144
|
+
opacity: 1;
|
|
145
|
+
}
|
package/Spinner/index.d.ts
CHANGED
|
@@ -4,5 +4,6 @@ declare type Props = {
|
|
|
4
4
|
height?: string | number;
|
|
5
5
|
'spinner-color'?: 'violet-500' | null;
|
|
6
6
|
};
|
|
7
|
-
|
|
7
|
+
declare type SpinnerProps = React.HTMLAttributes<HTMLDivElement> & Props;
|
|
8
|
+
export declare const Spinner: React.FC<SpinnerProps>;
|
|
8
9
|
export {};
|
package/Spinner/package.json
CHANGED
package/Text/package.json
CHANGED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var PropTypes = require('prop-types');
|
|
7
|
+
var emojiText = require('@evo/emoji-text');
|
|
8
|
+
var Text = require('@prom-ui/core/Text');
|
|
9
|
+
|
|
10
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
11
|
+
|
|
12
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
13
|
+
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
14
|
+
|
|
15
|
+
/******************************************************************************
|
|
16
|
+
Copyright (c) Microsoft Corporation.
|
|
17
|
+
|
|
18
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
19
|
+
purpose with or without fee is hereby granted.
|
|
20
|
+
|
|
21
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
22
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
23
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
24
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
25
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
26
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
27
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
28
|
+
***************************************************************************** */
|
|
29
|
+
|
|
30
|
+
var __assign = function() {
|
|
31
|
+
__assign = Object.assign || function __assign(t) {
|
|
32
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
33
|
+
s = arguments[i];
|
|
34
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
35
|
+
}
|
|
36
|
+
return t;
|
|
37
|
+
};
|
|
38
|
+
return __assign.apply(this, arguments);
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
function __rest(s, e) {
|
|
42
|
+
var t = {};
|
|
43
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
44
|
+
t[p] = s[p];
|
|
45
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
46
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
47
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
48
|
+
t[p[i]] = s[p[i]];
|
|
49
|
+
}
|
|
50
|
+
return t;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
var TEXT_SIZES_LIST = {
|
|
54
|
+
small: 11,
|
|
55
|
+
default: 13,
|
|
56
|
+
big: 15,
|
|
57
|
+
h1: 24,
|
|
58
|
+
h2: 22,
|
|
59
|
+
h3: 20,
|
|
60
|
+
h4: 18,
|
|
61
|
+
h5: 16,
|
|
62
|
+
h6: 14
|
|
63
|
+
};
|
|
64
|
+
var TextEmoji = React.forwardRef(function (_a, ref) {
|
|
65
|
+
var children = _a.children,
|
|
66
|
+
size = _a.size,
|
|
67
|
+
type = _a.type,
|
|
68
|
+
props = __rest(_a, ["children", "size", "type"]);
|
|
69
|
+
|
|
70
|
+
return React__default["default"].createElement(Text.Text, __assign({
|
|
71
|
+
ref: ref
|
|
72
|
+
}, props), React__default["default"].createElement(emojiText.EmojiText, {
|
|
73
|
+
size: TEXT_SIZES_LIST[props['text-size']] || size,
|
|
74
|
+
type: type
|
|
75
|
+
}, children));
|
|
76
|
+
});
|
|
77
|
+
TextEmoji.defaultProps = {
|
|
78
|
+
size: TEXT_SIZES_LIST.default,
|
|
79
|
+
type: 'apple'
|
|
80
|
+
};
|
|
81
|
+
TextEmoji.propTypes = {
|
|
82
|
+
/** @ignore */
|
|
83
|
+
size: PropTypes__default["default"].number,
|
|
84
|
+
type: PropTypes__default["default"].oneOf(['apple', 'google'])
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
exports.TextEmoji = TextEmoji;
|
package/Tumbler/index.js
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
require("./style.css");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
6
|
+
|
|
7
|
+
var React = require('react');
|
|
8
|
+
var reactTransitionGroup = require('react-transition-group');
|
|
9
|
+
var PropTypes = require('prop-types');
|
|
10
|
+
var classNames = require('classnames');
|
|
11
|
+
var Spinner = require('@prom-ui/core/Spinner');
|
|
12
|
+
|
|
13
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
|
+
|
|
15
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
16
|
+
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
17
|
+
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
|
18
|
+
|
|
19
|
+
/******************************************************************************
|
|
20
|
+
Copyright (c) Microsoft Corporation.
|
|
21
|
+
|
|
22
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
23
|
+
purpose with or without fee is hereby granted.
|
|
24
|
+
|
|
25
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
26
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
27
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
28
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
29
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
30
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
31
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
32
|
+
***************************************************************************** */
|
|
33
|
+
|
|
34
|
+
var __assign = function() {
|
|
35
|
+
__assign = Object.assign || function __assign(t) {
|
|
36
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
37
|
+
s = arguments[i];
|
|
38
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
39
|
+
}
|
|
40
|
+
return t;
|
|
41
|
+
};
|
|
42
|
+
return __assign.apply(this, arguments);
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
function __rest(s, e) {
|
|
46
|
+
var t = {};
|
|
47
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
48
|
+
t[p] = s[p];
|
|
49
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
50
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
51
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
52
|
+
t[p[i]] = s[p[i]];
|
|
53
|
+
}
|
|
54
|
+
return t;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
var css = {"root":"Tumbler__root___17yYC","view":"Tumbler__view___w66K2","viewCircle":"Tumbler__viewCircle___xvJqd","input":"Tumbler__input___Kg91O","inputLoading":"Tumbler__inputLoading___y1iJD","spinner":"Tumbler__spinner___CNMl7","spinnerEnterActive":"Tumbler__spinnerEnterActive___C2P5b","spinnerEnterDone":"Tumbler__spinnerEnterDone___cgEXP","spinnerExitActive":"Tumbler__spinnerExitActive___k-mzv","spinnerExitDone":"Tumbler__spinnerExitDone___XD0-8"};
|
|
58
|
+
|
|
59
|
+
var Tumbler = React.forwardRef(function (_a, ref) {
|
|
60
|
+
var _b;
|
|
61
|
+
|
|
62
|
+
var className = _a.className,
|
|
63
|
+
loading = _a.loading,
|
|
64
|
+
props = __rest(_a, ["className", "loading"]);
|
|
65
|
+
|
|
66
|
+
return React__default["default"].createElement("div", {
|
|
67
|
+
className: classNames__default["default"](css.root, className)
|
|
68
|
+
}, React__default["default"].createElement("input", __assign({
|
|
69
|
+
ref: ref,
|
|
70
|
+
className: classNames__default["default"](css.input, (_b = {}, _b[css.inputLoading] = loading, _b))
|
|
71
|
+
}, props)), React__default["default"].createElement("div", {
|
|
72
|
+
className: css.view
|
|
73
|
+
}, React__default["default"].createElement("div", {
|
|
74
|
+
className: css.viewCircle
|
|
75
|
+
}, React__default["default"].createElement(reactTransitionGroup.CSSTransition, {
|
|
76
|
+
in: loading,
|
|
77
|
+
timeout: 100,
|
|
78
|
+
classNames: {
|
|
79
|
+
enterActive: css.spinnerEnterActive,
|
|
80
|
+
enterDone: css.spinnerEnterDone,
|
|
81
|
+
exitActive: css.spinnerExitActive,
|
|
82
|
+
exitDone: css.spinnerExitDone
|
|
83
|
+
},
|
|
84
|
+
unmountOnExit: true
|
|
85
|
+
}, React__default["default"].createElement(Spinner.Spinner, {
|
|
86
|
+
className: css.spinner
|
|
87
|
+
})))));
|
|
88
|
+
});
|
|
89
|
+
Tumbler.defaultProps = {
|
|
90
|
+
type: 'checkbox',
|
|
91
|
+
loading: false
|
|
92
|
+
};
|
|
93
|
+
Tumbler.propTypes = {
|
|
94
|
+
type: PropTypes__default["default"].oneOf(['checkbox', 'radio']),
|
|
95
|
+
loading: PropTypes__default["default"].bool
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
exports.Tumbler = Tumbler;
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
.Tumbler__root___17yYC {
|
|
2
|
+
position: relative;
|
|
3
|
+
display: block;
|
|
4
|
+
width: 34px;
|
|
5
|
+
height: 20px;
|
|
6
|
+
padding: 3px 0;
|
|
7
|
+
box-sizing: border-box;
|
|
8
|
+
margin: calc((var(--pds-line-height) - 20px) / 2) 0;
|
|
9
|
+
flex-shrink: 0;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.Tumbler__view___w66K2 {
|
|
13
|
+
height: 100%;
|
|
14
|
+
border-radius: 1em;
|
|
15
|
+
background: var(--black-400);
|
|
16
|
+
transition: background-color 120ms ease-in-out;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.Tumbler__viewCircle___xvJqd {
|
|
20
|
+
box-sizing: border-box;
|
|
21
|
+
position: absolute;
|
|
22
|
+
top: 0;
|
|
23
|
+
left: 0;
|
|
24
|
+
width: 20px;
|
|
25
|
+
height: 20px;
|
|
26
|
+
border-radius: 100%;
|
|
27
|
+
transform: translateX(0);
|
|
28
|
+
display: flex;
|
|
29
|
+
align-items: center;
|
|
30
|
+
justify-content: center;
|
|
31
|
+
color: var(--violet-500);
|
|
32
|
+
background: var(--white);
|
|
33
|
+
border: 1px var(--black-400) solid;
|
|
34
|
+
box-shadow: 1px 1px 4px 0 var(--black-400);
|
|
35
|
+
transition: 120ms ease-in-out;
|
|
36
|
+
transition-property: background-color, border-color, transform;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.Tumbler__input___Kg91O {
|
|
40
|
+
position: absolute;
|
|
41
|
+
top: 0;
|
|
42
|
+
left: 0;
|
|
43
|
+
width: 100%;
|
|
44
|
+
height: 100%;
|
|
45
|
+
opacity: 0;
|
|
46
|
+
padding: 0;
|
|
47
|
+
margin: 0;
|
|
48
|
+
-webkit-appearance: none;
|
|
49
|
+
-moz-appearance: none;
|
|
50
|
+
appearance: none;
|
|
51
|
+
z-index: 1;
|
|
52
|
+
cursor: pointer
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.Tumbler__input___Kg91O:disabled {
|
|
56
|
+
cursor: default;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.Tumbler__input___Kg91O:focus-visible + .Tumbler__view___w66K2 .Tumbler__viewCircle___xvJqd {
|
|
60
|
+
outline: var(--pds-round-xxs) auto Highlight;
|
|
61
|
+
outline: var(--pds-round-xxs) auto -webkit-focus-ring-color;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.Tumbler__input___Kg91O:checked + .Tumbler__view___w66K2 {
|
|
65
|
+
background-color: var(--violet-50)
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.Tumbler__input___Kg91O:checked + .Tumbler__view___w66K2 .Tumbler__viewCircle___xvJqd {
|
|
69
|
+
transform: translateX(14px);
|
|
70
|
+
color: var(--white);
|
|
71
|
+
background-color: var(--violet-500);
|
|
72
|
+
border-color: var(--violet-500);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.Tumbler__input___Kg91O:disabled + .Tumbler__view___w66K2 {
|
|
76
|
+
background-color: var(--black-200)
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.Tumbler__input___Kg91O:disabled + .Tumbler__view___w66K2 .Tumbler__viewCircle___xvJqd {
|
|
80
|
+
box-shadow: none;
|
|
81
|
+
color: var(--violet-500);
|
|
82
|
+
background-color: var(--black-400);
|
|
83
|
+
border-color: var(--black-400);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.Tumbler__inputLoading___y1iJD {
|
|
87
|
+
pointer-events: none;
|
|
88
|
+
cursor: default;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.Tumbler__spinner___CNMl7 {
|
|
92
|
+
opacity: 0;
|
|
93
|
+
transition: opacity 100ms ease-in-out;
|
|
94
|
+
width: 1em;
|
|
95
|
+
height: 1em;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.Tumbler__spinnerEnterActive___C2P5b,
|
|
99
|
+
.Tumbler__spinnerEnterDone___cgEXP {
|
|
100
|
+
opacity: 1;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.Tumbler__spinnerExitActive___k-mzv,
|
|
104
|
+
.Tumbler__spinnerExitDone___XD0-8 {
|
|
105
|
+
opacity: 0;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
@media (hover) {
|
|
109
|
+
.Tumbler__input___Kg91O:hover + .Tumbler__view___w66K2 .Tumbler__viewCircle___xvJqd {
|
|
110
|
+
border-color: var(--black-500);
|
|
111
|
+
}
|
|
112
|
+
.Tumbler__input___Kg91O:checked:hover + .Tumbler__view___w66K2 .Tumbler__viewCircle___xvJqd {
|
|
113
|
+
border-color: var(--violet-500);
|
|
114
|
+
}
|
|
115
|
+
.Tumbler__input___Kg91O:disabled:hover + .Tumbler__view___w66K2 .Tumbler__viewCircle___xvJqd {
|
|
116
|
+
border-color: var(--black-400);
|
|
117
|
+
}
|
|
118
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prom-ui/core",
|
|
3
3
|
"author": "e.marchenko",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.9",
|
|
5
5
|
"description": "core ui blocks",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"prebuild": "rm -rf dist && mkdir dist && cp -v package.json README.md CHANGELOG.md dist",
|
|
@@ -19,8 +19,13 @@
|
|
|
19
19
|
"access": "public",
|
|
20
20
|
"directory": "dist"
|
|
21
21
|
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"@prom-ui/core": "file:./src"
|
|
24
|
+
},
|
|
22
25
|
"dependencies": {
|
|
23
|
-
"@
|
|
26
|
+
"@evo/emoji": "0.2.0",
|
|
27
|
+
"@evo/emoji-text": "0.1.1",
|
|
28
|
+
"classnames": "2.3.1",
|
|
24
29
|
"evokit": "3.2.3",
|
|
25
30
|
"evokit-body": "3.2.0",
|
|
26
31
|
"evokit-box": "3.4.0",
|
|
@@ -32,11 +37,12 @@
|
|
|
32
37
|
"evokit-link": "3.2.0",
|
|
33
38
|
"evokit-list": "3.3.0",
|
|
34
39
|
"evokit-picture": "3.2.0",
|
|
35
|
-
"evokit-text": "3.2.0"
|
|
40
|
+
"evokit-text": "3.2.0",
|
|
41
|
+
"react-transition-group": "4.4.2"
|
|
36
42
|
},
|
|
37
43
|
"peerDependencies": {
|
|
38
44
|
"prop-types": "*",
|
|
39
45
|
"react": "*"
|
|
40
46
|
},
|
|
41
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "9e87ed629cb9be71c7b4503957f8d56c8eb6cf5e"
|
|
42
48
|
}
|