⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.72
Server IP:
41.128.143.86
Server:
Linux host.raqmix.cloud 6.8.0-1025-azure #30~22.04.1-Ubuntu SMP Wed Mar 12 15:28:20 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.3.23
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
proc
/
self
/
root
/
usr
/
share
/
grafana
/
public
/
build
/
View File Name :
UserProfileEditPage.7cc4c218d9e4664250e3.js.map
{"version":3,"file":"UserProfileEditPage.7cc4c218d9e4664250e3.js","mappings":"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","sources":["webpack://grafana/./public/app/core/components/SharedPreferences/SharedPreferences.tsx","webpack://grafana/./public/app/features/profile/UserOrganizations.tsx","webpack://grafana/./public/app/features/profile/UserProfileEditForm.tsx","webpack://grafana/./public/app/features/profile/UserSessions.tsx","webpack://grafana/./public/app/features/profile/UserTeams.tsx","webpack://grafana/./public/app/features/profile/UserProfileEditPage.tsx","webpack://grafana/./public/app/features/profile/api.ts","webpack://grafana/./public/app/features/profile/state/actions.ts","webpack://grafana/./node_modules/react-use/esm/useMount.js"],"sourcesContent":["import { css } from '@emotion/css';\nimport React, { PureComponent } from 'react';\n\nimport { FeatureState, SelectableValue, getBuiltInThemes, ThemeRegistryItem } from '@grafana/data';\nimport { selectors } from '@grafana/e2e-selectors';\nimport { config, reportInteraction } from '@grafana/runtime';\nimport { Preferences as UserPreferencesDTO } from '@grafana/schema/src/raw/preferences/x/preferences_types.gen';\nimport {\n Button,\n Field,\n FieldSet,\n Label,\n Select,\n stylesFactory,\n TimeZonePicker,\n WeekStartPicker,\n FeatureBadge,\n} from '@grafana/ui';\nimport { DashboardPicker } from 'app/core/components/Select/DashboardPicker';\nimport { t, Trans } from 'app/core/internationalization';\nimport { LANGUAGES } from 'app/core/internationalization/constants';\nimport { PreferencesService } from 'app/core/services/PreferencesService';\nimport { changeTheme } from 'app/core/services/theme';\n\nexport interface Props {\n resourceUri: string;\n disabled?: boolean;\n preferenceType: 'org' | 'team' | 'user';\n onConfirm?: () => Promise
;\n}\n\nexport type State = UserPreferencesDTO;\n\nfunction getLanguageOptions(): Array
> {\n const languageOptions = LANGUAGES.map((v) => ({\n value: v.code,\n label: v.name,\n }));\n\n const options = [\n {\n value: '',\n label: t('common.locale.default', 'Default'),\n },\n ...languageOptions,\n ];\n\n return options;\n}\n\nexport class SharedPreferences extends PureComponent
{\n service: PreferencesService;\n themeOptions: SelectableValue[];\n\n constructor(props: Props) {\n super(props);\n\n this.service = new PreferencesService(props.resourceUri);\n this.state = {\n theme: '',\n timezone: '',\n weekStart: '',\n language: '',\n queryHistory: { homeTab: '' },\n };\n\n this.themeOptions = getBuiltInThemes(config.featureToggles.extraThemes).map((theme) => ({\n value: theme.id,\n label: getTranslatedThemeName(theme),\n }));\n\n // Add default option\n this.themeOptions.unshift({ value: '', label: t('shared-preferences.theme.default-label', 'Default') });\n }\n\n async componentDidMount() {\n const prefs = await this.service.load();\n\n this.setState({\n homeDashboardUID: prefs.homeDashboardUID,\n theme: prefs.theme,\n timezone: prefs.timezone,\n weekStart: prefs.weekStart,\n language: prefs.language,\n queryHistory: prefs.queryHistory,\n });\n }\n\n onSubmitForm = async (event: React.FormEvent
) => {\n event.preventDefault();\n const confirmationResult = this.props.onConfirm ? await this.props.onConfirm() : true;\n\n if (confirmationResult) {\n const { homeDashboardUID, theme, timezone, weekStart, language, queryHistory } = this.state;\n await this.service.update({ homeDashboardUID, theme, timezone, weekStart, language, queryHistory });\n window.location.reload();\n }\n };\n\n onThemeChanged = (value: SelectableValue
) => {\n this.setState({ theme: value.value });\n\n if (value.value) {\n changeTheme(value.value, true);\n }\n };\n\n onTimeZoneChanged = (timezone?: string) => {\n if (typeof timezone !== 'string') {\n return;\n }\n this.setState({ timezone: timezone });\n };\n\n onWeekStartChanged = (weekStart: string) => {\n this.setState({ weekStart: weekStart });\n };\n\n onHomeDashboardChanged = (dashboardUID: string) => {\n this.setState({ homeDashboardUID: dashboardUID });\n };\n\n onLanguageChanged = (language: string) => {\n this.setState({ language });\n\n reportInteraction('grafana_preferences_language_changed', {\n toLanguage: language,\n preferenceType: this.props.preferenceType,\n });\n };\n\n render() {\n const { theme, timezone, weekStart, homeDashboardUID, language } = this.state;\n const { disabled } = this.props;\n const styles = getStyles();\n const languages = getLanguageOptions();\n const currentThemeOption = this.themeOptions.find((x) => x.value === theme) ?? this.themeOptions[0];\n\n return (\n
\n
Preferences} disabled={disabled}>\n
\n
\n
\n\n
\n
\n
Home Dashboard
\n
\n \n }\n data-testid=\"User preferences home dashboard drop down\"\n >\n
this.onHomeDashboardChanged(v?.uid ?? '')}\n defaultOptions={true}\n isClearable={true}\n placeholder={t('shared-preferences.fields.home-dashboard-placeholder', 'Default dashboard')}\n inputId=\"home-dashboard-select\"\n />\n
\n\n
\n
\n
\n\n
\n
\n
\n\n
\n
\n
Language
\n
\n
\n \n }\n data-testid=\"User preferences language drop down\"\n >\n
lang.value === language)}\n onChange={(lang: SelectableValue
) => this.onLanguageChanged(lang.value ?? '')}\n options={languages}\n placeholder={t('shared-preferences.fields.locale-placeholder', 'Choose language')}\n inputId=\"locale-select\"\n />\n
\n
\n
\n
Save
\n
\n
\n );\n }\n}\n\nexport default SharedPreferences;\n\nconst getStyles = stylesFactory(() => {\n return {\n labelText: css({\n marginRight: '6px',\n }),\n form: css({\n width: '100%',\n maxWidth: '600px',\n }),\n };\n});\n\nfunction getTranslatedThemeName(theme: ThemeRegistryItem) {\n switch (theme.id) {\n case 'dark':\n return t('shared.preferences.theme.dark-label', 'Dark');\n case 'light':\n return t('shared.preferences.theme.light-label', 'Light');\n case 'system':\n return t('shared.preferences.theme.system-label', 'System preference');\n default:\n return theme.name;\n }\n}\n","import React, { PureComponent } from 'react';\n\nimport { selectors } from '@grafana/e2e-selectors';\nimport { Button, LoadingPlaceholder } from '@grafana/ui';\nimport { Trans } from 'app/core/internationalization';\nimport { UserDTO, UserOrg } from 'app/types';\n\nexport interface Props {\n user: UserDTO | null;\n orgs: UserOrg[];\n isLoading: boolean;\n setUserOrg: (org: UserOrg) => void;\n}\n\nexport class UserOrganizations extends PureComponent
{\n render() {\n const { isLoading, orgs, user } = this.props;\n\n if (isLoading) {\n return
;\n }\n\n if (orgs.length === 0) {\n return null;\n }\n\n return (\n
\n
\n
Organizations
\n
\n\n
\n
\n
\n
\n
Name
\n
\n
\n
Role
\n
\n
\n
\n
\n
\n {orgs.map((org: UserOrg, index) => {\n return (\n
\n
{org.name}
\n
{org.role}
\n
\n {org.orgId === user?.orgId ? (\n
\n
Current
\n
\n ) : (\n
{\n this.props.setUserOrg(org);\n }}\n >\n
Select organisation
\n
\n )}\n
\n
\n );\n })}\n
\n
\n
\n );\n }\n}\n\nexport default UserOrganizations;\n","import React from 'react';\n\nimport { selectors } from '@grafana/e2e-selectors';\nimport { Button, Field, FieldSet, Form, Icon, Input, Tooltip } from '@grafana/ui';\nimport config from 'app/core/config';\nimport { t, Trans } from 'app/core/internationalization';\nimport { UserDTO } from 'app/types';\n\nimport { ProfileUpdateFields } from './types';\n\nexport interface Props {\n user: UserDTO | null;\n isSavingUser: boolean;\n updateProfile: (payload: ProfileUpdateFields) => void;\n}\n\nconst { disableLoginForm } = config;\n\nexport const UserProfileEditForm = ({ user, isSavingUser, updateProfile }: Props) => {\n const onSubmitProfileUpdate = (data: ProfileUpdateFields) => {\n updateProfile(data);\n };\n\n // check if authLabels is longer than 0 otherwise false\n const isExternalUser: boolean = (user && user.isExternal) ?? false;\n const authSource = isExternalUser && user && user.authLabels ? user.authLabels[0] : '';\n const lockMessage = authSource ? ` (Synced via ${authSource})` : '';\n const disabledEdit = disableLoginForm || isExternalUser;\n\n return (\n
\n {({ register, errors }) => {\n return (\n <>\n
\n
Name is required}\n disabled={disabledEdit}\n >\n
}\n />\n
\n\n
Email is required}\n disabled={disabledEdit}\n >\n
}\n />\n
\n\n
\n
}\n />\n
\n
\n
\n
Save
\n
\n >\n );\n }}\n
\n );\n};\n\nexport default UserProfileEditForm;\n\nconst InputSuffix = () => {\n return disableLoginForm ? (\n
\n
\n
\n ) : null;\n};\n","import { css } from '@emotion/css';\nimport { t } from 'i18next';\nimport React, { PureComponent } from 'react';\n\nimport { selectors } from '@grafana/e2e-selectors';\nimport { Button, Icon, LoadingPlaceholder } from '@grafana/ui';\nimport { i18nDate, Trans } from 'app/core/internationalization';\nimport { UserSession } from 'app/types';\n\ninterface Props {\n sessions: UserSession[];\n isLoading: boolean;\n revokeUserSession: (tokenId: number) => void;\n}\n\nclass UserSessions extends PureComponent
{\n render() {\n const { isLoading, sessions, revokeUserSession } = this.props;\n const styles = getStyles();\n\n if (isLoading) {\n return
Loading sessions...} />;\n }\n\n return (\n
\n {sessions.length > 0 && (\n <>\n
Sessions
\n
\n
\n
\n
\n
Last seen
\n
\n
\n
Logged on
\n
\n
\n
IP address
\n
\n
\n
Browser & OS
\n
\n
\n
\n
\n\n
\n {sessions.map((session: UserSession, index) => (\n
\n {session.isActive ?
Now
:
{session.seenAt}
}\n
{i18nDate(session.createdAt, { dateStyle: 'long' })}
\n
{session.clientIp}
\n
\n {session.browser} on {session.os} {session.osVersion}\n
\n
\n
revokeUserSession(session.id)}\n aria-label={t('user-session.revoke', 'Revoke user session')}\n >\n
\n
\n
\n
\n ))}\n
\n
\n >\n )}\n
\n );\n }\n}\n\nconst getStyles = () => ({\n wrapper: css({\n maxWidth: '100%',\n }),\n});\n\nexport default UserSessions;\n","import React, { PureComponent } from 'react';\n\nimport { LoadingPlaceholder } from '@grafana/ui';\nimport { Team } from 'app/types';\n\nexport interface Props {\n teams: Team[];\n isLoading: boolean;\n}\n\nexport class UserTeams extends PureComponent
{\n render() {\n const { isLoading, teams } = this.props;\n\n if (isLoading) {\n return
;\n }\n\n if (teams.length === 0) {\n return null;\n }\n\n return (\n
\n
Teams
\n
\n
\n
\n
\n
Name
\n
Email
\n
Members
\n
\n
\n
\n {teams.map((team: Team, index) => {\n return (\n
\n
\n
\n
\n
{team.name}
\n
{team.email}
\n
{team.memberCount}
\n
\n );\n })}\n
\n
\n
\n );\n }\n}\n\nexport default UserTeams;\n","import React, { useMemo, useState } from 'react';\nimport { connect, ConnectedProps } from 'react-redux';\nimport { useMount } from 'react-use';\n\nimport { PluginExtensionComponent, PluginExtensionPoints } from '@grafana/data';\nimport { selectors } from '@grafana/e2e-selectors';\nimport { getPluginComponentExtensions } from '@grafana/runtime';\nimport { Tab, TabsBar, TabContent, VerticalGroup, Stack } from '@grafana/ui';\nimport { Page } from 'app/core/components/Page/Page';\nimport SharedPreferences from 'app/core/components/SharedPreferences/SharedPreferences';\nimport { useQueryParams } from 'app/core/hooks/useQueryParams';\nimport { t } from 'app/core/internationalization';\nimport { StoreState } from 'app/types';\n\nimport UserOrganizations from './UserOrganizations';\nimport UserProfileEditForm from './UserProfileEditForm';\nimport UserSessions from './UserSessions';\nimport { UserTeams } from './UserTeams';\nimport { changeUserOrg, initUserProfilePage, revokeUserSession, updateUserProfile } from './state/actions';\n\nconst TAB_QUERY_PARAM = 'tab';\nconst GENERAL_SETTINGS_TAB = 'general';\n\ntype TabInfo = {\n id: string;\n title: string;\n};\n\nexport interface OwnProps {}\n\nfunction mapStateToProps(state: StoreState) {\n const userState = state.user;\n const { user, teams, orgs, sessions, teamsAreLoading, orgsAreLoading, sessionsAreLoading, isUpdating } = userState;\n return {\n orgsAreLoading,\n sessionsAreLoading,\n teamsAreLoading,\n orgs,\n sessions,\n teams,\n isUpdating,\n user,\n };\n}\n\nconst mapDispatchToProps = {\n initUserProfilePage,\n revokeUserSession,\n changeUserOrg,\n updateUserProfile,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport type Props = OwnProps & ConnectedProps
;\n\nexport function UserProfileEditPage({\n orgsAreLoading,\n sessionsAreLoading,\n teamsAreLoading,\n initUserProfilePage,\n orgs,\n sessions,\n teams,\n isUpdating,\n user,\n revokeUserSession,\n changeUserOrg,\n updateUserProfile,\n}: Props) {\n const [queryParams, updateQueryParams] = useQueryParams();\n const tabQueryParam = queryParams[TAB_QUERY_PARAM];\n const [activeTab, setActiveTab] = useState
(\n typeof tabQueryParam === 'string' ? tabQueryParam : GENERAL_SETTINGS_TAB\n );\n\n useMount(() => initUserProfilePage());\n\n const extensionComponents = useMemo(() => {\n const { extensions } = getPluginComponentExtensions({\n extensionPointId: PluginExtensionPoints.UserProfileTab,\n context: {},\n });\n\n return extensions;\n }, []);\n\n const groupedExtensionComponents = extensionComponents.reduce
>(\n (acc, extension) => {\n const { title } = extension;\n if (acc[title]) {\n acc[title].push(extension);\n } else {\n acc[title] = [extension];\n }\n return acc;\n },\n {}\n );\n\n const convertExtensionComponentTitleToTabId = (title: string) => title.toLowerCase();\n\n const showTabs = extensionComponents.length > 0;\n const tabs: TabInfo[] = [\n {\n id: GENERAL_SETTINGS_TAB,\n title: t('user-profile.tabs.general', 'General'),\n },\n ...Object.keys(groupedExtensionComponents).map((title) => ({\n id: convertExtensionComponentTitleToTabId(title),\n title,\n })),\n ];\n\n const UserProfile = () => (\n
\n
\n
\n
\n
\n
\n
\n
\n
\n );\n\n const UserProfileWithTabs = () => (\n
\n
\n
\n {tabs.map(({ id, title }) => {\n return (\n
{\n setActiveTab(id);\n updateQueryParams({ [TAB_QUERY_PARAM]: id });\n }}\n data-testid={selectors.components.UserProfile.extensionPointTab(id)}\n />\n );\n })}\n
\n
\n {activeTab === GENERAL_SETTINGS_TAB &&
}\n {Object.entries(groupedExtensionComponents).map(([title, pluginExtensionComponents]) => {\n const tabId = convertExtensionComponentTitleToTabId(title);\n\n if (activeTab === tabId) {\n return (\n
\n {pluginExtensionComponents.map(({ component: Component }, index) => (\n
\n ))}\n
\n );\n }\n return null;\n })}\n
\n
\n
\n );\n\n return (\n
\n
{showTabs ?
:
}
\n
\n );\n}\n\nexport default connector(UserProfileEditPage);\n","import { getBackendSrv } from '@grafana/runtime';\n\nimport { Team, UserDTO, UserOrg, UserSession } from '../../types';\n\nimport { ChangePasswordFields, ProfileUpdateFields } from './types';\n\nasync function changePassword(payload: ChangePasswordFields): Promise
{\n try {\n await getBackendSrv().put('/api/user/password', payload);\n } catch (err) {\n console.error(err);\n }\n}\n\nfunction loadUser(): Promise
{\n return getBackendSrv().get('/api/user');\n}\n\nfunction loadTeams(): Promise
{\n return getBackendSrv().get('/api/user/teams');\n}\n\nfunction loadOrgs(): Promise
{\n return getBackendSrv().get('/api/user/orgs');\n}\n\nfunction loadSessions(): Promise
{\n return getBackendSrv().get('/api/user/auth-tokens');\n}\n\nasync function revokeUserSession(tokenId: number): Promise
{\n await getBackendSrv().post('/api/user/revoke-auth-token', {\n authTokenId: tokenId,\n });\n}\n\nasync function setUserOrg(org: UserOrg): Promise
{\n await getBackendSrv().post('/api/user/using/' + org.orgId, {});\n}\n\nasync function updateUserProfile(payload: ProfileUpdateFields): Promise
{\n try {\n await getBackendSrv().put('/api/user', payload);\n } catch (err) {\n console.error(err);\n }\n}\n\nexport const api = {\n changePassword,\n revokeUserSession,\n loadUser,\n loadSessions,\n loadOrgs,\n loadTeams,\n setUserOrg,\n updateUserProfile,\n};\n","import { config } from '@grafana/runtime';\n\nimport { ThunkResult, UserOrg } from '../../../types';\nimport { api } from '../api';\nimport { ChangePasswordFields, ProfileUpdateFields } from '../types';\n\nimport {\n initLoadOrgs,\n initLoadSessions,\n initLoadTeams,\n orgsLoaded,\n sessionsLoaded,\n setUpdating,\n teamsLoaded,\n userLoaded,\n userSessionRevoked,\n} from './reducers';\n\nexport function changePassword(payload: ChangePasswordFields): ThunkResult
{\n return async function (dispatch) {\n dispatch(setUpdating({ updating: true }));\n await api.changePassword(payload);\n dispatch(setUpdating({ updating: false }));\n };\n}\n\nexport function initUserProfilePage(): ThunkResult
{\n return async function (dispatch) {\n await dispatch(loadUser());\n dispatch(loadTeams());\n dispatch(loadOrgs());\n dispatch(loadSessions());\n };\n}\n\nexport function loadUser(): ThunkResult
{\n return async function (dispatch) {\n const user = await api.loadUser();\n dispatch(userLoaded({ user }));\n };\n}\n\nfunction loadTeams(): ThunkResult
{\n return async function (dispatch) {\n dispatch(initLoadTeams());\n const teams = await api.loadTeams();\n dispatch(teamsLoaded({ teams }));\n };\n}\n\nfunction loadOrgs(): ThunkResult
{\n return async function (dispatch) {\n dispatch(initLoadOrgs());\n const orgs = await api.loadOrgs();\n dispatch(orgsLoaded({ orgs }));\n };\n}\n\nfunction loadSessions(): ThunkResult
{\n return async function (dispatch) {\n dispatch(initLoadSessions());\n const sessions = await api.loadSessions();\n dispatch(sessionsLoaded({ sessions }));\n };\n}\n\nexport function revokeUserSession(tokenId: number): ThunkResult
{\n return async function (dispatch) {\n dispatch(setUpdating({ updating: true }));\n await api.revokeUserSession(tokenId);\n dispatch(userSessionRevoked({ tokenId }));\n };\n}\n\nexport function changeUserOrg(org: UserOrg): ThunkResult
{\n return async function (dispatch) {\n dispatch(setUpdating({ updating: true }));\n await api.setUserOrg(org);\n window.location.href = config.appSubUrl + '/profile';\n };\n}\n\nexport function updateUserProfile(payload: ProfileUpdateFields): ThunkResult
{\n return async function (dispatch) {\n dispatch(setUpdating({ updating: true }));\n await api.updateUserProfile(payload);\n await dispatch(loadUser());\n dispatch(setUpdating({ updating: false }));\n };\n}\n","import useEffectOnce from './useEffectOnce';\nvar useMount = function (fn) {\n useEffectOnce(function () {\n fn();\n });\n};\nexport default useMount;\n"],"names":["getLanguageOptions","languageOptions","v","SharedPreferences","props","event","homeDashboardUID","theme","timezone","weekStart","language","queryHistory","value","dashboardUID","getTranslatedThemeName","prefs","disabled","styles","getStyles","languages","currentThemeOption","x","lang","UserOrganizations","isLoading","orgs","user","LoadingPlaceholder","selectors","org","index","Button","disableLoginForm","config","isSavingUser","updateProfile","onSubmitProfileUpdate","data","isExternalUser","authSource","lockMessage","disabledEdit","Form","register","errors","FieldSet","Field","Input","InputSuffix","Tooltip","Icon","UserSessions","sessions","revokeUserSession","session","UserTeams","teams","team","TAB_QUERY_PARAM","GENERAL_SETTINGS_TAB","mapStateToProps","state","userState","teamsAreLoading","orgsAreLoading","sessionsAreLoading","isUpdating","mapDispatchToProps","connector","UserProfileEditPage","initUserProfilePage","changeUserOrg","updateUserProfile","queryParams","updateQueryParams","useQueryParams","tabQueryParam","activeTab","setActiveTab","useMount","extensionComponents","extensions","groupedExtensionComponents","acc","extension","title","convertExtensionComponentTitleToTabId","showTabs","tabs","UserProfile","Stack","UserProfileWithTabs","TabsBar","id","Tab","TabContent","pluginExtensionComponents","tabId","Component","Page","changePassword","payload","err","loadUser","loadTeams","loadOrgs","loadSessions","tokenId","setUserOrg","api","dispatch","fn"],"sourceRoot":""}