@ttoss/components 2.9.0 → 2.10.1
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/dist/DatePicker/index.d.ts +19 -0
- package/dist/NotificationsMenu/index.d.ts +2 -17
- package/dist/SpotlightCard/index.d.ts +9 -9
- package/dist/esm/DatePicker/index.js +2476 -0
- package/dist/esm/NotificationCard/index.js +3 -154
- package/dist/esm/NotificationsMenu/index.js +28 -181
- package/dist/esm/SpotlightCard/index.js +33 -28
- package/dist/esm/chunk-4GBVRL7E.js +156 -0
- package/package.json +10 -3
|
@@ -1,156 +1,5 @@
|
|
|
1
1
|
/** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
// src/components/NotificationCard/NotificationCard.tsx
|
|
6
|
-
import { Box, Card, CloseButton, Link, Tag, Text } from "@ttoss/ui";
|
|
7
|
-
import * as React from "react";
|
|
8
|
-
var NotificationCard = /* @__PURE__ */__name(props => {
|
|
9
|
-
const sxMap = {
|
|
10
|
-
success: {
|
|
11
|
-
card: {
|
|
12
|
-
backgroundColor: "feedback.background.positive.default",
|
|
13
|
-
borderColor: "feedback.border.positive.default"
|
|
14
|
-
}
|
|
15
|
-
},
|
|
16
|
-
error: {
|
|
17
|
-
card: {
|
|
18
|
-
backgroundColor: "feedback.background.negative.default",
|
|
19
|
-
borderColor: "feedback.border.negative.default"
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
warning: {
|
|
23
|
-
card: {
|
|
24
|
-
backgroundColor: "feedback.background.caution.default",
|
|
25
|
-
borderColor: "feedback.border.caution.default"
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
info: {
|
|
29
|
-
card: {
|
|
30
|
-
backgroundColor: "feedback.background.primary.default",
|
|
31
|
-
borderColor: "feedback.border.primary.default"
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
neutral: {
|
|
35
|
-
card: {
|
|
36
|
-
backgroundColor: "feedback.background.primary.default",
|
|
37
|
-
borderColor: "feedback.border.primary.default"
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
const icon = {
|
|
42
|
-
success: "success-circle",
|
|
43
|
-
error: "error",
|
|
44
|
-
warning: "warning-alt",
|
|
45
|
-
info: "info",
|
|
46
|
-
neutral: "info"
|
|
47
|
-
};
|
|
48
|
-
const hasCaption = Boolean(props.caption);
|
|
49
|
-
const hasActions = Boolean(props.actions && props.actions.length > 0);
|
|
50
|
-
const hasTitle = Boolean(props.title);
|
|
51
|
-
const shouldCenterVerticallyWithoutTitle = !hasCaption && !hasActions && !hasTitle;
|
|
52
|
-
const shouldCenterVerticallyWithTitle = !hasCaption && !hasActions && hasTitle;
|
|
53
|
-
const shouldAddMinHeight = !hasCaption && !hasActions;
|
|
54
|
-
return /* @__PURE__ */React.createElement(Card, {
|
|
55
|
-
sx: {
|
|
56
|
-
...sxMap[props.type].card,
|
|
57
|
-
width: "full"
|
|
58
|
-
}
|
|
59
|
-
}, props.title && /* @__PURE__ */React.createElement(Card.Title, {
|
|
60
|
-
sx: {
|
|
61
|
-
display: "flex",
|
|
62
|
-
justifyContent: "space-between",
|
|
63
|
-
alignItems: "center",
|
|
64
|
-
fontSize: ["md", "xl"],
|
|
65
|
-
paddingY: ["1", "2", "4"],
|
|
66
|
-
paddingX: ["2", "4", "8"]
|
|
67
|
-
}
|
|
68
|
-
}, /* @__PURE__ */React.createElement(Text, {
|
|
69
|
-
sx: {
|
|
70
|
-
display: "inline-flex",
|
|
71
|
-
alignItems: "flex-start",
|
|
72
|
-
gap: "2",
|
|
73
|
-
flexDirection: "row",
|
|
74
|
-
flexWrap: "wrap"
|
|
75
|
-
}
|
|
76
|
-
}, /* @__PURE__ */React.createElement(Box, {
|
|
77
|
-
sx: {
|
|
78
|
-
display: "flex",
|
|
79
|
-
alignItems: "center",
|
|
80
|
-
gap: "2"
|
|
81
|
-
}
|
|
82
|
-
}, /* @__PURE__ */React.createElement(Icon, {
|
|
83
|
-
icon: icon[props.type]
|
|
84
|
-
}), props.title), props.tags && (Array.isArray(props.tags) ? props.tags.length > 0 : true) && (Array.isArray(props.tags) ? props.tags.map((tag, index) => {
|
|
85
|
-
return /* @__PURE__ */React.createElement(Tag, {
|
|
86
|
-
key: index
|
|
87
|
-
}, tag);
|
|
88
|
-
}) : /* @__PURE__ */React.createElement(Tag, null, props.tags))), props.onClose && /* @__PURE__ */React.createElement(Box, {
|
|
89
|
-
sx: {
|
|
90
|
-
marginLeft: "auto"
|
|
91
|
-
}
|
|
92
|
-
}, /* @__PURE__ */React.createElement(CloseButton, {
|
|
93
|
-
onClick: props.onClose
|
|
94
|
-
}))), /* @__PURE__ */React.createElement(Card.Body, {
|
|
95
|
-
sx: {
|
|
96
|
-
...sxMap[props.type].card,
|
|
97
|
-
display: "flex",
|
|
98
|
-
flexDirection: "column",
|
|
99
|
-
gap: "2",
|
|
100
|
-
paddingY: ["1", "2", "4"],
|
|
101
|
-
paddingX: ["2", "4", "8"]
|
|
102
|
-
}
|
|
103
|
-
}, /* @__PURE__ */React.createElement(Box, {
|
|
104
|
-
sx: {
|
|
105
|
-
display: "flex",
|
|
106
|
-
justifyContent: "space-between",
|
|
107
|
-
minHeight: shouldAddMinHeight ? "40px" : "auto",
|
|
108
|
-
alignItems: shouldCenterVerticallyWithoutTitle ? "center" : shouldCenterVerticallyWithTitle ? "center" : "flex-start",
|
|
109
|
-
width: "100%",
|
|
110
|
-
gap: "4"
|
|
111
|
-
}
|
|
112
|
-
}, /* @__PURE__ */React.createElement(Box, {
|
|
113
|
-
sx: {
|
|
114
|
-
flex: 1
|
|
115
|
-
}
|
|
116
|
-
}, /* @__PURE__ */React.createElement(Text, {
|
|
117
|
-
sx: {
|
|
118
|
-
fontSize: ["sm", "md"]
|
|
119
|
-
}
|
|
120
|
-
}, props.message))), props.actions && props.actions.length > 0 && /* @__PURE__ */React.createElement(Box, {
|
|
121
|
-
sx: {
|
|
122
|
-
display: "flex",
|
|
123
|
-
flexDirection: "column",
|
|
124
|
-
gap: 2,
|
|
125
|
-
mt: 2
|
|
126
|
-
}
|
|
127
|
-
}, props.actions.map((action, index) => {
|
|
128
|
-
return action.action === "open_url" ? /* @__PURE__ */React.createElement(Link, {
|
|
129
|
-
key: index,
|
|
130
|
-
href: action.url,
|
|
131
|
-
target: "_blank",
|
|
132
|
-
rel: "noopener noreferrer",
|
|
133
|
-
sx: {
|
|
134
|
-
color: "action.text.accent.default",
|
|
135
|
-
cursor: "pointer"
|
|
136
|
-
}
|
|
137
|
-
}, action.label || "Acessar") : null;
|
|
138
|
-
})), props.caption && /* @__PURE__ */React.createElement(Box, {
|
|
139
|
-
sx: {
|
|
140
|
-
whiteSpace: "nowrap",
|
|
141
|
-
mt: 6
|
|
142
|
-
}
|
|
143
|
-
}, /* @__PURE__ */React.createElement(Text, {
|
|
144
|
-
sx: {
|
|
145
|
-
fontSize: "xs",
|
|
146
|
-
color: "text.secondary"
|
|
147
|
-
}
|
|
148
|
-
}, props.caption)), !props.title && props.onClose && /* @__PURE__ */React.createElement(Box, {
|
|
149
|
-
sx: {
|
|
150
|
-
alignSelf: "flex-end"
|
|
151
|
-
}
|
|
152
|
-
}, /* @__PURE__ */React.createElement(CloseButton, {
|
|
153
|
-
onClick: props.onClose
|
|
154
|
-
}))));
|
|
155
|
-
}, "NotificationCard");
|
|
2
|
+
import { NotificationCard } from "../chunk-4GBVRL7E.js";
|
|
3
|
+
import "../chunk-2R7AUPJL.js";
|
|
4
|
+
import "../chunk-V4MHYKRI.js";
|
|
156
5
|
export { NotificationCard };
|
|
@@ -1,164 +1,11 @@
|
|
|
1
1
|
/** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
|
|
2
|
+
import { NotificationCard } from "../chunk-4GBVRL7E.js";
|
|
2
3
|
import { Icon } from "../chunk-2R7AUPJL.js";
|
|
3
4
|
import { __name } from "../chunk-V4MHYKRI.js";
|
|
4
5
|
|
|
5
6
|
// src/components/NotificationsMenu/NotificationsMenu.tsx
|
|
6
|
-
import { Box
|
|
7
|
-
import * as React2 from "react";
|
|
8
|
-
|
|
9
|
-
// src/components/NotificationCard/NotificationCard.tsx
|
|
10
|
-
import { Box, Card, CloseButton, Link, Tag, Text } from "@ttoss/ui";
|
|
7
|
+
import { Box, Button, Card, Flex, IconButton, Text } from "@ttoss/ui";
|
|
11
8
|
import * as React from "react";
|
|
12
|
-
var NotificationCard = /* @__PURE__ */__name(props => {
|
|
13
|
-
const sxMap = {
|
|
14
|
-
success: {
|
|
15
|
-
card: {
|
|
16
|
-
backgroundColor: "feedback.background.positive.default",
|
|
17
|
-
borderColor: "feedback.border.positive.default"
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
error: {
|
|
21
|
-
card: {
|
|
22
|
-
backgroundColor: "feedback.background.negative.default",
|
|
23
|
-
borderColor: "feedback.border.negative.default"
|
|
24
|
-
}
|
|
25
|
-
},
|
|
26
|
-
warning: {
|
|
27
|
-
card: {
|
|
28
|
-
backgroundColor: "feedback.background.caution.default",
|
|
29
|
-
borderColor: "feedback.border.caution.default"
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
info: {
|
|
33
|
-
card: {
|
|
34
|
-
backgroundColor: "feedback.background.primary.default",
|
|
35
|
-
borderColor: "feedback.border.primary.default"
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
|
-
neutral: {
|
|
39
|
-
card: {
|
|
40
|
-
backgroundColor: "feedback.background.primary.default",
|
|
41
|
-
borderColor: "feedback.border.primary.default"
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
const icon = {
|
|
46
|
-
success: "success-circle",
|
|
47
|
-
error: "error",
|
|
48
|
-
warning: "warning-alt",
|
|
49
|
-
info: "info",
|
|
50
|
-
neutral: "info"
|
|
51
|
-
};
|
|
52
|
-
const hasCaption = Boolean(props.caption);
|
|
53
|
-
const hasActions = Boolean(props.actions && props.actions.length > 0);
|
|
54
|
-
const hasTitle = Boolean(props.title);
|
|
55
|
-
const shouldCenterVerticallyWithoutTitle = !hasCaption && !hasActions && !hasTitle;
|
|
56
|
-
const shouldCenterVerticallyWithTitle = !hasCaption && !hasActions && hasTitle;
|
|
57
|
-
const shouldAddMinHeight = !hasCaption && !hasActions;
|
|
58
|
-
return /* @__PURE__ */React.createElement(Card, {
|
|
59
|
-
sx: {
|
|
60
|
-
...sxMap[props.type].card,
|
|
61
|
-
width: "full"
|
|
62
|
-
}
|
|
63
|
-
}, props.title && /* @__PURE__ */React.createElement(Card.Title, {
|
|
64
|
-
sx: {
|
|
65
|
-
display: "flex",
|
|
66
|
-
justifyContent: "space-between",
|
|
67
|
-
alignItems: "center",
|
|
68
|
-
fontSize: ["md", "xl"],
|
|
69
|
-
paddingY: ["1", "2", "4"],
|
|
70
|
-
paddingX: ["2", "4", "8"]
|
|
71
|
-
}
|
|
72
|
-
}, /* @__PURE__ */React.createElement(Text, {
|
|
73
|
-
sx: {
|
|
74
|
-
display: "inline-flex",
|
|
75
|
-
alignItems: "flex-start",
|
|
76
|
-
gap: "2",
|
|
77
|
-
flexDirection: "row",
|
|
78
|
-
flexWrap: "wrap"
|
|
79
|
-
}
|
|
80
|
-
}, /* @__PURE__ */React.createElement(Box, {
|
|
81
|
-
sx: {
|
|
82
|
-
display: "flex",
|
|
83
|
-
alignItems: "center",
|
|
84
|
-
gap: "2"
|
|
85
|
-
}
|
|
86
|
-
}, /* @__PURE__ */React.createElement(Icon, {
|
|
87
|
-
icon: icon[props.type]
|
|
88
|
-
}), props.title), props.tags && (Array.isArray(props.tags) ? props.tags.length > 0 : true) && (Array.isArray(props.tags) ? props.tags.map((tag, index) => {
|
|
89
|
-
return /* @__PURE__ */React.createElement(Tag, {
|
|
90
|
-
key: index
|
|
91
|
-
}, tag);
|
|
92
|
-
}) : /* @__PURE__ */React.createElement(Tag, null, props.tags))), props.onClose && /* @__PURE__ */React.createElement(Box, {
|
|
93
|
-
sx: {
|
|
94
|
-
marginLeft: "auto"
|
|
95
|
-
}
|
|
96
|
-
}, /* @__PURE__ */React.createElement(CloseButton, {
|
|
97
|
-
onClick: props.onClose
|
|
98
|
-
}))), /* @__PURE__ */React.createElement(Card.Body, {
|
|
99
|
-
sx: {
|
|
100
|
-
...sxMap[props.type].card,
|
|
101
|
-
display: "flex",
|
|
102
|
-
flexDirection: "column",
|
|
103
|
-
gap: "2",
|
|
104
|
-
paddingY: ["1", "2", "4"],
|
|
105
|
-
paddingX: ["2", "4", "8"]
|
|
106
|
-
}
|
|
107
|
-
}, /* @__PURE__ */React.createElement(Box, {
|
|
108
|
-
sx: {
|
|
109
|
-
display: "flex",
|
|
110
|
-
justifyContent: "space-between",
|
|
111
|
-
minHeight: shouldAddMinHeight ? "40px" : "auto",
|
|
112
|
-
alignItems: shouldCenterVerticallyWithoutTitle ? "center" : shouldCenterVerticallyWithTitle ? "center" : "flex-start",
|
|
113
|
-
width: "100%",
|
|
114
|
-
gap: "4"
|
|
115
|
-
}
|
|
116
|
-
}, /* @__PURE__ */React.createElement(Box, {
|
|
117
|
-
sx: {
|
|
118
|
-
flex: 1
|
|
119
|
-
}
|
|
120
|
-
}, /* @__PURE__ */React.createElement(Text, {
|
|
121
|
-
sx: {
|
|
122
|
-
fontSize: ["sm", "md"]
|
|
123
|
-
}
|
|
124
|
-
}, props.message))), props.actions && props.actions.length > 0 && /* @__PURE__ */React.createElement(Box, {
|
|
125
|
-
sx: {
|
|
126
|
-
display: "flex",
|
|
127
|
-
flexDirection: "column",
|
|
128
|
-
gap: 2,
|
|
129
|
-
mt: 2
|
|
130
|
-
}
|
|
131
|
-
}, props.actions.map((action, index) => {
|
|
132
|
-
return action.action === "open_url" ? /* @__PURE__ */React.createElement(Link, {
|
|
133
|
-
key: index,
|
|
134
|
-
href: action.url,
|
|
135
|
-
target: "_blank",
|
|
136
|
-
rel: "noopener noreferrer",
|
|
137
|
-
sx: {
|
|
138
|
-
color: "action.text.accent.default",
|
|
139
|
-
cursor: "pointer"
|
|
140
|
-
}
|
|
141
|
-
}, action.label || "Acessar") : null;
|
|
142
|
-
})), props.caption && /* @__PURE__ */React.createElement(Box, {
|
|
143
|
-
sx: {
|
|
144
|
-
whiteSpace: "nowrap",
|
|
145
|
-
mt: 6
|
|
146
|
-
}
|
|
147
|
-
}, /* @__PURE__ */React.createElement(Text, {
|
|
148
|
-
sx: {
|
|
149
|
-
fontSize: "xs",
|
|
150
|
-
color: "text.secondary"
|
|
151
|
-
}
|
|
152
|
-
}, props.caption)), !props.title && props.onClose && /* @__PURE__ */React.createElement(Box, {
|
|
153
|
-
sx: {
|
|
154
|
-
alignSelf: "flex-end"
|
|
155
|
-
}
|
|
156
|
-
}, /* @__PURE__ */React.createElement(CloseButton, {
|
|
157
|
-
onClick: props.onClose
|
|
158
|
-
}))));
|
|
159
|
-
}, "NotificationCard");
|
|
160
|
-
|
|
161
|
-
// src/components/NotificationsMenu/NotificationsMenu.tsx
|
|
162
9
|
var NotificationsMenu = /* @__PURE__ */__name(({
|
|
163
10
|
notifications,
|
|
164
11
|
defaultOpen = false,
|
|
@@ -169,12 +16,12 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
169
16
|
onClose,
|
|
170
17
|
onClearAll
|
|
171
18
|
}) => {
|
|
172
|
-
const [isOpen, setIsOpen] =
|
|
173
|
-
const [openToLeft, setOpenToLeft] =
|
|
174
|
-
const buttonRef =
|
|
175
|
-
const containerRef =
|
|
176
|
-
const loadMoreRef =
|
|
177
|
-
const [showCount, setShowCount] =
|
|
19
|
+
const [isOpen, setIsOpen] = React.useState(defaultOpen);
|
|
20
|
+
const [openToLeft, setOpenToLeft] = React.useState(false);
|
|
21
|
+
const buttonRef = React.useRef(null);
|
|
22
|
+
const containerRef = React.useRef(null);
|
|
23
|
+
const loadMoreRef = React.useRef(null);
|
|
24
|
+
const [showCount, setShowCount] = React.useState(true);
|
|
178
25
|
const togglePanel = /* @__PURE__ */__name(() => {
|
|
179
26
|
setIsOpen(prev => {
|
|
180
27
|
const next = !prev;
|
|
@@ -182,7 +29,7 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
182
29
|
return next;
|
|
183
30
|
});
|
|
184
31
|
}, "togglePanel");
|
|
185
|
-
|
|
32
|
+
React.useEffect(() => {
|
|
186
33
|
if (!isOpen || !buttonRef.current) return;
|
|
187
34
|
const rect = buttonRef.current.getBoundingClientRect();
|
|
188
35
|
const spaceRight = window.innerWidth - rect.right;
|
|
@@ -190,7 +37,7 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
190
37
|
setShowCount(false);
|
|
191
38
|
setOpenToLeft(spaceRight < 500 && spaceLeft > spaceRight);
|
|
192
39
|
}, [isOpen]);
|
|
193
|
-
|
|
40
|
+
React.useEffect(() => {
|
|
194
41
|
if (!hasMore || !onLoadMore || !loadMoreRef.current) return;
|
|
195
42
|
const observer = new IntersectionObserver(entries => {
|
|
196
43
|
if (entries[0].isIntersecting) {
|
|
@@ -208,7 +55,7 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
208
55
|
}
|
|
209
56
|
};
|
|
210
57
|
}, [hasMore, onLoadMore, notifications.length]);
|
|
211
|
-
|
|
58
|
+
React.useEffect(() => {
|
|
212
59
|
if (!isOpen) return;
|
|
213
60
|
const handleClickOutside = /* @__PURE__ */__name(event => {
|
|
214
61
|
if (containerRef.current && !containerRef.current.contains(event.target) && buttonRef.current && !buttonRef.current.contains(event.target)) {
|
|
@@ -222,16 +69,16 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
222
69
|
document.removeEventListener("mousedown", handleClickOutside);
|
|
223
70
|
};
|
|
224
71
|
}, [isOpen, onOpenChange, onClose]);
|
|
225
|
-
return /* @__PURE__ */
|
|
72
|
+
return /* @__PURE__ */React.createElement(Flex, {
|
|
226
73
|
sx: {
|
|
227
74
|
position: "relative",
|
|
228
75
|
justifyContent: "flex-start"
|
|
229
76
|
}
|
|
230
|
-
}, /* @__PURE__ */
|
|
77
|
+
}, /* @__PURE__ */React.createElement(Box, {
|
|
231
78
|
sx: {
|
|
232
79
|
position: "relative"
|
|
233
80
|
}
|
|
234
|
-
}, /* @__PURE__ */
|
|
81
|
+
}, /* @__PURE__ */React.createElement(IconButton, {
|
|
235
82
|
ref: buttonRef,
|
|
236
83
|
variant: "ghost",
|
|
237
84
|
sx: {
|
|
@@ -244,15 +91,15 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
244
91
|
}
|
|
245
92
|
},
|
|
246
93
|
onClick: togglePanel
|
|
247
|
-
}, /* @__PURE__ */
|
|
94
|
+
}, /* @__PURE__ */React.createElement(Box, {
|
|
248
95
|
sx: {
|
|
249
96
|
color: "display.text.muted.default"
|
|
250
97
|
}
|
|
251
|
-
}, /* @__PURE__ */
|
|
98
|
+
}, /* @__PURE__ */React.createElement(Icon, {
|
|
252
99
|
icon: "mdi:bell-outline",
|
|
253
100
|
width: 22,
|
|
254
101
|
height: 22
|
|
255
|
-
})), count > 0 && showCount && /* @__PURE__ */
|
|
102
|
+
})), count > 0 && showCount && /* @__PURE__ */React.createElement(Box, {
|
|
256
103
|
sx: {
|
|
257
104
|
position: "absolute",
|
|
258
105
|
top: "-2px",
|
|
@@ -270,9 +117,9 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
270
117
|
justifyContent: "center",
|
|
271
118
|
lineHeight: 1
|
|
272
119
|
}
|
|
273
|
-
}, count > 99 ? "99+" : count)), isOpen && /* @__PURE__ */
|
|
120
|
+
}, count > 99 ? "99+" : count)), isOpen && /* @__PURE__ */React.createElement("div", {
|
|
274
121
|
ref: containerRef
|
|
275
|
-
}, /* @__PURE__ */
|
|
122
|
+
}, /* @__PURE__ */React.createElement(Card, {
|
|
276
123
|
sx: {
|
|
277
124
|
position: "absolute",
|
|
278
125
|
top: "calc(100% + 8px)",
|
|
@@ -287,22 +134,22 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
287
134
|
borderRadius: "2xl",
|
|
288
135
|
backgroundColor: "display.background.secondary.default"
|
|
289
136
|
}
|
|
290
|
-
}, /* @__PURE__ */
|
|
137
|
+
}, /* @__PURE__ */React.createElement(Box, {
|
|
291
138
|
sx: {
|
|
292
139
|
width: "100%"
|
|
293
140
|
}
|
|
294
|
-
}, /* @__PURE__ */
|
|
141
|
+
}, /* @__PURE__ */React.createElement(Flex, {
|
|
295
142
|
sx: {
|
|
296
143
|
flexDirection: "column",
|
|
297
144
|
gap: 4
|
|
298
145
|
}
|
|
299
|
-
}, notifications.length > 0 && onClearAll && /* @__PURE__ */
|
|
146
|
+
}, notifications.length > 0 && onClearAll && /* @__PURE__ */React.createElement(Flex, {
|
|
300
147
|
sx: {
|
|
301
148
|
justifyContent: "flex-end",
|
|
302
149
|
p: 2,
|
|
303
150
|
marginBottom: -2
|
|
304
151
|
}
|
|
305
|
-
}, /* @__PURE__ */
|
|
152
|
+
}, /* @__PURE__ */React.createElement(Button, {
|
|
306
153
|
variant: "ghost",
|
|
307
154
|
sx: {
|
|
308
155
|
borderRadius: "md",
|
|
@@ -323,24 +170,24 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
323
170
|
}
|
|
324
171
|
},
|
|
325
172
|
onClick: onClearAll
|
|
326
|
-
}, /* @__PURE__ */
|
|
173
|
+
}, /* @__PURE__ */React.createElement(Icon, {
|
|
327
174
|
icon: "delete",
|
|
328
175
|
width: 16,
|
|
329
176
|
height: 16
|
|
330
|
-
}), /* @__PURE__ */
|
|
177
|
+
}), /* @__PURE__ */React.createElement(Text, {
|
|
331
178
|
sx: {
|
|
332
179
|
ml: -1,
|
|
333
180
|
marginTop: -0.4,
|
|
334
181
|
fontSize: "sm"
|
|
335
182
|
}
|
|
336
|
-
}, "Limpar Tudo"))), notifications.length === 0 ? /* @__PURE__ */
|
|
183
|
+
}, "Limpar Tudo"))), notifications.length === 0 ? /* @__PURE__ */React.createElement(Text, {
|
|
337
184
|
sx: {
|
|
338
185
|
color: "display.text.muted.default",
|
|
339
186
|
textAlign: "center",
|
|
340
187
|
p: 4
|
|
341
188
|
}
|
|
342
189
|
}, "Nenhuma notifica\xE7\xE3o") : notifications.map(notification => {
|
|
343
|
-
return /* @__PURE__ */
|
|
190
|
+
return /* @__PURE__ */React.createElement(NotificationCard, {
|
|
344
191
|
key: notification.id,
|
|
345
192
|
...notification,
|
|
346
193
|
onClose: /* @__PURE__ */__name(() => {
|
|
@@ -348,7 +195,7 @@ var NotificationsMenu = /* @__PURE__ */__name(({
|
|
|
348
195
|
onClose?.();
|
|
349
196
|
}, "onClose")
|
|
350
197
|
});
|
|
351
|
-
}), hasMore && /* @__PURE__ */
|
|
198
|
+
}), hasMore && /* @__PURE__ */React.createElement("div", {
|
|
352
199
|
ref: loadMoreRef,
|
|
353
200
|
style: {
|
|
354
201
|
height: 1
|
|
@@ -8,7 +8,7 @@ import * as React from "react";
|
|
|
8
8
|
var SpotlightCard = /* @__PURE__ */__name(({
|
|
9
9
|
icon,
|
|
10
10
|
title,
|
|
11
|
-
|
|
11
|
+
badge,
|
|
12
12
|
description,
|
|
13
13
|
firstButton,
|
|
14
14
|
secondButton,
|
|
@@ -30,6 +30,8 @@ var SpotlightCard = /* @__PURE__ */__name(({
|
|
|
30
30
|
const textColorToken = isAccent ? "action.text.accent.default" : "action.text.primary.default";
|
|
31
31
|
const iconColorToken = isAccent ? "action.text.accent.default" : "display.text.accent.default";
|
|
32
32
|
const iconBgToken = isAccent ? "rgba(255,255,255,0.3)" : "action.background.secondary.default";
|
|
33
|
+
const badgeBgToken = isAccent ? "action.background.primary.default" : "action.background.accent.default";
|
|
34
|
+
const badgeTextToken = isAccent ? "action.text.primary.default" : "action.text.accent.default";
|
|
33
35
|
const btnPrimaryVariant = isAccent ? "primary" : "accent";
|
|
34
36
|
const btnPrimaryColorToken = isAccent ? "action.text.primary.default" : "action.text.accent.default";
|
|
35
37
|
const btnSecondaryColorToken = textColorToken;
|
|
@@ -109,8 +111,8 @@ var SpotlightCard = /* @__PURE__ */__name(({
|
|
|
109
111
|
}
|
|
110
112
|
}, /* @__PURE__ */React.createElement(Box, {
|
|
111
113
|
sx: {
|
|
112
|
-
width:
|
|
113
|
-
height:
|
|
114
|
+
width: 64,
|
|
115
|
+
height: 64,
|
|
114
116
|
borderRadius: "2xl",
|
|
115
117
|
backgroundColor: iconBgToken,
|
|
116
118
|
display: "flex",
|
|
@@ -121,7 +123,7 @@ var SpotlightCard = /* @__PURE__ */__name(({
|
|
|
121
123
|
}
|
|
122
124
|
}, /* @__PURE__ */React.createElement(Icon, {
|
|
123
125
|
icon,
|
|
124
|
-
width:
|
|
126
|
+
width: 32
|
|
125
127
|
})), /* @__PURE__ */React.createElement(Box, {
|
|
126
128
|
sx: {
|
|
127
129
|
minWidth: 0
|
|
@@ -129,40 +131,43 @@ var SpotlightCard = /* @__PURE__ */__name(({
|
|
|
129
131
|
}, /* @__PURE__ */React.createElement(Text, {
|
|
130
132
|
as: "div",
|
|
131
133
|
sx: {
|
|
132
|
-
fontFamily: "
|
|
133
|
-
|
|
134
|
-
fontSize: "
|
|
135
|
-
lineHeight: 1.
|
|
134
|
+
fontFamily: "mono",
|
|
135
|
+
// Tamanho da fonte aumentado para dar mais presença ao OneClick
|
|
136
|
+
fontSize: "32px",
|
|
137
|
+
lineHeight: 1.1,
|
|
136
138
|
color: "inherit",
|
|
137
139
|
whiteSpace: "nowrap",
|
|
138
140
|
display: "flex",
|
|
139
|
-
alignItems: "
|
|
140
|
-
gap: "
|
|
141
|
-
}
|
|
142
|
-
}, /* @__PURE__ */React.createElement("span", {
|
|
143
|
-
style: {
|
|
144
|
-
fontWeight: 800,
|
|
145
|
-
letterSpacing: "-0.5px",
|
|
146
|
-
verticalAlign: "middle",
|
|
147
|
-
lineHeight: 1.1
|
|
141
|
+
alignItems: "center",
|
|
142
|
+
gap: "3"
|
|
148
143
|
}
|
|
149
|
-
}, title
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
144
|
+
}, title, badge && /* @__PURE__ */React.createElement(Box, {
|
|
145
|
+
as: "span",
|
|
146
|
+
sx: {
|
|
147
|
+
backgroundColor: badgeBgToken,
|
|
148
|
+
color: badgeTextToken,
|
|
149
|
+
fontFamily: "mono",
|
|
150
|
+
fontWeight: "bold",
|
|
151
|
+
fontSize: "11px",
|
|
152
|
+
lineHeight: 1,
|
|
153
|
+
paddingX: "6px",
|
|
154
|
+
paddingY: "3px",
|
|
155
|
+
borderRadius: "md",
|
|
156
|
+
textTransform: "uppercase",
|
|
157
|
+
letterSpacing: "0.05em",
|
|
158
|
+
display: "inline-flex",
|
|
159
|
+
alignItems: "center",
|
|
160
|
+
boxShadow: "0 2px 4px rgba(0,0,0,0.1)",
|
|
161
|
+
transform: "translateY(3px)"
|
|
157
162
|
}
|
|
158
|
-
},
|
|
163
|
+
}, badge)), /* @__PURE__ */React.createElement(Text, {
|
|
159
164
|
as: "div",
|
|
160
165
|
sx: {
|
|
161
166
|
fontFamily: "body",
|
|
162
167
|
fontWeight: 400,
|
|
163
|
-
fontSize: "
|
|
168
|
+
fontSize: "16px",
|
|
164
169
|
color: "inherit",
|
|
165
|
-
opacity: 0.
|
|
170
|
+
opacity: 0.9,
|
|
166
171
|
mt: "1",
|
|
167
172
|
overflow: "hidden",
|
|
168
173
|
textOverflow: "ellipsis",
|