diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index bd8a4cc..a7a6fb0 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -10,15 +10,15 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out the repo - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Log in to Docker Hub - uses: docker/login-action@v1 + uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_HUB_USERNAME }} password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} - name: Build and push Docker image for server - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v5 with: context: ./server push: true diff --git a/client/dependency_tree.json b/client/dependency_tree.json new file mode 100644 index 0000000..33ecc6f --- /dev/null +++ b/client/dependency_tree.json @@ -0,0 +1,668 @@ +{ + "App.css": [], + "App.js": ["App.css", "logo.svg", "mainpage/Mainpage.js"], + "Notification/NotificationpageComponents/DefaultNavbar.js": [ + "Notification/NotificationpageComponents/DefaultNavbarDropdown.js", + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKTypography/index.js", + "publicAssets/DefaultInfoCard.js" + ], + "Notification/NotificationpageComponents/DefaultNavbarDropdown.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "Notification/NotificationpageComponents/DesignBlocks.js": [ + "Notification/NotificationpageComponents/designBlocksData.js", + "components/MKBadge/index.js", + "components/MKBox/index.js", + "components/MKTypography/index.js", + "publicAssets/DefaultInfoCard.js" + ], + "Notification/NotificationpageComponents/TestForm.js": [ + "Notification/NotificationpageComponents/DesignBlocks.js" + ], + "Notification/NotificationpageComponents/designBlocksData.js": [], + "Notification/Notifications.js": [ + "Notification/NotificationpageComponents/DefaultNavbar.js", + "assets/theme/index.js", + "publicAssets/routes.js" + ], + "PasswordRecovery/PasswordRecovery.js": [], + "assets/theme/base/borders.js": [ + "assets/theme/base/colors.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/base/boxShadows.js": [ + "assets/theme/base/colors.js", + "assets/theme/functions/boxShadow.js" + ], + "assets/theme/base/breakpoints.js": [], + "assets/theme/base/colors.js": [], + "assets/theme/base/globals.js": ["assets/theme/base/colors.js"], + "assets/theme/base/typography.js": [ + "assets/theme/base/colors.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/appBar.js": [], + "assets/theme/components/avatar.js": ["assets/theme/base/borders.js"], + "assets/theme/components/breadcrumbs.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js" + ], + "assets/theme/components/button/contained.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/button/index.js": [ + "assets/theme/components/button/contained.js", + "assets/theme/components/button/outlined.js", + "assets/theme/components/button/root.js", + "assets/theme/components/button/text.js" + ], + "assets/theme/components/button/outlined.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/button/root.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/button/text.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/buttonBase.js": [], + "assets/theme/components/card/cardContent.js": [ + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/card/cardMedia.js": [ + "assets/theme/base/borders.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/card/index.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js", + "assets/theme/functions/rgba.js" + ], + "assets/theme/components/container.js": [ + "assets/theme/base/breakpoints.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/dialog/dialogActions.js": [ + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/dialog/dialogContent.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/dialog/dialogContentText.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js" + ], + "assets/theme/components/dialog/dialogTitle.js": [ + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/dialog/index.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js" + ], + "assets/theme/components/divider.js": [ + "assets/theme/base/colors.js", + "assets/theme/functions/pxToRem.js", + "assets/theme/functions/rgba.js" + ], + "assets/theme/components/flatpickr.js": [ + "assets/theme/base/colors.js", + "assets/theme/functions/rgba.js" + ], + "assets/theme/components/form/autocomplete.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/form/checkbox.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/functions/linearGradient.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/form/formControlLabel.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/form/formLabel.js": ["assets/theme/base/colors.js"], + "assets/theme/components/form/input.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js" + ], + "assets/theme/components/form/inputLabel.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js" + ], + "assets/theme/components/form/inputOutlined.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/form/radio.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/functions/linearGradient.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/form/select.js": [ + "assets/theme/base/colors.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/form/switchButton.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js", + "assets/theme/functions/linearGradient.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/form/textField.js": ["assets/theme/base/colors.js"], + "assets/theme/components/icon.js": ["assets/theme/functions/pxToRem.js"], + "assets/theme/components/iconButton.js": ["assets/theme/base/colors.js"], + "assets/theme/components/linearProgress.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/link.js": [], + "assets/theme/components/list/index.js": [], + "assets/theme/components/list/listItem.js": [], + "assets/theme/components/list/listItemText.js": [], + "assets/theme/components/menu/index.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/menu/menuItem.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/popover.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js" + ], + "assets/theme/components/slider.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js", + "assets/theme/functions/boxShadow.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/stepper/index.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js", + "assets/theme/functions/linearGradient.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/stepper/step.js": [ + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/stepper/stepConnector.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js" + ], + "assets/theme/components/stepper/stepIcon.js": [ + "assets/theme/base/colors.js", + "assets/theme/functions/boxShadow.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/stepper/stepLabel.js": [ + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js", + "assets/theme/functions/rgba.js" + ], + "assets/theme/components/svgIcon.js": ["assets/theme/functions/pxToRem.js"], + "assets/theme/components/table/tableCell.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/table/tableContainer.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js" + ], + "assets/theme/components/table/tableHead.js": [ + "assets/theme/base/borders.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/tabs/index.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/colors.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/tabs/tab.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/components/tooltip.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/colors.js", + "assets/theme/base/typography.js", + "assets/theme/functions/pxToRem.js" + ], + "assets/theme/functions/boxShadow.js": [ + "assets/theme/functions/pxToRem.js", + "assets/theme/functions/rgba.js" + ], + "assets/theme/functions/gradientChartLine.js": [ + "assets/theme/functions/rgba.js" + ], + "assets/theme/functions/hexToRgb.js": [], + "assets/theme/functions/linearGradient.js": [], + "assets/theme/functions/pxToRem.js": [], + "assets/theme/functions/rgba.js": ["assets/theme/functions/hexToRgb.js"], + "assets/theme/index.js": [ + "assets/theme/base/borders.js", + "assets/theme/base/boxShadows.js", + "assets/theme/base/breakpoints.js", + "assets/theme/base/colors.js", + "assets/theme/base/globals.js", + "assets/theme/base/typography.js", + "assets/theme/components/appBar.js", + "assets/theme/components/avatar.js", + "assets/theme/components/breadcrumbs.js", + "assets/theme/components/button/index.js", + "assets/theme/components/buttonBase.js", + "assets/theme/components/card/cardContent.js", + "assets/theme/components/card/cardMedia.js", + "assets/theme/components/card/index.js", + "assets/theme/components/container.js", + "assets/theme/components/dialog/dialogActions.js", + "assets/theme/components/dialog/dialogContent.js", + "assets/theme/components/dialog/dialogContentText.js", + "assets/theme/components/dialog/dialogTitle.js", + "assets/theme/components/dialog/index.js", + "assets/theme/components/divider.js", + "assets/theme/components/flatpickr.js", + "assets/theme/components/form/autocomplete.js", + "assets/theme/components/form/checkbox.js", + "assets/theme/components/form/formControlLabel.js", + "assets/theme/components/form/formLabel.js", + "assets/theme/components/form/input.js", + "assets/theme/components/form/inputLabel.js", + "assets/theme/components/form/inputOutlined.js", + "assets/theme/components/form/radio.js", + "assets/theme/components/form/select.js", + "assets/theme/components/form/switchButton.js", + "assets/theme/components/form/textField.js", + "assets/theme/components/icon.js", + "assets/theme/components/iconButton.js", + "assets/theme/components/linearProgress.js", + "assets/theme/components/link.js", + "assets/theme/components/list/index.js", + "assets/theme/components/list/listItem.js", + "assets/theme/components/list/listItemText.js", + "assets/theme/components/menu/index.js", + "assets/theme/components/menu/menuItem.js", + "assets/theme/components/popover.js", + "assets/theme/components/slider.js", + "assets/theme/components/stepper/index.js", + "assets/theme/components/stepper/step.js", + "assets/theme/components/stepper/stepConnector.js", + "assets/theme/components/stepper/stepIcon.js", + "assets/theme/components/stepper/stepLabel.js", + "assets/theme/components/svgIcon.js", + "assets/theme/components/table/tableCell.js", + "assets/theme/components/table/tableContainer.js", + "assets/theme/components/table/tableHead.js", + "assets/theme/components/tabs/index.js", + "assets/theme/components/tabs/tab.js", + "assets/theme/components/tooltip.js", + "assets/theme/functions/boxShadow.js", + "assets/theme/functions/hexToRgb.js", + "assets/theme/functions/linearGradient.js", + "assets/theme/functions/pxToRem.js", + "assets/theme/functions/rgba.js" + ], + "booking/Booking_page.js": [], + "components/MKAlert/MKAlertCloseIcon.js": [], + "components/MKAlert/MKAlertRoot.js": [], + "components/MKAlert/index.js": [ + "components/MKAlert/MKAlertCloseIcon.js", + "components/MKAlert/MKAlertRoot.js", + "components/MKBox/index.js" + ], + "components/MKAvatar/MKAvatarRoot.js": [], + "components/MKAvatar/index.js": ["components/MKAvatar/MKAvatarRoot.js"], + "components/MKBadge/MKBadgeRoot.js": [], + "components/MKBadge/index.js": ["components/MKBadge/MKBadgeRoot.js"], + "components/MKBox/MKBoxRoot.js": [], + "components/MKBox/index.js": ["components/MKBox/MKBoxRoot.js"], + "components/MKButton/MKButtonRoot.js": [], + "components/MKButton/index.js": ["components/MKButton/MKButtonRoot.js"], + "components/MKDatePicker/index.js": ["components/MKInput/index.js"], + "components/MKInput/MKInputRoot.js": [], + "components/MKInput/index.js": ["components/MKInput/MKInputRoot.js"], + "components/MKPagination/MKPaginationItemRoot.js": [ + "components/MKButton/index.js" + ], + "components/MKPagination/index.js": [ + "components/MKBox/index.js", + "components/MKPagination/MKPaginationItemRoot.js" + ], + "components/MKProgress/MKProgressRoot.js": [], + "components/MKProgress/index.js": [ + "components/MKProgress/MKProgressRoot.js", + "components/MKTypography/index.js" + ], + "components/MKSocialButton/MKSocialButtonRoot.js": [], + "components/MKSocialButton/index.js": [ + "components/MKSocialButton/MKSocialButtonRoot.js" + ], + "components/MKTypography/MKTypographyRoot.js": [], + "components/MKTypography/index.js": [ + "components/MKTypography/MKTypographyRoot.js" + ], + "eventDetails/DetailPageComponents/DefaultNavbar.js": [ + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKTypography/index.js", + "eventDetails/DetailPageComponents/DefaultNavbarDropdown.js", + "publicAssets/DefaultInfoCard.js" + ], + "eventDetails/DetailPageComponents/DefaultNavbarDropdown.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "eventDetails/DetailPageComponents/DesignBlocks.js": [ + "components/MKBadge/index.js", + "components/MKBox/index.js", + "components/MKTypography/index.js", + "eventDetails/DetailPageComponents/designBlocksData.js", + "publicAssets/DefaultInfoCard.js" + ], + "eventDetails/DetailPageComponents/TestForm.js": [ + "eventDetails/DetailPageComponents/DesignBlocks.js" + ], + "eventDetails/DetailPageComponents/designBlocksData.js": [], + "eventDetails/Detail_page.css": [], + "eventDetails/Detial_page.js": [ + "assets/theme/index.js", + "eventDetails/DetailPageComponents/DefaultNavbar.js", + "eventDetails/Detail_page.css", + "eventDetails/Participator.js", + "eventDetails/comment/comment.js", + "eventDetails/event_detail.js", + "eventDetails/example-poster.jpg", + "eventDetails/example_org_img.jpg", + "eventDetails/introduction.js", + "eventDetails/reserve.js", + "eventDetails/sample-text.txt", + "publicAssets/detailPageRoutes.js" + ], + "eventDetails/Participator.js": [], + "eventDetails/Rating.js": [], + "eventDetails/comment/CommentForm.js": [], + "eventDetails/comment/RatingMini.js": [], + "eventDetails/comment/comment.js": [ + "eventDetails/comment/CommentForm.js", + "eventDetails/comment/RatingMini.js" + ], + "eventDetails/event_detail.js": ["eventDetails/Rating.js"], + "eventDetails/example-poster.jpg": [], + "eventDetails/example_org_img.jpg": [], + "eventDetails/introduction.js": [], + "eventDetails/reserve.js": [], + "eventDetails/sample-text.txt": [], + "examples/Breadcrumbs/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/BlogCards/BackgroundBlogCard/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/BlogCards/CenteredBlogCard/index.js": [ + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/BlogCards/TransparentBlogCard/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/CounterCards/DefaultCounterCard/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/InfoCards/DefaultInfoCard/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/InfoCards/FilledInfoCard/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/ReviewCards/DefaultReviewCard/index.js": [ + "components/MKAvatar/index.js", + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/RotatingCard/RotatingCardBack.js": [ + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/RotatingCard/RotatingCardFront.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Cards/RotatingCard/index.js": ["components/MKBox/index.js"], + "examples/Cards/TeamCards/HorizontalTeamCard/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Footers/CenteredFooter/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Footers/DefaultFooter/index.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Footers/SimpleFooter/index.js": [ + "assets/theme/base/typography.js", + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Navbars/DefaultNavbar/DefaultNavbarDropdown.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "examples/Navbars/DefaultNavbar/DefaultNavbarMobile.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js", + "examples/Navbars/DefaultNavbar/DefaultNavbarDropdown.js" + ], + "examples/Navbars/DefaultNavbar/index.js": [ + "assets/theme/base/breakpoints.js", + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKTypography/index.js", + "examples/Navbars/DefaultNavbar/DefaultNavbarDropdown.js", + "examples/Navbars/DefaultNavbar/DefaultNavbarMobile.js" + ], + "index.css": [], + "index.js": [ + "App.js", + "Notification/Notifications.js", + "PasswordRecovery/PasswordRecovery.js", + "booking/Booking_page.js", + "eventDetails/Detial_page.js", + "index.css", + "logIn/Login.js", + "logIn/changePassword.js", + "mainpage/Mainpage.js", + "profile/historyPage.js", + "profile/otherProfile.js", + "profile/profile.js", + "publish/publish.js", + "reportWebVitals.js", + "search/search.js", + "signUp/signUp.js" + ], + "index.test.js": ["mainpage/Mainpage.js"], + "logIn/Login.js": ["PasswordRecovery/PasswordRecovery.js"], + "logIn/changePassword.js": [ + "assets/theme/index.js", + "components/MKButton/index.js", + "mainpage/mainpageComponents/DefaultNavbar.js", + "mainpage/mainpageComponents/DefaultNavbar_1.js" + ], + "logIn/logIn.test.js": ["logIn/Login.js"], + "logo.svg": [], + "mainpage/Mainpage.js": [ + "assets/theme/index.js", + "components/MKBadge/index.js", + "components/MKInput/index.js", + "components/MKTypography/index.js", + "mainpage/mainpageComponents/DefaultNavbar.js", + "mainpage/mainpageComponents/DesignBlocks.js", + "mainpage/mainpageComponents/TestForm.js", + "publicAssets/routes.js" + ], + "mainpage/mainpageComponents/DefaultNavbar.js": [ + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKTypography/index.js", + "mainpage/mainpageComponents/DefaultNavbarDropdown.js", + "publicAssets/DefaultInfoCard.js" + ], + "mainpage/mainpageComponents/DefaultNavbarDropdown.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "mainpage/mainpageComponents/DefaultNavbar_1.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "mainpage/mainpageComponents/DesignBlocks.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js", + "publicAssets/DefaultInfoCard.js" + ], + "mainpage/mainpageComponents/TestForm.js": [ + "mainpage/mainpageComponents/DesignBlocks.js" + ], + "mainpage/mainpageComponents/designBlocksData.js": [], + "profile/AvatarUpload.js": ["components/MKButton/index.js"], + "profile/adminProfile.js": [ + "components/MKButton/index.js", + "profile/AvatarUpload.js" + ], + "profile/crowdProfile.js": [ + "components/MKButton/index.js", + "profile/AvatarUpload.js" + ], + "profile/historyPage.js": [], + "profile/hostProfile.js": [ + "components/MKButton/index.js", + "profile/AvatarUpload.js" + ], + "profile/otherProfile.js": [ + "assets/theme/index.js", + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKTypography/index.js", + "mainpage/mainpageComponents/DefaultNavbar_1.js" + ], + "profile/profile.js": [ + "assets/theme/index.js", + "components/MKTypography/index.js", + "mainpage/mainpageComponents/DefaultNavbar_1.js", + "profile/adminProfile.js", + "profile/crowdProfile.js", + "profile/hostProfile.js" + ], + "publicAssets/DefaultInfoCard.js": [ + "components/MKBox/index.js", + "components/MKTypography/index.js" + ], + "publicAssets/appContext.js": [], + "publicAssets/detailPageRoutes.js": [], + "publicAssets/routes.js": [], + "publish/components/Participator.js": [], + "publish/components/addPics.js": [], + "publish/components/avatarInput.js": [], + "publish/components/cast.js": [], + "publish/components/formInput.js": [ + "components/MKButton/index.js", + "publish/components/Participator.js", + "publish/components/numInput.js", + "publish/components/tags.js", + "publish/components/textInput.js", + "publish/components/themeBox.js", + "publish/components/themeButton.js", + "publish/components/themeDatePicker.js", + "publish/components/themeInput.js", + "publish/components/themeNumInput.js", + "publish/components/themeTimePicker.js", + "publish/components/themeTitle.js", + "publish/components/themeUpload.js" + ], + "publish/components/numInput.js": [], + "publish/components/tags.js": [], + "publish/components/textInput.js": [ + "components/MKAvatar/index.js", + "components/MKBadge/index.js", + "components/MKBox/index.js", + "components/MKButton/index.js", + "components/MKInput/index.js", + "components/MKProgress/index.js", + "components/MKSocialButton/index.js", + "publish/components/themeBox.js" + ], + "publish/components/themeBox.js": [], + "publish/components/themeButton.js": [], + "publish/components/themeDatePicker.js": [], + "publish/components/themeInput.js": [], + "publish/components/themeNumInput.js": [], + "publish/components/themeTimePicker.js": [], + "publish/components/themeTitle.js": ["components/MKButton/index.js"], + "publish/components/themeUpload.js": ["publish/components/addPics.js"], + "publish/publish.js": [ + "assets/theme/index.js", + "components/MKTypography/index.js", + "mainpage/mainpageComponents/DefaultNavbar.js", + "mainpage/mainpageComponents/DesignBlocks.js", + "publicAssets/routes.js", + "publish/components/formInput.js" + ], + "reportWebVitals.js": [], + "search/search.js": [ + "assets/theme/index.js", + "mainpage/mainpageComponents/DefaultNavbar.js" + ], + "setupTests.js": [], + "signUp/signUp.js": [] +} diff --git a/client/src/Notification/NotificationpageComponents/DefaultNavbar.js b/client/src/Notification/NotificationpageComponents/DefaultNavbar.js index 638052f..dc04161 100644 --- a/client/src/Notification/NotificationpageComponents/DefaultNavbar.js +++ b/client/src/Notification/NotificationpageComponents/DefaultNavbar.js @@ -136,7 +136,7 @@ function DefaultNavbar({ { const authToken = localStorage.getItem('authToken'); const navigate = useNavigate(); - const {id, activateid, senderid, reciverid, title, content, tag, time, read} = - Notification; + const { + id, + related_event_id, + createdAt, + updatedAt, + title, + content, + importance, + time, + read, + } = Notification; const handelClickOnNotification = async () => { try { await axios.put( @@ -49,19 +58,19 @@ const NotificationBriefBlock = ({Notification}) => { } catch (error) { console.error(error); } - navigate(`/details/${id}`); + navigate(`/details/${related_event_id}`); }; let bgColor; - if (read == false) { - switch (tag) { - case '1': + if (read === false) { + switch (importance) { + case 1: bgColor = '#e0f7fa'; // normal break; - case '2': + case 2: bgColor = '#fff3e0'; // important break; - case '3': + case 3: bgColor = '#ffebee'; // urgent break; default: diff --git a/client/src/eventDetails/DetailPageComponents/DefaultNavbar.js b/client/src/eventDetails/DetailPageComponents/DefaultNavbar.js index 76bd9f6..4497a22 100644 --- a/client/src/eventDetails/DetailPageComponents/DefaultNavbar.js +++ b/client/src/eventDetails/DetailPageComponents/DefaultNavbar.js @@ -137,7 +137,7 @@ function DefaultNavbar({ { } catch (error) { console.error(error); } + if (!already_reserved) { + seats = seats - 1; + } }; return ( diff --git a/client/src/mainpage/mainpageComponents/DefaultNavbar.js b/client/src/mainpage/mainpageComponents/DefaultNavbar.js index c6daac6..45fbd77 100644 --- a/client/src/mainpage/mainpageComponents/DefaultNavbar.js +++ b/client/src/mainpage/mainpageComponents/DefaultNavbar.js @@ -153,7 +153,7 @@ function DefaultNavbar({ { - const [hours, minutes, seconds] = timeProp.split(':'); - const combinedDateTime = new Date(dateProp); - combinedDateTime.setHours(parseInt(hours, 10)); - combinedDateTime.setMinutes(parseInt(minutes, 10)); - combinedDateTime.setSeconds(parseInt(seconds, 10)); - return combinedDateTime; + const year = dateProp.getFullYear(); + const month = String(dateProp.getMonth() + 1).padStart(2, '0'); // 月份从0开始,因此需要加1 + const day = String(dateProp.getDate()).padStart(2, '0'); + + // 组合日期和时间 + const dateTimeString = `${year}-${month}-${day}T${timeProp}`; + + // 将字符串转换为日期对象 + const dateTime = new Date(dateTimeString); + console.log(dateTime); + return dateTime; }; const requestBody = { @@ -146,6 +151,7 @@ function FormInput(props) { return; } console.log('Form submitted'); + console.log(requestBody); axios .post( 'http://10.27.41.93:5000/api/events', diff --git a/reports/final-report-34.md b/reports/final-report-34.md index 15b4607..b3eda33 100644 --- a/reports/final-report-34.md +++ b/reports/final-report-34.md @@ -1,6 +1,34 @@ ## Campus Events and Entertainment Center Final Report ### 1. Metrics +We utilized **plato**, a JavaScript source code complexity analysis tool, to analyze the complexity of our codebase. The lines of code, maintainability score, estimated errors in implementation and lint errors are calculated. + +For the client, the total/average lines of code is 15226/94, and the average maintainability score is 64.58. + +For the server, the total/average lines of code is 3229/161, and the average maintainability score is 60.87. + +To regenerate the complete plato report for client and server, run the following commands: +```bash +cd client +plato -r -d plato-report src +``` +```bash +cd server +plato -r -d plato-report src +``` + +Then the complete plato report can be found in `client/plato-report` and `server/plato-report`. + +We also utilized **madge**, a tool to generate a json file representing the module dependencies in our codebase. The json file can be found in `client/dependency_tree.json` and `server/dependency_tree.json`. There are 410 dependency relationships in client and 437 dependency relationships in server. + +To regenerate the json files that represents the module dependencies, run `madge --json src > dependency_tree.json` in the `client` and `server` directories. + +Besides the above metrics, we also calculated the following metrics: + +| Metric | Client | Server | +|------------------------------------------------|:------:|:------:| +| **Number of packages/modules (directly used)** | 32 | 19 | +| **Number of source files** | 224 | 21 | ### 2. Documentation diff --git a/server/dependency_tree.json b/server/dependency_tree.json new file mode 100644 index 0000000..f25dec3 --- /dev/null +++ b/server/dependency_tree.json @@ -0,0 +1,41 @@ +{ + "config/connection.js": ["models/index.js"], + "models/comment.js": ["config/connection.js"], + "models/event.js": ["config/connection.js"], + "models/eventParticipant.js": ["config/connection.js"], + "models/eventStatus.js": ["config/connection.js"], + "models/eventTag.js": ["config/connection.js"], + "models/eventToAudience.js": ["config/connection.js"], + "models/gender.js": ["config/connection.js"], + "models/index.js": [ + "models/comment.js", + "models/event.js", + "models/eventParticipant.js", + "models/eventStatus.js", + "models/eventTag.js", + "models/eventToAudience.js", + "models/gender.js", + "models/message.js", + "models/user.js", + "models/userGroup.js", + "models/userToLike.js" + ], + "models/message.js": ["config/connection.js"], + "models/response.js": [], + "models/user.js": ["config/connection.js"], + "models/userGroup.js": ["config/connection.js"], + "models/userToLike.js": ["config/connection.js"], + "routes/comments.js": ["models/index.js", "models/response.js"], + "routes/events.js": ["models/index.js", "models/response.js"], + "routes/images.js": ["models/response.js"], + "routes/index.js": [ + "models/response.js", + "routes/comments.js", + "routes/events.js", + "routes/images.js", + "routes/users.js" + ], + "routes/users.js": ["models/index.js", "models/response.js"], + "server.js": ["routes/index.js", "swagger.js"], + "swagger.js": [] +}