pge-front-common 14.2.12 → 14.2.13
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/lib/components/MenuAction/index.d.ts +2 -4
- package/lib/components/MenuAction/index.types.d.ts +3 -0
- package/lib/components/MenuAction/menuaction.stories.d.ts +2 -0
- package/lib/icons/accordion-chevron-icon.d.ts +6 -0
- package/lib/index.d.ts +10 -9
- package/lib/index.esm.js +134 -20
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +134 -20
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
}
|
|
5
|
-
declare const MenuAction: ({ itens }: Props) => React.JSX.Element;
|
|
2
|
+
import { MenuActionProps } from "./index.types";
|
|
3
|
+
export declare const MenuAction: ({ itens }: MenuActionProps) => React.JSX.Element;
|
|
6
4
|
export default MenuAction;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import React, { SVGProps } from "react";
|
|
2
|
+
export interface IconAccordionChevronProps extends SVGProps<SVGSVGElement> {
|
|
3
|
+
containerClassName?: string;
|
|
4
|
+
arrowClassName?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const IconAccordionChevron: ({ className, containerClassName, arrowClassName, ...props }: IconAccordionChevronProps) => React.JSX.Element;
|
package/lib/index.d.ts
CHANGED
|
@@ -521,19 +521,19 @@ type BoxSuccessProps = {
|
|
|
521
521
|
};
|
|
522
522
|
declare const BoxSuccess: ({ message, handleClose }: BoxSuccessProps) => React__default.JSX.Element;
|
|
523
523
|
|
|
524
|
-
interface Props$
|
|
524
|
+
interface Props$2 {
|
|
525
525
|
isOpen: boolean;
|
|
526
526
|
text?: string;
|
|
527
527
|
}
|
|
528
|
-
declare function LoadingSpinner(props: Readonly<Props$
|
|
528
|
+
declare function LoadingSpinner(props: Readonly<Props$2>): React$1.JSX.Element;
|
|
529
529
|
|
|
530
|
-
interface Props$
|
|
530
|
+
interface Props$1 {
|
|
531
531
|
currentPage: number;
|
|
532
532
|
countPage: number;
|
|
533
533
|
itemsVisiblePage?: number;
|
|
534
534
|
handleClickPage?: (page: any) => void;
|
|
535
535
|
}
|
|
536
|
-
declare const PaginationTable: ({ currentPage, countPage, itemsVisiblePage, handleClickPage, }: Omit<Props$
|
|
536
|
+
declare const PaginationTable: ({ currentPage, countPage, itemsVisiblePage, handleClickPage, }: Omit<Props$1, "header" | "body" | "footer">) => React__default.JSX.Element;
|
|
537
537
|
|
|
538
538
|
interface PaginationProps {
|
|
539
539
|
countPage: number;
|
|
@@ -604,12 +604,12 @@ type OptionsProps$1 = {
|
|
|
604
604
|
|
|
605
605
|
declare const BasicSelect: ({ name, optionsSelect, placeholder, isDisabled, label, hasError, handleChange, isRequired, value, isClearable, }: SelectDefaultProps$1) => React$1.JSX.Element;
|
|
606
606
|
|
|
607
|
-
interface Props
|
|
607
|
+
interface Props {
|
|
608
608
|
isOpen: boolean;
|
|
609
609
|
text?: string;
|
|
610
610
|
mini?: boolean;
|
|
611
611
|
}
|
|
612
|
-
declare function OverlayLoadingSpinner({ isOpen, text, mini, }: Readonly<Props
|
|
612
|
+
declare function OverlayLoadingSpinner({ isOpen, text, mini, }: Readonly<Props>): React$1.JSX.Element;
|
|
613
613
|
|
|
614
614
|
declare const Option: (props: any) => JSX.Element;
|
|
615
615
|
declare const MenuList: (props: any) => JSX.Element;
|
|
@@ -787,10 +787,11 @@ declare const ModalHeader: ({ children, onClose, className }: ModalHeaderProps)
|
|
|
787
787
|
|
|
788
788
|
declare const ModalBody: ({ children, className }: ModalBodyProps) => React__default.JSX.Element;
|
|
789
789
|
|
|
790
|
-
interface
|
|
791
|
-
itens:
|
|
790
|
+
interface MenuActionProps {
|
|
791
|
+
itens: React.ReactNode[];
|
|
792
792
|
}
|
|
793
|
-
|
|
793
|
+
|
|
794
|
+
declare const MenuAction: ({ itens }: MenuActionProps) => React__default.JSX.Element;
|
|
794
795
|
|
|
795
796
|
interface SkeletonProps {
|
|
796
797
|
className?: string;
|
package/lib/index.esm.js
CHANGED
|
@@ -1187,10 +1187,17 @@ function FooterPge(_a) {
|
|
|
1187
1187
|
React__default.createElement("span", { className: styles$q.copyrightText }, "2025 \u00A9 Copyright - Todos os direitos reservados."))));
|
|
1188
1188
|
}
|
|
1189
1189
|
|
|
1190
|
-
var css_248z$t = ".styles-module__accordion___BdbSg {\r\n border-radius: 15px;\r\n width: 100%;\r\n}\r\n\r\n.styles-module__accordionItem___AcHG1 {\r\n background-color: var(--background-color);\r\n border-radius: 15px;\r\n margin-bottom: 10px;\r\n}\r\n\r\n.styles-module__header___0zXFp {\r\n border-radius: 15px;\r\n margin: 0;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F {\r\n width: 100%;\r\n background-color: var(--background-color);\r\n box-shadow: none;\r\n border: 1px solid var(--light-grey-color);\r\n font-size: var(--font-size-20);\r\n font-weight: var(--input-font-weight);\r\n line-height: 30px;\r\n text-align: left;\r\n color: var(--primary-color);\r\n padding: 12px 16px;\r\n position: relative;\r\n cursor: pointer;\r\n transition: all 0.3s ease;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n.styles-module__collapsed___7DjAi {\r\n border-radius: 15px;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F:focus {\r\n border: 2px solid var(--color-weaker-blue);\r\n outline: none;\r\n box-shadow: none;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F.styles-module__collapsed___7DjAi:focus {\r\n border-radius: 15px;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F:not(.styles-module__collapsed___7DjAi):focus {\r\n border: 1px solid var();\r\n outline: none;\r\n box-shadow: none;\r\n border-top-left-radius: 15px;\r\n border-top-right-radius: 15px;\r\n}\r\n\r\n.styles-module__accordionIcon___s2ytc {\r\n display: inline-
|
|
1191
|
-
var styles$p = {"accordion":"styles-module__accordion___BdbSg","accordionItem":"styles-module__accordionItem___AcHG1","header":"styles-module__header___0zXFp","accordionButton":"styles-module__accordionButton___5W70F","collapsed":"styles-module__collapsed___7DjAi","accordionIcon":"styles-module__accordionIcon___s2ytc","accordionCollapse":"styles-module__accordionCollapse___g1CA6","show":"styles-module__show___xeyUH","accordionBody":"styles-module__accordionBody___goPRU"};
|
|
1190
|
+
var css_248z$t = ".styles-module__accordion___BdbSg {\r\n border-radius: 15px;\r\n width: 100%;\r\n}\r\n\r\n.styles-module__accordionItem___AcHG1 {\r\n background-color: var(--background-color);\r\n border-radius: 15px;\r\n margin-bottom: 10px;\r\n}\r\n\r\n.styles-module__header___0zXFp {\r\n border-radius: 15px;\r\n margin: 0;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F {\r\n width: 100%;\r\n background-color: var(--background-color);\r\n box-shadow: none;\r\n border: 1px solid var(--light-grey-color);\r\n font-size: var(--font-size-20);\r\n font-weight: var(--input-font-weight);\r\n line-height: 30px;\r\n text-align: left;\r\n color: var(--primary-color);\r\n padding: 12px 16px;\r\n position: relative;\r\n cursor: pointer;\r\n transition: all 0.3s ease;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n.styles-module__collapsed___7DjAi {\r\n border-radius: 15px;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F:focus {\r\n border: 2px solid var(--color-weaker-blue);\r\n outline: none;\r\n box-shadow: none;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F.styles-module__collapsed___7DjAi:focus {\r\n border-radius: 15px;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F:not(.styles-module__collapsed___7DjAi):focus {\r\n border: 1px solid var(--light-grey-color);\r\n outline: none;\r\n box-shadow: none;\r\n border-top-left-radius: 15px;\r\n border-top-right-radius: 15px;\r\n}\r\n\r\n.styles-module__accordionIcon___s2ytc {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 24px;\r\n height: 24px;\r\n transition: transform 0.3s ease-in-out;\r\n transform: rotate(180deg);\r\n flex-shrink: 0;\r\n}\r\n\r\n.styles-module__accordionIconContainer___FUceu {\r\n fill: #005a924d;\r\n transition: fill 0.2s ease;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F:hover .styles-module__accordionIconContainer___FUceu {\r\n fill: #00436d80;\r\n}\r\n\r\n.styles-module__accordionButton___5W70F:focus .styles-module__accordionIconContainer___FUceu {\r\n fill: #00436d80;\r\n}\r\n\r\n.styles-module__accordionIconArrow___PEwuM {\r\n fill: #ffffff;\r\n}\r\n\r\n.styles-module__dark-mode___XMLvW .styles-module__accordionIconContainer___FUceu {\r\n fill: #ffffff;\r\n}\r\n\r\n.styles-module__dark-mode___XMLvW .styles-module__accordionIconArrow___PEwuM {\r\n fill: #4a4a4a;\r\n}\r\n\r\n.styles-module__collapsed___7DjAi .styles-module__accordionIcon___s2ytc {\r\n transform: rotate(0deg);\r\n}\r\n\r\n.styles-module__accordionCollapse___g1CA6 {\r\n max-height: 0;\r\n overflow: hidden;\r\n transition: max-height 0.2s ease-out;\r\n}\r\n\r\n.styles-module__accordionCollapse___g1CA6.styles-module__show___xeyUH {\r\n max-height: fit-content;\r\n}\r\n\r\n.styles-module__accordionBody___goPRU {\r\n background-color: var(--background-color);\r\n border: 1px solid var(--light-grey-color);\r\n border-top: none;\r\n border-bottom-left-radius: 15px;\r\n border-bottom-right-radius: 15px;\r\n padding: 16px;\r\n}\r\n";
|
|
1191
|
+
var styles$p = {"accordion":"styles-module__accordion___BdbSg","accordionItem":"styles-module__accordionItem___AcHG1","header":"styles-module__header___0zXFp","accordionButton":"styles-module__accordionButton___5W70F","collapsed":"styles-module__collapsed___7DjAi","accordionIcon":"styles-module__accordionIcon___s2ytc","accordionIconContainer":"styles-module__accordionIconContainer___FUceu","accordionIconArrow":"styles-module__accordionIconArrow___PEwuM","accordionCollapse":"styles-module__accordionCollapse___g1CA6","show":"styles-module__show___xeyUH","accordionBody":"styles-module__accordionBody___goPRU"};
|
|
1192
1192
|
styleInject(css_248z$t);
|
|
1193
1193
|
|
|
1194
|
+
var IconAccordionChevron = function (_a) {
|
|
1195
|
+
var className = _a.className, containerClassName = _a.containerClassName, arrowClassName = _a.arrowClassName, props = __rest(_a, ["className", "containerClassName", "arrowClassName"]);
|
|
1196
|
+
return (React__default.createElement("svg", __assign({ width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: className }, props),
|
|
1197
|
+
React__default.createElement("rect", { width: "24", height: "24", rx: "12", className: containerClassName }),
|
|
1198
|
+
React__default.createElement("path", { d: "M12.5 17L6 10.5135L7.51667 9L12.5 13.973L17.4833 9L19 10.5135L12.5 17Z", className: arrowClassName })));
|
|
1199
|
+
};
|
|
1200
|
+
|
|
1194
1201
|
function AccordionItem(_a) {
|
|
1195
1202
|
var title = _a.title, content = _a.content, providedId = _a.id, _b = _a.defaultOpen, defaultOpen = _b === void 0 ? false : _b;
|
|
1196
1203
|
var generatedId = useId$1();
|
|
@@ -1203,7 +1210,8 @@ function AccordionItem(_a) {
|
|
|
1203
1210
|
React__default.createElement("h2", { className: styles$p.header },
|
|
1204
1211
|
React__default.createElement("button", { className: "".concat(styles$p.accordionButton, " ").concat(isOpen ? "" : styles$p.collapsed), type: "button", onClick: toggleAccordion, "aria-expanded": isOpen, "aria-controls": id },
|
|
1205
1212
|
title,
|
|
1206
|
-
React__default.createElement("span", { className: styles$p.accordionIcon }
|
|
1213
|
+
React__default.createElement("span", { className: styles$p.accordionIcon },
|
|
1214
|
+
React__default.createElement(IconAccordionChevron, { containerClassName: styles$p.accordionIconContainer, arrowClassName: styles$p.accordionIconArrow })))),
|
|
1207
1215
|
React__default.createElement("div", { id: id, className: "".concat(styles$p.accordionCollapse, " ").concat(isOpen ? styles$p.show : "") },
|
|
1208
1216
|
React__default.createElement("div", { className: styles$p.accordionBody }, content))));
|
|
1209
1217
|
}
|
|
@@ -24154,31 +24162,137 @@ var ModalBody = function (_a) {
|
|
|
24154
24162
|
return (React__default.createElement("div", { className: "".concat(style.modalBody, " ").concat(className || "") }, children));
|
|
24155
24163
|
};
|
|
24156
24164
|
|
|
24157
|
-
var css_248z$b = ".styles-module__relativeDiv___4G0-P {\r\n
|
|
24158
|
-
var styles$a = {"relativeDiv":"styles-module__relativeDiv___4G0-P","buttonDropdownTrigger":"styles-module__buttonDropdownTrigger___EZxPN","dropdownMenu":"styles-module__dropdownMenu___s4viz","
|
|
24165
|
+
var css_248z$b = ".styles-module__relativeDiv___4G0-P {\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: 8px;\r\n margin-right: 4px;\r\n position: relative;\r\n}\r\n\r\n.styles-module__buttonDropdownTrigger___EZxPN {\r\n cursor: pointer;\r\n padding: 8px;\r\n border: none;\r\n background: transparent;\r\n border-radius: 8px;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n\r\n.styles-module__dropdownMenu___s4viz {\r\n position: absolute;\r\n right: 0;\r\n top: calc(100% + 6px);\r\n background-color: white;\r\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);\r\n border-radius: 8px;\r\n min-width: 120px;\r\n width: fit-content;\r\n max-width: calc(100vw - 32px);\r\n white-space: nowrap;\r\n z-index: 9999;\r\n padding: 4px;\r\n outline: none;\r\n opacity: 0;\r\n transition: opacity 280ms ease;\r\n}\r\n\r\n.styles-module__openUp___NKJFe {\r\n top: auto;\r\n bottom: calc(100% + 6px);\r\n}\r\n\r\n.styles-module__alignLeft___Z8wcg {\r\n right: auto;\r\n left: 0;\r\n}\r\n\r\n.styles-module__dropdownItem___5HFiy {\r\n display: flex;\r\n align-items: center;\r\n width: 100%;\r\n font-size: 14px;\r\n color: var(--color-secondary);\r\n background-color: white;\r\n padding: 6px 10px;\r\n border: none;\r\n cursor: pointer;\r\n outline: none;\r\n}\r\n\r\n.styles-module__dropdownItem___5HFiy:focus,\r\n.styles-module__dropdownItem___5HFiy:hover {\r\n background-color: var(--background-color-table-hover);\r\n}\r\n\r\n.styles-module__dropdownItemEmpty___1jeUQ:hover {\r\n background-color: transparent;\r\n cursor: default;\r\n}\r\n\r\n.styles-module__dropdownItem___5HFiy > span {\r\n width: 100%;\r\n}\r\n\r\n.styles-module__dropdownItem___5HFiy svg {\r\n vertical-align: middle;\r\n margin-right: 4px;\r\n color: var(--color-pge-base);\r\n flex: 0 0 auto;\r\n width: 12px;\r\n height: 12px;\r\n}\r\n\r\n.styles-module__dropdownItem___5HFiy label {\r\n vertical-align: middle;\r\n border: none;\r\n cursor: pointer;\r\n font-family: var(--font-open-sans-regular);\r\n font-weight: 400;\r\n font-size: 13px;\r\n line-height: 1;\r\n}\r\n\r\n.styles-module__menuVisible___8lvfd {\r\n opacity: 1 !important;\r\n pointer-events: auto;\r\n}\r\n\r\n.styles-module__menuHidden___fTSVx {\r\n opacity: 0;\r\n pointer-events: none;\r\n}\r\n\r\n/* mobile adjustments */\r\n@media (max-width: 480px) {\r\n .styles-module__dropdownMenu___s4viz {\r\n position: fixed;\r\n right: 8px;\r\n left: 8px;\r\n top: auto;\r\n border-radius: 12px;\r\n padding: 4px;\r\n max-height: calc(100vh - 32px);\r\n overflow-y: auto;\r\n box-sizing: border-box;\r\n white-space: normal;\r\n }\r\n .styles-module__openUp___NKJFe {\r\n bottom: 8px;\r\n }\r\n}\r\n";
|
|
24166
|
+
var styles$a = {"relativeDiv":"styles-module__relativeDiv___4G0-P","buttonDropdownTrigger":"styles-module__buttonDropdownTrigger___EZxPN","dropdownMenu":"styles-module__dropdownMenu___s4viz","openUp":"styles-module__openUp___NKJFe","alignLeft":"styles-module__alignLeft___Z8wcg","dropdownItem":"styles-module__dropdownItem___5HFiy","dropdownItemEmpty":"styles-module__dropdownItemEmpty___1jeUQ","menuVisible":"styles-module__menuVisible___8lvfd","menuHidden":"styles-module__menuHidden___fTSVx"};
|
|
24159
24167
|
styleInject(css_248z$b);
|
|
24160
24168
|
|
|
24161
24169
|
var MenuAction = function (_a) {
|
|
24162
24170
|
var itens = _a.itens;
|
|
24163
|
-
var _b = useState(false), isOpen = _b[0], setIsOpen = _b[1];
|
|
24164
|
-
var dropdownRef = useRef(null);
|
|
24165
24171
|
var filteredItems = itens.filter(Boolean);
|
|
24172
|
+
var _b = useState(false), isOpen = _b[0], setIsOpen = _b[1];
|
|
24173
|
+
var containerRef = useRef(null);
|
|
24174
|
+
var triggerRef = useRef(null);
|
|
24175
|
+
var _c = useState(false), openUp = _c[0], setOpenUp = _c[1];
|
|
24176
|
+
var _d = useState(false), alignLeft = _d[0], setAlignLeft = _d[1];
|
|
24177
|
+
var _e = useState(null), menuCoords = _e[0], setMenuCoords = _e[1];
|
|
24178
|
+
var menuRef = useRef(null);
|
|
24179
|
+
var _f = useState(false), renderMenu = _f[0], setRenderMenu = _f[1];
|
|
24180
|
+
var _g = useState(false), isClosing = _g[0], setIsClosing = _g[1];
|
|
24181
|
+
var closeTimeoutRef = useRef(null);
|
|
24166
24182
|
useEffect(function () {
|
|
24167
|
-
|
|
24168
|
-
|
|
24169
|
-
|
|
24170
|
-
|
|
24171
|
-
|
|
24172
|
-
|
|
24183
|
+
function handleOutside(e) {
|
|
24184
|
+
var target = e.target;
|
|
24185
|
+
if (containerRef.current &&
|
|
24186
|
+
target &&
|
|
24187
|
+
containerRef.current.contains(target))
|
|
24188
|
+
return;
|
|
24189
|
+
if (menuRef.current && target && menuRef.current.contains(target))
|
|
24190
|
+
return;
|
|
24191
|
+
setIsOpen(false);
|
|
24192
|
+
}
|
|
24193
|
+
function handleKey(e) {
|
|
24194
|
+
if (e.key === "Escape")
|
|
24195
|
+
setIsOpen(false);
|
|
24196
|
+
}
|
|
24197
|
+
if (isOpen) {
|
|
24198
|
+
document.addEventListener("mousedown", handleOutside);
|
|
24199
|
+
document.addEventListener("touchstart", handleOutside);
|
|
24200
|
+
document.addEventListener("keydown", handleKey);
|
|
24201
|
+
}
|
|
24202
|
+
return function () {
|
|
24203
|
+
document.removeEventListener("mousedown", handleOutside);
|
|
24204
|
+
document.removeEventListener("touchstart", handleOutside);
|
|
24205
|
+
document.removeEventListener("keydown", handleKey);
|
|
24206
|
+
};
|
|
24207
|
+
}, [isOpen]);
|
|
24208
|
+
useEffect(function () {
|
|
24209
|
+
if (!isOpen || !triggerRef.current)
|
|
24210
|
+
return;
|
|
24211
|
+
var updateCoords = function () {
|
|
24212
|
+
if (!triggerRef.current)
|
|
24213
|
+
return;
|
|
24214
|
+
var rect = triggerRef.current.getBoundingClientRect();
|
|
24215
|
+
var topPos = rect.top + 20;
|
|
24216
|
+
var leftPos = rect.left + 12;
|
|
24217
|
+
setOpenUp(false);
|
|
24218
|
+
setAlignLeft(true);
|
|
24219
|
+
setMenuCoords({
|
|
24220
|
+
top: topPos,
|
|
24221
|
+
left: leftPos,
|
|
24222
|
+
useTransform: true,
|
|
24223
|
+
});
|
|
24224
|
+
};
|
|
24225
|
+
updateCoords();
|
|
24226
|
+
window.addEventListener("scroll", toggle, true);
|
|
24227
|
+
window.addEventListener("resize", updateCoords);
|
|
24228
|
+
return function () {
|
|
24229
|
+
window.removeEventListener("scroll", toggle, true);
|
|
24230
|
+
window.removeEventListener("resize", updateCoords);
|
|
24231
|
+
};
|
|
24232
|
+
}, [isOpen]);
|
|
24233
|
+
useEffect(function () {
|
|
24234
|
+
if (isOpen) {
|
|
24235
|
+
if (closeTimeoutRef.current) {
|
|
24236
|
+
window.clearTimeout(closeTimeoutRef.current);
|
|
24237
|
+
closeTimeoutRef.current = null;
|
|
24238
|
+
}
|
|
24239
|
+
setRenderMenu(true);
|
|
24240
|
+
setIsClosing(false);
|
|
24241
|
+
return;
|
|
24242
|
+
}
|
|
24243
|
+
if (!isOpen && renderMenu) {
|
|
24244
|
+
setIsClosing(true);
|
|
24245
|
+
closeTimeoutRef.current = window.setTimeout(function () {
|
|
24246
|
+
setRenderMenu(false);
|
|
24247
|
+
setIsClosing(false);
|
|
24248
|
+
closeTimeoutRef.current = null;
|
|
24249
|
+
}, 180);
|
|
24250
|
+
}
|
|
24251
|
+
return function () {
|
|
24252
|
+
if (closeTimeoutRef.current) {
|
|
24253
|
+
window.clearTimeout(closeTimeoutRef.current);
|
|
24254
|
+
closeTimeoutRef.current = null;
|
|
24173
24255
|
}
|
|
24174
24256
|
};
|
|
24175
|
-
|
|
24176
|
-
|
|
24177
|
-
|
|
24178
|
-
|
|
24179
|
-
|
|
24180
|
-
|
|
24181
|
-
|
|
24257
|
+
}, [isOpen, renderMenu]);
|
|
24258
|
+
var toggle = function () { return setIsOpen(function (s) { return !s; }); };
|
|
24259
|
+
var handleTriggerKeyDown = function (e) {
|
|
24260
|
+
var _a;
|
|
24261
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
24262
|
+
e.preventDefault();
|
|
24263
|
+
setIsOpen(function (s) { return !s; });
|
|
24264
|
+
}
|
|
24265
|
+
else if (e.key === "ArrowDown") {
|
|
24266
|
+
e.preventDefault();
|
|
24267
|
+
setIsOpen(true);
|
|
24268
|
+
var first = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.querySelector("[role='menuitem']");
|
|
24269
|
+
first === null || first === void 0 ? void 0 : first.focus();
|
|
24270
|
+
}
|
|
24271
|
+
};
|
|
24272
|
+
var handleItemClick = function () {
|
|
24273
|
+
setIsOpen(false);
|
|
24274
|
+
};
|
|
24275
|
+
return (React__default.createElement("div", { className: styles$a.relativeDiv, ref: containerRef },
|
|
24276
|
+
React__default.createElement("button", { ref: triggerRef, className: styles$a.buttonDropdownTrigger, onClick: toggle, onKeyDown: handleTriggerKeyDown, "aria-haspopup": "menu", "aria-expanded": isOpen, title: "Menu", type: "button" },
|
|
24277
|
+
React__default.createElement(CommonDotIcon, null)),
|
|
24278
|
+
renderMenu &&
|
|
24279
|
+
(typeof document !== "undefined" && menuCoords ? (createPortal(React__default.createElement("div", { ref: menuRef, className: "".concat(styles$a.dropdownMenu, " ").concat(openUp ? styles$a.openUp : "", " ").concat(alignLeft ? styles$a.alignLeft : "", " ").concat(isOpen && !isClosing ? styles$a.menuVisible : "", " ").concat(isClosing ? styles$a.menuHidden : ""), role: "menu", style: {
|
|
24280
|
+
position: "fixed",
|
|
24281
|
+
top: menuCoords.top,
|
|
24282
|
+
left: typeof menuCoords.left !== "undefined"
|
|
24283
|
+
? menuCoords.left
|
|
24284
|
+
: undefined,
|
|
24285
|
+
right: typeof menuCoords.right !== "undefined"
|
|
24286
|
+
? menuCoords.right
|
|
24287
|
+
: undefined,
|
|
24288
|
+
bottom: menuCoords.bottom,
|
|
24289
|
+
transform: menuCoords.useTransform
|
|
24290
|
+
? "translateX(-100%)"
|
|
24291
|
+
: undefined,
|
|
24292
|
+
transformOrigin: menuCoords.useTransform
|
|
24293
|
+
? "right top"
|
|
24294
|
+
: undefined,
|
|
24295
|
+
} }, filteredItems.length === 0 ? (React__default.createElement("div", { className: "".concat(styles$a.dropdownItem, " ").concat(styles$a.dropdownItemEmpty), role: "menuitem", tabIndex: 0 }, "Nenhum item dispon\u00EDvel")) : (filteredItems.map(function (item, index) { return (React__default.createElement("div", { key: index, className: styles$a.dropdownItem, role: "menuitem", tabIndex: 0, onClick: handleItemClick }, item)); }))), document.body)) : (React__default.createElement("div", { className: "".concat(styles$a.dropdownMenu, " ").concat(openUp ? styles$a.openUp : "", " ").concat(alignLeft ? styles$a.alignLeft : "", " ").concat(isOpen && !isClosing ? styles$a.menuVisible : "", " ").concat(isClosing ? styles$a.menuHidden : ""), role: "menu" }, filteredItems.length === 0 ? (React__default.createElement("div", { className: styles$a.dropdownItem, role: "menuitem", tabIndex: 0 }, "Nenhum item dispon\u00EDvel")) : (filteredItems.map(function (item, index) { return (React__default.createElement("div", { key: index, className: styles$a.dropdownItem, role: "menuitem", tabIndex: 0, onClick: handleItemClick }, item)); })))))));
|
|
24182
24296
|
};
|
|
24183
24297
|
|
|
24184
24298
|
var css_248z$a = ".styles-module__skeletonContainer___0VNvK {\r\n background: #e5e7eb;\r\n border-radius: inherit;\r\n height: 100%;\r\n width: 100%;\r\n}\r\n\r\n.styles-module__skeletonCell___EOlCz {\r\n animation: styles-module__skeletonLoading___n8C-o 1.5s infinite;\r\n background: linear-gradient(\r\n 90deg,\r\n rgba(255, 255, 255, 0) 0,\r\n rgba(255, 255, 255, 0.6) 50%,\r\n rgba(255, 255, 255, 0) 100%\r\n );\r\n background-size: 200px 100%;\r\n background-repeat: no-repeat;\r\n border-radius: inherit;\r\n height: 100%;\r\n min-height: 24px;\r\n overflow: hidden;\r\n position: relative;\r\n width: 100%;\r\n}\r\n\r\n@keyframes styles-module__skeletonLoading___n8C-o {\r\n 0% {\r\n background-position: -200px 0;\r\n }\r\n 100% {\r\n background-position: calc(200px + 100%) 0;\r\n }\r\n}\r\n";
|