@campxdev/shared 1.0.5 → 1.1.1

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.
Files changed (220) hide show
  1. package/.eslintignore +3 -3
  2. package/.eslintrc.js +33 -33
  3. package/.prettierrc +10 -10
  4. package/antd.customize.less +73 -73
  5. package/exports.ts +17 -17
  6. package/package.json +82 -82
  7. package/publish.sh +1 -1
  8. package/src/assets/fonts/avenir/index.ts +2 -2
  9. package/src/assets/fonts/poppins/index.ts +7 -7
  10. package/src/assets/images/index.ts +17 -17
  11. package/src/assets/images/unauth.svg +92 -92
  12. package/src/components/ActionButton.tsx +28 -28
  13. package/src/components/Attachment.tsx +26 -26
  14. package/src/components/AutocompleteSearch/AutocompleteSearch.tsx +57 -57
  15. package/src/components/AutocompleteSearch/index.tsx +1 -1
  16. package/src/components/Breadcrumbs.tsx +72 -72
  17. package/src/components/Card.tsx +98 -98
  18. package/src/components/CardsGrid.tsx +28 -28
  19. package/src/components/ChangePassword.tsx +164 -164
  20. package/src/components/Chips.tsx +81 -81
  21. package/src/components/Detail.tsx +15 -15
  22. package/src/components/DetailsGrid.tsx +52 -52
  23. package/src/components/DividerHeading.tsx +41 -41
  24. package/src/components/DrawerWrapper/DialogWrapper.tsx +67 -67
  25. package/src/components/DrawerWrapper/DrawerTemplate.tsx +53 -53
  26. package/src/components/DrawerWrapper/DrawerWrapper.tsx +53 -53
  27. package/src/components/DropDownButton.tsx +194 -194
  28. package/src/components/ErrorBoundary/ErrorBoundary.tsx +28 -28
  29. package/src/components/ErrorBoundary/ErrorFallback.tsx +236 -236
  30. package/src/components/ErrorBoundary/GlobalNetworkLoadingIndicator.tsx +13 -13
  31. package/src/components/ErrorBoundary/index.tsx +1 -1
  32. package/src/components/ErrorBox.tsx +42 -42
  33. package/src/components/FloatingContainer.tsx +33 -33
  34. package/src/components/Form/Form.tsx +156 -156
  35. package/src/components/Form/RenderForm.tsx +188 -188
  36. package/src/components/FullCalendar/Actions.tsx +162 -162
  37. package/src/components/FullCalendar/FullCalendarWrapper.tsx +54 -54
  38. package/src/components/FullScreenLoader.tsx +19 -19
  39. package/src/components/HookForm/AutoCompleteSearch.tsx +113 -113
  40. package/src/components/HookForm/DatePicker.tsx +65 -65
  41. package/src/components/HookForm/DateTimePicker.tsx +70 -70
  42. package/src/components/HookForm/FormLabel.tsx +14 -14
  43. package/src/components/HookForm/MultiCheckbox.tsx +82 -82
  44. package/src/components/HookForm/MultiSelect.tsx +100 -100
  45. package/src/components/HookForm/RadioGroup.tsx +106 -106
  46. package/src/components/HookForm/SingleCheckbox.tsx +46 -46
  47. package/src/components/HookForm/SingleSelect.tsx +94 -94
  48. package/src/components/HookForm/TextField.tsx +74 -74
  49. package/src/components/HookForm/TimePicker.tsx +82 -82
  50. package/src/components/HookForm/index.ts +23 -23
  51. package/src/components/IconButtons/IconButtons.tsx +137 -137
  52. package/src/components/IconButtons/Icons.tsx +268 -268
  53. package/src/components/IconButtons/assets/edit.svg +4 -4
  54. package/src/components/IconButtons/assets/eye.svg +6 -6
  55. package/src/components/IconButtons/assets/trash.svg +7 -7
  56. package/src/components/IconButtons/index.tsx +8 -8
  57. package/src/components/IconLabel.tsx +37 -37
  58. package/src/components/Image/Image.tsx +43 -43
  59. package/src/components/Image/index.tsx +1 -1
  60. package/src/components/ImageUpload.tsx +98 -98
  61. package/src/components/Input/AutoCompleteSearch.tsx +113 -113
  62. package/src/components/Input/DatePicker.tsx +60 -60
  63. package/src/components/Input/DateRangePicker.tsx +131 -131
  64. package/src/components/Input/DateTimePicker.tsx +70 -70
  65. package/src/components/Input/FormLabel.tsx +14 -14
  66. package/src/components/Input/MultiCheckbox.tsx +79 -79
  67. package/src/components/Input/MultiSelect.tsx +52 -52
  68. package/src/components/Input/RadioGroup.tsx +61 -61
  69. package/src/components/Input/SingleCheckbox.tsx +23 -23
  70. package/src/components/Input/SingleSelect.tsx +126 -126
  71. package/src/components/Input/TextField.tsx +50 -50
  72. package/src/components/Input/TimePicker.tsx +82 -82
  73. package/src/components/Input/index.ts +26 -26
  74. package/src/components/JsonPreview/JsonPreview.tsx +7 -7
  75. package/src/components/JsonPreview/index.tsx +1 -1
  76. package/src/components/LabelValue/LabelValue.tsx +21 -21
  77. package/src/components/LabelValue/index.tsx +1 -1
  78. package/src/components/Layout/ChangePassword.tsx +49 -49
  79. package/src/components/Layout/Header/AppHeader.tsx +124 -124
  80. package/src/components/Layout/Header/AppsMenu.tsx +92 -92
  81. package/src/components/Layout/Header/CogWheelMenu.tsx +33 -33
  82. package/src/components/Layout/Header/HelpWidget/HelpWidget.tsx +298 -298
  83. package/src/components/Layout/Header/HelpWidget/styles.tsx +94 -94
  84. package/src/components/Layout/Header/Notification.tsx +13 -13
  85. package/src/components/Layout/Header/UserBox.tsx +90 -90
  86. package/src/components/Layout/Header/applications.ts +90 -90
  87. package/src/components/Layout/Header/assets/campx_square_small.svg +9 -9
  88. package/src/components/Layout/Header/assets/commutex.svg +14 -14
  89. package/src/components/Layout/Header/assets/commutexSmall.svg +11 -11
  90. package/src/components/Layout/Header/assets/enroll.svg +14 -14
  91. package/src/components/Layout/Header/assets/enrollx.svg +14 -14
  92. package/src/components/Layout/Header/assets/exams_small.svg +12 -12
  93. package/src/components/Layout/Header/assets/examsx.svg +14 -14
  94. package/src/components/Layout/Header/assets/hostel_small.svg +13 -13
  95. package/src/components/Layout/Header/assets/hostelx.svg +13 -13
  96. package/src/components/Layout/Header/assets/index.ts +33 -33
  97. package/src/components/Layout/Header/assets/libraryx.svg +12 -12
  98. package/src/components/Layout/Header/assets/pay_small.svg +16 -16
  99. package/src/components/Layout/Header/assets/payx.svg +19 -19
  100. package/src/components/Layout/Header/assets/people_small.svg +9 -9
  101. package/src/components/Layout/Header/assets/peoplex.svg +12 -12
  102. package/src/components/Layout/Header/assets/squarex.svg +12 -12
  103. package/src/components/Layout/Header/icons.tsx +57 -57
  104. package/src/components/Layout/Header/index.tsx +1 -1
  105. package/src/components/Layout/Header/styles.tsx +98 -98
  106. package/src/components/Layout/Tickets/MyTickets.tsx +74 -74
  107. package/src/components/Layout/Tickets/Services.tsx +6 -6
  108. package/src/components/Layout/Tickets/TicketDetails.tsx +66 -66
  109. package/src/components/Layout/Tickets/TimeLine.tsx +64 -64
  110. package/src/components/Layout/Tickets/index.tsx +1 -1
  111. package/src/components/Layout/Tickets/styles.tsx +136 -136
  112. package/src/components/LayoutWrapper.tsx +25 -25
  113. package/src/components/LinearProgress.tsx +19 -19
  114. package/src/components/ListItemButton.tsx +95 -95
  115. package/src/components/LoginForm.tsx +105 -103
  116. package/src/components/MediaRow/MediaRow.tsx +69 -69
  117. package/src/components/MediaRow/index.tsx +1 -1
  118. package/src/components/MenuButton.tsx +103 -103
  119. package/src/components/ModalButtons/DialogButton.tsx +88 -88
  120. package/src/components/ModalButtons/DrawerButton.tsx +89 -89
  121. package/src/components/ModalButtons/index.tsx +4 -4
  122. package/src/components/NoDataIllustration/NoDataIllustration.tsx +32 -32
  123. package/src/components/NoDataIllustration/index.tsx +1 -1
  124. package/src/components/PageContent.tsx +17 -17
  125. package/src/components/PageHeader.tsx +52 -52
  126. package/src/components/PageNotFound.tsx +26 -26
  127. package/src/components/PopupConfirm/ConfirmContextProvider.tsx +40 -40
  128. package/src/components/PopupConfirm/PopupConfirm.tsx +34 -34
  129. package/src/components/PopupConfirm/index.tsx +1 -1
  130. package/src/components/PopupConfirm/useConfirm.ts +47 -47
  131. package/src/components/Router.tsx +7 -7
  132. package/src/components/Row/Row.tsx +24 -24
  133. package/src/components/Row/index.tsx +1 -1
  134. package/src/components/SearchBar/SearchBar.tsx +53 -53
  135. package/src/components/SearchBar/index.tsx +1 -1
  136. package/src/components/SideMenuHeader.tsx +29 -29
  137. package/src/components/SideNav.tsx +168 -168
  138. package/src/components/Spinner.tsx +18 -18
  139. package/src/components/StepsHeader/StepsHeader.tsx +115 -115
  140. package/src/components/StepsHeader/index.tsx +1 -1
  141. package/src/components/StyledTableContainer.tsx +33 -33
  142. package/src/components/SwitchButton/SwitchButton.tsx +41 -41
  143. package/src/components/SwitchButton/index.tsx +1 -1
  144. package/src/components/Table.tsx +42 -42
  145. package/src/components/TableComponent/BatchActionsHeader.tsx +58 -58
  146. package/src/components/TableComponent/Icons/index.tsx +50 -50
  147. package/src/components/TableComponent/ReactTable.tsx +293 -293
  148. package/src/components/TableComponent/RenderTableBody.tsx +64 -64
  149. package/src/components/TableComponent/TableFooter/TableFooter.tsx +102 -102
  150. package/src/components/TableComponent/TableFooter/index.tsx +1 -1
  151. package/src/components/TableComponent/TableFooter/styles.tsx +28 -28
  152. package/src/components/TableComponent/index.tsx +226 -226
  153. package/src/components/TableComponent/react-table-config.d.ts +128 -128
  154. package/src/components/TableComponent/styles.tsx +173 -173
  155. package/src/components/TableComponent/types.ts +57 -57
  156. package/src/components/Tabs/Tabs.tsx +52 -52
  157. package/src/components/Tabs/TabsContainer.tsx +50 -50
  158. package/src/components/Tabs/index.tsx +1 -1
  159. package/src/components/Tabs/styles.tsx +55 -55
  160. package/src/components/ToastContainer/ToastContainer.tsx +42 -42
  161. package/src/components/ToastContainer/index.tsx +1 -1
  162. package/src/components/UploadButton/UploadButton.tsx +126 -126
  163. package/src/components/UploadButton/index.tsx +1 -1
  164. package/src/components/UploadButton/types.ts +19 -19
  165. package/src/components/UploadDocument/UploadDocument.tsx +108 -108
  166. package/src/components/UploadDocument/index.tsx +1 -1
  167. package/src/components/UploadFileDialog/UploadFileDialog.tsx +238 -238
  168. package/src/components/UploadFileDialog/index.tsx +1 -1
  169. package/src/components/index.ts +86 -86
  170. package/src/config/axios.ts +74 -74
  171. package/src/config/axiosXTenant.ts +57 -57
  172. package/src/constants/UIConstants.ts +97 -97
  173. package/src/constants/formValidations.ts +6 -6
  174. package/src/constants/index.ts +5 -5
  175. package/src/constants/isDevelopment.ts +3 -3
  176. package/src/constants/permissions.ts +67 -67
  177. package/src/constants/validateMessages.ts +12 -12
  178. package/src/contexts/LoginFormProvider.tsx +39 -39
  179. package/src/contexts/Providers.tsx +60 -59
  180. package/src/contexts/PublicProviders.tsx +30 -30
  181. package/src/contexts/QueryClientProvider.tsx +22 -22
  182. package/src/hooks/index.ts +3 -3
  183. package/src/hooks/useAppInit.ts +33 -33
  184. package/src/hooks/useAuth.ts +96 -92
  185. package/src/hooks/useFetch.ts +53 -53
  186. package/src/hooks/useRouter.ts +31 -31
  187. package/src/layouts/Components/DashBoardMenu.tsx +232 -232
  188. package/src/layouts/Components/icons/index.tsx +403 -403
  189. package/src/layouts/Components/styles.tsx +60 -60
  190. package/src/layouts/ComponentsLayout.tsx +3 -3
  191. package/src/permissions/PageWithPermission.tsx +18 -18
  192. package/src/permissions/PermissionDeniedPage.tsx +16 -16
  193. package/src/permissions/ValidateAccess.tsx +18 -18
  194. package/src/permissions/index.ts +2 -3
  195. package/src/react-app-env.d.ts +1 -1
  196. package/src/shared-state/AssetsStore.ts +15 -15
  197. package/src/{permissions → shared-state}/PermissionsStore.ts +352 -352
  198. package/src/shared-state/UserStore.ts +13 -13
  199. package/src/shared-state/index.ts +4 -3
  200. package/src/theme/App.less +3 -3
  201. package/src/theme/MuiThemeProvider.tsx +13 -13
  202. package/src/theme/customCssBaseline.ts +78 -78
  203. package/src/theme/index.css +75 -75
  204. package/src/theme/muiTheme.ts +490 -490
  205. package/src/theme/theme.d.ts +75 -75
  206. package/src/utils/alphabet.ts +23 -23
  207. package/src/utils/arrayPadEnd.ts +3 -3
  208. package/src/utils/formatCurrency.ts +9 -9
  209. package/src/utils/getUrlParams.ts +5 -5
  210. package/src/utils/index.ts +8 -8
  211. package/src/utils/logout.ts +24 -24
  212. package/src/utils/ordinalSuffixOf.ts +14 -14
  213. package/src/utils/romanize.ts +40 -40
  214. package/src/utils/withLocalization.tsx +11 -11
  215. package/src/utils/withRouteWrapper.tsx +25 -25
  216. package/src/utils/withSuspense.tsx +6 -6
  217. package/styled-components.tsx +60 -60
  218. package/todo.md +20 -20
  219. package/tsconfig.json +21 -21
  220. package/src/components/Layout/Header/assets/commuteX.png +0 -0
