@ably/ui 14.0.0-dev.f6c8d86 → 14.0.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/core/Accordion.js +1 -1
- package/core/Code.js +1 -1
- package/core/ContactFooter/component.css +9 -7
- package/core/ContactFooter.js +1 -1
- package/core/CookieMessage/component.css +12 -10
- package/core/CookieMessage.js +1 -1
- package/core/Expander.js +1 -0
- package/core/Flash/component.css +21 -19
- package/core/Flash.js +1 -1
- package/core/Footer/component.css +24 -22
- package/core/Footer.js +1 -1
- package/core/Meganav/component.css +105 -103
- package/core/Meganav/component.js +1 -1
- package/core/Meganav.js +1 -1
- package/core/Notice/component.css +6 -4
- package/core/Notice/component.js +1 -1
- package/core/Notice.js +1 -1
- package/core/Slider/component.css +32 -30
- package/core/Slider/component.js +1 -1
- package/core/Slider.js +1 -1
- package/core/Table/Table.js +1 -1
- package/core/Table/TableCell.js +3 -3
- package/core/Table/data.js +1 -1
- package/core/Table.js +1 -1
- package/core/scripts.js +1 -1
- package/core/styles/buttons.css +123 -121
- package/core/styles/forms.css +51 -49
- package/core/styles/layout.css +16 -14
- package/core/styles/properties.css +252 -250
- package/core/styles/text.css +167 -165
- package/core/styles.components.css +24 -22
- package/core/utils/syntax-highlighter.css +59 -55
- package/package.json +2 -4
- package/src/core/Accordion.tsx +8 -6
- package/src/core/Code.tsx +0 -1
- package/src/core/ContactFooter/component.css +9 -7
- package/src/core/ContactFooter.tsx +0 -1
- package/src/core/CookieMessage/component.css +12 -10
- package/src/core/CookieMessage.tsx +0 -1
- package/src/core/Expander/Expander.stories.tsx +132 -0
- package/src/core/Expander.tsx +63 -0
- package/src/core/Flash/component.css +21 -19
- package/src/core/Flash.tsx +0 -1
- package/src/core/Footer/component.css +24 -22
- package/src/core/Footer.tsx +0 -1
- package/src/core/Meganav/component.css +105 -103
- package/src/core/Meganav/component.js +0 -2
- package/src/core/Meganav.tsx +0 -1
- package/src/core/Notice/component.css +6 -4
- package/src/core/Notice/component.js +0 -1
- package/src/core/Notice.tsx +0 -1
- package/src/core/Slider/Slider.stories.tsx +2 -2
- package/src/core/Slider/component.css +32 -30
- package/src/core/Slider/component.js +0 -2
- package/src/core/Slider.tsx +51 -20
- package/src/core/Table/Table.tsx +1 -2
- package/src/core/Table/TableCell.tsx +2 -40
- package/src/core/Table/data.tsx +21 -1
- package/src/core/Table.tsx +1 -12
- package/src/core/scripts.js +0 -2
- package/src/core/styles/buttons.css +123 -121
- package/src/core/styles/forms.css +51 -49
- package/src/core/styles/layout.css +16 -14
- package/src/core/styles/properties.css +252 -250
- package/src/core/styles/text.css +167 -165
- package/src/core/styles.components.css +24 -22
- package/src/core/utils/syntax-highlighter.css +59 -55
- package/core/.DS_Store +0 -0
- package/core/Accordion/.DS_Store +0 -0
- package/core/Code/.DS_Store +0 -0
- package/core/ContactFooter/.DS_Store +0 -0
- package/core/CookieMessage/.DS_Store +0 -0
- package/core/CustomerLogos/.DS_Store +0 -0
- package/core/DropdownMenu/.DS_Store +0 -0
- package/core/FeaturedLink/.DS_Store +0 -0
- package/core/Flash/.DS_Store +0 -0
- package/core/Footer/.DS_Store +0 -0
- package/core/Icon/.DS_Store +0 -0
- package/core/Loader/.DS_Store +0 -0
- package/core/Logo/.DS_Store +0 -0
- package/core/Meganav/.DS_Store +0 -0
- package/core/MeganavBlogPostsList/.DS_Store +0 -0
- package/core/MeganavControl/.DS_Store +0 -0
- package/core/MeganavControlMobileDropdown/.DS_Store +0 -0
- package/core/MeganavControlMobilePanelClose/.DS_Store +0 -0
- package/core/MeganavControlMobilePanelOpen/.DS_Store +0 -0
- package/core/MeganavSearchAutocomplete/.DS_Store +0 -0
- package/core/MeganavSearchSuggestions/.DS_Store +0 -0
- package/core/Notice/.DS_Store +0 -0
- package/core/Slider/.DS_Store +0 -0
- package/core/Table/.DS_Store +0 -0
- package/core/Tooltip/.DS_Store +0 -0
- package/src/.DS_Store +0 -0
- package/src/core/.DS_Store +0 -0
- package/src/core/Accordion/.DS_Store +0 -0
- package/src/core/Code/.DS_Store +0 -0
- package/src/core/ContactFooter/.DS_Store +0 -0
- package/src/core/CookieMessage/.DS_Store +0 -0
- package/src/core/CustomerLogos/.DS_Store +0 -0
- package/src/core/DropdownMenu/.DS_Store +0 -0
- package/src/core/FeaturedLink/.DS_Store +0 -0
- package/src/core/Flash/.DS_Store +0 -0
- package/src/core/Footer/.DS_Store +0 -0
- package/src/core/Icon/.DS_Store +0 -0
- package/src/core/Loader/.DS_Store +0 -0
- package/src/core/Logo/.DS_Store +0 -0
- package/src/core/Meganav/.DS_Store +0 -0
- package/src/core/MeganavBlogPostsList/.DS_Store +0 -0
- package/src/core/MeganavControl/.DS_Store +0 -0
- package/src/core/MeganavControlMobileDropdown/.DS_Store +0 -0
- package/src/core/MeganavControlMobilePanelClose/.DS_Store +0 -0
- package/src/core/MeganavControlMobilePanelOpen/.DS_Store +0 -0
- package/src/core/MeganavSearchAutocomplete/.DS_Store +0 -0
- package/src/core/MeganavSearchSuggestions/.DS_Store +0 -0
- package/src/core/Notice/.DS_Store +0 -0
- package/src/core/Slider/.DS_Store +0 -0
- package/src/core/Table/.DS_Store +0 -0
- package/src/core/Tooltip/.DS_Store +0 -0
|
@@ -1,38 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
@layer components {
|
|
2
|
+
.ui-slider-marker {
|
|
3
|
+
font-size: 0.5rem;
|
|
4
|
+
top: -1px;
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
@keyframes fillAnimation {
|
|
9
|
-
0% {
|
|
10
|
-
width: 0%;
|
|
11
|
-
}
|
|
12
|
-
100% {
|
|
13
|
-
width: 100%;
|
|
6
|
+
@apply leading-none px-4 relative;
|
|
14
7
|
}
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.ui-icon-cta {
|
|
18
|
-
@apply cursor-pointer overflow-hidden;
|
|
19
|
-
@apply rounded border-2 border-mid-grey hover:border-active-orange;
|
|
20
|
-
transition: all 0.4s;
|
|
21
|
-
}
|
|
22
8
|
|
|
23
|
-
@
|
|
24
|
-
|
|
25
|
-
|
|
9
|
+
@keyframes fillAnimation {
|
|
10
|
+
0% {
|
|
11
|
+
width: 0%;
|
|
12
|
+
}
|
|
13
|
+
100% {
|
|
14
|
+
width: 100%;
|
|
15
|
+
}
|
|
26
16
|
}
|
|
27
|
-
|
|
28
|
-
|
|
17
|
+
|
|
18
|
+
.ui-icon-cta {
|
|
19
|
+
@apply cursor-pointer overflow-hidden;
|
|
20
|
+
@apply rounded border-2 border-mid-grey hover:border-active-orange;
|
|
21
|
+
transition: all 0.4s;
|
|
29
22
|
}
|
|
30
|
-
|
|
31
|
-
|
|
23
|
+
|
|
24
|
+
@screen sm {
|
|
25
|
+
.ui-icon-cta-left:hover .ui-icon-cta-holder {
|
|
26
|
+
transform: translateX(-120%);
|
|
27
|
+
}
|
|
28
|
+
.ui-icon-cta-right .ui-icon-cta-holder {
|
|
29
|
+
transform: translateX(-120%);
|
|
30
|
+
}
|
|
31
|
+
.ui-icon-cta-right:hover .ui-icon-cta-holder {
|
|
32
|
+
transform: translateX(0%);
|
|
33
|
+
}
|
|
32
34
|
}
|
|
33
|
-
}
|
|
34
35
|
|
|
35
|
-
.ui-icon-cta-holder {
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
.ui-icon-cta-holder {
|
|
37
|
+
@apply w-full h-full;
|
|
38
|
+
transition: all 0.4s;
|
|
39
|
+
}
|
|
38
40
|
}
|
package/src/core/Slider.tsx
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React, { useState, useEffect, useRef, ReactNode } from "react";
|
|
2
|
-
import Icon from "
|
|
3
|
-
import "./Slider/component.css";
|
|
2
|
+
import Icon from "./Icon";
|
|
4
3
|
|
|
5
4
|
interface SliderProps {
|
|
6
5
|
children: ReactNode[];
|
|
@@ -19,6 +18,8 @@ interface SliderIndicatorProps {
|
|
|
19
18
|
isInline?: boolean;
|
|
20
19
|
}
|
|
21
20
|
|
|
21
|
+
const SLIDE_TRANSITION_LENGTH = 300;
|
|
22
|
+
|
|
22
23
|
const SlideIndicator = ({
|
|
23
24
|
numSlides,
|
|
24
25
|
activeIndex,
|
|
@@ -29,7 +30,7 @@ const SlideIndicator = ({
|
|
|
29
30
|
return (
|
|
30
31
|
<ul
|
|
31
32
|
className={`flex gap-4 left-1/2 ${
|
|
32
|
-
isInline ? "bottom-0" : "absolute
|
|
33
|
+
isInline ? "bottom-0" : "absolute bottom-0 transform -translate-x-1/2"
|
|
33
34
|
}`}
|
|
34
35
|
>
|
|
35
36
|
{Array.from({ length: numSlides }, (_, i) =>
|
|
@@ -39,12 +40,12 @@ const SlideIndicator = ({
|
|
|
39
40
|
className="relative w-40 h-4 mx-1 rounded-full bg-neutral-500"
|
|
40
41
|
>
|
|
41
42
|
{i === activeIndex && (
|
|
42
|
-
<
|
|
43
|
+
<span
|
|
43
44
|
className="absolute inset-0 rounded-full bg-active-orange"
|
|
44
45
|
style={{
|
|
45
46
|
animation: `fillAnimation ${interval}ms linear`,
|
|
46
47
|
}}
|
|
47
|
-
></
|
|
48
|
+
></span>
|
|
48
49
|
)}
|
|
49
50
|
</li>
|
|
50
51
|
) : (
|
|
@@ -64,24 +65,43 @@ const SlideIndicator = ({
|
|
|
64
65
|
);
|
|
65
66
|
};
|
|
66
67
|
|
|
68
|
+
const setupSlides = (children: ReactNode[], activeIndex: number) => [
|
|
69
|
+
children[activeIndex === 0 ? children.length - 1 : activeIndex - 1],
|
|
70
|
+
children[activeIndex],
|
|
71
|
+
children[activeIndex === children.length - 1 ? 0 : activeIndex + 1],
|
|
72
|
+
];
|
|
73
|
+
|
|
67
74
|
const Slider = ({ children, options }: SliderProps) => {
|
|
68
75
|
const [activeIndex, setActiveIndex] = useState(0);
|
|
69
76
|
const [touchStartX, setTouchStartX] = useState(0);
|
|
70
77
|
const [touchEndX, setTouchEndX] = useState(0);
|
|
78
|
+
const [slides, setSlides] = useState<ReactNode[]>(
|
|
79
|
+
setupSlides(children, activeIndex)
|
|
80
|
+
);
|
|
81
|
+
const [translationCoefficient, setTranslationCoefficient] = useState(0);
|
|
71
82
|
const timerRef = useRef<NodeJS.Timeout | null>(null);
|
|
83
|
+
const [slideLock, setSlideLock] = useState(false);
|
|
72
84
|
|
|
73
85
|
const isInline = options?.controlPosition === "inline";
|
|
74
86
|
|
|
75
87
|
const next = () => {
|
|
76
|
-
|
|
77
|
-
|
|
88
|
+
if (!slideLock) {
|
|
89
|
+
setActiveIndex((prevIndex) => (prevIndex + 1) % children.length);
|
|
90
|
+
setTranslationCoefficient(1);
|
|
91
|
+
resetInterval();
|
|
92
|
+
setSlideLock(true);
|
|
93
|
+
}
|
|
78
94
|
};
|
|
79
95
|
|
|
80
96
|
const prev = () => {
|
|
81
|
-
|
|
82
|
-
prevIndex
|
|
83
|
-
|
|
84
|
-
|
|
97
|
+
if (!slideLock) {
|
|
98
|
+
setActiveIndex((prevIndex) =>
|
|
99
|
+
prevIndex > 0 ? prevIndex - 1 : children.length - 1
|
|
100
|
+
);
|
|
101
|
+
setTranslationCoefficient(-1);
|
|
102
|
+
resetInterval();
|
|
103
|
+
setSlideLock(true);
|
|
104
|
+
}
|
|
85
105
|
};
|
|
86
106
|
|
|
87
107
|
const resetInterval = () => {
|
|
@@ -113,6 +133,14 @@ const Slider = ({ children, options }: SliderProps) => {
|
|
|
113
133
|
};
|
|
114
134
|
}, [children.length, options?.interval]);
|
|
115
135
|
|
|
136
|
+
useEffect(() => {
|
|
137
|
+
setTimeout(() => {
|
|
138
|
+
setSlides(setupSlides(children, activeIndex));
|
|
139
|
+
setTranslationCoefficient(0);
|
|
140
|
+
setSlideLock(false);
|
|
141
|
+
}, SLIDE_TRANSITION_LENGTH);
|
|
142
|
+
}, [activeIndex]);
|
|
143
|
+
|
|
116
144
|
return (
|
|
117
145
|
<div
|
|
118
146
|
className="relative"
|
|
@@ -120,18 +148,21 @@ const Slider = ({ children, options }: SliderProps) => {
|
|
|
120
148
|
onTouchMove={handleTouchMove}
|
|
121
149
|
onTouchEnd={handleTouchEnd}
|
|
122
150
|
>
|
|
123
|
-
<div className="overflow-
|
|
151
|
+
<div className="overflow-y-visible overflow-x-clip w-full py-40">
|
|
124
152
|
<div
|
|
125
|
-
className=
|
|
126
|
-
|
|
153
|
+
className={`flex items-center ${
|
|
154
|
+
translationCoefficient !== 0
|
|
155
|
+
? `transition-transform ease-in-out duration-${SLIDE_TRANSITION_LENGTH}`
|
|
156
|
+
: ""
|
|
157
|
+
} `}
|
|
158
|
+
style={{
|
|
159
|
+
transform: `translateX(-${(translationCoefficient + 1) * 100}%)`,
|
|
160
|
+
}}
|
|
127
161
|
>
|
|
128
|
-
{
|
|
162
|
+
{slides.map((child, index) => (
|
|
129
163
|
<div
|
|
130
164
|
key={index}
|
|
131
|
-
className="w-full flex-shrink-0 flex justify-center sm:px-60
|
|
132
|
-
style={{
|
|
133
|
-
opacity: activeIndex === index ? 1 : 0.1,
|
|
134
|
-
}}
|
|
165
|
+
className="w-full flex-shrink-0 flex justify-center sm:px-60"
|
|
135
166
|
>
|
|
136
167
|
{child}
|
|
137
168
|
</div>
|
|
@@ -142,7 +173,7 @@ const Slider = ({ children, options }: SliderProps) => {
|
|
|
142
173
|
<div
|
|
143
174
|
className={`flex items-center pointer-events-none ${
|
|
144
175
|
isInline
|
|
145
|
-
? "ui-standard-container justify-center gap-24"
|
|
176
|
+
? "ui-standard-container justify-center gap-24 -mt-16"
|
|
146
177
|
: "sm:flex sm:absolute inset-0 justify-between"
|
|
147
178
|
}`}
|
|
148
179
|
>
|
package/src/core/Table/Table.tsx
CHANGED
|
@@ -49,10 +49,9 @@ export const TableRowHeader = ({
|
|
|
49
49
|
...rest
|
|
50
50
|
}: PropsWithChildren<TableHTMLAttributes<HTMLTableRowElement>>) => (
|
|
51
51
|
<tr
|
|
52
|
-
className={`-ml-24 mt-8 sm:ml-0 sm:mt-0
|
|
52
|
+
className={`-ml-24 mt-8 sm:ml-0 sm:mt-0 sm:sticky z-10 ${
|
|
53
53
|
rest?.className ?? ""
|
|
54
54
|
}`}
|
|
55
|
-
style={{ top: "4rem" }}
|
|
56
55
|
>
|
|
57
56
|
{cloneElement(children as ReactElement, { isRowHeader: true })}
|
|
58
57
|
</tr>
|
|
@@ -1,45 +1,15 @@
|
|
|
1
1
|
import React, { PropsWithChildren } from "react";
|
|
2
|
-
import Icon from "../Icon";
|
|
3
2
|
|
|
4
3
|
type TableCellProps = {
|
|
5
4
|
isRowHeader?: boolean;
|
|
6
5
|
} & React.TdHTMLAttributes<HTMLTableCellElement>;
|
|
7
6
|
|
|
8
|
-
const Supported = () => (
|
|
9
|
-
<Icon
|
|
10
|
-
name="icon-gui-check-circled-fill"
|
|
11
|
-
size="1.5rem"
|
|
12
|
-
color="text-gui-success"
|
|
13
|
-
additionalCSS="flex-grow-0 flex-shrink-0"
|
|
14
|
-
data-testid="supported-icon"
|
|
15
|
-
/>
|
|
16
|
-
);
|
|
17
|
-
|
|
18
|
-
const Unsupported = () => (
|
|
19
|
-
<Icon
|
|
20
|
-
name="icon-gui-cross-circled-fill"
|
|
21
|
-
size="1.5rem"
|
|
22
|
-
color="text-gui-error"
|
|
23
|
-
additionalCSS="flex-grow-0 flex-shrink-0"
|
|
24
|
-
data-testid="unsupported-icon"
|
|
25
|
-
/>
|
|
26
|
-
);
|
|
27
|
-
|
|
28
|
-
const Partial = () => (
|
|
29
|
-
<Icon
|
|
30
|
-
name="icon-gui-partial"
|
|
31
|
-
size="1.5rem"
|
|
32
|
-
additionalCSS="flex-grow-0 flex-shrink-0"
|
|
33
|
-
data-testid="partial-icon"
|
|
34
|
-
/>
|
|
35
|
-
);
|
|
36
|
-
|
|
37
7
|
const LabelCell = ({
|
|
38
8
|
children,
|
|
39
9
|
...rest
|
|
40
10
|
}: PropsWithChildren<React.TdHTMLAttributes<HTMLTableCellElement>>) => {
|
|
41
11
|
const classes = `
|
|
42
|
-
ui-text-p1
|
|
12
|
+
ui-text-p1 font-bold pt-24 pb-8 border-light-grey sm:p-24 sm:relative sm:top-2 flex sm:table-cell ${
|
|
43
13
|
rest?.className ?? ""
|
|
44
14
|
}
|
|
45
15
|
`;
|
|
@@ -98,12 +68,4 @@ const CtaCell = ({
|
|
|
98
68
|
</td>
|
|
99
69
|
);
|
|
100
70
|
|
|
101
|
-
export {
|
|
102
|
-
TableCell,
|
|
103
|
-
LabelCell,
|
|
104
|
-
HeaderCell,
|
|
105
|
-
CtaCell,
|
|
106
|
-
Supported,
|
|
107
|
-
Unsupported,
|
|
108
|
-
Partial,
|
|
109
|
-
};
|
|
71
|
+
export { TableCell, LabelCell, HeaderCell, CtaCell };
|
package/src/core/Table/data.tsx
CHANGED
|
@@ -1,8 +1,28 @@
|
|
|
1
1
|
import React, { Fragment } from "react";
|
|
2
2
|
|
|
3
3
|
import Tooltip from "../Tooltip";
|
|
4
|
-
import { Supported, Unsupported } from "./TableCell";
|
|
5
4
|
import Table from "../Table";
|
|
5
|
+
import Icon from "../Icon";
|
|
6
|
+
|
|
7
|
+
const Supported = () => (
|
|
8
|
+
<Icon
|
|
9
|
+
name="icon-gui-check-circled-fill"
|
|
10
|
+
size="1.5rem"
|
|
11
|
+
color="text-gui-success"
|
|
12
|
+
additionalCSS="flex-grow-0 flex-shrink-0"
|
|
13
|
+
data-testid="supported-icon"
|
|
14
|
+
/>
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
const Unsupported = () => (
|
|
18
|
+
<Icon
|
|
19
|
+
name="icon-gui-cross-circled-fill"
|
|
20
|
+
size="1.5rem"
|
|
21
|
+
color="text-gui-error"
|
|
22
|
+
additionalCSS="flex-grow-0 flex-shrink-0"
|
|
23
|
+
data-testid="unsupported-icon"
|
|
24
|
+
/>
|
|
25
|
+
);
|
|
6
26
|
|
|
7
27
|
const testRow = (index) => ({
|
|
8
28
|
label: `Label ${index + 1}`,
|
package/src/core/Table.tsx
CHANGED
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { Table, TableRowHeader, TableHeader, TableBody } from "./Table/Table";
|
|
2
2
|
import { TableRow } from "./Table/TableRow";
|
|
3
|
-
import {
|
|
4
|
-
TableCell,
|
|
5
|
-
LabelCell,
|
|
6
|
-
HeaderCell,
|
|
7
|
-
CtaCell,
|
|
8
|
-
Supported,
|
|
9
|
-
Unsupported,
|
|
10
|
-
Partial,
|
|
11
|
-
} from "./Table/TableCell";
|
|
3
|
+
import { TableCell, LabelCell, HeaderCell, CtaCell } from "./Table/TableCell";
|
|
12
4
|
|
|
13
5
|
export default {
|
|
14
6
|
Root: Table,
|
|
@@ -20,7 +12,4 @@ export default {
|
|
|
20
12
|
RowHeader: TableRowHeader,
|
|
21
13
|
Body: TableBody,
|
|
22
14
|
Header: TableHeader,
|
|
23
|
-
Supported,
|
|
24
|
-
Unsupported,
|
|
25
|
-
Partial,
|
|
26
15
|
};
|
package/src/core/scripts.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import "array-flat-polyfill";
|
|
2
2
|
|
|
3
|
-
import "./styles.css";
|
|
4
|
-
|
|
5
3
|
export { default as reactRenderer, renderComponent } from "./react-renderer";
|
|
6
4
|
export { default as loadSprites } from "./load-sprites";
|
|
7
5
|
export { default as toggleChatWidget } from "./hubspot-chat-toggle";
|
|
@@ -1,122 +1,124 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
.ui-btn-alt:
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
1
|
+
@layer components {
|
|
2
|
+
.ui-btn {
|
|
3
|
+
@apply text-white bg-cool-black text-btn2 font-sans font-bold inline-block rounded p-btn;
|
|
4
|
+
@apply hover:text-white hover:bg-active-orange;
|
|
5
|
+
@apply active:text-white active:bg-red-orange;
|
|
6
|
+
@apply focus:text-white focus:bg-cool-black focus:outline-gui-focus;
|
|
7
|
+
@apply disabled:text-mid-grey disabled:bg-gui-unavailable disabled:cursor-not-allowed;
|
|
8
|
+
@apply transition-colors;
|
|
9
|
+
@apply inline-flex items-center justify-center;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.ui-btn-alt {
|
|
13
|
+
transition: background-position 0.2s;
|
|
14
|
+
background: linear-gradient(
|
|
15
|
+
61.2deg,
|
|
16
|
+
var(--color-active-orange) 5%,
|
|
17
|
+
#fe5215 19%,
|
|
18
|
+
#fc4a13 27%,
|
|
19
|
+
#f73c10 33%,
|
|
20
|
+
#f1280a 39%,
|
|
21
|
+
#e90f04 44%,
|
|
22
|
+
var(--color-red-orange) 50%
|
|
23
|
+
);
|
|
24
|
+
background-size: 200% 100%;
|
|
25
|
+
background-position: 0% 0%;
|
|
26
|
+
|
|
27
|
+
@apply text-white text-btn2 font-sans font-bold inline-block rounded p-btn;
|
|
28
|
+
@apply focus:outline-gui-focus;
|
|
29
|
+
@apply inline-flex items-center justify-center;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.ui-btn-alt:hover,
|
|
33
|
+
.ui-btn-alt:focus {
|
|
34
|
+
background-position: 100% 0%;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.ui-btn-alt:disabled {
|
|
38
|
+
background: linear-gradient(var(--gradient-transparent));
|
|
39
|
+
@apply bg-gui-unavailable text-mid-grey cursor-not-allowed;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.ui-btn-invert {
|
|
43
|
+
@apply text-cool-black bg-white text-btn2 font-sans font-bold inline-block rounded p-btn;
|
|
44
|
+
@apply hover:text-white hover:bg-active-orange;
|
|
45
|
+
@apply active:text-white active:bg-red-orange;
|
|
46
|
+
@apply focus:text-white focus:bg-cool-black focus:outline-gui-focus;
|
|
47
|
+
@apply disabled:text-mid-grey disabled:bg-gui-unavailable disabled:cursor-not-allowed;
|
|
48
|
+
@apply transition-colors;
|
|
49
|
+
@apply inline-flex items-center justify-center;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.ui-btn-secondary {
|
|
53
|
+
@apply text-cool-black bg-white text-btn2 font-sans font-bold inline-block border-btn border-cool-black rounded p-btn;
|
|
54
|
+
@apply hover:text-cool-black hover:border-active-orange hover:bg-white;
|
|
55
|
+
@apply active:border-red-orange active:bg-white;
|
|
56
|
+
@apply focus:border-cool-black focus:bg-white focus:outline-gui-focus;
|
|
57
|
+
@apply disabled:text-gui-unavailable disabled:border-gui-unavailable disabled:bg-white disabled:cursor-not-allowed;
|
|
58
|
+
@apply transition-colors;
|
|
59
|
+
@apply inline-flex items-center justify-center;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.ui-btn-secondary-invert {
|
|
63
|
+
@apply text-white bg-cool-black text-btn2 font-sans font-bold inline-block border-btn border-mid-grey rounded p-btn;
|
|
64
|
+
@apply hover:text-white hover:border-active-orange;
|
|
65
|
+
@apply active:border-red-orange;
|
|
66
|
+
@apply focus:outline-gui-focus;
|
|
67
|
+
@apply disabled:text-gui-unavailable disabled:border-gui-unavailable disabled:cursor-not-allowed;
|
|
68
|
+
@apply transition-colors;
|
|
69
|
+
@apply inline-flex items-center justify-center;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.ui-btn-icon {
|
|
73
|
+
@apply w-24 h-24 mr-16;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.ui-btn-icon-small {
|
|
77
|
+
@apply w-20 h-20 mr-12;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.ui-btn-icon-xsmall {
|
|
81
|
+
@apply w-16 h-16 mr-8;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.ui-chip {
|
|
85
|
+
@apply text-btn3 p-chip rounded text-cool-black;
|
|
86
|
+
@apply hover:bg-mid-grey;
|
|
87
|
+
@apply active:bg-red-orange active:text-white;
|
|
88
|
+
@apply focus:bg-red-orange focus:text-white focus:outline-none;
|
|
89
|
+
@apply disabled:text-mid-grey disabled:bg-gui-unavailable disabled:cursor-not-allowed;
|
|
90
|
+
@apply transition-colors;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.ui-chip[data-selected] {
|
|
94
|
+
@apply bg-active-orange text-white;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.ui-chip[data-selected]:hover {
|
|
98
|
+
@apply bg-mid-grey text-cool-black;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.ui-chip[data-selected]:focus {
|
|
102
|
+
@apply bg-red-orange text-white;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.ui-chip-alt {
|
|
106
|
+
@apply text-btn3 p-chip rounded text-white;
|
|
107
|
+
@apply hover:bg-gui-hover;
|
|
108
|
+
@apply active:bg-gui-active active:text-white;
|
|
109
|
+
@apply focus:bg-gui-active focus:text-white focus:outline-none;
|
|
110
|
+
@apply disabled:text-mid-grey disabled:bg-gui-unavailable disabled:cursor-not-allowed;
|
|
111
|
+
@apply transition-colors;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.ui-chip-alt[data-selected] {
|
|
115
|
+
@apply bg-dark-grey text-white;
|
|
116
|
+
}
|
|
117
|
+
.ui-chip-alt[data-selected]:hover {
|
|
118
|
+
@apply bg-gui-hover text-white;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.ui-chip-alt[data-selected]:focus {
|
|
122
|
+
@apply bg-gui-active text-white;
|
|
123
|
+
}
|
|
122
124
|
}
|