react-asc 25.3.0 → 25.4.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/components/Tooltip/Tooltip.d.ts +2 -1
- package/components/Tooltip/tooltip.enums.d.ts +6 -0
- package/index.es.js +49 -19
- package/index.js +49 -19
- package/package.json +28 -28
- package/react-asc.scss +354 -354
- package/readme.md +91 -91
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { TooltipPlacement } from './tooltip.enums';
|
|
2
3
|
export interface ITooltipProps extends React.ComponentProps<'div'> {
|
|
3
|
-
placement?:
|
|
4
|
+
placement?: TooltipPlacement;
|
|
4
5
|
text?: string;
|
|
5
6
|
delay?: number;
|
|
6
7
|
isOpen?: boolean;
|
package/index.es.js
CHANGED
|
@@ -269,7 +269,7 @@ function useMobileDetect() {
|
|
|
269
269
|
useEffect(() => {
|
|
270
270
|
windowSize && checkIsMobile(windowSize.height, windowSize.width);
|
|
271
271
|
}, [windowSize]);
|
|
272
|
-
return { isMobile };
|
|
272
|
+
return { isMobile: isMobile };
|
|
273
273
|
}
|
|
274
274
|
|
|
275
275
|
const useOnDestroy = (callBack) => {
|
|
@@ -1117,11 +1117,11 @@ const FormInput = (props) => {
|
|
|
1117
1117
|
};
|
|
1118
1118
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1119
1119
|
const handleOnInput = (value, type, name) => {
|
|
1120
|
-
onInput && onInput({ value, type, name });
|
|
1120
|
+
onInput && onInput({ value: value, type: type, name: name });
|
|
1121
1121
|
};
|
|
1122
1122
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1123
1123
|
const handleOnChange = (value, type, name) => {
|
|
1124
|
-
onChange && onChange({ value, type, name });
|
|
1124
|
+
onChange && onChange({ value: value, type: type, name: name });
|
|
1125
1125
|
};
|
|
1126
1126
|
return (React.createElement(React.Fragment, null,
|
|
1127
1127
|
(type === 'text' ||
|
|
@@ -1547,10 +1547,11 @@ styleInject(css_248z$x);
|
|
|
1547
1547
|
|
|
1548
1548
|
const MenuBody = (props) => {
|
|
1549
1549
|
const { parentRef, children, className, shadow = true, menuPosition = 'left', onClickBackdrop } = props;
|
|
1550
|
+
const [popperInstance, setPopperInstance] = useState();
|
|
1550
1551
|
const menuBodyRef = useRef(null);
|
|
1551
1552
|
useEffect(() => {
|
|
1552
1553
|
if (menuBodyRef && parentRef.current && menuBodyRef.current) {
|
|
1553
|
-
createPopper(parentRef.current, menuBodyRef.current, {
|
|
1554
|
+
const popperInstance = createPopper(parentRef.current, menuBodyRef.current, {
|
|
1554
1555
|
placement: `${menuPosition}-start`,
|
|
1555
1556
|
modifiers: [
|
|
1556
1557
|
{
|
|
@@ -1570,6 +1571,10 @@ const MenuBody = (props) => {
|
|
|
1570
1571
|
},
|
|
1571
1572
|
]
|
|
1572
1573
|
});
|
|
1574
|
+
setPopperInstance(popperInstance);
|
|
1575
|
+
}
|
|
1576
|
+
else {
|
|
1577
|
+
popperInstance?.destroy();
|
|
1573
1578
|
}
|
|
1574
1579
|
}, [menuBodyRef]);
|
|
1575
1580
|
const getCssClasses = () => {
|
|
@@ -1582,6 +1587,9 @@ const MenuBody = (props) => {
|
|
|
1582
1587
|
const handleClickBackdrop = () => {
|
|
1583
1588
|
onClickBackdrop && onClickBackdrop();
|
|
1584
1589
|
};
|
|
1590
|
+
useOnDestroy(() => {
|
|
1591
|
+
popperInstance?.destroy();
|
|
1592
|
+
});
|
|
1585
1593
|
return (React.createElement(Portal, { className: 'menu-root' },
|
|
1586
1594
|
React.createElement("div", { ref: menuBodyRef, className: getCssClasses() },
|
|
1587
1595
|
React.createElement(List, null, children)),
|
|
@@ -2018,8 +2026,17 @@ var css_248z$l = ".Tooltip-module_tooltipContainer__9ZWx3 {\n display: inline;\
|
|
|
2018
2026
|
var styles$l = {"tooltipContainer":"Tooltip-module_tooltipContainer__9ZWx3","tooltip":"Tooltip-module_tooltip__x5HOu","arrow":"Tooltip-module_arrow__B6lfe"};
|
|
2019
2027
|
styleInject(css_248z$l);
|
|
2020
2028
|
|
|
2029
|
+
var TooltipPlacement;
|
|
2030
|
+
(function (TooltipPlacement) {
|
|
2031
|
+
TooltipPlacement["top"] = "top";
|
|
2032
|
+
TooltipPlacement["bottom"] = "bottom";
|
|
2033
|
+
TooltipPlacement["right"] = "right";
|
|
2034
|
+
TooltipPlacement["left"] = "left";
|
|
2035
|
+
})(TooltipPlacement || (TooltipPlacement = {}));
|
|
2036
|
+
|
|
2021
2037
|
const Tooltip = (props) => {
|
|
2022
|
-
const { children, text, placement =
|
|
2038
|
+
const { children, text, placement = TooltipPlacement.bottom, isOpen = false, isShowClose = false, delay = 0 } = props;
|
|
2039
|
+
const [popperInstance, setPopperInstance] = useState();
|
|
2023
2040
|
const [debounce, setDebounce] = useState(delay);
|
|
2024
2041
|
const [open, setOpen] = useState(isOpen);
|
|
2025
2042
|
const [show, setShow] = useState(isOpen);
|
|
@@ -2038,17 +2055,27 @@ const Tooltip = (props) => {
|
|
|
2038
2055
|
}, [delay]);
|
|
2039
2056
|
useEffect(() => {
|
|
2040
2057
|
if (open === true && refChild && refChild.current && refTooltip && refTooltip.current) {
|
|
2041
|
-
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
name: 'offset',
|
|
2046
|
-
options: { offset: [0, 8] }
|
|
2047
|
-
},
|
|
2048
|
-
]
|
|
2049
|
-
});
|
|
2058
|
+
showTooltip();
|
|
2059
|
+
}
|
|
2060
|
+
else {
|
|
2061
|
+
hideTooltip();
|
|
2050
2062
|
}
|
|
2051
2063
|
}, [open]);
|
|
2064
|
+
const showTooltip = () => {
|
|
2065
|
+
const popperInstance = createPopper(refChild.current, refTooltip.current, {
|
|
2066
|
+
placement: placement,
|
|
2067
|
+
modifiers: [
|
|
2068
|
+
{
|
|
2069
|
+
name: 'offset',
|
|
2070
|
+
options: { offset: [0, 8] }
|
|
2071
|
+
},
|
|
2072
|
+
]
|
|
2073
|
+
});
|
|
2074
|
+
setPopperInstance(popperInstance);
|
|
2075
|
+
};
|
|
2076
|
+
const hideTooltip = () => {
|
|
2077
|
+
popperInstance?.destroy();
|
|
2078
|
+
};
|
|
2052
2079
|
const handleMouseOver = () => {
|
|
2053
2080
|
setShow(true);
|
|
2054
2081
|
};
|
|
@@ -2064,6 +2091,9 @@ const Tooltip = (props) => {
|
|
|
2064
2091
|
const handleClickClose = () => {
|
|
2065
2092
|
setShow(false);
|
|
2066
2093
|
};
|
|
2094
|
+
useOnDestroy(() => {
|
|
2095
|
+
hideTooltip();
|
|
2096
|
+
});
|
|
2067
2097
|
return (React.createElement(React.Fragment, null,
|
|
2068
2098
|
React.createElement("div", { ref: refChild, className: styles$l.tooltipContainer, onMouseOver: handleMouseOver, onMouseLeave: handleMouseLeave, onFocus: handleFocus, onBlur: handleBlur }, children),
|
|
2069
2099
|
open && text &&
|
|
@@ -2520,7 +2550,7 @@ const Step = (props) => {
|
|
|
2520
2550
|
const [hoverRef, isHovered] = useHover();
|
|
2521
2551
|
const handleClick = (event) => {
|
|
2522
2552
|
if (!isDisabled) {
|
|
2523
|
-
onClick && onClick({ event, value });
|
|
2553
|
+
onClick && onClick({ event: event, value: value });
|
|
2524
2554
|
}
|
|
2525
2555
|
};
|
|
2526
2556
|
const getCssClasses = () => {
|
|
@@ -2697,9 +2727,9 @@ const Tabs = (props) => {
|
|
|
2697
2727
|
const [selectedValue, setSelectedValue] = useState('');
|
|
2698
2728
|
const [selectedIndex, setSelectedIndex] = useState(0);
|
|
2699
2729
|
const tabContext = ({
|
|
2700
|
-
selectedValue,
|
|
2701
|
-
setSelectedValue,
|
|
2702
|
-
fixed
|
|
2730
|
+
selectedValue: selectedValue,
|
|
2731
|
+
setSelectedValue: setSelectedValue,
|
|
2732
|
+
fixed: fixed
|
|
2703
2733
|
});
|
|
2704
2734
|
const prevSelectedValueRef = useRef();
|
|
2705
2735
|
useEffect(() => {
|
|
@@ -2746,7 +2776,7 @@ const Tab = (props) => {
|
|
|
2746
2776
|
return cssClasses.filter(css => css).join(' ');
|
|
2747
2777
|
};
|
|
2748
2778
|
const handleClick = (event) => {
|
|
2749
|
-
onClick && onClick({ event, value });
|
|
2779
|
+
onClick && onClick({ event: event, value: value });
|
|
2750
2780
|
setSelectedValue && setSelectedValue(value);
|
|
2751
2781
|
};
|
|
2752
2782
|
return (React.createElement(Button, { className: getCssClasses(), onClick: handleClick, isActive: selectedValue === value, disabled: disabled }, label));
|
package/index.js
CHANGED
|
@@ -278,7 +278,7 @@ function useMobileDetect() {
|
|
|
278
278
|
React.useEffect(() => {
|
|
279
279
|
windowSize && checkIsMobile(windowSize.height, windowSize.width);
|
|
280
280
|
}, [windowSize]);
|
|
281
|
-
return { isMobile };
|
|
281
|
+
return { isMobile: isMobile };
|
|
282
282
|
}
|
|
283
283
|
|
|
284
284
|
const useOnDestroy = (callBack) => {
|
|
@@ -1126,11 +1126,11 @@ const FormInput = (props) => {
|
|
|
1126
1126
|
};
|
|
1127
1127
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1128
1128
|
const handleOnInput = (value, type, name) => {
|
|
1129
|
-
onInput && onInput({ value, type, name });
|
|
1129
|
+
onInput && onInput({ value: value, type: type, name: name });
|
|
1130
1130
|
};
|
|
1131
1131
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1132
1132
|
const handleOnChange = (value, type, name) => {
|
|
1133
|
-
onChange && onChange({ value, type, name });
|
|
1133
|
+
onChange && onChange({ value: value, type: type, name: name });
|
|
1134
1134
|
};
|
|
1135
1135
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1136
1136
|
(type === 'text' ||
|
|
@@ -1556,10 +1556,11 @@ styleInject(css_248z$x);
|
|
|
1556
1556
|
|
|
1557
1557
|
const MenuBody = (props) => {
|
|
1558
1558
|
const { parentRef, children, className, shadow = true, menuPosition = 'left', onClickBackdrop } = props;
|
|
1559
|
+
const [popperInstance, setPopperInstance] = React.useState();
|
|
1559
1560
|
const menuBodyRef = React.useRef(null);
|
|
1560
1561
|
React.useEffect(() => {
|
|
1561
1562
|
if (menuBodyRef && parentRef.current && menuBodyRef.current) {
|
|
1562
|
-
core.createPopper(parentRef.current, menuBodyRef.current, {
|
|
1563
|
+
const popperInstance = core.createPopper(parentRef.current, menuBodyRef.current, {
|
|
1563
1564
|
placement: `${menuPosition}-start`,
|
|
1564
1565
|
modifiers: [
|
|
1565
1566
|
{
|
|
@@ -1579,6 +1580,10 @@ const MenuBody = (props) => {
|
|
|
1579
1580
|
},
|
|
1580
1581
|
]
|
|
1581
1582
|
});
|
|
1583
|
+
setPopperInstance(popperInstance);
|
|
1584
|
+
}
|
|
1585
|
+
else {
|
|
1586
|
+
popperInstance?.destroy();
|
|
1582
1587
|
}
|
|
1583
1588
|
}, [menuBodyRef]);
|
|
1584
1589
|
const getCssClasses = () => {
|
|
@@ -1591,6 +1596,9 @@ const MenuBody = (props) => {
|
|
|
1591
1596
|
const handleClickBackdrop = () => {
|
|
1592
1597
|
onClickBackdrop && onClickBackdrop();
|
|
1593
1598
|
};
|
|
1599
|
+
useOnDestroy(() => {
|
|
1600
|
+
popperInstance?.destroy();
|
|
1601
|
+
});
|
|
1594
1602
|
return (React__default["default"].createElement(Portal, { className: 'menu-root' },
|
|
1595
1603
|
React__default["default"].createElement("div", { ref: menuBodyRef, className: getCssClasses() },
|
|
1596
1604
|
React__default["default"].createElement(List, null, children)),
|
|
@@ -2027,8 +2035,17 @@ var css_248z$l = ".Tooltip-module_tooltipContainer__9ZWx3 {\n display: inline;\
|
|
|
2027
2035
|
var styles$l = {"tooltipContainer":"Tooltip-module_tooltipContainer__9ZWx3","tooltip":"Tooltip-module_tooltip__x5HOu","arrow":"Tooltip-module_arrow__B6lfe"};
|
|
2028
2036
|
styleInject(css_248z$l);
|
|
2029
2037
|
|
|
2038
|
+
var TooltipPlacement;
|
|
2039
|
+
(function (TooltipPlacement) {
|
|
2040
|
+
TooltipPlacement["top"] = "top";
|
|
2041
|
+
TooltipPlacement["bottom"] = "bottom";
|
|
2042
|
+
TooltipPlacement["right"] = "right";
|
|
2043
|
+
TooltipPlacement["left"] = "left";
|
|
2044
|
+
})(TooltipPlacement || (TooltipPlacement = {}));
|
|
2045
|
+
|
|
2030
2046
|
const Tooltip = (props) => {
|
|
2031
|
-
const { children, text, placement =
|
|
2047
|
+
const { children, text, placement = TooltipPlacement.bottom, isOpen = false, isShowClose = false, delay = 0 } = props;
|
|
2048
|
+
const [popperInstance, setPopperInstance] = React.useState();
|
|
2032
2049
|
const [debounce, setDebounce] = React.useState(delay);
|
|
2033
2050
|
const [open, setOpen] = React.useState(isOpen);
|
|
2034
2051
|
const [show, setShow] = React.useState(isOpen);
|
|
@@ -2047,17 +2064,27 @@ const Tooltip = (props) => {
|
|
|
2047
2064
|
}, [delay]);
|
|
2048
2065
|
React.useEffect(() => {
|
|
2049
2066
|
if (open === true && refChild && refChild.current && refTooltip && refTooltip.current) {
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
name: 'offset',
|
|
2055
|
-
options: { offset: [0, 8] }
|
|
2056
|
-
},
|
|
2057
|
-
]
|
|
2058
|
-
});
|
|
2067
|
+
showTooltip();
|
|
2068
|
+
}
|
|
2069
|
+
else {
|
|
2070
|
+
hideTooltip();
|
|
2059
2071
|
}
|
|
2060
2072
|
}, [open]);
|
|
2073
|
+
const showTooltip = () => {
|
|
2074
|
+
const popperInstance = core.createPopper(refChild.current, refTooltip.current, {
|
|
2075
|
+
placement: placement,
|
|
2076
|
+
modifiers: [
|
|
2077
|
+
{
|
|
2078
|
+
name: 'offset',
|
|
2079
|
+
options: { offset: [0, 8] }
|
|
2080
|
+
},
|
|
2081
|
+
]
|
|
2082
|
+
});
|
|
2083
|
+
setPopperInstance(popperInstance);
|
|
2084
|
+
};
|
|
2085
|
+
const hideTooltip = () => {
|
|
2086
|
+
popperInstance?.destroy();
|
|
2087
|
+
};
|
|
2061
2088
|
const handleMouseOver = () => {
|
|
2062
2089
|
setShow(true);
|
|
2063
2090
|
};
|
|
@@ -2073,6 +2100,9 @@ const Tooltip = (props) => {
|
|
|
2073
2100
|
const handleClickClose = () => {
|
|
2074
2101
|
setShow(false);
|
|
2075
2102
|
};
|
|
2103
|
+
useOnDestroy(() => {
|
|
2104
|
+
hideTooltip();
|
|
2105
|
+
});
|
|
2076
2106
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2077
2107
|
React__default["default"].createElement("div", { ref: refChild, className: styles$l.tooltipContainer, onMouseOver: handleMouseOver, onMouseLeave: handleMouseLeave, onFocus: handleFocus, onBlur: handleBlur }, children),
|
|
2078
2108
|
open && text &&
|
|
@@ -2529,7 +2559,7 @@ const Step = (props) => {
|
|
|
2529
2559
|
const [hoverRef, isHovered] = useHover();
|
|
2530
2560
|
const handleClick = (event) => {
|
|
2531
2561
|
if (!isDisabled) {
|
|
2532
|
-
onClick && onClick({ event, value });
|
|
2562
|
+
onClick && onClick({ event: event, value: value });
|
|
2533
2563
|
}
|
|
2534
2564
|
};
|
|
2535
2565
|
const getCssClasses = () => {
|
|
@@ -2706,9 +2736,9 @@ const Tabs = (props) => {
|
|
|
2706
2736
|
const [selectedValue, setSelectedValue] = React.useState('');
|
|
2707
2737
|
const [selectedIndex, setSelectedIndex] = React.useState(0);
|
|
2708
2738
|
const tabContext = ({
|
|
2709
|
-
selectedValue,
|
|
2710
|
-
setSelectedValue,
|
|
2711
|
-
fixed
|
|
2739
|
+
selectedValue: selectedValue,
|
|
2740
|
+
setSelectedValue: setSelectedValue,
|
|
2741
|
+
fixed: fixed
|
|
2712
2742
|
});
|
|
2713
2743
|
const prevSelectedValueRef = React.useRef();
|
|
2714
2744
|
React.useEffect(() => {
|
|
@@ -2755,7 +2785,7 @@ const Tab = (props) => {
|
|
|
2755
2785
|
return cssClasses.filter(css => css).join(' ');
|
|
2756
2786
|
};
|
|
2757
2787
|
const handleClick = (event) => {
|
|
2758
|
-
onClick && onClick({ event, value });
|
|
2788
|
+
onClick && onClick({ event: event, value: value });
|
|
2759
2789
|
setSelectedValue && setSelectedValue(value);
|
|
2760
2790
|
};
|
|
2761
2791
|
return (React__default["default"].createElement(Button, { className: getCssClasses(), onClick: handleClick, isActive: selectedValue === value, disabled: disabled }, label));
|
package/package.json
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "react-asc",
|
|
3
|
-
"version": "25.
|
|
4
|
-
"description": "handcrafted react components",
|
|
5
|
-
"main": "index.js",
|
|
6
|
-
"module": "index.es.js",
|
|
7
|
-
"jsnext:main": "index.es.js",
|
|
8
|
-
"author": "Ardian Shala",
|
|
9
|
-
"homepage": "https://react-asc.netlify.app",
|
|
10
|
-
"license": "MIT",
|
|
11
|
-
"dependencies": {
|
|
12
|
-
"@popperjs/core": "2.11.5",
|
|
13
|
-
"react": "18.2.0",
|
|
14
|
-
"react-dom": "18.2.0",
|
|
15
|
-
"modern-normalize": "1.1.0"
|
|
16
|
-
},
|
|
17
|
-
"scripts": {
|
|
18
|
-
"pub": "npm publish --access public"
|
|
19
|
-
},
|
|
20
|
-
"keywords": [
|
|
21
|
-
"react",
|
|
22
|
-
"component library",
|
|
23
|
-
"ui library",
|
|
24
|
-
"components",
|
|
25
|
-
"library",
|
|
26
|
-
"material"
|
|
27
|
-
]
|
|
28
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "react-asc",
|
|
3
|
+
"version": "25.4.0",
|
|
4
|
+
"description": "handcrafted react components",
|
|
5
|
+
"main": "index.js",
|
|
6
|
+
"module": "index.es.js",
|
|
7
|
+
"jsnext:main": "index.es.js",
|
|
8
|
+
"author": "Ardian Shala",
|
|
9
|
+
"homepage": "https://react-asc.netlify.app",
|
|
10
|
+
"license": "MIT",
|
|
11
|
+
"dependencies": {
|
|
12
|
+
"@popperjs/core": "2.11.5",
|
|
13
|
+
"react": "18.2.0",
|
|
14
|
+
"react-dom": "18.2.0",
|
|
15
|
+
"modern-normalize": "1.1.0"
|
|
16
|
+
},
|
|
17
|
+
"scripts": {
|
|
18
|
+
"pub": "npm publish --access public"
|
|
19
|
+
},
|
|
20
|
+
"keywords": [
|
|
21
|
+
"react",
|
|
22
|
+
"component library",
|
|
23
|
+
"ui library",
|
|
24
|
+
"components",
|
|
25
|
+
"library",
|
|
26
|
+
"material"
|
|
27
|
+
]
|
|
28
|
+
}
|
package/react-asc.scss
CHANGED
|
@@ -1,354 +1,354 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--breakpoint-xs: 0;
|
|
3
|
-
--breakpoint-sm: 576px;
|
|
4
|
-
--breakpoint-md: 768px;
|
|
5
|
-
--breakpoint-lg: 992px;
|
|
6
|
-
--breakpoint-xl: 1200px;
|
|
7
|
-
--breakpoint-xxl: 1400px;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
:root {
|
|
11
|
-
--buttonMinWidth: 62px;
|
|
12
|
-
--buttonPadding: 11px 15px;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
:root {
|
|
16
|
-
--primary-light: #6573c3;
|
|
17
|
-
--primary: #3f51b5;
|
|
18
|
-
--primary-dark: #2c387e;
|
|
19
|
-
--primary-contrast-text: #fff;
|
|
20
|
-
--primary-highlight: #d6dbf7;
|
|
21
|
-
|
|
22
|
-
--secondary-light: #e5e7eb;
|
|
23
|
-
--secondary: #8f8f8f;
|
|
24
|
-
--secondary-dark: #9c9da1;
|
|
25
|
-
--secondary-contrast-text: #fff;
|
|
26
|
-
--secondary-highlight: rgb(233, 233, 233);
|
|
27
|
-
|
|
28
|
-
--accent-light: #fd96b8;
|
|
29
|
-
--accent: #ff4081;
|
|
30
|
-
--accent-dark: #fd2c72;
|
|
31
|
-
--accent-contrast-text: #fff;
|
|
32
|
-
--accent-highlight: #fca9c5;
|
|
33
|
-
|
|
34
|
-
// rename!?
|
|
35
|
-
--light-light: #ffffff;
|
|
36
|
-
--light: #f8f9fa;
|
|
37
|
-
--light-dark: #ebebeb;
|
|
38
|
-
--light-contrast-text: #212529;
|
|
39
|
-
--light-highlight: #f8f9fa;
|
|
40
|
-
|
|
41
|
-
--dark-light: #616468;
|
|
42
|
-
--dark: #343a40;
|
|
43
|
-
--dark-dark: #343a40;
|
|
44
|
-
--dark-contrast-text: #fff;
|
|
45
|
-
--dark-highlight: #5e6164;
|
|
46
|
-
|
|
47
|
-
--white: #fff;
|
|
48
|
-
|
|
49
|
-
--bodyBg: white;
|
|
50
|
-
--bodyColor: #212529;
|
|
51
|
-
|
|
52
|
-
--highlight: rgba(204, 216, 224, 0.2); // ???
|
|
53
|
-
|
|
54
|
-
--shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14),
|
|
55
|
-
0px 1px 5px 0px rgba(0, 0, 0, 0.12);
|
|
56
|
-
|
|
57
|
-
--shadowColor: rgba(0, 0, 0, 0.12);
|
|
58
|
-
|
|
59
|
-
--muted: #6c757d !important;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
:root {
|
|
63
|
-
--fontFamily: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans",
|
|
64
|
-
sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
65
|
-
--fontSize: 16px;
|
|
66
|
-
--fontWeight: 400;
|
|
67
|
-
|
|
68
|
-
--fontLineHeight: 1.5;
|
|
69
|
-
|
|
70
|
-
--textBody1FontSize: 13px;
|
|
71
|
-
--textBody1LineHeight: 18px;
|
|
72
|
-
|
|
73
|
-
--textBody2FontSize: 13px;
|
|
74
|
-
--textBody2LineHeight: 18px;
|
|
75
|
-
|
|
76
|
-
--textOverlineFontSize: 13px;
|
|
77
|
-
--textOverlineLineHeight: 18px;
|
|
78
|
-
--textOverlineTransform: uppercase;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
:root {
|
|
82
|
-
.ml-0 {
|
|
83
|
-
margin-left: var(--0);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
.ml-1 {
|
|
87
|
-
margin-left: var(--1);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.ml-2 {
|
|
91
|
-
margin-left: var(--2);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
.ml-3 {
|
|
95
|
-
margin-left: var(--3);
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
.ml-auto {
|
|
99
|
-
margin-left: var(--auto);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
.mr-0 {
|
|
103
|
-
margin-right: var(--0);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
.mr-1 {
|
|
107
|
-
margin-right: var(--1);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
.mr-2 {
|
|
111
|
-
margin-right: var(--2);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
.mr-3 {
|
|
115
|
-
margin-right: var(--3);
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
.mr-auto {
|
|
119
|
-
margin-right: var(--auto);
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
.mt-0 {
|
|
123
|
-
margin-top: var(--0);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
.mt-1 {
|
|
127
|
-
margin-top: var(--1);
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
.mt-2 {
|
|
131
|
-
margin-top: var(--2);
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
.mt-3 {
|
|
135
|
-
margin-top: var(--3);
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
.mt-4 {
|
|
139
|
-
margin-top: var(--4);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
.mb-0 {
|
|
143
|
-
margin-bottom: var(--0);
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
.mb-1 {
|
|
147
|
-
margin-bottom: var(--1);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
.mb-2 {
|
|
151
|
-
margin-bottom: var(--2);
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
.mb-3 {
|
|
155
|
-
margin-bottom: var(--3);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
:root {
|
|
160
|
-
.pt-1 {
|
|
161
|
-
padding-top: var(--1);
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
.pt-2 {
|
|
165
|
-
padding-top: var(--2);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
.pt-3 {
|
|
169
|
-
padding-top: var(--3);
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
.pb-1 {
|
|
173
|
-
padding-bottom: var(--1);
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
.pb-2 {
|
|
177
|
-
padding-bottom: var(--2);
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
.pb-3 {
|
|
181
|
-
padding-bottom: var(--3);
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
.pb-4 {
|
|
185
|
-
padding-bottom: var(--4);
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
.p-3 {
|
|
189
|
-
padding: var(--3);
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
.p-1 {
|
|
193
|
-
padding: var(--1);
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
.p-2 {
|
|
197
|
-
padding: var(--2);
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
.p-3 {
|
|
201
|
-
padding: var(--3);
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
.p-4 {
|
|
205
|
-
padding: var(--3);
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
.pt-0 {
|
|
209
|
-
padding-top: var(--0);
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
.pb-0 {
|
|
213
|
-
padding-bottom: var(--0);
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
:root {
|
|
218
|
-
--borderRadius: 5px;
|
|
219
|
-
--0: 0px !important;
|
|
220
|
-
--1: 15px !important;
|
|
221
|
-
--2: 25px !important;
|
|
222
|
-
--3: 35px !important;
|
|
223
|
-
--4: 45px !important;
|
|
224
|
-
--auto: auto !important;
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
.input-group-append {
|
|
228
|
-
.btn {
|
|
229
|
-
min-width: auto;
|
|
230
|
-
|
|
231
|
-
.svg-icon {
|
|
232
|
-
margin-left: 0;
|
|
233
|
-
margin-right: 0;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
.text-muted {
|
|
239
|
-
color: var(--muted);
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
.flex-1 {
|
|
243
|
-
flex: 1;
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
.d-flex {
|
|
247
|
-
display: flex !important;
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
.justify-content-center {
|
|
251
|
-
justify-content: center !important;
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
.align-items-center {
|
|
255
|
-
align-items: center !important;
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
.flex-wrap {
|
|
259
|
-
flex-wrap: wrap;
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
.flex-row {
|
|
263
|
-
flex-direction: row;
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
.flex-row-reverse {
|
|
267
|
-
flex-direction: row-reverse;
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
.flex-column {
|
|
271
|
-
flex-direction: column;
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
.flex-column-reverse {
|
|
275
|
-
flex-direction: column-reverse;
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
.w-100 {
|
|
279
|
-
width: 100%;
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
.h-100 {
|
|
283
|
-
height: 100%;
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
.text-center {
|
|
287
|
-
text-align: center;
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
.text-uppercase {
|
|
291
|
-
text-transform: uppercase;
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
.rounded-pill {
|
|
295
|
-
border-radius: 50rem !important;
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
.fw-bold {
|
|
299
|
-
font-weight: 700!important;
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
@media (max-width: 576px) {
|
|
303
|
-
.flex-row {
|
|
304
|
-
flex-direction: column !important;
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
@media (min-width: 768px) {
|
|
308
|
-
.justify-content-md-center {
|
|
309
|
-
justify-content: center !important;
|
|
310
|
-
}
|
|
311
|
-
.align-items-md-center {
|
|
312
|
-
align-items: center !important;
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
.modal-open {
|
|
317
|
-
overflow: hidden !important;
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
* {
|
|
322
|
-
min-width: 0;
|
|
323
|
-
min-height: 0;
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
label.required {
|
|
327
|
-
&::after {
|
|
328
|
-
display: inline-block;
|
|
329
|
-
line-height: 0.8;
|
|
330
|
-
content: "*";
|
|
331
|
-
vertical-align: text-top;
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
.overline {
|
|
336
|
-
font-size: var(--textOverlineFontSize) !important;
|
|
337
|
-
line-height: var(--textOverlineLineHeight) !important;
|
|
338
|
-
text-transform: var(--textOverlineTransform) !important;
|
|
339
|
-
font-weight: bold;
|
|
340
|
-
}
|
|
341
|
-
|
|
342
|
-
.body1 {
|
|
343
|
-
font-size: var(--textBody1FontSize) !important;
|
|
344
|
-
line-height: var(--textBody1LineHeight) !important;
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
.body2 {
|
|
348
|
-
font-size: var(--textBody2FontSize) !important;
|
|
349
|
-
line-height: var(--textBody2LineHeight) !important;
|
|
350
|
-
}
|
|
351
|
-
|
|
352
|
-
.uppercase {
|
|
353
|
-
text-transform: uppercase !important;
|
|
354
|
-
}
|
|
1
|
+
:root {
|
|
2
|
+
--breakpoint-xs: 0;
|
|
3
|
+
--breakpoint-sm: 576px;
|
|
4
|
+
--breakpoint-md: 768px;
|
|
5
|
+
--breakpoint-lg: 992px;
|
|
6
|
+
--breakpoint-xl: 1200px;
|
|
7
|
+
--breakpoint-xxl: 1400px;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
:root {
|
|
11
|
+
--buttonMinWidth: 62px;
|
|
12
|
+
--buttonPadding: 11px 15px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
:root {
|
|
16
|
+
--primary-light: #6573c3;
|
|
17
|
+
--primary: #3f51b5;
|
|
18
|
+
--primary-dark: #2c387e;
|
|
19
|
+
--primary-contrast-text: #fff;
|
|
20
|
+
--primary-highlight: #d6dbf7;
|
|
21
|
+
|
|
22
|
+
--secondary-light: #e5e7eb;
|
|
23
|
+
--secondary: #8f8f8f;
|
|
24
|
+
--secondary-dark: #9c9da1;
|
|
25
|
+
--secondary-contrast-text: #fff;
|
|
26
|
+
--secondary-highlight: rgb(233, 233, 233);
|
|
27
|
+
|
|
28
|
+
--accent-light: #fd96b8;
|
|
29
|
+
--accent: #ff4081;
|
|
30
|
+
--accent-dark: #fd2c72;
|
|
31
|
+
--accent-contrast-text: #fff;
|
|
32
|
+
--accent-highlight: #fca9c5;
|
|
33
|
+
|
|
34
|
+
// rename!?
|
|
35
|
+
--light-light: #ffffff;
|
|
36
|
+
--light: #f8f9fa;
|
|
37
|
+
--light-dark: #ebebeb;
|
|
38
|
+
--light-contrast-text: #212529;
|
|
39
|
+
--light-highlight: #f8f9fa;
|
|
40
|
+
|
|
41
|
+
--dark-light: #616468;
|
|
42
|
+
--dark: #343a40;
|
|
43
|
+
--dark-dark: #343a40;
|
|
44
|
+
--dark-contrast-text: #fff;
|
|
45
|
+
--dark-highlight: #5e6164;
|
|
46
|
+
|
|
47
|
+
--white: #fff;
|
|
48
|
+
|
|
49
|
+
--bodyBg: white;
|
|
50
|
+
--bodyColor: #212529;
|
|
51
|
+
|
|
52
|
+
--highlight: rgba(204, 216, 224, 0.2); // ???
|
|
53
|
+
|
|
54
|
+
--shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14),
|
|
55
|
+
0px 1px 5px 0px rgba(0, 0, 0, 0.12);
|
|
56
|
+
|
|
57
|
+
--shadowColor: rgba(0, 0, 0, 0.12);
|
|
58
|
+
|
|
59
|
+
--muted: #6c757d !important;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
:root {
|
|
63
|
+
--fontFamily: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans",
|
|
64
|
+
sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
65
|
+
--fontSize: 16px;
|
|
66
|
+
--fontWeight: 400;
|
|
67
|
+
|
|
68
|
+
--fontLineHeight: 1.5;
|
|
69
|
+
|
|
70
|
+
--textBody1FontSize: 13px;
|
|
71
|
+
--textBody1LineHeight: 18px;
|
|
72
|
+
|
|
73
|
+
--textBody2FontSize: 13px;
|
|
74
|
+
--textBody2LineHeight: 18px;
|
|
75
|
+
|
|
76
|
+
--textOverlineFontSize: 13px;
|
|
77
|
+
--textOverlineLineHeight: 18px;
|
|
78
|
+
--textOverlineTransform: uppercase;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
:root {
|
|
82
|
+
.ml-0 {
|
|
83
|
+
margin-left: var(--0);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.ml-1 {
|
|
87
|
+
margin-left: var(--1);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.ml-2 {
|
|
91
|
+
margin-left: var(--2);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.ml-3 {
|
|
95
|
+
margin-left: var(--3);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.ml-auto {
|
|
99
|
+
margin-left: var(--auto);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.mr-0 {
|
|
103
|
+
margin-right: var(--0);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.mr-1 {
|
|
107
|
+
margin-right: var(--1);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.mr-2 {
|
|
111
|
+
margin-right: var(--2);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.mr-3 {
|
|
115
|
+
margin-right: var(--3);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.mr-auto {
|
|
119
|
+
margin-right: var(--auto);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.mt-0 {
|
|
123
|
+
margin-top: var(--0);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.mt-1 {
|
|
127
|
+
margin-top: var(--1);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.mt-2 {
|
|
131
|
+
margin-top: var(--2);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.mt-3 {
|
|
135
|
+
margin-top: var(--3);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.mt-4 {
|
|
139
|
+
margin-top: var(--4);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.mb-0 {
|
|
143
|
+
margin-bottom: var(--0);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
.mb-1 {
|
|
147
|
+
margin-bottom: var(--1);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.mb-2 {
|
|
151
|
+
margin-bottom: var(--2);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.mb-3 {
|
|
155
|
+
margin-bottom: var(--3);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
:root {
|
|
160
|
+
.pt-1 {
|
|
161
|
+
padding-top: var(--1);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
.pt-2 {
|
|
165
|
+
padding-top: var(--2);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.pt-3 {
|
|
169
|
+
padding-top: var(--3);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.pb-1 {
|
|
173
|
+
padding-bottom: var(--1);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
.pb-2 {
|
|
177
|
+
padding-bottom: var(--2);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.pb-3 {
|
|
181
|
+
padding-bottom: var(--3);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.pb-4 {
|
|
185
|
+
padding-bottom: var(--4);
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
.p-3 {
|
|
189
|
+
padding: var(--3);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.p-1 {
|
|
193
|
+
padding: var(--1);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
.p-2 {
|
|
197
|
+
padding: var(--2);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
.p-3 {
|
|
201
|
+
padding: var(--3);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
.p-4 {
|
|
205
|
+
padding: var(--3);
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
.pt-0 {
|
|
209
|
+
padding-top: var(--0);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
.pb-0 {
|
|
213
|
+
padding-bottom: var(--0);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
:root {
|
|
218
|
+
--borderRadius: 5px;
|
|
219
|
+
--0: 0px !important;
|
|
220
|
+
--1: 15px !important;
|
|
221
|
+
--2: 25px !important;
|
|
222
|
+
--3: 35px !important;
|
|
223
|
+
--4: 45px !important;
|
|
224
|
+
--auto: auto !important;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
.input-group-append {
|
|
228
|
+
.btn {
|
|
229
|
+
min-width: auto;
|
|
230
|
+
|
|
231
|
+
.svg-icon {
|
|
232
|
+
margin-left: 0;
|
|
233
|
+
margin-right: 0;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
.text-muted {
|
|
239
|
+
color: var(--muted);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
.flex-1 {
|
|
243
|
+
flex: 1;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
.d-flex {
|
|
247
|
+
display: flex !important;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
.justify-content-center {
|
|
251
|
+
justify-content: center !important;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
.align-items-center {
|
|
255
|
+
align-items: center !important;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
.flex-wrap {
|
|
259
|
+
flex-wrap: wrap;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
.flex-row {
|
|
263
|
+
flex-direction: row;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
.flex-row-reverse {
|
|
267
|
+
flex-direction: row-reverse;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
.flex-column {
|
|
271
|
+
flex-direction: column;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
.flex-column-reverse {
|
|
275
|
+
flex-direction: column-reverse;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
.w-100 {
|
|
279
|
+
width: 100%;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
.h-100 {
|
|
283
|
+
height: 100%;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
.text-center {
|
|
287
|
+
text-align: center;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
.text-uppercase {
|
|
291
|
+
text-transform: uppercase;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
.rounded-pill {
|
|
295
|
+
border-radius: 50rem !important;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
.fw-bold {
|
|
299
|
+
font-weight: 700!important;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
@media (max-width: 576px) {
|
|
303
|
+
.flex-row {
|
|
304
|
+
flex-direction: column !important;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
@media (min-width: 768px) {
|
|
308
|
+
.justify-content-md-center {
|
|
309
|
+
justify-content: center !important;
|
|
310
|
+
}
|
|
311
|
+
.align-items-md-center {
|
|
312
|
+
align-items: center !important;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
.modal-open {
|
|
317
|
+
overflow: hidden !important;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
* {
|
|
322
|
+
min-width: 0;
|
|
323
|
+
min-height: 0;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
label.required {
|
|
327
|
+
&::after {
|
|
328
|
+
display: inline-block;
|
|
329
|
+
line-height: 0.8;
|
|
330
|
+
content: "*";
|
|
331
|
+
vertical-align: text-top;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.overline {
|
|
336
|
+
font-size: var(--textOverlineFontSize) !important;
|
|
337
|
+
line-height: var(--textOverlineLineHeight) !important;
|
|
338
|
+
text-transform: var(--textOverlineTransform) !important;
|
|
339
|
+
font-weight: bold;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
.body1 {
|
|
343
|
+
font-size: var(--textBody1FontSize) !important;
|
|
344
|
+
line-height: var(--textBody1LineHeight) !important;
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
.body2 {
|
|
348
|
+
font-size: var(--textBody2FontSize) !important;
|
|
349
|
+
line-height: var(--textBody2LineHeight) !important;
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
.uppercase {
|
|
353
|
+
text-transform: uppercase !important;
|
|
354
|
+
}
|
package/readme.md
CHANGED
|
@@ -1,91 +1,91 @@
|
|
|
1
|
-
# react-asc
|
|
2
|
-
|
|
3
|
-
handcrafted components inspired by Material Design and bundled with rollup.
|
|
4
|
-
|
|
5
|
-
## showcase
|
|
6
|
-
|
|
7
|
-
react-asc interactive showcase [link](https://react-asc.netlify.app)
|
|
8
|
-
|
|
9
|
-
## usage
|
|
10
|
-
|
|
11
|
-
### install package
|
|
12
|
-
|
|
13
|
-
`npm install react-asc`
|
|
14
|
-
|
|
15
|
-
### install modern-normalize
|
|
16
|
-
|
|
17
|
-
`npm install modern-normalize`
|
|
18
|
-
|
|
19
|
-
### Include styles
|
|
20
|
-
|
|
21
|
-
```scss
|
|
22
|
-
@import "modern-normalize";
|
|
23
|
-
@import "react-asc/react-asc.scss";
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
### Usage
|
|
27
|
-
|
|
28
|
-
```js
|
|
29
|
-
import React from "react";
|
|
30
|
-
import { Button } from "react-asc";
|
|
31
|
-
|
|
32
|
-
const MyApp = () => {
|
|
33
|
-
return <Button>some button</Button>;
|
|
34
|
-
};
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
## TypeScript
|
|
39
|
-
react-asc provides built-in ts definition
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
## Included Components
|
|
43
|
-
|
|
44
|
-
- Alert (beta)
|
|
45
|
-
- AppBar
|
|
46
|
-
- AutoComplete (beta)
|
|
47
|
-
- Backdrop
|
|
48
|
-
- Badge
|
|
49
|
-
- Breadcrumb
|
|
50
|
-
- Button
|
|
51
|
-
- ButtonGroup
|
|
52
|
-
- Card
|
|
53
|
-
- Checkbox
|
|
54
|
-
- Chip
|
|
55
|
-
- CssTransition
|
|
56
|
-
- ConditionalWrapper
|
|
57
|
-
- DateSelect
|
|
58
|
-
- Drawer
|
|
59
|
-
- ExpansionPanel
|
|
60
|
-
- FileInput
|
|
61
|
-
- FloatingActionButton
|
|
62
|
-
- Form (beta)
|
|
63
|
-
- Grid
|
|
64
|
-
- Icon
|
|
65
|
-
- IconButton
|
|
66
|
-
- Link
|
|
67
|
-
- List
|
|
68
|
-
- LoadingIndicator
|
|
69
|
-
- Menu
|
|
70
|
-
- Modal + ModalService
|
|
71
|
-
- NumberSelect
|
|
72
|
-
Portal
|
|
73
|
-
- Select
|
|
74
|
-
- Sidebar
|
|
75
|
-
- Skeleton (Avatar, Image, Text, SkeletonFooter)
|
|
76
|
-
- Snackbar + SnackbarService
|
|
77
|
-
- SpeedDial
|
|
78
|
-
- Stepper (beta)
|
|
79
|
-
- Table (beta)
|
|
80
|
-
- Tabs
|
|
81
|
-
- Textarea
|
|
82
|
-
- TimeSelect
|
|
83
|
-
- Tooltip
|
|
84
|
-
- TreeView (beta)
|
|
85
|
-
- Typography
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
## Credit
|
|
89
|
-
|
|
90
|
-
uses fontawesome icons as SVGs
|
|
91
|
-
https://fontawesome.com/license
|
|
1
|
+
# react-asc
|
|
2
|
+
|
|
3
|
+
handcrafted components inspired by Material Design and bundled with rollup.
|
|
4
|
+
|
|
5
|
+
## showcase
|
|
6
|
+
|
|
7
|
+
react-asc interactive showcase [link](https://react-asc.netlify.app)
|
|
8
|
+
|
|
9
|
+
## usage
|
|
10
|
+
|
|
11
|
+
### install package
|
|
12
|
+
|
|
13
|
+
`npm install react-asc`
|
|
14
|
+
|
|
15
|
+
### install modern-normalize
|
|
16
|
+
|
|
17
|
+
`npm install modern-normalize`
|
|
18
|
+
|
|
19
|
+
### Include styles
|
|
20
|
+
|
|
21
|
+
```scss
|
|
22
|
+
@import "modern-normalize";
|
|
23
|
+
@import "react-asc/react-asc.scss";
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Usage
|
|
27
|
+
|
|
28
|
+
```js
|
|
29
|
+
import React from "react";
|
|
30
|
+
import { Button } from "react-asc";
|
|
31
|
+
|
|
32
|
+
const MyApp = () => {
|
|
33
|
+
return <Button>some button</Button>;
|
|
34
|
+
};
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## TypeScript
|
|
39
|
+
react-asc provides built-in ts definition
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## Included Components
|
|
43
|
+
|
|
44
|
+
- Alert (beta)
|
|
45
|
+
- AppBar
|
|
46
|
+
- AutoComplete (beta)
|
|
47
|
+
- Backdrop
|
|
48
|
+
- Badge
|
|
49
|
+
- Breadcrumb
|
|
50
|
+
- Button
|
|
51
|
+
- ButtonGroup
|
|
52
|
+
- Card
|
|
53
|
+
- Checkbox
|
|
54
|
+
- Chip
|
|
55
|
+
- CssTransition
|
|
56
|
+
- ConditionalWrapper
|
|
57
|
+
- DateSelect
|
|
58
|
+
- Drawer
|
|
59
|
+
- ExpansionPanel
|
|
60
|
+
- FileInput
|
|
61
|
+
- FloatingActionButton
|
|
62
|
+
- Form (beta)
|
|
63
|
+
- Grid
|
|
64
|
+
- Icon
|
|
65
|
+
- IconButton
|
|
66
|
+
- Link
|
|
67
|
+
- List
|
|
68
|
+
- LoadingIndicator
|
|
69
|
+
- Menu
|
|
70
|
+
- Modal + ModalService
|
|
71
|
+
- NumberSelect
|
|
72
|
+
Portal
|
|
73
|
+
- Select
|
|
74
|
+
- Sidebar
|
|
75
|
+
- Skeleton (Avatar, Image, Text, SkeletonFooter)
|
|
76
|
+
- Snackbar + SnackbarService
|
|
77
|
+
- SpeedDial
|
|
78
|
+
- Stepper (beta)
|
|
79
|
+
- Table (beta)
|
|
80
|
+
- Tabs
|
|
81
|
+
- Textarea
|
|
82
|
+
- TimeSelect
|
|
83
|
+
- Tooltip
|
|
84
|
+
- TreeView (beta)
|
|
85
|
+
- Typography
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
## Credit
|
|
89
|
+
|
|
90
|
+
uses fontawesome icons as SVGs
|
|
91
|
+
https://fontawesome.com/license
|