@campxdev/shared 1.4.9 → 1.4.11
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/antd.customize.less +73 -73
- package/exports.ts +18 -18
- package/package.json +86 -86
- package/src/assets/fonts/avenir/index.ts +2 -2
- package/src/assets/fonts/poppins/index.ts +7 -7
- package/src/assets/images/index.ts +17 -17
- package/src/assets/images/unauth.svg +92 -92
- package/src/components/ActionButton.tsx +20 -20
- package/src/components/Attachment.tsx +26 -26
- package/src/components/AutocompleteSearch/AutocompleteSearch.tsx +57 -57
- package/src/components/AutocompleteSearch/index.tsx +1 -1
- package/src/components/Breadcrumbs.tsx +72 -72
- package/src/components/Card.tsx +98 -98
- package/src/components/CardsGrid.tsx +28 -28
- package/src/components/ChangePassword.tsx +123 -123
- package/src/components/Chips.tsx +81 -81
- package/src/components/Detail.tsx +15 -15
- package/src/components/DetailsGrid.tsx +52 -52
- package/src/components/DividerHeading.tsx +41 -41
- package/src/components/DrawerWrapper/DialogWrapper.tsx +67 -67
- package/src/components/DrawerWrapper/DrawerTemplate.tsx +53 -53
- package/src/components/DrawerWrapper/DrawerWrapper.tsx +53 -53
- package/src/components/DropDownButton/DropDownButton.tsx +177 -177
- package/src/components/DropDownButton/index.tsx +1 -1
- package/src/components/DropDownButton/styles.tsx +56 -56
- package/src/components/ErrorBoundary/ErrorBoundary.tsx +28 -28
- package/src/components/ErrorBoundary/ErrorFallback.tsx +236 -236
- package/src/components/ErrorBoundary/GlobalNetworkLoadingIndicator.tsx +13 -13
- package/src/components/ErrorBoundary/index.tsx +1 -1
- package/src/components/ErrorBox.tsx +42 -42
- package/src/components/FloatingContainer.tsx +33 -33
- package/src/components/Form/Form.tsx +156 -156
- package/src/components/Form/RenderForm.tsx +188 -188
- package/src/components/FullCalendar/Actions.tsx +162 -162
- package/src/components/FullCalendar/FullCalendarWrapper.tsx +54 -54
- package/src/components/FullScreenLoader.tsx +19 -19
- package/src/components/HookForm/AutoCompleteSearch.tsx +113 -113
- package/src/components/HookForm/DatePicker.tsx +40 -40
- package/src/components/HookForm/DateTimePicker.tsx +47 -47
- package/src/components/HookForm/FormLabel.tsx +14 -14
- package/src/components/HookForm/MultiCheckbox.tsx +69 -69
- package/src/components/HookForm/MultiSelect.tsx +50 -50
- package/src/components/HookForm/RadioGroup.tsx +45 -45
- package/src/components/HookForm/SingleCheckbox.tsx +34 -34
- package/src/components/HookForm/SingleSelect.tsx +46 -46
- package/src/components/HookForm/TextField.tsx +40 -40
- package/src/components/HookForm/TimePicker.tsx +40 -40
- package/src/components/HookForm/index.ts +23 -23
- package/src/components/IconButtons/IconButtons.tsx +137 -137
- package/src/components/IconButtons/Icons.tsx +268 -268
- package/src/components/IconButtons/assets/edit.svg +4 -4
- package/src/components/IconButtons/assets/eye.svg +6 -6
- package/src/components/IconButtons/assets/trash.svg +7 -7
- package/src/components/IconButtons/index.tsx +8 -8
- package/src/components/IconLabel.tsx +37 -37
- package/src/components/Image/Image.tsx +43 -43
- package/src/components/Image/index.tsx +1 -1
- package/src/components/ImageUpload.tsx +98 -98
- package/src/components/Input/AsyncSearchSelect/AsyncSearchSelect.tsx +216 -216
- package/src/components/Input/AsyncSearchSelect/index.tsx +1 -1
- package/src/components/Input/AsyncSearchSelect/styles.tsx +105 -105
- package/src/components/Input/AutoCompleteSearch.tsx +121 -121
- package/src/components/Input/DatePicker.tsx +69 -69
- package/src/components/Input/DateRangePicker.tsx +131 -131
- package/src/components/Input/DateTimePicker.tsx +75 -75
- package/src/components/Input/FormLabel.tsx +21 -21
- package/src/components/Input/MultiCheckbox.tsx +64 -64
- package/src/components/Input/MultiSelect.tsx +148 -148
- package/src/components/Input/RadioGroup.tsx +104 -104
- package/src/components/Input/SingleCheckbox.tsx +78 -78
- package/src/components/Input/SingleSelect.tsx +104 -104
- package/src/components/Input/TextField.tsx +46 -46
- package/src/components/Input/TimePicker.tsx +70 -70
- package/src/components/Input/index.ts +26 -26
- package/src/components/Input/types.ts +3 -3
- package/src/components/JsonPreview.tsx +7 -7
- package/src/components/LabelValue.tsx +21 -21
- package/src/components/Layout/ChangePassword.tsx +49 -49
- package/src/components/Layout/Header/AppHeader.tsx +102 -102
- package/src/components/Layout/Header/AppsMenu.tsx +98 -98
- package/src/components/Layout/Header/CogWheelMenu.tsx +33 -33
- package/src/components/Layout/Header/Notification.tsx +13 -13
- package/src/components/Layout/Header/UserBox.tsx +81 -81
- package/src/components/Layout/Header/applications.ts +91 -91
- package/src/components/Layout/Header/assets/campx_square_small.svg +9 -9
- package/src/components/Layout/Header/assets/commutex.svg +14 -14
- package/src/components/Layout/Header/assets/commutexSmall.svg +11 -11
- package/src/components/Layout/Header/assets/enroll.svg +14 -14
- package/src/components/Layout/Header/assets/enrollx.svg +14 -14
- package/src/components/Layout/Header/assets/exams_small.svg +12 -12
- package/src/components/Layout/Header/assets/examsx.svg +14 -14
- package/src/components/Layout/Header/assets/hostel_small.svg +13 -13
- package/src/components/Layout/Header/assets/hostelx.svg +13 -13
- package/src/components/Layout/Header/assets/index.ts +33 -33
- package/src/components/Layout/Header/assets/libraryx.svg +12 -12
- package/src/components/Layout/Header/assets/pay_small.svg +16 -16
- package/src/components/Layout/Header/assets/payx.svg +19 -19
- package/src/components/Layout/Header/assets/people_small.svg +9 -9
- package/src/components/Layout/Header/assets/peoplex.svg +12 -12
- package/src/components/Layout/Header/assets/squarex.svg +12 -12
- package/src/components/Layout/Header/icons.tsx +57 -57
- package/src/components/Layout/Header/index.tsx +1 -1
- package/src/components/Layout/Header/styles.tsx +124 -124
- package/src/components/Layout/{Header → Tickets}/HelpWidget/HelpWidget.tsx +273 -273
- package/src/components/Layout/{Header → Tickets}/HelpWidget/styles.tsx +94 -94
- package/src/components/Layout/Tickets/MyTickets.tsx +72 -72
- package/src/components/Layout/Tickets/TicketDetails.tsx +65 -65
- package/src/components/Layout/Tickets/TimeLine.tsx +64 -64
- package/src/components/Layout/Tickets/index.tsx +1 -1
- package/src/components/Layout/Tickets/services.ts +11 -11
- package/src/components/Layout/Tickets/styles.tsx +136 -136
- package/src/components/LayoutWrapper.tsx +25 -25
- package/src/components/LinearProgress.tsx +19 -19
- package/src/components/ListItemButton.tsx +95 -95
- package/src/components/LoginForm.tsx +80 -80
- package/src/components/MediaRow/MediaRow.tsx +69 -69
- package/src/components/MediaRow/index.tsx +1 -1
- package/src/components/ModalButtons/DialogButton.tsx +93 -93
- package/src/components/ModalButtons/DrawerButton.tsx +85 -85
- package/src/components/ModalButtons/index.tsx +4 -4
- package/src/components/NoDataIllustration.tsx +32 -32
- package/src/components/PageContent.tsx +17 -17
- package/src/components/PageHeader.tsx +55 -55
- package/src/components/PageNotFound.tsx +26 -26
- package/src/components/PopupConfirm/ConfirmContextProvider.tsx +40 -40
- package/src/components/PopupConfirm/PopupConfirm.tsx +34 -34
- package/src/components/PopupConfirm/index.tsx +1 -1
- package/src/components/PopupConfirm/useConfirm.ts +47 -47
- package/src/components/Row.tsx +24 -24
- package/src/components/SearchBar.tsx +60 -60
- package/src/components/SideMenuHeader.tsx +29 -29
- package/src/components/SideNav.tsx +168 -168
- package/src/components/Spinner.tsx +18 -18
- package/src/components/StepsHeader/StepsHeader.tsx +115 -115
- package/src/components/StepsHeader/index.tsx +1 -1
- package/src/components/StyledTableContainer.tsx +33 -33
- package/src/components/SwitchButton.tsx +41 -41
- package/src/components/Table.tsx +42 -42
- package/src/components/TableComponent/BatchActionsHeader.tsx +58 -58
- package/src/components/TableComponent/Icons/index.tsx +50 -50
- package/src/components/TableComponent/ReactTable.tsx +293 -293
- package/src/components/TableComponent/RenderTableBody.tsx +66 -66
- package/src/components/TableComponent/Table.tsx +200 -200
- package/src/components/TableComponent/TableFooter/TableFooter.tsx +104 -104
- package/src/components/TableComponent/TableFooter/index.tsx +1 -1
- package/src/components/TableComponent/TableFooter/styles.tsx +28 -28
- package/src/components/TableComponent/index.tsx +1 -1
- package/src/components/TableComponent/react-table-config.d.ts +128 -128
- package/src/components/TableComponent/styles.tsx +170 -170
- package/src/components/TableComponent/types.ts +57 -57
- package/src/components/Tabs/Tabs.tsx +52 -52
- package/src/components/Tabs/TabsContainer.tsx +50 -50
- package/src/components/Tabs/index.tsx +1 -1
- package/src/components/Tabs/styles.tsx +55 -55
- package/src/components/ToastContainer/ToastContainer.tsx +42 -42
- package/src/components/ToastContainer/index.tsx +1 -1
- package/src/components/UploadButton/UploadButton.tsx +126 -126
- package/src/components/UploadButton/index.tsx +1 -1
- package/src/components/UploadButton/types.ts +19 -19
- package/src/components/UploadDocument.tsx +108 -108
- package/src/components/UploadFileDialog/UploadFileDialog.tsx +238 -238
- package/src/components/UploadFileDialog/index.tsx +1 -1
- package/src/components/index.ts +87 -84
- package/src/config/axios.ts +73 -73
- package/src/config/axiosEvaluator.ts +53 -53
- package/src/config/axiosXTenant.ts +57 -57
- package/src/constants/UIConstants.ts +97 -97
- package/src/constants/formValidations.ts +6 -6
- package/src/constants/index.ts +5 -5
- package/src/constants/isDevelopment.ts +3 -3
- package/src/constants/permissions.ts +67 -67
- package/src/constants/validateMessages.ts +12 -12
- package/src/contexts/LoginFormProvider.tsx +39 -39
- package/src/contexts/Providers.tsx +71 -71
- package/src/contexts/PublicProviders.tsx +30 -30
- package/src/contexts/QueryClientProvider.tsx +22 -22
- package/src/hooks/index.ts +3 -3
- package/src/hooks/useAuth.ts +96 -96
- package/src/hooks/useFetch.ts +53 -53
- package/src/hooks/useRouter.ts +31 -31
- package/src/layouts/Components/DashBoardMenu.tsx +232 -232
- package/src/layouts/Components/icons/index.tsx +403 -403
- package/src/layouts/Components/styles.tsx +60 -60
- package/src/layouts/ComponentsLayout.tsx +3 -3
- package/src/permissions/PageWithPermission.tsx +18 -18
- package/src/permissions/PermissionDeniedPage.tsx +16 -16
- package/src/permissions/ValidateAccess.tsx +18 -18
- package/src/permissions/index.ts +2 -2
- package/src/react-app-env.d.ts +1 -1
- package/src/shared-state/AssetsStore.ts +15 -15
- package/src/shared-state/PermissionsStore.ts +352 -352
- package/src/shared-state/UserStore.ts +13 -13
- package/src/shared-state/index.ts +4 -4
- package/src/theme/App.less +3 -3
- package/src/theme/MuiThemeProvider.tsx +13 -13
- package/src/theme/customCssBaseline.ts +78 -78
- package/src/theme/index.css +75 -75
- package/src/theme/muiTheme.ts +560 -560
- package/src/theme/theme.d.ts +75 -75
- package/src/utils/alphabet.ts +23 -23
- package/src/utils/arrayPadEnd.ts +3 -3
- package/src/utils/formatCurrency.ts +9 -9
- package/src/utils/getUrlParams.ts +5 -5
- package/src/utils/index.ts +8 -8
- package/src/utils/logout.ts +24 -24
- package/src/utils/ordinalSuffixOf.ts +14 -14
- package/src/utils/romanize.ts +40 -40
- package/src/utils/withLocalization.tsx +11 -11
- package/src/utils/withRouteWrapper.tsx +25 -25
- package/src/utils/withSuspense.tsx +6 -6
- package/styled-components.tsx +60 -60
- package/tsconfig.json +21 -21
- package/src/components/Layout/Header/assets/commuteX.png +0 -0
package/src/theme/theme.d.ts
CHANGED
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
import { ThemeOptions as MuiThemeOptions } from '@mui/material/styles'
|
|
2
|
-
|
|
3
|
-
declare module '@mui/material/styles' {
|
|
4
|
-
interface Theme {
|
|
5
|
-
borders: {
|
|
6
|
-
grayLight: string
|
|
7
|
-
primary: string
|
|
8
|
-
}
|
|
9
|
-
palette: {
|
|
10
|
-
primary: {
|
|
11
|
-
dark: string
|
|
12
|
-
main: string
|
|
13
|
-
light: string
|
|
14
|
-
lighter: string
|
|
15
|
-
}
|
|
16
|
-
secondary: {
|
|
17
|
-
main: string
|
|
18
|
-
light: string
|
|
19
|
-
dark: string
|
|
20
|
-
lighter: string
|
|
21
|
-
}
|
|
22
|
-
common: {
|
|
23
|
-
black: string
|
|
24
|
-
white: string
|
|
25
|
-
green: string
|
|
26
|
-
yellow: string
|
|
27
|
-
blue: string
|
|
28
|
-
}
|
|
29
|
-
error: {
|
|
30
|
-
main: string
|
|
31
|
-
}
|
|
32
|
-
text: {
|
|
33
|
-
primary: string
|
|
34
|
-
secondary: string
|
|
35
|
-
disabled: string
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
// allow configuration using `createTheme`
|
|
40
|
-
interface CustomThemeOptions extends MuiThemeOptions {
|
|
41
|
-
borders?: {
|
|
42
|
-
grayLight?: string
|
|
43
|
-
}
|
|
44
|
-
palette: {
|
|
45
|
-
secondary?: {
|
|
46
|
-
main?: string
|
|
47
|
-
light?: string
|
|
48
|
-
dark?: string
|
|
49
|
-
lighter?: string
|
|
50
|
-
}
|
|
51
|
-
primary?: {
|
|
52
|
-
dark?: string
|
|
53
|
-
main?: string
|
|
54
|
-
light?: string
|
|
55
|
-
lighter?: string
|
|
56
|
-
}
|
|
57
|
-
common?: {
|
|
58
|
-
black?: string
|
|
59
|
-
white?: string
|
|
60
|
-
green?: string
|
|
61
|
-
yellow?: string
|
|
62
|
-
blue?: string
|
|
63
|
-
}
|
|
64
|
-
error?: {
|
|
65
|
-
main?: string
|
|
66
|
-
}
|
|
67
|
-
text?: {
|
|
68
|
-
primary?: string
|
|
69
|
-
secondary?: string
|
|
70
|
-
disabled?: string
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
export function createTheme(options?: CustomThemeOptions): CustomTheme
|
|
75
|
-
}
|
|
1
|
+
import { ThemeOptions as MuiThemeOptions } from '@mui/material/styles'
|
|
2
|
+
|
|
3
|
+
declare module '@mui/material/styles' {
|
|
4
|
+
interface Theme {
|
|
5
|
+
borders: {
|
|
6
|
+
grayLight: string
|
|
7
|
+
primary: string
|
|
8
|
+
}
|
|
9
|
+
palette: {
|
|
10
|
+
primary: {
|
|
11
|
+
dark: string
|
|
12
|
+
main: string
|
|
13
|
+
light: string
|
|
14
|
+
lighter: string
|
|
15
|
+
}
|
|
16
|
+
secondary: {
|
|
17
|
+
main: string
|
|
18
|
+
light: string
|
|
19
|
+
dark: string
|
|
20
|
+
lighter: string
|
|
21
|
+
}
|
|
22
|
+
common: {
|
|
23
|
+
black: string
|
|
24
|
+
white: string
|
|
25
|
+
green: string
|
|
26
|
+
yellow: string
|
|
27
|
+
blue: string
|
|
28
|
+
}
|
|
29
|
+
error: {
|
|
30
|
+
main: string
|
|
31
|
+
}
|
|
32
|
+
text: {
|
|
33
|
+
primary: string
|
|
34
|
+
secondary: string
|
|
35
|
+
disabled: string
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
// allow configuration using `createTheme`
|
|
40
|
+
interface CustomThemeOptions extends MuiThemeOptions {
|
|
41
|
+
borders?: {
|
|
42
|
+
grayLight?: string
|
|
43
|
+
}
|
|
44
|
+
palette: {
|
|
45
|
+
secondary?: {
|
|
46
|
+
main?: string
|
|
47
|
+
light?: string
|
|
48
|
+
dark?: string
|
|
49
|
+
lighter?: string
|
|
50
|
+
}
|
|
51
|
+
primary?: {
|
|
52
|
+
dark?: string
|
|
53
|
+
main?: string
|
|
54
|
+
light?: string
|
|
55
|
+
lighter?: string
|
|
56
|
+
}
|
|
57
|
+
common?: {
|
|
58
|
+
black?: string
|
|
59
|
+
white?: string
|
|
60
|
+
green?: string
|
|
61
|
+
yellow?: string
|
|
62
|
+
blue?: string
|
|
63
|
+
}
|
|
64
|
+
error?: {
|
|
65
|
+
main?: string
|
|
66
|
+
}
|
|
67
|
+
text?: {
|
|
68
|
+
primary?: string
|
|
69
|
+
secondary?: string
|
|
70
|
+
disabled?: string
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
export function createTheme(options?: CustomThemeOptions): CustomTheme
|
|
75
|
+
}
|
package/src/utils/alphabet.ts
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
export function alphabet(option) {
|
|
2
|
-
let letters: any = []
|
|
3
|
-
|
|
4
|
-
//set the default value of i & j to print A to Z
|
|
5
|
-
var i = 65
|
|
6
|
-
var j = 91
|
|
7
|
-
|
|
8
|
-
//if the option is small set the value of i,j to print a to z
|
|
9
|
-
if (option == 'small') {
|
|
10
|
-
i = 97
|
|
11
|
-
j = 123
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
//loop through the values from i to j
|
|
15
|
-
for (let k = i; k < j; k++) {
|
|
16
|
-
//convert the char code to string (Alphabets)
|
|
17
|
-
var str = String.fromCharCode(k)
|
|
18
|
-
//print the result in console
|
|
19
|
-
letters.push(str)
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
return letters
|
|
23
|
-
}
|
|
1
|
+
export function alphabet(option) {
|
|
2
|
+
let letters: any = []
|
|
3
|
+
|
|
4
|
+
//set the default value of i & j to print A to Z
|
|
5
|
+
var i = 65
|
|
6
|
+
var j = 91
|
|
7
|
+
|
|
8
|
+
//if the option is small set the value of i,j to print a to z
|
|
9
|
+
if (option == 'small') {
|
|
10
|
+
i = 97
|
|
11
|
+
j = 123
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
//loop through the values from i to j
|
|
15
|
+
for (let k = i; k < j; k++) {
|
|
16
|
+
//convert the char code to string (Alphabets)
|
|
17
|
+
var str = String.fromCharCode(k)
|
|
18
|
+
//print the result in console
|
|
19
|
+
letters.push(str)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return letters
|
|
23
|
+
}
|
package/src/utils/arrayPadEnd.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export default function arrayPadEnd(array, minLength, fillValue = undefined) {
|
|
2
|
-
return Object.assign(new Array(minLength).fill(fillValue), array)
|
|
3
|
-
}
|
|
1
|
+
export default function arrayPadEnd(array, minLength, fillValue = undefined) {
|
|
2
|
+
return Object.assign(new Array(minLength).fill(fillValue), array)
|
|
3
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
var formatter = new Intl.NumberFormat('en-IN', {
|
|
2
|
-
style: 'currency',
|
|
3
|
-
currency: 'INR',
|
|
4
|
-
currencyDisplay: 'code',
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
export default function inr(amount: number) {
|
|
8
|
-
return formatter.format(amount).replace('INR', '').trim()
|
|
9
|
-
}
|
|
1
|
+
var formatter = new Intl.NumberFormat('en-IN', {
|
|
2
|
+
style: 'currency',
|
|
3
|
+
currency: 'INR',
|
|
4
|
+
currencyDisplay: 'code',
|
|
5
|
+
})
|
|
6
|
+
|
|
7
|
+
export default function inr(amount: number) {
|
|
8
|
+
return formatter.format(amount).replace('INR', '').trim()
|
|
9
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export default function getUrlParams() {
|
|
2
|
-
const urlSearchParams = new URLSearchParams(window.location.search)
|
|
3
|
-
const params = Object.fromEntries(urlSearchParams.entries())
|
|
4
|
-
return params
|
|
5
|
-
}
|
|
1
|
+
export default function getUrlParams() {
|
|
2
|
+
const urlSearchParams = new URLSearchParams(window.location.search)
|
|
3
|
+
const params = Object.fromEntries(urlSearchParams.entries())
|
|
4
|
+
return params
|
|
5
|
+
}
|
package/src/utils/index.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { default as getUrlParams } from './getUrlParams'
|
|
2
|
-
export { default as arrayPadEnd } from './arrayPadEnd'
|
|
3
|
-
export { default as romanize } from './romanize'
|
|
4
|
-
|
|
5
|
-
export { default as withRouteWrapper } from './withRouteWrapper'
|
|
6
|
-
export { default as withSuspense } from './withSuspense'
|
|
7
|
-
export { default as withLocalization } from './withLocalization'
|
|
8
|
-
export { default as onLogout } from './logout'
|
|
1
|
+
export { default as getUrlParams } from './getUrlParams'
|
|
2
|
+
export { default as arrayPadEnd } from './arrayPadEnd'
|
|
3
|
+
export { default as romanize } from './romanize'
|
|
4
|
+
|
|
5
|
+
export { default as withRouteWrapper } from './withRouteWrapper'
|
|
6
|
+
export { default as withSuspense } from './withSuspense'
|
|
7
|
+
export { default as withLocalization } from './withLocalization'
|
|
8
|
+
export { default as onLogout } from './logout'
|
package/src/utils/logout.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import Cookies from 'js-cookie'
|
|
2
|
-
import axios, { axiosErrorToast } from '../config/axios'
|
|
3
|
-
import { isDevelopment } from '../constants'
|
|
4
|
-
|
|
5
|
-
export default function logout() {
|
|
6
|
-
if (isDevelopment) {
|
|
7
|
-
Cookies.remove('campx_session_key')
|
|
8
|
-
window.location.href = window.location.origin + '/campx_dev'
|
|
9
|
-
return
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
axios({
|
|
13
|
-
method: 'POST',
|
|
14
|
-
baseURL: 'https://api.campx.in',
|
|
15
|
-
url: '/auth-server/auth/logout',
|
|
16
|
-
})
|
|
17
|
-
.then((res) => {
|
|
18
|
-
Cookies.remove('campx_tenant')
|
|
19
|
-
window.location.href = 'https://id.campx.in'
|
|
20
|
-
})
|
|
21
|
-
.catch((err) => {
|
|
22
|
-
axiosErrorToast('Unable To Logout.')
|
|
23
|
-
})
|
|
24
|
-
}
|
|
1
|
+
import Cookies from 'js-cookie'
|
|
2
|
+
import axios, { axiosErrorToast } from '../config/axios'
|
|
3
|
+
import { isDevelopment } from '../constants'
|
|
4
|
+
|
|
5
|
+
export default function logout() {
|
|
6
|
+
if (isDevelopment) {
|
|
7
|
+
Cookies.remove('campx_session_key')
|
|
8
|
+
window.location.href = window.location.origin + '/campx_dev'
|
|
9
|
+
return
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
axios({
|
|
13
|
+
method: 'POST',
|
|
14
|
+
baseURL: 'https://api.campx.in',
|
|
15
|
+
url: '/auth-server/auth/logout',
|
|
16
|
+
})
|
|
17
|
+
.then((res) => {
|
|
18
|
+
Cookies.remove('campx_tenant')
|
|
19
|
+
window.location.href = 'https://id.campx.in'
|
|
20
|
+
})
|
|
21
|
+
.catch((err) => {
|
|
22
|
+
axiosErrorToast('Unable To Logout.')
|
|
23
|
+
})
|
|
24
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export default function ordinalSuffixOf(i: number) {
|
|
2
|
-
var j = i % 10,
|
|
3
|
-
k = i % 100
|
|
4
|
-
if (j == 1 && k != 11) {
|
|
5
|
-
return i + 'st'
|
|
6
|
-
}
|
|
7
|
-
if (j == 2 && k != 12) {
|
|
8
|
-
return i + 'nd'
|
|
9
|
-
}
|
|
10
|
-
if (j == 3 && k != 13) {
|
|
11
|
-
return i + 'rd'
|
|
12
|
-
}
|
|
13
|
-
return i + 'th'
|
|
14
|
-
}
|
|
1
|
+
export default function ordinalSuffixOf(i: number) {
|
|
2
|
+
var j = i % 10,
|
|
3
|
+
k = i % 100
|
|
4
|
+
if (j == 1 && k != 11) {
|
|
5
|
+
return i + 'st'
|
|
6
|
+
}
|
|
7
|
+
if (j == 2 && k != 12) {
|
|
8
|
+
return i + 'nd'
|
|
9
|
+
}
|
|
10
|
+
if (j == 3 && k != 13) {
|
|
11
|
+
return i + 'rd'
|
|
12
|
+
}
|
|
13
|
+
return i + 'th'
|
|
14
|
+
}
|
package/src/utils/romanize.ts
CHANGED
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
export default function romanize(num) {
|
|
2
|
-
if (!+num) return false
|
|
3
|
-
var digits = String(+num).split(''),
|
|
4
|
-
key = [
|
|
5
|
-
'',
|
|
6
|
-
'C',
|
|
7
|
-
'CC',
|
|
8
|
-
'CCC',
|
|
9
|
-
'CD',
|
|
10
|
-
'D',
|
|
11
|
-
'DC',
|
|
12
|
-
'DCC',
|
|
13
|
-
'DCCC',
|
|
14
|
-
'CM',
|
|
15
|
-
'',
|
|
16
|
-
'X',
|
|
17
|
-
'XX',
|
|
18
|
-
'XXX',
|
|
19
|
-
'XL',
|
|
20
|
-
'L',
|
|
21
|
-
'LX',
|
|
22
|
-
'LXX',
|
|
23
|
-
'LXXX',
|
|
24
|
-
'XC',
|
|
25
|
-
'',
|
|
26
|
-
'I',
|
|
27
|
-
'II',
|
|
28
|
-
'III',
|
|
29
|
-
'IV',
|
|
30
|
-
'V',
|
|
31
|
-
'VI',
|
|
32
|
-
'VII',
|
|
33
|
-
'VIII',
|
|
34
|
-
'IX',
|
|
35
|
-
],
|
|
36
|
-
roman = '',
|
|
37
|
-
i = 3
|
|
38
|
-
while (i--) roman = (key[+digits.pop() + i * 10] || '') + roman
|
|
39
|
-
return Array(+digits.join('') + 1).join('M') + roman
|
|
40
|
-
}
|
|
1
|
+
export default function romanize(num) {
|
|
2
|
+
if (!+num) return false
|
|
3
|
+
var digits = String(+num).split(''),
|
|
4
|
+
key = [
|
|
5
|
+
'',
|
|
6
|
+
'C',
|
|
7
|
+
'CC',
|
|
8
|
+
'CCC',
|
|
9
|
+
'CD',
|
|
10
|
+
'D',
|
|
11
|
+
'DC',
|
|
12
|
+
'DCC',
|
|
13
|
+
'DCCC',
|
|
14
|
+
'CM',
|
|
15
|
+
'',
|
|
16
|
+
'X',
|
|
17
|
+
'XX',
|
|
18
|
+
'XXX',
|
|
19
|
+
'XL',
|
|
20
|
+
'L',
|
|
21
|
+
'LX',
|
|
22
|
+
'LXX',
|
|
23
|
+
'LXXX',
|
|
24
|
+
'XC',
|
|
25
|
+
'',
|
|
26
|
+
'I',
|
|
27
|
+
'II',
|
|
28
|
+
'III',
|
|
29
|
+
'IV',
|
|
30
|
+
'V',
|
|
31
|
+
'VI',
|
|
32
|
+
'VII',
|
|
33
|
+
'VIII',
|
|
34
|
+
'IX',
|
|
35
|
+
],
|
|
36
|
+
roman = '',
|
|
37
|
+
i = 3
|
|
38
|
+
while (i--) roman = (key[+digits.pop() + i * 10] || '') + roman
|
|
39
|
+
return Array(+digits.join('') + 1).join('M') + roman
|
|
40
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { LocalizationProvider } from '@mui/x-date-pickers'
|
|
2
|
-
import { AdapterMoment } from '@mui/x-date-pickers/AdapterMoment'
|
|
3
|
-
import { ReactNode } from 'react'
|
|
4
|
-
|
|
5
|
-
export default function withLocalization(component: ReactNode) {
|
|
6
|
-
return (
|
|
7
|
-
<LocalizationProvider dateAdapter={AdapterMoment}>
|
|
8
|
-
{component}
|
|
9
|
-
</LocalizationProvider>
|
|
10
|
-
)
|
|
11
|
-
}
|
|
1
|
+
import { LocalizationProvider } from '@mui/x-date-pickers'
|
|
2
|
+
import { AdapterMoment } from '@mui/x-date-pickers/AdapterMoment'
|
|
3
|
+
import { ReactNode } from 'react'
|
|
4
|
+
|
|
5
|
+
export default function withLocalization(component: ReactNode) {
|
|
6
|
+
return (
|
|
7
|
+
<LocalizationProvider dateAdapter={AdapterMoment}>
|
|
8
|
+
{component}
|
|
9
|
+
</LocalizationProvider>
|
|
10
|
+
)
|
|
11
|
+
}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { Suspense } from 'react'
|
|
2
|
-
import PageWithPermission from '../permissions/PageWithPermission'
|
|
3
|
-
import { Spinner } from '../components'
|
|
4
|
-
|
|
5
|
-
const withRouteWrapper = (routes) => {
|
|
6
|
-
return routes?.map((item, index) => {
|
|
7
|
-
if (item?.children) {
|
|
8
|
-
return {
|
|
9
|
-
...item,
|
|
10
|
-
children: withRouteWrapper(item.children),
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
return {
|
|
14
|
-
...item,
|
|
15
|
-
element: item?.element ? (
|
|
16
|
-
<Suspense fallback={<Spinner />} key={index}>
|
|
17
|
-
<PageWithPermission permissionKey={item?.permissionKey}>
|
|
18
|
-
{item.element}
|
|
19
|
-
</PageWithPermission>
|
|
20
|
-
</Suspense>
|
|
21
|
-
) : undefined,
|
|
22
|
-
}
|
|
23
|
-
})
|
|
24
|
-
}
|
|
25
|
-
export default withRouteWrapper
|
|
1
|
+
import { Suspense } from 'react'
|
|
2
|
+
import PageWithPermission from '../permissions/PageWithPermission'
|
|
3
|
+
import { Spinner } from '../components'
|
|
4
|
+
|
|
5
|
+
const withRouteWrapper = (routes) => {
|
|
6
|
+
return routes?.map((item, index) => {
|
|
7
|
+
if (item?.children) {
|
|
8
|
+
return {
|
|
9
|
+
...item,
|
|
10
|
+
children: withRouteWrapper(item.children),
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
return {
|
|
14
|
+
...item,
|
|
15
|
+
element: item?.element ? (
|
|
16
|
+
<Suspense fallback={<Spinner />} key={index}>
|
|
17
|
+
<PageWithPermission permissionKey={item?.permissionKey}>
|
|
18
|
+
{item.element}
|
|
19
|
+
</PageWithPermission>
|
|
20
|
+
</Suspense>
|
|
21
|
+
) : undefined,
|
|
22
|
+
}
|
|
23
|
+
})
|
|
24
|
+
}
|
|
25
|
+
export default withRouteWrapper
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { LinearProgress, Spinner } from '../components'
|
|
2
|
-
import { ReactNode, Suspense } from 'react'
|
|
3
|
-
|
|
4
|
-
export default function withSuspense(component: ReactNode) {
|
|
5
|
-
return <Suspense fallback={<LinearProgress />}>{component}</Suspense>
|
|
6
|
-
}
|
|
1
|
+
import { LinearProgress, Spinner } from '../components'
|
|
2
|
+
import { ReactNode, Suspense } from 'react'
|
|
3
|
+
|
|
4
|
+
export default function withSuspense(component: ReactNode) {
|
|
5
|
+
return <Suspense fallback={<LinearProgress />}>{component}</Suspense>
|
|
6
|
+
}
|
package/styled-components.tsx
CHANGED
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
import styled from 'styled-components'
|
|
2
|
-
import { styled as muiStyled } from '@mui/material'
|
|
3
|
-
|
|
4
|
-
export const headerHeight = '64px'
|
|
5
|
-
export const sideNavWidth = '220px'
|
|
6
|
-
|
|
7
|
-
export const StyledLayoutContainer = styled.div`
|
|
8
|
-
& > div {
|
|
9
|
-
}
|
|
10
|
-
`
|
|
11
|
-
|
|
12
|
-
export const StyledHeaderContainer = styled.header`
|
|
13
|
-
z-index: 300;
|
|
14
|
-
width: 100%;
|
|
15
|
-
position: fixed;
|
|
16
|
-
top: 0;
|
|
17
|
-
left: 0;
|
|
18
|
-
min-height: ${headerHeight};
|
|
19
|
-
background: #fff;
|
|
20
|
-
& > div {
|
|
21
|
-
height: ${headerHeight};
|
|
22
|
-
}
|
|
23
|
-
`
|
|
24
|
-
|
|
25
|
-
export const StyledLeftNavContainer = muiStyled('aside')(({ theme }) => ({
|
|
26
|
-
width: sideNavWidth,
|
|
27
|
-
background: theme.palette.secondary.main,
|
|
28
|
-
color: 'white',
|
|
29
|
-
position: 'fixed',
|
|
30
|
-
top: headerHeight,
|
|
31
|
-
left: 0,
|
|
32
|
-
height: `calc(100vh - ${headerHeight})`,
|
|
33
|
-
overflowY: 'auto',
|
|
34
|
-
|
|
35
|
-
'&::-webkit-scrollbar': {
|
|
36
|
-
width: '0.5em',
|
|
37
|
-
height: '0.5em',
|
|
38
|
-
},
|
|
39
|
-
|
|
40
|
-
'&::-webkit-scrollbar-thumb': {
|
|
41
|
-
backgroundColor: 'rgba(255, 255, 255, 0.3)',
|
|
42
|
-
borderRadius: '3px',
|
|
43
|
-
|
|
44
|
-
'&:hover': {
|
|
45
|
-
background: 'rgba(255, 255, 255, 0.4)',
|
|
46
|
-
},
|
|
47
|
-
},
|
|
48
|
-
|
|
49
|
-
zIndex: 100,
|
|
50
|
-
}))
|
|
51
|
-
|
|
52
|
-
export const StyledMainContentContainer = muiStyled('main')(() => ({
|
|
53
|
-
width: `calc(100% - ${sideNavWidth})`,
|
|
54
|
-
// width: '100%',
|
|
55
|
-
height: `calc(100vh - ${headerHeight})`,
|
|
56
|
-
position: 'fixed',
|
|
57
|
-
top: headerHeight,
|
|
58
|
-
left: sideNavWidth,
|
|
59
|
-
overflowY: 'auto',
|
|
60
|
-
}))
|
|
1
|
+
import styled from 'styled-components'
|
|
2
|
+
import { styled as muiStyled } from '@mui/material'
|
|
3
|
+
|
|
4
|
+
export const headerHeight = '64px'
|
|
5
|
+
export const sideNavWidth = '220px'
|
|
6
|
+
|
|
7
|
+
export const StyledLayoutContainer = styled.div`
|
|
8
|
+
& > div {
|
|
9
|
+
}
|
|
10
|
+
`
|
|
11
|
+
|
|
12
|
+
export const StyledHeaderContainer = styled.header`
|
|
13
|
+
z-index: 300;
|
|
14
|
+
width: 100%;
|
|
15
|
+
position: fixed;
|
|
16
|
+
top: 0;
|
|
17
|
+
left: 0;
|
|
18
|
+
min-height: ${headerHeight};
|
|
19
|
+
background: #fff;
|
|
20
|
+
& > div {
|
|
21
|
+
height: ${headerHeight};
|
|
22
|
+
}
|
|
23
|
+
`
|
|
24
|
+
|
|
25
|
+
export const StyledLeftNavContainer = muiStyled('aside')(({ theme }) => ({
|
|
26
|
+
width: sideNavWidth,
|
|
27
|
+
background: theme.palette.secondary.main,
|
|
28
|
+
color: 'white',
|
|
29
|
+
position: 'fixed',
|
|
30
|
+
top: headerHeight,
|
|
31
|
+
left: 0,
|
|
32
|
+
height: `calc(100vh - ${headerHeight})`,
|
|
33
|
+
overflowY: 'auto',
|
|
34
|
+
|
|
35
|
+
'&::-webkit-scrollbar': {
|
|
36
|
+
width: '0.5em',
|
|
37
|
+
height: '0.5em',
|
|
38
|
+
},
|
|
39
|
+
|
|
40
|
+
'&::-webkit-scrollbar-thumb': {
|
|
41
|
+
backgroundColor: 'rgba(255, 255, 255, 0.3)',
|
|
42
|
+
borderRadius: '3px',
|
|
43
|
+
|
|
44
|
+
'&:hover': {
|
|
45
|
+
background: 'rgba(255, 255, 255, 0.4)',
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
zIndex: 100,
|
|
50
|
+
}))
|
|
51
|
+
|
|
52
|
+
export const StyledMainContentContainer = muiStyled('main')(() => ({
|
|
53
|
+
width: `calc(100% - ${sideNavWidth})`,
|
|
54
|
+
// width: '100%',
|
|
55
|
+
height: `calc(100vh - ${headerHeight})`,
|
|
56
|
+
position: 'fixed',
|
|
57
|
+
top: headerHeight,
|
|
58
|
+
left: sideNavWidth,
|
|
59
|
+
overflowY: 'auto',
|
|
60
|
+
}))
|
package/tsconfig.json
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ES5",
|
|
4
|
-
"lib": ["dom", "dom.iterable", "esnext"],
|
|
5
|
-
"allowJs": true,
|
|
6
|
-
"skipLibCheck": true,
|
|
7
|
-
"esModuleInterop": true,
|
|
8
|
-
"allowSyntheticDefaultImports": true,
|
|
9
|
-
"strict": false,
|
|
10
|
-
"forceConsistentCasingInFileNames": true,
|
|
11
|
-
"noFallthroughCasesInSwitch": true,
|
|
12
|
-
"module": "ESNext",
|
|
13
|
-
"moduleResolution": "node",
|
|
14
|
-
"resolveJsonModule": true,
|
|
15
|
-
"isolatedModules": true,
|
|
16
|
-
"noEmit": true,
|
|
17
|
-
"jsx": "react-jsx",
|
|
18
|
-
"types": ["node"]
|
|
19
|
-
},
|
|
20
|
-
"include": ["src"]
|
|
21
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES5",
|
|
4
|
+
"lib": ["dom", "dom.iterable", "esnext"],
|
|
5
|
+
"allowJs": true,
|
|
6
|
+
"skipLibCheck": true,
|
|
7
|
+
"esModuleInterop": true,
|
|
8
|
+
"allowSyntheticDefaultImports": true,
|
|
9
|
+
"strict": false,
|
|
10
|
+
"forceConsistentCasingInFileNames": true,
|
|
11
|
+
"noFallthroughCasesInSwitch": true,
|
|
12
|
+
"module": "ESNext",
|
|
13
|
+
"moduleResolution": "node",
|
|
14
|
+
"resolveJsonModule": true,
|
|
15
|
+
"isolatedModules": true,
|
|
16
|
+
"noEmit": true,
|
|
17
|
+
"jsx": "react-jsx",
|
|
18
|
+
"types": ["node"]
|
|
19
|
+
},
|
|
20
|
+
"include": ["src"]
|
|
21
|
+
}
|
|
Binary file
|