atenea-components 1.4.17
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/components/atoms/ActionDropdown.d.ts +20 -0
- package/dist/components/atoms/ActionDropdown.js +56 -0
- package/dist/components/atoms/Button.d.ts +10 -0
- package/dist/components/atoms/Button.js +55 -0
- package/dist/components/atoms/Checkbox.d.ts +13 -0
- package/dist/components/atoms/Checkbox.js +60 -0
- package/dist/components/atoms/Dropdown.d.ts +18 -0
- package/dist/components/atoms/Dropdown.js +116 -0
- package/dist/components/atoms/Input.d.ts +15 -0
- package/dist/components/atoms/Input.js +118 -0
- package/dist/components/atoms/IntroIllustration.d.ts +6 -0
- package/dist/components/atoms/IntroIllustration.js +12 -0
- package/dist/components/atoms/List.d.ts +7 -0
- package/dist/components/atoms/List.js +13 -0
- package/dist/components/atoms/ListItem.d.ts +9 -0
- package/dist/components/atoms/ListItem.js +12 -0
- package/dist/components/atoms/MenuItem.d.ts +12 -0
- package/dist/components/atoms/MenuItem.js +47 -0
- package/dist/components/atoms/Radio.d.ts +13 -0
- package/dist/components/atoms/Radio.js +52 -0
- package/dist/components/atoms/SelectDropdown.d.ts +19 -0
- package/dist/components/atoms/SelectDropdown.js +146 -0
- package/dist/components/atoms/Toggle.d.ts +11 -0
- package/dist/components/atoms/Toggle.js +59 -0
- package/dist/components/icons/IconArrowDown.d.ts +2 -0
- package/dist/components/icons/IconArrowDown.js +10 -0
- package/dist/components/icons/IconArrowLeft.d.ts +2 -0
- package/dist/components/icons/IconArrowLeft.js +10 -0
- package/dist/components/icons/IconArrowRight.d.ts +2 -0
- package/dist/components/icons/IconArrowRight.js +10 -0
- package/dist/components/icons/IconArrowUp.d.ts +2 -0
- package/dist/components/icons/IconArrowUp.js +10 -0
- package/dist/components/icons/IconBase.d.ts +10 -0
- package/dist/components/icons/IconBase.js +30 -0
- package/dist/components/icons/IconBook.d.ts +2 -0
- package/dist/components/icons/IconBook.js +10 -0
- package/dist/components/icons/IconBookmark.d.ts +2 -0
- package/dist/components/icons/IconBookmark.js +10 -0
- package/dist/components/icons/IconCalendar.d.ts +2 -0
- package/dist/components/icons/IconCalendar.js +10 -0
- package/dist/components/icons/IconCancel.d.ts +2 -0
- package/dist/components/icons/IconCancel.js +10 -0
- package/dist/components/icons/IconCheck.d.ts +2 -0
- package/dist/components/icons/IconCheck.js +10 -0
- package/dist/components/icons/IconCheckCircle.d.ts +2 -0
- package/dist/components/icons/IconCheckCircle.js +10 -0
- package/dist/components/icons/IconChevronDown.d.ts +2 -0
- package/dist/components/icons/IconChevronDown.js +10 -0
- package/dist/components/icons/IconChevronLeft.d.ts +2 -0
- package/dist/components/icons/IconChevronLeft.js +10 -0
- package/dist/components/icons/IconChevronRight.d.ts +2 -0
- package/dist/components/icons/IconChevronRight.js +10 -0
- package/dist/components/icons/IconChevronUp.d.ts +2 -0
- package/dist/components/icons/IconChevronUp.js +10 -0
- package/dist/components/icons/IconClipboard.d.ts +2 -0
- package/dist/components/icons/IconClipboard.js +10 -0
- package/dist/components/icons/IconCreditCard.d.ts +2 -0
- package/dist/components/icons/IconCreditCard.js +10 -0
- package/dist/components/icons/IconExclamationOctagon.d.ts +2 -0
- package/dist/components/icons/IconExclamationOctagon.js +10 -0
- package/dist/components/icons/IconExclamationTriangle.d.ts +2 -0
- package/dist/components/icons/IconExclamationTriangle.js +10 -0
- package/dist/components/icons/IconFile.d.ts +2 -0
- package/dist/components/icons/IconFile.js +10 -0
- package/dist/components/icons/IconFileScan.d.ts +2 -0
- package/dist/components/icons/IconFileScan.js +10 -0
- package/dist/components/icons/IconHouse.d.ts +2 -0
- package/dist/components/icons/IconHouse.js +10 -0
- package/dist/components/icons/IconInformationCircle.d.ts +2 -0
- package/dist/components/icons/IconInformationCircle.js +10 -0
- package/dist/components/icons/IconKanban.d.ts +2 -0
- package/dist/components/icons/IconKanban.js +10 -0
- package/dist/components/icons/IconLayout.d.ts +2 -0
- package/dist/components/icons/IconLayout.js +10 -0
- package/dist/components/icons/IconList.d.ts +2 -0
- package/dist/components/icons/IconList.js +10 -0
- package/dist/components/icons/IconListArrow.d.ts +2 -0
- package/dist/components/icons/IconListArrow.js +10 -0
- package/dist/components/icons/IconLogout.d.ts +2 -0
- package/dist/components/icons/IconLogout.js +10 -0
- package/dist/components/icons/IconMessage.d.ts +2 -0
- package/dist/components/icons/IconMessage.js +10 -0
- package/dist/components/icons/IconMessagePlus.d.ts +2 -0
- package/dist/components/icons/IconMessagePlus.js +10 -0
- package/dist/components/icons/IconPause.d.ts +2 -0
- package/dist/components/icons/IconPause.js +10 -0
- package/dist/components/icons/IconPencil.d.ts +2 -0
- package/dist/components/icons/IconPencil.js +10 -0
- package/dist/components/icons/IconPlay.d.ts +2 -0
- package/dist/components/icons/IconPlay.js +10 -0
- package/dist/components/icons/IconSidebar.d.ts +2 -0
- package/dist/components/icons/IconSidebar.js +10 -0
- package/dist/components/icons/IconSidebarCollapse.d.ts +2 -0
- package/dist/components/icons/IconSidebarCollapse.js +10 -0
- package/dist/components/icons/IconSidebarExpand.d.ts +2 -0
- package/dist/components/icons/IconSidebarExpand.js +10 -0
- package/dist/components/icons/IconTimer.d.ts +2 -0
- package/dist/components/icons/IconTimer.js +10 -0
- package/dist/components/icons/IconTrash.d.ts +2 -0
- package/dist/components/icons/IconTrash.js +10 -0
- package/dist/components/icons/IconUser.d.ts +2 -0
- package/dist/components/icons/IconUser.js +10 -0
- package/dist/components/icons/IconVerticalDots.d.ts +2 -0
- package/dist/components/icons/IconVerticalDots.js +10 -0
- package/dist/components/molecules/AnswerOption.d.ts +15 -0
- package/dist/components/molecules/AnswerOption.js +49 -0
- package/dist/components/molecules/Avatar.d.ts +15 -0
- package/dist/components/molecules/Avatar.js +39 -0
- package/dist/components/molecules/Breadcrumb.d.ts +26 -0
- package/dist/components/molecules/Breadcrumb.js +20 -0
- package/dist/components/molecules/Card.d.ts +46 -0
- package/dist/components/molecules/Card.js +16 -0
- package/dist/components/molecules/CommentCard.d.ts +9 -0
- package/dist/components/molecules/CommentCard.js +9 -0
- package/dist/components/molecules/CountdownCard.d.ts +14 -0
- package/dist/components/molecules/CountdownCard.js +30 -0
- package/dist/components/molecules/DashboardCard.d.ts +13 -0
- package/dist/components/molecules/DashboardCard.js +9 -0
- package/dist/components/molecules/FilterBar.d.ts +19 -0
- package/dist/components/molecules/FilterBar.js +15 -0
- package/dist/components/molecules/Flashcard.d.ts +13 -0
- package/dist/components/molecules/Flashcard.js +20 -0
- package/dist/components/molecules/GlobalProgressCard.d.ts +22 -0
- package/dist/components/molecules/GlobalProgressCard.js +36 -0
- package/dist/components/molecules/MoodTracker.d.ts +13 -0
- package/dist/components/molecules/MoodTracker.js +25 -0
- package/dist/components/molecules/NewsItem.d.ts +12 -0
- package/dist/components/molecules/NewsItem.js +10 -0
- package/dist/components/molecules/PercentageItem.d.ts +10 -0
- package/dist/components/molecules/PercentageItem.js +27 -0
- package/dist/components/molecules/SleepTracker.d.ts +13 -0
- package/dist/components/molecules/SleepTracker.js +25 -0
- package/dist/components/molecules/StreakCard.d.ts +11 -0
- package/dist/components/molecules/StreakCard.js +12 -0
- package/dist/components/molecules/StudyMaterialIntro.d.ts +13 -0
- package/dist/components/molecules/StudyMaterialIntro.js +9 -0
- package/dist/components/molecules/TaskItem.d.ts +25 -0
- package/dist/components/molecules/TaskItem.js +33 -0
- package/dist/components/molecules/Timer.d.ts +13 -0
- package/dist/components/molecules/Timer.js +60 -0
- package/dist/components/molecules/WeekDaySelector.d.ts +23 -0
- package/dist/components/molecules/WeekDaySelector.js +17 -0
- package/dist/components/molecules/WeeklyObjectivesCard.d.ts +11 -0
- package/dist/components/molecules/WeeklyObjectivesCard.js +12 -0
- package/dist/components/organisms/FeatureList.d.ts +12 -0
- package/dist/components/organisms/FeatureList.js +14 -0
- package/dist/components/organisms/NewsList.d.ts +20 -0
- package/dist/components/organisms/NewsList.js +45 -0
- package/dist/components/organisms/PercentageCard.d.ts +14 -0
- package/dist/components/organisms/PercentageCard.js +26 -0
- package/dist/index.d.ts +74 -0
- package/dist/index.js +86 -0
- package/dist/tokens/borders.d.ts +8 -0
- package/dist/tokens/borders.js +12 -0
- package/dist/tokens/colors.d.ts +116 -0
- package/dist/tokens/colors.js +120 -0
- package/dist/tokens/index.d.ts +5 -0
- package/dist/tokens/index.js +21 -0
- package/dist/tokens/spacing.d.ts +3 -0
- package/dist/tokens/spacing.js +7 -0
- package/dist/tokens/theme.d.ts +247 -0
- package/dist/tokens/theme.js +17 -0
- package/dist/tokens/typography.d.ts +120 -0
- package/dist/tokens/typography.js +87 -0
- package/package.json +69 -0
- package/readme.md +88 -0
- package/theme.js +335 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.Radio = void 0;
|
|
18
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
|
+
const react_1 = require("react");
|
|
20
|
+
const clsx_1 = __importDefault(require("clsx"));
|
|
21
|
+
exports.Radio = (0, react_1.forwardRef)((_a, ref) => {
|
|
22
|
+
var { checked = false, onChange, disabled = false, size = "medium", label, helperText, className = "", id } = _a, props = __rest(_a, ["checked", "onChange", "disabled", "size", "label", "helperText", "className", "id"]);
|
|
23
|
+
const handleChange = (e) => {
|
|
24
|
+
if (!disabled && onChange) {
|
|
25
|
+
onChange(e.target.checked);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const handleKeyDown = (e) => {
|
|
29
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
30
|
+
e.preventDefault();
|
|
31
|
+
if (!disabled && onChange && !checked) {
|
|
32
|
+
onChange(true);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
const handleClick = () => {
|
|
37
|
+
if (!disabled && onChange && !checked) {
|
|
38
|
+
onChange(true);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
const radioSize = size === "small" ? "w-5 h-5 md:w-3.5 md:h-3.5" : "w-5 h-5 md:w-4 md:h-4";
|
|
42
|
+
const dotSize = size === "small" ? "w-2 h-2 md:w-2 md:h-2" : "w-3 h-3 md:w-2.5 md:h-2.5";
|
|
43
|
+
const labelSize = size === "small" ? "text-b3" : "text-b1";
|
|
44
|
+
const helperSize = size === "small" ? "text-c1" : "text-b3";
|
|
45
|
+
const radioClasses = (0, clsx_1.default)("mt-1 relative flex items-center justify-center rounded-full border cursor-pointer transition-all duration-200 flex-shrink-0", radioSize, !disabled && !checked && "border-primary-500 bg-white", !disabled && !checked && "hover:bg-primary-100", !disabled &&
|
|
46
|
+
!checked &&
|
|
47
|
+
"focus:border-primary-500 focus:ring-2 focus:ring-primary-200", !disabled && checked && "border-primary-500 bg-white", disabled && "border-gray-200 bg-gray-100 cursor-not-allowed", className);
|
|
48
|
+
const labelClasses = (0, clsx_1.default)("ml-4 select-none transition-colors", labelSize, disabled ? "text-gray-400" : "text-gray-700");
|
|
49
|
+
const helperClasses = (0, clsx_1.default)("ml-4 mt-1", helperSize, disabled ? "text-gray-300" : "text-gray-400");
|
|
50
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-start", children: [(0, jsx_runtime_1.jsxs)("div", { className: radioClasses, tabIndex: disabled ? -1 : 0, onKeyDown: handleKeyDown, onClick: handleClick, role: "radio", "aria-checked": checked, "aria-disabled": disabled, children: [(0, jsx_runtime_1.jsx)("input", Object.assign({ ref: ref, type: "radio", checked: checked, onChange: handleChange, disabled: disabled, id: id, className: "sr-only" }, props)), checked && ((0, jsx_runtime_1.jsx)("span", { className: (0, clsx_1.default)("rounded-full bg-primary-500", dotSize) }))] }), (label || helperText) && ((0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col", children: [label && ((0, jsx_runtime_1.jsx)("label", { htmlFor: id, className: labelClasses, onClick: handleClick, style: { cursor: disabled ? "not-allowed" : "pointer" }, children: label })), helperText && (0, jsx_runtime_1.jsx)("span", { className: helperClasses, children: helperText })] }))] }));
|
|
51
|
+
});
|
|
52
|
+
exports.Radio.displayName = "Radio";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
type Option = {
|
|
3
|
+
label: string;
|
|
4
|
+
value: string;
|
|
5
|
+
icon?: React.ReactNode;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
};
|
|
8
|
+
type SelectDropdownProps = {
|
|
9
|
+
options: Option[];
|
|
10
|
+
value?: string;
|
|
11
|
+
onChange: (value: string) => void;
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
className?: string;
|
|
15
|
+
placeholderIcon?: React.ReactNode;
|
|
16
|
+
size?: "small" | "medium";
|
|
17
|
+
};
|
|
18
|
+
export declare const SelectDropdown: React.FC<SelectDropdownProps>;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SelectDropdown = void 0;
|
|
7
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
+
const react_1 = require("react");
|
|
9
|
+
const react_dom_1 = __importDefault(require("react-dom"));
|
|
10
|
+
const IconChevronDown_1 = require("../icons/IconChevronDown");
|
|
11
|
+
const IconChevronUp_1 = require("../icons/IconChevronUp");
|
|
12
|
+
const SelectDropdown = ({ options, value, onChange, placeholder = "Select", disabled = false, className = "", placeholderIcon, size = "medium", }) => {
|
|
13
|
+
const [isOpen, setIsOpen] = (0, react_1.useState)(false);
|
|
14
|
+
const [hoveredIndex, setHoveredIndex] = (0, react_1.useState)(null);
|
|
15
|
+
const [menuStyles, setMenuStyles] = (0, react_1.useState)({});
|
|
16
|
+
const [mounted, setMounted] = (0, react_1.useState)(false);
|
|
17
|
+
const [menuReady, setMenuReady] = (0, react_1.useState)(false);
|
|
18
|
+
const triggerRef = (0, react_1.useRef)(null);
|
|
19
|
+
const dropdownRef = (0, react_1.useRef)(null);
|
|
20
|
+
const menuRef = (0, react_1.useRef)(null);
|
|
21
|
+
(0, react_1.useEffect)(() => {
|
|
22
|
+
setMounted(true);
|
|
23
|
+
}, []);
|
|
24
|
+
const selectedOption = options.find((opt) => opt.value === value);
|
|
25
|
+
const getSizeClasses = () => {
|
|
26
|
+
if (size === "small") {
|
|
27
|
+
return "px-2 py-1 text-b3 rounded-lg";
|
|
28
|
+
}
|
|
29
|
+
return "px-4 py-2 text-b1 rounded-xl";
|
|
30
|
+
};
|
|
31
|
+
const triggerClass = [
|
|
32
|
+
"w-full flex items-center gap-2 transition-colors outline-none text-left font-normal select-none",
|
|
33
|
+
getSizeClasses(),
|
|
34
|
+
"bg-white-100 border border-gray-300 hover:border-primary-500 focus:border-primary-500",
|
|
35
|
+
disabled
|
|
36
|
+
? "text-textAtenea-300 hover:border-gray-200 cursor-not-allowed border-gray-200"
|
|
37
|
+
: "cursor-pointer",
|
|
38
|
+
isOpen && !disabled ? "border-primary-500 ring-2 ring-primary-200" : "",
|
|
39
|
+
className,
|
|
40
|
+
].join(" ");
|
|
41
|
+
const getListClass = () => {
|
|
42
|
+
const baseClass = "absolute z-10 mt-1 w-full bg-white-100 border border-gray-200 py-1 animate-fade-in max-h-60 overflow-y-auto";
|
|
43
|
+
if (size === "small") {
|
|
44
|
+
return `${baseClass} rounded-lg`;
|
|
45
|
+
}
|
|
46
|
+
return `${baseClass} rounded-xl`;
|
|
47
|
+
};
|
|
48
|
+
const listClass = getListClass();
|
|
49
|
+
const getOptionSizeClasses = () => {
|
|
50
|
+
if (size === "small") {
|
|
51
|
+
return "px-2 py-1 text-b3";
|
|
52
|
+
}
|
|
53
|
+
return "px-4 py-2 text-b1";
|
|
54
|
+
};
|
|
55
|
+
const optionBase = [
|
|
56
|
+
"flex items-center gap-2 cursor-pointer transition-colors",
|
|
57
|
+
getOptionSizeClasses(),
|
|
58
|
+
].join(" ");
|
|
59
|
+
const optionSelected = "bg-green-50 text-green-700";
|
|
60
|
+
const optionHover = "bg-gray-50";
|
|
61
|
+
const optionDisabled = "text-gray-300 cursor-not-allowed";
|
|
62
|
+
const handleKeyDown = (e) => {
|
|
63
|
+
if (disabled)
|
|
64
|
+
return;
|
|
65
|
+
if (e.key === "ArrowDown") {
|
|
66
|
+
e.preventDefault();
|
|
67
|
+
setIsOpen(true);
|
|
68
|
+
setHoveredIndex((prev) => prev === null || prev === options.length - 1 ? 0 : prev + 1);
|
|
69
|
+
}
|
|
70
|
+
else if (e.key === "ArrowUp") {
|
|
71
|
+
e.preventDefault();
|
|
72
|
+
setIsOpen(true);
|
|
73
|
+
setHoveredIndex((prev) => prev === null || prev === 0 ? options.length - 1 : prev - 1);
|
|
74
|
+
}
|
|
75
|
+
else if (e.key === "Enter" || e.key === " ") {
|
|
76
|
+
if (isOpen && hoveredIndex !== null && !options[hoveredIndex].disabled) {
|
|
77
|
+
onChange(options[hoveredIndex].value);
|
|
78
|
+
setIsOpen(false);
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
setIsOpen((open) => !open);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
else if (e.key === "Escape") {
|
|
85
|
+
setIsOpen(false);
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
// Calcula la posición del menú cuando se abre y al hacer scroll/resize
|
|
89
|
+
(0, react_1.useEffect)(() => {
|
|
90
|
+
if (!isOpen) {
|
|
91
|
+
setMenuReady(false);
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
const updatePosition = () => {
|
|
95
|
+
if (triggerRef.current) {
|
|
96
|
+
const rect = triggerRef.current.getBoundingClientRect();
|
|
97
|
+
setMenuStyles({
|
|
98
|
+
position: "fixed",
|
|
99
|
+
top: rect.bottom + 4,
|
|
100
|
+
left: rect.left,
|
|
101
|
+
width: rect.width,
|
|
102
|
+
zIndex: 9999,
|
|
103
|
+
});
|
|
104
|
+
setMenuReady(true);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
setTimeout(updatePosition, 0);
|
|
108
|
+
window.addEventListener("scroll", updatePosition, true);
|
|
109
|
+
window.addEventListener("resize", updatePosition);
|
|
110
|
+
// Cierra el menú si haces click fuera del trigger y del menú
|
|
111
|
+
const handleClick = (e) => {
|
|
112
|
+
var _a, _b;
|
|
113
|
+
const target = e.target;
|
|
114
|
+
const isInsideTrigger = (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.contains(target);
|
|
115
|
+
const isInsideMenu = (_b = menuRef.current) === null || _b === void 0 ? void 0 : _b.contains(target);
|
|
116
|
+
if (!isInsideTrigger && !isInsideMenu) {
|
|
117
|
+
setIsOpen(false);
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
document.addEventListener("mousedown", handleClick);
|
|
121
|
+
return () => {
|
|
122
|
+
window.removeEventListener("scroll", updatePosition, true);
|
|
123
|
+
window.removeEventListener("resize", updatePosition);
|
|
124
|
+
document.removeEventListener("mousedown", handleClick);
|
|
125
|
+
};
|
|
126
|
+
}, [isOpen]);
|
|
127
|
+
// El menú del dropdown (portal)
|
|
128
|
+
const menu = ((0, jsx_runtime_1.jsx)("ul", { ref: menuRef, className: listClass, style: menuStyles, role: "listbox", tabIndex: -1, children: options.map((opt, idx) => ((0, jsx_runtime_1.jsxs)("li", { role: "option", "aria-selected": value === opt.value, className: [
|
|
129
|
+
optionBase,
|
|
130
|
+
value === opt.value ? optionSelected : "",
|
|
131
|
+
hoveredIndex === idx ? optionHover : "",
|
|
132
|
+
opt.disabled ? optionDisabled : "",
|
|
133
|
+
].join(" "), onMouseEnter: () => setHoveredIndex(idx), onMouseLeave: () => setHoveredIndex(null), onClick: () => {
|
|
134
|
+
if (!opt.disabled) {
|
|
135
|
+
onChange(opt.value);
|
|
136
|
+
setIsOpen(false);
|
|
137
|
+
}
|
|
138
|
+
}, tabIndex: -1, children: [opt.icon ? ((0, jsx_runtime_1.jsx)("span", { className: value === opt.value ? "text-greenSuccess-800" : "text-gray-400", children: opt.icon })) : null, (0, jsx_runtime_1.jsx)("span", { className: opt.disabled ? "text-gray-300" : "", children: opt.label })] }, opt.value))) }));
|
|
139
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "relative w-full", ref: dropdownRef, children: [(0, jsx_runtime_1.jsxs)("button", { ref: triggerRef, type: "button", className: triggerClass, onClick: () => !disabled && setIsOpen((open) => !open), onKeyDown: handleKeyDown, disabled: disabled, "aria-haspopup": "listbox", "aria-expanded": isOpen, tabIndex: 0, children: [(selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.icon) ? ((0, jsx_runtime_1.jsx)("span", { className: "text-greenSuccess-800", children: selectedOption.icon })) : placeholderIcon ? ((0, jsx_runtime_1.jsx)("span", { className: "text-gray-400", children: placeholderIcon })) : null, (0, jsx_runtime_1.jsx)("span", { className: selectedOption ? "textAtenea-900" : "text-gray-400", children: selectedOption ? selectedOption.label : placeholder }), (0, jsx_runtime_1.jsx)("span", { className: "ml-auto", children: isOpen ? ((0, jsx_runtime_1.jsx)("span", { className: "text-greenSuccess-800", children: (0, jsx_runtime_1.jsx)(IconChevronUp_1.IconChevronUp, {}) })) : ((0, jsx_runtime_1.jsx)("span", { className: "text-gray-400", children: (0, jsx_runtime_1.jsx)(IconChevronDown_1.IconChevronDown, {}) })) })] }), mounted &&
|
|
140
|
+
isOpen &&
|
|
141
|
+
menuReady &&
|
|
142
|
+
!disabled &&
|
|
143
|
+
typeof window !== "undefined" &&
|
|
144
|
+
react_dom_1.default.createPortal(menu, document.body)] }));
|
|
145
|
+
};
|
|
146
|
+
exports.SelectDropdown = SelectDropdown;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
type ToggleProps = {
|
|
3
|
+
checked?: boolean;
|
|
4
|
+
onChange?: (checked: boolean) => void;
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
label?: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
id?: string;
|
|
9
|
+
};
|
|
10
|
+
export declare const Toggle: React.ForwardRefExoticComponent<ToggleProps & React.RefAttributes<HTMLInputElement>>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.Toggle = void 0;
|
|
18
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
|
+
const react_1 = require("react");
|
|
20
|
+
const clsx_1 = __importDefault(require("clsx"));
|
|
21
|
+
exports.Toggle = (0, react_1.forwardRef)((_a, ref) => {
|
|
22
|
+
var { checked = false, onChange, disabled = false, label, className = "", id } = _a, props = __rest(_a, ["checked", "onChange", "disabled", "label", "className", "id"]);
|
|
23
|
+
const handleChange = (e) => {
|
|
24
|
+
if (!disabled && onChange) {
|
|
25
|
+
onChange(e.target.checked);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const handleKeyDown = (e) => {
|
|
29
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
30
|
+
e.preventDefault();
|
|
31
|
+
if (!disabled && onChange) {
|
|
32
|
+
onChange(!checked);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
const handleClick = () => {
|
|
37
|
+
if (!disabled && onChange) {
|
|
38
|
+
onChange(!checked);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
const toggleClasses = (0, clsx_1.default)("relative inline-flex items-center w-10 h-5 rounded-full transition-colors duration-200 cursor-pointer", !disabled && !checked && "bg-gray-300", !disabled && !checked && "hover:bg-gray-400", !disabled &&
|
|
42
|
+
!checked &&
|
|
43
|
+
"focus:ring-2 focus:ring-green-300 focus:ring-offset-1", !disabled && checked && "bg-green-500", !disabled && checked && "hover:bg-green-600", !disabled &&
|
|
44
|
+
checked &&
|
|
45
|
+
"focus:ring-2 focus:ring-green-300 focus:ring-offset-1", disabled && "bg-gray-100 cursor-not-allowed opacity-50", className);
|
|
46
|
+
const thumbClasses = (0, clsx_1.default)("absolute", disabled && "opacity-50");
|
|
47
|
+
const labelClasses = (0, clsx_1.default)("ml-3 select-none transition-colors text-b1", disabled ? "text-gray-400 opacity-50" : "text-gray-700");
|
|
48
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsxs)("div", { className: toggleClasses, tabIndex: disabled ? -1 : 0, onKeyDown: handleKeyDown, onClick: handleClick, role: "switch", "aria-checked": checked, "aria-disabled": disabled, children: [(0, jsx_runtime_1.jsx)("input", Object.assign({ ref: ref, type: "checkbox", checked: checked, onChange: handleChange, disabled: disabled, id: id, className: "sr-only" }, props)), (0, jsx_runtime_1.jsx)("span", { className: thumbClasses, style: {
|
|
49
|
+
left: checked ? "1.25rem" : "0.125rem",
|
|
50
|
+
top: "0.125rem",
|
|
51
|
+
width: "1rem",
|
|
52
|
+
height: "1rem",
|
|
53
|
+
backgroundColor: "white",
|
|
54
|
+
borderRadius: "50%",
|
|
55
|
+
boxShadow: "0 1px 3px 0 rgba(0, 0, 0, 0.1)",
|
|
56
|
+
transition: "left 0.2s ease-in-out",
|
|
57
|
+
} })] }), label && ((0, jsx_runtime_1.jsx)("label", { htmlFor: id, className: labelClasses, children: label }))] }));
|
|
58
|
+
});
|
|
59
|
+
exports.Toggle.displayName = "Toggle";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconArrowDown = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconArrowDown = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoArrowDown }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconArrowDown = IconArrowDown;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconArrowLeft = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconArrowLeft = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoArrowBack }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconArrowLeft = IconArrowLeft;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconArrowRight = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconArrowRight = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoArrowForward }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconArrowRight = IconArrowRight;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconArrowUp = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconArrowUp = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoArrowUp }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconArrowUp = IconArrowUp;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { colors } from '../../tokens/colors';
|
|
3
|
+
type IconBaseProps = {
|
|
4
|
+
icon: React.ElementType;
|
|
5
|
+
size?: number | string;
|
|
6
|
+
color?: keyof typeof colors | string;
|
|
7
|
+
className?: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const IconBase: ({ icon: Icon, size, color, className, ...props }: IconBaseProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.IconBase = void 0;
|
|
18
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
|
+
const colors_1 = require("../../tokens/colors");
|
|
20
|
+
const clsx_1 = __importDefault(require("clsx"));
|
|
21
|
+
const IconBase = (_a) => {
|
|
22
|
+
var { icon: Icon, size = 20, color = 'currentColor', className } = _a, props = __rest(_a, ["icon", "size", "color", "className"]);
|
|
23
|
+
const getColor = (colorKey) => {
|
|
24
|
+
const [colorName, shade] = colorKey.split('-');
|
|
25
|
+
const colorObj = colors_1.colors[colorName];
|
|
26
|
+
return colorObj ? colorObj[Number(shade)] : colorKey;
|
|
27
|
+
};
|
|
28
|
+
return ((0, jsx_runtime_1.jsx)(Icon, Object.assign({ size: size, color: typeof color === 'string' && color.includes('-') ? getColor(color) : color, className: (0, clsx_1.default)('inline-block', className) }, props)));
|
|
29
|
+
};
|
|
30
|
+
exports.IconBase = IconBase;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconBook = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const bi_1 = require("react-icons/bi");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconBook = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: bi_1.BiBook }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconBook = IconBook;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconBookmark = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const lu_1 = require("react-icons/lu");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconBookmark = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: lu_1.LuBookmark }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconBookmark = IconBookmark;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconCalendar = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const lu_1 = require("react-icons/lu");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconCalendar = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: lu_1.LuCalendar }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconCalendar = IconCalendar;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconCancel = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const lu_1 = require("react-icons/lu");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconCancel = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: lu_1.LuX }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconCancel = IconCancel;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconCheck = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const lu_1 = require("react-icons/lu");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconCheck = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: lu_1.LuCheck }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconCheck = IconCheck;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconCheckCircle = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io_1 = require("react-icons/io");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconCheckCircle = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io_1.IoIosCheckmarkCircleOutline }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconCheckCircle = IconCheckCircle;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconChevronDown = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconChevronDown = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoChevronDownOutline }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconChevronDown = IconChevronDown;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconChevronLeft = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconChevronLeft = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoChevronBackOutline }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconChevronLeft = IconChevronLeft;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconChevronRight = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconChevronRight = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoChevronForwardOutline }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconChevronRight = IconChevronRight;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconChevronUp = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const io5_1 = require("react-icons/io5");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconChevronUp = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: io5_1.IoChevronUpOutline }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconChevronUp = IconChevronUp;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconClipboard = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const lu_1 = require("react-icons/lu");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconClipboard = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: lu_1.LuClipboardCheck }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconClipboard = IconClipboard;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconCreditCard = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const IconBase_1 = require("./IconBase");
|
|
6
|
+
const lu_1 = require("react-icons/lu");
|
|
7
|
+
const IconCreditCard = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: lu_1.LuCreditCard }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconCreditCard = IconCreditCard;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconExclamationOctagon = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const bs_1 = require("react-icons/bs");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconExclamationOctagon = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: bs_1.BsExclamationOctagon }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconExclamationOctagon = IconExclamationOctagon;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IconExclamationTriangle = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const bs_1 = require("react-icons/bs");
|
|
6
|
+
const IconBase_1 = require("./IconBase");
|
|
7
|
+
const IconExclamationTriangle = (props) => {
|
|
8
|
+
return (0, jsx_runtime_1.jsx)(IconBase_1.IconBase, Object.assign({ icon: bs_1.BsExclamationTriangle }, props));
|
|
9
|
+
};
|
|
10
|
+
exports.IconExclamationTriangle = IconExclamationTriangle;
|