Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
pterodactyl
GitHub Repository: pterodactyl/panel
Path: blob/1.0-develop/resources/scripts/components/elements/activity/ActivityLogMetaButton.tsx
10287 views
1
import React, { useState } from 'react';
2
import { ClipboardListIcon } from '@heroicons/react/outline';
3
import { Dialog } from '@/components/elements/dialog';
4
import { Button } from '@/components/elements/button/index';
5
6
export default ({ meta }: { meta: Record<string, unknown> }) => {
7
const [open, setOpen] = useState(false);
8
9
return (
10
<div className={'self-center md:px-4'}>
11
<Dialog open={open} onClose={() => setOpen(false)} hideCloseIcon title={'Metadata'}>
12
<pre
13
className={
14
'bg-gray-900 rounded p-2 font-mono text-sm leading-relaxed overflow-x-scroll whitespace-pre-wrap'
15
}
16
>
17
{JSON.stringify(meta, null, 2)}
18
</pre>
19
<Dialog.Footer>
20
<Button.Text onClick={() => setOpen(false)}>Close</Button.Text>
21
</Dialog.Footer>
22
</Dialog>
23
<button
24
aria-describedby={'View additional event metadata'}
25
className={
26
'p-2 transition-colors duration-100 text-gray-400 group-hover:text-gray-300 group-hover:hover:text-gray-50'
27
}
28
onClick={() => setOpen(true)}
29
>
30
<ClipboardListIcon className={'w-5 h-5'} />
31
</button>
32
</div>
33
);
34
};
35
36