@applica-software-guru/react-admin 1.0.42 → 1.0.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bitbucket-pipelines.yml +2 -0
- package/dist/ApplicaAdmin.d.ts.map +1 -1
- package/dist/components/@extended/AnimateButton.d.ts +1 -1
- package/dist/components/@extended/AnimateButton.d.ts.map +1 -1
- package/dist/components/@extended/Avatar.d.ts.map +1 -1
- package/dist/components/@extended/Breadcrumbs.d.ts.map +1 -1
- package/dist/components/@extended/IconButton.d.ts.map +1 -1
- package/dist/components/@extended/LoadingButton.d.ts.map +1 -1
- package/dist/components/@extended/Tooltip.d.ts.map +1 -1
- package/dist/components/@extended/Transitions.d.ts.map +1 -1
- package/dist/components/@extended/progress/CircularWithLabel.d.ts.map +1 -1
- package/dist/components/@extended/progress/CircularWithPath.d.ts.map +1 -1
- package/dist/components/ActionsMenu.d.ts +30 -0
- package/dist/components/ActionsMenu.d.ts.map +1 -0
- package/dist/components/Layout/Drawer/DrawerContent/Navigation/NavCollapse.d.ts +1 -1
- package/dist/components/Layout/Drawer/DrawerContent/Navigation/NavCollapse.d.ts.map +1 -1
- package/dist/components/Layout/Drawer/DrawerContent/Navigation/NavGroup.d.ts.map +1 -1
- package/dist/components/Layout/Drawer/DrawerContent/Navigation/NavItem.d.ts.map +1 -1
- package/dist/components/Layout/Drawer/DrawerHeader/DrawerHeaderStyled.d.ts.map +1 -1
- package/dist/components/Layout/Drawer/DrawerHeader/index.d.ts.map +1 -1
- package/dist/components/Layout/Drawer/MiniDrawerStyled.d.ts.map +1 -1
- package/dist/components/Layout/Drawer/index.d.ts.map +1 -1
- package/dist/components/Layout/Footer.d.ts.map +1 -1
- package/dist/components/Layout/Header/AppBarStyled.d.ts.map +1 -1
- package/dist/components/Layout/Header/HeaderContent/Notification.d.ts.map +1 -1
- package/dist/components/Layout/Header/HeaderContent/NotificationItem.d.ts.map +1 -1
- package/dist/components/Layout/Header/HeaderContent/Profile.d.ts.map +1 -1
- package/dist/components/Layout/Header/HeaderContent/index.d.ts.map +1 -1
- package/dist/components/Layout/Header/index.d.ts.map +1 -1
- package/dist/components/Layout/index.d.ts.map +1 -1
- package/dist/components/MenuPopover/styles.d.ts.map +1 -1
- package/dist/components/Notification.d.ts.map +1 -1
- package/dist/components/ScrollX.d.ts.map +1 -1
- package/dist/components/ra-buttons/CreateInDialogButton.d.ts +62 -0
- package/dist/components/ra-buttons/CreateInDialogButton.d.ts.map +1 -0
- package/dist/components/ra-buttons/EditInDialogButton.d.ts.map +1 -1
- package/dist/components/ra-custom/ListItem.d.ts +45 -0
- package/dist/components/ra-custom/ListItem.d.ts.map +1 -0
- package/dist/components/ra-custom/index.d.ts +3 -0
- package/dist/components/ra-custom/index.d.ts.map +1 -0
- package/dist/components/ra-fields/AttachmentField.d.ts +36 -0
- package/dist/components/ra-fields/AttachmentField.d.ts.map +1 -0
- package/dist/components/ra-fields/BaseAttachmentField.d.ts +32 -0
- package/dist/components/ra-fields/BaseAttachmentField.d.ts.map +1 -0
- package/dist/components/ra-fields/CoverField.d.ts.map +1 -1
- package/dist/components/ra-fields/DateAgoField.d.ts.map +1 -1
- package/dist/components/ra-fields/ReadonlyField.d.ts.map +1 -1
- package/dist/components/ra-forms/CardForm.d.ts.map +1 -1
- package/dist/components/ra-forms/FormHeader.d.ts +29 -0
- package/dist/components/ra-forms/FormHeader.d.ts.map +1 -0
- package/dist/components/ra-forms/LongForm/LongForm.d.ts +98 -0
- package/dist/components/ra-forms/LongForm/LongForm.d.ts.map +1 -0
- package/dist/components/ra-forms/LongForm/LongFormSidebar.d.ts +34 -0
- package/dist/components/ra-forms/LongForm/LongFormSidebar.d.ts.map +1 -0
- package/dist/components/ra-forms/LongForm/LongFormTab.d.ts +45 -0
- package/dist/components/ra-forms/LongForm/LongFormTab.d.ts.map +1 -0
- package/dist/components/ra-forms/LongForm/LongFormTabs.d.ts +23 -0
- package/dist/components/ra-forms/LongForm/LongFormTabs.d.ts.map +1 -0
- package/dist/components/ra-forms/LongForm/LongFormView.d.ts +42 -0
- package/dist/components/ra-forms/LongForm/LongFormView.d.ts.map +1 -0
- package/dist/components/ra-forms/LongForm/index.d.ts +3 -0
- package/dist/components/ra-forms/LongForm/index.d.ts.map +1 -0
- package/dist/components/ra-forms/LongForm/useFormRootPath.d.ts.map +1 -1
- package/dist/components/ra-forms/SimpleForm.d.ts +40 -0
- package/dist/components/ra-forms/SimpleForm.d.ts.map +1 -0
- package/dist/components/ra-forms/SimpleFormIterator.d.ts +6 -0
- package/dist/components/ra-forms/SimpleFormIterator.d.ts.map +1 -0
- package/dist/components/ra-forms/TabbedForm.d.ts.map +1 -1
- package/dist/components/ra-inputs/ArrayInput.d.ts +13 -0
- package/dist/components/ra-inputs/ArrayInput.d.ts.map +1 -0
- package/dist/components/ra-inputs/LabeledArrayInput.d.ts +42 -0
- package/dist/components/ra-inputs/LabeledArrayInput.d.ts.map +1 -0
- package/dist/components/ra-inputs/ReferenceManyInput.d.ts.map +1 -1
- package/dist/components/ra-lists/Empty.d.ts.map +1 -1
- package/dist/components/ra-lists/NotificationList/NotificationList.d.ts.map +1 -1
- package/dist/components/ra-lists/NotificationList/button/MarkAsReadedButton.d.ts.map +1 -1
- package/dist/components/ra-lists/NotificationList/field/NotificationField.d.ts.map +1 -1
- package/dist/contexts/AppConfigContext.d.ts +32 -0
- package/dist/contexts/AppConfigContext.d.ts.map +1 -0
- package/dist/contexts/MenuConfigContext.d.ts.map +1 -1
- package/dist/contexts/MenuPropTypes.d.ts.map +1 -1
- package/dist/dev/useCliErrorCatcher.d.ts +1 -1
- package/dist/hooks/useMenu.d.ts.map +1 -1
- package/dist/i18n/useI18nCatcher.d.ts +1 -1
- package/dist/i18n/useI18nLanguages.d.ts +1 -1
- package/dist/i18n/useI18nLanguages.d.ts.map +1 -1
- package/dist/i18n/useI18nProvider.d.ts.map +1 -1
- package/dist/react-admin.cjs.js +1 -1
- package/dist/react-admin.cjs.js.map +1 -1
- package/dist/react-admin.es.js +299 -784
- package/dist/react-admin.es.js.map +1 -1
- package/dist/react-admin.umd.js +1 -1
- package/dist/react-admin.umd.js.map +1 -1
- package/dist/themes/overrides/OutlinedInput.d.ts.map +1 -1
- package/dist/themes/palette.d.ts.map +1 -1
- package/dist/themes/theme/theme1.d.ts.map +1 -1
- package/dist/themes/theme/theme2.d.ts.map +1 -1
- package/dist/themes/theme/theme3.d.ts.map +1 -1
- package/dist/themes/theme/theme4.d.ts.map +1 -1
- package/dist/themes/theme/theme5.d.ts.map +1 -1
- package/dist/themes/theme/theme6.d.ts.map +1 -1
- package/dist/themes/theme/theme7.d.ts.map +1 -1
- package/dist/themes/theme/theme8.d.ts.map +1 -1
- package/dist/utils/index.d.ts +2 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/lang.d.ts +1 -1
- package/dist/utils/lang.d.ts.map +1 -1
- package/dist/utils/time.d.ts +2 -1
- package/dist/utils/time.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/Admin.jsx +8 -8
- package/src/AdminContext.jsx +9 -9
- package/src/ApplicaAdmin.jsx +30 -35
- package/src/components/@extended/AnimateButton.jsx +25 -33
- package/src/components/@extended/Avatar.jsx +35 -42
- package/src/components/@extended/Breadcrumbs.jsx +62 -96
- package/src/components/@extended/Dot.jsx +14 -14
- package/src/components/@extended/IconButton.jsx +55 -65
- package/src/components/@extended/LoadingButton.jsx +84 -86
- package/src/components/@extended/Tooltip.jsx +24 -27
- package/src/components/@extended/Transitions.jsx +98 -107
- package/src/components/@extended/index.jsx +10 -10
- package/src/components/@extended/progress/CircularWithLabel.jsx +7 -9
- package/src/components/@extended/progress/CircularWithPath.jsx +9 -18
- package/src/components/@extended/progress/LinearWithIcon.jsx +5 -5
- package/src/components/@extended/progress/LinearWithLabel.jsx +5 -5
- package/src/components/@extended/progress/index.jsx +5 -5
- package/src/components/Layout/Drawer/DrawerContent/Navigation/NavCollapse.jsx +112 -131
- package/src/components/Layout/Drawer/DrawerContent/Navigation/NavGroup.jsx +67 -88
- package/src/components/Layout/Drawer/DrawerContent/Navigation/NavItem.jsx +63 -79
- package/src/components/Layout/Drawer/DrawerContent/Navigation/index.jsx +28 -28
- package/src/components/Layout/Drawer/DrawerContent/index.jsx +7 -7
- package/src/components/Layout/Drawer/DrawerHeader/DrawerHeaderStyled.jsx +13 -15
- package/src/components/Layout/Drawer/DrawerHeader/index.jsx +17 -22
- package/src/components/Layout/Drawer/HorizontalBar.jsx +17 -17
- package/src/components/Layout/Drawer/MiniDrawerStyled.jsx +27 -29
- package/src/components/Layout/Drawer/index.jsx +21 -24
- package/src/components/Layout/Footer.jsx +7 -12
- package/src/components/Layout/Header/AppBarStyled.jsx +26 -28
- package/src/components/Layout/Header/HeaderContent/MobileSection.jsx +27 -27
- package/src/components/Layout/Header/HeaderContent/Notification.jsx +34 -55
- package/src/components/Layout/Header/HeaderContent/NotificationItem.jsx +24 -36
- package/src/components/Layout/Header/HeaderContent/Profile.jsx +48 -73
- package/src/components/Layout/Header/HeaderContent/index.jsx +16 -18
- package/src/components/Layout/Header/index.jsx +25 -43
- package/src/components/Layout/index.jsx +36 -52
- package/src/components/Loadable.jsx +4 -4
- package/src/components/Loader.jsx +7 -7
- package/src/components/Logo.jsx +14 -14
- package/src/components/MainIcon.jsx +6 -6
- package/src/components/MenuPopover/MenuPopover.jsx +15 -15
- package/src/components/MenuPopover/getPosition.jsx +40 -40
- package/src/components/MenuPopover/index.jsx +3 -3
- package/src/components/MenuPopover/styles.jsx +20 -20
- package/src/components/Notification.jsx +7 -7
- package/src/components/ScrollTop.jsx +13 -13
- package/src/components/ScrollX.jsx +4 -4
- package/src/components/SmallIcon.jsx +6 -6
- package/src/components/ra-buttons/EditInDialogButton.jsx +39 -45
- package/src/components/ra-buttons/ImpersonateUserButton.jsx +20 -20
- package/src/components/ra-buttons/index.jsx +4 -4
- package/src/components/ra-fields/ActionsField.jsx +12 -12
- package/src/components/ra-fields/CoverField.jsx +20 -26
- package/src/components/ra-fields/DateAgoField.jsx +17 -20
- package/src/components/ra-fields/DateField.jsx +14 -14
- package/src/components/ra-fields/EmailField.jsx +14 -14
- package/src/components/ra-fields/FileField.jsx +23 -23
- package/src/components/ra-fields/FunctionField.jsx +5 -5
- package/src/components/ra-fields/ImageField.jsx +11 -11
- package/src/components/ra-fields/ReadonlyField.jsx +40 -42
- package/src/components/ra-fields/ReferenceManyField.jsx +21 -21
- package/src/components/ra-fields/SizeField.jsx +15 -15
- package/src/components/ra-fields/TextField.jsx +14 -14
- package/src/components/ra-fields/index.jsx +15 -15
- package/src/components/ra-forms/CardForm.jsx +34 -40
- package/src/components/ra-forms/LongForm/useFormRootPath.ts +8 -13
- package/src/components/ra-forms/SimpleForm.tsx +5 -1
- package/src/components/ra-forms/TabbedForm.jsx +10 -10
- package/src/components/ra-forms/Toolbar.jsx +15 -15
- package/src/components/ra-forms/index.jsx +9 -9
- package/src/components/ra-inputs/AutocompleteArrayInput.jsx +7 -7
- package/src/components/ra-inputs/AutocompleteInput.jsx +9 -9
- package/src/components/ra-inputs/BooleanInput.jsx +19 -19
- package/src/components/ra-inputs/DateInput.jsx +13 -13
- package/src/components/ra-inputs/FileInput.jsx +33 -33
- package/src/components/ra-inputs/ImageInput.jsx +19 -19
- package/src/components/ra-inputs/NumberInput.jsx +13 -13
- package/src/components/ra-inputs/RecordInput.jsx +39 -39
- package/src/components/ra-inputs/ReferenceArrayInput.jsx +10 -10
- package/src/components/ra-inputs/ReferenceInput.jsx +10 -10
- package/src/components/ra-inputs/ReferenceManyInput.jsx +13 -24
- package/src/components/ra-inputs/SearchInput.jsx +6 -6
- package/src/components/ra-inputs/SelectArrayInput.jsx +19 -19
- package/src/components/ra-inputs/TimeInput.jsx +21 -21
- package/src/components/ra-lists/Empty.jsx +32 -37
- package/src/components/ra-lists/List.jsx +9 -9
- package/src/components/ra-lists/NotificationList/NotificationList.jsx +14 -16
- package/src/components/ra-lists/NotificationList/button/MarkAsReadedButton.jsx +21 -25
- package/src/components/ra-lists/NotificationList/button/MarkAsUnreadedButton.jsx +19 -19
- package/src/components/ra-lists/NotificationList/button/index.jsx +2 -2
- package/src/components/ra-lists/NotificationList/field/NotificationField.jsx +20 -31
- package/src/components/ra-lists/NotificationList/field/index.jsx +1 -1
- package/src/components/ra-lists/NotificationList/index.jsx +2 -2
- package/src/components/ra-lists/index.jsx +5 -5
- package/src/components/third-party/SimpleBar.jsx +10 -10
- package/src/components/third-party/index.jsx +2 -2
- package/src/contexts/MenuConfigContext.jsx +35 -35
- package/src/contexts/MenuPropTypes.jsx +7 -7
- package/src/contexts/index.jsx +5 -5
- package/src/dev/index.jsx +2 -2
- package/src/dev/useCliErrorCatcher.jsx +32 -32
- package/src/hooks/index.jsx +8 -16
- package/src/hooks/useAppConfig.jsx +4 -4
- package/src/hooks/useBreadcrumbs.jsx +37 -37
- package/src/hooks/useLocalStorage.jsx +16 -16
- package/src/hooks/useMenu.jsx +83 -88
- package/src/hooks/useMenuConfig.jsx +4 -4
- package/src/hooks/useResourceTitle.jsx +13 -13
- package/src/hooks/useThemeConfig.jsx +4 -4
- package/src/i18n/createI18nProvider.jsx +7 -7
- package/src/i18n/index.jsx +4 -4
- package/src/i18n/useI18nCatcher.jsx +26 -26
- package/src/i18n/useI18nLanguages.jsx +12 -16
- package/src/i18n/useI18nProvider.jsx +3 -4
- package/src/themes/getColors.jsx +8 -8
- package/src/themes/getShadow.jsx +17 -17
- package/src/themes/index.jsx +29 -29
- package/src/themes/overrides/Accordion.jsx +9 -9
- package/src/themes/overrides/AccordionDetails.jsx +5 -5
- package/src/themes/overrides/AccordionSummary.jsx +11 -11
- package/src/themes/overrides/Alert.jsx +21 -21
- package/src/themes/overrides/AlertTitle.jsx +5 -5
- package/src/themes/overrides/Autocomplete.jsx +9 -9
- package/src/themes/overrides/Badge.jsx +12 -12
- package/src/themes/overrides/Button.jsx +62 -62
- package/src/themes/overrides/ButtonBase.jsx +4 -4
- package/src/themes/overrides/ButtonGroup.jsx +4 -4
- package/src/themes/overrides/CardContent.jsx +6 -6
- package/src/themes/overrides/Checkbox.jsx +31 -31
- package/src/themes/overrides/Chip.jsx +22 -22
- package/src/themes/overrides/Dialog.jsx +7 -7
- package/src/themes/overrides/DialogContentText.jsx +5 -5
- package/src/themes/overrides/DialogTitle.jsx +5 -5
- package/src/themes/overrides/Fab.jsx +21 -21
- package/src/themes/overrides/IconButton.jsx +8 -8
- package/src/themes/overrides/InputBase.jsx +3 -3
- package/src/themes/overrides/InputLabel.jsx +8 -8
- package/src/themes/overrides/LinearProgress.jsx +6 -6
- package/src/themes/overrides/Link.jsx +4 -4
- package/src/themes/overrides/ListItemButton.jsx +7 -7
- package/src/themes/overrides/ListItemIcon.jsx +5 -5
- package/src/themes/overrides/LoadingButton.jsx +6 -6
- package/src/themes/overrides/OutlinedInput.jsx +20 -21
- package/src/themes/overrides/Pagination.jsx +4 -4
- package/src/themes/overrides/PaginationItem.jsx +55 -55
- package/src/themes/overrides/Popover.jsx +5 -5
- package/src/themes/overrides/Radio.jsx +30 -30
- package/src/themes/overrides/Slider.jsx +20 -20
- package/src/themes/overrides/Switch.jsx +26 -26
- package/src/themes/overrides/Tab.jsx +7 -7
- package/src/themes/overrides/TableBody.jsx +11 -11
- package/src/themes/overrides/TableCell.jsx +12 -12
- package/src/themes/overrides/TableFooter.jsx +5 -5
- package/src/themes/overrides/TableHead.jsx +5 -5
- package/src/themes/overrides/TablePagination.jsx +6 -6
- package/src/themes/overrides/TableRow.jsx +10 -10
- package/src/themes/overrides/Tabs.jsx +5 -5
- package/src/themes/overrides/ToggleButton.jsx +7 -7
- package/src/themes/overrides/Tooltip.jsx +5 -5
- package/src/themes/overrides/TreeItem.jsx +7 -7
- package/src/themes/overrides/Typography.jsx +5 -5
- package/src/themes/overrides/index.jsx +47 -47
- package/src/themes/palette.jsx +22 -34
- package/src/themes/shadows.jsx +4 -4
- package/src/themes/theme/default.jsx +17 -17
- package/src/themes/theme/index.jsx +23 -23
- package/src/themes/theme/theme1.jsx +24 -46
- package/src/themes/theme/theme2.jsx +24 -46
- package/src/themes/theme/theme3.jsx +24 -46
- package/src/themes/theme/theme4.jsx +24 -46
- package/src/themes/theme/theme5.jsx +24 -46
- package/src/themes/theme/theme6.jsx +24 -46
- package/src/themes/theme/theme7.jsx +24 -46
- package/src/themes/theme/theme8.jsx +24 -46
- package/src/themes/typography.jsx +16 -16
- package/src/utils/{lang.js → lang.ts} +4 -4
- package/src/utils/time.ts +14 -0
- package/vite.config.js +2 -2
- package/src/utils/time.js +0 -13
- /package/src/utils/{index.js → index.ts} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import PropTypes from 'prop-types'
|
|
2
|
-
import { Typography } from '@mui/material'
|
|
1
|
+
import PropTypes from 'prop-types';
|
|
2
|
+
import { Typography } from '@mui/material';
|
|
3
3
|
|
|
4
4
|
const MainIcon = ({ title }) => (
|
|
5
5
|
<>
|
|
@@ -11,10 +11,10 @@ const MainIcon = ({ title }) => (
|
|
|
11
11
|
{title}
|
|
12
12
|
</Typography>
|
|
13
13
|
</>
|
|
14
|
-
)
|
|
14
|
+
);
|
|
15
15
|
|
|
16
16
|
MainIcon.propTypes = {
|
|
17
|
-
title: PropTypes.string.isRequired
|
|
18
|
-
}
|
|
17
|
+
title: PropTypes.string.isRequired
|
|
18
|
+
};
|
|
19
19
|
|
|
20
|
-
export default MainIcon
|
|
20
|
+
export default MainIcon;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Popover } from '@mui/material'
|
|
2
|
-
import PropTypes from 'prop-types'
|
|
3
|
-
import React from 'react'
|
|
4
|
-
import { StyledArrow } from './styles'
|
|
5
|
-
import getPosition from './getPosition'
|
|
1
|
+
import { Popover } from '@mui/material';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { StyledArrow } from './styles';
|
|
5
|
+
import getPosition from './getPosition';
|
|
6
6
|
|
|
7
7
|
const MenuPopover = ({ open, children, arrow = 'top-right', disabledArrow, sx, ...other }) => {
|
|
8
|
-
const { style, anchorOrigin, transformOrigin } = getPosition(arrow)
|
|
8
|
+
const { style, anchorOrigin, transformOrigin } = getPosition(arrow);
|
|
9
9
|
|
|
10
10
|
return (
|
|
11
11
|
<Popover
|
|
@@ -23,10 +23,10 @@ const MenuPopover = ({ open, children, arrow = 'top-right', disabledArrow, sx, .
|
|
|
23
23
|
px: 1,
|
|
24
24
|
typography: 'body2',
|
|
25
25
|
borderRadius: 0.75,
|
|
26
|
-
'& svg': { mr: 2, width: 20, height: 20, flexShrink: 0 }
|
|
26
|
+
'& svg': { mr: 2, width: 20, height: 20, flexShrink: 0 }
|
|
27
27
|
},
|
|
28
|
-
...sx
|
|
29
|
-
}
|
|
28
|
+
...sx
|
|
29
|
+
}
|
|
30
30
|
}}
|
|
31
31
|
{...other}
|
|
32
32
|
>
|
|
@@ -34,8 +34,8 @@ const MenuPopover = ({ open, children, arrow = 'top-right', disabledArrow, sx, .
|
|
|
34
34
|
|
|
35
35
|
{children}
|
|
36
36
|
</Popover>
|
|
37
|
-
)
|
|
38
|
-
}
|
|
37
|
+
);
|
|
38
|
+
};
|
|
39
39
|
|
|
40
40
|
MenuPopover.propTypes = {
|
|
41
41
|
sx: PropTypes.object,
|
|
@@ -54,8 +54,8 @@ MenuPopover.propTypes = {
|
|
|
54
54
|
'left-bottom',
|
|
55
55
|
'right-top',
|
|
56
56
|
'right-center',
|
|
57
|
-
'right-bottom'
|
|
58
|
-
])
|
|
59
|
-
}
|
|
57
|
+
'right-bottom'
|
|
58
|
+
])
|
|
59
|
+
};
|
|
60
60
|
|
|
61
|
-
export default MenuPopover
|
|
61
|
+
export default MenuPopover;
|
|
@@ -1,98 +1,98 @@
|
|
|
1
1
|
export default function getPosition(arrow) {
|
|
2
|
-
let props
|
|
2
|
+
let props;
|
|
3
3
|
|
|
4
4
|
switch (arrow) {
|
|
5
5
|
case 'top-left':
|
|
6
6
|
props = {
|
|
7
7
|
style: { ml: -0.75 },
|
|
8
8
|
anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
|
|
9
|
-
transformOrigin: { vertical: 'top', horizontal: 'left' }
|
|
10
|
-
}
|
|
11
|
-
break
|
|
9
|
+
transformOrigin: { vertical: 'top', horizontal: 'left' }
|
|
10
|
+
};
|
|
11
|
+
break;
|
|
12
12
|
case 'top-center':
|
|
13
13
|
props = {
|
|
14
14
|
style: {},
|
|
15
15
|
anchorOrigin: { vertical: 'bottom', horizontal: 'center' },
|
|
16
|
-
transformOrigin: { vertical: 'top', horizontal: 'center' }
|
|
17
|
-
}
|
|
18
|
-
break
|
|
16
|
+
transformOrigin: { vertical: 'top', horizontal: 'center' }
|
|
17
|
+
};
|
|
18
|
+
break;
|
|
19
19
|
case 'top-right':
|
|
20
20
|
props = {
|
|
21
21
|
style: { ml: 0.75 },
|
|
22
22
|
anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
|
|
23
|
-
transformOrigin: { vertical: 'top', horizontal: 'right' }
|
|
24
|
-
}
|
|
25
|
-
break
|
|
23
|
+
transformOrigin: { vertical: 'top', horizontal: 'right' }
|
|
24
|
+
};
|
|
25
|
+
break;
|
|
26
26
|
case 'bottom-left':
|
|
27
27
|
props = {
|
|
28
28
|
style: { ml: -0.75 },
|
|
29
29
|
anchorOrigin: { vertical: 'top', horizontal: 'left' },
|
|
30
|
-
transformOrigin: { vertical: 'bottom', horizontal: 'left' }
|
|
31
|
-
}
|
|
32
|
-
break
|
|
30
|
+
transformOrigin: { vertical: 'bottom', horizontal: 'left' }
|
|
31
|
+
};
|
|
32
|
+
break;
|
|
33
33
|
case 'bottom-center':
|
|
34
34
|
props = {
|
|
35
35
|
style: {},
|
|
36
36
|
anchorOrigin: { vertical: 'top', horizontal: 'center' },
|
|
37
|
-
transformOrigin: { vertical: 'bottom', horizontal: 'center' }
|
|
38
|
-
}
|
|
39
|
-
break
|
|
37
|
+
transformOrigin: { vertical: 'bottom', horizontal: 'center' }
|
|
38
|
+
};
|
|
39
|
+
break;
|
|
40
40
|
case 'bottom-right':
|
|
41
41
|
props = {
|
|
42
42
|
style: { ml: 0.75 },
|
|
43
43
|
anchorOrigin: { vertical: 'top', horizontal: 'right' },
|
|
44
|
-
transformOrigin: { vertical: 'bottom', horizontal: 'right' }
|
|
45
|
-
}
|
|
46
|
-
break
|
|
44
|
+
transformOrigin: { vertical: 'bottom', horizontal: 'right' }
|
|
45
|
+
};
|
|
46
|
+
break;
|
|
47
47
|
case 'left-top':
|
|
48
48
|
props = {
|
|
49
49
|
style: { mt: -0.75 },
|
|
50
50
|
anchorOrigin: { vertical: 'top', horizontal: 'right' },
|
|
51
|
-
transformOrigin: { vertical: 'top', horizontal: 'left' }
|
|
52
|
-
}
|
|
53
|
-
break
|
|
51
|
+
transformOrigin: { vertical: 'top', horizontal: 'left' }
|
|
52
|
+
};
|
|
53
|
+
break;
|
|
54
54
|
case 'left-center':
|
|
55
55
|
props = {
|
|
56
56
|
anchorOrigin: { vertical: 'center', horizontal: 'right' },
|
|
57
|
-
transformOrigin: { vertical: 'center', horizontal: 'left' }
|
|
58
|
-
}
|
|
59
|
-
break
|
|
57
|
+
transformOrigin: { vertical: 'center', horizontal: 'left' }
|
|
58
|
+
};
|
|
59
|
+
break;
|
|
60
60
|
case 'left-bottom':
|
|
61
61
|
props = {
|
|
62
62
|
style: { mt: 0.75 },
|
|
63
63
|
anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
|
|
64
|
-
transformOrigin: { vertical: 'bottom', horizontal: 'left' }
|
|
65
|
-
}
|
|
66
|
-
break
|
|
64
|
+
transformOrigin: { vertical: 'bottom', horizontal: 'left' }
|
|
65
|
+
};
|
|
66
|
+
break;
|
|
67
67
|
case 'right-top':
|
|
68
68
|
props = {
|
|
69
69
|
style: { mt: -0.75 },
|
|
70
70
|
anchorOrigin: { vertical: 'top', horizontal: 'left' },
|
|
71
|
-
transformOrigin: { vertical: 'top', horizontal: 'right' }
|
|
72
|
-
}
|
|
73
|
-
break
|
|
71
|
+
transformOrigin: { vertical: 'top', horizontal: 'right' }
|
|
72
|
+
};
|
|
73
|
+
break;
|
|
74
74
|
case 'right-center':
|
|
75
75
|
props = {
|
|
76
76
|
anchorOrigin: { vertical: 'center', horizontal: 'left' },
|
|
77
|
-
transformOrigin: { vertical: 'center', horizontal: 'right' }
|
|
78
|
-
}
|
|
79
|
-
break
|
|
77
|
+
transformOrigin: { vertical: 'center', horizontal: 'right' }
|
|
78
|
+
};
|
|
79
|
+
break;
|
|
80
80
|
case 'right-bottom':
|
|
81
81
|
props = {
|
|
82
82
|
style: { mt: 0.75 },
|
|
83
83
|
anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
|
|
84
|
-
transformOrigin: { vertical: 'bottom', horizontal: 'right' }
|
|
85
|
-
}
|
|
86
|
-
break
|
|
84
|
+
transformOrigin: { vertical: 'bottom', horizontal: 'right' }
|
|
85
|
+
};
|
|
86
|
+
break;
|
|
87
87
|
|
|
88
88
|
// top-right
|
|
89
89
|
default:
|
|
90
90
|
props = {
|
|
91
91
|
style: { ml: 0.75 },
|
|
92
92
|
anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
|
|
93
|
-
transformOrigin: { vertical: 'top', horizontal: 'right' }
|
|
94
|
-
}
|
|
93
|
+
transformOrigin: { vertical: 'top', horizontal: 'right' }
|
|
94
|
+
};
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
return props
|
|
97
|
+
return props;
|
|
98
98
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { default as getPosition } from './getPosition'
|
|
2
|
-
export { default as MenuPopover } from './MenuPopover'
|
|
3
|
-
export { StyledArrow } from './styles'
|
|
1
|
+
export { default as getPosition } from './getPosition';
|
|
2
|
+
export { default as MenuPopover } from './MenuPopover';
|
|
3
|
+
export { StyledArrow } from './styles';
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { alpha, styled } from '@mui/material/styles'
|
|
1
|
+
import { alpha, styled } from '@mui/material/styles';
|
|
2
2
|
|
|
3
3
|
export const StyledArrow = styled('span')(({ arrow, theme }) => {
|
|
4
|
-
const SIZE = 12
|
|
4
|
+
const SIZE = 12;
|
|
5
5
|
|
|
6
|
-
const POSITION = -(SIZE / 2)
|
|
6
|
+
const POSITION = -(SIZE / 2);
|
|
7
7
|
|
|
8
|
-
const borderStyle = `solid 1px ${alpha(theme.palette.grey[500], 0.12)}
|
|
8
|
+
const borderStyle = `solid 1px ${alpha(theme.palette.grey[500], 0.12)}`;
|
|
9
9
|
|
|
10
10
|
const topStyle = {
|
|
11
11
|
borderRadius: '0 0 3px 0',
|
|
12
12
|
top: POSITION,
|
|
13
13
|
borderBottom: borderStyle,
|
|
14
|
-
borderRight: borderStyle
|
|
15
|
-
}
|
|
14
|
+
borderRight: borderStyle
|
|
15
|
+
};
|
|
16
16
|
|
|
17
17
|
const bottomStyle = {
|
|
18
18
|
borderRadius: '3px 0 0 0',
|
|
19
19
|
bottom: POSITION,
|
|
20
20
|
borderTop: borderStyle,
|
|
21
|
-
borderLeft: borderStyle
|
|
22
|
-
}
|
|
21
|
+
borderLeft: borderStyle
|
|
22
|
+
};
|
|
23
23
|
|
|
24
24
|
const leftStyle = {
|
|
25
25
|
borderRadius: '0 3px 0 0',
|
|
26
26
|
left: POSITION,
|
|
27
27
|
borderTop: borderStyle,
|
|
28
|
-
borderRight: borderStyle
|
|
29
|
-
}
|
|
28
|
+
borderRight: borderStyle
|
|
29
|
+
};
|
|
30
30
|
|
|
31
31
|
const rightStyle = {
|
|
32
32
|
borderRadius: '0 0 0 3px',
|
|
33
33
|
right: POSITION,
|
|
34
34
|
borderBottom: borderStyle,
|
|
35
|
-
borderLeft: borderStyle
|
|
36
|
-
}
|
|
35
|
+
borderLeft: borderStyle
|
|
36
|
+
};
|
|
37
37
|
|
|
38
38
|
return {
|
|
39
39
|
display: 'none',
|
|
@@ -45,7 +45,7 @@ export const StyledArrow = styled('span')(({ arrow, theme }) => {
|
|
|
45
45
|
display: 'block',
|
|
46
46
|
position: 'absolute',
|
|
47
47
|
transform: 'rotate(-135deg)',
|
|
48
|
-
background: theme.palette.background.paper
|
|
48
|
+
background: theme.palette.background.paper
|
|
49
49
|
},
|
|
50
50
|
// Top
|
|
51
51
|
...(arrow === 'top-left' && { ...topStyle, left: 20 }),
|
|
@@ -53,7 +53,7 @@ export const StyledArrow = styled('span')(({ arrow, theme }) => {
|
|
|
53
53
|
...topStyle,
|
|
54
54
|
left: 0,
|
|
55
55
|
right: 0,
|
|
56
|
-
margin: 'auto'
|
|
56
|
+
margin: 'auto'
|
|
57
57
|
}),
|
|
58
58
|
...(arrow === 'top-right' && { ...topStyle, right: 20 }),
|
|
59
59
|
// Bottom
|
|
@@ -62,7 +62,7 @@ export const StyledArrow = styled('span')(({ arrow, theme }) => {
|
|
|
62
62
|
...bottomStyle,
|
|
63
63
|
left: 0,
|
|
64
64
|
right: 0,
|
|
65
|
-
margin: 'auto'
|
|
65
|
+
margin: 'auto'
|
|
66
66
|
}),
|
|
67
67
|
...(arrow === 'bottom-right' && { ...bottomStyle, right: 20 }),
|
|
68
68
|
// Left
|
|
@@ -71,7 +71,7 @@ export const StyledArrow = styled('span')(({ arrow, theme }) => {
|
|
|
71
71
|
...leftStyle,
|
|
72
72
|
top: 0,
|
|
73
73
|
bottom: 0,
|
|
74
|
-
margin: 'auto'
|
|
74
|
+
margin: 'auto'
|
|
75
75
|
}),
|
|
76
76
|
...(arrow === 'left-bottom' && { ...leftStyle, bottom: 20 }),
|
|
77
77
|
// Right
|
|
@@ -80,8 +80,8 @@ export const StyledArrow = styled('span')(({ arrow, theme }) => {
|
|
|
80
80
|
...rightStyle,
|
|
81
81
|
top: 0,
|
|
82
82
|
bottom: 0,
|
|
83
|
-
margin: 'auto'
|
|
83
|
+
margin: 'auto'
|
|
84
84
|
}),
|
|
85
|
-
...(arrow === 'right-bottom' && { ...rightStyle, bottom: 20 })
|
|
86
|
-
}
|
|
87
|
-
})
|
|
85
|
+
...(arrow === 'right-bottom' && { ...rightStyle, bottom: 20 })
|
|
86
|
+
};
|
|
87
|
+
});
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { Notification as RaNotification } from 'react-admin'
|
|
2
|
-
import { styled } from '@mui/material/styles'
|
|
1
|
+
import { Notification as RaNotification } from 'react-admin';
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
3
|
|
|
4
4
|
const ApplicaStyledNotification = styled(
|
|
5
5
|
RaNotification,
|
|
6
|
-
{}
|
|
6
|
+
{}
|
|
7
7
|
)(({ theme }) => ({
|
|
8
8
|
'& *': {
|
|
9
|
-
fontSize: theme.typography.body1.fontSize
|
|
10
|
-
}
|
|
11
|
-
}))
|
|
9
|
+
fontSize: theme.typography.body1.fontSize
|
|
10
|
+
}
|
|
11
|
+
}));
|
|
12
12
|
|
|
13
|
-
export default ApplicaStyledNotification
|
|
13
|
+
export default ApplicaStyledNotification;
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import PropTypes from 'prop-types'
|
|
2
|
-
import { useEffect } from 'react'
|
|
3
|
-
import { useLocation } from 'react-router-dom'
|
|
1
|
+
import PropTypes from 'prop-types';
|
|
2
|
+
import { useEffect } from 'react';
|
|
3
|
+
import { useLocation } from 'react-router-dom';
|
|
4
4
|
|
|
5
5
|
const ScrollTop = ({ children }) => {
|
|
6
|
-
const location = useLocation()
|
|
7
|
-
const { pathname } = location
|
|
6
|
+
const location = useLocation();
|
|
7
|
+
const { pathname } = location;
|
|
8
8
|
|
|
9
9
|
useEffect(() => {
|
|
10
10
|
window.scrollTo({
|
|
11
11
|
top: 0,
|
|
12
12
|
left: 0,
|
|
13
|
-
behavior: 'smooth'
|
|
14
|
-
})
|
|
15
|
-
}, [pathname])
|
|
13
|
+
behavior: 'smooth'
|
|
14
|
+
});
|
|
15
|
+
}, [pathname]);
|
|
16
16
|
|
|
17
|
-
return children || null
|
|
18
|
-
}
|
|
17
|
+
return children || null;
|
|
18
|
+
};
|
|
19
19
|
|
|
20
20
|
ScrollTop.propTypes = {
|
|
21
|
-
children: PropTypes.node
|
|
22
|
-
}
|
|
21
|
+
children: PropTypes.node
|
|
22
|
+
};
|
|
23
23
|
|
|
24
|
-
export default ScrollTop
|
|
24
|
+
export default ScrollTop;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// material-ui
|
|
2
|
-
import { styled } from '@mui/material/styles'
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
3
|
|
|
4
4
|
const ScrollX = styled('div')({
|
|
5
5
|
width: '100%',
|
|
6
6
|
overflowX: 'auto',
|
|
7
|
-
display: 'block'
|
|
8
|
-
})
|
|
7
|
+
display: 'block'
|
|
8
|
+
});
|
|
9
9
|
|
|
10
|
-
export default ScrollX
|
|
10
|
+
export default ScrollX;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import PropTypes from 'prop-types'
|
|
2
|
-
import { Typography } from '@mui/material'
|
|
1
|
+
import PropTypes from 'prop-types';
|
|
2
|
+
import { Typography } from '@mui/material';
|
|
3
3
|
|
|
4
4
|
const SmallIcon = ({ title }) => (
|
|
5
5
|
<Typography variant="h2" sx={{ style: 'bold' }}>
|
|
6
6
|
{title?.substr(0, 1).toUpperCase()}
|
|
7
7
|
</Typography>
|
|
8
|
-
)
|
|
8
|
+
);
|
|
9
9
|
|
|
10
10
|
SmallIcon.propTypes = {
|
|
11
|
-
title: PropTypes.string.isRequired
|
|
12
|
-
}
|
|
11
|
+
title: PropTypes.string.isRequired
|
|
12
|
+
};
|
|
13
13
|
|
|
14
|
-
export default SmallIcon
|
|
14
|
+
export default SmallIcon;
|
|
@@ -7,40 +7,40 @@ import {
|
|
|
7
7
|
useGetOne,
|
|
8
8
|
useNotify,
|
|
9
9
|
useRecordContext,
|
|
10
|
-
useResourceContext
|
|
11
|
-
} from 'react-admin'
|
|
12
|
-
import React, { useCallback, useState } from 'react'
|
|
10
|
+
useResourceContext
|
|
11
|
+
} from 'react-admin';
|
|
12
|
+
import React, { useCallback, useState } from 'react';
|
|
13
13
|
|
|
14
|
-
import { Dialog } from '@mui/material'
|
|
15
|
-
import { Edit } from '@mui/icons-material'
|
|
16
|
-
import PropTypes from 'prop-types'
|
|
17
|
-
import { Toolbar } from '../ra-forms'
|
|
18
|
-
import { useAppConfig } from '../../hooks'
|
|
14
|
+
import { Dialog } from '@mui/material';
|
|
15
|
+
import { Edit } from '@mui/icons-material';
|
|
16
|
+
import PropTypes from 'prop-types';
|
|
17
|
+
import { Toolbar } from '../ra-forms';
|
|
18
|
+
import { useAppConfig } from '../../hooks';
|
|
19
19
|
|
|
20
20
|
const EditInDialogContent = ({ onClose, children }) => {
|
|
21
|
-
const notify = useNotify()
|
|
22
|
-
const record = useRecordContext()
|
|
23
|
-
const resource = useResourceContext()
|
|
24
|
-
const { id } = record
|
|
25
|
-
const { isLoading, data } = useGetOne(resource, { id })
|
|
21
|
+
const notify = useNotify();
|
|
22
|
+
const record = useRecordContext();
|
|
23
|
+
const resource = useResourceContext();
|
|
24
|
+
const { id } = record;
|
|
25
|
+
const { isLoading, data } = useGetOne(resource, { id });
|
|
26
26
|
|
|
27
27
|
const handleSuccess = useCallback(() => {
|
|
28
28
|
notify('ra.notification.updated', {
|
|
29
29
|
type: 'info',
|
|
30
30
|
messageArgs: {
|
|
31
|
-
smart_count: 1
|
|
32
|
-
}
|
|
33
|
-
})
|
|
34
|
-
onClose()
|
|
35
|
-
}, [onClose, notify])
|
|
31
|
+
smart_count: 1
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
onClose();
|
|
35
|
+
}, [onClose, notify]);
|
|
36
36
|
const { save, saving } = useEditController({
|
|
37
37
|
resource,
|
|
38
38
|
id,
|
|
39
39
|
mutationMode: 'pessimistic',
|
|
40
40
|
mutationOptions: {
|
|
41
|
-
onSuccess: handleSuccess
|
|
42
|
-
}
|
|
43
|
-
})
|
|
41
|
+
onSuccess: handleSuccess
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
44
|
|
|
45
45
|
return (
|
|
46
46
|
<EditContextProvider
|
|
@@ -48,7 +48,7 @@ const EditInDialogContent = ({ onClose, children }) => {
|
|
|
48
48
|
record: data,
|
|
49
49
|
isLoading,
|
|
50
50
|
save: save,
|
|
51
|
-
saving: saving
|
|
51
|
+
saving: saving
|
|
52
52
|
}}
|
|
53
53
|
>
|
|
54
54
|
{React.cloneElement(children, {
|
|
@@ -57,29 +57,23 @@ const EditInDialogContent = ({ onClose, children }) => {
|
|
|
57
57
|
<Button variant="text" size="medium" label="ra.action.cancel" onClick={onClose} />
|
|
58
58
|
<SaveButton />
|
|
59
59
|
</Toolbar>
|
|
60
|
-
)
|
|
60
|
+
)
|
|
61
61
|
})}
|
|
62
62
|
</EditContextProvider>
|
|
63
|
-
)
|
|
64
|
-
}
|
|
63
|
+
);
|
|
64
|
+
};
|
|
65
65
|
|
|
66
66
|
EditInDialogContent.propTypes = {
|
|
67
67
|
children: PropTypes.node,
|
|
68
|
-
onClose: PropTypes.func
|
|
69
|
-
}
|
|
68
|
+
onClose: PropTypes.func
|
|
69
|
+
};
|
|
70
70
|
|
|
71
71
|
const EditInDialogButton = ({ fullWidth, maxWidth, label, ...props }) => {
|
|
72
|
-
const [open, setOpen] = useState(false)
|
|
73
|
-
const { openDialog, closeDialog } = useAppConfig()
|
|
74
|
-
const resource = useResourceContext()
|
|
75
|
-
const handleOpen = useCallback(
|
|
76
|
-
|
|
77
|
-
[openDialog, resource],
|
|
78
|
-
)
|
|
79
|
-
const handleClose = useCallback(
|
|
80
|
-
() => closeDialog(resource, () => setOpen(false)),
|
|
81
|
-
[closeDialog, resource],
|
|
82
|
-
)
|
|
72
|
+
const [open, setOpen] = useState(false);
|
|
73
|
+
const { openDialog, closeDialog } = useAppConfig();
|
|
74
|
+
const resource = useResourceContext();
|
|
75
|
+
const handleOpen = useCallback(() => openDialog(resource, () => setOpen(true)), [openDialog, resource]);
|
|
76
|
+
const handleClose = useCallback(() => closeDialog(resource, () => setOpen(false)), [closeDialog, resource]);
|
|
83
77
|
|
|
84
78
|
return (
|
|
85
79
|
<>
|
|
@@ -90,19 +84,19 @@ const EditInDialogButton = ({ fullWidth, maxWidth, label, ...props }) => {
|
|
|
90
84
|
<EditInDialogContent {...props} onClose={handleClose} />
|
|
91
85
|
</Dialog>
|
|
92
86
|
</>
|
|
93
|
-
)
|
|
94
|
-
}
|
|
87
|
+
);
|
|
88
|
+
};
|
|
95
89
|
|
|
96
90
|
EditInDialogButton.defaultProps = {
|
|
97
91
|
fullWidth: true,
|
|
98
92
|
maxWidth: 'md',
|
|
99
|
-
label: 'ra.action.edit'
|
|
100
|
-
}
|
|
93
|
+
label: 'ra.action.edit'
|
|
94
|
+
};
|
|
101
95
|
|
|
102
96
|
EditInDialogButton.propTypes = {
|
|
103
97
|
fullWidth: PropTypes.bool,
|
|
104
98
|
maxWidth: PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]),
|
|
105
|
-
label: PropTypes.string
|
|
106
|
-
}
|
|
99
|
+
label: PropTypes.string
|
|
100
|
+
};
|
|
107
101
|
|
|
108
|
-
export default EditInDialogButton
|
|
102
|
+
export default EditInDialogButton;
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { Button, useAuthProvider, useRecordContext } from 'react-admin'
|
|
2
|
-
import React, { useCallback, useState } from 'react'
|
|
1
|
+
import { Button, useAuthProvider, useRecordContext } from 'react-admin';
|
|
2
|
+
import React, { useCallback, useState } from 'react';
|
|
3
3
|
|
|
4
|
-
import PropTypes from 'prop-types'
|
|
5
|
-
import { VpnKey } from '@mui/icons-material'
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
5
|
+
import { VpnKey } from '@mui/icons-material';
|
|
6
6
|
|
|
7
7
|
const ImpersonateUserButton = ({ label = 'ra.auth.sign_in', ...props }) => {
|
|
8
|
-
const record = useRecordContext()
|
|
9
|
-
const [loading, setLoading] = useState(false)
|
|
10
|
-
const authProvider = useAuthProvider()
|
|
8
|
+
const record = useRecordContext();
|
|
9
|
+
const [loading, setLoading] = useState(false);
|
|
10
|
+
const authProvider = useAuthProvider();
|
|
11
11
|
const handleClick = useCallback(
|
|
12
12
|
(e) => {
|
|
13
|
-
e.stopPropagation()
|
|
14
|
-
e.preventDefault()
|
|
15
|
-
setLoading(true)
|
|
13
|
+
e.stopPropagation();
|
|
14
|
+
e.preventDefault();
|
|
15
|
+
setLoading(true);
|
|
16
16
|
authProvider.impersonate(record?.id).then(() => {
|
|
17
|
-
setLoading(false)
|
|
18
|
-
document.location.href = '/'
|
|
19
|
-
})
|
|
17
|
+
setLoading(false);
|
|
18
|
+
document.location.href = '/';
|
|
19
|
+
});
|
|
20
20
|
},
|
|
21
|
-
[authProvider, record?.id]
|
|
22
|
-
)
|
|
21
|
+
[authProvider, record?.id]
|
|
22
|
+
);
|
|
23
23
|
return (
|
|
24
24
|
<Button
|
|
25
25
|
disabled={loading || authProvider.impersonate === undefined}
|
|
@@ -31,11 +31,11 @@ const ImpersonateUserButton = ({ label = 'ra.auth.sign_in', ...props }) => {
|
|
|
31
31
|
>
|
|
32
32
|
<VpnKey />
|
|
33
33
|
</Button>
|
|
34
|
-
)
|
|
35
|
-
}
|
|
34
|
+
);
|
|
35
|
+
};
|
|
36
36
|
|
|
37
37
|
ImpersonateUserButton.propTypes = {
|
|
38
|
-
label: PropTypes.string
|
|
39
|
-
}
|
|
38
|
+
label: PropTypes.string
|
|
39
|
+
};
|
|
40
40
|
|
|
41
|
-
export default ImpersonateUserButton
|
|
41
|
+
export default ImpersonateUserButton;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import CreateInDialogButton from './CreateInDialogButton'
|
|
2
|
-
import EditInDialogButton from './EditInDialogButton'
|
|
3
|
-
import ImpersonateUserButton from './ImpersonateUserButton'
|
|
4
|
-
export { CreateInDialogButton, EditInDialogButton, ImpersonateUserButton }
|
|
1
|
+
import CreateInDialogButton from './CreateInDialogButton';
|
|
2
|
+
import EditInDialogButton from './EditInDialogButton';
|
|
3
|
+
import ImpersonateUserButton from './ImpersonateUserButton';
|
|
4
|
+
export { CreateInDialogButton, EditInDialogButton, ImpersonateUserButton };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { CloneButton, DeleteWithConfirmButton, EditButton } from 'react-admin'
|
|
1
|
+
import { CloneButton, DeleteWithConfirmButton, EditButton } from 'react-admin';
|
|
2
2
|
|
|
3
|
-
import ActionsMenu from '../ActionsMenu'
|
|
4
|
-
import PropTypes from 'prop-types'
|
|
5
|
-
import React from 'react'
|
|
3
|
+
import ActionsMenu from '../ActionsMenu';
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
5
|
+
import React from 'react';
|
|
6
6
|
|
|
7
7
|
const ActionsField = ({ canEdit, canDelete, canClone }) => {
|
|
8
8
|
if (!canEdit && !canDelete && !canClone) {
|
|
9
|
-
return null
|
|
9
|
+
return null;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
return (
|
|
@@ -15,19 +15,19 @@ const ActionsField = ({ canEdit, canDelete, canClone }) => {
|
|
|
15
15
|
{canDelete && <DeleteWithConfirmButton />}
|
|
16
16
|
{canClone && <CloneButton />}
|
|
17
17
|
</ActionsMenu>
|
|
18
|
-
)
|
|
19
|
-
}
|
|
18
|
+
);
|
|
19
|
+
};
|
|
20
20
|
|
|
21
21
|
ActionsField.defaultProps = {
|
|
22
22
|
canEdit: true,
|
|
23
23
|
canDelete: true,
|
|
24
|
-
canClone: false
|
|
25
|
-
}
|
|
24
|
+
canClone: false
|
|
25
|
+
};
|
|
26
26
|
|
|
27
27
|
ActionsField.propTypes = {
|
|
28
28
|
canEdit: PropTypes.bool,
|
|
29
29
|
canDelete: PropTypes.bool,
|
|
30
|
-
canClone: PropTypes.bool
|
|
31
|
-
}
|
|
30
|
+
canClone: PropTypes.bool
|
|
31
|
+
};
|
|
32
32
|
|
|
33
|
-
export default ActionsField
|
|
33
|
+
export default ActionsField;
|