Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
theme.keycloak.v2.admin.resources.assets.SessionsSection-bda418f8.js.map Maven / Gradle / Ivy
Go to download
The user inferface to administrate the Keycloak server.
{"version":3,"file":"SessionsSection-bda418f8.js","sources":["../../src/sessions/RevocationModal.tsx","../../src/sessions/SessionsSection.tsx"],"sourcesContent":["import type GlobalRequestResult from \"@keycloak/keycloak-admin-client/lib/defs/globalRequestResult\";\nimport type RealmRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/realmRepresentation\";\nimport {\n AlertVariant,\n Button,\n ButtonVariant,\n Form,\n FormGroup,\n Modal,\n ModalVariant,\n TextContent,\n ValidatedOptions,\n} from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { adminClient } from \"../admin-client\";\nimport { useAlerts } from \"../components/alert/Alerts\";\nimport { KeycloakTextInput } from \"../components/keycloak-text-input/KeycloakTextInput\";\nimport { useRealm } from \"../context/realm-context/RealmContext\";\nimport { emailRegexPattern } from \"../util\";\nimport { useFetch } from \"../utils/useFetch\";\n\ntype RevocationModalProps = {\n handleModalToggle: () => void;\n save: () => void;\n};\n\nexport const RevocationModal = ({\n handleModalToggle,\n save,\n}: RevocationModalProps) => {\n const { t } = useTranslation(\"sessions\");\n const { addAlert } = useAlerts();\n\n const { realm: realmName } = useRealm();\n const {\n register,\n handleSubmit,\n formState: { errors },\n } = useForm();\n const [realm, setRealm] = useState();\n\n const [key, setKey] = useState(0);\n\n const refresh = () => {\n setKey(new Date().getTime());\n };\n\n useFetch(\n () => adminClient.realms.findOne({ realm: realmName }),\n (realm) => {\n setRealm(realm);\n },\n [key]\n );\n\n const parseResult = (result: GlobalRequestResult, prefixKey: string) => {\n const successCount = result.successRequests?.length || 0;\n const failedCount = result.failedRequests?.length || 0;\n\n if (successCount === 0 && failedCount === 0) {\n addAlert(t(\"clients:noAdminUrlSet\"), AlertVariant.warning);\n } else if (failedCount > 0) {\n addAlert(\n t(\"clients:\" + prefixKey + \"Success\", {\n successNodes: result.successRequests,\n }),\n AlertVariant.success\n );\n addAlert(\n t(\"clients:\" + prefixKey + \"Fail\", {\n failedNodes: result.failedRequests,\n }),\n AlertVariant.danger\n );\n } else {\n addAlert(\n t(\"clients:\" + prefixKey + \"Success\", {\n successNodes: result.successRequests,\n }),\n AlertVariant.success\n );\n }\n };\n\n const setToNow = async () => {\n try {\n await adminClient.realms.update(\n { realm: realmName },\n {\n realm: realmName,\n notBefore: Date.now() / 1000,\n }\n );\n\n addAlert(t(\"notBeforeSuccess\"), AlertVariant.success);\n } catch (error) {\n addAlert(t(\"setToNowError\", { error }), AlertVariant.danger);\n }\n };\n\n const clearNotBefore = async () => {\n try {\n await adminClient.realms.update(\n { realm: realmName },\n {\n realm: realmName,\n notBefore: 0,\n }\n );\n addAlert(t(\"notBeforeClearedSuccess\"), AlertVariant.success);\n refresh();\n } catch (error) {\n addAlert(t(\"notBeforeError\", { error }), AlertVariant.danger);\n }\n };\n\n const push = async () => {\n const result = await adminClient.realms.pushRevocation({\n realm: realmName,\n });\n parseResult(result, \"notBeforePush\");\n\n refresh();\n };\n\n return (\n {\n setToNow();\n handleModalToggle();\n }}\n form=\"revocation-modal-form\"\n >\n {t(\"setToNow\")}\n ,\n {\n clearNotBefore();\n handleModalToggle();\n }}\n form=\"revocation-modal-form\"\n >\n {t(\"clear\")}\n ,\n {\n push();\n handleModalToggle();\n }}\n form=\"revocation-modal-form\"\n >\n {t(\"push\")}\n ,\n {\n handleModalToggle();\n }}\n >\n {t(\"common:cancel\")}\n ,\n ]}\n >\n \n {t(\"revocationDescription\")}\n \n \n \n );\n};\n","import UserSessionRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/userSessionRepresentation\";\nimport {\n DropdownItem,\n PageSection,\n Select,\n SelectOption,\n} from \"@patternfly/react-core\";\nimport { FilterIcon } from \"@patternfly/react-icons\";\nimport { useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { adminClient } from \"../admin-client\";\nimport { useAlerts } from \"../components/alert/Alerts\";\nimport { useConfirmDialog } from \"../components/confirm-dialog/ConfirmDialog\";\nimport { ViewHeader } from \"../components/view-header/ViewHeader\";\nimport { fetchAdminUI } from \"../context/auth/admin-ui-endpoint\";\nimport { useRealm } from \"../context/realm-context/RealmContext\";\nimport helpUrls from \"../help-urls\";\nimport { RevocationModal } from \"./RevocationModal\";\nimport SessionsTable from \"./SessionsTable\";\nimport useToggle from \"../utils/useToggle\";\n\nimport \"./SessionsSection.css\";\n\ntype FilterType = \"ALL\" | \"REGULAR\" | \"OFFLINE\";\n\ntype SessionFilterProps = {\n filterType: FilterType;\n onChange: (filterType: FilterType) => void;\n};\n\nconst SessionFilter = ({ filterType, onChange }: SessionFilterProps) => {\n const { t } = useTranslation(\"sessions\");\n\n const [open, toggle] = useToggle();\n\n return (\n }\n onSelect={(_, value) => {\n const filter = value as FilterType;\n onChange(filter);\n toggle();\n }}\n selections={filterType}\n >\n \n {t(\"sessionsType.allSessions\")}\n \n \n {t(\"sessionsType.regularSSO\")}\n \n \n {t(\"sessionsType.offline\")}\n \n \n );\n};\n\nexport default function SessionsSection() {\n const { t } = useTranslation(\"sessions\");\n\n const [key, setKey] = useState(0);\n const refresh = () => setKey(key + 1);\n const { addError } = useAlerts();\n const { realm } = useRealm();\n\n const [revocationModalOpen, setRevocationModalOpen] = useState(false);\n const [filterType, setFilterType] = useState(\"ALL\");\n const [noSessions, setNoSessions] = useState(false);\n\n const handleRevocationModalToggle = () => {\n setRevocationModalOpen(!revocationModalOpen);\n };\n\n const loader = async (first?: number, max?: number, search?: string) => {\n const data = await fetchAdminUI(\n \"ui-ext/sessions\",\n {\n first: `${first}`,\n max: `${max}`,\n type: filterType,\n search: search || \"\",\n }\n );\n setNoSessions(data.length === 0);\n return data;\n };\n\n const [toggleLogoutDialog, LogoutConfirm] = useConfirmDialog({\n titleKey: \"sessions:logoutAllSessions\",\n messageKey: \"sessions:logoutAllDescription\",\n continueButtonLabel: \"common:confirm\",\n onConfirm: async () => {\n try {\n await adminClient.realms.logoutAll({ realm });\n refresh();\n } catch (error) {\n addError(\"sessions:logoutAllSessionsError\", error);\n }\n },\n });\n\n const dropdownItems = [\n handleRevocationModalToggle()}\n >\n {t(\"revocation\")}\n ,\n \n {t(\"signOutAllActiveSessions\")}\n ,\n ];\n\n return (\n <>\n \n \n \n {revocationModalOpen && (\n {\n handleRevocationModalToggle();\n }}\n />\n )}\n {\n setFilterType(type);\n refresh();\n }}\n />\n }\n />\n \n >\n );\n}\n"],"names":["RevocationModal","handleModalToggle","save","t","useTranslation","addAlert","useAlerts","realmName","useRealm","register","handleSubmit","errors","useForm","realm","setRealm","useState","key","setKey","refresh","useFetch","adminClient","parseResult","result","prefixKey","successCount","failedCount","AlertVariant","setToNow","error","clearNotBefore","push","jsxs","Modal","ModalVariant","jsx","Button","ButtonVariant","TextContent","Form","FormGroup","ValidatedOptions","KeycloakTextInput","emailRegexPattern","SessionFilter","filterType","onChange","open","toggle","useToggle","Select","FilterIcon","_","value","SelectOption","SessionsSection","addError","revocationModalOpen","setRevocationModalOpen","setFilterType","noSessions","setNoSessions","handleRevocationModalToggle","loader","first","max","search","data","fetchAdminUI","toggleLogoutDialog","LogoutConfirm","useConfirmDialog","dropdownItems","DropdownItem","Fragment","ViewHeader","helpUrls","PageSection","SessionsTable","type"],"mappings":"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"}