@@ -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
+ }
@@ -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
+ }
@@ -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
+ }
@@ -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'
@@ -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://auth-api.campx.in',
15
- url: '/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://auth-api.campx.in',
15
+ url: '/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
+ }
@@ -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 { LinearProgress } from '../components/LinearProgress'
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={<LinearProgress />} 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 { LinearProgress } from '../components/LinearProgress'
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={<LinearProgress />} 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
+ }
@@ -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/todo.md CHANGED
@@ -1,20 +1,20 @@
1
- #todo
2
- 1.errorBoundary
3
- 2.fullcalendar
4
-
5
- 6.row
6
-
7
- #done today
8
-
9
- 4.nodatallustration
10
- 7.searchBar
11
- 11.uploadFileDialog
12
- 3.meadiaRow
13
-
14
- 8.stepsHeader
15
-
16
- #later
17
- 11.uploadButon
18
- 12.uploadDocuments
19
- 5.popupconfirm
20
- 1.ReactTable
1
+ #todo
2
+ 1.errorBoundary
3
+ 2.fullcalendar
4
+
5
+ 6.row
6
+
7
+ #done today
8
+
9
+ 4.nodatallustration
10
+ 7.searchBar
11
+ 11.uploadFileDialog
12
+ 3.meadiaRow
13
+
14
+ 8.stepsHeader
15
+
16
+ #later
17
+ 11.uploadButon
18
+ 12.uploadDocuments
19
+ 5.popupconfirm
20
+ 1.ReactTable