UNPKG

analytica-frontend-lib

Version:

Repositório público dos componentes utilizados nas plataformas da Analytica Ensino

89 lines (75 loc) 3.67 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _chunkZHWRUIVEjs = require('./chunk-ZHWRUIVE.js'); var _chunkBVUPM6EYjs = require('./chunk-BVUPM6EY.js'); var _chunk76VXVNA2js = require('./chunk-76VXVNA2.js'); var _chunkTCLRDUMFjs = require('./chunk-TCLRDUMF.js'); // src/components/CalendarCard/CalendarCard.tsx var _CalendarBlank = require('@phosphor-icons/react/dist/csr/CalendarBlank'); var _react = require('react'); var _jsxruntime = require('react/jsx-runtime'); var CalendarCard = ({ content, isOpen, onOpenChange, title = "Calend\xE1rio", className }) => { const { isMobile } = _chunkZHWRUIVEjs.useMobile.call(void 0, ); const [internalOpen, setInternalOpen] = _react.useState.call(void 0, false); const isControlled = isOpen !== void 0; const effectiveOpen = isControlled ? isOpen : internalOpen; const handleOpenChange = _react.useCallback.call(void 0, (open) => { if (!isControlled) { setInternalOpen(open); } _optionalChain([onOpenChange, 'optionalCall', _ => _(open)]); }, [isControlled, onOpenChange] ); const iconColor = effectiveOpen ? "text-primary-950" : "text-primary"; const triggerIcon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _CalendarBlank.CalendarBlankIcon, { size: 24, className: iconColor }); if (isMobile) { return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBVUPM6EYjs.IconButton_default, { active: effectiveOpen, onClick: () => handleOpenChange(!effectiveOpen), icon: triggerIcon, className } ), /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTCLRDUMFjs.Modal_default, { isOpen: effectiveOpen, onClose: () => handleOpenChange(false), title, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex justify-center", children: content }) } ) ] }); } return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk76VXVNA2js.DropdownMenu_default, { open: effectiveOpen, onOpenChange: handleOpenChange, children: [ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk76VXVNA2js.DropdownMenuTrigger, { className: `text-primary cursor-pointer ${_nullishCoalesce(className, () => ( ""))}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBVUPM6EYjs.IconButton_default, { active: effectiveOpen, icon: triggerIcon }) } ), /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk76VXVNA2js.DropdownMenuContent, { className: "w-[320px] max-w-[calc(100vw-16px)] max-h-[80vh] overflow-y-auto", align: "end", side: "bottom", children: content } ) ] }); }; var CalendarCard_default = CalendarCard; exports.CalendarCard = CalendarCard; exports.CalendarCard_default = CalendarCard_default; //# sourceMappingURL=chunk-OGTKQFPY.js.map