analytica-frontend-lib 1.2.24 → 1.2.28
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/Accordation/index.d.ts +4 -5
- package/dist/Accordation/index.d.ts.map +1 -0
- package/dist/Accordation/index.js.map +1 -1
- package/dist/Accordation/index.mjs.map +1 -1
- package/dist/ActivityDetails/index.css +19293 -0
- package/dist/ActivityDetails/index.css.map +1 -0
- package/dist/ActivityDetails/index.d.ts +31 -0
- package/dist/ActivityDetails/index.d.ts.map +1 -0
- package/dist/ActivityDetails/index.js +7359 -0
- package/dist/ActivityDetails/index.js.map +1 -0
- package/dist/ActivityDetails/index.mjs +7408 -0
- package/dist/ActivityDetails/index.mjs.map +1 -0
- package/dist/ActivityFilters/index.css +19293 -0
- package/dist/ActivityFilters/index.css.map +1 -0
- package/dist/ActivityFilters/index.d.ts +44 -0
- package/dist/ActivityFilters/index.d.ts.map +1 -0
- package/dist/ActivityFilters/index.js +4906 -0
- package/dist/ActivityFilters/index.js.map +1 -0
- package/dist/ActivityFilters/index.mjs +4921 -0
- package/dist/ActivityFilters/index.mjs.map +1 -0
- package/dist/Alert/index.d.ts +3 -5
- package/dist/Alert/index.d.ts.map +1 -0
- package/dist/Alert/index.js.map +1 -1
- package/dist/Alert/index.mjs.map +1 -1
- package/dist/AlertDialog/index.d.ts +2 -4
- package/dist/AlertDialog/index.d.ts.map +1 -0
- package/dist/AlertDialog/index.js.map +1 -1
- package/dist/AlertDialog/index.mjs.map +1 -1
- package/dist/AlertManager/index.css +127 -0
- package/dist/AlertManager/index.css.map +1 -1
- package/dist/AlertManager/index.d.ts +4 -8
- package/dist/AlertManager/index.d.ts.map +1 -0
- package/dist/AlertManager/index.js +23 -19
- package/dist/AlertManager/index.js.map +1 -1
- package/dist/AlertManager/index.mjs +45 -41
- package/dist/AlertManager/index.mjs.map +1 -1
- package/dist/AlertManagerView/index.d.ts +6 -10
- package/dist/AlertManagerView/index.d.ts.map +1 -0
- package/dist/AlertManagerView/index.js.map +1 -1
- package/dist/AlertManagerView/index.mjs.map +1 -1
- package/dist/Alternative/index.d.ts +6 -9
- package/dist/Alternative/index.d.ts.map +1 -0
- package/dist/Alternative/index.js.map +1 -1
- package/dist/Alternative/index.mjs.map +1 -1
- package/dist/Auth/AuthProvider/index.d.ts +324 -3
- package/dist/Auth/AuthProvider/index.d.ts.map +1 -0
- package/dist/Auth/ProtectedRoute/index.d.ts +324 -3
- package/dist/Auth/ProtectedRoute/index.d.ts.map +1 -0
- package/dist/Auth/PublicRoute/index.d.ts +324 -3
- package/dist/Auth/PublicRoute/index.d.ts.map +1 -0
- package/dist/Auth/getRootDomain/index.d.ts +324 -3
- package/dist/Auth/getRootDomain/index.d.ts.map +1 -0
- package/dist/Auth/index.d.ts +24 -26
- package/dist/Auth/index.d.ts.map +1 -0
- package/dist/Auth/useApiConfig/index.d.ts +3 -3
- package/dist/Auth/useApiConfig/index.d.ts.map +1 -0
- package/dist/Auth/useAuth/index.d.ts +324 -3
- package/dist/Auth/useAuth/index.d.ts.map +1 -0
- package/dist/Auth/useAuthGuard/index.d.ts +324 -3
- package/dist/Auth/useAuthGuard/index.d.ts.map +1 -0
- package/dist/Auth/useRouteAuth/index.d.ts +324 -3
- package/dist/Auth/useRouteAuth/index.d.ts.map +1 -0
- package/dist/Auth/useUrlAuthentication/index.d.ts +3 -4
- package/dist/Auth/useUrlAuthentication/index.d.ts.map +1 -0
- package/dist/Auth/withAuth/index.d.ts +324 -3
- package/dist/Auth/withAuth/index.d.ts.map +1 -0
- package/dist/Auth/zustandAuthAdapter/index.d.ts +2 -3
- package/dist/Auth/zustandAuthAdapter/index.d.ts.map +1 -0
- package/dist/Badge/index.d.ts +4 -6
- package/dist/Badge/index.d.ts.map +1 -0
- package/dist/Badge/index.js.map +1 -1
- package/dist/Badge/index.mjs.map +1 -1
- package/dist/BreadcrumbMenu/breadcrumbStore/index.d.ts +5 -7
- package/dist/BreadcrumbMenu/breadcrumbStore/index.d.ts.map +1 -0
- package/dist/BreadcrumbMenu/index.d.ts +4 -8
- package/dist/BreadcrumbMenu/index.d.ts.map +1 -0
- package/dist/BreadcrumbMenu/index.js.map +1 -1
- package/dist/BreadcrumbMenu/index.mjs.map +1 -1
- package/dist/BreadcrumbMenu/useBreadcrumbBuilder/index.d.ts +7 -10
- package/dist/BreadcrumbMenu/useBreadcrumbBuilder/index.d.ts.map +1 -0
- package/dist/BreadcrumbMenu/useUrlParams/index.d.ts +3 -4
- package/dist/BreadcrumbMenu/useUrlParams/index.d.ts.map +1 -0
- package/dist/Button/index.d.ts +4 -6
- package/dist/Button/index.d.ts.map +1 -0
- package/dist/Button/index.js.map +1 -1
- package/dist/Button/index.mjs.map +1 -1
- package/dist/Calendar/index.d.ts +9 -11
- package/dist/Calendar/index.d.ts.map +1 -0
- package/dist/Calendar/index.js.map +1 -1
- package/dist/Calendar/index.mjs.map +1 -1
- package/dist/Card/index.d.ts +17 -19
- package/dist/Card/index.d.ts.map +1 -0
- package/dist/Card/index.js.map +1 -1
- package/dist/Card/index.mjs.map +1 -1
- package/dist/CheckBox/index.d.ts +6 -8
- package/dist/CheckBox/index.d.ts.map +1 -0
- package/dist/CheckBox/index.js.map +1 -1
- package/dist/CheckBox/index.mjs.map +1 -1
- package/dist/Chips/index.d.ts +4 -6
- package/dist/Chips/index.d.ts.map +1 -0
- package/dist/Chips/index.js.map +1 -1
- package/dist/Chips/index.mjs.map +1 -1
- package/dist/CorrectActivityModal/index.d.ts +39 -0
- package/dist/CorrectActivityModal/index.d.ts.map +1 -0
- package/dist/CorrectActivityModal/index.js +3674 -0
- package/dist/CorrectActivityModal/index.js.map +1 -0
- package/dist/CorrectActivityModal/index.mjs +3689 -0
- package/dist/CorrectActivityModal/index.mjs.map +1 -0
- package/dist/Divider/index.d.ts +3 -5
- package/dist/Divider/index.d.ts.map +1 -0
- package/dist/Divider/index.js.map +1 -1
- package/dist/Divider/index.mjs.map +1 -1
- package/dist/DownloadButton/index.d.ts +5 -7
- package/dist/DownloadButton/index.d.ts.map +1 -0
- package/dist/DownloadButton/index.js.map +1 -1
- package/dist/DownloadButton/index.mjs.map +1 -1
- package/dist/DropdownMenu/index.d.ts +26 -28
- package/dist/DropdownMenu/index.d.ts.map +1 -0
- package/dist/DropdownMenu/index.js.map +1 -1
- package/dist/DropdownMenu/index.mjs.map +1 -1
- package/dist/EmptyState/index.d.ts +5 -7
- package/dist/EmptyState/index.d.ts.map +1 -0
- package/dist/EmptyState/index.js.map +1 -1
- package/dist/EmptyState/index.mjs.map +1 -1
- package/dist/FileAttachment/index.d.ts +72 -0
- package/dist/FileAttachment/index.d.ts.map +1 -0
- package/dist/FileAttachment/index.js +239 -0
- package/dist/FileAttachment/index.js.map +1 -0
- package/dist/FileAttachment/index.mjs +213 -0
- package/dist/FileAttachment/index.mjs.map +1 -0
- package/dist/IconButton/index.d.ts +6 -8
- package/dist/IconButton/index.d.ts.map +1 -0
- package/dist/IconButton/index.js.map +1 -1
- package/dist/IconButton/index.mjs.map +1 -1
- package/dist/IconRender/index.d.ts +5 -6
- package/dist/IconRender/index.d.ts.map +1 -0
- package/dist/IconRoundedButton/index.d.ts +4 -6
- package/dist/IconRoundedButton/index.d.ts.map +1 -0
- package/dist/IconRoundedButton/index.js.map +1 -1
- package/dist/IconRoundedButton/index.mjs.map +1 -1
- package/dist/Input/index.d.ts +5 -7
- package/dist/Input/index.d.ts.map +1 -0
- package/dist/LatexRenderer/index.d.ts +5 -6
- package/dist/LatexRenderer/index.d.ts.map +1 -0
- package/dist/LatexRenderer/index.js.map +1 -1
- package/dist/LatexRenderer/index.mjs.map +1 -1
- package/dist/LoadingModal/index.d.ts +3 -5
- package/dist/LoadingModal/index.d.ts.map +1 -0
- package/dist/Menu/index.d.ts +12 -14
- package/dist/Menu/index.d.ts.map +1 -0
- package/dist/Menu/index.js.map +1 -1
- package/dist/Menu/index.mjs.map +1 -1
- package/dist/Modal/index.d.ts +3 -5
- package/dist/Modal/index.d.ts.map +1 -0
- package/dist/Modal/index.js.map +1 -1
- package/dist/Modal/index.mjs.map +1 -1
- package/dist/Modal/utils/videoUtils/index.d.ts +4 -5
- package/dist/Modal/utils/videoUtils/index.d.ts.map +1 -0
- package/dist/MultipleChoice/index.d.ts +2 -4
- package/dist/MultipleChoice/index.d.ts.map +1 -0
- package/dist/MultipleChoice/index.js.map +1 -1
- package/dist/MultipleChoice/index.mjs.map +1 -1
- package/dist/NavButton/index.d.ts +5 -7
- package/dist/NavButton/index.d.ts.map +1 -0
- package/dist/NavButton/index.js.map +1 -1
- package/dist/NavButton/index.mjs.map +1 -1
- package/dist/NoSearchResult/index.d.ts +4 -6
- package/dist/NoSearchResult/index.d.ts.map +1 -0
- package/dist/NoSearchResult/index.js.map +1 -1
- package/dist/NoSearchResult/index.mjs.map +1 -1
- package/dist/NotFound/index.d.ts +4 -6
- package/dist/NotFound/index.d.ts.map +1 -0
- package/dist/NotFound/index.js.map +1 -1
- package/dist/NotFound/index.mjs.map +1 -1
- package/dist/NotificationCard/index.d.ts +218 -3
- package/dist/NotificationCard/index.d.ts.map +1 -0
- package/dist/NotificationCard/index.js.map +1 -1
- package/dist/NotificationCard/index.mjs.map +1 -1
- package/dist/ProgressBar/index.d.ts +4 -6
- package/dist/ProgressBar/index.d.ts.map +1 -0
- package/dist/ProgressBar/index.js.map +1 -1
- package/dist/ProgressBar/index.mjs.map +1 -1
- package/dist/ProgressCircle/index.d.ts +4 -6
- package/dist/ProgressCircle/index.d.ts.map +1 -0
- package/dist/ProgressCircle/index.js.map +1 -1
- package/dist/ProgressCircle/index.mjs.map +1 -1
- package/dist/Quiz/index.d.ts +19 -23
- package/dist/Quiz/index.d.ts.map +1 -0
- package/dist/Quiz/index.js.map +1 -1
- package/dist/Quiz/index.mjs.map +1 -1
- package/dist/Quiz/useQuizStore/index.d.ts +14 -17
- package/dist/Quiz/useQuizStore/index.d.ts.map +1 -0
- package/dist/Radio/index.d.ts +14 -15
- package/dist/Radio/index.d.ts.map +1 -0
- package/dist/Radio/index.js.map +1 -1
- package/dist/Radio/index.mjs.map +1 -1
- package/dist/Search/index.d.ts +4 -6
- package/dist/Search/index.d.ts.map +1 -0
- package/dist/Search/index.js.map +1 -1
- package/dist/Search/index.mjs.map +1 -1
- package/dist/Select/index.d.ts +12 -14
- package/dist/Select/index.d.ts.map +1 -0
- package/dist/Select/index.js.map +1 -1
- package/dist/Select/index.mjs.map +1 -1
- package/dist/SelectionButton/index.d.ts +5 -7
- package/dist/SelectionButton/index.d.ts.map +1 -0
- package/dist/SelectionButton/index.js.map +1 -1
- package/dist/SelectionButton/index.mjs.map +1 -1
- package/dist/Skeleton/index.d.ts +10 -12
- package/dist/Skeleton/index.d.ts.map +1 -0
- package/dist/Skeleton/index.js.map +1 -1
- package/dist/Skeleton/index.mjs.map +1 -1
- package/dist/StatisticsCard/index.d.ts +3 -5
- package/dist/StatisticsCard/index.d.ts.map +1 -0
- package/dist/StatisticsCard/index.js.map +1 -1
- package/dist/StatisticsCard/index.mjs.map +1 -1
- package/dist/Stepper/index.d.ts +6 -8
- package/dist/Stepper/index.d.ts.map +1 -0
- package/dist/Stepper/index.js.map +1 -1
- package/dist/Stepper/index.mjs.map +1 -1
- package/dist/SubjectInfo/index.d.ts +17 -2
- package/dist/SubjectInfo/index.d.ts.map +1 -0
- package/dist/Support/TicketModal/index.d.ts +14 -0
- package/dist/Support/TicketModal/index.d.ts.map +1 -0
- package/dist/Support/TicketModal/index.js +1279 -0
- package/dist/Support/TicketModal/index.js.map +1 -0
- package/dist/Support/TicketModal/index.mjs +1248 -0
- package/dist/Support/TicketModal/index.mjs.map +1 -0
- package/dist/Support/index.d.ts +8 -0
- package/dist/Support/index.d.ts.map +1 -0
- package/dist/Support/index.js +2686 -0
- package/dist/Support/index.js.map +1 -0
- package/dist/Support/index.mjs +2676 -0
- package/dist/Support/index.mjs.map +1 -0
- package/dist/Table/TablePagination/index.d.ts +4 -6
- package/dist/Table/TablePagination/index.d.ts.map +1 -0
- package/dist/Table/TablePagination/index.js.map +1 -1
- package/dist/Table/TablePagination/index.mjs.map +1 -1
- package/dist/Table/index.d.ts +18 -19
- package/dist/Table/index.d.ts.map +1 -0
- package/dist/Table/index.js.map +1 -1
- package/dist/Table/index.mjs.map +1 -1
- package/dist/TableProvider/index.css +127 -0
- package/dist/TableProvider/index.css.map +1 -1
- package/dist/TableProvider/index.d.ts +198 -4
- package/dist/TableProvider/index.d.ts.map +1 -0
- package/dist/TableProvider/index.js +23 -19
- package/dist/TableProvider/index.js.map +1 -1
- package/dist/TableProvider/index.mjs +45 -41
- package/dist/TableProvider/index.mjs.map +1 -1
- package/dist/Text/index.d.ts +4 -6
- package/dist/Text/index.d.ts.map +1 -0
- package/dist/Text/index.js.map +1 -1
- package/dist/Text/index.mjs.map +1 -1
- package/dist/TextArea/index.d.ts +6 -8
- package/dist/TextArea/index.d.ts.map +1 -0
- package/dist/TextArea/index.js.map +1 -1
- package/dist/TextArea/index.mjs.map +1 -1
- package/dist/ThemeToggle/index.d.ts +4 -8
- package/dist/ThemeToggle/index.d.ts.map +1 -0
- package/dist/ThemeToggle/index.js.map +1 -1
- package/dist/ThemeToggle/index.mjs.map +1 -1
- package/dist/Toast/ToastStore/index.d.ts +3 -5
- package/dist/Toast/ToastStore/index.d.ts.map +1 -0
- package/dist/Toast/Toaster/index.d.ts +4 -6
- package/dist/Toast/Toaster/index.d.ts.map +1 -0
- package/dist/Toast/Toaster/index.js.map +1 -1
- package/dist/Toast/Toaster/index.mjs.map +1 -1
- package/dist/Toast/index.d.ts +3 -5
- package/dist/Toast/index.d.ts.map +1 -0
- package/dist/Toast/index.js.map +1 -1
- package/dist/Toast/index.mjs.map +1 -1
- package/dist/VideoPlayer/index.d.ts +4 -6
- package/dist/VideoPlayer/index.d.ts.map +1 -0
- package/dist/VideoPlayer/index.js.map +1 -1
- package/dist/VideoPlayer/index.mjs.map +1 -1
- package/dist/Whiteboard/index.d.ts +5 -7
- package/dist/Whiteboard/index.d.ts.map +1 -0
- package/dist/Whiteboard/index.js.map +1 -1
- package/dist/Whiteboard/index.mjs.map +1 -1
- package/dist/assets/icons/subjects/BookOpenText.d.ts +5 -0
- package/dist/assets/icons/subjects/BookOpenText.d.ts.map +1 -0
- package/dist/assets/icons/subjects/ChatEN.d.ts +5 -0
- package/dist/assets/icons/subjects/ChatEN.d.ts.map +1 -0
- package/dist/assets/icons/subjects/ChatES.d.ts +5 -0
- package/dist/assets/icons/subjects/ChatES.d.ts.map +1 -0
- package/dist/assets/icons/subjects/ChatPT.d.ts +5 -0
- package/dist/assets/icons/subjects/ChatPT.d.ts.map +1 -0
- package/dist/assets/icons/subjects/HeadCircuit.d.ts +5 -0
- package/dist/assets/icons/subjects/HeadCircuit.d.ts.map +1 -0
- package/dist/assets/icons/subjects/Microscope.d.ts +5 -0
- package/dist/assets/icons/subjects/Microscope.d.ts.map +1 -0
- package/dist/enums/SubjectEnum.d.ts +19 -0
- package/dist/enums/SubjectEnum.d.ts.map +1 -0
- package/dist/hooks/useAppContent.d.ts +55 -0
- package/dist/hooks/useAppContent.d.ts.map +1 -0
- package/dist/hooks/useAppInitialization.d.ts +21 -0
- package/dist/hooks/useAppInitialization.d.ts.map +1 -0
- package/dist/hooks/useInstitution.d.ts +2 -0
- package/dist/hooks/useInstitution.d.ts.map +1 -0
- package/dist/hooks/useMobile/index.d.ts +4 -5
- package/dist/hooks/useMobile/index.d.ts.map +1 -0
- package/dist/hooks/useNotificationStore.d.ts +34 -0
- package/dist/hooks/useNotificationStore.d.ts.map +1 -0
- package/dist/hooks/useNotifications.d.ts +129 -0
- package/dist/hooks/useNotifications.d.ts.map +1 -0
- package/dist/hooks/useScreen.d.ts +38 -0
- package/dist/hooks/useScreen.d.ts.map +1 -0
- package/dist/hooks/useTheme/index.d.ts +4 -7
- package/dist/hooks/useTheme/index.d.ts.map +1 -0
- package/dist/index.css +127 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +127 -783
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9257 -6883
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +9330 -6973
- package/dist/index.mjs.map +1 -1
- package/dist/store/appStore.d.ts +27 -0
- package/dist/store/appStore.d.ts.map +1 -0
- package/dist/store/authStore.d.ts +75 -0
- package/dist/store/authStore.d.ts.map +1 -0
- package/dist/store/notificationStore.d.ts +89 -0
- package/dist/store/notificationStore.d.ts.map +1 -0
- package/dist/{themeStore-P2X64zC-.d.mts → store/themeStore.d.ts} +8 -12
- package/dist/store/themeStore.d.ts.map +1 -0
- package/dist/styles.css +127 -0
- package/dist/styles.css.map +1 -1
- package/dist/suporthistory-W5LBGAUP.png +0 -0
- package/dist/types/activityDetails.d.ts +127 -0
- package/dist/types/activityDetails.d.ts.map +1 -0
- package/dist/types/activityFilters.d.ts +51 -0
- package/dist/types/activityFilters.d.ts.map +1 -0
- package/dist/types/auth.d.ts +53 -0
- package/dist/types/auth.d.ts.map +1 -0
- package/dist/types/notifications.d.ts +199 -0
- package/dist/types/notifications.d.ts.map +1 -0
- package/dist/types/questionTypes.d.ts +6 -0
- package/dist/types/questionTypes.d.ts.map +1 -0
- package/dist/types/studentActivityCorrection.d.ts +57 -0
- package/dist/types/studentActivityCorrection.d.ts.map +1 -0
- package/dist/types/support/index.d.ts +111 -0
- package/dist/types/support/index.d.ts.map +1 -0
- package/dist/types/support/index.js +115 -0
- package/dist/types/support/index.js.map +1 -0
- package/dist/types/support/index.mjs +84 -0
- package/dist/types/support/index.mjs.map +1 -0
- package/dist/utils/activityFilters.d.ts +23 -0
- package/dist/utils/activityFilters.d.ts.map +1 -0
- package/dist/utils/dropdown.d.ts +12 -0
- package/dist/utils/dropdown.d.ts.map +1 -0
- package/dist/utils/index.d.ts +6 -19
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +24 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/index.mjs +20 -1
- package/dist/utils/index.mjs.map +1 -1
- package/dist/utils/keys.d.ts +24 -0
- package/dist/utils/keys.d.ts.map +1 -0
- package/package.json +21 -4
- package/dist/Accordation/index.d.mts +0 -15
- package/dist/Alert/index.d.mts +0 -13
- package/dist/AlertDialog/index.d.mts +0 -36
- package/dist/AlertManager/index.d.mts +0 -17
- package/dist/AlertManagerView/index.d.mts +0 -31
- package/dist/Alternative/index.d.mts +0 -81
- package/dist/Auth/AuthProvider/index.d.mts +0 -3
- package/dist/Auth/ProtectedRoute/index.d.mts +0 -3
- package/dist/Auth/PublicRoute/index.d.mts +0 -3
- package/dist/Auth/getRootDomain/index.d.mts +0 -3
- package/dist/Auth/index.d.mts +0 -326
- package/dist/Auth/useApiConfig/index.d.mts +0 -43
- package/dist/Auth/useAuth/index.d.mts +0 -3
- package/dist/Auth/useAuthGuard/index.d.mts +0 -3
- package/dist/Auth/useRouteAuth/index.d.mts +0 -3
- package/dist/Auth/useUrlAuthentication/index.d.mts +0 -69
- package/dist/Auth/withAuth/index.d.mts +0 -3
- package/dist/Auth/zustandAuthAdapter/index.d.mts +0 -75
- package/dist/Badge/index.d.mts +0 -46
- package/dist/BreadcrumbMenu/breadcrumbStore/index.d.mts +0 -77
- package/dist/BreadcrumbMenu/index.d.mts +0 -31
- package/dist/BreadcrumbMenu/useBreadcrumbBuilder/index.d.mts +0 -48
- package/dist/BreadcrumbMenu/useUrlParams/index.d.mts +0 -28
- package/dist/Button/index.d.mts +0 -45
- package/dist/Calendar/index.d.mts +0 -60
- package/dist/Card/index.d.mts +0 -150
- package/dist/CheckBox/index.d.mts +0 -74
- package/dist/CheckBoxGroup-9n5C0OH4.d.mts +0 -24
- package/dist/CheckBoxGroup-9n5C0OH4.d.ts +0 -24
- package/dist/Chips/index.d.mts +0 -41
- package/dist/Divider/index.d.mts +0 -32
- package/dist/DownloadButton/index.d.mts +0 -46
- package/dist/DropdownMenu/index.d.mts +0 -82
- package/dist/EmptyState/index.d.mts +0 -65
- package/dist/IconButton/index.d.mts +0 -76
- package/dist/IconRender/index.d.mts +0 -36
- package/dist/IconRoundedButton/index.d.mts +0 -34
- package/dist/Input/index.d.mts +0 -27
- package/dist/LatexRenderer/index.d.mts +0 -50
- package/dist/LoadingModal/index.d.mts +0 -11
- package/dist/Menu/index.d.mts +0 -48
- package/dist/Modal/index.d.mts +0 -76
- package/dist/Modal/utils/videoUtils/index.d.mts +0 -28
- package/dist/MultipleChoice/index.d.mts +0 -20
- package/dist/NavButton/index.d.mts +0 -57
- package/dist/NoSearchResult/index.d.mts +0 -37
- package/dist/NotFound/index.d.mts +0 -58
- package/dist/NotificationCard/index.d.mts +0 -3
- package/dist/NotificationCard-4GgB0Nsf.d.mts +0 -417
- package/dist/NotificationCard-4GgB0Nsf.d.ts +0 -417
- package/dist/ProgressBar/index.d.mts +0 -95
- package/dist/ProgressCircle/index.d.mts +0 -60
- package/dist/Quiz/index.d.mts +0 -55
- package/dist/Quiz/useQuizStore/index.d.mts +0 -258
- package/dist/Radio/index.d.mts +0 -203
- package/dist/Search/index.d.mts +0 -27
- package/dist/Select/index.d.mts +0 -59
- package/dist/SelectionButton/index.d.mts +0 -57
- package/dist/Skeleton/index.d.mts +0 -40
- package/dist/StatisticsCard/index.d.mts +0 -79
- package/dist/Stepper/index.d.mts +0 -169
- package/dist/SubjectInfo/index.d.mts +0 -2
- package/dist/SubjectInfo-Dvt0OodP.d.mts +0 -37
- package/dist/SubjectInfo-Dvt0OodP.d.ts +0 -37
- package/dist/Table/TablePagination/index.d.mts +0 -64
- package/dist/Table/index.d.mts +0 -93
- package/dist/TableProvider/index.d.mts +0 -4
- package/dist/TableProvider-BnAnv3OV.d.mts +0 -239
- package/dist/TableProvider-GfPlLqzg.d.ts +0 -239
- package/dist/Text/index.d.mts +0 -58
- package/dist/TextArea/index.d.mts +0 -74
- package/dist/ThemeToggle/index.d.mts +0 -12
- package/dist/Toast/ToastStore/index.d.mts +0 -19
- package/dist/Toast/Toaster/index.d.mts +0 -16
- package/dist/Toast/index.d.mts +0 -17
- package/dist/VideoPlayer/index.d.mts +0 -52
- package/dist/Whiteboard/index.d.mts +0 -34
- package/dist/hooks/useMobile/index.d.mts +0 -29
- package/dist/hooks/useTheme/index.d.mts +0 -17
- package/dist/index.d.mts +0 -783
- package/dist/styles.d.mts +0 -2
- package/dist/styles.d.ts +0 -2
- package/dist/themeStore-P2X64zC-.d.ts +0 -79
- package/dist/types-DqZRjqxh.d.ts +0 -67
- package/dist/types-pd3QVhSu.d.mts +0 -67
- package/dist/utils/index.d.mts +0 -27
|
@@ -1,3 +1,324 @@
|
|
|
1
|
-
import 'react
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { ReactNode, ComponentType } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Interface for basic authentication tokens
|
|
4
|
+
*
|
|
5
|
+
* @interface AuthTokens
|
|
6
|
+
* @property {string} token - Main authentication token
|
|
7
|
+
* @property {string} refreshToken - Token used to refresh the main token
|
|
8
|
+
* @property {unknown} [key] - Additional properties that can be included
|
|
9
|
+
*/
|
|
10
|
+
export interface AuthTokens {
|
|
11
|
+
token: string;
|
|
12
|
+
refreshToken: string;
|
|
13
|
+
[key: string]: unknown;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Interface for basic user information
|
|
17
|
+
*
|
|
18
|
+
* @interface AuthUser
|
|
19
|
+
* @property {string} id - Unique user identifier
|
|
20
|
+
* @property {string} [name] - Optional user name
|
|
21
|
+
* @property {string} [email] - Optional user email
|
|
22
|
+
* @property {unknown} [key] - Additional user properties
|
|
23
|
+
*/
|
|
24
|
+
export interface AuthUser {
|
|
25
|
+
id: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
email?: string;
|
|
28
|
+
[key: string]: unknown;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Interface for basic session information
|
|
32
|
+
*
|
|
33
|
+
* @interface SessionInfo
|
|
34
|
+
* @property {string} [institutionId] - Optional institution identifier
|
|
35
|
+
* @property {string} [profileId] - Optional profile identifier
|
|
36
|
+
* @property {string} [schoolId] - Optional school identifier
|
|
37
|
+
* @property {string} [schoolYearId] - Optional school year identifier
|
|
38
|
+
* @property {string} [classId] - Optional class identifier
|
|
39
|
+
* @property {unknown} [key] - Additional session properties
|
|
40
|
+
*/
|
|
41
|
+
export interface SessionInfo {
|
|
42
|
+
institutionId?: string;
|
|
43
|
+
profileId?: string;
|
|
44
|
+
schoolId?: string;
|
|
45
|
+
schoolYearId?: string;
|
|
46
|
+
classId?: string;
|
|
47
|
+
[key: string]: unknown;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Interface for authentication state
|
|
51
|
+
*
|
|
52
|
+
* @interface AuthState
|
|
53
|
+
* @property {boolean} isAuthenticated - Whether the user is authenticated
|
|
54
|
+
* @property {boolean} isLoading - Whether authentication is being checked
|
|
55
|
+
* @property {AuthUser | null} [user] - Current user information
|
|
56
|
+
* @property {SessionInfo | null} [sessionInfo] - Current session information
|
|
57
|
+
* @property {AuthTokens | null} [tokens] - Current authentication tokens
|
|
58
|
+
*/
|
|
59
|
+
export interface AuthState {
|
|
60
|
+
isAuthenticated: boolean;
|
|
61
|
+
isLoading: boolean;
|
|
62
|
+
user?: AuthUser | null;
|
|
63
|
+
sessionInfo?: SessionInfo | null;
|
|
64
|
+
tokens?: AuthTokens | null;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Interface for authentication context functions and state
|
|
68
|
+
*
|
|
69
|
+
* @interface AuthContextType
|
|
70
|
+
* @extends {AuthState}
|
|
71
|
+
* @property {() => Promise<boolean>} checkAuth - Function to check authentication status
|
|
72
|
+
* @property {() => void} signOut - Function to sign out the user
|
|
73
|
+
*/
|
|
74
|
+
export interface AuthContextType extends AuthState {
|
|
75
|
+
checkAuth: () => Promise<boolean>;
|
|
76
|
+
signOut: () => void;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Props for the AuthProvider component
|
|
80
|
+
*
|
|
81
|
+
* @interface AuthProviderProps
|
|
82
|
+
* @property {ReactNode} children - Child components
|
|
83
|
+
* @property {() => Promise<boolean> | boolean} [checkAuthFn] - Function to check if user is authenticated
|
|
84
|
+
* @property {() => void} [signOutFn] - Function to handle logout
|
|
85
|
+
* @property {Partial<AuthState>} [initialAuthState] - Initial authentication state
|
|
86
|
+
* @property {() => AuthUser | null | undefined} [getUserFn] - Function to get user data
|
|
87
|
+
* @property {() => SessionInfo | null | undefined} [getSessionFn] - Function to get session info
|
|
88
|
+
* @property {() => AuthTokens | null | undefined} [getTokensFn] - Function to get tokens
|
|
89
|
+
*/
|
|
90
|
+
export interface AuthProviderProps {
|
|
91
|
+
children: ReactNode;
|
|
92
|
+
/**
|
|
93
|
+
* Função para verificar se o usuário está autenticado
|
|
94
|
+
* Deve retornar uma Promise<boolean>
|
|
95
|
+
*/
|
|
96
|
+
checkAuthFn?: () => Promise<boolean> | boolean;
|
|
97
|
+
/**
|
|
98
|
+
* Função para fazer logout
|
|
99
|
+
*/
|
|
100
|
+
signOutFn?: () => void;
|
|
101
|
+
/**
|
|
102
|
+
* Estado de autenticação inicial
|
|
103
|
+
*/
|
|
104
|
+
initialAuthState?: Partial<AuthState>;
|
|
105
|
+
/**
|
|
106
|
+
* Função para obter dados do usuário (opcional)
|
|
107
|
+
*/
|
|
108
|
+
getUserFn?: () => AuthUser | null | undefined;
|
|
109
|
+
/**
|
|
110
|
+
* Função para obter informações da sessão (opcional)
|
|
111
|
+
*/
|
|
112
|
+
getSessionFn?: () => SessionInfo | null | undefined;
|
|
113
|
+
/**
|
|
114
|
+
* Função para obter tokens (opcional)
|
|
115
|
+
*/
|
|
116
|
+
getTokensFn?: () => AuthTokens | null | undefined;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Authentication provider that manages global auth state
|
|
120
|
+
* Compatible with any store (Zustand, Redux, Context, etc.)
|
|
121
|
+
*
|
|
122
|
+
* @param {AuthProviderProps} props - The provider props
|
|
123
|
+
* @returns {JSX.Element} The provider component
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```tsx
|
|
127
|
+
* <AuthProvider
|
|
128
|
+
* checkAuthFn={checkAuthFunction}
|
|
129
|
+
* signOutFn={signOutFunction}
|
|
130
|
+
* getUserFn={getUserFunction}
|
|
131
|
+
* >
|
|
132
|
+
* <App />
|
|
133
|
+
* </AuthProvider>
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
export declare const AuthProvider: ({ children, checkAuthFn, signOutFn, initialAuthState, getUserFn, getSessionFn, getTokensFn, }: AuthProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
137
|
+
/**
|
|
138
|
+
* Hook to use the authentication context
|
|
139
|
+
*
|
|
140
|
+
* @throws {Error} When used outside of AuthProvider
|
|
141
|
+
* @returns {AuthContextType} The authentication context
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* ```tsx
|
|
145
|
+
* const { isAuthenticated, user, signOut } = useAuth();
|
|
146
|
+
* ```
|
|
147
|
+
*/
|
|
148
|
+
export declare const useAuth: () => AuthContextType;
|
|
149
|
+
/**
|
|
150
|
+
* Props for the ProtectedRoute component
|
|
151
|
+
*
|
|
152
|
+
* @interface ProtectedRouteProps
|
|
153
|
+
* @property {ReactNode} children - Components to render when authenticated
|
|
154
|
+
* @property {string} [redirectTo] - Path to redirect when not authenticated (default: '/')
|
|
155
|
+
* @property {ReactNode} [loadingComponent] - Custom loading component
|
|
156
|
+
* @property {(authState: AuthState) => boolean} [additionalCheck] - Additional authentication check
|
|
157
|
+
*/
|
|
158
|
+
export interface ProtectedRouteProps {
|
|
159
|
+
children: ReactNode;
|
|
160
|
+
/**
|
|
161
|
+
* Path para redirecionamento quando não autenticado
|
|
162
|
+
*/
|
|
163
|
+
redirectTo?: string;
|
|
164
|
+
/**
|
|
165
|
+
* Componente de loading personalizado
|
|
166
|
+
*/
|
|
167
|
+
loadingComponent?: ReactNode;
|
|
168
|
+
/**
|
|
169
|
+
* Função adicional de verificação (ex: verificar permissões específicas)
|
|
170
|
+
*/
|
|
171
|
+
additionalCheck?: (authState: AuthState) => boolean;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Componente para proteger rotas que requerem autenticação
|
|
175
|
+
*
|
|
176
|
+
* @example
|
|
177
|
+
* ```tsx
|
|
178
|
+
* <ProtectedRoute redirectTo="/login">
|
|
179
|
+
* <PainelPage />
|
|
180
|
+
* </ProtectedRoute>
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
export declare const ProtectedRoute: ({ children, redirectTo, loadingComponent, additionalCheck, }: ProtectedRouteProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
184
|
+
/**
|
|
185
|
+
* Props for the PublicRoute component
|
|
186
|
+
*
|
|
187
|
+
* @interface PublicRouteProps
|
|
188
|
+
* @property {ReactNode} children - Components to render
|
|
189
|
+
* @property {string} [redirectTo] - Path to redirect to (default: '/painel')
|
|
190
|
+
* @property {boolean} [redirectIfAuthenticated] - Whether to redirect if authenticated
|
|
191
|
+
* @property {boolean} [checkAuthBeforeRender] - Whether to check auth before rendering
|
|
192
|
+
*/
|
|
193
|
+
export interface PublicRouteProps {
|
|
194
|
+
children: ReactNode;
|
|
195
|
+
/**
|
|
196
|
+
* Path para redirecionamento
|
|
197
|
+
*/
|
|
198
|
+
redirectTo?: string;
|
|
199
|
+
/**
|
|
200
|
+
* Se deve redirecionar quando usuário estiver autenticado
|
|
201
|
+
*/
|
|
202
|
+
redirectIfAuthenticated?: boolean;
|
|
203
|
+
/**
|
|
204
|
+
* Se deve verificar autenticação antes de renderizar
|
|
205
|
+
*/
|
|
206
|
+
checkAuthBeforeRender?: boolean;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Componente para rotas públicas (login, recuperação de senha, etc.)
|
|
210
|
+
* Opcionalmente redireciona se o usuário já estiver autenticado
|
|
211
|
+
*
|
|
212
|
+
* @example
|
|
213
|
+
* ```tsx
|
|
214
|
+
* <PublicRoute redirectTo="/painel" redirectIfAuthenticated={true}>
|
|
215
|
+
* <LoginPage />
|
|
216
|
+
* </PublicRoute>
|
|
217
|
+
* ```
|
|
218
|
+
*/
|
|
219
|
+
export declare const PublicRoute: ({ children, redirectTo, redirectIfAuthenticated, checkAuthBeforeRender, }: PublicRouteProps) => import("react/jsx-runtime").JSX.Element;
|
|
220
|
+
/**
|
|
221
|
+
* Higher-Order Component to protect components with authentication
|
|
222
|
+
*
|
|
223
|
+
* @template P - Component props type
|
|
224
|
+
* @param {ComponentType<P>} Component - Component to wrap with authentication
|
|
225
|
+
* @param {Omit<ProtectedRouteProps, 'children'>} [options] - Protection options
|
|
226
|
+
* @returns {(props: P) => JSX.Element} Wrapped component
|
|
227
|
+
*
|
|
228
|
+
* @example
|
|
229
|
+
* ```tsx
|
|
230
|
+
* const ProtectedComponent = withAuth(MyComponent, {
|
|
231
|
+
* redirectTo: "/login",
|
|
232
|
+
* loadingComponent: <CustomSpinner />
|
|
233
|
+
* });
|
|
234
|
+
* ```
|
|
235
|
+
*/
|
|
236
|
+
export declare const withAuth: <P extends object>(Component: ComponentType<P>, options?: Omit<ProtectedRouteProps, "children">) => (props: P) => import("react/jsx-runtime").JSX.Element;
|
|
237
|
+
/**
|
|
238
|
+
* Hook for authentication guard with custom checks
|
|
239
|
+
*
|
|
240
|
+
* @param {object} [options] - Guard options
|
|
241
|
+
* @param {boolean} [options.requireAuth=true] - Whether authentication is required
|
|
242
|
+
* @param {(authState: AuthState) => boolean} [options.customCheck] - Custom check function
|
|
243
|
+
* @returns {object} Guard result with canAccess, isLoading, and authState
|
|
244
|
+
*
|
|
245
|
+
* @example
|
|
246
|
+
* ```tsx
|
|
247
|
+
* const { canAccess, isLoading } = useAuthGuard({
|
|
248
|
+
* requireAuth: true,
|
|
249
|
+
* customCheck: (authState) => authState.user?.role === 'admin'
|
|
250
|
+
* });
|
|
251
|
+
* ```
|
|
252
|
+
*/
|
|
253
|
+
export declare const useAuthGuard: (options?: {
|
|
254
|
+
requireAuth?: boolean;
|
|
255
|
+
customCheck?: (authState: AuthState) => boolean;
|
|
256
|
+
}) => {
|
|
257
|
+
canAccess: boolean;
|
|
258
|
+
isLoading: boolean;
|
|
259
|
+
authState: AuthContextType;
|
|
260
|
+
};
|
|
261
|
+
/**
|
|
262
|
+
* Hook to check authentication on specific routes
|
|
263
|
+
* Useful for conditional checks within components
|
|
264
|
+
*
|
|
265
|
+
* @param {string} [fallbackPath='/'] - Path to redirect when not authenticated
|
|
266
|
+
* @returns {object} Object with isAuthenticated, isLoading, and redirectToLogin function
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* ```tsx
|
|
270
|
+
* const { isAuthenticated, redirectToLogin } = useRouteAuth();
|
|
271
|
+
*
|
|
272
|
+
* if (!isAuthenticated) {
|
|
273
|
+
* return redirectToLogin();
|
|
274
|
+
* }
|
|
275
|
+
* ```
|
|
276
|
+
*/
|
|
277
|
+
export declare const useRouteAuth: (fallbackPath?: string) => {
|
|
278
|
+
isAuthenticated: boolean;
|
|
279
|
+
isLoading: boolean;
|
|
280
|
+
redirectToLogin: () => import("react/jsx-runtime").JSX.Element;
|
|
281
|
+
};
|
|
282
|
+
/**
|
|
283
|
+
* Get the root domain from the current window location
|
|
284
|
+
* Handles localhost, IP addresses, and subdomain cases, including Brazilian .com.br domains
|
|
285
|
+
*
|
|
286
|
+
* @returns {string} The root domain URL
|
|
287
|
+
*
|
|
288
|
+
* @example
|
|
289
|
+
* ```typescript
|
|
290
|
+
* // Domain examples
|
|
291
|
+
* aluno.analiticaensino.com.br -> analiticaensino.com.br
|
|
292
|
+
* subdomain.example.com -> example.com
|
|
293
|
+
*
|
|
294
|
+
* // IP address examples
|
|
295
|
+
* 127.0.0.1:3000 -> 127.0.0.1:3000
|
|
296
|
+
* [::1]:8080 -> [::1]:8080
|
|
297
|
+
*
|
|
298
|
+
* // Localhost examples
|
|
299
|
+
* localhost:3000 -> localhost:3000
|
|
300
|
+
* ```
|
|
301
|
+
*/
|
|
302
|
+
export declare const getRootDomain: () => string;
|
|
303
|
+
declare const _default: {
|
|
304
|
+
AuthProvider: ({ children, checkAuthFn, signOutFn, initialAuthState, getUserFn, getSessionFn, getTokensFn, }: AuthProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
305
|
+
ProtectedRoute: ({ children, redirectTo, loadingComponent, additionalCheck, }: ProtectedRouteProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
306
|
+
PublicRoute: ({ children, redirectTo, redirectIfAuthenticated, checkAuthBeforeRender, }: PublicRouteProps) => import("react/jsx-runtime").JSX.Element;
|
|
307
|
+
withAuth: <P extends object>(Component: ComponentType<P>, options?: Omit<ProtectedRouteProps, "children">) => (props: P) => import("react/jsx-runtime").JSX.Element;
|
|
308
|
+
useAuth: () => AuthContextType;
|
|
309
|
+
useAuthGuard: (options?: {
|
|
310
|
+
requireAuth?: boolean;
|
|
311
|
+
customCheck?: (authState: AuthState) => boolean;
|
|
312
|
+
}) => {
|
|
313
|
+
canAccess: boolean;
|
|
314
|
+
isLoading: boolean;
|
|
315
|
+
authState: AuthContextType;
|
|
316
|
+
};
|
|
317
|
+
useRouteAuth: (fallbackPath?: string) => {
|
|
318
|
+
isAuthenticated: boolean;
|
|
319
|
+
isLoading: boolean;
|
|
320
|
+
redirectToLogin: () => import("react/jsx-runtime").JSX.Element;
|
|
321
|
+
};
|
|
322
|
+
};
|
|
323
|
+
export default _default;
|
|
324
|
+
//# sourceMappingURL=Auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Auth.d.ts","sourceRoot":"","sources":["../../../src/components/Auth/Auth.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,SAAS,EACT,aAAa,EAGd,MAAM,OAAO,CAAC;AAGf;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AASD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAC/C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACpD;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;CACnD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,YAAY,GAAI,+FAQ1B,iBAAiB,4CAmFnB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,OAAO,QAAO,eAM1B,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC;CACrD;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,GAAI,8DAK5B,mBAAmB,mDAsCrB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,GAAI,2EAKzB,gBAAgB,4CAkBlB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,MAAM,EACvC,WAAW,aAAa,CAAC,CAAC,CAAC,EAC3B,UAAS,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAM,MAE3C,OAAO,CAAC,4CAKjB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,YAAY,GACvB,UAAS;IACP,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC;CAC5C;;;;CAgBP,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,YAAY,GAAI,qBAAkB;;;;CAa9C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,aAAa,cAyCzB,CAAC;;kHAlZC,iBAAiB;mFAgJjB,mBAAmB;6FAiFnB,gBAAgB;eAoCM,CAAC,SAAS,MAAM,aAC5B,aAAa,CAAC,CAAC,CAAC,YAClB,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,MAEtC,OAAO,CAAC;mBAzKS,eAAe;6BAiM/B;QACP,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC;KACjD;;;;;;;;;;;AAgHH,wBAQE"}
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
* </AuthProvider>
|
|
33
33
|
* ```
|
|
34
34
|
*/
|
|
35
|
-
declare function createZustandAuthAdapter<S extends {
|
|
35
|
+
export declare function createZustandAuthAdapter<S extends {
|
|
36
36
|
sessionInfo?: unknown;
|
|
37
37
|
tokens?: unknown;
|
|
38
38
|
user?: unknown;
|
|
@@ -71,5 +71,4 @@ declare function createZustandAuthAdapter<S extends {
|
|
|
71
71
|
*/
|
|
72
72
|
signOut: () => void;
|
|
73
73
|
};
|
|
74
|
-
|
|
75
|
-
export { createZustandAuthAdapter };
|
|
74
|
+
//# sourceMappingURL=zustandAuthAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zustandAuthAdapter.d.ts","sourceRoot":"","sources":["../../../src/components/Auth/zustandAuthAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,wBAAwB,CACtC,CAAC,SAAS;IACR,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,EACD,YAAY,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;CAAE;IAEjC;;;;OAIG;qBACkB,OAAO,CAAC,OAAO,CAAC;IAIrC;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;EAMN"}
|
package/dist/Badge/index.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { ReactNode, HTMLAttributes } from 'react';
|
|
3
|
-
|
|
1
|
+
import { HTMLAttributes, ReactNode } from 'react';
|
|
4
2
|
/**
|
|
5
3
|
* Badge component props interface
|
|
6
4
|
*/
|
|
@@ -41,6 +39,6 @@ type BadgeProps = {
|
|
|
41
39
|
* </Badge>
|
|
42
40
|
* ```
|
|
43
41
|
*/
|
|
44
|
-
declare const Badge: ({ children, iconLeft, iconRight, size, variant, action, className, notificationActive, ...props }: BadgeProps) =>
|
|
45
|
-
|
|
46
|
-
|
|
42
|
+
declare const Badge: ({ children, iconLeft, iconRight, size, variant, action, className, notificationActive, ...props }: BadgeProps) => import("react/jsx-runtime").JSX.Element;
|
|
43
|
+
export default Badge;
|
|
44
|
+
//# sourceMappingURL=Badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAgElD;;GAEG;AACH,KAAK,UAAU,GAAG;IAChB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,wBAAwB;IACxB,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,kCAAkC;IAClC,OAAO,CAAC,EACJ,OAAO,GACP,UAAU,GACV,OAAO,GACP,eAAe,GACf,cAAc,GACd,cAAc,CAAC;IACnB,gCAAgC;IAChC,MAAM,CAAC,EACH,OAAO,GACP,SAAS,GACT,SAAS,GACT,MAAM,GACN,OAAO,GACP,OAAO,GACP,OAAO,GACP,OAAO,GACP,OAAO,GACP,UAAU,GACV,UAAU,CAAC;IACf,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,KAAK,GAAI,mGAUZ,UAAU,4CAiDZ,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
package/dist/Badge/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/Badge/Badge.tsx","../../src/utils/utils.ts"],"sourcesContent":["import { HTMLAttributes, ReactNode } from 'react';\nimport { Bell } from 'phosphor-react';\nimport { cn } from '../../utils/utils';\n\n/**\n * Lookup table for variant and action class combinations\n */\nconst VARIANT_ACTION_CLASSES = {\n solid: {\n error: 'bg-error-background text-error-700 focus-visible:outline-none',\n warning: 'bg-warning text-warning-800 focus-visible:outline-none',\n success: 'bg-success text-success-800 focus-visible:outline-none',\n info: 'bg-info text-info-800 focus-visible:outline-none',\n muted: 'bg-background-muted text-background-800 focus-visible:outline-none',\n },\n outlined: {\n error:\n 'bg-error text-error-700 border border-error-300 focus-visible:outline-none',\n warning:\n 'bg-warning text-warning-800 border border-warning-300 focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border border-success-300 focus-visible:outline-none',\n info: 'bg-info text-info-800 border border-info-300 focus-visible:outline-none',\n muted:\n 'bg-background-muted text-background-800 border border-border-300 focus-visible:outline-none',\n },\n exams: {\n exam1: 'bg-exam-1 text-info-700 focus-visible:outline-none',\n exam2: 'bg-exam-2 text-typography-1 focus-visible:outline-none',\n exam3: 'bg-exam-3 text-typography-2 focus-visible:outline-none',\n exam4: 'bg-exam-4 text-success-700 focus-visible:outline-none',\n },\n examsOutlined: {\n exam1:\n 'bg-exam-1 text-info-700 border border-info-700 focus-visible:outline-none',\n exam2:\n 'bg-exam-2 text-typography-1 border border-typography-1 focus-visible:outline-none',\n exam3:\n 'bg-exam-3 text-typography-2 border border-typography-2 focus-visible:outline-none',\n exam4:\n 'bg-exam-4 text-success-700 border border-success-700 focus-visible:outline-none',\n },\n resultStatus: {\n negative: 'bg-error text-error-800 focus-visible:outline-none',\n positive: 'bg-success text-success-800 focus-visible:outline-none',\n },\n notification: 'text-primary',\n} as const;\n\n/**\n * Lookup table for size classes\n */\nconst SIZE_CLASSES = {\n small: 'text-2xs px-2 py-1',\n medium: 'text-xs px-2 py-1',\n large: 'text-sm px-2 py-1',\n} as const;\n\nconst SIZE_CLASSES_ICON = {\n small: 'size-3',\n medium: 'size-3.5',\n large: 'size-4',\n} as const;\n\n/**\n * Badge component props interface\n */\ntype BadgeProps = {\n /** Content to be displayed inside the badge */\n children?: ReactNode;\n /** Ícone à direita do texto */\n iconRight?: ReactNode;\n /** Ícone à esquerda do texto */\n iconLeft?: ReactNode;\n /** Size of the badge */\n size?: 'small' | 'medium' | 'large';\n /** Visual variant of the badge */\n variant?:\n | 'solid'\n | 'outlined'\n | 'exams'\n | 'examsOutlined'\n | 'resultStatus'\n | 'notification';\n /** Action type of the badge */\n action?:\n | 'error'\n | 'warning'\n | 'success'\n | 'info'\n | 'muted'\n | 'exam1'\n | 'exam2'\n | 'exam3'\n | 'exam4'\n | 'positive'\n | 'negative';\n /** Additional CSS classes to apply */\n className?: string;\n notificationActive?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\n/**\n * Badge component for Analytica Ensino platforms\n *\n * A flexible button component with multiple variants, sizes and actions.\n *\n * @param children - The content to display inside the badge\n * @param size - The size variant (extra-small, small, medium, large, extra-large)\n * @param variant - The visual style variant (solid, outline, link)\n * @param action - The action type (primary, positive, negative)\n * @param className - Additional CSS classes\n * @param props - All other standard div HTML attributes\n * @returns A styled badge element\n *\n * @example\n * ```tsx\n * <Badge variant=\"solid\" action=\"info\" size=\"medium\">\n * Information\n * </Badge>\n * ```\n */\nconst Badge = ({\n children,\n iconLeft,\n iconRight,\n size = 'medium',\n variant = 'solid',\n action = 'error',\n className = '',\n notificationActive = false,\n ...props\n}: BadgeProps) => {\n // Get classes from lookup tables\n const sizeClasses = SIZE_CLASSES[size];\n const sizeClassesIcon = SIZE_CLASSES_ICON[size];\n const variantActionMap = VARIANT_ACTION_CLASSES[variant] || {};\n const variantClasses =\n typeof variantActionMap === 'string'\n ? variantActionMap\n : ((variantActionMap as Record<string, string>)[action] ??\n (variantActionMap as Record<string, string>).muted ??\n '');\n\n const baseClasses =\n 'inline-flex items-center justify-center rounded-xs font-normal gap-1 relative';\n\n const baseClassesIcon = 'flex items-center';\n if (variant === 'notification') {\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n <Bell size={24} className=\"text-current\" aria-hidden=\"true\" />\n\n {notificationActive && (\n <span\n data-testid=\"notification-dot\"\n className=\"absolute top-[5px] right-[10px] block h-2 w-2 rounded-full bg-indicator-error ring-2 ring-white\"\n />\n )}\n </div>\n );\n }\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n {iconLeft && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>{iconLeft}</span>\n )}\n {children}\n {iconRight && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>\n {iconRight}\n </span>\n )}\n </div>\n );\n};\n\nexport default Badge;\n","import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport { syncDropdownState } from './dropdown';\n\n/**\n * Retorna a cor hexadecimal com opacidade 0.3 (4d) se não estiver em dark mode.\n * Se estiver em dark mode, retorna a cor original.\n *\n * @param hexColor - Cor hexadecimal (ex: \"#0066b8\" ou \"0066b8\")\n * @param isDark - booleano indicando se está em dark mode\n * @returns string - cor hexadecimal com opacidade se necessário\n */\nexport function getSubjectColorWithOpacity(\n hexColor: string | undefined,\n isDark: boolean\n): string | undefined {\n if (!hexColor) return undefined;\n // Remove o '#' se existir\n let color = hexColor.replace(/^#/, '').toLowerCase();\n\n if (isDark) {\n // Se está em dark mode, sempre remove opacidade se existir\n if (color.length === 8) {\n color = color.slice(0, 6);\n }\n return `#${color}`;\n } else {\n // Se não está em dark mode (light mode)\n let resultColor: string;\n if (color.length === 6) {\n // Adiciona opacidade 0.3 (4D) para cores de 6 dígitos\n resultColor = `#${color}4d`;\n } else if (color.length === 8) {\n // Já tem opacidade, retorna como está\n resultColor = `#${color}`;\n } else {\n // Para outros tamanhos (3, 4, 5 dígitos), retorna como está\n resultColor = `#${color}`;\n }\n return resultColor;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,4BAAqB;;;ACDrB,kBAAsC;AACtC,4BAAwB;AAEjB,SAAS,MAAM,QAAsB;AAC1C,aAAO,mCAAQ,kBAAK,MAAM,CAAC;AAC7B;;;ADiJM;AA/IN,IAAM,yBAAyB;AAAA,EAC7B,OAAO;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACR,OACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,IACN,OACE;AAAA,EACJ;AAAA,EACA,OAAO;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,eAAe;AAAA,IACb,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,EACJ;AAAA,EACA,cAAc;AAAA,IACZ,UAAU;AAAA,IACV,UAAU;AAAA,EACZ;AAAA,EACA,cAAc;AAChB;AAKA,IAAM,eAAe;AAAA,EACnB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AAEA,IAAM,oBAAoB;AAAA,EACxB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AA4DA,IAAM,QAAQ,CAAC;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,qBAAqB;AAAA,EACrB,GAAG;AACL,MAAkB;AAEhB,QAAM,cAAc,aAAa,IAAI;AACrC,QAAM,kBAAkB,kBAAkB,IAAI;AAC9C,QAAM,mBAAmB,uBAAuB,OAAO,KAAK,CAAC;AAC7D,QAAM,iBACJ,OAAO,qBAAqB,WACxB,mBACE,iBAA4C,MAAM,KACnD,iBAA4C,SAC7C;AAEN,QAAM,cACJ;AAEF,QAAM,kBAAkB;AACxB,MAAI,YAAY,gBAAgB;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,QAChE,GAAG;AAAA,QAEJ;AAAA,sDAAC,8BAAK,MAAM,IAAI,WAAU,gBAAe,eAAY,QAAO;AAAA,UAE3D,sBACC;AAAA,YAAC;AAAA;AAAA,cACC,eAAY;AAAA,cACZ,WAAU;AAAA;AAAA,UACZ;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,MAChE,GAAG;AAAA,MAEH;AAAA,oBACC,4CAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GAAI,oBAAS;AAAA,QAElE;AAAA,QACA,aACC,4CAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GACjD,qBACH;AAAA;AAAA;AAAA,EAEJ;AAEJ;AAEA,IAAO,gBAAQ;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/components/Badge/Badge.tsx","../../src/utils/utils.ts"],"sourcesContent":["import { HTMLAttributes, ReactNode } from 'react';\nimport { Bell } from 'phosphor-react';\nimport { cn } from '../../utils/utils';\n\n/**\n * Lookup table for variant and action class combinations\n */\nconst VARIANT_ACTION_CLASSES = {\n solid: {\n error: 'bg-error-background text-error-700 focus-visible:outline-none',\n warning: 'bg-warning text-warning-800 focus-visible:outline-none',\n success: 'bg-success text-success-800 focus-visible:outline-none',\n info: 'bg-info text-info-800 focus-visible:outline-none',\n muted: 'bg-background-muted text-background-800 focus-visible:outline-none',\n },\n outlined: {\n error:\n 'bg-error text-error-700 border border-error-300 focus-visible:outline-none',\n warning:\n 'bg-warning text-warning-800 border border-warning-300 focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border border-success-300 focus-visible:outline-none',\n info: 'bg-info text-info-800 border border-info-300 focus-visible:outline-none',\n muted:\n 'bg-background-muted text-background-800 border border-border-300 focus-visible:outline-none',\n },\n exams: {\n exam1: 'bg-exam-1 text-info-700 focus-visible:outline-none',\n exam2: 'bg-exam-2 text-typography-1 focus-visible:outline-none',\n exam3: 'bg-exam-3 text-typography-2 focus-visible:outline-none',\n exam4: 'bg-exam-4 text-success-700 focus-visible:outline-none',\n },\n examsOutlined: {\n exam1:\n 'bg-exam-1 text-info-700 border border-info-700 focus-visible:outline-none',\n exam2:\n 'bg-exam-2 text-typography-1 border border-typography-1 focus-visible:outline-none',\n exam3:\n 'bg-exam-3 text-typography-2 border border-typography-2 focus-visible:outline-none',\n exam4:\n 'bg-exam-4 text-success-700 border border-success-700 focus-visible:outline-none',\n },\n resultStatus: {\n negative: 'bg-error text-error-800 focus-visible:outline-none',\n positive: 'bg-success text-success-800 focus-visible:outline-none',\n },\n notification: 'text-primary',\n} as const;\n\n/**\n * Lookup table for size classes\n */\nconst SIZE_CLASSES = {\n small: 'text-2xs px-2 py-1',\n medium: 'text-xs px-2 py-1',\n large: 'text-sm px-2 py-1',\n} as const;\n\nconst SIZE_CLASSES_ICON = {\n small: 'size-3',\n medium: 'size-3.5',\n large: 'size-4',\n} as const;\n\n/**\n * Badge component props interface\n */\ntype BadgeProps = {\n /** Content to be displayed inside the badge */\n children?: ReactNode;\n /** Ícone à direita do texto */\n iconRight?: ReactNode;\n /** Ícone à esquerda do texto */\n iconLeft?: ReactNode;\n /** Size of the badge */\n size?: 'small' | 'medium' | 'large';\n /** Visual variant of the badge */\n variant?:\n | 'solid'\n | 'outlined'\n | 'exams'\n | 'examsOutlined'\n | 'resultStatus'\n | 'notification';\n /** Action type of the badge */\n action?:\n | 'error'\n | 'warning'\n | 'success'\n | 'info'\n | 'muted'\n | 'exam1'\n | 'exam2'\n | 'exam3'\n | 'exam4'\n | 'positive'\n | 'negative';\n /** Additional CSS classes to apply */\n className?: string;\n notificationActive?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\n/**\n * Badge component for Analytica Ensino platforms\n *\n * A flexible button component with multiple variants, sizes and actions.\n *\n * @param children - The content to display inside the badge\n * @param size - The size variant (extra-small, small, medium, large, extra-large)\n * @param variant - The visual style variant (solid, outline, link)\n * @param action - The action type (primary, positive, negative)\n * @param className - Additional CSS classes\n * @param props - All other standard div HTML attributes\n * @returns A styled badge element\n *\n * @example\n * ```tsx\n * <Badge variant=\"solid\" action=\"info\" size=\"medium\">\n * Information\n * </Badge>\n * ```\n */\nconst Badge = ({\n children,\n iconLeft,\n iconRight,\n size = 'medium',\n variant = 'solid',\n action = 'error',\n className = '',\n notificationActive = false,\n ...props\n}: BadgeProps) => {\n // Get classes from lookup tables\n const sizeClasses = SIZE_CLASSES[size];\n const sizeClassesIcon = SIZE_CLASSES_ICON[size];\n const variantActionMap = VARIANT_ACTION_CLASSES[variant] || {};\n const variantClasses =\n typeof variantActionMap === 'string'\n ? variantActionMap\n : ((variantActionMap as Record<string, string>)[action] ??\n (variantActionMap as Record<string, string>).muted ??\n '');\n\n const baseClasses =\n 'inline-flex items-center justify-center rounded-xs font-normal gap-1 relative';\n\n const baseClassesIcon = 'flex items-center';\n if (variant === 'notification') {\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n <Bell size={24} className=\"text-current\" aria-hidden=\"true\" />\n\n {notificationActive && (\n <span\n data-testid=\"notification-dot\"\n className=\"absolute top-[5px] right-[10px] block h-2 w-2 rounded-full bg-indicator-error ring-2 ring-white\"\n />\n )}\n </div>\n );\n }\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n {iconLeft && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>{iconLeft}</span>\n )}\n {children}\n {iconRight && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>\n {iconRight}\n </span>\n )}\n </div>\n );\n};\n\nexport default Badge;\n","import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport { syncDropdownState } from './dropdown';\nexport {\n getSelectedIdsFromCategories,\n toggleArrayItem,\n toggleSingleValue,\n} from './activityFilters';\n\n/**\n * Retorna a cor hexadecimal com opacidade 0.3 (4d) se não estiver em dark mode.\n * Se estiver em dark mode, retorna a cor original.\n *\n * @param hexColor - Cor hexadecimal (ex: \"#0066b8\" ou \"0066b8\")\n * @param isDark - booleano indicando se está em dark mode\n * @returns string - cor hexadecimal com opacidade se necessário\n */\nexport function getSubjectColorWithOpacity(\n hexColor: string | undefined,\n isDark: boolean\n): string | undefined {\n if (!hexColor) return undefined;\n // Remove o '#' se existir\n let color = hexColor.replace(/^#/, '').toLowerCase();\n\n if (isDark) {\n // Se está em dark mode, sempre remove opacidade se existir\n if (color.length === 8) {\n color = color.slice(0, 6);\n }\n return `#${color}`;\n } else {\n // Se não está em dark mode (light mode)\n let resultColor: string;\n if (color.length === 6) {\n // Adiciona opacidade 0.3 (4D) para cores de 6 dígitos\n resultColor = `#${color}4d`;\n } else if (color.length === 8) {\n // Já tem opacidade, retorna como está\n resultColor = `#${color}`;\n } else {\n // Para outros tamanhos (3, 4, 5 dígitos), retorna como está\n resultColor = `#${color}`;\n }\n return resultColor;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,4BAAqB;;;ACDrB,kBAAsC;AACtC,4BAAwB;AAEjB,SAAS,MAAM,QAAsB;AAC1C,aAAO,mCAAQ,kBAAK,MAAM,CAAC;AAC7B;;;ADiJM;AA/IN,IAAM,yBAAyB;AAAA,EAC7B,OAAO;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACR,OACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,IACN,OACE;AAAA,EACJ;AAAA,EACA,OAAO;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,eAAe;AAAA,IACb,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,EACJ;AAAA,EACA,cAAc;AAAA,IACZ,UAAU;AAAA,IACV,UAAU;AAAA,EACZ;AAAA,EACA,cAAc;AAChB;AAKA,IAAM,eAAe;AAAA,EACnB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AAEA,IAAM,oBAAoB;AAAA,EACxB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AA4DA,IAAM,QAAQ,CAAC;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,qBAAqB;AAAA,EACrB,GAAG;AACL,MAAkB;AAEhB,QAAM,cAAc,aAAa,IAAI;AACrC,QAAM,kBAAkB,kBAAkB,IAAI;AAC9C,QAAM,mBAAmB,uBAAuB,OAAO,KAAK,CAAC;AAC7D,QAAM,iBACJ,OAAO,qBAAqB,WACxB,mBACE,iBAA4C,MAAM,KACnD,iBAA4C,SAC7C;AAEN,QAAM,cACJ;AAEF,QAAM,kBAAkB;AACxB,MAAI,YAAY,gBAAgB;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,QAChE,GAAG;AAAA,QAEJ;AAAA,sDAAC,8BAAK,MAAM,IAAI,WAAU,gBAAe,eAAY,QAAO;AAAA,UAE3D,sBACC;AAAA,YAAC;AAAA;AAAA,cACC,eAAY;AAAA,cACZ,WAAU;AAAA;AAAA,UACZ;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,MAChE,GAAG;AAAA,MAEH;AAAA,oBACC,4CAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GAAI,oBAAS;AAAA,QAElE;AAAA,QACA,aACC,4CAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GACjD,qBACH;AAAA;AAAA;AAAA,EAEJ;AAEJ;AAEA,IAAO,gBAAQ;","names":[]}
|
package/dist/Badge/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/Badge/Badge.tsx","../../src/utils/utils.ts"],"sourcesContent":["import { HTMLAttributes, ReactNode } from 'react';\nimport { Bell } from 'phosphor-react';\nimport { cn } from '../../utils/utils';\n\n/**\n * Lookup table for variant and action class combinations\n */\nconst VARIANT_ACTION_CLASSES = {\n solid: {\n error: 'bg-error-background text-error-700 focus-visible:outline-none',\n warning: 'bg-warning text-warning-800 focus-visible:outline-none',\n success: 'bg-success text-success-800 focus-visible:outline-none',\n info: 'bg-info text-info-800 focus-visible:outline-none',\n muted: 'bg-background-muted text-background-800 focus-visible:outline-none',\n },\n outlined: {\n error:\n 'bg-error text-error-700 border border-error-300 focus-visible:outline-none',\n warning:\n 'bg-warning text-warning-800 border border-warning-300 focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border border-success-300 focus-visible:outline-none',\n info: 'bg-info text-info-800 border border-info-300 focus-visible:outline-none',\n muted:\n 'bg-background-muted text-background-800 border border-border-300 focus-visible:outline-none',\n },\n exams: {\n exam1: 'bg-exam-1 text-info-700 focus-visible:outline-none',\n exam2: 'bg-exam-2 text-typography-1 focus-visible:outline-none',\n exam3: 'bg-exam-3 text-typography-2 focus-visible:outline-none',\n exam4: 'bg-exam-4 text-success-700 focus-visible:outline-none',\n },\n examsOutlined: {\n exam1:\n 'bg-exam-1 text-info-700 border border-info-700 focus-visible:outline-none',\n exam2:\n 'bg-exam-2 text-typography-1 border border-typography-1 focus-visible:outline-none',\n exam3:\n 'bg-exam-3 text-typography-2 border border-typography-2 focus-visible:outline-none',\n exam4:\n 'bg-exam-4 text-success-700 border border-success-700 focus-visible:outline-none',\n },\n resultStatus: {\n negative: 'bg-error text-error-800 focus-visible:outline-none',\n positive: 'bg-success text-success-800 focus-visible:outline-none',\n },\n notification: 'text-primary',\n} as const;\n\n/**\n * Lookup table for size classes\n */\nconst SIZE_CLASSES = {\n small: 'text-2xs px-2 py-1',\n medium: 'text-xs px-2 py-1',\n large: 'text-sm px-2 py-1',\n} as const;\n\nconst SIZE_CLASSES_ICON = {\n small: 'size-3',\n medium: 'size-3.5',\n large: 'size-4',\n} as const;\n\n/**\n * Badge component props interface\n */\ntype BadgeProps = {\n /** Content to be displayed inside the badge */\n children?: ReactNode;\n /** Ícone à direita do texto */\n iconRight?: ReactNode;\n /** Ícone à esquerda do texto */\n iconLeft?: ReactNode;\n /** Size of the badge */\n size?: 'small' | 'medium' | 'large';\n /** Visual variant of the badge */\n variant?:\n | 'solid'\n | 'outlined'\n | 'exams'\n | 'examsOutlined'\n | 'resultStatus'\n | 'notification';\n /** Action type of the badge */\n action?:\n | 'error'\n | 'warning'\n | 'success'\n | 'info'\n | 'muted'\n | 'exam1'\n | 'exam2'\n | 'exam3'\n | 'exam4'\n | 'positive'\n | 'negative';\n /** Additional CSS classes to apply */\n className?: string;\n notificationActive?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\n/**\n * Badge component for Analytica Ensino platforms\n *\n * A flexible button component with multiple variants, sizes and actions.\n *\n * @param children - The content to display inside the badge\n * @param size - The size variant (extra-small, small, medium, large, extra-large)\n * @param variant - The visual style variant (solid, outline, link)\n * @param action - The action type (primary, positive, negative)\n * @param className - Additional CSS classes\n * @param props - All other standard div HTML attributes\n * @returns A styled badge element\n *\n * @example\n * ```tsx\n * <Badge variant=\"solid\" action=\"info\" size=\"medium\">\n * Information\n * </Badge>\n * ```\n */\nconst Badge = ({\n children,\n iconLeft,\n iconRight,\n size = 'medium',\n variant = 'solid',\n action = 'error',\n className = '',\n notificationActive = false,\n ...props\n}: BadgeProps) => {\n // Get classes from lookup tables\n const sizeClasses = SIZE_CLASSES[size];\n const sizeClassesIcon = SIZE_CLASSES_ICON[size];\n const variantActionMap = VARIANT_ACTION_CLASSES[variant] || {};\n const variantClasses =\n typeof variantActionMap === 'string'\n ? variantActionMap\n : ((variantActionMap as Record<string, string>)[action] ??\n (variantActionMap as Record<string, string>).muted ??\n '');\n\n const baseClasses =\n 'inline-flex items-center justify-center rounded-xs font-normal gap-1 relative';\n\n const baseClassesIcon = 'flex items-center';\n if (variant === 'notification') {\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n <Bell size={24} className=\"text-current\" aria-hidden=\"true\" />\n\n {notificationActive && (\n <span\n data-testid=\"notification-dot\"\n className=\"absolute top-[5px] right-[10px] block h-2 w-2 rounded-full bg-indicator-error ring-2 ring-white\"\n />\n )}\n </div>\n );\n }\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n {iconLeft && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>{iconLeft}</span>\n )}\n {children}\n {iconRight && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>\n {iconRight}\n </span>\n )}\n </div>\n );\n};\n\nexport default Badge;\n","import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport { syncDropdownState } from './dropdown';\n\n/**\n * Retorna a cor hexadecimal com opacidade 0.3 (4d) se não estiver em dark mode.\n * Se estiver em dark mode, retorna a cor original.\n *\n * @param hexColor - Cor hexadecimal (ex: \"#0066b8\" ou \"0066b8\")\n * @param isDark - booleano indicando se está em dark mode\n * @returns string - cor hexadecimal com opacidade se necessário\n */\nexport function getSubjectColorWithOpacity(\n hexColor: string | undefined,\n isDark: boolean\n): string | undefined {\n if (!hexColor) return undefined;\n // Remove o '#' se existir\n let color = hexColor.replace(/^#/, '').toLowerCase();\n\n if (isDark) {\n // Se está em dark mode, sempre remove opacidade se existir\n if (color.length === 8) {\n color = color.slice(0, 6);\n }\n return `#${color}`;\n } else {\n // Se não está em dark mode (light mode)\n let resultColor: string;\n if (color.length === 6) {\n // Adiciona opacidade 0.3 (4D) para cores de 6 dígitos\n resultColor = `#${color}4d`;\n } else if (color.length === 8) {\n // Já tem opacidade, retorna como está\n resultColor = `#${color}`;\n } else {\n // Para outros tamanhos (3, 4, 5 dígitos), retorna como está\n resultColor = `#${color}`;\n }\n return resultColor;\n }\n}\n"],"mappings":";AACA,SAAS,YAAY;;;ACDrB,SAAS,YAA6B;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ADiJM,SAIE,KAJF;AA/IN,IAAM,yBAAyB;AAAA,EAC7B,OAAO;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACR,OACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,IACN,OACE;AAAA,EACJ;AAAA,EACA,OAAO;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,eAAe;AAAA,IACb,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,EACJ;AAAA,EACA,cAAc;AAAA,IACZ,UAAU;AAAA,IACV,UAAU;AAAA,EACZ;AAAA,EACA,cAAc;AAChB;AAKA,IAAM,eAAe;AAAA,EACnB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AAEA,IAAM,oBAAoB;AAAA,EACxB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AA4DA,IAAM,QAAQ,CAAC;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,qBAAqB;AAAA,EACrB,GAAG;AACL,MAAkB;AAEhB,QAAM,cAAc,aAAa,IAAI;AACrC,QAAM,kBAAkB,kBAAkB,IAAI;AAC9C,QAAM,mBAAmB,uBAAuB,OAAO,KAAK,CAAC;AAC7D,QAAM,iBACJ,OAAO,qBAAqB,WACxB,mBACE,iBAA4C,MAAM,KACnD,iBAA4C,SAC7C;AAEN,QAAM,cACJ;AAEF,QAAM,kBAAkB;AACxB,MAAI,YAAY,gBAAgB;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,QAChE,GAAG;AAAA,QAEJ;AAAA,8BAAC,QAAK,MAAM,IAAI,WAAU,gBAAe,eAAY,QAAO;AAAA,UAE3D,sBACC;AAAA,YAAC;AAAA;AAAA,cACC,eAAY;AAAA,cACZ,WAAU;AAAA;AAAA,UACZ;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,MAChE,GAAG;AAAA,MAEH;AAAA,oBACC,oBAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GAAI,oBAAS;AAAA,QAElE;AAAA,QACA,aACC,oBAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GACjD,qBACH;AAAA;AAAA;AAAA,EAEJ;AAEJ;AAEA,IAAO,gBAAQ;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/components/Badge/Badge.tsx","../../src/utils/utils.ts"],"sourcesContent":["import { HTMLAttributes, ReactNode } from 'react';\nimport { Bell } from 'phosphor-react';\nimport { cn } from '../../utils/utils';\n\n/**\n * Lookup table for variant and action class combinations\n */\nconst VARIANT_ACTION_CLASSES = {\n solid: {\n error: 'bg-error-background text-error-700 focus-visible:outline-none',\n warning: 'bg-warning text-warning-800 focus-visible:outline-none',\n success: 'bg-success text-success-800 focus-visible:outline-none',\n info: 'bg-info text-info-800 focus-visible:outline-none',\n muted: 'bg-background-muted text-background-800 focus-visible:outline-none',\n },\n outlined: {\n error:\n 'bg-error text-error-700 border border-error-300 focus-visible:outline-none',\n warning:\n 'bg-warning text-warning-800 border border-warning-300 focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border border-success-300 focus-visible:outline-none',\n info: 'bg-info text-info-800 border border-info-300 focus-visible:outline-none',\n muted:\n 'bg-background-muted text-background-800 border border-border-300 focus-visible:outline-none',\n },\n exams: {\n exam1: 'bg-exam-1 text-info-700 focus-visible:outline-none',\n exam2: 'bg-exam-2 text-typography-1 focus-visible:outline-none',\n exam3: 'bg-exam-3 text-typography-2 focus-visible:outline-none',\n exam4: 'bg-exam-4 text-success-700 focus-visible:outline-none',\n },\n examsOutlined: {\n exam1:\n 'bg-exam-1 text-info-700 border border-info-700 focus-visible:outline-none',\n exam2:\n 'bg-exam-2 text-typography-1 border border-typography-1 focus-visible:outline-none',\n exam3:\n 'bg-exam-3 text-typography-2 border border-typography-2 focus-visible:outline-none',\n exam4:\n 'bg-exam-4 text-success-700 border border-success-700 focus-visible:outline-none',\n },\n resultStatus: {\n negative: 'bg-error text-error-800 focus-visible:outline-none',\n positive: 'bg-success text-success-800 focus-visible:outline-none',\n },\n notification: 'text-primary',\n} as const;\n\n/**\n * Lookup table for size classes\n */\nconst SIZE_CLASSES = {\n small: 'text-2xs px-2 py-1',\n medium: 'text-xs px-2 py-1',\n large: 'text-sm px-2 py-1',\n} as const;\n\nconst SIZE_CLASSES_ICON = {\n small: 'size-3',\n medium: 'size-3.5',\n large: 'size-4',\n} as const;\n\n/**\n * Badge component props interface\n */\ntype BadgeProps = {\n /** Content to be displayed inside the badge */\n children?: ReactNode;\n /** Ícone à direita do texto */\n iconRight?: ReactNode;\n /** Ícone à esquerda do texto */\n iconLeft?: ReactNode;\n /** Size of the badge */\n size?: 'small' | 'medium' | 'large';\n /** Visual variant of the badge */\n variant?:\n | 'solid'\n | 'outlined'\n | 'exams'\n | 'examsOutlined'\n | 'resultStatus'\n | 'notification';\n /** Action type of the badge */\n action?:\n | 'error'\n | 'warning'\n | 'success'\n | 'info'\n | 'muted'\n | 'exam1'\n | 'exam2'\n | 'exam3'\n | 'exam4'\n | 'positive'\n | 'negative';\n /** Additional CSS classes to apply */\n className?: string;\n notificationActive?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\n/**\n * Badge component for Analytica Ensino platforms\n *\n * A flexible button component with multiple variants, sizes and actions.\n *\n * @param children - The content to display inside the badge\n * @param size - The size variant (extra-small, small, medium, large, extra-large)\n * @param variant - The visual style variant (solid, outline, link)\n * @param action - The action type (primary, positive, negative)\n * @param className - Additional CSS classes\n * @param props - All other standard div HTML attributes\n * @returns A styled badge element\n *\n * @example\n * ```tsx\n * <Badge variant=\"solid\" action=\"info\" size=\"medium\">\n * Information\n * </Badge>\n * ```\n */\nconst Badge = ({\n children,\n iconLeft,\n iconRight,\n size = 'medium',\n variant = 'solid',\n action = 'error',\n className = '',\n notificationActive = false,\n ...props\n}: BadgeProps) => {\n // Get classes from lookup tables\n const sizeClasses = SIZE_CLASSES[size];\n const sizeClassesIcon = SIZE_CLASSES_ICON[size];\n const variantActionMap = VARIANT_ACTION_CLASSES[variant] || {};\n const variantClasses =\n typeof variantActionMap === 'string'\n ? variantActionMap\n : ((variantActionMap as Record<string, string>)[action] ??\n (variantActionMap as Record<string, string>).muted ??\n '');\n\n const baseClasses =\n 'inline-flex items-center justify-center rounded-xs font-normal gap-1 relative';\n\n const baseClassesIcon = 'flex items-center';\n if (variant === 'notification') {\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n <Bell size={24} className=\"text-current\" aria-hidden=\"true\" />\n\n {notificationActive && (\n <span\n data-testid=\"notification-dot\"\n className=\"absolute top-[5px] right-[10px] block h-2 w-2 rounded-full bg-indicator-error ring-2 ring-white\"\n />\n )}\n </div>\n );\n }\n return (\n <div\n className={cn(baseClasses, variantClasses, sizeClasses, className)}\n {...props}\n >\n {iconLeft && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>{iconLeft}</span>\n )}\n {children}\n {iconRight && (\n <span className={cn(baseClassesIcon, sizeClassesIcon)}>\n {iconRight}\n </span>\n )}\n </div>\n );\n};\n\nexport default Badge;\n","import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport { syncDropdownState } from './dropdown';\nexport {\n getSelectedIdsFromCategories,\n toggleArrayItem,\n toggleSingleValue,\n} from './activityFilters';\n\n/**\n * Retorna a cor hexadecimal com opacidade 0.3 (4d) se não estiver em dark mode.\n * Se estiver em dark mode, retorna a cor original.\n *\n * @param hexColor - Cor hexadecimal (ex: \"#0066b8\" ou \"0066b8\")\n * @param isDark - booleano indicando se está em dark mode\n * @returns string - cor hexadecimal com opacidade se necessário\n */\nexport function getSubjectColorWithOpacity(\n hexColor: string | undefined,\n isDark: boolean\n): string | undefined {\n if (!hexColor) return undefined;\n // Remove o '#' se existir\n let color = hexColor.replace(/^#/, '').toLowerCase();\n\n if (isDark) {\n // Se está em dark mode, sempre remove opacidade se existir\n if (color.length === 8) {\n color = color.slice(0, 6);\n }\n return `#${color}`;\n } else {\n // Se não está em dark mode (light mode)\n let resultColor: string;\n if (color.length === 6) {\n // Adiciona opacidade 0.3 (4D) para cores de 6 dígitos\n resultColor = `#${color}4d`;\n } else if (color.length === 8) {\n // Já tem opacidade, retorna como está\n resultColor = `#${color}`;\n } else {\n // Para outros tamanhos (3, 4, 5 dígitos), retorna como está\n resultColor = `#${color}`;\n }\n return resultColor;\n }\n}\n"],"mappings":";AACA,SAAS,YAAY;;;ACDrB,SAAS,YAA6B;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ADiJM,SAIE,KAJF;AA/IN,IAAM,yBAAyB;AAAA,EAC7B,OAAO;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACR,OACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,IACN,OACE;AAAA,EACJ;AAAA,EACA,OAAO;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,eAAe;AAAA,IACb,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,IACF,OACE;AAAA,EACJ;AAAA,EACA,cAAc;AAAA,IACZ,UAAU;AAAA,IACV,UAAU;AAAA,EACZ;AAAA,EACA,cAAc;AAChB;AAKA,IAAM,eAAe;AAAA,EACnB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AAEA,IAAM,oBAAoB;AAAA,EACxB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AA4DA,IAAM,QAAQ,CAAC;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,qBAAqB;AAAA,EACrB,GAAG;AACL,MAAkB;AAEhB,QAAM,cAAc,aAAa,IAAI;AACrC,QAAM,kBAAkB,kBAAkB,IAAI;AAC9C,QAAM,mBAAmB,uBAAuB,OAAO,KAAK,CAAC;AAC7D,QAAM,iBACJ,OAAO,qBAAqB,WACxB,mBACE,iBAA4C,MAAM,KACnD,iBAA4C,SAC7C;AAEN,QAAM,cACJ;AAEF,QAAM,kBAAkB;AACxB,MAAI,YAAY,gBAAgB;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,QAChE,GAAG;AAAA,QAEJ;AAAA,8BAAC,QAAK,MAAM,IAAI,WAAU,gBAAe,eAAY,QAAO;AAAA,UAE3D,sBACC;AAAA,YAAC;AAAA;AAAA,cACC,eAAY;AAAA,cACZ,WAAU;AAAA;AAAA,UACZ;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,aAAa,gBAAgB,aAAa,SAAS;AAAA,MAChE,GAAG;AAAA,MAEH;AAAA,oBACC,oBAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GAAI,oBAAS;AAAA,QAElE;AAAA,QACA,aACC,oBAAC,UAAK,WAAW,GAAG,iBAAiB,eAAe,GACjD,qBACH;AAAA;AAAA;AAAA,EAEJ;AAEJ;AAEA,IAAO,gBAAQ;","names":[]}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import * as zustand from 'zustand';
|
|
2
|
-
|
|
3
1
|
/**
|
|
4
2
|
* Interface para um item de breadcrumb
|
|
5
3
|
*/
|
|
6
|
-
interface BreadcrumbItem {
|
|
4
|
+
export interface BreadcrumbItem {
|
|
7
5
|
id: string;
|
|
8
6
|
name: string;
|
|
9
7
|
url: string;
|
|
@@ -25,7 +23,7 @@ interface BreadcrumbStore {
|
|
|
25
23
|
* Store Zustand para gerenciar breadcrumbs
|
|
26
24
|
* Suporta múltiplas instâncias através de namespaces
|
|
27
25
|
*/
|
|
28
|
-
declare const useBreadcrumbStore: zustand.UseBoundStore<zustand.StoreApi<BreadcrumbStore>>;
|
|
26
|
+
export declare const useBreadcrumbStore: import("zustand").UseBoundStore<import("zustand").StoreApi<BreadcrumbStore>>;
|
|
29
27
|
/**
|
|
30
28
|
* Hook customizado para facilitar o uso de breadcrumbs
|
|
31
29
|
*
|
|
@@ -46,7 +44,7 @@ declare const useBreadcrumbStore: zustand.UseBoundStore<zustand.StoreApi<Breadcr
|
|
|
46
44
|
* addBreadcrumb({ id: 'detail', name: 'Detail', url: '/page/detail' });
|
|
47
45
|
* ```
|
|
48
46
|
*/
|
|
49
|
-
declare const useBreadcrumb: (namespace: string) => {
|
|
47
|
+
export declare const useBreadcrumb: (namespace: string) => {
|
|
50
48
|
breadcrumbs: BreadcrumbItem[];
|
|
51
49
|
/**
|
|
52
50
|
* Define todos os breadcrumbs de uma vez
|
|
@@ -73,5 +71,5 @@ declare const useBreadcrumb: (namespace: string) => {
|
|
|
73
71
|
*/
|
|
74
72
|
clearBreadcrumbs: () => void;
|
|
75
73
|
};
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
export {};
|
|
75
|
+
//# sourceMappingURL=breadcrumbStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"breadcrumbStore.d.ts","sourceRoot":"","sources":["../../../src/components/BreadcrumbMenu/breadcrumbStore.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,UAAU,eAAe;IAEvB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IAG9C,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAGrE,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAGjE,gBAAgB,EAAE,CAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,KAC7B,IAAI,CAAC;IAGV,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAGlE,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAG7D,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAG9C,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,cAAc,EAAE,CAAC;CACzD;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,8EAiF5B,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM;;IAO3C;;OAEG;4BACqB,cAAc,EAAE;IAIxC;;OAEG;0BACmB,cAAc;IAIpC;;OAEG;+BACwB,MAAM,WAAW,OAAO,CAAC,cAAc,CAAC;IAInE;;OAEG;mCAC4B,MAAM;IAIrC;;OAEG;8BACuB,MAAM;IAIhC;;OAEG;;CAKN,CAAC"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { BreadcrumbItem } from './breadcrumbStore/index.js';
|
|
3
|
-
import 'zustand';
|
|
4
|
-
|
|
1
|
+
import { type BreadcrumbItem } from './breadcrumbStore';
|
|
5
2
|
/**
|
|
6
3
|
* Props do componente BreadcrumbMenu
|
|
7
4
|
*/
|
|
8
|
-
interface BreadcrumbMenuProps {
|
|
5
|
+
export interface BreadcrumbMenuProps {
|
|
9
6
|
/** Lista de breadcrumbs a serem exibidos */
|
|
10
7
|
breadcrumbs: BreadcrumbItem[];
|
|
11
8
|
/** Callback quando um breadcrumb é clicado */
|
|
@@ -26,6 +23,5 @@ interface BreadcrumbMenuProps {
|
|
|
26
23
|
* />
|
|
27
24
|
* ```
|
|
28
25
|
*/
|
|
29
|
-
declare const BreadcrumbMenu: ({ breadcrumbs, onBreadcrumbClick, className, }: BreadcrumbMenuProps) =>
|
|
30
|
-
|
|
31
|
-
export { BreadcrumbMenu, type BreadcrumbMenuProps };
|
|
26
|
+
export declare const BreadcrumbMenu: ({ breadcrumbs, onBreadcrumbClick, className, }: BreadcrumbMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
//# sourceMappingURL=BreadcrumbMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BreadcrumbMenu.d.ts","sourceRoot":"","sources":["../../../src/components/BreadcrumbMenu/BreadcrumbMenu.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,4CAA4C;IAC5C,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,8CAA8C;IAC9C,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxE,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,cAAc,GAAI,gDAI5B,mBAAmB,4CAsCrB,CAAC"}
|