{"version":3,"file":"UdpAuditEventSidesheet.mjs","names":["React","useEffect","useMemo","useState","SideSheet","useTranslation","FluentTextField","GridRow","GridUnit","AmbientCard","makeStyles","Box","AuditEventTypeEnums","ReactJsonView","LinearProgress","useGetLocalizedUserDateTimeString","UdpEnums","executeQueryWithParameters","getBaseMethod","useStyles","theme","textField","marginTop","spacing","loadingBar","top","marginLeft","marginRight","UdpAuditEventSidesheet","props","auditEvent","isSideSheetOpen","handleSideSheet","promotedEntities","sheetProps","t","classes","getLocalizedDateTimeString","auditEventDetail","setAuditEventDetail","loading","setLoading","auditEventDetailGetApiMethod","Udp_Audit_Event","onCloseSideSheet","getAuditEventDetail","data","id","response","apiMethodId","catch","e","console","error","status","udpAuditEventUdpAuditEventDetail","defaultValue","auditEventTypeName","userDisplayName","domain","createdOn","typeCode","Update_Domain","Delete_Domain","oldObj","JSON","parse","Create_Domain","newObj"],"sources":["../../../../src/udp/pages/UdpAuditEvents/UdpAuditEventSidesheet.jsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport { SideSheet } from '../../../UI/surfaces/SideSheet';\nimport { useTranslation } from 'react-i18next';\nimport { FluentTextField } from '../../../UI/inputs/textField/FluentTextField';\nimport { GridRow } from '../../../layout/GridRow';\nimport { GridUnit } from '../../../layout/GridUnit';\nimport { AmbientCard } from '../../../UI/surfaces/cards/AmbientCard/AmbientCard';\nimport { makeStyles, Box } from \"@material-ui/core\";\nimport { AuditEventTypeEnums } from '../../../enums/auditEventEnums';\nimport ReactJsonView from '@microlink/react-json-view'\nimport { LinearProgress } from '../../../UI/loading/LinearProgress';\nimport { useGetLocalizedUserDateTimeString } from '../../utilities/dateLocalizationHooks';\nimport { UdpEnums } from '../../../enums/unitySystemEnums';\nimport { executeQueryWithParameters, getBaseMethod } from '../../utilities/methodUtils';\n\nconst useStyles = makeStyles((theme) => ({\n    textField: {\n        marginTop: theme.spacing(0),\n    },\n    loadingBar: {\n        top: theme.spacing(-2),\n        marginLeft: theme.spacing(-2),\n        marginRight: theme.spacing(-2),\n    },\n}));\n\nconst UdpAuditEventSidesheet = props => {\n    const {\n        auditEvent,\n        isSideSheetOpen,\n        handleSideSheet,\n        promotedEntities,\n        sheetProps,\n    } = props;\n\n    const { t } = useTranslation();\n    const classes = useStyles();\n    const getLocalizedDateTimeString = useGetLocalizedUserDateTimeString();\n    const [auditEventDetail, setAuditEventDetail] = React.useState({});\n    const [loading, setLoading] = useState(false);\n\n    const auditEventDetailGetApiMethod = useMemo(() => {\n        return getBaseMethod(\n          UdpEnums.Udp_Audit_Event,\n          'unityBaseGetMethod',\n          promotedEntities\n        );\n      }, [promotedEntities]);\n\n    const onCloseSideSheet = () => {\n        handleSideSheet(false);\n    }\n\n    useEffect(() => {\n        const getAuditEventDetail = async () => {\n            let auditEventDetail = {};\n            const data = {};\n            try {\n                if (auditEventDetailGetApiMethod && auditEvent) {\n                    setLoading(true);\n                    data['{id}'] = auditEvent.id;\n                    const response = await executeQueryWithParameters(\n                        { data },\n                        auditEventDetailGetApiMethod.apiMethodId\n                    ).catch((e) => {\n                        console.error(e);\n                        setLoading(false);\n                    });\n                    if (response?.status === 200) {\n                        auditEventDetail = response?.data?.udpAuditEventUdpAuditEventDetail[0];\n                        setAuditEventDetail(auditEventDetail);\n                    }\n                }\n            } finally {\n                setLoading(false);\n            }\n        };\n        getAuditEventDetail();\n      }, [auditEvent, auditEventDetailGetApiMethod]);\n\n    return (\n        <SideSheet\n            {...sheetProps}\n            open={isSideSheetOpen}\n            onClose={onCloseSideSheet}\n            title={t('auditEvents.sidesheet.title', { defaultValue: 'Audit Event Details' })}\n            width={800}\n            color='primary'\n        >\n            {loading ? (\n                <LinearProgress className={classes.loadingBar} color=\"secondary\" />\n            ) : (\n                <GridRow>\n                    <GridUnit ratio=\"1:1\" width=\"100%\">\n                        <AmbientCard fullWidth={true} header={true}>\n                            <>\n                                <FluentTextField\n                                    className={classes.textField}\n                                    id=\"auditEventTypeName\"\n                                    label={t('auditEvents.fields.eventType', { defaultValue: 'Event Type' })}\n                                    value={auditEvent?.auditEventTypeName || ''}\n                                    disabled={true}\n                                />\n                                <FluentTextField\n                                    className={classes.textField}\n                                    id=\"auditEventUserDisplayName\"\n                                    label={t('auditEvents.fields.user', { defaultValue: 'User' })}\n                                    value={auditEvent?.userDisplayName || ''}\n                                    disabled={true}\n                                />\n                                <FluentTextField\n                                    className={classes.textField}\n                                    id=\"auditEventDomain\"\n                                    label={t('auditEvents.fields.description', { defaultValue: 'Description' })}\n                                    value={auditEvent?.domain || ''}\n                                    disabled={true}\n                                />\n                                <FluentTextField\n                                    className={classes.textField}\n                                    id=\"auditEventCreatedOn\"\n                                    label={t('auditEvents.fields.createdOn', { defaultValue: 'Created On' })}\n                                    value={getLocalizedDateTimeString(auditEvent?.createdOn ?? '')}\n                                    disabled={true}\n                                />\n                                <Box>\n                                    {(auditEvent?.typeCode === AuditEventTypeEnums.Update_Domain ||\n                                    auditEvent?.typeCode === AuditEventTypeEnums.Delete_Domain) &&\n                                        <ReactJsonView\n                                            src={auditEventDetail?.oldObj ? JSON.parse(auditEventDetail?.oldObj) : {}}\n                                            name={t('auditEvents.sidesheet.oldDetails', { defaultValue: 'Old Details' })}\n                                            displayDataTypes={false}\n                                            displayObjectSize={false}\n                                        />\n                                    }\n                                    {(auditEvent?.typeCode === AuditEventTypeEnums.Update_Domain ||\n                                    auditEvent?.typeCode === AuditEventTypeEnums.Create_Domain) &&\n                                        <ReactJsonView\n                                            src={auditEventDetail?.newObj ? JSON.parse(auditEventDetail?.newObj) : {}}\n                                            name={t('auditEvents.sidesheet.newDetails', { defaultValue: 'New Details' })}\n                                            displayDataTypes={false}\n                                            displayObjectSize={false}\n                                        />\n                                    }\n                                </Box>\n                            </>\n                        </AmbientCard>\n                    </GridUnit>\n                </GridRow>\n            )}\n        </SideSheet>\n    )\n}\n\nexport default UdpAuditEventSidesheet;\n"],"mappings":"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"}