gitscope
https://dev.kronoz.win/r/marzneshin.git
app/dashboard/src/pages/nodes/table/action-buttons.tsx · v0.2.0
Source
1 63b702d Mardin 2y ago
2 63b702d Mardin 2y ago import { t } from 'i18next';
3 63b702d Mardin 2y ago import { Cog6ToothIcon } from '@heroicons/react/24/outline';
4 63b702d Mardin 2y ago import { chakra, HStack, IconButton, Tooltip } from '@chakra-ui/react';
5 512d183 Mrdn 2y ago import { NodeType, useCoreSettings } from 'stores';
6 63b702d Mardin 2y ago import { FC } from 'react';
7 63b702d Mardin 2y ago
8 63b702d Mardin 2y ago const iconProps = {
9 63b702d Mardin 2y ago baseStyle: {
10 63b702d Mardin 2y ago w: 4,
11 63b702d Mardin 2y ago h: 4,
12 63b702d Mardin 2y ago },
13 63b702d Mardin 2y ago };
14 63b702d Mardin 2y ago const CoreSettingsIcon = chakra(Cog6ToothIcon, iconProps);
15 63b702d Mardin 2y ago
16 512d183 Mrdn 2y ago type ActionButtonsProps = {
17 512d183 Mrdn 2y ago node: NodeType,
18 512d183 Mrdn 2y ago };
19 512d183 Mrdn 2y ago
20 512d183 Mrdn 2y ago export const ActionButtons: FC<ActionButtonsProps> = ({ node }) => {
21 63b702d Mardin 2y ago return (
22 63b702d Mardin 2y ago <HStack
23 63b702d Mardin 2y ago justifyContent="flex-end"
24 63b702d Mardin 2y ago onClick={(e) => {
25 63b702d Mardin 2y ago e.preventDefault();
26 63b702d Mardin 2y ago e.stopPropagation();
27 63b702d Mardin 2y ago }}
28 63b702d Mardin 2y ago >
29 63b702d Mardin 2y ago <Tooltip
30 63b702d Mardin 2y ago label={
31 63b702d Mardin 2y ago t('nodesTable.coreSettings')
32 63b702d Mardin 2y ago }
33 63b702d Mardin 2y ago placement="top"
34 63b702d Mardin 2y ago >
35 63b702d Mardin 2y ago <IconButton
36 63b702d Mardin 2y ago p="0 !important"
37 63b702d Mardin 2y ago aria-label="core settings"
38 63b702d Mardin 2y ago bg="transparent"
39 63b702d Mardin 2y ago _dark={{
40 63b702d Mardin 2y ago _hover: {
41 63b702d Mardin 2y ago bg: 'gray.700',
42 63b702d Mardin 2y ago },
43 63b702d Mardin 2y ago }}
44 63b702d Mardin 2y ago size={{
45 63b702d Mardin 2y ago base: 'sm',
46 63b702d Mardin 2y ago md: 'md',
47 63b702d Mardin 2y ago }}
48 512d183 Mrdn 2y ago onClick={() => {
49 512d183 Mrdn 2y ago useCoreSettings.setState({ selectedNode: node });
50 512d183 Mrdn 2y ago }}
51 63b702d Mardin 2y ago >
52 63b702d Mardin 2y ago <CoreSettingsIcon />
53 63b702d Mardin 2y ago </IconButton>
54 63b702d Mardin 2y ago </Tooltip>
55 63b702d Mardin 2y ago </HStack >
56 63b702d Mardin 2y ago );
57 63b702d Mardin 2y ago };